

 

descriptions of TINKER routines

 
 

 
 

9. Descriptions of TINKER Routines
The distribution version of the TINKER package contains over 500 separate
programs, subroutines and functions. This section contains a brief description of
the purpose of most of these code units. Further information can be found in the
comments located at the top of each source code file.
 ACTIVE Subroutine
 "active" sets the list of atoms that are used during each potential energy
function calculation
 ADDBOND Subroutine
 "addbond" adds entries to the attached atoms list in order to generate a
direct connection between two atoms
 ADDSIDE Subroutine
 "addside" builds the Cartesian coordinates file information for a single amino
acid sidechain; coordinates are read from the Protein Data Bank file or found
from internal coordinates; atom types are assigned and connectivity data
generated
 ADJACENT Function
 "adjacent" finds an atom connected to atom "i1" other than atom "i2"; if no
such atom exists, then the closest atom in space is returned
 ALCHEMY Program
 "alchemy" computes the free energy difference corresponding to a small
perturbation by Boltzmann weighting the potential energy difference over a number
of sample states; current version (incorrectly) considers the charge energy to be
intermolecular in finding the perturbation energies
 ANALYSIS Subroutine
 "analysis" calls the series of routines needed to calculate the potential
energy and perform energy partitioning analysis in terms of type of interaction
or atom number
 ANALYZ4 Subroutine
 "analyz4" prints the energy and number of interactions for each component of a
force field potential energy; the energy values are reported to 4 decimal places
 ANALYZ6 Subroutine
 "analyz6" prints the energy and number of interactions for each component of a
force field potential energy; the energy values are reported to 6 decimal places
 ANALYZ8 Subroutine
 "analyz8" prints the energy and number of
interactions for each component of a force field potential energy; the energy
values are reported to 8 decimal places
 ANALYZE Program
 "analyze" computes and displays the total potential; options are provided to
partition the energy by atom or by potential function type; parameters used in
computing interactions can also be displayed by atom; output of large energy
interactions and the total electric charge and dipole moment are available
 ANGLES Subroutine
 "angles" finds the total number of bond angles and stores the atom numbers of
the atoms defining each angle; for each angle to a tricoordinate central atom,
the third bonded atom is stored for use in outofplane bending
 ANNEAL Program
 "anneal" performs a simulated annealing protocol by means of variable
temperature molecular dynamics using either linear, exponential or sigmoidal
cooling schedules
 ANORM Function
 "anorm" finds the norm (length) of a vector; used as a service routine by the
Connolly surface area and volume computation
 ARCHIVE Program
 "archive" is a utility program for coordinate files which concatenates
multiple coordinate sets into a single archive file, or extracts individual
coordinate sets from an archive
 ASET Subroutine
 ATTACH Subroutine
 "attach" sets up the lists of 13 and 14 connectivities starting from the
previously determined list of attached atoms (ie, 12 connectivity)
 BASEFILE Subroutine
 "basefile" extracts from an input filename the portion consisting of any
directory name and the base filename
 BEEMAN Subroutine
 "beeman" performs a single molecular dynamics time step by means of a Beeman
multistep recursion formula; the actual coefficients are Brooks' "Better Beeman"
values
 BETACF Function
 "betacf" computes a rapidly convergent continued fraction needed by routine
"betai" to evaluate the cumulative Beta distribution
 BETAI Function
 "betai" evaluates the cumulative Beta distribution function as the probability
that a random variable from a distribution with Beta parameters "a" and "b" will
be less than "x"
 BMAX Function
 BNDERR Function
 "bnderr" is the distance bound error function and derivatives; this version
implements the original and Havel's normalized lower bound penalty, the
normalized version is preferred when lower bounds are small (as with NMR NOE
restraints), the original penalty is needed if large lower bounds are present
 BONDS Subroutine
 "bonds" finds the total number of covalent bonds and stores the atom numbers
of the atoms defining each bond
 BORN Subroutine
 "born" computes the Born radius of each atom for use with the various GB/SA
solvation models
 BORN1 Subroutine
 "born1" computes derivatives of the Born radii with respect to atomic
coordinates and increments total energy derivatives and virial components for
potentials involving Born radii
 BOUNDS Subroutine
 "bounds" finds the center of mass of each molecule, translates any stray
molecules back into the periodic box, and saves the offset of each atom relative
to the molecular center of mass
 BSET Subroutine
 BSPLINE Subroutine
 "bspline" calculates the coefficients and derivative coefficients for an nth
order Bspline approximation BSSTEP Subroutine
 CALENDAR Subroutine
 "calendar" returns the current time as a set of integer values representing
the year, month, day, hour, minute and second; only one of the various machine
implementations included should be activated by removing comment characters
 CELLATOM Subroutine
 "cellatom" completes the addition of a symmetry
related atom to a unit cell by updating the atom type and attachment arrays
 CENTER Subroutine
 "center" moves the weighted centroid of each coordinate set to the origin
during least squares superposition
 CFFTB Subroutine
 "cfftb" computes the backward complex discrete Fourier transform, the Fourier
synthesis
 CFFTB1 Subroutine
 CFFTF Subroutine
 "cfftf" computes the forward complex discrete Fourier transform, the Fourier
analysis
 CFFTF1 Subroutine
 CFFTI Subroutine
 "cffti" initializes the array "wsave" which is used in both forward and
backward transforms; the prime factorization of "n" together with a tabulation of
the trigonometric functions are computed and stored in "wsave"
 CFFTI1 Subroutine
 CHIRER Function
 "chirer" computes the chirality error and its derivatives with respect to
atomic Cartesian coordinates as a sum the squares of deviations of chiral volumes
from target values
 CHIRIN Subroutine
 "chirin" determines the target value for each chirality and planarity
restraint as the signed volume of the parallelpiped spanned by vectors from a
common atom to each of three other atoms
 CHKSIZE Subroutine
 "chksize" computes a measure of overall global structural expansion or
compaction from the number of excess upper or lower bounds matrix violations
 CHKTREE Subroutine
 "chktree" tests a minimum energy structure to see if it belongs to the correct
progenitor in the existing map
 CHOLESKY Subroutine
 "cholesky" uses a modified Cholesky method to solve the linear system Ax = b,
returning "x" in "b"; "A" is assumed to be a real symmetric positive definite
matrix with diagonal and upper triangle stored by rows in "A"; thus the actual
size of the passed portion of "A" is nvar*(nvar+1)/2 CIRPLN Subroutine
 CJKM Function
 CLIMBER Subroutine
 CLIMBRGD Subroutine
 CLIMBROT Subroutine
 CLIMBROT Subroutine
 CLIMBXYZ Subroutine
 CLOCK Subroutine
 "clock" determines elapsed CPU time in seconds since the start of the job;
only one of the implementations should be activated by removing comment
characters from the code
 CLUSTER Subroutine
 "cluster" gets the partitioning of the system into groups and stores a list of
the group to which each atom belongs
 COLUMN Subroutine
 "column" takes the offdiagonal Hessian elements stored as sparse rows and
sets up indices to allow column access
 COMMAND Subroutine
 "command" uses the standard Unixlike iargc/getarg routines to get the number
and values of arguments specified on the command line at program runtime
 COMPRESS Subroutine
 "compress" transfers only the nonburied tori from the temporary tori arrays
to the final tori arrays
 CONNECT Subroutine
 "connect" sets up the attached atom arrays starting from a set of internal
coordinates
 CONNOLLY Subroutine
 "connolly" uses the algorithms from the AMS/VAM programs of Michael Connolly
to compute the analytical molecular surface area and volume of a collection of
spherical atoms; thus it implements Fred Richards' molecular surface definition
as a set of analytically defined spherical and toroidal polygons
 CONTACT Subroutine
 "contact" constructs the contact surface, cycles and convex faces
 CONTROL Subroutine
 "control" gets initial values for parameters that determine the output style
and information level provided by TINKER
 COORDS Subroutine
 "coords" converts the three principal eigenvalues/vectors from the metric
matrix into atomic coordinates, and calls a routine to compute the rms deviation
from the bounds
 CORRELATE Program
 "correlate" computes the time correlation function of some usersupplied
property from individual snapshot frames taken from a molecular dynamics or other
trajectory
 CRYSTAL Program
 "crystal" is a utility program which converts between fractional and Cartesian
coordinates, and can generate full unit cells from asymmetric units
 CUTOFFS Subroutine
 "cutoffs" initializes and stores spherical energy cutoff distance windows,
Hessian element and Ewald sum cutoffs, and the pairwise neighbor generation
method
 D1D2 Function
 DELETE Subroutine
 "delete" removes a specified atom from the Cartesian coordinates list and
shifts the remaining atoms DEPTH Function
 DFTMOD Subroutine
 "dftmod" computes the modulus of the discrete Fourier transform of "bsarray",
storing it into
 "bsmod"
 DIAGQ Subroutine
 "diagq" is a matrix diagonalization routine which is derived from the
classical given, housec, and eigen algorithms with several modifications to
increase the efficiency and accuracy
 DIFFEQ Subroutine
 "diffeq" performs the numerical integration of an ordinary differential
equation using an adaptive stepsize method to solve the corresponding coupled
firstorder equations of the general form dyi/dx = f(x,y1,...,yn) for yi =
y1,...,yn
 DIFFUSE Program
 "diffuse" finds the selfdiffusion constant for a homogeneous liquid via the
Einstein relation from a set of stored molecular dynamics frames; molecular
centers of mass are unfolded and mean squared displacements are computed versus
time separation
 DIST2 Function
 "dist2" finds the distance squared between two points; used as a service
routine by the Connolly surface area and volume computation
 DISTGEOM Program
 "distgeom" uses a metric matrix distance geometry procedure to generate
structures with interpoint distances that lie within specified bounds, with
chiral centers that maintain chirality, and with torsional angles restrained to
desired values; the user also has the ability to interactively inspect and alter
the triangle smoothed bounds matrix prior to embedding
 DMDUMP Subroutine
 "dmdump" puts the distance matrix of the final structure into the upper half
of a matrix, the distance of each atom to the centroid on the diagonal, and the
individual terms of the bounds errors into the lower half of the matrix
 DOCUMENT Program
 "document" generates a formatted description of all the code modules or common
blocks, a listing of all valid keywords, a list of include file dependencies as
needed by a Unixstyle Makefile, or a formatted force field parameter set summary
 DOT Function
 "dot" finds the dot product of two vectors
 DROTMAT Subroutine
 "drotmat" finds the derivative rotation matrices that convert multipoles from
