Here is an old script, but Kevin Cowtan has now improved MAPROT so that it is not necessary to generate the bigdummycell.mtz to pass a pseudo-cell to maprot.
#!/bin/csh -f goto rot goto 2 ########################################################### # # 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 exit # 2: ########################################################### #3) 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 exit rot: ########################################################### # 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! # rot2: 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.. 3: 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' # # #!/bin/csh -f goto rot goto 2 ########################################################### # # 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 exit # 2: ########################################################### #3) 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 exit rot: ########################################################### # 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! # rot2: 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.. 3: 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' # #