next up previous contents index
Next: Program Operation Up: RFACTOR Previous: Unique Input Statements

Command Statements

Command Statements

In the following section each of Rfactor's commands are described and a small example is given. In these examples many of the required parameters are presumed to be read from the TNT control file, here assumed to be named your.tnt. Rfactor presumes that this file will contain the cell constants, the definition of the space group, the name of the observed structure factor file, and the resolution limits of the data to be considered. Some commands do not need all of this information but you will want it in your control file anyway.


AGARWAL <File name>  SOURCE <File Id> -
                [MODULE <Name>] -
                [BLUR <Value>] -
                [{GRID 3(<Value>) | OVERSAMPLE <Value>}]

The AGARWAL command causes the program to calculate the gradient of a function via an Agarwal-type convolution. The Fourier coefficients described with the SOURCE modifier will be used to generate the ``difference map'' required by the calculation. The <File Id> must have been defined on a FILE statement. The resulting gradient is written to the file <File name> with whatever module identifier was specified. You may override the default choice for blur and grid using the proper modifiers. By default the blur and grid will be chosen by Rfactor to provide accurate results in a short amount of time.

A detailed description of the Fourier coefficients which you are required to calculate can be found in the ``Creating Your Own Module" chapter.

$tntbin/rfactor << $eof
INCLUDE $tntdata/formfactor.dat
INCLUDE your.tnt
INCLUDE init.cor
FILE COEFS  fo-fc.pak FORMAT PACKED
AGARWAL rfactor.dat SOURCE COEFS MODULE MY_MODULE
$eof
if ($status >< 0) then exit 1


CURVATURE <File name> -
         [MODULE {RFACTOR | REALSPACE | PHASE}]

This statement causes the function value, gradient, and curvature for the specified module to be calculated and written to the file name entered on the input statement. (The default module is RFACTOR.) The scale factor required in the short loop are written to the file scales.dat.

The CURVATURE command cannot be used with the ROTATION module. The calculation of curvatures and gradients in this module are more complicated than the others. You need to read the ``Rotation Function Refinement Module" section of the ``Other Modules in TNT" chapter.

Required for these calculations are the cell constants, the resolution limits, the symmetry operators, the lattice class, the Fo file name, the atomic form factors, the coordinate file, and the weight for this term. An example follows:

$tntbin/rfactor <<$eof
INCLUDE $tntdata/formfactor.dat
INCLUDE your.tnt
INCLUDE init.cor
CURVATURE rfactor.dat
$eof
if ($status >< 0) then exit 1


FUNCTION <File name> -
         [MODULE {RFACTOR | REALSPACE | PHASE | ROTATION}]

This statement causes the observed and calculated structure factors to be compared, and the proper scale factors that maximize the agreement between the two data sets to be calculated (after consideration of the most recent SET statement). Then the function value for the specified module will be determined. This function value will be written in the file whose name appears on the statement. An example where this statement is used in a short loop in refinement follows:

$tntbin/rfactor <<$eof
INCLUDE $tntdata/formfactor.dat
INCLUDE your.tnt
INCLUDE scales.dat
INCLUDE shifted.cor
FUNCTION rfactor.dat
$eof
if ($status >< 0) then exit 1

The file scales.dat contains the SET statement which reflects the scale factors used in the long loop. It is written whenever a GRADIENT or CURVATURE command is executed.


GRADIENT <File name> -
         [MODULE {RFACTOR | REALSPACE | PHASE}]

This statement causes the function value and gradient for the specified module to be calculated and written to the file name on the input statement. The scale factors needed in the short loops are written to the file scales.dat.

The GRADIENT command cannot be used with the ROTATION module. The calculation of gradients in this module is more complicated than the others. You need to read the ``Rotation Function Refinement Module" section of the ``Other Modules in TNT" chapter.

Required for these calculations are the cell constants, the resolution limits, space group symmetry, the Fo file name, the coordinates of the model, the formfactors, and the weight for this term. An example follows:

$tntbin/rfactor <<$eof
INCLUDE $tntdata/formfactor.dat
INCLUDE your.tnt
INCLUDE init.cor
GRADIENT rfactor.dat
$eof
if ($status >< 0) then exit 1


NORMAL_MATRIX <File name> SOURCE <File Id> -
                [MODULE <Name>] -
                [BLUR <Value>] -
                [{GRID 3(<Value>) | OVERSAMPLE <Value>}]

The NORMAL_MATRIX command allows one to calculate the diagonal blocks (one block per atom) of the normal matrix for any kind of crystallographic residual function. Using the procedure outlined in (Tronrud, D.E., Acta Cryst (1999), A55, 700-703) Fourier coefficients can be calculated based upon the particulars of the residual function. These coefficients can be fed into Rfactor and the full set of diagonal blocks calculated. This is usually much quicker than calculating the diagonal blocks directly.

A detailed description of the Fourier coefficients which you are required to calculate can be found in the ``Creating Your Own Module" chapter.

An example of script for using the NORMAL_MATRIX command is

$tntbin/rfactor << $eof
INCLUDE $tntdata/formfactor.dat
INCLUDE your.tnt
INCLUDE init.cor
FILE COEFS  fo-fc.pak FORMAT PACKED
NORMAL_MATRIX rfactor.dat SOURCE COEFS MODULE MY_MODULE
$eof
if ($status >< 0) then exit 1


PUNCH <File name> {MAP | DSN6 | HKL | PACKED | ATOMx} -

               [TYPE {FO-FC | 2FO-FC | 3FO-2FC | IO-IC | -
                      (FO-FC)**2 | PHASE_GRD | REALSPACE_GRD | -
                      RFACTOR_GRD | ROTATION_GRD | PHASE_CRV | -
                      REALSPACE_CRV | RFACTOR_CRV | -
                      ROTATION_CRV | SWAP_PHASE}] -

               [BLUR <Value>] [SCALE <Value>] -
               [{GRID 3(<value>) | OVERSAMPLE <value>}] -
               [{LAYOUT 6(<value>) | ASYMMETRIC}]

The PUNCH command in Rfactor is used to produce files containing either maps or difference coefficients. The modifiers (Scale, Blur, etc.) are described in the ``Common Keywords'' section of Chapter gif (page gif).

The type of difference coefficients (either directly written to disk or used to calculate a map) is specified with the TYPE modifier. Most of the coefficient types are self-explanatory. The PHASE_GRD, REALSPACE_GRD, RFACTOR_GRD, and ROTATION_GRD coefficient types define the maps used to calculate the gradients for these modules. The curvatures for these modules can be calculated using the coefficient type with ``_CRV" appended to their name. The SWAP_PHASE coefficient type allows the creation of coefficients whose amplitude comes from the FO file while the phase comes from the FC file.

The default file is a 2Fo-Fc map oversampled by 2 and containing a molecular volume layout.

A PUNCH statement must be preceded by a CELL statement, a RESOLUTION statement, the symmetry operators, an FO statement, some coordinates, and the form factors. The structure factors introduced on a FC statement will be used in place of those calculated from the coordinates if a FC statement is given.

If the SIGMA option has been set the coefficients will be sigma weighted. If a SIM statement has been given they will be Sim weighted.

Examples which produce an Fo-Fc and a 2Fo-Fc map are show below. Additional examples are given on page gif.

tabular622


REPORT {RFACTOR | SPACEGROUP}

The REPORT statement causes the program to write interesting information to the log file. There are two classes of information which can be reported.


next up previous contents index
Next: Program Operation Up: RFACTOR Previous: Unique Input Statements

Dale Edwin Tronrud
Thu Jul 6 23:24:57 PDT 2000