the local coordinate system to the global system
 DROTMAT1 Subroutine
 "drotmat1" finds the multipole rotation matrix derivatives for local
coordinates defined via the "ZthenX" method
 DROTMAT2 Subroutine
 "drotmat2" finds the multipole rotation matrix derivatives for local
coordinates defined via the "bisector" method
 DROTPOLE Subroutine
 "drotpole" computes the derivatives of the atomic multipoles in the global
coordinate frame with respect to motion of the sites that define the local
coordinate frame
 DSTMAT Subroutine
 "dstmat" selects a distance matrix containing values between the previously
smoothed upper and lower bounds; the distance values are chosen from uniform
distributions, in a triangle correlated fashion, or using random partial
metrization
 DYNAMIC Program
 "dynamic" computes a molecular dynamics trajectory in any of several
statistical mechanical ensembles with optional periodic boundaries and optional
coupling to temperature and pressure baths alternatively a stochastic dynamics
trajectory can be generated
 EANGANG Subroutine
 "eangang" calculates the angleangle potential energy
 EANGANG1 Subroutine
 "eangang1" calculates the angleangle potential energy and first derivatives
with respect to Cartesian coordinates
 EANGANG2 Subroutine
 "eangang2" calculates the angleangle potential energy second derivatives with
respect to Cartesian coordinates using finite difference methods
 EANGANG2B Subroutine
 "eangang2b" calculates the angleangle first derivatives for a single
interaction with respect to Cartesian coordinates; used in computation of finite
difference second derivatives
 EANGANG3 Subroutine
 "eangang3" calculates the angleangle potential energy; also partitions the
energy among the atoms
 EANGLE Subroutine
 "eangle" calculates the angle bending potential energy; projected inplane
angles at trigonal centers or Fourier angle bending terms are optionally used
 EANGLE1 Subroutine
 "eangle1" calculates the angle bending potential energy and the first
derivatives with respect to Cartesian coordinates; projected inplane angles at
trigonal centers or Fourier angle bending terms are optionally used
 EANGLE2 Subroutine
 "eangle2" calculates second derivatives of the angle bending energy for a
single atom using a mixture of analytical and finite difference methods;
projected inplane angles at trigonal centers or Fourier angle bending terms are
optionally used
 EANGLE2A Subroutine
 "eangle2a" calculates bond angle bending potential energy second derivatives
with respect to Cartesian coordinates
 EANGLE2B Subroutine
 "eangle2b" computes projected inplane bending first derivatives for a single
angle with respect to Cartesian coordinates; used in computation of finite
difference second derivatives
 EANGLE3 Subroutine
 "eangle3" calculates the angle bending potential energy, also partitions the
energy among the atoms; projected inplane angles at trigonal centers or Fourier
angle bending terms are optionally used
 EBOND Subroutine
 "ebond" calculates the bond stretching energy
 EBOND1 Subroutine
 "ebond1" calculates the bond stretching energy and first derivatives with
respect to Cartesian coordinates
 EBOND2 Subroutine
 "ebond2" calculates second derivatives of the bond stretching energy for a
single atom at a time
 EBOND3 Subroutine
 "ebond3" calculates the bond stretching energy; also partitions the energy
among the atoms
 EBUCK Subroutine
 "ebuck" calculates the Buckingham exp6 van der Waals energy
 EBUCK0A Subroutine
 "ebuck0a" calculates the Buckingham exp6 van der Waals energy using a
pairwise double loop
 EBUCK0B Subroutine
 "ebuck0b" calculates the Buckingham exp6 van der Waals energy using the
method of lights to locate neighboring atoms
 EBUCK1 Subroutine
 "ebuck1" calculates the Buckingham exp6 van der Waals energy and its first
derivatives with respect to Cartesian coordinates
 EBUCK1A Subroutine
 "ebuck1a" calculates the Buckingham exp6 van der Waals energy and its first
derivatives with respect to Cartesian coordinates using a pairwise double loop
 EBUCK1B Subroutine
 "ebuck1b" calculates the Buckingham exp6 van der Waals energy and its first
derivatives with respect to Cartesian coordinates using the method of lights to
locate neighboring atoms
 EBUCK2 Subroutine
 "ebuck2" calculates the Buckingham exp6 van der Waals second derivatives for
a single atom at a time
 EBUCK3 Subroutine
 "ebuck3" calculates the Buckingham exp6 van der Waals energy and partitions
the energy among the atoms
 ECHARGE Subroutine
 "echarge" calculates the chargecharge interaction energy
 ECHARGE0A Subroutine
 "echarge0a" calculates the chargecharge interaction energy using a pairwise
double loop
 ECHARGE0B Subroutine
 "echarge0b" calculates the chargecharge interaction energy using the method
of lights to locate neighboring atoms
 ECHARGE0C Subroutine
 "echarge0c" calculates the chargecharge interaction energy for use with
potential smoothing methods
 ECHARGE0D Subroutine
 "echarge0d" calculates the chargecharge interaction energy using a particle
mesh Ewald summation
 ECHARGE1 Subroutine
 "echarge1" calculates the chargecharge interaction energy and first
derivatives with respect to Cartesian coordinates
 ECHARGE1A Subroutine
 "echarge1a" calculates the chargecharge interaction energy and first
derivatives with respect to Cartesian coordinates using a pairwise double loop
 ECHARGE1B Subroutine
 "echarge1b" calculates the chargecharge interaction energy and first
derivatives with respect to Cartesian coordinates using the method of lights to
locate neighboring atoms
 ECHARGE1C Subroutine
 "echarge1c" calculates the chargecharge interaction energy and first
derivatives with respect to Cartesian coordinates for use with potential
smoothing methods
 ECHARGE1D Subroutine
 "echarge1d" calculates the chargecharge interaction energy and first
derivatives with respect to Cartesian coordinates using a particle mesh Ewald
summation
 ECHARGE2 Subroutine
 "echarge2" calculates second derivatives of the chargecharge interaction
energy for a single atom ECHARGE2A Subroutine
 "echarge2a" calculates second derivatives of the chargecharge interaction
energy for a single atom using a pairwise double loop
 ECHARGE2B Subroutine
 "echarge2b" calculates second derivatives of the chargecharge interaction
energy for a single atom for use with potential smoothing methods
 ECHARGE2C Subroutine
 "echarge2c" calculates second derivatives of the chargecharge interaction
energy for a single atom using a particle mesh Ewald summation
 ECHARGE3 Subroutine
 "echarge3" calculates the chargecharge interaction energy and partitions the
energy among the atoms
 ECHARGE3A Subroutine
 "echarge3a" calculates the chargecharge interaction energy and partitions the
energy among the atoms using a pairwise double loop
 ECHARGE3B Subroutine
 "echarge3b" calculates the chargecharge interaction energy and partitions the
energy among the atoms using the method of lights to locate neighboring atoms
 ECHARGE3C Subroutine
 "echarge3c" calculates the chargecharge interaction energy and partitions the
energy among the atoms for use with potential smoothing methods
 ECHARGE3D Subroutine
 "echarge3d" calculates the chargecharge interaction energy and partitions the
energy among the atoms using a particle mesh Ewald summation
 ECHGDPL Subroutine
 "echgdpl" calculates the chargedipole interaction energy
 ECHGDPL1 Subroutine
 "echgdpl1" calculates the chargedipole interaction energy and first
derivatives with respect to Cartesian coordinates
 ECHGDPL2 Subroutine
 "echgdpl2" calculates second derivatives of the chargedipole interaction
energy for a single atom ECHGDPL3 Subroutine
 "echgdpl3" calculates the chargedipole interaction energy; also partitions
the energy among the atoms
 EDIPOLE Subroutine
 "edipole" calculates the dipoledipole interaction energy
 EDIPOLE1 Subroutine
 "edipole1" calculates the dipoledipole interaction energy and first
derivatives with respect to Cartesian coordinates
 EDIPOLE2 Subroutine
 "edipole2" calculates second derivatives of the dipoledipole interaction
energy for a single atom
 EDIPOLE3 Subroutine
 "edipole3" calculates the dipoledipole interaction energy; also partitions
the energy among the atoms
 EGAUSS Subroutine
 "egauss" calculates the Gaussian expansion van der Waals interaction energy
 EGAUSS1 Subroutine
 "egauss1" calculates the Gaussian expansion van der Waals interaction energy
and its first derivatives with respect to Cartesian coordinates
 EGAUSS2 Subroutine
 "egauss2" calculates the Gaussian expansion van der Waals second derivatives
for a single atom at a time
 EGAUSS3 Subroutine
 "egauss3" calculates the Gaussian expansion van der Waals interaction energy
and partitions the energy among the atoms
 EGBSA0A Subroutine
 "egbsa0a" calculates the generalized Born polarization energy for the GB/SA
and ACE solvation models
 EGBSA0B Subroutine
 "egbsa0b" calculates the generalized Born polarization energy for the GB/SA
and ACE solvation models for use with potential smoothing methods via analogy to
the smoothing of Coulomb's law
 EGBSA1A Subroutine
 "egbsa1a" calculates the generalized Born energy and first derivatives with
respect to Cartesian coordinates for the GB/SA solvation models
 EGBSA1B Subroutine
 "egbsa1b" calculates the generalized Born energy and first derivatives with
respect to Cartesian coordinates for the GB/SA solvation models
 EGBSA2A Subroutine
 "egbsa2a" calculates second derivatives of the generalized Born energy term
for the GB/SA solvation models
 EGBSA2B Subroutine
 "egbsa2b" calculates second derivatives of the generalized Born energy term
for the GB/SA solvation models via analogy to the smoothing of Coulomb's law
 EGBSA3A Subroutine
 "egbsa3a" calculates the generalized Born energy term for the GB/SA and ACE
solvation models; also partitions the energy among the atoms
 EGBSA3B Subroutine
 "egbsa3b" calculates the generalized Born polarization energy for the GB/SA
and ACE solvation models for use with potential smoothing methods via analogy to
the smoothing of Coulomb's law; also partitions the energy among the atoms
 EGEOM Subroutine
 "egeom" calculates the energy due to restraints on atomic positions,
interatomic distances, dihedral angles, and Gaussian weighted molecular
compactness
 EGEOM1 Subroutine
 "egeom1" calculates the potential energy and first derivatives with respect to
