Symmetry operations (SYMTRY)

Introduction.

WHAT IF can at several places apply symmetry. Examples are: crystal contact analysis, graphical reproduction of multiple cells, cell content analysis, etc. Some options in WHAT IF work differently if the flag USESYM has been enabled, e.g. FBRT, GRAACC, SETACC, CONTAC, and the HB2 module. The specific symmetry options can be accessed from the SYMTRY menu. The options in this menu will be described in this chapter.

The options available can be partitioned in two groups: there are options that just perform a complete operation, and a number of expert/low-level commands. The latter group of commands is only available when the MORE option in the SYMTRY menu has been activated.

In general a symmetry transformation consists of a transformation matrix in combination with a translation vector. Symmetry transformations describing crystallographic symmetry are most often described in terms of the fractional (cell) coordinates. Other transformations, e.g. non crystallographic symmetry giving approximate relations between different subunits of the protein, are most often described in an orthogonal coordinate system. WHAT IF can use symmetry transformations that are given in both different forms. Internally, all matrices are stored in WHAT IF as matrices operating on orthogonal coordinates.

Whenever WHAT IF reads a PDB file, a consistency check on the crystal information is performed. Also the symmetry matrices that are explicitly given in the PDB file on MTRIX cards are read and stored. HOWEVER: most of the options in the symmetry menu start by erasing all symmetry matrices, and retrieve the symmetry matrices associated with the space group. Since WHAT IF knows all space groups that proteins can use (and a number of synonymous ones), this is only a problem if there is non-crystallographic symmetry. There is currently no good way of handling that automatically.

A general remark: all of the options starting "GRA" or "SOU" in the SYMTRY menu are higher level routines which call the lower level SYM*** and/or CEL*** commands (mostly hidden behind MORE). If you use any of these high-level commands, the transformations that are needed are automatically deduced from the space group, and any transformations that were loaded before will be deleted first. If "MORE" has been activated, matrices will only be deleted after asking your permission to do so.

Manipulating symmetry transformations

WHAT IF reads the SYMTR and MTRIX cards (representing crystallographic- and non-crystallographic symmetry, respectively) from an MCF or PDB-file if they are present. Furthermore the other information needed to apply symmetry transformations is also extracted from the CRYST1 and SCALE cards. You might need input transformations not present in the coordinate file, or might choose not to use transformations that are given in the coordinate file. You have several ways to manipulate the "active" transformations. BUT: remember that a lot of the higher-level routines (SOU*** and GRA***) replace all matrices in memory by the spacegroup matrices before doing their jobs.

Initialization of the transformations (SYMINI)

SYMINI (SYM INItialize) deletes all active transformations. The unit transformation is automatically entered.

Get space group symmetry (SYMSPG)

The command SYMSPG (SYM SPace Group) causes WHAT IF to add all the matrices implied by the current space group. To change the current space group, see SYMISG. Only the space groups without inversion and mirror symmetry are known to WHAT IF. See SYMISG for information on how to enter a space group symbol.

Manual input of a matrix and a vector (SYMINP)

The command SYMINP (SYM INPut) allows you to repeatedly enter transformations from the keyboard, in the form of a matrix and a vector. WHAT IF will first ask whether you want to input in orthogonal coordinates or in fractional (cell) coordinates. After that, you will repeatedly be prompted for the 12 values needed for the transformation. After the transformation has been entered, WHAT IF performs some basic consistency checks, and warns you if the matrix may be incorrect. Since "0" is a valid input as a matrix value, quitting this option can only be done by just typing return at the prompt for the value of "M(1,1)".

This option is only available via "MORE" in the symmetry menu.

Manual input of an international tables transformation (SYMIIT)

The SYMIIT (SYM Input International Tables) command allows you to enter any International Tables transformation (e.g. "-X,Y+1/2,Z" for space group P21). Transformations with a determinant other than +1 will be rejected.

This option is only available via "MORE" in the symmetry menu.

Deletion of transformations (SYMDEL)

The SYMDEL (SYM DELete) command asks for the numbers of the transformations that you wish to delete. See SYMSHO to find out about the symmetry transformation numbers. Please note: transformations are renumbered as soon as SYMDEL exits!

Removing duplicate transformations (SYMRDU)

The SYMRDU (SYM Remove DUplicates) command deletes all duplicate copies from the array of active transformations.

This is a low-level option that is only available via "MORE" in the symmetry menu.

Transformations that generate molecules in the cell (SYMPIC)

The SYMPIC (SYM Put In Cell) command shifts all the active transformations over integral cell translations, to make sure that the centers of all the transformed molecules are in the unit cell. Usually SYMSPG needs to be executed first. SYMPIC does not shift the unit transformation.

