<* $Id: xnd_rpha.html,v 1.2 2002/04/22 14:52:58 berar Exp $ *> xnd: phases description in the input file.

xnd: phases description in the input file.


xnd top Next file Previous file

Introduction

The phase block has to be repeated for each phase according to the nPhase=@XND(PHASE) value declared in the program header. Following the header which specifies the phase, all the variables are encoded using the standard method seen in encoding variables in xnd.

Phase Header and common blocks

Phase Header

The header from the previous 1.1 release are still recognised. In the 1.2 release the header uses keys. If the @PHASE key is not found a 1.1 header is assumed.

@PHASEkey identifier
NATUREd0classical phase, the hkl lines are generated
>0classical phase but the hkl lines are read
-1 Radial expension for background
-2 Parasitic lines
-3 Quasicrystal (icosahedral or dodecaedral) pattern fitting
-4 magnetic superstructures
-5 incommensurate modulated structures
-6 incommensurate modulated structures with magnetic lines
-7 reserved for amorphous sample (not yet implemanted)
TRANSITd0number of phase transitions to take into account in the scale factor
ORIGf0Origin of Temp in the phase variable expansion
TITLEsTitle of the phase

Scale factor block

@SCALEkey identifier of the variable block
Scale$Scale factor for the phase
B_global$Overall isotropic Thermal factor

Phase transition block

This block is read only if nTransit=@PHASE(TRANSIT) in the phase header has a positive value. In this case the effective scale factor is :
Scale_eff = Scale * exp(u) /(exp(u)+exp(-u))
where u = sign(T-T_c) * T_a * abs(T-T_c)^Exponant
@TRANSITkey identifier of the variable block
the following group of lines is repeated nTransit=@PHASE(TRANSIT) times
T_c$Origin Temp
T_a$Activation Temp
Exponant$Exponant

Known crystalline phases.

Crystalline phase header

This block is concern only if N_hkl=@PHASE(NATURE) in the phase header specifies a known crystalline phase : ( N_hkl >= 0, -4, -5, -6, -7). In others cases, jump to Parasitic phases

If the @CRYSTAL key is not found a 1.1 crystal header is assumed.

@CRYSTALkey identifier
SYMGRPsthis name must be known in the symetry part of the the file or in the symetry file
ATOMd0Number of independant atoms to be read
ORIENd0No orientation functions in this phase of the sample
>0Number of functions used for the prefered orientation of the sample, common to all experiments
<0Same as above but there are nOrien functions for each experiment.
PROFd0Number of functions used for describing the line profile
In case of modulated structure, a negative value means that the profil depend on the set of lines.
BLOCKd0Number of rigid blocks to be read
BONDd0Number of Temp used in bond restraints
SETSd0Number of lines sets, incomensurates ... or profile dependence ...

Cell parameters block.

@CELLkey identifier of the variable block
Center$Centering error for this phase (s/R in reflexion)
A$Cell lengths
B$
C$
Alpha$Cell angles
Beta$
Gamma$

Supplementary header blocks for magnetic structure.

This block of data is inserted only when the phase has been declared as being magnetic : N_hkl=@PHASE(NATURE) = -4
In others cases, jump to modulated phases

This block is a small implementation of some magnetic structures, it is just to allow user to get rid of some magnetic lines when studying complex phases.
User have to provide at less two SET : one for magnetic lines and one for the other.

@MAGNETkey identifier
SYMGRPsAt the time the symmetry is not checked and user must provides a triclinic group in which the operations concern only the moment of the atom in the same order than the standard symmetry group.

Supplementary header blocks for modulated phases.

This block of data is inserted only when the phase has been declared as being modulated : N_hkl=@PHASE(NATURE) = -5
In others cases, jump to preferred orientation


In this case, the cell parameters and then the coordinates have to be expressed using the super-cell in which the rational part of the modulation vanishes, this cell is associated with the so-called "big indices". Nevetheless the coordinates of this rational part (centering in the superspace) are still expressed referring to the basic-cell associated with the "small indices". When there is no 4D centering, the two metrics are coincident.
User have to provide at less two SET : one for base lines and one for the other.

@MODULkey identifier
SYMGRPsname of the complementary group describing the symmetry
SIZEd1size of the modulation (reserved)
ORDERd0incommensurate use default (25)integration steps
<=0opposite of number of integration steps
>0reserved for commensurate
CENTER_Xf0.0projection along X,Y, Z of the 4D centering vector
CENTER_Yf0.0
CENTER_Zf0.0
COMPOd0 Not a composite structure
>0 Number of the first atom belonging to the second cell
COMPO_SYMssymmetry of the second cell. The reserved name SWAP_COMPO can be used, it exchanges the modulation and the symmetry along z between the two cells; in this case there is no complementary group to read.
COMPO_SYM4sname of the complementary group of the second cell