Cartesian coordinates for restraints on atom positions, interatomic distances and
dihedral angles
 EGEOM2 Subroutine
 "egeom2" calculates second derivatives of any restraints on atom positions,
interatomic distances and dihedral angles
 EGEOM3 Subroutine
 "egeom3" calculates the energy due to restraints on atomic positions,
interatomic distances, dihedral angles and Gaussian weighted molecular size; also
partitions energy among the atoms
 EHAL Subroutine
 "ehal" calculates the buffered 147 van der Waals energy
 EHAL0A Subroutine
 "ehal0a" calculates the buffered 147 van der Waals energy using a pairwise
double loop
 EHAL0B Subroutine
 "ehal0a" calculates the buffered 147 van der Waals energy using the method of
lights to locate neighboring atoms
 EHAL1 Subroutine
 "ehal1" calculates the buffered 147 van der Waals energy and its first
derivatives with respect to Cartesian coordinates
 EHAL1A Subroutine
 "ehal1a" calculates the buffered 147 van der Waals energy and its first
derivatives with respect to Cartesian coordinates using a pairwise double loop
 EHAL1B Subroutine
 "ehal1b" calculates the buffered 147 van der Waals energy and its first
derivatives with respect to Cartesian coordinates using the method of lights to
locate neighboring atoms
 EHAL2 Subroutine
 "ehal2" calculates the buffered 147 van der Waals second derivatives for a
single atom at a time
 EHAL3 Subroutine
 "ehal3" calculates the buffered 147 van der Waals energy and partitions the
energy among the atoms
 EIGEN Subroutine
 "eigen" uses the power method to compute the largest eigenvalues and
eigenvectors of the metric matrix, "valid" is set true if the first three
eigenvalues are positive
 EIGENRGD Subroutine
 EIGENROT Subroutine
 EIGENROT Subroutine
 EIGENROT Subroutine
 EIGENXYZ Subroutine
 EIMPROP Subroutine
 "eimprop" calculates the improper dihedral potential energy
 EIMPROP1 Subroutine
 "eimprop1" calculates improper dihedral energy and its first derivatives with
respect to Cartesian coordinates
 EIMPROP2 Subroutine
 "eimprop2" calculates second derivatives of the improper dihedral angle energy
for a single atom
 EIMPROP3 Subroutine
 "eimprop3" calculates the improper dihedral potential energy; also partitions
the energy terms among the atoms
 EIMPTOR Subroutine
 "eimptor" calculates the improper torsion potential energy
 EIMPTOR1 Subroutine
 "eimptor1" calculates improper torsion energy and its first derivatives with
respect to Cartesian coordinates
 EIMPTOR2 Subroutine
 "eimptor2" calculates second derivatives of the improper torsion energy for a
single atom
 EIMPTOR3 Subroutine
 "eimptor3" calculates the improper torsion potential energy; also partitions
the energy terms among the atoms
 ELJ Subroutine
 "elj" calculates the LennardJones 612 van der Waals energy
 ELJ0A Subroutine
 "elj0a" calculates the LennardJones 612 van der Waals energy using a
pairwise double loop
 ELJ0B Subroutine
 "elj0b" calculates the LennardJones 612 van der Waals energy using the
method of lights to locate neighboring atoms
 ELJ1 Subroutine
 "elj1" calculates the LennardJones 612 van der Waals energy and its first
derivatives with respect to Cartesian coordinates
 ELJ1A Subroutine
 "elj1a" calculates the LennardJones 612 van der Waals energy and its first
derivatives with respect to Cartesian coordinates using a pairwise double loop
 ELJ1B Subroutine
 "elj1b" calculates the LennardJones 612 van der Waals energy and its first
derivatives with respect to Cartesian coordinates using the method of lights to
locate neighboring atoms
 ELJ2 Subroutine
 "elj2" calculates the LennardJones 612 van der Waals second derivatives for
a single atom at a time
 ELJ3 Subroutine
 "elj3" calculates the LennardJones 612 van der Waals energy and also
partitions the energy among the atoms
 EMBED Subroutine
 "embed" is a distance geometry routine patterned after the ideas of Gordon
Crippen, Irwin Kuntz and Tim Havel; it takes as input a set of upper and lower
bounds on the interpoint distances, chirality restraints and torsional restraints,
and attempts to generate a set of coordinates that satisfy the input bounds and
restraints
 EMETAL Subroutine
 "emetal" calculates the transition metal ligand field energy
 EMETAL1 Subroutine
 "emetal1" calculates the transition metal ligand field energy and its first
derivatives with respect to Cartesian coordinates
 EMETAL2 Subroutine
 "emetal2" calculates the transition metal ligand field second derivatives for
a single atom at a time
 EMETAL3 Subroutine
 "emetal3" calculates the transition metal ligand field energy and also
partitions the energy among the atoms
 EMM3HB Subroutine
 "emm3hb" calculates the MM3 exp6 van der Waals and directional charge
transfer hydrogen bonding energy
 EMM3HB0A Subroutine
 "emm3hb0a" calculates the MM3 exp6 van der Waals and directional charge
transfer hydrogen bonding energy using a pairwise double loop
 EMM3HB0B Subroutine
 "emm3hb0b" calculates the MM3 exp6 van der Waals and directional charge
transfer hydrogen bonding energy using the method of lights to locate neighboring
atoms
 EMM3HB1 Subroutine
 "emm3hb1" calculates the MM3 exp6 van der Waals and directional charge
transfer hydrogen bonding energy with respect to Cartesian coordinates
 EMM3HB1A Subroutine
 "emm3hb1a" calculates the MM3 exp6 van der Waals and directional charge
transfer hydrogen bonding energy with respect to Cartesian coordinates using a
pairwise double loop
 EMM3HB1B Subroutine
 "emm3hb1b" calculates the MM3 exp6 van der Waals and directional charge
transfer hydrogen bonding energy with respect to Cartesian coordinates using the
method of lights to locate neighboring atoms
 EMM3HB2 Subroutine
 "emm3hb2" calculates the MM3 exp6 van der Waals and directional charge
transfer hydrogen bonding second derivatives for a single atom at a time
 EMM3HB3 Subroutine
 "emm3hb3" calculates the MM3 exp6 van der Waals and directional charge
transfer hydrogen bonding energy, and partitions the energy among the atoms
 EMPIK1 Subroutine
 "empik1" computes the permanent multipole and induced dipole energies and
derivatives between a pair of multipole sites
 EMPOLE Subroutine
 "empole" calculates the electrostatic energy due to atomic multipole
interactions and dipole polarizability
 EMPOLE0A Subroutine
 "empole0a" calculates the electrostatic energy due to atomic multipole
interactions and dipole polarizability using a pairwise double loop
 EMPOLE0B Subroutine
 "empole0b" calculates the electrostatic energy due to atomic multipole
interactions and dipole polarizability using a regular Ewald summation
 EMPOLE1 Subroutine
 "empole1" calculates the multipole and dipole polarization energy and
derivatives with respect to Cartesian coordinates
 EMPOLE1A Subroutine
 "empole1a" calculates the multipole and dipole polarization energy and
derivatives with respect to Cartesian coordinates using a pairwise double loop
 EMPOLE1AX Subroutine
 EMPOLE1B Subroutine
 "empole1b" calculates the multipole and dipole polarization energy and
derivatives with respect to Cartesian coordinates using a regular Ewald summation
 EMPOLE2 Subroutine
 "empole2" calculates second derivatives of the multipole and dipole
polarization energy for a single atom at a time
 EMPOLE2B Subroutine
 "empole2b" computes multipole and dipole polarization first derivatives for a
single angle with respect to Cartesian coordinates; used to get finite difference
second derivatives
 EMPOLE3 Subroutine
 "empole3" calculates the electrostatic energy due to atomic multipole
interactions and dipole polarizability, and partitions the energy among the atoms
 EMPOLE3A Subroutine
 "empole3a" calculates the electrostatic energy due to atomic multipole
interactions and dipole polarizability, and partitions the energy among the atoms
using a double loop
 EMPOLE3B Subroutine
 "empole3b" calculates the electrostatic energy due to atomic multipole
interactions and dipole polarizability, and partitions the energy among the atoms
using a regular Ewald summation
 ENERGY Function
 "energy" calls the subroutines to calculate the potential energy terms and
sums up to form the total energy
 EOPBEND Subroutine
 "eopbend" computes the outofplane bend potential energy at trigonal centers
via a WilsonDeciusCross angle bend
 EOPBEND1 Subroutine
 "eopbend1" computes the outofplane bend potential energy and first
derivatives at trigonal centers via a WilsonDeciusCross angle bend
 EOPBEND2 Subroutine
 "eopbend2" calculates second derivatives of the outofplane bend energy via a
WilsonDeciusCross angle bend for a single atom using finite difference methods
 EOPBEND2B Subroutine
 "eopbend2b" calculates outofplane bending first derivatives at a trigonal
center via a WilsonDeciusCross angle bend; used in computation of finite
difference second derivatives
 EOPBEND3 Subroutine
 "eopbend3" computes the outofplane bend potential energy at trigonal centers
via a WilsonDeciusCross angle bend; also partitions the energy among the atoms
 EOPDIST Subroutine
 "eopdist" computes the outofplane distance potential energy at trigonal
centers via the central atom height
 EOPDIST1 Subroutine
 "eopdist1" computes the outofplane distance potential energy and first
derivatives at trigonal centers via the central atom height
 EOPDIST2 Subroutine
 "eopdist2" calculates second derivatives of the outofplane distance energy
for a single atom via the central atom height
 EOPDIST3 Subroutine
 "eopdist3" computes the outofplane distance potential energy at trigonal
centers via the central atom height; also partitions the energy among the atoms
 EPME Subroutine
 "epme" computes the reciprocal space energy for a particle mesh Ewald
summation over partial charges
 EPME1 Subroutine
 "epme1" computes the reciprocal space energy and first derivatives for a
particle mesh Ewald summation
 EPUCLC Subroutine
 EREAL Subroutine
 "ereal" evaluates the real space portion of the regular Ewald summation energy
due to atomic multipole interactions and dipole polarizability
 EREAL1 Subroutine
 "ereal1" evaluates the real space portion of the regular Ewald summation
energy and gradient due to atomic multipole interactions and dipole polarizability
 ERECIP Subroutine
 "erecip" evaluates the reciprocal space portion of the regular Ewald summation
energy due to atomic multipole interactions and dipole polarizability
 ERECIP1 Subroutine
 "erecip1" evaluates the reciprocal space portion of the regular Ewald
