The EMAP module Modeling macromolecular assemblies with map objects by Xiongwu Wu and Bernard R. Brooks Laboratory of Biophysical Chemistry, NHLBI, NIH The EMAP module is designed to manipulate map objects as well as interexchange between atomic objects and map objects. A map object is defined as a rectangular space with grid distributions of certain properties. A map object may have its reference atom set which defines the atomic structure used to transfer map to atoms or verse versa. A rigid domain is defined to represent a map at the position and orientation of an atomic structure. A rigid domain can be moved around as a molecular structure. Many rigid domains can be defined for a map object. Map objects can be manipulated so as to initialization, resizing, addition, substruction, reduction, and comparison. With rigid domains, one can perform fiting individual maps to a complex map, constructing complex structure from many components. Map object manipulation is highly efficient for large system modeling. It is also the necessary approach to derive structure information from electon microscopy experiment. Field map is defined to describe the electrostatic field generated from a molecule. In addition to the density map used in electron microscopy (EM) image fitting, molecular maps are defined to describe the distribution of atomic properties such as partial charges, vdw cores. Field maps and molecular maps provide a convenient way to evaluate interactions between map objects. Through map energies, the structure of macromolecular assemblies can be modeled through docking or simulation approaches. * Menu: * Syntax:: Syntax of the EMAP commands * Description:: Description of the EMAP functions * Substitution:: Description of substitution values * Examples:: Usage example of the EMAP commands
Syntax of EMAP Manipulation commands [SYNTAX EMAP manipulation] ! default parameter setting: EMAP { PARAmeters [RESO real] [RCUT real] - [DX real] [DY real] [DZ real] [ICORE int] - [AX real] [AY real] [AZ real] [EPS real] - [PSOLV real] [PSELE real] [PCORE int] } ! Map file IO: EMAP { READ mapid NAME filename } { WRITe mapid NAME filename [DDR|CORE] } ! Map object manipulation EMAP { CORE mapid [CUT real] [DENSity|DDR] } { DDR mapid } { GENErate mapid [atom-selection] [COMParison-set] [RESO real] - [DX real DY real DZ real] [AS existing_mapid] - [FMAP [GRID] [AX real AY real AZ real] } { INITialize emapid [BASE real] } { REDUce mapid BY mapid [TO mapid] } { REFErence mapid atom-selection } { RESIze mapid AS mapid [GRID-only] [BOUNdary-only] } { SCALe mapid BY real } { STATistics emapid } ! Rigid domain manipulation EMAP { ASSIgn mapid AS rigid [atom-selection] } { COMPlex RIGId rigid [RIGId mapid ...] [APPEnd] [FIX]} { PROJect rigid [ atom-selection ] } { RESTore rigid } { ROTAte rigid XDIR real YDIR real ZDIR real PHI real } { SAVE rigid } { TRANslate rigid XDIR real YDIR real ZDIR real [DIST real] } ! Rigid domain IO EMAP { TRAJectory [OPEN|CLOSe] [READ|WRITe] UNIT integer [NAME filename| - ! Map object and rigid domain manipulation: EMAP { ADD rigid TO mapid } { COPY [MAPId mapid|RIDId rigid] TO [mapid|rigid] } { DELEte [MAPId mapid|RIGId rigid]} { DUPLicate [MAPId mapid|RIDId rigid] TO [mapid|rigid] } { PSF [MAPId mapid|RIGId rigid] [SKIP int] [RCUT real] } { QUERy [MAPId mapid|RIDId rigid] } { SUBStract rigid FROM mapid } { SUM mapid } ! Conformational evaluation: EMAP { CORR [MAPId mapid|RIGId rigid] [MAPId mapid|RIGId rigid] [CORE] [DDR] } { INTEraction [MAPId mapid|RIGId rigid] [MAPId mapid|RIGId rigid] - [EPS real] [PSOLV real] [PSELE real] [PCORE int] } ! Conformational optimization: EMAP { DOCK [FMAP][GTMC [SPACE]] [MANY] [TRAJectory integer] - [MAPId mapid] [RIGId rigid [RIGId rigid [...]]] - grid-properties MC-parameters Correlation-type - Fitting-criteria } grid-properties::= NTRAnslation int NROTation int [SPACE] MC-parameters::=NCYLc int NSTEp int TEMP real TRAN real ROTA real Correlation-type::=[CORE [ACORe int] [BCORe real] [CCORe real]] [DDR] [CORE] Fitting-criteria::=[LOOP int] [DTCO real] [CFIX real] ! Rigid domain trajectory file IO: EMAP { TRAJectory [OPEN|CLOSE] UNIT integer [NAME filename] } { TRAJectory [READ|WRITE] UNIT integer RIGId integer } ________________________________________________ ! A shortcut READ command is implmented to simplify the process of creating ! molecular segments from coordinate files or PDB (default) files. READ { SEGId segment { PDB [BUILd [SETUp]] }} [UNIT integer] { { CARD }} { { FREE }} __________________________________________________
Descriptions of the map manipulation commands Map objects are created only by READ, GENErate, or DUPLicate commands. Rigid domains are created only by ASSIgn or DUPLicate commands. All of other commands manipulate existing map objects or rigid domains. All rigid domains has a storage for backup purpose. Current position and orientation of a rigid domain can be SAVEd to the storage and can be RESTored from the storage. ------------------------------------------------------------------------------ 1) The PARAmeter command The PARA command will set the default values for parameters that would be used in other EMAP commands. RESO--Map resolution, angstroms; RCUT--the base density to tell the noise level; DX, DY, DZ-- Grid interval in map objects; AX, AY, AZ-- Scaling lengths for reduced coordinates in field maps; EPS-- Dielectric constant for electrostatic interaction; PSOLV-- Desolvation energy parameter PSELE-- Electrostatic solvation parameter PCORE-- vdw core interaction parameter ------------------------------------------------------------------------------ 2) The READ command The READ command will create a map object by readin the map information from a map file. Currectly, only CCP4 format is supported. ------------------------------------------------------------------------------ 3) The WRITe command The WRITe command will write a map object to a map file. Currectly, only CCP4 format is available. Option DDR specify the Laplacian filtered density will be written out, and CORE specify the core indics will be written out. ------------------------------------------------------------------------------ 4) The CORE command The CORE command will rebuild the core indice of the map object. Two methods, density or Laplacain, can be used for the build up. CUT defines the cutoff density used in the build up. ------------------------------------------------------------------------------ 5) The DDR command The DDR command will recalculate the Laplacian of the map object. ------------------------------------------------------------------------------ 6) The GENE command The GENErate command will generate a map object from the coordinates of a selected atom set. The default resolution is 15 angstroms but can be specified for other values. The default map gid properties is DX=DY=DZ=3 angstroms. The grid intervals can be specified by DX, DY, and DZ or taken from other map objects by AS. The generated map object takes the atom set as its reference atom set. If FMAP is specified, a molecular map will be generated using atomic properties of the molecule. This map contains charge distribution, electro- static field distribution, and vdw core distribution. GRID option can speed up the calculation in electrostatic field distribution with less accuracy. The field map uses AX, AY, and AZ to define the coordinate scales. Normally, AX, AY, and AZ is set to the gyration radius of the molecule. ------------------------------------------------------------------------------ 7) The INITialize command The INITialize command set the distribution properties of a map object to be zero, or BASE value, including core indices , throughout its space. The map object should be generated before it can be initialized. ------------------------------------------------------------------------------ 8) The REDUce command The REDUce command will reduce the first map object by the map object specified after "BY". If a mapid is specified by TO, the result will be put to the mapid. Otherwise, the first map object will be reduced. ------------------------------------------------------------------------------ 9) the REFErence command The REFErence command will take the atom-selection as the reference atom set for the map object. ALL rigid domains representing this map object will not change after the reference atom set change. ------------------------------------------------------------------------------ 10) The RESIze command The RESIze command will change the map object to have the same grid properties or/and bundary properties as the other map object. Option GRID-only only resizes the grid properties, and BOUNdary-only only resizes boundary properties. ------------------------------------------------------------------------------ 11) The SCALE command The SCALe command will scale the distribution properties of the map object by the real number spedified after "BY". ------------------------------------------------------------------------------ 12) The STATistics command The STATistics command calculate and print the statistic properties of the distribution properties of the map. ------------------------------------------------------------------------------ 13) The ASSIgn command The ASSIgn command will create a rigid domain representing the map object. If no atom is selected, a unit vector set at origin will be created for the rigid domain. If atom-selection is given, the relative position and orientation related to the reference atom set will be generated for the rigid domain. The atom-selection should have the same atom number as the reference atom set of the map object. If the map has no reference atom set, a initialized rigid domain will be created and the atom selection is assigned as the reference atom set for the map. ------------------------------------------------------------------------------ 14) The COMPlex command The COMPlex command will define which rigid domains are contained in a complex that will be built with the DOCK command. A COMPlex command without APPEnd option will overwrite previous COMPlex command, while with APPEnd option the command will add the newly defined rigid domains to the complex. The SEEN option will enable multiple body search during the DOCK procedure, ie., this rigid domain will be seen when docking other rigid domains. ------------------------------------------------------------------------------ 15) The PROJect command The PROJect command will generate coordinates for the selected atoms based on the reference atom set and the rigid domain. The selected atoms should have the same number of atom as the reference set. coordinates are copied in order of selection and no check is performed. ------------------------------------------------------------------------------ 16) The RESTore command The RESTore command will copy the stored position and orientation to the rigid domain. ------------------------------------------------------------------------------ 17) The ROTAte command The ROTAte command will cause the specified rigid domain to be rotated about the specified axis vector through the map center. The vector need not be normalized, but it must have a non zero length. The PHI value gives the amount of rotation about this axis in degrees. ------------------------------------------------------------------------------ 18) The SAVE command The SAVE command will copy the position and orientation of the rigid domain to its storage. ------------------------------------------------------------------------------ 19) The TRANslate command The TRANslate command will cause the position of the rigid domain to be translated. The translation step may be specified by either X,Y, and Z displacements, or by a distance along the specified vector. When no distance is specified, The XDIR,YDIR, and ZDIR values will be the step vector. If a distance may be specified, the translation will be along the vector for a distance of DIST. ------------------------------------------------------------------------------ 20) The TRAJectory command The TRAJ command perform open, close, read, or write the trajectory file of a rigid domain. The trajectory file stores the translation vector and rotation matrix, configuration energy in a assembly and conformation number and search index. When OPEN is specified, the file specified by NAME is opened at UNIT channel for accessing by the following EMAP TRAJ command. When WRITe is specified, the translation vector, rotation matrix, current energy (?EMENG), minimum energy (?EMENGM), and conformational number (?EMNST), and rigid domain index (?EMNSR) will be written to the UNIT channel. These information will be read into the rigid domain if READ is specified and can be shown in CHARMM output by the varable name shown in above parenthese. CLOSe is used to close the UNIT channel. ------------------------------------------------------------------------------ 21) The ADD command The ADD command will add the first map object to the map object specified after "TO". The first map object will not change. The second map object will change only its distribution properties, but not its grid and boundary properties. ------------------------------------------------------------------------------ 22) the COPY command The COPY command will COPY an existing object to another existingone. Only the distribution properties of a map or the position and orientation of a rigid domain will be copied. ------------------------------------------------------------------------------ 23) The DELEte command The DELEte command will delelte the specified map object or rigid domain. They can only be deleted in a last in-first out mode by DELEte command. If the last map object is deleted, all rigid domains representing the map object should be deleted first before the map object can be deleted. ------------------------------------------------------------------------------ 24) the DUPLicate command The DUPLicate command will create an identical map or rigid domain of an existing object . ------------------------------------------------------------------------------ 25) The PSF command The PSF command will create a segment "EM[nseg]" with atoms "C[0-9]" at grid points. The number [0-9] following C represent the density level at the grid point. SKIP specifies the grid points to be skipped for every representing atom. This command is only for the purpose of viewing the map distribution with a molecular viewer. The segment can be written out in PDB or CHARMM format for displaying. ------------------------------------------------------------------------------ 26) The QUERy command For map objects, the QUERy command will print out starting grid numbers (?EMMX,?EMMY,?EMMZ), grid numbers (?EMLX,?EMLY,?EMLZ), grid intervals (?EMDX,?EMDY,?EMDZ), map centers (?EMCX,?EMCY,?EMCZ), Maximum density(?EMMM), minimum density (?EMMN), number of core grids (?EMNC) For rigid domains, the QUERy command will print out translation vector (?EMTX,?EMTY,?EMTZ), rotation matrix (?EMXX,?EMXY,?EMXZ, ?EMYX,?EMYY,?EMYZ, ?EMZX,?EMZY,?EMZZ) ------------------------------------------------------------------------------ 27) The SUBStract command The SUBStract command will substruct the first map object from the map object specified after "FROM". The first map object will not change. The second map object will change only its distribution properties, but not its grid and boundary properties. ------------------------------------------------------------------------------ 28) The SUM command The SUM command creates a map object by summing all rigid fragments defined by the COMPlex command. ------------------------------------------------------------------------------ 29) The CORR command The CORRelation command will compute the correlation between the two objects, which can be either map objects or rigid domains or mixed. Option CORE asks for core-weighted correlations, and DDR asks for Laplacian correlations. If both options are specified, the core-weighted Laplacian correlation will be calculated. With the CORE option, the parameters for core-weighting, ACORE, BCORE, and CCORE can be specified. The correlation result can be queried by ?EMCT ------------------------------------------------------------------------------ 30) The INTEraction command The INTEraction command will calculate the interaction energy between two rigid domains and/or map objects. These rigid domains or map objects must represent molecular map objects. The interaction energies (?EMENG) consist of VDW core interaction (?EMCORE), electrostatic interaction (?EMELE), desolvation energy (?EMSOLV), and contact energy (?EMCONS). ?EMENGM stores the minimum energy over the history of INTEraction commands. ------------------------------------------------------------------------------ 31) The DOCK command The DOCK command will fit the rigid domains defined by COMPlex command or defined in DOCK command line to a map object or to each other. For single body docking, the grid-threading Monte Carlo ( GTMC) is used. If chose MANY option, many-body searching is performed. FMAP will initiate energy-based searching. When FMAP is specified, the grid will be done over protein surface except SPACe is specified for GTMC. TRAJ can be used to define the writing of rigid domain trajectory. A trajectory file must be opened with EMAP TRAJ OPEN command. ------------------------------------------------------------------------------ 32) The TRAJectory command The TRAJ command manipulates the trajectory file of a rigid domain. When OPEN is specified, a file is opened for a channel, while CLOSe will close this channel defined by UNIT. READ or WRITe will read in or write our the translation vector and rotational matrix of given rigid domain. ------------------------------------------------------------------------------ 33) The shortcut READ command This command provides convenient way to transform a system in PDB file format into new CHARMM segments with given coordinates. When read in segments from a PDB file, one can specify BUILd to generate all atom connectivities and atom types. If there are missing atoms in the PDB file, one can specify SETUp to generate an internal coordinate table of the segments to be used to generate the coordiantes of those missing atoms. Each chain in the PDB file will form a new segment named as the given SEGId followed by its segment number. These generated segments are well quialified CHARMM segments and can be used for atom based simulation. This is a very convenient way to generate simulation systems from PDB files. However, It requires that all residue and atom names in the input file are consistent with that in the CHARMM RTF file. For example: open read unit 10 card name 1b5s.pdb read segid b5s PDB build setup unit 10 This command can also be used to create a new segment from either a PDB file (PDB), a CHARMM coordinate file (CARD), or a free format coordinate file (FREE). BUILd and SETUp option should not be specified. Please be aware of that this segment does not have any atom connectivity information and cannot be used for atom-based molecular simulation. Instead, this segment can be used to generate a map object needed in the EMAP module. With this command, a map object can be quickly converted from a PDB structure. (See examples in this document) __________________________________________________
MAP object Manipulation Values There are some variables that can be used in titles or CHARMM commands that are set by some of the EMAP manipulation commands. Here is a summary and description of each variable. 'EMCT' The correlation value calculated by the CORRelation command.
Examples to use EMAP module 1. Read in map file and creat a map object EMAP READ map NAME "a7n.ccp4" 2.Read in PDB files and creat segments OPEN READ UNIT 16 CARD NAME a7na.pdb READ SEGId a7na UNIT 16 OPEN READ UNIT 17 CARD NAME a7nb.pdb READ SEGId a7nb UNIT 16 3. Generate map objects from structures EMAP GENErate mapa SELEct SEGId a7na END EMAP GENErate mapb SELEct SEGId a7nb END 4. Assign rigid domains for fitting EMAP ASSIgn mapa AS riga SELE SEGId a7na END EMAP ASSIgn mapb AS rigb SELE SEGId a7nb END 5. Perform GTMC fitting with default parameters EMAP DOCK GTMC MAPId map RIGId riga RIGId rigb 6. Perform GTMC fitting with defined parameters EMAP DOCK GTMC MAPId map RIGId riga RIGId rigb ntran 3 nrot 3 - ncyc 50 nstep 100 tran 15 rota 30 CORE DDR 7. Perform GTMC fitting with many-body search approach EMAP DOCK GTMC MAPId map RIGId riga RIGId rigb many ntran 2 nrot 2 - ncyc 50 nstep 100 tran 15 rota 30 DDR 8. Project rigid domain to obtain fitted coordinates EMAP PROJ RIGA SELE SEGI A7NA END EMAP PROJ RIGB SELE SEGI A7NB END 9. Compare the fitting of each rigid domain EMAP CORR MAPID MAP RIGID RIGA DDR CORE EMAP CORR MAPID MAP RIGID RIGB DDR CORE 10. Generate the result map: mapn EMAP DUPLicate MAPID map TO mapn EMAP INITial mapn EMAP ADD riga TO mapn EMAP ADD rigb TO mapn EMAP SUM mapn 11. Read in a PDB file and create segments with given coordinates and build missing coordinates OPEN READ UNIT 10 CARD NAME 1B5S.PDB READ SEGID B5S PDB BUILD SETUP UNIT 10 IC PARA IC BUILD 12. Dock a protein represented by rigid domain pep2 into a protein represented by a molecular map pep1 based on map interactions EMAP DOCK FMAP GTMC MAPI PEP1 RIGI PEP2 - NTRA 3 NROT 3 NCYC 10 NSTEP 1000 TEMP 300
NIH/DCRT/Laboratory for Structural Biology
FDA/CBER/OVRR Biophysics Laboratory
Modified, updated and generalized by C.L. Brooks, III
The Scripps Research Institute