DataRED

 

Data Reduction Program. JRC-LLB 2004

 

DataRED is a simple console program useful for data reduction of single crystal diffraction patterns.

 

The program read the list of measured reflections and perform averages to provide a unique set of independent reflections to be used for structure solution or refinement. The output files are intended to be used by the program FullProf. The list of measured reflections must be in a file respecting one of the seven available input formats.

The program is able to transform the reflection indices to another setting provided by the user. It constructs the appropriate file containing information about twinning when twin laws are provided by the user in the input control file, etc. DataRED also handles the case of incommensurate magnetic structures where a propagation vector is given.

 

Running the program

 

Two input files are normally needed:

 

1)      code_datared.red

2)      reflections.hkl

 

Invoking the program:

 

Local_Prompt> datared code_datared

 

If the file code_datared.red is not given, the program will ask for the necessary items to properly perform the data reduction (less detailed calculations).

 

 

 Instructions for input file

 

All input is given as a KeyWord  followed by real, integer or character value(s). KeyWords may be given in lower or upper case but not by mixing the two types (Twin commands are case sensitive!).

 

The three first lines of the file should be given in the following order:

 

TITLE   Test of data reduction program    

Arbitrary title

 

INPFIL  reflections.hkl       

Name of the input file (may have an extension /= hkl)

 

OUTFIL  code_out   

Code of the output files

 

The rest of the lines may be given in whatever order and some of them may be absent. The TWIN commands are expected to be at the end.

 

The following keywords can be recognized by the program:

 

TRANSF  ((a(i,j),j=1,3),i=1,3)

Transformation matrix for indices previous to treatment

 

SPGR     Spgr_Symbol

Space Group (averaging will take into account the given symmetry)

To avoid averaging it is useful the use of a triclinic space group P1, P -1  or I -1, etc...

 

NFRDL

If given the Friedel law is not satisfied

 

EPSIL    eps_val

If given, the comparison integer/real will be performed within the interval: +/- eps_val. The default value is 0.01.

Ex.: 0.98 is considered as 1.00 if eps_val=0.025

 

KVEC   Kx Ky Kz                    

Propagation vector

 

CELL   a  b  c  alpha  beta gamma  

Unit cell parameters used in the data collection

 

WAVE   lambda                      

Wavelength

 

HKL_T  n                           

Type of hkl-data

 

N=0

Shelx-like input file (3i4,2f8.2)  type: HKLF 4: h,k,l,F2,s(F2)

(CELL and WAVE should be given)

 

N=1

Read h,k,l, Intensity and Sigma in free format

(CELL and WAVE should be given)

 

N=2

Data from COLL5 (two lines per reflection) (D23): *.fsq

(hkl-real)

(CELL and WAVE should be given)

Format of the reflections file =>  (i6,3f7.3,2f10.2,3f8.2)

For reading the items: Numor, h k l Int Sigma gamma nu phi

 

N=3

Read the first line as a comment (FullProf *.int file).

The second line contents the format of the hkl lines

In the third line the value of the wavelength is read.

In the following lines the following items are read:

h,k,l, Intensity, Sigma, code, 2theta, omega, chi, phi

 

N=4

Data from COLL5 (1 line per reflection) *.col (hkl-integer)

Format of the reflections file =>  (i6,3i4,2f10.2,4f8.2)

For reading the items: Numor, h k l Int Sigma theta omega chi phi

 

N=5

Data from COLL5 (1 line per reflection) *.col (hkl-real)"

Format of the reflections file =>  (i6,3f6.2,f8.0,f4.0,4f8.2) "

For reading the items: Numor, h k l Int Sigma theta omega chi phi"

 

N=6

Data from COLL5 (1 line per reflection) *.col (hkl-real)"

Format of the reflections file =>  (i4,3f6.2,2f10.2,4f8.2) "

For reading the items: Numor, h k l Int Sigma theta omega chi phi"

The only difference between 6 and 4 is in the format i4,3f6.2 for the former to read the Numor and indices. (From 6T2)

 

N=7

Data from SXD (RAL-ISIS) to be read by FullProf

The items of reflections are as in the following header

.......................................................

Test of FullProf with data from SXD

# The first line above is considered as a title

# Lines starting with # or ! are coments of whatever type

! This is also a comment

!

! The program looks for a format item of the form given below

! It must start by "(" and finish with ")". It is a typical format

! descriptor in fortran. It is expected to read the items

! described below as titles of the colums

 (3i4,2f9.2,i4,4f10.4)

    0 0 0

# Information about the experiment

#

#   bla,bla,....

#

#  h   k   l    Fsqr    s(Fsqr) Cod   Lambda   Twotheta   Absorpt.    Tbar

   1   5   0   533.01    13.53   1    2.8300    151.32     1.002     0.075              ........................................................

 

 

POWDER                             

If given the output file may be read by FullProf for JBT=-3, IRF=2, useful to "deduce" a powder pattern.

 

DOMAIN       

In case of a propagation vector is given, the program will average the k-domains. This supposes that there is only a pair (k,-k) contributing to the magnetic structure. The analysis is performed automatically determining the group of the propagation vector and the star. If DOMAIN is not given the output will contain the whole arms of the star.

 

TWIN

Tells the program TWIN commands will be given below:

 

TWIN_nam Name of the TWIN model   

Name of the twin model

 

TWIN_spg  Space Group of domains   

Space Group symbol for systematic absences of domain contributions

 

TWIN_typ  itwin                    

Type of twin matrices given

 

ITWIN= 1

The domains contributing to an observation have indices obtained from the input (h,k,l) by multiplying the vector (hkl) by a real  matrix P, so that (hkl)n = P (hkl). The number of the domains contributing to each observation depends if the resulting indices (hkl)n are integers.

 

            ITWIN= 2

The input indices are given w.r.t. the super-lattice. It is supposed that a sub-lattice exist and the orientation of the superlattice could have different orientational domains. Each domain is entered as a matrix relating the superlattice direct cell to the parent sub-lattice.

 

            ITWIN= 3

The input indices correspond to the first domain. The orientation of the first domain with respect to a cartesian frame is given by the user as for the other domains. Each domain is given by the orientation in the cartesian frame of each cell parameter a,b, c. Only the direction is needed. The program calculates internally the director cosinus.

 

Whatever the TWIN model the final matrices act on (hkl) as for ITWIN=1. For ITWIN=2,3 the angular position of the motors are tested for an eventual contribution even if the resulting indices are not integer.

 

TWIN_mat  t11 t12 t13 t21 t22 t... 

Matrices (one per domain) describing the domains

 

TWIN_ubm  ubm11 ubm12 ubm13 ubm21..

UB-matrix, needed only for precise determination if itwin=2,3. Comparison of measured angle positions with calculated for the nearest reflections of other domains (In test stage at present).

 

TWIN_trf  tr11 tr12 tr13 tr21 ...

Transfomation matrix for UB =>  UB-new = UB . TR

 

TWIN_mac  Name of diffractometer

D9, 6T2, ...

 

TWIN_end

Tells the program that no more twin commands are needed

 

Output files

 

The output files are the following:

 

Output file: code_out.out

Reflections file: code_out.hkl

Rejected reflections file: code_out.rej

 

 

Example

 

TITLE   Test of data reduction program BaNiPO

INPFIL  banipo.hkl

OUTFIL  banip

WAVE    1.17460

CELL    4.8020  4.8020  23.3300  90.000  90.000 120.000

SPGR    R -1

HKL_T   3