next up gif contents index
Next: Modeling Up: Menus Previous: View



  The Calculate menu contains options for spock to calculate various parameters.  


    Spock has the ability to calculate the distance between sets of atoms (and/or surfaces) and store the results in the ``distance'' parameter for each atom. (For details on spock's atom parameters, see § 5.2.4). The user must provide two selection strings (§5.3). These strings define two groups of points (Set 1 and Set 2) for the distance calculation. For each member of Set 1 (call it point ``A''), spock will then find the member of Set 2 closest to point ``A'', and call it point ``B''. The distance to point B is stored in the distance property for point A, and the identity of point B is stored in the ``distance partner'' property of point A. Note that the calculation is not two-way by default. As just described, only the properties of members of Set 1 are effected, the properties of Set 2 are unchanged. An example will hopefully clarify what all this means:

Suppose you have a structure with two chains A and B. You wish to know how far each atom in chain A is from chain B. You would do an ``Atom to Atom'' distance calculation, and enter ``ch=a'' (chain A) as the first set and ``ch=b'' (chain B) as the second set. For each atom in chain A, spock will then find the smallest distance to chain B. This distance will be stored in the distance property for the atom (of chain A), and the identity (atom number) of the atom on chain B will be stored in the distance partner property. Note that nothing has been done to the atom properties of chain B. If you wish to find the closest pair of interacting atoms, you can use the Statistics feature of the ``Calculate tex2html_wrap_inline6800 Properties Math'' menu (§6.6.2) to find the minimum value of the distance property for chain A. If that minimum value is X, the ``list,d=X'' command will then tell the identity of the atom that is closest to B.

Several of the calculations may take a while, so spock displays a progress dialog which will allow you to stop the calculation. Be aware that stopping a calculation in this manner will leave the distance property in an indeterminate state.



This menu provides options for running a variety of calculations on atomic properties, surface properties and maps. The options are grouped into several categories based on how many properties are involved, or how if the calculation is to be done on a per-residue basis. It is also possible to perform calculations on a sliding window of sequential residues. Calculations can be limited to a specific set of atoms or vertices via entering a new selection string (the last option on the menu).

Selecting an option on this menu will lead to a series of menus and prompts where the properties to be used are requested, as are any necessary constants.

Many of these features are also available via the command-line calculator, see §5.5.

Math on One property:

The math on one property functions will apply to either atom properties, vertex properties or potential or density maps. However, both the source and destination properties must be of the same size. It is not allowed, for instance, to do math on a vertex property and store the result in an atom property or vice versa. The only exception to this is the ``Map Atom Property to Surface'' option described below.

Math on Two Properties:

Unsurprisingly, these options add, subtract multiply or divide two properties. The results are stored in a third property field which may be the same as any of the other two properties, but need not be. The only item here which needs explanation is ``Use DP's Property Two''. Enabling this option will cause spock to use the property two of the distance partner of the atom, instead of the atom itself. For instance if you want to find the sum of the charges of an atom, and the closest atom to it, you can calculate the distance (see §6.6.1), enable ``Use DP's Property Two'', and then choose ``Add two properties''. Select ``charge'' for each of property 1 and property 2, and any property for the destination. Spock will then add the charge of each atom to the charge of it's distance partner and store the result in the selected destination property.

Like their single-property counterparts, the math on two properties functions will apply to either atom properties, vertex properties, or maps and both properties or maps must be of the same size.

NOTE: The ``Divide two properties'' calculation will place ``-9999.999'' in the destination property for a given atom or vertex if a division by zero was attempted at that atom or vertex.

The ``Swap'' menu option deserves special mention. As the name implies this will swap the value of the two properties in memory for the selected atoms. This could also be accomplished in more roundabout ways by copying a property to a temporary property, etc., but the swap option has the advantage of being easier to use and not destroying any other property.

Map Atom Property to Surface:

  When surfaces are created, each vertex is flagged as being ``owned'' by a particular atom, and each atom has a list of vertices that are associated with it. This option allows users to ``promote'' an atom property to a surface property, and copy the atom property to all the vertices that are owned by that atom. This option will first prompt for the atom property to copy, and then prompt for the vertex property in which to store the result.

Be aware that he selection string applies to this mapping. The selection string is used to delimit atoms not vertices, and then the mapping is done only for the selected atoms. Vertices whose atoms were not selected will not have any of their property values changed. For example if the selection string is set to an=1, and atom charges are mapped to surface charges, only vertices belonging to atom 1 (if there are any such vertices) will have any charge changed. All other vertices will remain unchanged.

Per-residue calculations:

These options allow users to average or sum over residues, or find the maximum and or minimum over the residue. All the atoms in the residue are set to the same value on exit. For example, to average over a glycine residue, the destination property for all atoms in the residue are set to the average of the source property.


These options are similar to the Per-residue calculations, but a sliding window of ``N'' residues is used to calculate the average, sum, max or min. ``N'' can be set via the ``Enter sliding window size'' option. These options are most useful for smoothing a property. These options are particularly useful with the selection string option (recall only selected atoms are used in calculations). You could, for instance, calculate the average alpha carbon b-factor of a sliding window of 10 residues.

Enter new Selection String:

  This option prompts for the selection string that should be used to determine which atoms or vertices are used in all calculations. If an atom or vertex is not selected, its property values are not used in the calculation, and its property values are not set by the calculation. This includes using the property values to calculate averages, etc. If the atom is not selected it's not included in the average computation. The only exception to this rule is the ``Use DP'' option, where the calculation is still performed if the distance partner is not selected. If an atom's distance partner is 0 (not set), however, the computation is not performed for that atom.  

Surface Area

  Spock uses several different algorithms for calculating surface areas and volumes, which break down into two classes. The first class are ``atom-based'' surface areas and volumes, which are the surface area or volume of a group of atoms. The second class is ``surface-based'' area or volume. These are the area and volume of a pre-defined 3D surface as constructed by the ``Alter tex2html_wrap_inline6800 surfaces'' menu.

Atom-based areas and volumes

  For the atom-based surface area calculations, spock uses a variant of the method of Shrake and Rupley [12] to calculate surface areas. Simply put, this method involves constructing a test sphere that has the radius equal to an atom's radius plus the probe radius (set to 1.4 Ångstroms, the radius of a water molecule for the accessible surface area calculation, or 0 for the Van der Waal's surface). The test sphere is constructed of a number (80, 320, or 1280) of equally-distributed points. Each of these points is then queried to determine if it lies within the expanded radius of any other atom. If so, the point is buried; otherwise it's accessible. Each point on the probe sphere has an associated area (a fraction of the area of the sphere). The surface area is calculated as the sum of all of the accessible point areas.