This is a low-level option that is only available via "MORE" in the symmetry menu.

Transformations that generate "touching" molecules (SYMNEA)

The SYMNEA (SYM NEAr) command replicates/shifts/deletes active matrices, such that the matrices that remain all generate molecules that "touch" the central molecule. Shifts over integral numbers of unit cells are performed to make sure all "Touching" molecules will be found. The touching-test is done using SYMDNT, see this option for a descripion. The tolerance parameter used can be changed by SYMPAR.

This is a low-level option that is only available via "MORE" in the symmetry menu.

Selecting "touching" transformations (SYMDNT)

The SYMDNT (SYM Delete Non-Touching) command deletes active matrices which generate molecules that do not touch the untransformed molecule. "Touching" is defined as "having two atoms, one in the first and one in the second molecule, for which the interatomic distance is smaller than the sum of the Vanderwaals radii plus a tolerance value". The tolerance value is 0.25 Angstrom by default, and can be changed by SYMPAR.

This is a low-level option that is only available via "MORE" in the symmetry menu.

Restoring a set of saved transformations (SYMRES)

If you choose SYMRES (SYM REStore), reading matrices from a file, you will be prompted for the name of the file. The format of the file should be "12F8.0", one transformation per line, formatted. The order of the elements has to be:

m11,m12,m13,m21,m22,m23,m31,m32,m33,t1,t2,t3.

In general, the unit transformation is not needed.

Saving the set of active transformations (SYMSAV)

If you choose SYMSAV (SYM SAVe), writing transformations to a file, you will be prompted for the name of the file. If the file already exists, you will be prompted to confirm its deletion. All active matrices will be written to the file, formatted according to "(9F8.5,3F8.3)", one transformation per line. The order of the elements will be:

m11,m12,m13,m21,m22,m23,m31,m32,m33,t1,t2,t3.

Checking symmetry transformations

A few different checks exist to verify the sanity of the currently available symmetry transformations

Checking for closed group (SYMCGP)

If your symmetry matrices are supposed to form a closed group, you can check that with the SYMCGP (SYM Check GrouP) option. WHAT IF will then first remove all duplicate active matrices, and after that run Randy Read's CHECKSYM algorithm to see if all of the remaining matrices form a closed group. Translations of an integral number of unit cells are ignored in this procedure.

This (expert) option is only available when "MORE" has been executed in the symmetry menu.

Displaying the transformations (SYMSHO)

The command SYMSHO (SYM SHOw) causes WHAT IF to display all presently active transformations. First WHAT IF will ask you whether you want to see them as operating on orthogonal coordinates or on fractional coordinates. For each transformation WHAT IF attempts to classify it, for rotations giving the direction of the axis and the multiplicity. A warning will be shown for strange transformations.

Non-integral rotations or other defects (SYMPNI)

The command SYMPNI (SYM Print Non Integral) Prints a warning message for all active transformations that either not represent a rotation, or represent a non-integral rotation.

This (expert) option is only available when "MORE" has been executed in the symmetry menu.

Applying transformations to the soup

Normally there is no need to generate symmetry related atoms in the soup. Doing this can cost enormeous amounts of memory and disk space. Furthermore for large proteins with many ligands adding copies to the soup may be a very slow procedure. However, might there be a need to do so, the commands SOUSYM, SOUSM1, SOUCEL, SOUSHL, SOUBOX, SOUSPH and SOUSRS can be used to add different parts of symmetry related molecules to the soup. For all of these equivalent GRA*** commands exist that put the resulting molecules in a mol-item instead of the soup. The last 5 of the 7 change the array of symmetry matrices in WHAT IF's memory, so saving might be a good idea.

WARNING: It is very easy using symmetry to soup to overload WHAT IF's SOUP array's. Not everywhere adequate checks are performed.

Applying all transformations adding results to the soup (SOUSYM)

SOUSYM (SOUp SYMmetry) applies all active transformations except the unit transformation to all or part of the soup, adding the symmetry transformed results to the soup. Obviously, this option and all other options calling it modify the soup in a way that is not reversible by a simple command, so saving first might be a good idea.

Applying one transformation adding results to the soup (SOUSM1)

SOUSM1 (SOUp SyMmetry 1) applies one active transformation to all or part of the soup, adding the symmetry transformed results to the soup.

Adding all molecules with center in the unit cell (SOUCEL)

SOUCEL (SOUp unit-CELl) finds all molecules which have their center in the unit cell, and add these to the soup. Results can be rather strange if the original molecule does not have its center in the unit cell.

