MAPROT (CCP4: Supported Program)
NAMEmaprot - map skewing, interpolating, rotating, averaging and correlation masking program
SYNOPSISmaprot MAPIN foo.map [ WRKIN bar.map ] [ MSKIN bar.msk ] [ MAPOUT foobar.map ] [ WRKOUT foobar.map ] [ CUTOUT foobar.map ]
[Keyworded input] reference ). Finally, it may be used to 'cut' density from a map and transfer it into another cell with or without a rotation. This is a step in the identification of cross-crystal translations, and general 6-d ncs searches.
`maprot' works with two maps. The first is the `cell' map, which obeys the crystall symmetry and unit cell repeat. The second is 'work' map which does NOT have any symmetry or repeat. The input cell map (MAPIN) must generally cover exactly one unit cell. The work map may store density copied from the cell map, or supply density to be copied into the cell map.
Multiple transformation operators may be supplied. When copying density from the cell map into the work map, then all the related regions of the cell map are all averaged onto the work map. If a mask is specified for the work map, then it is only filled within this mask.
It is also possible to expand from the work map onto the crystal map. This allows a full map averaging calculation to be performed in two steps, or multi-xtal averaging to be performed by multiple runs of the program.
The correlation mode produces a `local correlation map' from the input density (either from the crystal-map in the case of a single crystal with NCS, or between the crystal- and work-maps in the multi-crystal case). This can be contoured in a graphics program to locate the NCS-related part of the unit cell, and/or used to generate an averaging mask using `mapmask'. Multiple correlation maps from different combinations of operators can be combined by summation in `mapmask' (Note: In the case of proper NCS, a correlation mask will show the multimer. In the case of improper NCS it will give just one monomer).
Finally, `maprot' can be used to cut a region of density out of a map and insert it into a blank map, as a step in a phased NCS determination or cross-crystal translation function. In this mode only the work map and mask are supplied. The crystal map cell and grid are set by program keywords. The masked density is transferred from the work map into the crystal map using `MODE TO' and the supplied operator (which may be the identity operator). Only that portion of the crystal map covering the masked density is output to `CUTOUT'.
Remember that "cell" maps will obey crystal symmetry and unit cell repeats; "work" maps do not. See the examples for the calculation you are performing.MSKIN or the user keywords (BE CAREFUL if you have created a "dummy" map using a set of atomic coordinates; it is important to scale that map by 0.00 to avoid transferring unwanted electron density into the output work map. See example). The values of WRKIN outside any input mask will remain unchanged in WRKOUT, the values inside a mask will be scale * (initial value + rotated density 1 + rotated density 2 + ...) CELL, GRID, XYZLIM cards. If a mask is not specified, then the whole of the work map will be considered inside the mask and filled with rotated density. MAPIN if the MODE TO or MODE BOTH options are used. MAPIN plus density transferred from WRKIN.
Possible keywords are:
`FROM' signals that one or more copies of the electron density from a cell map (MAPIN) will be transferred to a work map (WRKOUT). The cell map is transformed by each set of operators in turn, and all copies are summed in the WRKOUT map.
`TO'' signals that density from a work map (WRKIN) will be transferred to a cell map (MAPOUT) using symmetry operators and unit cell repeats obtained from the MAPIN header. It overwrites the density in the input cell map with the masked density from the work map.
`BOTH' performs both operations in turn and is only useful if you have multiple copies of a molecule in the asymmetric unit. It first averages the electron density from the cell map (MAPIN) to WRKOUT, then recreates the cell map (MAPOUT) with the averaged and (hopefully improved) electron density. It requires a mask.
`CORR' calculates a local correlation over the whole of the work map. If two averaging operators are given, then the two regions of density mapped from the cell to the work map by those operators are correlated, otherwise the density of the input work map is correlated with the density of the cell map mapped by the one operator (the first case is used when identifying a non-crystallographic symmetry mask, the second can be used to identify correlated density between crystal forms). MSKIN nor WRKIN are set. CELL XTAL should only be specified if MAPIN is not set. MSKIN nor WRKIN are set. GRID XTAL should only be specified if MAPIN is not set. MSKIN nor WRKIN are set. `MODE CORR'. Increase this if the correlation mask shows many spurious peaks. Default <r>=8.0 Angstrom.
Set a density rotation and translation operator. This keyword is followed by a rotation/translation matrix on subsequent lines in either CCP4 or O/RAVE format. One AVERGE keyword, followed by the corresponding operator, is given for each rotation/translation operation to be performed. The format is the same as the `dm' and `ncsmask' `AVERAGE' cards).
These are the operations which map the density in the region covered by the input mask onto the other equivalent regions. The first operator must be the identity matrix. The mask is input in CCP4 mask (mode 0) format on the input file label MSKIN, and should cover just one monomer or averaging domain, NOT the whole unit cell.
# maprot mapin ins.map wrkout ins_fine.map << eof MODE FROM CELL WORK 82.5 82.5 34 90 90 120 GRID WORK 120 120 60 XYZLIM 0 119 0 119 0 59 SYMM WORK R3 AVER ROTA POLAR 0 0 0 TRANS 0 0 0 eof
# maprot mapin ins.map wrkout ins_fine.map << eof MODE FROM CELL WORK 100 100 50 90 90 120 GRID WORK 180 180 90 XYZLIM 0 179 0 179 0 89 SYMM WORK P1 AVER ROTA MATRIX 0.866 0.500 0.000 - -0.500 0.866 0.000 - 0.000 0.000 1.000 TRANS 0.000 0.000 0.000 eof
# maprot mapin chm.map mskin chm.msk wrkout chm_for_graf.map << eof MODE FROM AVER OMAT 1.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 1.000 0.000 0.000 0.000 AVER OMAT -0.43073 -0.62689 -0.64921 0.04987 0.70173 -0.71070 0.90110 -0.33850 -0.27099 43.635 38.059 62.726 AVER OMAT -0.43073 0.04987 0.90110 -0.62689 0.70173 -0.33850 -0.64921 -0.71070 -0.27099 82.989 15.401 -8.928 eof
# maprot mapin chm.map mskin chm.msk mapout chm_av.map << eof MODE BOTH SCALE 0.33333 AVER ROTA POLAR 0.0 0.0 0.0 TRANS 0.0 0.0 0.0 AVER ROTA POLAR 113.28130 103.41944 120.33858 TRANS 43.635 38.059 62.726 AVER ROTA POLAR 66.58067 -76.78019 119.69176 TRANS 82.989 15.401 -8.928 eof
# maprot mapin $SCRATCH/chm_mir.map wrkout $SCRATCH/chmcorrel.map << eof SYMM WORK P1 CELL WORK 90.3 90.3 129.8 90 90 90 XYZLIM -20 80 24 120 -60 48 GRID WORK 80 80 120 RADI 6 MODE CORR AVER ROTA POLAR 0.0 0.0 0.0 TRANS 0.0 0.0 0.0 AVER ROTA POLAR 113.28130 103.41944 120.33858 TRANS 43.635 38.059 62.726 END eof # # now mask the multimer: multimer is 6% of unit cell # mapmask mapin $SCRATCH/chmcorrel.map mskout $SCRATCH/chmcorrel.msk << eof MASK VOLU 0.06 eof # # Now we might edit this mask by hand, or use ncsmask to get rid of # all but the largest lump of mask # ncsmask mskin $SCRATCH/chmcorrel.msk mskout $SCRATCH/cmncs.msk << eof PEAK 1 eof
# # Cut density into a 100A virtual cell. # The density could be moved by specifying a non-identity operator. # For cross-crystal translation function, give the rotation # operator and the cell from the alternate crystal form. # maprot wrkin gmtocut.map mskin gmtocut.msk cutout cut.map << eof MODE TO CELL XTAL 100. 100. 100. 90. 90. 90. GRID XTAL 150 150 150 AVER ROTA POLAR 0.0 0.0 0.0 TRANS 0.0 0.0 0.0 eof
Since the work map will take the same grid as the mask, it is necessary to use a fine grid for the mask, especially when doing averaging calculations. The grid should be at least as fine as the cell map.
When performing density cutting, If the masked region is larger than the dimensions of the crystal map in any direction, the overlapped density will appear at the edges of the CUTOUT map.
SEE ALSOmapmask, ncsmask, rotmat, dm