Next: HBUILD Command, Previous: Syntax of Coordinate Manipulations, Up: Coordinate Manipulations

All of these commands (except the unit cell and `HBUILD`
commands) allow either the main coordinate set (default), or the
comparison set (`COMP` keyword) to be modified. The other coordinate
set is only changed by the `SWAP` command and the `ORIEnt`
`RMS` command when the specified atoms are not centered about the
origin.

Each of these commands may also operate on a subset of the full
atom space (except the `ORIEnt` and unit cell commands). The
selection specification should be at the end of the command. The default
atom selection includes all atoms.

The `INITIALIZE` command returns the coordinate values of
the specified atoms to their start up values (the parameter, `ANUM`

which is currently 9999.0). The main use of this command is in connection
with the `BUILD` `BILD` command, which may only find coordinates
for atoms with the initial value.

The `COPY` command will copy the coordinate values into the
specified set FROM the other coordinate set.

The `SWAP` command will cause the coordinate values of the
specified atoms to be swapped with the comparison set.

The `AVERAGE` command will generate a new coordinate set at
a point along the displacement vector between the present coordinate set
and the other set. The `FACTOR` value determines the relative step
along this vecor. Its default value is 0.5 (a true average). A
`FACTOR` value of 1.0 is equivalent to the `COPY` command.
Negative or greater than unit positive values are also allowed.

The `TRANSLATE` command will cause the coordinate values of
the specified atoms 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.

The `ROTATE` command will cause the specified atoms to be
rotated about the specified axis vector through the origin. The vector
can specified either in terms of its Cartesian components, using the
`XDIR`, `YDIR`, and `ZDIR` options, or by the vector between
two atoms using the `BYATOM` option. 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 (in the right handed
sense). Only the atoms specified will be rotated.

The `ORIENT` command will modify the coordinate values of
*all* of the atoms. The select set of atoms is first centered about
the origin, and then rotated to either align with the axis, or the other
coordinate set. The `RMS` keyword will use the other coordinate set
as a rotation reference. The `MASS` keyword cause a mass weighting
to be done. This will align the specified atoms along their moments of
inertia. When the `RMS` keyword is not used, then the structure is
rotated so that its principle geometric axis coincides with the X-axis
and the next largest coincides with the Y-axis. The `SAVE` option
will result in the coordinate transformation being saved under the given
`name`, and it can be used by `XFORM` option described below.
This command is used for preparing a structure for graphics and viewing,
for finding RMS differences, for model building, and in conjunction with
the vibrational analysis.

The `RMS` command will compute the Root Mean Square (RMS) or
mass weighted RMS coordinate differences between the selected set of
atoms just as they lie. This differences from the `COOR`
`ORIENT` `RMS` command in that no coordinate modifications are
made and no translation is done.

The `RANDOM` command will randomize the selected set of
atoms around their current coordinates. Two probability distributions
are provided, normal (Gaussian) and uniform. For the normal
distribution, the `SD` option specified the standard deviation of
the distribution. For the uniform distribution, the `SD` option
specifies the range of possible variation in both directions, i.e., new
coordinates will have values anywhere between −`SD` and
+`SD`. The default distribution is normal.
The `SEED` option specifies the random number seed used to
initialize the random number generator. It defaults to 1234.

The `DIFF` command will compute the differences between the
main and comparison set (or the reverse) and store this difference in
the coordinate displacement arrays, also referred to as the normal mode
arrays (see Normal Modes). Each difference is scaled by the
`FACT` keyword value. The differences are not appended onto current
values. The differences may then be printed, etc...

The `XFORM` command will apply a stored coordinate transformation
to a set of atoms. The coordinate transformation is specifed by name,
and can be created by the `ORIENT` option above or by a
analysis comparison command, see Comparisons.
This command is useful when you want to move a set of atoms onto a position
that is determined by another set of atoms.

The `XINVERT` command will invert a stored coordinate transformation.
The transformation is specified by the given name. No coordinates are affected
by this command. For example, this command may be used to invert the transformation
to orient a set of atoms, so that one set of atoms could be placed in the space
occupied by another set. E.g.

COOR ORIE SAVE A CLEAR ATOM 1 * * ! Get transform for moving ! first segment to x axis. COOR XINV A ! Invert the transform COOR ORIE CLEAR ATOM 2 * * ! Put second set on x axis COOR XFORM A CLEAR ATOM 2 * * ! Move second set onto position ! of first segment.

The `SCALE` command will multiply the selected coordinates in the system
by the given scale factor.

The `CONVERT` command will convert from fractional coordinates to
Cartesian coordinates. This command requires six real numbers; A, B, C,
ALPHA, BETA, GAMMA; which are the unit cell parameters for the crystal.
It assumes the current coordinates are in the fractional cell system,
and it converts the selected atoms to Cartesian coordinates.

The `EQUIVALENCE` command will generate symmetry related coordinates
of the molecule. To use this command, you must first create a PSF which
has multiple copies of the structure you wish to replicate by symmetry,
and you must have read in the coordinates for the first assymetric unit.
The `EQUIVALENCE` will first read a line containing just the number
of transformations. Then it will read that number of transformations
in the following format:

ROTxx ROTxy ROTxz TRANSx ROTyx ROTyy ROTyz TRANSy ROTzx ROTzy ROTzz TRANSz

Each of the symbols above is parsed as a real number. The first transformation is expected to be the identity transformation and is not applied.

The coordinates are divided into blocks whose number equals the number
of transformations. New coordinates for every block after the first are
generated by multiplying the rotation matrix (`ROTxx`) by the
coordinates (as a column matrix) of the first block and then adding the
translation vector (`TRANSx`). Blank lines in this input are ignored.

The following input to CONGEN illustrates an example of generating coordinates for the alanines in a crystal of symmetry.

READ SEQUENCE CARD A94P UNIT 5 Alanine 1 ALA GENERATE A READ SEQUENCE CARD A94P UNIT 5 Alanine 1 ALA open unit 11 name ala.crd form read read coor card unit 11 GENERATE B READ SEQUENCE CARD A94P UNIT 5 Alanine 1 ALA GENERATE C READ SEQUENCE CARD A94P UNIT 5 Alanine 1 ALA GENERATE D COOR EQUI 4 1 0 0 0 0 1 0 0 0 0 1 0 -1 0 0 0 0 -1 0 0 0 0 1 0.5 0 -1 0 0 1 0 0 0 0 0 1 0.25 0 1 0 0 -1 0 0 0 0 0 1 0.75

The command `COOR` `TRAN` is a relic of the old code in
CHARMM.
There are no other keywords, but all of these commands require further
input in formatted, fixed field form.

`TRAN`- generates translated coordinates for molecules. See the routine
`TRAFAC`

in the file`CORMAN.FLX`for details.