MOLREP (CCP4: Supported Program)

NAME

molrep - automated program for molecular replacement

SYNOPSIS

molrep
[Keyworded input]

DESCRIPTION

Version 6.2.5 /06.11.2000/ - FEATURES


CONTENTS


REFERENCES

      
   Author:  A.A.Vagin
                email: alexei@ysbl.york.ac.uk

  1. A.A.Vagin, ``New translation and packing functions'' Newsletter on protein crystallography, Daresbury Laboratory, (1989) 24, pp 117-121.
  2. A.Vagin,A.Teplyakov ``MOLREP: an automated program for molecular replacement'', J. Appl. Cryst. (1997) 30, 1022-1025.

INPUT/OUTPUT FILES

Input file formats

  1. Format of input file of coordinates is PDB or CIF or BLANC.
  2. Input file of structure factors and phases.
    1. Input formatted file of structure factors (CIF).
      This file must be CIF file which contains indices, structure factors (and phases if you need them): h,k,l,|F|,sig(F),Phi or h,k,l,|F|,sig(F),Phi,Fom
    2. Input PDB file of structure factors.
      This file contains indices and structure factors or intensities. (also simple formatted file with h,k,l,|F|,sig(F) or h,k,l,|F| and without titles is acceptable)
    3. Alternative input file of structure factors or phases is unformatted file of BLANC suite.
    4. MTZ file.

You can find some examples in Input file examples.

Space group and unit cell parameters of the unknown structure will be taken from the file of structure factors but if this file does not have such information, it will be taken from the coordinate file. In this case the input PDB coordinate file must contain correct CRYST1 cards with unit cell parameters and space group name for the unknown structure. You can change the space group of the structure factor file by using keyword NOSG.

Output files

molrep.crd
new coordinates of model (plus model_2) corresponding to the best solution of Cross Rotation and Translation Function.
molrep.pdb
new PDB coordinate file with molrep solution (this file will be created if you start from PDB file).
molrep.doc
protocol (like log file in CCP4). This file will be created if keyword DOC is 'Y' or 'A'.
molrep.bat
command (batch) file. This file will be created if keyword DOC is 'Y' or 'A'. You can repeat calculation using this file: cp molrep.bat bat and sh bat
molrep_rf.tab
List of peaks of rotation function, created as soon as the program calculates a Rotation Function.
molrep_rf.tab is default name, you can use another name using keyword FILE_T.
You can edit this file and use it for subsequent calculations without computing the rotation function again (keyword FUN=T). The program then reads (in free format!): "Sol_", peak number and Euler angles (alpha,beta,gamma), e.g.:
"Sol_  23  10.0    22.2 40.0"
In Phased Rotation Function calculations, the program reads "Sol_", peak number, Euler angles and shift (sx,sy,sz), e.g.:
"Sol_  23  10.0    22.2 40.0  .564 .443 .032"
In Rotation and Position the model (keyword FUN=S), the program reads "Sol_", peak number,Polar angles and shift (sx,sy,sz)
molrep_srf.tab
List of peaks of Self Rotation Function.
molrep_rf.ps
PostScript file of Self Rotation Function