summation energy and gradient due to atomic multipole interactions and dipole
polarizability
 ERF Function
 "erf" computes a numerical approximation to the value of the error function
via a Chebyshev approximation
 ERFC Function
 "erfc" computes a numerical approximation to the value of the complementary
error function via a Chebyshev approximation
 ERFCORE Subroutine
 "erfcore" evaluates erf(x) or erfc(x) for a real argument x; when called with
mode set to 0 it returns erf, a mode of 1 returns erfc; uses rational functions
that approximate erf(x) and erfc(x) to at least 18 significant decimal digits
 ERFIK Subroutine
 ERFINV Function
 "erfinv" evaluates the inverse of the error function erf for a real argument
in the range (1,1) using a rational function approximation followed by cycles of
NewtonRaphson correction
 ERROR Subroutine
 "error" is the error handling routine for the Connolly surface area and volume
computation
 ERXNFLD Subroutine
 "erxnfld" calculates the macroscopic reaction field energy
 ERXNFLD1 Subroutine
 "erxnfld1" calculates the macroscopic reaction field energy and derivatives
with respect to Cartesian coordinates
 ERXNFLD2 Subroutine
 "erxnfld2" calculates second derivatives of the macroscopic reaction field
energy for a single atom at a time
 ERXNFLD3 Subroutine
 "erxnfld3" calculates the macroscopic reaction field energy, and also
partitions the energy among the atoms
 ESOLV Subroutine
 "esolv" calculates the continuum solvation energy via either the Eisenberg
McLachlan ASP model, OoiScheraga SASA model, various GB/SA methods or the ACE
model
 ESOLV1 Subroutine
 "esolv1" calculates the continuum solvation energy and first derivatives with
respect to Cartesian coordinates using either the EisenbergMcLachlan ASP, Ooi
Scheraga SASA or various GB/SA solvation models
 ESOLV2 Subroutine
 "esolv2" calculates second derivatives of the continuum solvation energy using
either the EisenbergMcLachlan ASP, OoiScheraga SASA or various GB/SA solvation
models
 ESOLV3 Subroutine
 "esolv3" calculates the continuum solvation energy using either the Eisenberg
McLachlan ASP model, OoiScheraga SASA model, various GB/SA methods or the ACE model;
also partitions the energy among the atoms
 ESTRBND Subroutine
 "estrbnd" calculates the stretchbend potential energy
 ESTRBND1 Subroutine
 "estrbnd1" calculates the stretchbend potential energy and first derivatives
with respect to Cartesian coordinates
 ESTRBND2 Subroutine
 "estrbnd2" calculates the stretchbend potential energy second derivatives
with respect to Cartesian coordinates
 ESTRBND3 Subroutine
 "estrbnd3" calculates the stretchbend potential energy; also partitions the
energy among the atoms
 ESTRTOR Subroutine
 "estrtor" calculates the stretchtorsion potential energy
 ESTRTOR1 Subroutine
 "estrtor1" calculates the stretchtorsion energy and first derivatives with
respect to Cartesian coordinates
 ESTRTOR2 Subroutine
 "estrtor2" calculates the stretchtorsion potential energy second derivatives
with respect to Cartesian coordinates
 ESTRTOR3 Subroutine
 "estrtor3" calculates the stretchtorsion potential energy; also partitions
the energy terms among the atoms
 ETORS Subroutine
 "etors" calculates the torsional potential energy
 ETORS1 Subroutine
 "etors1" calculates torsional potential energy and first derivatives with
respect to Cartesian coordinates
 ETORS2 Subroutine
 "etors2" calculates second derivatives of the torsional energy for a single
atom
 ETORS3 Subroutine
 "etors3" calculates the torsional potential energy; also partitions the energy
terms among the atoms
 EUREY Subroutine
 "eurey" calculates the UreyBradley 13 interaction energy
 EUREY1 Subroutine
 "eurey1" calculates the UreyBradley interaction energy and its first
derivatives with respect to Cartesian coordinates
 EUREY2 Subroutine
 "eurey2" calculates second derivatives of the UreyBradley interaction energy
for a single atom at a time
 EUREY3 Subroutine
 "eurey3" calculates the UreyBradley energy; also partitions the energy among
the atoms
 EWALDCOF Subroutine
 "ewaldcof" finds a value of the Ewald coefficient such that all terms beyond
the specified cutoff distance will have an value less than a specified tolerance
 EXPLORE Subroutine
 "explore" uses simulated annealing on an initial crude embedded distance
geoemtry structure to refine versus the bound, chirality, planarity and torsional
error functions
 EXTRA Subroutine
 "extra" calculates any additional user defined potential energy contribution
 EXTRA1 Subroutine
 "extra1" calculates any additional user defined potential energy contribution
and its first derivatives
 EXTRA2 Subroutine
 "extra2" calculates second derivatives of any additional user defined
potential energy contribution for a single atom at a time
 EXTRA3 Subroutine
 "extra3" calculates any additional user defined potential contribution and
also partitions the energy among the atoms
 FATAL Subroutine
 "fatal" terminates execution due to a user request, a severe error or some
other nonstandard condition
 FFTBACK Subroutine
 FFTFRONT Subroutine
 FFTSETUP Subroutine
 FIELD Subroutine
 "field" sets the force field potential energy functions from a parameter file
and modifications specified in a keyfile
 FINAL Subroutine
 "final" performs any final program actions, prints a status message, and then
pauses if necessary to avoid killing the execution window
 FINDATM Subroutine
 "findatm" locates a specific PDB atom name type within a range of atoms from
the PDB file, returns zero if the name type was not found
 FIXPDB Subroutine
 "fixpdb" corrects problems with the AMBER and CHARMM PDB files by converting
atom names to the PDB standards
 FRACDIST Subroutine
 "fracdist" computes a normalized distribution of the pairwise fractional
distances between the smoothed upper and lower bounds
 FREEUNIT Function
 "freeunit" finds an unopened Fortran I/O unit and returns its numerical value
from 1 to 99; the units already assigned to "input" and "iout" (usually 5 and 6)
are skipped since they have special meaning as the default I/O units
 GAMMLN Function
 "gammln" uses a series expansion due to Lanczos to compute the natural
logarithm of the Gamma function at "x" in [0,1]
 GDA Program
 "gda" implements Gaussian Density Annealing (GDA) algorithm for global
optimization via simulated annealing
 GDA1 Function
 GDA2 Function
 GDA3 Subroutine
 GDASTAT Subroutine
 GENDOT Subroutine
 "gendot" finds the coordinates of a specified number of surface points for a
sphere with the input radius and coordinate center
 GEODESIC Subroutine
 "geodesic" smooths the upper and lower distance bounds via the triangle
inequality using a sparse matrix version of a shortest path algorithm
 GEOMETRY Function
 "geometry" finds the value of the interatomic distance, angle or dihedral
angle defined by two to four input atoms
 GETHYDRO Subroutine
 "gethydro" finds the side chain hydrogen atoms for a single amino acid residue
and copies the names and coordinates to the Protein Data Bank file
 GETIME Subroutine
 "getime" gets elapsed CPU time in seconds for an interval
 GETINT Subroutine
 "getint" asks for an internal coordinate file name, then reads the internal
coordinates and computes Cartesian coordinates
 GETKEY Subroutine
 "getkey" finds a valid keyfile and stores its contents as line images for
subsequent keyword parameter searching
 GETMOL2 Subroutine
 "getmol2" asks for a Sybyl MOL2 molecule file name, then reads the coordinates
from the file
 GETNUMB Subroutine
 "getnumb" searchs an input string from left to right for an integer and puts
the numeric value in "number"; returns zero with "next" unchanged if no integer
value is found
 GETPDB Subroutine
 "getpdb" asks for a Protein Data Bank file name, then reads in the coordinates
file
 GETPRB Subroutine
 "getprb" tests for a possible probe position at the interface between three
neighboring atoms
 GETPRM Subroutine
 "getprm" finds the potential energy parameter file and then opens and reads
the parameters
 GETREF Subroutine
 "getref" copies structure information from the reference area into the
standard variables for the current system structure
 GETSEQ Subroutine
 "getseq" asks the user for the amino acid sequence and torsional angle values
needed to define a peptide
 GETSEQN Subroutine
 "getseqn" asks the user for the nucleotide sequence and torsional angle values
needed to define a nucleic acid
 GETSIDE Subroutine
 "getside" finds the side chain heavy atoms for a single amino acid residue and
copies the names and coordinates to the Protein Data Bank file
 GETSTRING Subroutine
 "getstring" searchs for a quoted text string within an input character string;
the region between the first and second quotes is returned as the "text"; if the
actual text is too long, only the first part is returned
 GETTEXT Subroutine
 "gettext" searchs an input string for the first string of nonblank
characters; the region from a nonblank character to the first blank space is
returned as "text"; if the actual text is too long, only the first part is
returned
 GETTOR Subroutine
 "gettor" tests for a possible torus position at the interface between two
atoms, and finds the torus radius, center and axis
 GETWORD Subroutine
 "getword" searchs an input string for the first alphabetic character (AZ or
az); the region from this first character to the first blank space or comma is
returned as a "word"; if the actual word is too long, only the first part is
returned
 GETXYZ Subroutine
 "getxyz" asks for a Cartesian coordinate file name, then reads in the
coordinates file
 GRADIENT Subroutine
 "gradient" calls subroutines to calculate the potential energy and first
derivatives with respect to Cartesian coordinates
 GRADRGD Subroutine
 "gradrgd" calls subroutines to calculate the potential energy and first
derivatives with respect to rigid body coordinates
 GRADROT Subroutine
 "gradrot" calls subroutines to calculate the potential energy and its
torsional first derivatives
 GRAFIC Subroutine
 "grafic" outputs the upper & lower triangles and diagonal of a square
matrix in a schematic form for visual inspection
 GROUPS Subroutine
 "groups" tests a set of atoms to see if all are members of a single atom group
or a pair of atom groups; if so, then the correct intra or intergroup weight is
assigned
 GYRATE Subroutine
 "gyrate" computes the radius of gyration of a molecular system from its atomic
coordinates
 HANGLE Subroutine
 "hangle" constructs hybrid angle bending parameters given an initial state,
final state and "lambda" value
 HATOM Subroutine
 "hatom" assigns a new atom type to each hybrid site
 HBOND Subroutine
 "hbond" constructs hybrid bond stretch parameters given an initial state,