Using explicit sets of lines.

This block of data is inserted only @CRYSTAL(SETS) > 0
It is requested to allow non regular profile dependence and for magnetic or modulated structures.
In others cases, jump to preferred orientations

Keys are scanned from SET_0 to SET_(@CRYSTAL(SETS)-1). For incommensurates or composites, the LOOP is requested, it allows to specify the lines to be used and the 4th indices. The value of the string must be consistent with known for the sudied case.
The ALLOW and DENY strings synthax remains the c ones knowing only "+-*/%" operators for integers and logical comparisons operators.

@SET_nkey identifier
LINESd0generated lines (default)
>0number of lines to read
ALLOWsstring rules "ALLOW = 'H%2==0 && (K+2*L)%3==1'"
DENYsstring rules "DENY = 'H%2==0 && (K+2*L)%3==1'"
LOOPsmagnetic lines"LOOP='MAGNET'"
incomensuratebase lines"LOOP='HKL,M=0'"
sattelites lines"LOOP='HKL,M=1,-1..'"
compositescommon lines"LOOP='HKL=0,M=0'"
1st layer lines"LOOP='HKL,M=0'"
2nd layer lines"LOOP='HKL=0,M'"
sattelites lines"LOOP='HKL,M=1,2..'"
AUTOd0pattern matching
1allows to create intensity variable at cycle 1

Incommensurate wavevector.

The following block contains the incommensurate wavevector if requested.
@VECTORkey identifier of the variable block
x_vector$ component of the incommensurate modulation vector on the reciprocal super-cell
y_vector$
z_vector$

Preferred orientations blocks.

There are two possibilities to consider : eiher the prefered orientation function is the same for all experiments or it strongly depends on the experiment : as an example, consider what happens when you refine simultaneously a neutron transmission experiment together with an Xray reflection one. To distinguish these two cases, we use the value of nOrien=@PHASE(ORIEN) given in the header. If nOrien < 0, there are nOrien functions for each experiment, the effective number of functions being read will be eff_nOrien = abs(nOrien) * nManip else eff_nOrien = nOrien.

The following values are read only if nOrien is not zero.
#optional comments
c_Oriendthe eff_nOrien reference number of the orientation functions used in describing the sample prefered orientation
...d
@ORIENkey identifier of the variable block
the following group is repeated eff_nOrien times.
coef$coeficient of the function
theta$angle of the polar axis of the function with z
phi$angle of the projection of the polar axis on xy with x

Line Profile blocks.

The following values are read only if nProf=@PHASE(PROFIL) is not zero. If nProf < 0, there are nProf functions for each set of lines (incommensurate case,...)
#optional comments
c_Profdthe abs(nProf) reference number of the orientation functions used in line profile description
...d
#optional comments
if nProf < 0 the @PROF_n keys ares read nSets=@CRYSTAL(SETS) times else the @PROF key read (nProf > 0).
@PROFxxkey identifier of the variable block
the following group is repeated abs(nProf) times.
Wl_C$width of the Lorentz component /cos(theta)
Wg_C$width of the Gauss component /cos(theta)
WlT$width of the Lorentz component *tan(theta)
WgT$width of the Gauss component *tan(theta)
theta$ angle of the polar axis of the function with z
phi$angle of the projection of the polar axis on xy with x
#optional comments
@ASSYMkey identifier of the variable block
#optional comments
the following group is repeated first MaxAssym=@MODES(ASSYM) times then abs(nProf) times.
A0$constant asymetry term
AT$asymmetry term *tan(theta)

Atoms.

If the @ATOM or @COORD key are not found a 1.1 atom header or coordinates are assumed.

The following values are read only if nAtom=@CRYSTAL(ATOM) is not zero. The @COORD variables read for each atom depend on the value declared for case just after its name and chemical kind.
#optional comments
@ATOMkey identifier of the variable block
NAMEc7name of the atom
CHEMc7identification of the scattering coefficients
CASEd0default
+1 use and read anisotropic thermal factor (Beta ij)
+2 use and read magnetic moment
4 use and read modulation coefs order 1
8orders 1, 2
12orders 1, 2, 3
16orders 1 to 4
32 use and read anharmonic thermal factorsCijk
64Dijkl
128Eijklm
256Fijklmn
512 free rotator (reserved for R is read as B22)
#optional comments