For the surface calculations, the user is prompted for the atom selection, the context atoms, and the color. The color is the single color used for the display if ``Surface area dots'' is on in the Display menu. The atom selection specifies the atom to surface. Finally, the context atoms are atoms for which no surface is calculated, but which still cause collisions and bury their neighbors. For example, if you have two neighboring molecules, and you wish to know the area of the interface, you would 1) first calculate the surface area of just the first molecule, and leave the context set to none and 2) then calculate the surface area of the first molecule, but set the context atoms to m=2, which will not calculate the surface area of the second molecule, but molecule 2 will still bury surface on the first molecule. The difference between the reported areas is area buried on the first molecule by the interaction. You could then reverse the calculations and determine how much area was buried on molecule 2 in a similar manner.

A note on radii: surface area calculations are by their very nature, highly dependent on the atomic radii on which they are based. You may wish to read in the default.siz file via the File tex2html_wrap_inline6800 Open tex2html_wrap_inline6800 Radius file menu option if you wish to compare results between spock and other programs. Do this before constructing any surfaces, or you'll just have to build the surface again. In my experience, surface area calculations between different programs (even different implementations of the same algorithm) always has about a 5% error. Therefore, I feel it's best to compare only numbers generated with the same program.

For the atom-based volume calculations, a grid approach is used. A grid is constructed that covers the specified atoms, and each grid point is flagged if it's inside the radius of an atom (or the expanded radius in the case of the accessible volume). The total number of buried grid points is multiplied by the volume represented by a single grid point to give an estimate of the volume.

The menu options for atom-based areas and volumes are:

Surface-based areas and volumes

For the surface-based calculations, spock requires a pre-defined surface. The surface area is simply the sum of all the triangle areas of this surface, while the volume is the sum of the volume of all tetrahedra formed by the each surface triangle and the center of mass of the selected surface points. Any interior cavities are accounted for in this method because the orientation of vertices in a cavity is backwards which would give a negative volume for that region. Note that calculated volumes will be wildly inaccurate if you've selectively applied the ``Swap faces'' option of the ``Alter tex2html_wrap_inline6800 Surface'' menu. Also note that calculating the volume of an interior cavity will report a negative volume for the region. This is perfectly normal, and the volume inside the cavity is the absolute value of the reported volume.

The relevant menu options:

The final options of the Volume/surface menu are parameter settings:



    Spock has the ability to calculate electrostatic potential fields, called phimaps. There are options for nonlinear calculations, non-linear calculations using the perturbation method, different boundary conditions and more. The number of options may be overwhelming at first, but the calculations are actually quite easy to do, and reasonable defaults are chosen, so that a simple calculation is a one-step process! There's a tutorial on electrostatics calculations in §8.7. The menu options are described here.

The various electrostatic parameters are:


Atom-based mass

  This option prompts for a selection string and calculates the total mass for all atoms in the selected set by looking up the atomic masses in the internal periodic table. If no hydrogen atoms are included in the selection, a warning will be printed that the calculated mass may not be what you want.  

Residue-based mass

This option prompts for a selection string and calculates the mass for all residues that have any atom in the selected set by looking up the residue mass in an internal table. This mass includes hydrogen atoms.  

Radius of gyration

  This option prompts for a selection string and then calculates the radius of gyration for the selected atoms by the formula: tex2html_wrap_inline6934 where tex2html_wrap_inline6936 is the distance from atom i to atom j and n is the number of atoms in the selection.  

RMS deviation

    This option prompts for two atom selections, which should each contain the same number of atoms. The user is also prompted for a destination atom property where the calculated deviation should go. The deviation (distance) between corresponding atoms in each set are calculated, and the result stored in the selected destination property (e.g. distance). The total RMS deviation is also displayed. Of course, for comparing two structures, it's probably a good idea to superimpose them first with the Superimpose option of the Modeling menu.  

Center of coordinates

  This option will compute the geometric center of the coordinates for the selected atoms. The mass of the atoms is not used.  

Center of mass

  This option will compute the center-of-mass of the coordinates for the selected atoms. The mass of the atoms is taken from the internal periodic table and the atom type that was assigned when the PDB file was read.  
next up gif contents index
Next: Modeling Up: Menus Previous: View

Jon Christopher
Tue Sep 14 16:44:48 CDT 1999