Some output files will not be deleted if keyword LIST=L. They have the internal format of the BLANC program suite and can be used by programs of this suite (see file README from ftp site: ftp.ysbl.york.ac.uk (user: anonymous, then: cd pub/alexei)

crossrot_alo
spherical coefficients of F_observed
crossrot_alm
spherical coefficients of F_model
crossrot_dns
rotation function map
trfun_cf
coefficients of translation function
trfun_dns.dat
translation function map
trfun.crd
translation function solution
molrep_fob.dat
F_observed

also (if you started from MTZ file):

molrep_mtz.cif
formatted CIF file of F_observed

also (if you used keyword FILE_S):

align.pdb
input model corrected by sequence alignment

WHAT MOLREP CAN DO


                          +-- Self RF  (FUN=R, without any model)
                          !
         +-- Standard MR -+-- Cross RF (FUN=A or FUN=R )
         !                !
         !                +-- TF       (FUN=A or FUN=T )
         !
         !                                       +- two identical models
         !                                       !
         !                      +-- Dyad search -+
         !                      !   (DYAD=D)     !
         +-- Multi-copy search -+                +- two different
         !      for MR          !                   models 
         !                      !
MOLREP --+                      +-- Multy-copy for one model
         !                          (DYAD=Y)
         !                        
         !                       +-- RF and PTF
         !                       !   (PRF=N)
         +-- Fitting two models -+
         !                       !
         !                       +-- SAPTF, PRF and PTF
         !                           (PRF=Y)
         !
         !                        +-- RF and PTF
         !                        !   (PRF=N)
         +-- Searching in ED map -+ 
         !                        !
         !                        +-- SAPTF, PRF and PTF
         !                            (PRF=Y)
         !
         +-- Rotate and position the model (FUN=S)

where: FUN, DYAD, PRF - keywords
       MR    - Molecular Replacement
       RF    - Rotation function
       TF    - Translation function     
       PRF   - Phased Rotation function
       PTF   - Phased Translation function
       SAPTF - Spherically Averaged Phased Translation function

* Standard molecular replacement method

The program performs molecular replacement in two steps:

  1. Rotation function (RF)
    search orientation of model
  2. Cross Translation function (TF) and Packing function (PF)
    search position of oriented model

The result of the Rotation function depends on the radius of a spherical domain in the centre of the Patterson function (the so-called cut-off radius). This radius must be chosen so as to maximize the ratio between the number of inter- and intramolecular vectors. The program chooses the value of this radius as twice the radius of gyration, but can also use an input value.

Instead of computing RF, the program can use a list of orientations from a Rotation function which was prepared before. Anisotropic correction of data before computing RF can be useful for data with high anisotropy.

With a second fixed model, the use of modified stucture factors instead of |Fobs| for RF (keyword DIFF) may make RF clearer. The modified stucture factor is:

||Fobs|-|Fmod2|*(P2/100)|

where P2 is the percentage of model_2 in the whole structure.

The Translation function can check several peaks of the rotation function by computing a correlation coefficient for each peak and sorting the result. For scaling observed and calculated structure factors, the program uses the scaling by the origin peak of Patterson, but for data with high anisotropy the program can use anisotropic scaling. The Translation function can take into account the second fixed model and also, if the number of monomers is known, MOLREP can position the input number of monomers in a simple run. The program can detect and use pseudo-translation vectors. In this case the pseudo-translation related copy of the model will be added to the initial one.

The Packing function is very important in removing wrong solutions which correspond to overlapping symmetry-related or different models.

Use keywords:

COMPL, DIFF, FUN, MODEL_2, NMON, NP, NPT, P2, PACK, PST, RAD, RESMAX, SIM, STICK, SURF, VPST

* Self Rotation Function only

If you define only a file of structure factors (Fobs), the program will compute a Self Rotation function with cut-off radius RAD = 30 as default. Use keyword RAD if you want another value. Other useful keywords: RESMAX, RES_R, COMPL, SIM.

Resulting output:

molrep_srf.tab
List of peaks of Self Rotation Function.
molrep_rf.ps
PostScript file of Self Rotation Function which contains four plots RF (theta,phi,chi) for
chi = 180, 90, 120, 60.
You can change the fourth value of chi (60) by keyword CHI
You can change the scale of these plots of RF by keyword SCALE

* Search model in electron density map

In some cases it is difficult to solve an X-ray structure by molecular replacement even when a structure for a homologous molecule is khown. If prior phase information either from SIR/MAD or from a partial structure is known, this could be used in a six-dimensional search. The program divides the six-dimensional search with phases into three steps:

  1. a spherically averaged phased translation function (SAPTF) is used to locate the position of the molecule or its fragment. It compares locally spherically avaraged experimental electron density with that calculated from the model and tabulates highest scoring positions.
  2. then for each such position a local phased rotation function (PRF) is used to find the orientation of the molecule.
  3. the phased translation function (PTF) for found orientation which checks and refines the found position.

You need to have the phases in a CIF file of structure factors or to use corresponding keywords for MTZ file or to use keyword PHASE for BLANC file of phases.

Other useful keywords:

COMPL, NMON, NP, NPT, RAD, RESMAX, SIM, SURF

* Fitting two models (FM)

The idea is to fit the electron densities instead of the atomic models, trying to find the best overlap. Advantages are:

If you define only two files of models (searching model and model_2), without a file of structure factors (Fobs), the program will fit the search model (keyword FILE_M) to the second model (keyword MODEL_2). The search model must be smaller or equal to the second model.

Other useful keywords:

COMPL, NP, NPT, RAD, RESMAX, SIM, SURF

The result is file molrep.crd (or molrep.pdb) - model fitted to second model.

* Just rotate and position the model

This possibility may be useful if you want to place the model to a particular orientation and position, or to compare several solutions.

Use keyword FUN=S and define three files: a model (keyword FILE_M), a file of structure factors (keyword FILE_F) and file with polar angles and shifts (keyword FILE_T). The program will shift the model to the origin, rotate (by polar angles) and the position it (in fractional unis). The new model will be written to an output coordinate file. Also the program will compute an R-factor and a Correlation Coefficient.

Other useful keywords:

COMPL, RESMAX, RES_T, SIM

* Multi-copy search

There are two modes: "dyad_search" and "Multi-copy search".

Dyad_search - Search two copies of a model simultaneously (keyword DYAD=D).

Sometimes you can not find a solution starting with one molecule if you have several copies of the molecule in the asymmetrical part of the unit cell. In this case a search with two independent molecules may give a solution. The central point of method is the construction of a multi-copy search model from properly oriented monomers using a special TF (STF), which gives the intermolrecular verctor between properly oriented monomers (dyad). This dyad can then be used for a positional search with a conventional TF.

  1. the program checks all pairs of NP peaks of the Rotation Function (RF). For each pair the program uses the first rotation to prepare model-1. Model-2 will be prepared by using the second rotation and one rotation from the crystallographical symmetry operators. The total number of pairs to be checked is ((NP+1)*NP*Nsym)/2
  2. next, for model-1 and model-2: the program computes the Special Translation Function (STF) to find the inter-molecular vector of the dyad.
  3. for NPT peaks (i.e. inter-molecular vectors) of the STF, the program computes the standard Translation Function (TF) using the current dyad as a model, and it calculates a Correlation Coefficient for the first NPTD peaks of the TF.

Solution and output file: molrep.pdb will be the dyad with the best Correlation Coefficient (or several dyads if keyword NMON > 1).

WARNING: the procedure takes quite some time, because the total number of Translation Functions to be calculated is NMON*NPT*((NP+1)*NP*Nsym)/2.

In the output .log (.doc) file you can find the following information:


Sol_      R1  R2  Rs Rslf STF TF        Shift_1     PFmax PFmin    Rfac   Corr
Sol_       1   1   1   0   2   1  0.059 0.000 0.201  1.01  0.99   0.569  0.379

and

Sol_best   1   1   1   0   2   1  0.059 0.000 0.201  1.01  0.99   0.569  0.379
Sol_best         Rot1-->2               Dyad_vector       dist d_ort d_par
Sol_best    0.0    0.0    0.0    -0.210  0.000 -0.487    39.2  19.6  33.9

These lines means:

R1
peak number of rotation for model-1
R2
peak number of rotation for model-2
Rs
CS operator number which applyed before rotation for model-2
Rslf
peak number of self rotation function
STF
peak number of special translation function
TF
peak number of translation function
Shift_1
position of model-1
PFmax PFmin
min, max values of Packing function
Rfac Corr
R-factor and Correlation Coefficient
Rot1->2
polar angles of rotation from model-1 to model-2.
Dyad_vector
vector (in fractional) from model-1 to model-2.
dist d_ort d_part
first number - distance between models (in Angstrom)
second number - distance orthogonal to rotation 1->2
third number - distance parallel to rotation, i.e. for pure dimer this is 0.

If you believe the Self-RF, you can try to find a dyad which has the rotation between monomers corresponding to the rotation of the Self-RF (use keyword NSRF).

Model-2 can be different from model-1. Use keywords FILE_M2 to define file of searching model-2, FILE_T2 with list of peaks rotation function for this model (this RF have to be computed before) and NP2 number of peacks which will be used.

Multi-copy search - Search many copies of a model (not only dyad) (keyword DYAD=Y). Program starts to search a single monomer, after that produces the dyad search, repeates dyad search for next dyad with the first being fixed and ,finaly, tryes add a single monomer.

Use keywords:

DYAD DIST AXIS NP NSRF NPT NPTD NP2 FILE_M2 FILE_T2 NMON

and also:

COMPL SIM RESMAX SURF

* Model correction

You can improve your model beforehand by using keyword SURF.

* Using sequence alignment

Another way to improve your model is to use the sequence of the unknown structure.

Use keyword FILE_S to define a file containing a sequence. This sequence file must be ASCII:

! 
!# sequence 
!SVIGSDDRTRVTNTTAYPYRAIVHISSSIGSCTGWMIGPKTVATAGHCIY
!# this is comment
!    DTSSG--SFAGTATVSP   GRNGTSYPYG
!NRGTRITKEVFDNLTNWKNSAQ

If the first symbol in the line is "#", it means the line contains comments. Blancs are ignored.

The program will perform sequence alignment and create a new corrected model with the atoms corresponding to the alignment. The output file with the corrected model is align.pdb. The results of the alignment are written to the DOC-file, if this was defined. Without an Fobs file, the program only performs model correction.

* NMR Model

You can use PDB file with NMR models or pseudo-NMR file with several homologous structures which were superimosed before. Algorithm is equivalent to sum RF or/and TF for individual structures. In the PDB file different models must be separated by MODEL record. For example:

HEADER    HYDROLASE (ENDORIBONUCLEASE)         
CRYST1   64.900   78.320   38.790  90.00  90.00 ...
MODEL        1 
ATOM      1  N   ASP A   1      45.161  12.836 ... 
ATOM      2  CA  ASP A   1      45.220  12.435 ...   
 ... 
ATOM    745  SG  CYS A  96      58.398   6.673 ... 
ATOM    746  OXT CYS A  96      62.238   7.178 ...  
ENDMDL                                        
MODEL        2   
ATOM      1  N   ASP B   1      44.487  11.386 ...  
ATOM      2  CA  ASP B   1      44.559  11.129 ... 
 ...

Use keyword NMR

HOW TO USE MOLREP

A simple way to use MOLREP is to define files for Fobs and the model, number of model to search, and use default values for all parameters (i.e. without using any keywords). There is always a chance of solving the structure automatically. If this does not work, use a common strategy of molecular replacement.

Planning ahead

Success of the molecular replacement method depends on:

Things to look out for:

data
Look at your data quality. Completeness is very important. Absence of low resolution reflections may cause problems, especially if the model is some part of a whole structure. Look at anisotropy and twinning.
Think carefully: can you 'safely' use the high resolution reflections? If not, use keyword SIM to remove the potentially bad effect of this part of the data. It might be a good idea to use some program to check the data, for example SFCHECK.
model
Look at the model regarding the shape. The automatic choice of the cut-off radius for RF is twice the radius of gyration. This is good enough if the shape is approximately spherical. If the model is very asymmetrical, it is better to make a choice yourself.
Remove from your model the heavy atoms and some terminal residues if they lie 'outside' the model.
Make a choice for SIM,COMPL. If you have not any idea about similarity, SIM=0.5 is a good approximation.
If you have a dimer use it, but use RAD corresponding to a monomer.
It is very useful to shift the model to the origin of coordinates. Use keyword SURF = O or Y (Y is default).
Self-RF
Compute Self-RF. It may give you some idea about NCS or about the number of copies in the asymmetrical part of unit cell.
Choose the radius of integration carefully. The program can not make any informed choice about it without a model (default is 30Å).
Cross-RF only
Compute Cross-RF with LIST=L and DOC = Y. In the DOC_file you can find the list of expected orientations of the model and also the rotations between them. Compare this with the Self-RF. This is an additional check of correctness of the expected orientation. But sometimes we can not find corresponding peaks in Self-RF for correct orientation.
If you have high anisotropy in the data, use anisotropic correction.
Translation function
If there are several copies of the model in the asymmetrical part of unit cell, use keyword NMON or dyad search. You can not use the option of Pseudo-translation for a dyad search, since this can recognize Pseudo-translation itself.
If you have high anisotropy in the data, use anisotropic scaling.

Dialogue or batch

You can use MOLREP by dialogue or by command (batch) file. Modern computing technology allows the carrying out of most of the calculations for small and medium sized proteins in real time, therefore, dialogue is a preferable way of running MOLREP. Keywords with short explanations are printed by the program at the beginning of execution. However, the program automatically produces a batch command file during dialogue. This feature might be useful for repeated calculations.

Pseudo-translation

MOLREP can detect pseudo-translation, and define a pseudo-translation vector.

If keyword PST = Y, the program applies pseudo-translation with a pseudo-translation vector which was defined by the program or the user. When calculating a Translation Function, the program will add to the model a copy of model which is translated by the pseudo-translation vector.

If FUN=R and LIST=L MOLREP computes a list of Patterson peaks and writes these to molrep.doc. This may be helpful in the detection of pseudo-translation.

Use keywords:

PST, VPST

Keep in mind

KEYWORDED INPUT

It is easy to use MOLREP interactively, but can be used in batch. All keywords must be preceded by an underscore (e.g. _DOC). The available keywords are:

These three keywords always must be defined in this order:

DOC
FILE_F
FILE_M

If you use MTZ file you have to put MTZ keywords after FILE_F Ahd finish it with line "_END".

General keywords

Common:

FILE_T, FUN, NMON, NP, NPT, RAD

And for structure factors control:

COMPL, RESMAX, SIM

And for model control:

MODEL_2, SURF

And for multi-copy search:

DYAD, FILE_M2, FILE_T2, NP2, NPTD, NSRF

And for search in ED:

PHASE, PRF

And for fitting two models:

PRF

Keywords for special cases

Common:

ANISO, BADD, LIST, LMAX, LMIN, MODE, PACK, RES_R, RES_T

And for standard MR:

DIFF, FILE_S, NMR NOSG, P2, PST, STICK, VPST

And for Self RF:

CHI, PST, SCALE

And for multi-copy search:

AXIS, DIFF, DIST, NMR P2

And for search in ED:

DIFF, P2, NPTD

And for fitting two models:

NPTD

To get started with MOLREP, you first have to answer three questions:

  1. Do you want to have FILE-DOCUMENT molrep.doc? < N | Y | A >

    Default: <N>

    N
    do not produce DOC-file
    Y
    produce DOC-file with new contents
    A
    keep old contents and add new information, i.e. if a file molrep.doc already exists, and the answer to question 1 is "A", the program will add any new information to the end of this file

    The DOC-file contains the protocol of the running of the program. With the DOC-file, the program creates a command (batch) file: molrep.bat.

  2. What is the name of the input file with Fobs (allowed formats: ASCII (CIF or PDB) or BLANC or MTZ), i.e. FILE_F?

    Assign the name of a formatted file of structure factors, or, in the case of fitting two models, leave this option out. When using an MTZ file, here MTZ keywords must be used.

  3. What is the name of the input file with the model coordinates (allowed formats: PDB, CIF or BLANC), i.e. FILE_M?

    The unit cell and space group of this file must be the same as those for the file with Fobs (of the unknown structure). If they are not the same, the program will take these values from the Fobs file.

    Without this file the program computes a Self Rotation Function and plots RF(theta,phi,chi) for

    chi = 180, 90, 120, 60
    You can change the fourth value of chi (60) by keyword CHI
    You can change the scale of these plots of RF by keyword SCALE

General keywords

NP <np>

Default: <10>

<np> is the number of peaks from the rotation function to be used/checked (maximum: 50).

In special cases (e.g. for a dyad search), the use of keywords FUN (with option 'T') and FILE_T is closely linked to NP.

NPT <npt>

Default: <20>

<npt> is the number of peaks from the translation function to be used/checked (maximum: 50).

For use in dyad search, see NPT for dyad search.

NMON <nmon>

Default: <1>

<nmon> is the number of monomers. The program will try to create a full model, which will consist of NMON initial models plus model_2.

COMPL <compl>

Default: automatic choice

<compl> is the completeness of the model: from 0.1 to 1.0. It corresponds to Boff: from RESMAX*2 to RESMAX*6. If COMPL is used, keywords RES_R and RES_T are ignored.

For example: if you have a dimer in the asymmetric part of the unit cell, COMPL=0.5.

SIM <sim>

Default: automatic choice

Similarity of the model: from 0.1 to 1.0. It corresponds to Badd: from Boverall to -Boverall. SIM=1 means normalized F will be used. When no knowledge of similarity is available, the use of SIM=0.5 as a starting value is recommended. If SIM is used, the keyword BADD is ignored.

SIM (Badd)
controls high resolution data
COMPL (Boff)
controls low resolution data

The use of Boff and Badd means to change Fobs and Fmodel:

|F|new = |F|input *EXP(-Badd*RSQ)*(1-EXP(-Boff*RSQ)

FUN < A | R | T | S >

Default: <A>

R
calculate only Rotation Function
T
calculate only Translation Function, reading list of peaks of RF from file (molrep_rf.tab) or from TAB_file
A
calculate both: RF and TF
S
rotate and position the model and compute R-factor and Correlation Coefficient

FILE_T <filename>

Default: <molrep_rf.tab>

Input or output TAB_file (see also molrep_rf.tab)

MODEL_2 <filename>

Default: no model_2

Input file with the second (fixed) model in correct position and orientation, in PDB or BLANC format. This model will be fixed during the search. When fitting two models to each other, the second model is the target model.

SURF < N | Y | A | O | 2 >

Default: <Y>

Perform model correction.

N
do not perform any model correction
O
only shift to the origin
A
make the protein into a polyalanine model (i.e. remove from the model: water molecules, H atoms, atoms with alternative conformation (except the first), atoms with occupacy = 0), make all B = 20, and shift to the origin
Y
remove various atoms from the model (water molecules, H atoms, atoms with alternative conformation (except the first), atoms atoms with occupacy = 0), shift to the origin, compute atomic accessible surface area and replace atomic B with B = 15.0 + SURFACE_AREA*10.0
2
set all B = 20 and shift to the origin

RAD <rad>

Default: automatically calculated from the model, unless:

Cut-off radius for Patterson search or for electron density search.

RESMAX <resmax>

Default: <3>

High resolution limit.

Keywords for special cases

PST < N | Y | C >

Default: <N>

How to deal with pseudo-translation.

N
ignore pseudo-translation altogether
C
check only, but do not use pseudo-translation
Y
use pseudo-translation. For the Translation Function, the program will add to the model a copy of the model which is translated by the pseudo-translation vector. If FUN=R and LIST=L, the program computes a list of Patterson peaks and writes these to 'molrep.doc'. It may be useful to detect pseudo-translation.

VPST <vpst1,vpst2,vpst3>

Default: automatically from Patterson

Pseudo-translation vector (in fractional units), used when PST = Y.

MODE <F | S >

Default: <F>

S
advanced rotation and translation functions and rigid body refinement are used
F
standard rotation and translation functions are used WITHOUT rigid body refinement

RES_R <res_r>

Default: automatic choice

Low resolution limit for Rotation Function. Instead of applying RES_R directly, the program uses all data and applies Boff=4*(RES_R)2.

RES_T <res_t>

Default: automatic choice

Low resolution limit for Translation Function. Instead of applying RES_T directly, the program uses all data and applies Boff=4*(RES_T)2.

BADD <badd>

Default: <0>

BOFF and BADD mean:

|F|new = |F|input *EXP(-BADD*RSQ)*(1-EXP(-BOFF*RSQ)

ANISO < N | Y | C | S | K >

Default: <N>

N
do not use anisotropic correction and/or scaling
Y
use anisotropic correction and scaling
C
use anisotropic correction of Fobs for RF only
S
use anisotropic scaling for TF only
K
use scaling without B-factor

PACK < Y | N >

Default: <Y>

Y
use Packing Function with Translation Function
N
do not use Packing Function with Translation Function

LMIN <lmin>

Default: <4>

Minimum L-index of spherical coefficients. The program does not use coefficients with L=0. Possible values are 2,4,6,... L = 2 means to use all coefficients up to Lmax.

LMAX <lmax>

Default: automatic choice

Maximum L-index of spherical coefficients. Possible values are 2,4,6,8,...,58,60.

PRF < N | Y >

Default: <N>

N
use standard molecular replacement calculations, unless keyword PHASE is used, in which case a Phased Translation Function is calculated
Y
SAPTF (Spherically averaged phased translation function) and Phased Rotation Function (PRF) will be used. In this case you have to use the phases (see keyword PHASE)
If keyword FUN=T, rather than computing the Rotation Function, the program reads rotation function results from file "molrep_rf.tab": "Sol_ peak number, euler angles (alpha,beta,gamma) and shift (sx,sy,sz)"

PHASE < + | - | +name | -name >

Default: none

If you want to use phases from CIF or MTZ, use "+" or "-" ("-" means inverted phases will be used). The CIF or MTZ file must contain phases and you have to use relevant keywords for MTZ.

If you want to use a BLANC file of phases, use "+name" or "-name", where "name" is the name of the file with phases. Again, "-" means inverted phases will be used.

If keyword PRF is N, a standard Rotation Function (RF) and Phased Translation function (PTF) will be computed.
If keyword PRF is Y, SAPTF, Phased Rotation Function (PRF) and Phased Translation Function (PTF) will be computed.

NOSG <nosg>

Default: <0>

Number of new space group if you want to change the space group for the file of structure factors.

LIST < S | L >

Default: <S>

S
short DOC-file
L
long DOC-file

DIFF < N | P | F >

Default: <N>

N
use unmodified structure factors
P
use modified stucture factors instead of Fobs for RF, as follows:
use ||Fobs|-|Fmod2|*(P2/100)|
F
use modified stucture factors instead of Fobs for RF, as follows:
use vector difference (Fobs - Fmod2*(P2/100))

P2 <p2>

Default: <0>

Percentage of model_2 in the structure.

STICK < N | Y >

Default: <N>

Choose from symmetry-related models closest to which found before (this option does not work with pseudo-translation or with dyad search).

FILE_S <filename>

File with sequence for model correction by sequence alignment.

NMR < 0 | 1 | 2 >

Default: <0>

0
use PDB file with NMR structures as single model
1
use NMR possibility only for RF
2
use NMR possibility for RF and TF

Keywords specific for multi-copy search

DYAD < N | Y | D >

Default: <N>

Y
multi-copy search
D
dyad search

DIST <Dmin,Dmax,Dpar>

Three distances for dyad search.

Dmin
Default: radius of gyration
minimal distance between molecules
Dmax
Default: 1000Å
maximal distance between molecules
Dpar
Default: 1000Å
maximal shift along rotation axis

AXIS <Chi,Delta>

Default: <0,0>

Chi
check only rotation by Chi (in degrees). 0 means to check all orientations.
Delta
delta for Chi (in degrees)

NSRF <nsrf>

Default: <0>

Number of peaks of Self-RF which will be used instead of Chi rotation. 0 means not to use Self-RF. A list of Self-RF peaks will be taken from file molrep_srf.tab, which must be prepared in advance (see Self Rotation Function).

NPT <npt>

This meaning only in conjuction with keyword DYAD: number of peaks in the STF (Special Translation Function) to be checked through Translation Function calculations, for inter-molecular vector search. If keyword DYAD is not given, the standard meaning of keyword NPT is used.

NPTD <nptd>

Number of peaks in TF to be checked through Correlation Coefficient calculations, for dyad search.

NP2 <np2>

Number of peaks in RF for second searching model to be checked for dyad search.

FILE_M2 <filename>

file of second searching model

FILE_T2 <filename>

file with list of peaks of RF for second searching model

Keywords for Self Rotation Function

Without a file of the model, the program computes a Self Rotation Function.

CHI <chi>

Default: <60>

Angle chi of additional fourth section of RF(theta,phi,chi).

SCALE <scale>

Default: <6>

Maximum value of RF is SCALE * SIGMA(RF).

COMMAND (BATCH) FILE

The best and easiest way to prepare a command file is to run MOLREP once by dialogue. If a molrep.doc file was assigned, the program creates a command (batch) file (molrep.bat) automatically.

See some command (batch) file examples.

MOLREP VERSION FOR CCP4 (MTZ file)

Keywords for reading MTZ file

The following keywords are necessary only for MTZ files.

F

Label of F or F(+)

SIGF

Label of sigma F or sigma F(+)

F-

Label of F(-)

SIGF-

Label of sigma F(-)

I

Label of I or I(+)

SIGI

Label of sigma I or sigma I(+)

I-

Label of I(-)

SIGI-

Label of sigma I(-)

PH

Label of phases

FOM

Label of figure of merit

MOLECULAR REPLACEMENT METHOD - THEORY

Molecular replacement method (MR)

There are two major steps in the Molecular replacement method: orientation and translation search. They are performed by Rotation and Translation function. Both of them are correlation functions (or overlapping functions) between observed and calculated from model Patterson.

Rotation function (RF):

              ROT(R) = I Pobs(r) * Pcalc(R,r) dr
                      rad

where

R
operator of rotation
 I
rad
integral inside a sphere in the centre of patterson with radius=rad (i.e. the cut-off radius)
Pobs
observed Patterson
Pcalc
calculated Patterson for rotated (R) model

Translation function (TF):

            TR(s)  = I Pobs(r) * Pcalc(s,r) dr  =
                    cell

                   = Sum ( I Pobs(r) * Pcalc_ij(s,r) dr) = Sum TRij(s)  
                     i#j                                    i#j

where

s
vector of translation
I
integral
i,j
cryst. symmetry operator numbers
Pcalc_ij(s,r)
calculated Patterson for model corresponding to ith operator and model corresponding to jth operator
TRij(s)
translation function of Pattersons Pobs(r) and Pcalc_ij(s,r).
The Translation Function is the sum of translation functions for each pair of different cryst. symmetry operators.

The best rotation function algorithm is the Crowther Fast Rotation Function which we use here. It utilizes FFT. MOLREP can compute the Rotation Function for three different orientations of the model and average them. That reduces the noise of Rotation function.

Translation function algorithm was developed by the author and performs calculations in the reciprocal space using FFT.

There are two major differences from other translation functions.

  1. Instead of summation of the translation functions for two operators TRij, we use their multiplication which makes the resulting map far more contrast-rich.
  2. Finally we can multiply the translation function with the Packing Function to remove peaks corresponding to incorrect solutions with bad packing.
    Packing function (PF) is overlapping function:
        
                  P(s) = Sum ( I  Ro_i(r) * Ro_j(r) dr )
                         i#j  cell

    where Ro_i(r) is the electron density of the model which corresponds to the ith cryst. symmetry operator.

    The algorithm of calculation of the Packing Function is similar to the one for the Translation Function and performed by the same program.

    Finally the 'advanced' Translation function is:

                TR(s)  = [  M  TRij(s) ] * P(s)
                           i#j

    where M means multiplication of different TRij.

Scaling by Patterson

For scaling we use a completely new strategy based on scaling of two Patterson maps. This method makes it possible to have a very good approximation for the scaling problem even if only low resolution data is available where other methods do not work. Scaling by Patterson is also useful for the Cross Rotation Function where we have different cells for the model and the unknown structure.

Low resolution cut-off (Boff)

Low resolution cut-off introduces systematical errors in the electron density especially near the surface of the model. This is known as the series termination effect. Instead of using the usual low resolution cut-off, MOLREP multiplies the modules of the structure factors by a special coefficient:

Fnew = Fold (1-exp(-Boff*s2)), where Boff= 4resmin2

Boff is called the "soft low resolution cut-off", which allows removal of structure factors in this resolution range without inroducing the series termination effect.

The use of a priori knowledge of similarity and completeness of the model

For low similarity the high resolution reflections are weighted down. For this, MOLREP uses an additional overall factor Badd:

Fnew = Fold exp(-Badd*s2)

Value of similarity 'SIM' can be: from 0.1 to 1.0. It corresponds to Badd: from (B_limit-Boverall) to -Boverall, where B_limit + 80.

SIM=1 means normalized F will be used.

For low completeness, e.g. when there are several molecules in the a.u., the contribution of low resolution reflections is weighted down. To manage the completeness of the model, MOLREP uses a low resolution cut-off (Boff). Completeness of model 'COMPL' can be : from 0.2 to 1.0. It corresponds to Boff: from 400 to 1600.

Functions of electron density searching (SM)

We suggest a new approach to divide a phased six-dimensional search into three steps:

  1. A spherically averaged translation function is used to locate the position of a molcule or its fragment. It compares locally spherically averaged experimental electron density with that calculated from the model and tabulates highly probable positions accordingly.
  2. Then for each position a local phased rotation function is used to find the orientation of the molecule.
  3. The third step is the phased translation function, used to check and refine the found position.

Spherically averaged phased translation function (SAPTF)

SAPTF gives the expected position of a model in an electron density map by the comparison of spherically averaged density of the model with locally spherically averaged observed density.

SAPTF(s) = I Robs(r,s) * Rcalc(r) dr
         rad(s)

where

  I
rad(s)
integral inside a sphere centred in point s of electron density with radius=rad (i.e. the cut-off radius)
Robs
spherically averaged around point s observed electron density
Rcalc
spherically averaged around origin of coordinate system calculated electron density for model

Phased Rotation function (PRF)

PRF gives the orientation of model placed in some point of electron density.

PROT(O) = I Robs(r) * Rcalc(O,r) dr
        rad(s)

where

O
operator of rotation
  I
rad(s)
integral inside a sphere centred in point s of electron density with radius=rad
Robs
observed electron density
Rcalc
calculated electron density for rotated (O) model

Phased Translation function (PTF)

Translation search in electron density map.

PTR(s)  = I Robs(r) * Rcalc(s,r) dr
        cell

where

s
vector of translation
I
integral
Robs
observed electron density
Rcalc(s,r)
calculated electron density for model placed in the vector s

Fitting two models (FM)

Fitting through electron density. Second model (MODEL_2) is the target model which converted to electron density. To search the best overlapping of electron densities of models there are two algorithms:

  1. Rotation Function (Patterson) and Phased Translation Function (electron density).
  2. All functions for electron density. Spherically Averaged Phased Translation Function gives expected position for model. Phased Rotation Function for expected position gives orientation. Phased Translation Function checks and refines the translation vector.

Special Translation Function (STF) for dyad search

Multi-copy search

Search two copies of a model simultaneously. There are three stages to this:

  1. Rotation function. The program checks all pairs of first NP peaks of Rotation Function (RF). For each pair the program uses the first rotation to prepare model-1. Model-2 will be prepared by using the second rotation and one rotation from the crystallographical symmetry operatators.
  2. Next, for the current pair (model-1 and model-2): MOLREP computes the Special Translation Function (STF) to find the inter-molecular vector of this dyad.
  3. For NPT peaks of the previous Special Translation Function (STF) (i.e. for NPT inter-molecular vectors) the program computes a standard Translation Function (TF) using the current dyad as model and calculates a Correlation Coefficient for first NPTD peaks of TF.

Special Translation Function (STF)

Imagine two models in the asymm. part of the unit cell:

F1(h)
structure factor of model_1 with the centre of gravity in the origin of the coord. system
F2(h)
structure factor of model_2

Let

S1
vector in unit cell from the origin of the coord. system to the centre of gravity of model_1
S2
vector for model_2

When F(h) is the total structure factor (for the whole crystal structure):

F(h) = F1(h)exp(-2pihS1) + F2(h)exp(-2pihS2)

Then the Patterson is:

P(h) = F(h)*F'(h)

       = F1(h)*F1'(h)
        + F1'(h)*F2(h)*exp(-2pih(S2-S1))
        + F2'(h)*F2(h)
        + F1(h)*F2'(h)*exp(-2pih(S1-S2))

       = P0(0) + P1(S2-S1) + P1(S1-S2)

The Special Translation Function is a Phased TF with a Patterson function as electron density and P1 = F1'(h)*F2(h) as structure factors of the model. Solution of this function is the dyad vector S1-S2.

INPUT FILE EXAMPLES

A. Example of CIF file of amplitudes:

         data_structure_9ins
         _cell.length_a      100.000
         _cell_length_b      100.000
         _cell.length_c      100.000
         _cell.angle_alpha    90.000
         _cell.angle_beta     90.000
         _cell.angle_gamma    90.000
         _symmetry.space_group_name_H-M  'P 1 21 1'
         loop_
         _refln.index_h
         _refln.index_k
         _refln.index_l
         _refln.F_meas_au
         _refln.F_meas_sigma_au
            2  3   4    12.3   1.2
           -2 -3  -4    11.4   1.1
          . . . . . . . . . . . . .

For intensities use:

         _refln.intensity_meas 
         _refln.intensity_sigma 

B. Example of CIF file of amplitudes with phases:

         data_9ins
         _cell.length_a      100.000
         _cell_length_b      100.000
         _cell.length_c      100.000
         _cell.angle_alpha    90.000
         _cell.angle_beta     90.000
         _cell.angle_gamma    90.000
         _symmetry.space_group_name_H-M  'P 1 21 1'
         loop_
         _refln.index_h
         _refln.index_k
         _refln.index_l
         _refln.F_meas_au
         _refln.F_meas_au_sigma
         _refln.phase_calc
         _refln.fom
            1   0   0    3468.4934   138.7397    0.746  1.000 
            2   0   0     618.4012    24.7360   11.948  1.000 
          . . . . . . . . . . . . . . . . . . . . . . . . . . . 

Phases are in degrees.

C. Example of PDB file of amplitudes:

       HEADER   R2SARSF   15-JAN-91
       COMPND   RIBONUCLEASE SA (E.C.3.1.4.8) COMPLEX WITH 3'-*GUANYLIC ACID 
       SOURCE   (STREPTOMYCES $AUREOFACIENS)
       AUTHOR   J.SEVCIK,E.J.DODSON,G.G.DODSON
       CRYST1  64.900   78.320   38.790  90.00  90.00  90.00 P 21 21 21    8
       CONTNT   H,K,L,S,FOBS,SIGMA(FOBS)
       FORMAT   (2(I3,2I4,2F7.0,F6.0,9X))
       COORDS   2SAR
       REMARK  1 TWO REFLECTIONS PER RECORD.
       REMARK  2 DMIN=1.85, DMAX=16.28
       CHKSUM  1 MIN H=0,MAX H=34,MIN K=0,MAX K=41,MIN L=0,MAX L=20
       CHKSUM  2 TOTAL NUMBER OF REFLECTIONS=17346
       CHKSUM  3 TOTAL NUMBER OF REFLECTION RECORDS=8673
       CHKSUM  4 SUM OF FOBS=0.235499E+07
         0   0   3     60      9    16           0   0   4    106    307    25
         0   0   5    166     23    20           0   0   6    239    657    52
         0   0   7    326      0    38           0   0   8    425    511    40
       . . . . . . . . . . . . . . . . . . . . . .

D. Example of simple formatted file of amplitudes:

In this case the assumption is that order of data is H,K,L,F,sig(F)

                   
            2  3   4    12.3   1.2
           -2 -3  -4    11.4   1.1
           . . . . . . . . . . . . .

               or 

            2  3   4    12.3  
           -2 -3  -4    11.4  
           . . . . . . . . . 

The length of file records must not exceed 80 characters. The format of the records is free, e.g. data must be separated by blancs (be careful - some PDB files do not satisfy this rule).

COMMAND (BATCH) FILE EXAMPLES

BATCH file example of Cross Rotation and Translation functions:

# --------------------------------
 molrep <<stop
# --------------------------------
#
 _DOC  Y
#
_FILE_F fobs.dat
_FILE_M mm1.crd
#
#
_NP   8
_RAD 27
_ANISO C
_sim   .1
_compl .5
_END
stop

BATCH file example of Self Rotation function:


# --------------------------------
molrep <<stop
# --------------------------------
#
_DOC  Y
#
_FILE_F fobs.dat
_FILE_M 
#
#
_RAD 27
_END
stop

BATCH example with MTZ file:

# --------------------------------
molrep <<stop
# --------------------------------
#
_DOC  Y
#
_FILE_F p1.mtz
#
_F  FO
_SIGF  SDFO
_END     <--- end of MTZ block
#
_FILE_M p1_pdb.cds
#
#
_NP   8
_ANISO C
_sim   .1
_compl .5
_END
stop

BATCH example with MTZ file

For searching in the electron density map for some model (standard Rotation Function will be used):

# --------------------------------
molrep <<stop
# --------------------------------
#
_DOC  Y
#
_FILE_F p1.mtz
#
_F  FO
_SIGF  SDFO
_PH    PH_FO
_END   <--- end of MTZ block
#
_FILE_M mod.pdb
#
#
_NP    8
_PHASE +
_END
stop

BATCH file example of fitting two models:

# --------------------------------
molrep <<stop
# --------------------------------
#
_DOC  Y
#
_FILE_F 
_FILE_M mod1.pdb
#
_MODEL_2 mod2.pdb
_PRF Y
_END
stop

BATCH file example of dyad search:

# --------------------------------
molrep <<stop
# --------------------------------
#
_DOC  Y
#
_FILE_F fobs.dat
_FILE_M mod1.pdb
#
_dyad y
_axis 0,10
_dist 0,300,300
_NPT  3
_NPTD 3
_END
stop

BATCH file example of dimer search:

# --------------------------------
molrep <<stop
# --------------------------------
#
_DOC  Y
#
_FILE_F fobs.dat
_FILE_M mod1.pdb
#
_dyad y
_axis 180,10
_dist 0,300,1
_NPT  3
_NPTD 3
_END
stop

BATCH file example dimer search for Self-RF orientations:

# --------------------------------
molrep <<stop
# --------------------------------
#
_DOC  Y
#
_FILE_F fobs.dat
_FILE_M mod1.pdb
#
_dyad y
_axis 180,10
_dist 0,300,1
_NSRF 20
_NPT  3
_NPTD 3
_END
stop

BATCH file example of using file of sequence

# --------------------------------
molrep <<stop
# --------------------------------
#
_DOC  Y
#
_FILE_F mtz.mtz
#
_F  FP
_SIGF  SIGFP
_END     <--- end of MTZ block
#
_FILE_M 1hpg.pdb
#
#
_NP   8
_NMON 2
_FILE_S new.seq
_sim   .1
_compl .5
_END
stop

Convention for rotation


  Rotation by Euleran angles Alpha, Beta, Gamma:

     euleran angles : 1. A( Z ) - alpha around axis Z
                      2. B( Y') - beta  around new axis Y
                      3. G( Z') - gamma around new axis Z

  Rotation by Polar angles Theta, Phi, Chi:

                    polar coordinates Theta, Phi of rotate axis:
 
       Theta     -  angle between  rotate axis and Z
       Phi       -  angle in plan XY between X and projection rotate axis

       Chi       -  rotation angle arount rotate axis

Convention for Orthonormal coordinate system

       Orthonormal axes are defined to have:
 
       A parallel to X , Cstar parallel to Z

MEMORY CONTROL PARAMETERS

In main_molrep.f or main_molrep_mtz.f:

 
CC --- MEMORY - common memory for maps and coordinates
       PARAMETER ( MEMORY  =4000000 )
CC --- NCRDMAX - maximal number of coordinates
       PARAMETER ( NCRDMAX = 100000  )
CC --- IPRSYM - maximal number of symmetry operators
       PARAMETER ( IPRSYM=96        )
       INTEGER*2 ISYM(5,3,IPRSYM)
       PARAMETER ( MEM = MEMORY/2 )
       REAL*8    POOL(MEM)
C ----

If program stops with message:

               ERROR: not enough memory ...

change parameter MEMORY in main_molrep.f or in main_molrep_mtz.f for CCP4 version of MOLREP.

INDEPENDENCE OF OPERATING SYSTEM

There are only 2 subroutines dependent on operating system in the file molrep_unix.f:

DISPL_BL
write message to terminal and stop cursor at the end of line.
CLOCK
get date to --> array IH.

(both are not very important for calculations)

You need to uncomment corresponding operators in these subroutines. For example:

C
C              SUBROUTINE DISPL_BL(LINE)
C        C
C        C -P- DISPL - write message to terminal and stop cursor 
C        C             at the end of line.
C        C         
C              CHARACTER LINE*(*)
C              INTEGER*4 NL
C              CALL LENSTR_BL(LINE,NL)
C              IF(NL.GT.79) NL=79
C        CVX   WRITE(*,'(''$'',A)')   LINE(1:NL)
C        CDP   WRITE(*,'('' '',A,$)') LINE(1:NL)
C        CMS   WRITE(*,'('' '',A,\)') LINE(1:NL)
C        CLN   WRITE(*,'('' '',A,$)') LINE(1:NL)
C              RETURN
C              END
C
C      CVX - for VMS VAX 
C      CDP - for unix system
C      CMS - for MS-DOS
C      CLN - for Linux 
C
C
C      SUBROUTINE CLOCK(IH)
C
C -P- CLOCK - get date to --> array IH()
C
C    IH(2),IH(3),IH(4),    IH(5),IH(6),IH(7)
C     sec   min  hour      day   month year
C
C     INTEGER*4 IH(7)
C ******
CMS   INTEGER*2 IHR,IMN,ISEC,I100H,IYR,IMON,IDAY
CVX   CHARACTER STR*8
CDP   INTEGER*4 ID(3)
CLN   INTEGER*4 ID(3)
C --------------------------------
C
CVX   CALL IDATE(I1,I2,I3)
CVX   IH(5)=I2
CVX   IH(6)=I1
CVX   IT1  =I3+2000
CVX   IH(7)=IT
CVX   CALL TIME(STR)
CVX   READ(STR,'(I2,1X,I2,1X,I2)') IH(4),IH(3),IH(2)
CVX   IH(1)=0
C
C
CMS   CALL GETTIM(IHR,IMN,ISEC,I100H)
CMS   CALL GETDAT(IYR,IMON,IDAY)
CMS   IH(4)=IHR
CMS   IH(3)=IMN
CMS   IH(2)=ISEC
CMS   IH(5)=IDAY
CMS   IH(6)=IMON
CMS   IH(7)=IYR
CMS   IH(1)=I100H/2
C
CDP
CDP   CALL ITIME(ID)
CDP   IH(4)=ID(1)
CDP   IH(3)=ID(2)
CDP   IH(2)=ID(3)
CDP   CALL IDATE(IMON,IDAY,IYR)
CDP   IYR=IYR+2000
CDP   IH(5)=IDAY
CDP   IH(6)=IMON
CDP   IH(7)=IYR
CDP   IH(1)=0
CDP 
C
C
CLN
CLN   CALL ITIME(ID)
CLN   IH(4)=ID(1)
CLN   IH(3)=ID(2)
CLN   IH(2)=ID(3)
CLN   CALL IDATE(IMON,IDAY,IYR)
CLN   IYR=IYR+2000
CLN   IH(5)=IDAY
CLN   IH(6)=IMON
CLN   IH(7)=IYR
CLN   IH(1)=0
CLN 
C  
C
C     RETURN
C     END