AMoRe includes routines to run a complete molecular replacement.
As well as carrying out ROTATION and TRANSLATION searches against various targets, and doing RIGID BODY REFINEMENT, there are routines to reformat the observed data from the new crystal form, and to generate and tabulate structure factors from the model in a large P1 cell. See reference [1].
The steps are usually carried out in the following order.
AMORE requires a LOT of memory and this may cause problems on some machines. However this new release is considerably less demanding than the older one. (see Memory allocation).
The procedure is:
Expected Error in R factor with SCALE = 4 - 3 % Expected Error in R factor with SCALE = 3 - 9 % Expected Error in R factor with SCALE = 2 - 17 %You may need to generate TABLEs for several models, e.g. for different domains. Up to four different TABLE<i> files can be assigned during the translation search, and for rigid body refinement.
Runs the rotation function. Does the following four stages (they can be run seperately but I can think why..).
Keyword: GENERATE - calculates structure factors for model in a suitable cell, and packs them in the same format as the output of SORTFUN.
Keyword: CLMN - calculates spherical harmonics for crystal and models.
Keyword: ROTATE - calculates rotation function and finds many possible solutions by Patterson overlap.
Four solution criteria are tabulated:
Keyword: SHIFT - converts the Eulerian angle solutions determined for the model stored in XYZOUT<i> to give solutions to be applied to original MODEL.
Calculates the translation function using various target options.
Performs rigid-body refinement for any specified solution of the rotation or translation search, see reference [5].
Check that the CCs and RF_F have improved.
This works out the appropriate rotation and translation parameters to apply to the initial model (can also be done while running ROTFUN or FITFUN.)
Some common errors:
The various data control lines are identified by keywords. Only the first 4 characters of a keyword are significant. Records may be continued across line breaks using & or - as the last character on the line to be continued. The available keywords are listed below grouped according to their function:
These call the appropriate procedures.
May be used for the given functions.
Keyword Used in ------- ------- LABIN SORTFUN CRYSTAL TABFUN, TRAFUN, FITFUN MODEL TABFUN SAMPLE TABFUN GENERATE ROTFUN CLMN ROTFUN ROTATE ROTFUN SHIFT ROTFUN, FITFUN, REORIENTATE SOLUTION TRAFUN, FITFUN SYMMETRY TRAFUN, FITFUN REFSOLUTION FITFUN END
These modify the following primary keywords. Most use sensible defaults.
Keyword Subsidiary Keywords ------- ------------------- SORTFUN RESOLUTION, MODEL LABIN FP=?? SIGFP=?? PHI=?? FC=?? PHIC=?? TABFUN NOROTATE, NOTRANSLATE, NOTAB, HKLOUT, SFOUT MODEL BREPLACE, BADD CRYSTAL ORTH SAMPLE RESOLUTION, SCALE, SHANNON ROTFUN GENERATE RESOLUTION, CELL_MODEL CLMN CRYSTAL, MODEL, ORTH, FLIM, SHARPEN, RESOLUTION, SPHERE ROTATE CROSS or SELF, MODEL, BESLIM, STEP, PKLIM, NPIC, BMAX, LOCK SHIFT COM, EULER TRAFUN CB, HL, PT or PTF, CC, NMOL, RESOLUTION, PKLIM, NPIC CRYSTAL SYMMETRY SOLUTION FIX FITFUN NMOL, RESOLUTION, ITER, CONV REFSOLUTION AL BE GA X Y Z BF SHIFT COM, EULER CRYSTAL SYMMETRY SOLUTION REORIENTATE SHIFT COM, EULER SOLUTION
This signals the beginning of Step_1 SORTFUN.
[Compulsory.] A line giving the names of the input data items to be
selected followed by <program_label>=<file_label> assignments.
Acceptable labels are:
FP SIGFP PHI FC PHIC.
FC PHIC must be assigned for structure factors input.
FP must be assigned for creating the list of observations.
If PHI is assigned, the phases are stored and can be used for phased translation searches.
LABIN FP=F [ SIGFP=SIGF or PHI=PHIexptl ] LABIN FC=FC_domainA PHIC=PHIC_domainA
This signals the beginning of Step_2 TABFUN
<i> is the model number and is followed by all information needed to work with the model. At least one model must be specified to get any output.
PLEASE NOTE that if all the B-factors are zero in your model, then <badd> MUST be set to a sensible positive value.
The coordinates written to XYZOUT will have the same B-factors as the
input coordinates, but the TABLE will be generated using the modified B-factors.
Example:
MODEL 1 BREPLACE 0 BADD -10
Optional. Cell dimensions for observed data used to generate PDB style header for XYZOUT. The default is to use the TABFUN cell to generate the CRYST1 and SCALEi records.
Example:
CRYSTAL 112.32 112.32 85.14 90 90 120 ORTH 1
<i> is the model number and is followed by the sampling control parameters.
Example:
SAMPLE 1 RESO 3 SHANN 2.5 SCALE 4.0
This signals the beginning of Step_3 ROTFUN with subsequent keywords as follows.
<i> is the model number.
This routine calculates the model `structure factors' in a suitable P1
cell, and writes them in the same format as the SORTFUN output for the
crystal amplitudes. The file is assigned to HKLPCK1.
Example:
GENERATE RESO 20 3.2 CELL_MODEL 89 89 89
Calculates spherical harmonics for crystal and models.
Examples:
CLMN CRYSTAL RESO 20.0 4.0 SPHERE 30 - ORTH 1 SHARP -10.0 FLIM 0.E0 1.E8 CLMN MODEL 1 RESO 20.0 4.0 SPHERE 30
This routine calculates the rotation function.
If there are several molecules in the crystal assymmetric unit, AND you know the rotations which relate them to each other, ie you have a solutions to the SELF ROTATION, then the solutions to the cross rotation can be searched to find sets which are related by the expected NCS operators. If you do not have a closed group things are messy. The self rotation always finds pairs of solutions, ie that which rotates Mol1 to Mol2, and that which rotates Mol2 to Mol1. These are the inverse of each other; in Polar coordinates, they have the form (Omega,Phi,Kappa) and (Omega,Phi,-Kappa), and the Eulerian equivalent is (Alpha, Beta, Gamma) and (-Gamma,-Beta, -Alpha).
It is not altogether easy to decide what to do, and you need to have some idea of how many molecules you expect to find in the asymmetric unit, and how they may be arranged. This can be complicated to sort out; if there is a hexamer in the crystal, you would expect to find 3 two-fold axes, all perpendicular to a three fold axis. (If two axes are perpendicular, the product of their direct cosines,
DC1(axis1)*DC1(axis2) + DC2(axis1)*DC2(axis2) + DC3(axis1)*DC3(axis2) = 0.0
For TRAP, where the 11-fold rotation axis is perpendicular to a crystallographic 2 fold axis, the self rotation showed both a single peak at (Omega, Phi, 360/11) and 11 2-fold axes. This did NOT mean that TRAP contained 11 dimers, although the self rotation results were consistent with such a conclusion. AMORE does not at present generate all symmetry equivalents of SELF rotation solutions so it is sensible to use MAPROT to give a complete list.
If you believe you have a proper rotation with a clear solution with Kappa equal 360/n,
Kappa =180 ( 2-fold), or 120 (3-fold) or 72 (5-fold) and the NCS operators form closed group.
then you would specify NROT = n-1, followed by n-1 sets of polar angles to define the rotations:
(Omega,Phi,360/n) and (Omega,Phi,2*360/n) etc . In this case, every self rotation solution
and its inverse belong to the set.
If say, you expect 222 NCS symmetry with 3 intersecting 2-fold axes, you would set NROT=3 and specify the three sets of two fold axes: (Omega1,Phi1,180), (Omega2,Phi2,180) and (Omega3,Phi3,180).
Example
ROTA CROSS MODEL 1 [ BESLIMI 6 120 STEP 2.5 PKLIM 0.5 NPIC 100]
Reorientate stage. Moves Eulerian angle solutions determined for shifted model stored in XYZOUT<Model_number> to give solutions to be applied to original model. Needed if you want your solutions converted back to ones to apply to original coordinates.
Example
SHIFT 1 COM 17.3 -10.5 28.7 EULER 301.2 35.7 185.2
There are various translation function targets. Each takes each orientation solution in turn and searches for the NPIC "best" translational Xi Yi Zi for this orientation. Good solutions should give high correlation coefficients between FP and FC, and low Rfactors. Only one target can be specified for each run.
Each function tests each orientation solution in turn and searches for the best translational Xi Yi Zi for this orientation. Good solutions should give high correlation coefficients between FP and FC, and low Rfactors. For the first molecule all <Xi> <Yi> <Zi> belonging to the Cheshire cell are searched (see reference [7]). The Cheshire cell is the minimum volume which will allow a unique solution. For the first molecule it will be the cell which covers a volume from one possible origin to the next - you can usually see it by inspection of International Tables, e.g.: For P212121, the Cheshire cell is 0-0.5,0-0.5,0-0.5. For P21 the Cheshire cell is 0-0.5,any y,0-0.5. If you are searching for the NMOLth molecule of a set, the Cheshire cell will now be the whole primitive volume. You have assigned the origin by choosing the position of the first molecule, and the other molecules will have to be positioned relative to that choice.
A map of the Cheshire cell for each search is written to the file assigned to MAPOUT. N.B. the same file is used for all solutions - only the final one will be saved. If you wish to plot your best solution you will have to recalculate it.
Translation functions use a great deal of memory. The whole FFT transform is held in memory at once, and the calculation is done over a set of reciprocal lattice coefficients which can be twice the size of Hmax, Kmax, Lmax.
Example
TRAFUN CO NMOL 1 RESO 8 4 PKLIM 0.5 NPIC 10
(Optional.) Spacegroup name or spacegroup number It will default to that of the CRYSTAL data, picked up at the SORTFUN step. You may need to change it to test other possibilities; e.g. enantiomorphic spacegroups - P65 instead of P61. If you are not sure of your spacegroup, the translation function is a good way to distinguish the true spacegroup; e.g. you may need to test all possible orthorhombic possibilities; P222; P2 2 21; P2 21 2; P2 21 21; P21 2 2; P 21 2 21; P21 21 2; P 21 21 21; See example [4], [5].
(Optional.) Information used to modify the CRYSTAL amplitudes. See descriptions
above for CLMN. Example:
CRYSTAL ORTH 1 FLIMI 0.E0 1.E8 SHARP 0.0
When searching for a single molecule, a list of possible orientations from the rotation function (labelled SOLUTIONRC in ROTFUN output) is required.
Molecules are found sequentially. When searching for the nth molecule of a set, there must be sets of (n-1) previously determined solutions to the translation function. These are labelled with the key word FIX. For example to find the 2nd molecule fix one solution:
SOLUTIONTF1 FIX 1 <alpha1> <beta1> <gamma1> <X1> <Y1> <Z1>followed by the set of possible rotation function solutions. Each rotation orientation is tested in turn with the previous input FIXed solution. If you want to test several translation solutions, you can repeat the FIX information, and again follow it with the set of possible rotation function solutions.
To find the 3rd molecule fix a pair of solutions:
SOLUTIONTF1 FIX 1 <alpha1> <beta1> <gamma1> <X1> <Y1> <Z1> SOLUTIONTF2 FIX 1 <alpha2> <beta2> <gamma2> <X2> <Y2> <Z2>There is a limit of 99 (calculated as NMOL* Number_of_solutionrc) on the number of orientation solutions which can be included in one run. However there is no extra overhead in submitting several runs. This list should come last and is terminated by end-of-file or the keyword END.
Examples
SOLUTIONTF FIX 1 27.8 100.7 350.1 0.146 0.566 0.00 17.4 52.5
SOLUTIONRC 1 25.211 105.573 339.440
To extract the rotation information, `grep' (Unix) or `SEARCH' (VMS) for `SOLUTIONRC' in the ROTFUN output. Edit the resulting list to include only those solutions you want to run the translation search on, and include them in the input data e.g. with `@<file>'.
If you are searching for the <nmol>th molecule of a set, you must FIX <nmol>-1 solutions and search for the <nmol>th one. You will probably have several sets of the fixed solutions to test, plus many possible orientation solutions.
FIXed solutions will be extracted from your previous TRAFUN log. They will be followed by the list of solutions to the Rotation function output by Step_3. Structure factors calculated from the FIXed solutions are added to those generated for search molecules.
To extract the information for FIXed grep for `SOLUTIONTF'.
You will need to sort these to find those with the highest correlation
coefficients, and lowest Rfactors.
sort -r +8 -9 tra.list > tra_cc.list # sort on correlation coefficient. sort +9 -10 tra.list > tra_rf.list # sort on Rfactor
(Be careful to keep sets of solutions together!)
See the Unix plumbing in the example scripts, e.g., `auto-amore'.
This signals the beginning of Step_5 FITFUN which performs Rigid-body refinement. It minimises the sum over all hkl of ({Fo*exp(-Bs**2)}**2 - {k*Fc**2})**2 with respect to scale, B-factor and rotation and translation parameters.
Subsidiary words after FITFUN: (many same as TRAFUN)
Example
FITFUN NMOL 3 RESO 20 4.5 ITER 10 CONV 1.E-3
(Optional.) Information used to modify the CRYSTAL amplitudes. See descriptions above for CLMN.
(Optional.) Spacegroup name or spacegroup number. It will default to that of the CRYSTAL data, picked up at the SORTFUN step. You may need to change it to test other possibilities; e.g. enantiomorphic spacegroups - P65 instead of P61.
Refinement to be done for any of temperature factor, alpha, beta, gamma, x, y, z. Remember - in polar spacegroups you cannot refine either y or z parameter for one solution. This defaults to sensible values for different space groups.
Optional: program chooses sensible defaults.
Example
REFSOL AL BE GA X Y Z BF
Examples
SOLUTIONTF 1 25.1 105.6 339.5 0.1139 0.5691 0.0000 SOLUTIONTF 1 27.6 100.6 350.3 0.1461 0.5716 0.6476 48 51 SOLUTIONTF 1 27.7 115.9 353.5 0.1439 0.6027 0.3584 49 54
This list is terminated by end-of-file or the keyword END.
This list of Eulerian angles and translations can be extracted from the log file and edited in here. To extract the information from the previous log file, grep for `SOLUTIONTF'. You will need to sort these to find those with the highest correlation coefficients, and lowest Rfactors as described in step_4a, and edit to include only those solutions you want to run the rigid body refinement on to include them in the input data.
Reorientate stage. Moves Eulerian angle solutions determined for shifted model stored in XYZOUT<i> to give solutions to be applied to original MODEL. Needed if you want your solutions converted back to ones to apply to original coordinates.
Example
SHIFT 1 COM 17.3 -10.5 28.7 EULER 301.2 35.7 185.2
This signals the beginning of Step_6 - reorientate stage. This step can be run as a standalone step or as part of ROTFUN or FITFUN. It moves Eulerian angle solutions determined for shifted model stored in XYZOUT<i> to give solutions to be applied to original MODEL. Needed if you want your solutions converted back to ones to apply to original coordinates.
Example
SHIFT 1 COM 17.3 -10.5 28.7 EULER 301.2 35.7 185.2
There may be up to 99 solutions given. This list is terminated by end-of-file or the keyword END.
Examples
SOLUTIONTF 1 25.1 105.6 339.5 0.1139 0.5691 0.0000 SOLUTIONTF 1 27.6 100.6 350.3 0.1461 0.5716 0.6476 43.5 46.5 SOLUTIONTF 1 27.7 115.9 353.5 0.1439 0.6027 0.3584 41.3 47.3
Must be last keyword. Used as termination for list of solutions.
The program currently uses a lot of memory. At several points a whole Fourier transform is held in memory, and it is easy to overflow the limits set. You may not have enough virtual memory available to run large cases. It should be made more memory-efficient in the future. In the meantime it does dynamic memory allocation; the amount allocated at runtime is parameterised by assigning values to logical names since it currently isn't able to compute how much is needed at each stage before doing the allocation. Thus there may be some trial and error involved in setting appropriate values. The defaults are chosen to allow solutions of realistic cases on a `typical' VAX system. Note that the amount of memory you can grab may depend on what else the system is doing as well as possible per-user limits, so it may pay to try later on a multi-user system.
If the allocation for an array isn't large enough, the program stops with a message which should indicate at least which parameter needs to be increased and, in most cases, to what value. If the message doesn't make it clear what needs to be increased, please report the fact. Using the keyword VERBOSE may give more indication. The current values are printed in the output (look for `Memory allocation'). They may be changed by giving the appropriate logical names an integer value (which represents the size of an array) in any of possible ways:
The last option may be most appropriate on a system with lots of memory to provide large defaults and the distributed default.def contains commented-out values for a `big' version used at York and Cambridge.
The convention is that the orthogonalised coordinates of "crystal 2" (usually the model) are rotated to overlap the orthogonalised coordinates of crystal 1.
i.e. [XO1] = [ROT] [XO2] [YO1] [YO2] [ZO1] [ZO2]This means that axis permutations introduced by using NCODE = 2, 3 or 4 will result in apparently different solutions, although the effect on the fractional coordinates is the same.
In Polar angles:
If l m n are the direction cosines of the axis about which the rotation k = kappa takes place, and:
( l ) ( sin omega cos phi ) ( m ) = ( sin omega sin phi ) ( n ) ( cos omega )where omega is the angle the rotation axis makes to the ZO direction, and phi is the angle the projection of the rotation axis onto the XO-YO plane makes to the XO axis.
[ROT] = ( l**2+(m**2+n**2)cos k lm(1-cos k)-nsin k nl(1-cos k)+msin k ) ( lm(1-cos k)+nsin k m**2+(l**2+n**2)cos k mn(1-cos k)-lsin k ) ( nl(1-cos k)-msin k mn(1-cos k)+lsin k n*2+(l**2+m**2)cos k )Note that if omega = 0 or 180, then phi is indeterminate and is flagged as 999 in the SOLUTIONs output by AMORE.
In Eulerian angles:
If a (alpha) represents a rotation about the initial ZO axis,
b (beta) represents a rotation about the new position of the YO axis, and
g (gamma) represents a rotation about the final ZO axis:
[ROT] = ( cosa cosb cosg - sina sing -cosa cosb sing - sina cosg cosa sinb ) ( sina cosb cosg + cosa sing -sina cosb sing + cosa cosg sina sinb ) ( -sinb cosg sinb sing cosb )
orthogonalisation code NCODE = 1, orthogonal x y z along a,c*xa,c* (Brookhaven, default) = 2 b,a*xb,a* = 3 c,b*xc,b* = 4 a+b,c*x(a+b),c* = 5 a*,cxa*,c (Rollett)
- # sorting run: # ############# #
- # MTZ file contains cell and symmetry. # amore hklin spmi_trun.mtz hklpck0 spmipch.hkl sorting_nr 1000000 << eof TITLE ** spmi packing h k l F for crystal** SORTFUN RESOL 100. 3. LABI FP=F SIGFP=SIGF eof
- # Converting structure factors generated from a blob of electron density # to a TABLE. The blob must have been placed in a large "P1 unit cell". # #!/bin/csh -f ########################################################### # # There are lots of alternative ways of getting a masked block of density. # You first need a mask. # This is the simplest technique I have used.. # # Another way is to edit bones, then use bones_to_pdb to write out a file of # coordinates, and use ncsmask with that set, and the default atom radius. # ( 3A I think..) # #################################################################### # Make a spherical mask centred at the centroid of the chosen block of # density. # You need to choose a volume completely contained within the P1 cell; # ie all parts have coordinates between 0 and 1. # This is important later on for the amore translation. # By choosing the right symmetry operator, I have always managed to do # this.. although sometimes the block radius has had to be restricted a bit. # This doesnt seem to matter - you will have most of the molecular volume.. ########################################################### # P65_block_com.pdb # REMARK COM of a pva block - 18A radii #REMARK X: 22to55/103 Y; 22to62/102 Z; 60 to 89/96 #CRYSTL 208.400 208.400 96.200 90.00 90.00 120.00 P65 #SCALE1 0.004798 0.002770 0.000000 0.000000 #SCALE2 0.000000 0.005541 0.000000 0.000000 #SCALE3 0.000000 0.000000 0.010395 0.000000 #ATOM xcent Ycent Zcent # ncsmask xyzin ./P65_block_com.pdb \ mskout $SCRATCH/P65_block_com.msk <<eof # I have taken a 1A grid. GRID 204 204 96 AXIS Y X Z RADIUS 18 END eof # ########################################################### # extend the DM map to the same limits as the msk; # you will have to look at the log of Step 1. # ( You can get the mask grid by typing # prmap mapin $SCRATCH/P65_block_com.msk ) ########################################################### mapmask mapin /y/work2/suresh//nat3_au5_hg2_dm.map \ mapout $SCRATCH//nat3_au5_hg2_dm.ext << eof XYZLIM 57 93 62 101 56 91 END eof # ########################################################### # Generate a pseudo map in a big cell to act as a "model" for maprot # you will want to generate a list of structure factors # on a fine grid for Amore, and this requires a big cell. # There must be other ways of doing it but this works.. # # You will have to choose this cell sensibly, look at other amore # TABFUN outputs for guidance # Must be at least double the density block size # # bigdummycell.pdb - a dummy cell with only one atom # CRYSTL 120.000 120.000 120.000 90.00 90.00 90.00 1 # REMARK CRYSTAL 259.992 250.904 125.504 90.00 90.00 90.00 # ATOM 1 CB ALA 13 1 1.974 3.548 9.307 1.00 61.57 6 # sfall xyzin ./bigdummycell.pdb \ mapout $SCRATCH/bigdummymap.map <<eof MODE ATMMAP #SCALE 0.0 SYMM P1 GRID 300 300 300 END eof # ########################################################### # Now the tricky bit - put the "good" density in the big P1 cell: # This takes a lot of core and crashes my little Indy! # maprot \ mapin $SCRATCH/bigdummymap.map \ wrkin $SCRATCH//nat3_au5_hg2_dm.ext \ mskin $SCRATCH/P65_block_com.msk \ mapout $SCRATCH/nat3_au5_hg2_dm_cent_bigdummycell.map \ <<eof # "MODE TO" moves the WRKIN map ( after masking with MSKIN) to the MAPIN grid. MODE TO # No averaging; this is the identity.. SYMM P1 AVERAGE 1 ROTATE EULER 0 0 0 TRANS 0 0 0 END eof # ########################################################### # # Generate structure factors from this density ready for Amore # Then delete the *bigdummy*maps - they are HUGE.. sfall \ mapin $SCRATCH/nat3_au5_hg2_dm_cent_bigdummycell.map \ hklout $SCRATCH/nat3_au5_hg2_dm_cent_bigdummycell.mtz \ <<eof MODE SFCALC MAPIN SYMM P1 RESO 37 2.5 LABO FC=FC1 PHIC=PHIC1 END eof # # Now run new Amore to read these SFS in and generatethe TABLE #####################################################3 # sorting run: #####################################################3 # mtz file contains cell and symmetry. # amore \ hklin $SCRATCH/nat3_au5_hg2_dm_cent_bigdummycell.mtz \ table1 $SCRATCH/nat3_au5_hg2_dm_cent_bigdummycell.tab \ <<'END' VERBOSE TITLE ** packing h k l F for crystal** SORTFUN MODEL 100 3 LABI FC=FC1 PHIC=PHIC1 'END' # # And on the ROTFUN - this step has replaced the TABFUN step
- # tabling run: # ############# # # rotate and shift coordinates and produce table: # xyzout is the rotated and shifted coordinates. # amore xyzin1 search.pdb xyzout1 searchrot.pdb \ TABLE1 search.tab tabling_mi 10000000 \ tabling_mr 10000000 tabling_mc 1000000 << eof TITLE : Produce table for MODEL FRAGMENT VERBOSE TABFUN CRYSTAL 112.32 112.32 85.14 90 90 120 ORTH 1 MODEL 1 BREPLACE 0 BADD 0 SAMPLE 1 RESO 3 SHANN 2.5 SCALE 4.0 eof
- # roting run: # ############ #
- # straightforward rotation function. # amore TABLE1 search.tab \ HKLPCK1 search.hkl \ hklpck0 spmipch.hkl \ clmn1 search.clmn \ clmn0 spmipch.clmn \ roting_mi 1000000 \ roting_mr 1000000 \ roting_mc 10000000 \ roting_md 100000 \ MAPOUT amore_cross.map << eof ROTFUN VERB TITLE : Generate HKLPCK1 from MODEL FRAGMENT 1 GENE 1 RESO 100.0 3.0 CELL_MODEL 80 75 65 CLMN CRYSTAL ORTH 1 RESO 20.0 4.0 SPHERE 0.0 30 CLMN MODEL 1 RESO 20.0 4.0 SPHERE 0.0 30 ROTA CROSS MODEL 1 PKLIM 0.5 NPIC 100 eof
- # reorientate with PDBSET. Assume the following three solutions from AMoRe: # SOLUTIONF 1 56.35 74.98 145.14 0.3883 -0.0061 0.2757 55.7 45.2 57.1 28 # SOLUTIONF 1 295.44 70.84 148.61 0.8273 0.9301 0.2737 55.7 45.2 57.1 29 # SOLUTIONF 1 164.23 69.22 147.81 0.0896 0.8444 0.2876 55.7 45.2 57.1 30 Then: pdbset \ xyzin /y/ccp4/work/model-rot.pdb \ xyzout /y/ccp4/work/model-rot-sol1.pdb \ <<eof CELL 78.700 40.400 56.000 90.00 117.10 90.00 SYMM C2 rotat euler 56.35 74.98 145.14 shift frac 0.3883 -0.0061 0.2757 55.7 45.2 57.1 28 chain A end eof # pdbset \ xyzin /y/ccp4/work/model-rot.pdb \ xyzout /y/ccp4/work/model-rot-sol2.pdb \ <<eof # Use -0.5,-0.5,0 = other C2 solution CELL 78.700 40.400 56.000 90.00 117.10 90.00 SYMM C2 rotat euler 295.44 70.84 148.61 shift frac 0.3273 0.4301 0.2737 55.7 45.2 57.1 29 chain B end eof # pdbset \ xyzin /y/ccp4/work/model-rot.pdb \ xyzout /y/ccp4/work/model-rot-sol3.pdb \ <<eof # Subtract 1 from y CELL 78.700 40.400 56.000 90.00 117.10 90.00 SYMM C2 rotat euler 164.23 69.22 147.81 shift frac 0.0896 -0.1556 0.2876 55.7 45.2 57.1 30 chain C end eof # #
- # traing run: NMOL = 1 - P61 # ############################# # amore TABLE1 search.tab \ HKLPCK0 spmipch.hkl \ traing_nr 100000 \ traing_meq 100 \ traing_mrt 10000000 \ traing_mt 10000000 \ traing_mr 10000000 \ MAPOUT amore_transjunk1.map << eof TRAFUN CB NMOL 1 RESO 8 4 PKLIM 0.5 NPIC 10 SYMM P61 VERB TITLE : Translation function P61 - one molecule SOLUTIONRC 1 25.211 105.573 339.440 SOLUTIONRC 1 27.757 100.743 350.082 SOLUTIONRC 1 27.939 115.792 353.601 SOLUTIONRC 1 27.596 60.308 43.149 SOLUTIONRC 1 38.604 77.537 160.999 SOLUTIONRC 1 16.079 130.379 261.311 SOLUTIONRC 1 7.264 66.987 88.523 SOLUTIONRC 1 4.345 82.989 95.253 SOLUTIONRC 1 26.903 76.829 37.613 SOLUTIONRC 1 1.477 33.145 73.636 SOLUTIONRC 1 42.057 104.775 163.088 SOLUTIONRC 1 0.492 90.289 275.552 SOLUTIONRC 1 53.344 135.528 269.211 SOLUTIONRC 1 34.118 74.264 244.711 SOLUTIONRC 1 42.237 147.472 263.153 SOLUTIONRC 1 33.968 5.665 291.432 eof
- # traing run: NMOL = 1 - P65 # ############################# # amore TABLE1 search.tab \ HKLPCK0 spmipch.hkl \ traing_nr 100000 \ traing_meq 100 \ traing_mrt 10000000 \ traing_mt 10000000 \ traing_mr 10000000 \ MAPOUT amore_transjunk5.map << eof TRAFUN CB NMOL 1 RESO 8 4 PKLIM 0.5 NPIC 10 SYMM P65 VERB TITLE : Translation function P65 - one molecule SOLUTIONRC 1 25.211 105.573 339.440 SOLUTIONRC 1 27.757 100.743 350.082 SOLUTIONRC 1 27.939 115.792 353.601 SOLUTIONRC 1 27.596 60.308 43.149 SOLUTIONRC 1 38.604 77.537 160.999 SOLUTIONRC 1 16.079 130.379 261.311 SOLUTIONRC 1 7.264 66.987 88.523 SOLUTIONRC 1 4.345 82.989 95.253 SOLUTIONRC 1 26.903 76.829 37.613 SOLUTIONRC 1 1.477 33.145 73.636 SOLUTIONRC 1 42.057 104.775 163.088 SOLUTIONRC 1 0.492 90.289 275.552 SOLUTIONRC 1 53.344 135.528 269.211 SOLUTIONRC 1 34.118 74.264 244.711 SOLUTIONRC 1 42.237 147.472 263.153 SOLUTIONRC 1 33.968 5.665 291.432 eof
- # traing run: NMOL = 2 - P61 # ############################# # amore TABLE1 search.tab \ traing_nr 100000 \ traing_meq 100 \ traing_mrt 10000000 \ traing_mt 10000000 \ traing_mr 10000000 \ HKLPCK0 spmipch.hkl << eof TRAFUN CB NMOL 2 RESO 8 4 PKLIM 0.5 NPIC 10 SYMM P61 VERB TITLE : Translation function P61 - 2 mols together. SOLUTIONTF FIX 1 27.76 100.74 350.08 - 0.14596 0.56602 0.00000 17.4 52.5 SOLUTIONRC 1 27.94 115.80 353.60 SOLUTIONRC 1 25.21 105.57 339.45 SOLUTIONRC 1 27.94 115.80 353.60 SOLUTIONRC 1 27.76 100.74 350.08 eof
- # traing run: NMOL = 2 - P65 # ############################# # amore TABLE1 search.tab \ traing_nr 100000 \ traing_meq 100 \ traing_mrt 10000000 \ traing_mt 10000000 \ traing_mr 10000000 \ HKLPCK0 spmipch.hkl << eof TRAFUN CB NMOL 2 RESO 8 4 PKLIM 0.5 NPIC 10 SYMM P65 VERB TITLE : Translation function P65 - 2 mols together. SOLUTIONTF FIX 1 27.76 100.74 350.08 - 0.14596 0.56602 0.00000 17.4 52.5 SOLUTIONRC 1 27.94 115.80 353.60 SOLUTIONRC 1 25.21 105.57 339.45 SOLUTIONRC 1 27.94 115.80 353.60 SOLUTIONRC 1 27.76 100.74 350.08 eof
- # traing run: NMOL = 3 - P65 # ########################### # # (no point in testing P61 now - obv P65 better) # amore TABLE1 search.tab \ HKLPCK0 spmipch.hkl \ traing_nr 100000 \ traing_meq 100 \ traing_mrt 10000000 \ traing_mt 10000000 \ traing_mr 10000000 \ TRAFUN trafun.9 << eof TRAFUN CB NMOL 3 RESO 8 4 PKLIM 0.5 NPIC 10 SYMM P65 VERB TITLE : Translation function P65 - 2 mols together. SOLUTIONTF FIX 1 25.21 105.57 339.45 - 0.11330 0.56704 0.00000 38.0 46.7 SOLUTIONTF FIX 1 27.76 100.74 350.08 - 0.14660 0.57107 0.65289 38.0 46.7 SOLUTIONRC 1 27.94 115.80 353.60 SOLUTIONTF FIX 1 25.21 105.57 339.45 - 0.11146 0.56738 0.00000 35.8 47.0 SOLUTIONTF FIX 1 27.94 115.80 353.60 - 0.14490 0.60324 0.35856 35.8 47.0 SOLUTIONRC 1 27.76 100.74 350.08 SOLUTIONTF FIX 1 27.76 100.74 350.08 - 0.14596 0.56602 0.00000 31.3 48.8 SOLUTIONTF FIX 1 27.94 115.80 353.60 - 0.14472 0.60356 0.70544 31.3 48.8 SOLUTIONRC 1 25.21 105.57 339.45 eof
- # fiting run: # ############ # amore TABLE1 search.tab \ fiting_meq 100 \ fiting_mt 10000000 \ fiting_nr 100000 \ fiting_np 10 \ HKLPCK0 spmipch.hkl <<eof FITFUN NMOL 3 RESO 20 4.5 TITLE *** spmi structure *** VERBOSE REFSOL AL BE GA X Y Z BF SOLUTIONTF 1 25.02 105.58 339.46 0.11386 0.56908 0.00000 SOLUTIONTF 1 27.60 100.60 350.29 0.14607 0.57157 0.64759 43.5 46.5 SOLUTIONTF 1 27.72 115.95 353.54 0.14386 0.60270 0.35841 41.3 47.3 eof
Jorge Navaza. Adapted for CCP4 by Eleanor Dodson.