Adding a shell around the molecule (SOUSHL)

SOUSHL (SOUp SHelL) generates all symmetry related residues "touching" the central molecule, and adds them to the soup. For a definition of "touching" see the command SYMDNT.

Adding all residues in a rectangular box to the soup (SOUBOX)

SOUBOX (SOUp BOX) generates all symmetry related residues that are in a specified rectangular box and adds them to the soup.

SOUBOX asks for XMIN, YMIN, ZMIN and XMAX, YMAX, ZMAX of the box. Here two opposing corners of the box should be given as two sets of three orthogonal coordinates.

Adding all residues in a sphere to the soup (SOUSPH)

SOUSPH (SOUp SPHere) generates all symmetry related residues that are in a specified sphere and adds them to the soup.

SOUSPH further asks for the X, Y, Z and Radius for the sphere. No defaults are available for the orthogonal center coordinates X, Y, Z. The radius defaults to 10 Angstrom.

Adding all residues around a specified residue (SOUSRS)

SOUSRS (SOUp Sphere around ReSidue) generates all symmetry related residues that are in a sphere with a specified radius around a specified residue and adds them to the soup. If "MORE" has been activated in the symmetry menu, SOUSRS will ask the user whether the current symmetry matrices are to be used or the space group symmetry should be loaded instead. In the latter case the routines SYMINI and SYMSPG will be executed first.

SOUSRS further asks for the residue number and for the radius of the sphere. The radius defaults to 10 Angstrom.

Showing symmetry related residues in a MOL-item

As an alternative to the generation of symmetry related residues in the soup, it is possible to only display them in a mol item. This will not allow you to pick the symmetrized atoms, nor will WHAT IF be able to calculate inter-atomic distances or other values, but it allows you to view the intermolecular contacts in a way that can be easily reversed and it does not risk overloading the soup with molecules or residues.

Showing a set of symmetry related molecules (GRASYM)

GRASYM (GRAph SYMmetry) applies all active transformations except the unit transformation to all or part of the soup, adding the symmetry transformed results to a mol-item.

Showing a symmetry related molecule (GRASM1)

GRASM1 (GRAph SyMmetry 1) applies one active transformation to all or part of the soup, adding the symmetry transformed results to a mol-item.

See SYMGCA if you want a CA display only

Showing all molecules with center in the unit cell (GRACEL)

GRACEL (GRAph unit-CELl) will make a graphics object containing all symmetry related molecules that have their center in the unit cell. Results can be rather strange if the original molecule does not have its center in the unit cell.

See SYMGCA if you want a CA display only

Showing a shell of residues around the molecule (GRASHL)

GRASHL (GRAph SHelL) generates all symmetry related residues "touching" the central molecule, and shows them as a mol item. For a definition of "touching" see the command SYMDNT.

This option can be (mis)used to find a dimer transformation: assuming that the dimer-contact is much tighter than any other symmetry contact, you can easily locate the transformation number of the dimer transformation in the screenoutput of this option.

See SYMGCA if you want a CA display only.

Showing residues in a rectangular box (GRABOX)

GRABOX (GRAph BOX) generates all symmetry related residues that are in a specified rectangular box and displays them in a mol-item.

GRABOX further asks for XMIN, YMIN, ZMIN and XMAX, YMAX, ZMAX of the box. Here two opposing corners of the box should be given as two sets of three orthogonal coordinates.

See SYMGCA if you want a CA display only

Showing all residues in a sphere (GRASPH)

GRASPH (GRAph SPHere) generates all symmetry related residues that are in a specified sphere and adds shows them as a mol item.

GRASPH further asks for the X, Y, Z and Radius for the sphere. No defaults are available for the orthogonal center coordinates X, Y, Z. The radius defaults to 10 Angstrom.

See SYMGCA if you want a CA display only

Showing all residues around a specified residue (GRASRS)

GRASRS (GRAph Sphere around ReSidue) generates all symmetry related residues that are in a sphere with a specified radius around a specified residue and adds them to the soup.

GRASRS further asks for the residue number and for the radius of the sphere. The radius defaults to 10 Angstrom.

See SYMGCA if you want a CA display only

Cell dimensions

When reading an MCF or a PDB file, WHAT IF reads and remembers the cell dimensions, and performs some sanity checks. It is possible to review or change the active cell dimensions using CELSHO and CELINP.

Show the unit cell (CELSHO)

You can see the CELL dimensions, the corresponding transformation orthogonal-to-cell-coordinates, and the current space group on the screen by using the command CELSHO (CELl SHOw).