final state and "lambda" value
 HCHARGE Subroutine
 "hcharge" constructs hybrid charge interaction parameters given an initial
state, final state and "lambda" value
 HDIPOLE Subroutine
 "hdipole" constructs hybrid dipole interaction parameters given an initial
state, final state and "lambda" value
 HESSIAN Subroutine
 "hessian" calls subroutines to calculate the Hessian elements for each atom in
turn with respect to Cartesian coordinates
 HESSRGD Subroutine
 "hessrgd" computes the numerical Hessian elements with respect to rigid body
coordinates; either the full matrix or just the diagonal can be calculated; the
full matrix needs 6*ngroup+1 gradient evaluations while the diagonal requires just
two gradient calls
 HESSROT Subroutine
 "hessrot" computes the numerical Hessian elements with respect to torsional
angles; either the full matrix or just the diagonal can be calculated; the full
matrix needs nomega+1 gradient evaluations while the diagonal requires just two
gradient calls
 HIMPTOR Subroutine
 "himptor" constructs hybrid improper torsional parameters given an initial
state, final state and "lambda" value
 HSTRBND Subroutine
 "hstrbnd" constructs hybrid stretchbend parameters given an initial state,
final state and "lambda" value
 HSTRTOR Subroutine
 "hstrtor" constructs hybrid stretchtorsion parameters given an initial state,
final state and "lambda" value
 HTORS Subroutine
 "htors" constructs hybrid torsional parameters for a given initial state,
final state and "lambda" value
 HVDW Subroutine
 "hvdw" constructs hybrid van der Waals parameters given an initial state,
final state and "lambda" value
 HYBRID Subroutine
 "hybrid" constructs the hybrid hamiltonian for a specified initial state,
final state and mutation parameter "lambda"
 IJK_PT Subroutine
 IMAGE Subroutine
 "image" takes the components of pairwise distance between two points in the
same or neighboring periodic boxes and converts to the components of the minimum
image distance
 IMPOSE Subroutine
 "impose" performs the least squares best superposition of two atomic
coordinate sets via a quaternion method; upon return, the first coordinate set is
unchanged while the second set is translated and rotated to give best fit; the
final root mean square fit is returned in "rmsvalue"
 INDUCE Subroutine
 "induce" computes the induced dipole moment at each polarizable site due to
direct or mutual polarization
 INDUCE0A Subroutine
 "induce0a" computes the induced dipole moment at each polarizable site using a
pairwise double loop
 INDUCE0B Subroutine
 "induce0b" computes the induced dipole moment at each polarizable site using a
regular Ewald summation
 INEDGE Subroutine
 "inedge" inserts a concave edge into the linked list for its temporary torus
 INERTIA Subroutine
 "inertia" computes the principal moments of inertia for the system, and
optionally translates the center of mass to the origin and rotates the principal
axes onto the global axes
 INITER Function
 "initer" is the initial error function and derivatives for a distance geometry
embedding; it includes components from the local geometry and torsional restraint
errors
 INITIAL Subroutine
 "initial" sets up original values for some parameters and variables that might
not otherwise get initialized
 INITPRM Subroutine
 "initprm" completely initializes a force field by setting all values to zero
prior to reading in a parameter set
 INITRES Subroutine
 "initres" sets names for biopolymer residue types used in PDB file conversion
and automated generation of structures
 INITROT Subroutine
 "initrot" asks for torsional angles which are to be rotated in subsequent
computation, it will automatically locate all rotatable single bonds if desired;
assumes that an appropriate internal coordinates file has already been read in
 INSERT Subroutine
 "insert" adds the specified atom to the Cartesian coordinates list and shifts
the remaining atoms
 INTEDIT Program
 "intedit" allows the user to extract information from or alter the values
within an internal coordinates file
 INTXYZ Program
 "intxyz" takes as input an internal coordinates file, converts to and then
writes out Cartesian coordinates
 INVBETA Function
 "invbeta" computes the inverse Beta distribution function via a combination of
Newton iteration and bisection search
 INVERT Subroutine
 "invert" inverts a matrix using the GaussJordan method
 IPEDGE Subroutine
 "ipedge" inserts convex edge into linked list for atom
 JACOBI Subroutine
 "jacobi" performs a matrix diagonalization of a real symmetric matrix by the
method of Jacobi rotations
 KANGANG Subroutine
 "kangang" assigns the parameters for angleangle cross term interactions and
processes new or changed parameter values
 KANGLE Subroutine
 "kangle" assigns the force constants and ideal angles for the bond angles;
also processes new or changed parameters
 KATOM Subroutine
 "katom" assigns an atom type definitions to each atom in the structure and
processes any new or changed values
 KBOND Subroutine
 "kbond" assigns a force constant and ideal bond length to each bond in the
structure and processes any new or changed parameter values
 KCHARGE Subroutine
 "kcharge" assigns partial charges to the atoms within the structure and
processes any new or changed values
 KDIPOLE Subroutine
 "kdipole" assigns bond dipoles to the bonds within the structure and processes
any new or changed values
 KENEG Subroutine
 "keneg" applies primary and secondary electronegativity bond length
corrections to applicable bond parameters
 KEWALD Subroutine
 "kewald" assigns both regular Ewald summation and particle mesh Ewald
parameters for a periodic box
 KIMPROP Subroutine
 "kimprop" assigns potential parameters to each improper dihedral in the
structure and processes any changed values
 KIMPTOR Subroutine
 "kimptor" assigns torsional parameters to each improper torsion in the
structure and processes any changed values
 KMETAL Subroutine
 "kmetal" assigns ligand field parameters to transition metal atoms and
processes any new or changed parameter values
 KMPOLE Subroutine
 "kmpole" assigns atomic multipole moments to the atoms of the structure and
processes any new or changed values
 KOPBEND Subroutine
 "kopbend" assigns the force constants for outofplane bending at trigonal
centers via Wilson DeciusCross angle bends; also processes any new or changed
parameter values
 KOPDIST Subroutine
 "kopdist" assigns the force constants for outofplane distance at trigonal
centers via the central atom height; also processes any new or changed parameter
values
 KORBIT Subroutine
 "korbit" assigns piorbital parameters to conjugated systems and processes any
new or changed parameters
 KPOLAR Subroutine
 "kpolar" assigns atomic dipole polarizabilities to the atoms within the
structure and processes any new or changed values
 KSOLV Subroutine
 "ksolv" assigns continuum solvation energy parameters for the Eisenberg
McLachlan ASP, OoiScheraga SASA or various GB/SA solvation models
 KSTRBND Subroutine
 "kstrbnd" assigns the parameters for the stretchbend interactions and
processes new or changed parameter values
 KSTRTOR Subroutine
 "kstrtor" assigns stretchtorsion parameters to torsions needing them, and
processes any new or changed values
 KTORS Subroutine
 "ktors" assigns torsional parameters to each torsion in the structure and
processes any new or changed values
 KUREY Subroutine
 "kurey" assigns the force constants and ideal distances for the UreyBradley
13 interactions; also processes any new or changed parameter values
 KVDW Subroutine
 "kvdw" assigns the parameters to be used in computing the van der Waals
interactions and processes any new or changed values for these parameters
 LATTICE Subroutine
 "lattice" stores the periodic box dimensions and sets angle values to be used
in computing fractional coordinates
 LBFGS Subroutine
 "lbfgs" is a limited memory BFGS quasinewton nonlinear optimization routine
 LBFGS1 Subroutine
 LBFGS2 Subroutine
 LIGHTS Subroutine
 "lights" computes the set of nearest neighbor interactions using the method of
lights algorithm
 LMSTEP Subroutine
 "lmstep" computes the LevenbergMarquardt step during a nonlinear least
squares calculation; this version is based upon ideas from the Minpack routine
LMPAR together with with the internal doubling strategy of Dennis and Schnabel
 LOCALMIN Subroutine
 "localmin" is used during normal mode local search to perform a Cartesian
coordinate energy minimization
 LOCALRGD Subroutine
 "localrgd" is used during the PSS local search procedure to perform a rigid
body energy minimization
 LOCALROT Subroutine
 "localrot" is used during the PSS local search procedure to perform a
torsional space energy minimization
 LOCERR Function
 "locerr" is the local geometry error function and derivatives including the 1
2, 13 and 14 distance bound restraints
 LOWCASE Subroutine
 "lowcase" converts a text string to all lower case letters
 MAJORIZE Subroutine
 "majorize" refines the projected coordinates by attempting to minimize the
least square residual between the trial distance matrix and the distances computed
from the coordinates
 MAKE27 Subroutine
 "make27" replicates the coordinates of a single unit cell to give a full block
of 27 (3x3x3 cube) unit cells
 MAKEINT Subroutine
 "makeint" converts Cartesian to internal coordinates where selection of
internal coordinates is controlled by "mode"
 MAKEPDB Subroutine
 "makexyz" converts a set of Cartesian coordinates to Protein Data Bank format
with special handling for systems consisting of polypeptide chains, ligands and
water molecules
 MAKEREF Subroutine
 "makeref" copies the information contained in the "xyz" file of the current
structure into corresponding reference areas
 MAKEXYZ Subroutine
 "makexyz" generates a complete set of Cartesian coordinates for a full
structure from the internal coordinate values
 MAPCHECK Subroutine
 "mapcheck" checks the current minimum energy structure for possible addition
to the master list of local minima
 MAXWELL Function
 "maxwell" returns a speed in Angstroms/picosecond randomly selected from a 3D
Maxwell Boltzmann distribution for the specified particle mass and system
temperature
 MDINIT Subroutine
 "mdinit" initializes the velocities and accelerations for a molecular dynamics
trajectory, including restarts
 MDREST Subroutine
 "mdrest" computes and then removes any translational or rotational kinetic
energy of the center of mass
 MDSAVE Subroutine
 "mdsave" writes molecular dynamics trajectory snapshots and auxiliary files
with velocity and induced dipole information; also checks for user requested
termination of a simulation
 MDSTAT Subroutine
 "mdstat" is called at each molecular dynamics time step to form statistics on
various average values and fluctuations, and to periodically save the state of the
trajectory
 MEASFN Subroutine
 MEASFP Subroutine
 MEASFS Subroutine
 MEASPM Subroutine
 "measpm" computes the volume of a single prism section of the full interior
polyhedron
 MECHANIC Subroutine
 "mechanic" sets up needed parameters for the potential energy calculation and
