Operation Arguments Description
get attribute Get the geometrical attribute attribute to an varName object varName according to the atom sets arg1 specified by the arguments arg2 (etc.). ?arg2 ...? set attribute Set the geometrical attribute attribute to a ?relative? target list of values target according to target the atom sets specified by the arguments. If arg1 the optional keyword relative is given after ?arg2 ...? the attribute argument, then target is added to the existing values. rotate axis Rotate the set of atoms arg1 by target target degrees about the axis given by the line arg1 object axis. translate vector Translate the set of atoms arg1 by target target angstroms along the vector vector. arg1
Attribute Operations Arguments Description
coords get/set 1 Store in varName or set to target the molecular coordinates of the atoms specified by the argument. line get 2 Create a geometry line object varName, which are the lines between the coordinates of the atom pairs specified by the arguments. plane get 3 Create a geometry plane object varName, which are the planes between the coordinates of the atom triplets specified by the arguments. rms get 2 The arguments specify two sets of atoms for which an rms comparison is made. The rms residual is calculated from the maximum overlap of the atom coordinates and is returned in varName. angle get/set 3 Same as for the distance attribute, but for angles specified by the arguments. torsion get/set 4 Same as for the distance attribute, but for torsion angles specified by the arguments. outOfPlane get/set 4 Same as for the distance attribute, but for out-of-plane angles specified by the arguments. superimpose set 2 The arguments specify two sets of atoms which are used to generate a matrix, which would transform the second set of atoms to produce the maximum overlap (minimum rms) with the first set of atoms. This matrix is then used to transform the set of atoms specified by target. distance get/set 2 Store in varName or set to target the distances between the atom sets defined by the arguments. For the set operation the set of atoms specified by the last argument, and sets of atoms attached to them, are moved to set the target distance. This operation is valid only if each member of a pair of atoms specified by the args is directly bonded and is not in a ring structure, or if the atoms are in separate molecules. principalAxes get 1 Store in varName the principal axes through the list of atoms specified by the argument. The object returned is a geometric line object composed of a point centroid and three unit principal axis vectors. lsqLine get 1 Store in varName the least-squares- fit line through the list of atoms specified by the argument. The object returned is a geometric line object. lsqPlane get 1 Store in varName the least-squares- fit plane through the list of atoms specified by the argument. The object returned is a geometric plane object.
The molGeom command is used to perform basic geometric analysis and manipulation on molecular systems. The molGeom command is actually a TCL procedure (located in $BIOSYM/data/utility/molGeom.tcl) that employs the $dbHandle get and set operations and the subset, subStructure, and geometry commands to take atom and subset specification arguments and manipulate the coordinates they refer to.
The arguments specifying the attribute to get or set may be defined either by a single database subset specification or by a number of arguments (given in the Arguments column of the table), which each specify a single list or subset of atoms. This is shown more clearly in Example 1.
A torsion or dihedral angle formed by four points is defined by:
where sign is the sign of:
An out-of-plane angle formed by four points is defined by:
BTCL > subset define Subset "*:nitros" "GLY_*:N" BTCL > subset define Angle "glyAngles" "{*:GLY_*:C} {*:GLY_*:CA} {*:GLY_*:N}" BTCL > molGeom get Angle GLYang "glyAngles" BTCL > object GLYang 115.190873 116.304130 114.314820 115.217229 BTCL > molGeom set Angle 51.6 "*:GLY_*:C" "*:GLY_*:CA" "*:GLY_*:N" BTCL > molGeom get Angle GLYang "*:GLY_*:C" "*:GLY_*:CA" "*:nitros" BTCL > object GLYang 51.6 51.6 51.6 51.6This example shows the use of the molGeom get and molGeom set commands for angle attributes. The first two commands are subset definitions which create subsets of all the GLY monomer nitrogen atoms in the monomer context and one subset of angles between the GLY monomer carbon, alpha carbon, and nitrogen atoms in the system context for the current system. The first molGeom get command is then performed using the glyAngles subset to retrieve all the values for the specified angles to the object GLYang. This object is then printed using the object get command to show that there are four such angles, which all have a value of approximately 115 degrees.
The next command is a molGeom set command, which is used to set the same angles all to a value of 51.6 degrees. This time, three arguments are given to specify the angles. Note that they are the same atom specifications as used to define the glyAngles subset. The final molGeom command is used to get back the angle values just set, to confirm that they are as they should be. Note that this time, there are again three arguments given to specify the angles referenced, but that the last argument is the nitros subsets specification. In this example, the arguments to each of the three molGeom commands specifying the angles set are entirely equivalent.
BTCL > molGeom get coords Ncrds "*:nitros" BTCL > object Ncrds {30.898131 -10.527911 0.140841} {32.294803 -4.643929 0.279658} {31.138713 -2.255716 0.373504} {32.405810 10.807364 0.140980} BTCL > vector Ncrds add $Ncrds "{0.1 0.1 0.1}" BTCL > molGeom set coords $Ncrds "*:nitros"This example continues from the previous one. The first molGeom get command is used to get the coordinates of all the GLY monomer nitrogen atoms (as specified by the nitros subsets) to the object Ncrds, which is then displayed using the object command. A vector command is then used to add a small displacement vector of {0.1 0.1 0.1} to these coordinates. The new vector is then used to reset the specified nitrogen atom coordinates using a molGeom set command.
BTCL > molGeom set distance relative 0.2 "*:GLY_*:CA" "*:GLY_*:N"This example of the molGeom set command is used to add 0.2 to all the nitrogen-alpha carbon bond lengths in all the GLY monomers.
BTCL > molGeom get rms RMS "*:GLY_3:Atom;*" "*:GLY_6:Atom;*" BTCL > object RMS 0.076795This example shows how the molGeom command is used to perform a root-mean-square comparison of two sets of atom coordinates; here, two GLY monomers. The value is then printed using the object command and is seen to be quite low, as would be expected for two of the same monomers. The value is not zero, since the overall structure of the molecule affects individual monomer geometries. Note that the ``Atom;'' parts of the atom specification arguments are only to ensure that no subsets could be included if there were any defined at the atom level of the system database hierarchy.
List of BTCL commands
minimize command
object command
Copyright Biosym/MSI