Set/input the unit cell parameters (CELINP)

If you want to set or change the cell dimensions, you can use the command CELINP (CELl INPut). You will then be prompted for all six cell dimensions a, b, c, alpha, beta, gamma. No defaults exist for the axis lengths; angles default to 90 degrees.

This is an expert option that is only available when MORE has been activated from the symmetry menu.

Some other symmetry options

Input the space group symbol (SYMISG)

Normally WHAT IF will read the space group symbol from the MCF or PDB file. If you want to change the active space group you can do so using the SYMISG (SYM Input Space Group) command. SYMISG will ask you for a properly spaced standard Hermann-Mauguin symbol (eg. "P 21 21 21") of the space group. A warning will be given if WHAT IF detects an inconsistency.

This is an expert option that is only available when MORE has been activated from the symmetry menu.

Locking symmetry matrices (LCKSYM)

The LCKSYM (LoCK SYMmetry) command toggles a flag in WHAT IF that can lock the symmetry transformations in memory. If the symmetry matrices are locked, all options that can potentially delete symmetry transformations are disabled.

This is an expert option that is only available when MORE has been activated from the symmetry menu.

Input the "touching" tolerance (SYMPAR)

The tolerance used to see if two atoms "Touch" (See SYMDNT) can be set using SYMPAR (SYM PARameters). Default value is 0.25 Angstrom.

This value is used by the SOUSHL and GRASHL commands. It corresponds to the value used by CONTAC and a large number of other WHAT IF options.

Delete symmetric molecules from the soup (SYMDSM)

Sometimes a PDB file contains symmetry equivalent molecules. In those cases the SYM*** routines may find overlapping molecules. Using the SYMDSM option (SYM Delete Symmetric Molecules) all molecules that can be regenreated using the current active symmetry transformations will be deleted from the soup.

This (expert) option is only available when "MORE" has been executed in the symmetry menu.

Use symmetry where possible (USESYM)

The command USESYM toggles an internal flag in WHAT IF that tells options that can use symmetry to do so. Options currently affected are (please don't assume this list is up to date): ACCESS, HB2RED, CONTAC, TABBMP

Contacts between symmetry related molecules (SYMANA)

The SYMANA (SYMmetry ANAlyze) command checks whether any residues in the protein bump with neighboring molecules in the crystal, and if so, prints a summary of the intermolecular contacts found. A "very severe" bump is reported if any atom-pair from two amino-acids have an interatomic distance less than SUM(VanDerWaals)-2.0 Angstrom. A "less severe" bump is reported if any atom pair from two amino-acids have an interatomic distance less than SUM(VanDerWaals)-1.0 Angstrom. In the current version it is not possible to change these two parameters.

From the ANACON menu, using the CONTAC option it is also possible to check for contacts between symmetry related molecules.

This (expert) option is only available when "MORE" has been executed in the symmetry menu.

Disambiguate cells using bump analysis (SYMAMB)

The SYMAMB (SYMmetry AMBiguous) command calls SYMANA for the two cells as obtained from the CRYST1 card and the SCALE cards. If there is a significant difference in the bumping pattern, a choice is made between the two.

Accept conventional cell (CELAPP)

The CELAPP (CELl APPly) command applies an earlier found INPUT TO CONVENTIONAL transformation on the unit cell. No attempt is made to validate the new unit cell. The SPACE GROUP is most probably invalid after this transformation. See CELNEW for a way to check if there is previously undetected symmetry between different molecules.

This (expert) option is only available when "MORE" has been executed in the symmetry menu.

Check conventional cell for extra symmetry (CELNEW)

The CELNEW (CELl NEW) command looks for pairs of polymeric molecules (DNA or PROTEIN) that can be superimposed by transformations that can be symmetry transformations in the conventional cell. This procedure can be used to check for crystallographic symmetry that would be introduced by the input->conventional cell transformation as given by WHAT IF upon reading a molecule. See CELAPP for a procedure to actually perform the transformation of the unit cell.

This (expert) option is only available when "MORE" has been executed in the symmetry menu.

C-alpha only or full residues for GRA options (SYMGCA)

SYMGCA (SYM Generate C-Alpha) toggles the flag that controls generation of mol items to either display full AA's or CA only. This only holds for the GRA*** options in the SYMTRY menu!!!

Options that are not to be used

Check many cells (CELCKM)

An internal option to check the symmetry information in a list of PDB files.

Check symmetry in database (SYMDBA)

An internal option to check the symmetry information in a list of PDB files.

Activating more commands (MORE)

Not all commands are immediately active in the ACCESS menu. By typing MORE, more commands will be activated.