reads in many of the user selectable options
 MERGE Subroutine
 "merge" combines the reference and current structures into a single new
"current" structure containing the reference atoms followed by the atoms of the
current structure
 METRIC Subroutine
 "metric" takes as input the trial distance matrix and computes the metric
matrix of all possible dot products between the atomic vectors and the center of
mass using the law of cosines and the following formula for the distances to the
center of mass:
 MIDERR Function
 "miderr" is the secondary error function and derivatives for a distance
geometry embedding; it includes components from the distance bounds, local
geometry, chirality and torsional restraint errors
 MINIMIZ1 Function
 "minimiz1" is a service routine that computes the energy and gradient for a
low storage BFGS optimization in Cartesian coordinate space
 MINIMIZE Program
 "minimize" performs energy minimization in Cartesian coordinate space using a
low storage BFGS nonlinear optimization
 MINIROT Program
 "minirot" performs an energy minimization in torsional angle space using a low
storage BFGS nonlinear optimization
 MINIROT1 Function
 "minirot1" is a service routine that computes the energy and gradient for a
low storage BFGS nonlinear optimization in torsional angle space
 MINPATH Subroutine
 "minpath" is a routine for finding the triangle smoothed upper and lower
bounds of each atom to a specified root atom using a sparse variant of the
BellmanFord shortest path algorithm
 MINRIGID Program
 "minrigid" performs an energy minimization of rigid body atom groups using a
low storage BFGS nonlinear optimization
 MINRIGID1 Function
 "minrigid1" is a service routine that computes the energy and gradient for a
low storage BFGS nonlinear optimization of rigid bodies
 MMID Subroutine
 "mmid" implements a modified midpoint method to advance the integration of a
set of first order differential equations
 MODECART Subroutine
 MODESRCH Subroutine
 MODETORS Subroutine
 MODETORS Subroutine
 MODULI Subroutine
 "moduli" sets the moduli of the inverse discrete Fourier transform of the B
splines; bsmod[13] hold these values, nfft[13] are the grid dimensions, order is
the order of Bspline approximation
 MOLECULE Subroutine
 "molecule" counts the molecules, assigns each atom to its molecule and
computes the mass of each molecule
 MOMENTS Subroutine
 "moments" computes the net electric charge and dipole moment for the entire
system as a sum over partial charges, bond dipoles and atomic multipole moments
 MUTATE Subroutine
 "mutate" constructs the hybrid hamiltonian for a specified initial state,
final state and mutation parameter "lambda"
 NEIGHBOR Subroutine
 "neighbor" finds all of the neighbors of each atom
 NEWATM Subroutine
 "newatm" creates and defines an atom needed for the Cartesian coordinates
file, but which may not present in the original Protein Data Bank file
 NEWTON Program
 "newton" performs an energy minimization in Cartesian coordinate space using a
truncated Newton method
 NEWTON1 Function
 "newton1" is a service routine that computes the energy and gradient for
truncated Newton optimization in Cartesian coordinate space
 NEWTON2 Subroutine
 "newton2" is a service routine that computes the sparse matrix Hessian
elements for truncated Newton optimization in Cartesian coordinate space
 NEWTROT Program
 "newtrot" performs an energy minimization in torsional angle space using a
truncated Newton conjugate gradient method
 NEWTROT1 Function
 "newtrot1" is a service routine that computes the energy and gradient for
truncated Newton conjugate gradient optimization in torsional angle space
 NEWTROT2 Subroutine
 "newtrot2" is a service routine that computes the sparse matrix Hessian
elements for truncated Newton optimization in torsional angle space
 NEXTARG Subroutine
 "nextarg" finds the next unused command line argument and returns it in the
input character string
 NEXTTEXT Function
 "nexttext" finds and returns the location of the first nonblank character
within an input text string; zero is returned if no such character is found
 NORMAL Function
 "normal" generates a random number from a normal Gaussian distribution with a
mean of zero and a variance of one
 NUCBASE Subroutine
 "nucbase" builds the side chain for a single nucleotide base in terms of
internal coordinates
 NUCCHAIN Subroutine
 "nucchain" builds up the internal coordinates for a nucleic acid sequence from
the sugar type, backbone and glycosidic torsional values
 NUCLEIC Program
 "nucleic" builds the internal and Cartesian coordinates of a polynucleotide
from nucleic acid sequence and torsional angle values for the nucleic acid
backbone and side chains
 NUMBER Function
 "number" converts a text numeral into an integer value; the input string must
contain only numeric characters
 NUMERAL Subroutine
 "numeral" converts an input integer number into the corresponding right or
leftjustified text numeral NUMGRAD Subroutine
 "numgrad" computes the gradient of the objective function "fvalue" with
respect to Cartesian coordinates of the atoms via a twosided numerical
differentiation
 OCVM Subroutine
 "ocvm" is an optimally conditioned variable metric nonlinear optimization
routine without line searches
 OLDATM Subroutine
 "oldatm" get the Cartesian coordinates for an atom from the Protein Data Bank
file, then assigns the atom type and atomic connectivities
 OPTIMIZ1 Function
 "optimiz1" is a service routine that computes the energy and gradient for
optimally conditioned variable metric optimization in Cartesian coordinate space
 OPTIMIZE Program
 "optimize" performs energy minimization in Cartesian coordinate space using an
optimally conditioned variable metric method
 OPTIROT Program
 "optirot" performs an energy minimization in torsional angle space using an
optimally conditioned variable metric method
 OPTIROT1 Function
 "optirot1" is a service routine that computes the energy and gradient for
optimally conditioned variable metric optimization in torsional angle space
 OPTRIGID Program
 "optrigid" performs an energy minimization of rigid body atom groups using an
optimally conditioned variable metric method
 OPTRIGID1 Function
 "optrigid1" is a service routine that computes the energy and gradient for
optimally conditioned variable metric optimization of rigid bodies
 ORBITAL Subroutine
 "orbital" finds and organizes lists of atoms in a pisystem, bonds connecting
pisystem atoms and torsions whose two central atoms are both pisystem atoms
 ORIENT Subroutine
 "orient" computes a set of reference Cartesian coordinates in standard
orientation for each rigid body atom group
 ORTHOG Subroutine
 "orthog" performs an orthogonalization of an input matrix via the modified
GramSchmidt algorithm
 OVERLAP Subroutine
 "overlap" computes the overlap for two parallel porbitals given the atomic
numbers and distance of separation
 PASSB Subroutine
 PASSB2 Subroutine
 PASSB3 Subroutine
 PASSB4 Subroutine
 PASSB5 Subroutine
 PASSF Subroutine
 PASSF2 Subroutine
 PASSF3 Subroutine
 PASSF4 Subroutine
 PASSF5 Subroutine
 PATH Program
 "path" locates a series of structures equally spaced along a conformational
pathway connecting the input reactant and product structures; a series of
constrained optimizations orthogonal to the path is done via Lagrangian
multipliers
 PATH1 Function
 PATHPNT Subroutine
 "pathpnt" finds a structure on the synchronous transit path with the specified
path value "t"
 PATHSCAN Subroutine
 "pathscan" makes a scan of a synchronous transit pathway by computing
structures and energies for specific path values
 PATHVAL Subroutine
 "pathval" computes the synchronous transit path value for the specified
structure
 PDBATM Subroutine
 "pdbatm" adds an atom to the Protein Data Bank file
 PDBXYZ Program
 "pdbxyz" takes as input a Protein Data Bank file and then converts to and
writes out a Cartesian coordinates file and, for polypeptides, a sequence file
 PIALTER Subroutine
 "pialter" first modifies bond lengths and force constants according to the
standard bond slope parameters and the bond order values stored in "pnpl"; also
alters some 2fold torsional parameters based on the bondorder * beta matrix
 PIMOVE Subroutine
 "pimove" rotates the vector between atoms "list(1)" and "list(2)" so that atom
1 is at the origin and atom 2 along the xaxis; the atoms defining the respective
planes are also moved and their bond lengths normalized
 PIPLANE Subroutine
 "piplane" selects the three atoms which specify the plane perpendicular to
each porbital; the current version will fail in certain situations, including
ketenes, allenes, and isolated or adjacent triple bonds
 PISCF Subroutine
 "piscf" performs an scf molecular orbital calculation for the pisystem using a
modified PariserParrPople method
 PITILT Subroutine
 "pitilt" calculates for each pibond the ratio of the actual porbital overlap
integral to the ideal overlap if the same orbitals were perfectly parallel
 PLACE Subroutine
 "place" finds the probe sites by putting the probe sphere tangent to each
triple of neighboring atoms
 POLYP Subroutine
 POTNRG Function
 POTOFF Subroutine
 "potoff" clears the forcefield definition by turning off the use of each of
the potential energy functions
 POWER Subroutine
 "power" uses the power method with deflation to compute the few largest
eigenvalues and eigenvectors of a symmetric matrix
 PRECISE Function
 "precise" finds one of three machine precision values
 PRECOND Subroutine
 "precond" solves a simplified version of the Newton equations Ms = r, and uses
the result to precondition linear conjugate gradient iterations on the full Newton
equations in "tnsolve"
 PRESSURE Subroutine
 "pressure" uses the internal virial to find the pressure in a periodic box and
maintains a constant desired pressure by scaling the coordinates via coupling to
an external constant pressure bath
 PRMKEY Subroutine
 "field" parses a text string to extract keywords related to force field
potential energy functional forms and constants
 PROCHAIN Subroutine
 "prochain" builds up the internal coordinates for an amino acid sequence from
the phi, psi, omega and chi values
 PROJCT Subroutine
 PROMO Subroutine
 "promo" writes a short message containing info about the TINKER program
package and the copyright notice
 PROPERTY Function
 "property" takes two input snapshot frames and computes the value of the
property for which the correlation function is being accumulated
 PROSIDE Subroutine
 "proside" builds the side chain for a single amino acid residue in terms of
internal coordinates
 PROTEIN Program
 "protein" builds the internal and Cartesian coordinates of a polypeptide from
amino acid sequence and torsional angle values for the peptide backbone and side
chains
 PRTDYN Subroutine
 "prtdyn" writes out the information needed to restart a molecular dynamics
trajectory to an external disk file
 PRTERR Subroutine
 "prterr" writes out a set of coordinates to a disk file prior to aborting on a
serious error
 PRTINT Subroutine
 "prtint" writes out a set of Zmatrix internal coordinates to an external disk