@COORDkey identifier of the variable block
X$coordinates
Y$
Z$
T$occupancy (taking into account the site multiplicity)
the following variable is read only if case=@ATOM(CASE) is even
U$isotropic thermal factor
the 6 following variables are read only if case=@ATOM(CASE) is odd
B11$anisotropic thermal factor "Beta" used in the thermal factor :
T = exp -(B11 h^2 + B22 k^2 + B33 l^2 + 2 (B12 hk + B13 hl + B23 kl))
in release up to 1.16, the thermal factor was written without the factor in the diagonal terms, this was modified to agree with the ITC, vol B page 18 formula 1.2.10.3b.
Normalized Uij are calculated on last cycle together with the equivalent isotropic factor
B22$
B33$
B12$
B13$
B23$
the 3 following variables are read only if case=@ATOM(CASE) is declared as magnetic
Kx$
Ky$
Kz$

The following table is read only if the atom is declared as modulated (case == 4..17 ), 8 variables are read for each required order
@MODULkey identifier of the variable block
S_x$Fourier coefficients of the expansion of the displacement
C_x$
S_y$
C_y$
S_z$
C_z$
S_t$ Fourier coefficients of the expansion of the occupancy
C_t$

The following table is read only if the atom is declared as anharmonic (case == 32, 33, 64, 65 ,96, 97....), such expansion can take some signification only for simple phases; the expansion can 3th, 4th, 5th or 6th order to allow its use one high symetrical sites, at the times one order only is allowed for each atom.
Gram-Charlier expansion is not normalized: the thermal factor To is replaced by
T=To(1 + i sum(i<=j<=k) Cijk Hi Hj Hk + sum(i<=j<=k<=l) Dijkl Hi Hj Hk Hl + i .... )

the following block is read only if case == 32 or 33
#optional comments
Order%kind of block
Chhh$9 unormalized 3th order coefs of Gram-Charlier expansion,
order just written not checked!
Ckkk$
Clll$
Chhk$
Chhl$
Ckkh$
Ckkhl$
Cllh$
Cllk$

the following block is read only if case == 64 or 65
#optional comments
Order%kind of block
Dhhhh$15 Unormalized 4th order coefs of Gram-Charlier expansion
Dkkkk$
Dllll$
....$Dhhhk, Dhhhl, Dkkkh, Dkkkl, Dlllh, Dlllk
Dhhkk, Dhhll, Dkkll, Dhhkl, Dkkhl, Dllhk

the following block is read only if case == 128 or 129
#optional comments
Order%kind of block
Ehhhhh$21 Unormalized 5th order coefs of Gram-Charlier expansion
order just written not checked!
Ekkkkk$
Elllll$
....$Ehhhhk, Ehhhhl, Ekkkkh, Ekkkkl, Ellllh, Ellllk
Ehhhkk, Ehhhll, Ekkkhh, Ekkkll, Elllhh, Elllkk
Ehhhkl, Ekkkhl, Elllhk
Ehhkkl, Ehhllk, Ekkllh

the following block is read only if case == 256 or 257
#optional comments
Order%kind of block
Fhhhhhh$28 Unormalized 6th order coefs of Gram-Charlier expansion
order just written not checked!
Fkkkkkk$
Fllllll$
....$Fhhhhhk, Fhhhhhl, Fkkkkkh, Fkkkkkl, Flllllh, Flllllk
Fhhhhkk, Fhhhhll, Fkkkkhh, Fkkkkll, Fllllhh, Fllllkk
Fhhhhkl, Fkkkkhl, Fllllhk
Fhhhkkk, Fhhhlll, Fkkklll
Fhhhkkl, Fhhhllk, Fkkkhhl,, Fkkkllh, Flllhhk, Flllkkh
Fhhkkll

Rigid Bodies.

The following blocks are read only if nBloc is not zero.
#optional comments
Order%kind of block
the lines are read for each block
X$cell coordinates of the origine of an orthogonal repear which characterize the block
Y$
Y$
theta$Eulerian angles of the block
phi$
psi$

Then for each block we have to read the number of atoms and their coordinates.
nAtomdnumber of atoms inside the block
nAtom atomic description as for independant atoms
namec7name of the atom
kindc7identification of the scattering coefficients
casedas for independant atoms
Order%kind of block
X$coordinates on the orthogonal repear
Y$
Y$
T$occupancy (taking into account the site multiplicity)
B$isotropic thermal factor
.......... next atom inside the block

Hkl list and intensities.