file
 PRTMOL2 Program
 "prtmol2" writes out a set of coordinates in Sybyl MOL2 format to an external
disk file
 PRTMSI Subroutine
 "prtmsi" writes out a set of Cartesian coordinates for all active atoms in the
MSI Insight II archive format
 PRTPDB Subroutine
 "prtpdb" writes out a set of Protein Data Bank coordinates to an external disk
file
 PRTPRM Subroutine
 "prtprm" writes out a formatted listing of the default set of potential energy
parameters for a force field
 PRTSEQ Subroutine
 "prtseq" writes out a biopolymer sequence to an external disk file with 50
residues per line and distinct chains separated by blank lines
 PRTXMOL Subroutine
 "prtxmol" writes out a set of Cartesian coordinates for all active atoms in a
simple, generic XYZ format originally due to the XMOL program
 PRTXYZ Subroutine
 "prtxyz" writes out a set of Cartesian coordinates to an external disk file
 PSS Program
 "pss" implements the potential smoothing plus search method for global
optimization in Cartesian coordinate space with local searches performed in
Cartesian or torsional space
 PSS1 Function
 "pss1" is a service routine that computes the energy and gradient during PSS
global optimization in Cartesian coordinate space
 PSS2 Subroutine
 "pss2" is a service routine that computes the sparse matrix Hessian elements
during PSS global optimization in Cartesian coordinate space
 PSSMIN Subroutine
 "pssmin" is used during the potential smoothing and search procedure to
perform a local optimization at the current smoothing level
 PSSRGD1 Function
 "pssrgd1" is a service routine that computes the energy and gradient during
PSS global optimization over rigid bodies
 PSSRIGID Program
 "pssrigid" implements the potential smoothing plus search method for global
optimization for a set of rigid bodies
 PSSROT Program
 "pssrot" implements the potential smoothing plus search method for global
optimization in torsional space
 PSSROT1 Function
 "pssrot1" is a service routine that computes the energy and gradient during
PSS global optimization in torsional space
 PSSWRITE Subroutine
 PSSWRITE Subroutine
 PTINCY Function
 PZEXTR Subroutine
 QRFACT Subroutine
 "qrfact" performs Householder transformations with column pivoting (optional)
to compute a QR factorization of the m by n matrix a; the routine determines an
orthogonal matrix q, a permutation matrix p, and an upper trapezoidal matrix r
with diagonal elements of nonincreasing magnitude, such that a*p = q*r; the
Householder transformation for column k, k = 1,2,...,min(m,n), is of the form
 QRSOLVE Subroutine
 "qrsolve" solves a*x=b and d*x=0 in the least squares sense; normally used in
combination with routine "qrfact" to solve least squares problems
 QUATFIT Subroutine
 "quatfit" uses a quaternionbased method to achieve the best fit superposition
of two sets of coordinates RADIAL Program
 "radial" finds the radial distribution function for a specified pair of atom
types via analysis of a set of stored coordinate frames from a liquid simulation
 RANDOM Function
 "random" generates a random number on [0,1] via a long period generator due to
L'Ecuyer with BaysDurham shuffle
 RANVEC Subroutine
 "ranvec" generates a unit vector in 3dimensional space with uniformly
distributed random orientation
 RATTLE Subroutine
 "rattle" implements the first portion of the rattle algorithm by correcting
atomic positions and halfstep velocities to maintain constrained interatomic
distances
 RATTLE2 Subroutine
 "rattle2" implements the second portion of the rattle algorithm by correcting
the fullstep velocities in order to maintain constrained interatomic distances
 READBLK Subroutine
 "readblk" reads in a set of snapshot frames and transfers the values to
internal arrays for use in the computation of time correlation functions
 READDYN Subroutine
 "readdyn" get the positions, velocities and accelerations for a molecular
dynamics restart from an external disk file
 READINT Subroutine
 "readint" gets a set of Zmatrix internal coordinates from an external file
 READMOL2 Subroutine
 "readmol2" gets a set of Sybyl MOL2 coordinates from an external disk file
 READPDB Subroutine
 "readpdb" gets a set of Protein Data Bank coordinates from an external disk
file
 READPRM Subroutine
 "readprm" processes the potential energy parameter file in order to define the
default force field parameters
 READSEQ Subroutine
 "readseq" gets a biopolymer sequence containing one or more separate chains
from an external file; all lines containing sequence must begin with the starting
sequence number, the actual sequence is read from subsequent nonblank characters
 READXYZ Subroutine
 "readxyz" gets a set of Cartesian coordinates from an external disk file
 REFINE Subroutine
 "refine" performs minimization of the atomic coordinates of an initial crude
embedded distance geometry structure versus the bound, chirality, planarity and
torsional error functions
 REPLICA Subroutine
 "replica" decides between images and replicates for generation of periodic
boundary conditions, and sets the cell replicate list if the replicates method is
to be used
 RESTRAIN Subroutine
 "restrain" defines any geometric restraint interaction terms to be included in
the potential energy calculation
 RFINDEX Subroutine
 RGDSRCH Subroutine
 RIBOSOME Subroutine
 "ribosome" translates a polypeptide structure in Protein Data Bank format to a
Cartesian coordinate file and sequence file
 RIGIDXYZ Subroutine
 "rigidxyz" computes Cartesian coordinates for a rigid body group via rotation
and translation of reference coordinates
 RINGS Subroutine
 "rings" searches the structure for small rings and stores their component
atoms; code to remove the reducible rings consisting of smaller rings is commented
in this version since reducible rings are needed for parameter assignment
 RMSERROR Subroutine
 "rmserror" computes the maximum absolute deviation and the rms deviation from
the distance bounds, and the number and rms value of the distance restraint
violations
 RMSFIT Function
 "rmsfit" computes the rms fit of two coordinate sets
 ROTANG Function
 ROTCHECK Function
 "rotcheck" tests a specified candidate rotatable bond for the disallowed case
where inactive atoms are found on both sides of the candidate bond
 ROTEULER Subroutine
 "roteuler" computes a set of Euler angle values consistent with an input
rotation matrix
 ROTLIST Subroutine
 "rotlist" generates the minimum list of all the atoms lying to one side of a
pair of directly bonded atoms; optionally finds the minimal list by choosing the
side with fewer atoms
 ROTMAT Subroutine
 "rotmat" find the rotation matrix that converts from the local coordinate
system at each multipole site to the global system
 ROTPOLE Subroutine
 "rotpole" computes the atomic multipole values in the global coordinate frame
by applying a rotation matrix to a set of locally defined multipoles
 SADDLE Program
 "saddle" finds a transition state between two conformational minima using a
combination of ideas from the synchronous transit (HalgrenLipscomb) and quadratic
path (BellCrighton) methods
 SADDLE1 Function
 SADDLES Subroutine
 "saddles" constructs circles, convex edges and saddle faces
 SCAN Program
 "scan" attempts to find all the local minima on a potential energy surface via
an iterative series of local searches
 SCAN1 Function
 "scan1" is a service routine that computes the energy and gradient during
exploration of a potential energy surface via iterative local search
 SCAN2 Subroutine
 "scan2" is a service routine that computes the sparse matrix Hessian elements
during exploration of a potential energy surface via iterative local search
 SDAREA Subroutine
 "sdarea" scales the atomic friction coefficient of each atom based on its
accessible area during stochastic dynamics
 SDSTEP Subroutine
 "sdstep" performs a single stochastic dynamics time step via a velocity Verlet
integration algorithm
 SDTERM Subroutine
 "sdterm" gets frictional and random force terms needed to update positions and
velocities via stochastic dynamics
 SEARCH Subroutine
 "search" is a line search minimizer based upon parabolic extrapolation and
cubic interpolation using both function and gradient values; if forced to search
in an uphill direction, return is after the initial step
 SETIME Subroutine
 "setime" initializes the elapsed interval CPU timer
 SHAKEUP Subroutine
 "shakeup" initializes any holonomic constraints for use with the rattle
algorithm during molecular dynamics
 SIGMOID Function
 "sigmoid" implements a normalized sigmoidal function on the interval [0,1];
the curves connect (0,0) to (1,1) and have a cooperativity controlled by beta,
they approach a straight line as beta > 0 and get more nonlinear as beta
increases
 SLATER Subroutine
 "slater" is a general routine for computing the overlap integrals between two
Slatertype orbitals
 SMOOTH Subroutine
 "smooth" sets extent of potential surface deformation for use with potential
smoothing plus search, the diffusion equation method or Gaussian density annealing
 SNIFFER Program
 "sniffer" performs a global energy minimization using a discrete version of
Griewank's global search trajectory
 SNIFFER1 Function
 "sniffer1" is a service routine that computes the energy and gradient for the
Sniffer global optimization method
 SOAK Subroutine
 "soak" takes a currently defined solute system and places it into a solvent
box, with removal of any solvent molecules that overlap the solute
 SORT Subroutine
 "sort" takes an input list of integers and sorts it into ascending order using
the Heapsort algorithm
 SORT2 Subroutine
 "sort2" takes an input list of reals and sorts it into ascending order using
the Heapsort algorithm; it also returns a key into the original ordering
 SORT3 Subroutine
 "sort3" takes an input list of integers and sorts it into ascending order
using the Heapsort algorithm; it also returns a key into the original ordering
 SORT4 Subroutine
 "sort4" takes an input list of integers and sorts it into ascending absolute
value using the Heapsort algorithm
 SORT5 Subroutine
 "sort5" takes an input list of integers and sorts it into ascending order
based on each value modulo "m"
 SORT6 Subroutine
 "sort6" takes an input list of character strings and sorts it into
alphabetical order using the Heapsort algorithm
 SORT7 Subroutine
 "sort7" takes an input list of character strings and sorts it into
alphabetical order using the Heapsort algorithm; it also returns a key into the
original ordering
 SPACEFILL Program
 "spacefill" computes the surface area and volume of a structure; the van der
Waals, accessibleexcluded, and contactreentrant definitions are available
 SPECTRUM Program
 "spectrum" computes a power spectrum over a wavelength range from the velocity
autocorrelation as a function of time
 SQUARE Subroutine
 "square" is a nonlinear least squares routine derived from the IMSL routine
BCLSF and More's Minpack routine LMDER; the Jacobian is estimated by finite
differences and bounds can be specified for the variables to be refined
 SUFFIX Subroutine
 "suffix" checks a filename for the presence of an extension, and appends an