The following block is read only if nb_Hkl is positive. In case of lines sets, several block may be read if @SET_n::LINES >0 n_Hkl non zero.
@LINESkey identifier
hdMiller index of the line
kd
ld
mdOnly for 4D modulated structures
Intens$ raw integrated intensity, only if needed

Even if there is no atom ( pattern matching), a symetry group is mandatory, one can use the trivial (P1) group in this case. The raw intensities can be taken out the hkl file using the observed values. However they are not calculated using the same assumptions : the hkl file contains sums of counts, the other values are refined using the mean square procedure. It is possible to copy in the .k files the values from the hkl file here using a small program (xhkl2k), in this case the block has to be identified using the specific comments #BEGINHKL2K and #ENDHKL2K. A procedure introduce in the 1.2 release allows xnd to minimise the generated intensities : in the sets the key-word AUTO with value 1, creates the variable at the end of cycle 0, they are then minimised at cycle 2...

Restraints.

If n_Bond in the phase header is positive, we read here restraints on the bond lengths and angles. This block can also be used to calculate these value giving it a neglectible weight in the refinement procedure. There is first a header to read and then the parameters

n_Distdnumber of bond lengths restraint
n_Anglednumber of angular restraint
the following value is read n_Bond times
Tempd value of the Temp parameter for which the restraints are calculated.

The following block is then read n_Dist times.
#optional comments
n_coorddnumber of bond using the following length
sigmafweigth for this length used in the penality function
Order%kind of block
Dist$expected value of the bond length
n_coord times, the description of the bonds
Atom0c7name of the origin atom
Atom1c7name of the end atom
Symsstring defining the sym operation between the Atom1 and the position of its equivalent in the bond ( can be x,y,z)

A similar block is then read n_Angl times, calculations are possible but the refinement is not implemented.
#optional comments
n_coorddnumber of bonds using the following angle
sigmafweigth for this length
Order%kind of block
Angle$expected value of the angle between bonds
n_coord times, the description of the bonds
Atom0c7name of the origin atom
Atom1c7name of the first end atom
Symsstring defining the sym operation for Atom1
Atom2c7name of the second end atom
Symsstring defining the sym operation for Atom2

Parasitic lines

This block is read only if NbHkl in the phase header specifies a parasitic crystalline phase :
( NbHkl = -2).
nProfdNumber of functions used for describing the line profile
nDistdNumber of independant Bragg distances to be read

If nProf is non zero, the line profile block is read using the same mode already defined for the known crystalline phases. However the following differences have to be considered : we can not define a polar axis and the function reference number has to be set to 0 (isotropic). Obviously the value of theta and phi can not be refined.

Then the lines can be read.
#optional comments
Order%0kind of the block
nDist group of Dist and Intens
Dist$distance according to Bragg law
Intens$ raw integrated intensity

Quasi crystal lines

This block is read only if NbHkl in the phase header specifies a quasicrystalline crystalline phase :
( NbHkl = -3) with icosaedral or dodecaedral symetry. It allows only some pattern matching. The distances are calculated using the simplified formula:
Q = (n + m T)A*2 + l B*2
then in the icosaedral system A has to be multiplied by sqrt(2(2+Tau)), and l and B have to be set to zero

nProfdNumber of functions used for describing the line profile
nDistdNumber of independant Bragg distancesto be read
#optional comments
Order%kind of block
Center$Relative sample position error
A$the pseudo cell lengths
B$

If nProf is non zero, line profile block is read using the same mode defined for the known crystalline phases. However the following differences have to be considered. The polar axis definition is dummy and it is reasonnable to set to 0 (isotropic) the reference number of the function. However other values can be checked.

Then the lines can be read.
#optional comments
Order%0if nAtom is not zero, there is no intensities to read
%if nAtom is zero, kind of intensities expansion
nDist group of m, n, l
mdpseudo index of the line
nd
ld
Intens$ raw integrated intensity

Radial expension for background

This block is read only if NbHkl in the phase header specifies a simple radial distribution :
( NbHkl = -1).

For such a simple distribution

d(r)=SIGMA(1,n) Nr(i) Delta(r-Dist(i))
, which can be used to model the background (D Simeone@saclay.cea.fr), it can be shown that the scattering amplitude is a sum of
S(i,q)=sin(q Dist(i))/q Dist(i)
, then the scattered intensity can be expressed as
y=scale*LP*(SIGMA(1,n) S(i,q))^2
.

nDistdNumber of peaks in the function

#optional comments
Order%0kind of the block
nDist group of Dist and Nr
Nr$scattering power
Dist$distance


xnd top Next file Previous file

$Id: xnd_rpha.html,v 1.2 2002/04/22 14:52:58 berar Exp $