extension if none is found
 SUPERPOSE Program
 "superpose" takes two input structures and superimposes them in the optimal
least squares sense; it will attempt to match up all pairs of atoms or just those
specified by the user
 SURFACE Subroutine
 "surface" performs an analytical computation of the weighted solvent
accessible surface area of each atom and the first derivatives of the area with
respect to Cartesian coordinates
 SURFATOM Subroutine
 "surfatom" performs an analytical computation of the surface area of a
specified atom; a simplified version of "surface"
 SWITCH Subroutine
 "switch" sets the coeffcients used by the fifth and seventh order polynomial
switching functions for spherical cutoffs
 SYBYLXYZ Program
 "sybylxyz" takes as input a Sybyl MOL2 coordinates file, converts to and then
writes out Cartesian coordinates
 SYMMETRY Subroutine
 "symmetry" applies symmetry operators to the fractional coordinates of the
asymmetric unit in order to generate the symmetry related atoms of the full unit
cell
 TANGENT Subroutine
 "tangent" finds the projected gradient on the synchronous transit path for a
point along the transit pathway
 TEMPER Subroutine
 "temper" maintains a constant desired temperature by scaling the velocities
via coupling to an external temperature bath
 TESTGRAD Program
 "testgrad" computes and compares the analytical and numerical gradient vectors
of the potential energy function with respect to Cartesian coordinates
 TESTHESS Program
 "testhess" computes and compares the analytical and numerical Hessian matrices
of the potential energy function with respect to Cartesian coordinates
 TESTLIGHT Program
 "testlight" performs a set of timing tests to compare the evaluation of
potential energy and energy/gradient using the method of lights with a double loop
over all atom pairs
 TESTROT Program
 "testrot" computes and compares the analytical and numerical gradient vectors
of the potential energy function with respect to rotatable torsional angles
 TIMER Program
 "timer" measures the CPU time required for file reading and parameter
assignment, potential energy computation, energy and gradient computation, and
Hessian matrix evaluation
 TIMEROT Program
 "timerot" measures the CPU time required for file reading and parameter
assignment, potential energy computation, energy and gradient over torsions, and
torsional angle Hessian matrix evaluation
 TNCG Subroutine
 "tncg" implements a truncated Newton optimization algorithm in which a
preconditioned linear conjugate gradient method is used to approximately solve
Newton's equations; special features include use of an explicit sparse Hessian or
finitedifference gradientHessian products within the PCG iteration; the exact
Newton search directions can be used optionally; by default the algorithm checks
for negative curvature to prevent convergence to a stationary point having
negative eigenvalues; if a saddle point is desired this test can be removed by
disabling "negtest"
 TNSOLVE Subroutine
 "tnsolve" uses a linear conjugate gradient method to find an approximate
solution to the set of linear equations represented in matrix form by Hp = g
(Newton's equations)
 TORPHASE Subroutine
 "torphase" sets the nfold amplitude and phase values for each torsion via
sorting of the input parameters
 TORQUE Subroutine
 "torque" takes the torque values on sites defined by local coordinate frames
and distributes thme to convert to forces on the original sites and sites
specifying the local frames
 TORQUE1 Subroutine
 "torque1" takes the torque value on a site defined by a local coordinate frame
and distributes it to convert to forces on the original site and sites specifying
the local frame
 TORSER Function
 "torser" computes the torsional error function and its first derivatives with
respect to the atomic Cartesian coordinates based on the deviation of specified
torsional angles from desired values, the contained bond angles are also
restrained to avoid a numerical instability
 TORSIONS Subroutine
 "torsions" finds the total number of dihedral angles and the numbers of the
four atoms defining each dihedral angle
 TORUS Subroutine
 "torus" sets a list of all of the temporary torus positions by testing for a
torus between each atom and its neighbors
 TOTERR Function
 "toterr" is the error function and derivatives for a distance geometry
embedding; it includes components from the distance bounds, hard sphere contacts,
local geometry, chirality and torsional restraint errors
 TRANSIT Function
 "transit" evaluates the synchronous transit function and gradient; linear and
quadratic transit paths are available
 TRIANGLE Subroutine
 "triangle" smooths the upper and lower distance bounds via the triangle
inequality using a fullmatrix variant of the FloydWarshall shortest path
algorithm; this routine is usually much slower than the sparse matrix shortest
path methods in "geodesic" and "trifix", and should be used only for comparison
with answers generated by those routines
 TRIFIX Subroutine
 "trifix" rebuilds both the upper and lower distance bound matrices following
tightening of one or both of the bounds between a specified pair of atoms, "p" and
"q", using a modification of Murchland's shortest path update algorithm
 TRIMTEXT Function
 "trimtext" finds and returns the location of the last nonblank character
before the first null character in an input text string; the function returns zero
if no such character is found
 TRIPLE Function
 "triple" finds the triple product of three vectors; used as a service routine
by the Connolly surface area and volume computation
 TRUST Subroutine
 "trust" updates the model trust region for a nonlinear least squares
calculation; this version is based on the ideas found in NL2SOL and in Dennis and
Schnabel's book
 UDIRECT1 Subroutine
 "udirect1" computes the reciprocal space contribution of the permanent atomic
multipole moments to the electrostatic field for use in finding the direct induced
dipole moments via a regular Ewald summation
 UDIRECT2 Subroutine
 "udirect2" computes the real space contribution of the permanent atomic
multipole moments to the electrostatic field for use in finding the direct induced
dipole moments via a regular Ewald summation
 UMUTUAL1 Subroutine
 "umutual1" computes the reciprocal space contribution of the induced atomic
dipole moments to the electrostatic field for use in iterative calculation of
induced dipole moments via a regular Ewald summation
 UMUTUAL2 Subroutine
 "umutual2" computes the real space contribution of the induced atomic dipole
moments to the electrostatic field for use in iterative calculation of induced
dipole moments via a regular Ewald summation
 UNITCELL Subroutine
 "unitcell" gets the periodic boundary box size and related values from an
external keyword file
 UPCASE Subroutine
 "upcase" converts a text string to all upper case letters
 VAM Subroutine
 "vam" takes the analytical molecular surface defined as a collection of
spherical and toroidal polygons and uses it to compute the volume and surface area
 VCROSS Subroutine
 "vcross" finds the cross product of two vectors
 VDWERR Function
 "vdwerr" is the hard sphere van der Waals bound error function and derivatives
that penalizes close nonbonded contacts, pairwise neighbors are generated via the
method of lights
 VECANG Function
 "vecang" finds the angle between two vectors handed with respect to a
coordinate axis; returns an angle in the range [0,2*pi]
 VERLET Subroutine
 "verlet" performs a single molecular dynamics time step by means of the
velocity Verlet multistep recursion formula
 VERSION Subroutine
 "version" checks the name of a file about to be opened; if if "old" status is
passed, the name of the highest current version is returned; if "new" status is
passed the filename of the next available unused version is generated
 VIBRATE Program
 "vibrate" performs a vibrational normal mode analysis; the Hessian matrix of
second derivatives is determined and then diagonalized both directly and after
mass weighting; output consists of the eigenvalues of the force constant matrix as
well as the vibrational frequencies and displacements
 VIBROT Program
 VNORM Subroutine
 "vnorm" normalizes a vector to unit length; used as a service routine by the
Connolly surface area and volume computation
 VOLUME Subroutine
 "volume" calculates the excluded volume via the Connolly analytical volume and
surface area algorithm
 VOLUME1 Subroutine
 "volume1" calculates first derivatives of the total excluded volume with
respect to the Cartesian coordinates of each atom
 VOLUME2 Subroutine
 "volume2" calculates second derivatives of the total excluded volume with
respect to the Cartesian coordinates of the atoms
 WATSON Subroutine
 "watson" uses a rigidbody optimization to approximately align the paired
strands of a nucleic acid double helix
 WATSON1 Function
 "watson1" is a service routine that computes the energy and gradient for
optimally conditioned variable metric optimization of rigid bodies
 WRITEOUT Subroutine
 "writeout" is used by each of the optimization routines to save imtermediate
atomic coordinates to a disk file
 XTALERR Subroutine
 XTALFIT Program
 "xtalfit" computes an optimized set of potential energy parameters for user
specified van der Waals and electrostatic interactions by fitting to crystal
structure, lattice energy and monomer dipole moment data
 XTALLAT1 Function
 "xtalmol1" is a service routine that computes the energy and numerical
gradient with respect to the six lattice lengths and angles for a crystal energy
minimization
 XTALMIN Program
 "xtalmin" performs a full crystal energy minimization by alternating cycles of
truncated Newton optimization over atomic coordinates with variable metric
optimization over the six lattice dimensions and angles
 XTALMOL1 Function
 "xtalmol1" is a service routine that computes the energy and gradient with
respect to the atomic Cartesian coordinates for a crystal energy minimization
 XTALMOL2 Subroutine
 "xtalmol2" is a service routine that computes the sparse matrix Hessian
elements with respect to the atomic Cartesian coordinates for a crystal energy
minimization
 XTALMOVE Subroutine
 XTALPRM Subroutine
 "xtalprm" stores or retrieves a crystal structure; used to make a previously
stored structure the currently active structure, or to store a structure for later
use; only the intermolecular energy terms are provided for
 XTALWRT Subroutine
 XYZATM Subroutine
 "xyzatm" computes the Cartesian coordinates of a single atom from its defining
internal coordinate values
 XYZEDIT Program
 "xyzedit" provides for modification and manipulation of the contents of a
Cartesian coordinates file
 XYZINT Program
 "xyzint" takes as input a Cartesian coordinates file, then converts to and
writes out an internal coordinates file
 XYZPDB Program
 "xyzpdb" takes as input a Cartesian coordinates file, then converts to and
writes out a Protein Data Bank file
 XYZRIGID Subroutine
 "xyzrigid" computes the center of mass and Euler angle rigid body coordinates
for each atom group in the system
 XYZSYBYL Program
 "xyzsybyl" takes as input a Cartesian coordinates file, converts to and then
writes out a Sybyl MOL2 file
 ZATOM Subroutine
 "zatom" adds an atom to the end of the current Zmatrix and then increments
the atom counter; atom type, defining atoms and internal coordinates are passed as
arguments
 ZHELP Subroutine
 "zhelp" prints the general information and instructions for the Zmatrix
editing program "intedit"
 ZVALUE Subroutine
 "zvalue" gets user supplied values for selected coordinates as needed by the
internal coordinate editing program

  
 
 
 
 

