Next: Old Parameter File Format, Previous: Param Files, Up: Param Files

The text format for the parameter file begins with a title, see
Syntactic Glossary, followed by a set of free field commands, and
terminating with the end of the file or an `END` statement.
The purpose of the commands is to fill the various parameter arrays.
The commands are described below:

BOND repeat(word word) FORCe real DISTance real

The `BOND` command adds bond parameters.
The bond energy term for one bond is given by

E_b = k_b (b - b_0)^2

where k_b is the force constant and b_0 is the equilibrium bond length.

The force constant
is given by the `FORCE` keyword and the equilibrium bond length
is given by the `DISTANCE` keyword. Each pair of `words` is treated
as a separate entry in the bond parameter arrays, so it is possible
to specify the same parameters for many bonds.

{ANGLE} repeat(word word word) FORCe real ANGLE real {THETA}

The `ANGLE` command adds angle parameters.
The angle energy term is given by

E_t = k_t (t - t_0)^2

where k_t is the force constant, t is the bond angle, and t_0 is the equilibrium
angle.
Bond angles are defined over triplets of atoms.
The force constant
is given by the `FORCE` keyword and the equilibrium angle
is given by the `ANGLE` keyword. Each triplet of `words` is treated
as a separate entry in the angle parameter arrays, so it is possible
to specify the same parameters for many angles.

{TORSION} repeat(word word word word) repeat(torsion-term) {PHI } torsion-term ::= TERM FORCe real PHASe real PERIod real MULTiplicity int END

The `TORSION` command adds torsion angle parameters.
The torsion angle term has the following form

E_phi = sum_i k_phi_i (1 + cos(n_i phi + delta_i))

where i is over all the terms for one torsion angle, k_(phi_i) is the force constant for the i-th term, m_i is the multiplicity for the i-th term, n_i is the periodicity of the i-th term, delta_i is the phase for the i-th term, and phi is the current value of the torsion angle.

Torsion angles are defined over quadrulets of atoms, and there can be
multiple terms per torsion angle so that complex torsions can be established.
Each term is specified by strings beginning with `TERM` and ending with `END`.
The force constant for each term
is given by the `FORCE` keyword. The phase is given by the `PHASE` keyword.
The periodicity is given by the `PERIOD` keyword, and limited to values of 1, 2, 3, 4, and 6. The multiplicity is given by the `MULTIPLICITY` keyword, and is most
useful in using the AMBER force field, see AMBERPARM.
At least one term must be specified for a torsion angle.
Each quadruplet of `words` is treated
as a separate entry in the torsion parameter arrays, so it is possible
to specify the same parameters for many torsions.

{IMPROPER} repeat(word word word word) FORCe real improper-term {IMPHI } improper-term ::= {PHASe real PERIod real} {MIN real }

The `IMPROPER` command adds improper torsion parameters.
If the dihedral form of improper torsion is selected, the
improper torsion term use the torsion angle term given above.
If the harmonic form of the improper torsion is selected,
then
the improper torsion energy term is given by

E_i = k_i (phi_i - phi_i_0)^2

where k_i is the force constant, phi_i is the improper torsion,
and phi_i_0 is the equilibrium
improper torsion.
Improper torsions are defined over quadruplets of atoms.
The force constant
is given by the `FORCE` keyword.
If the dihedral form of the energy is used,
then the phase and period are given by the `PHASE` and `PERIOD` keywords,
respectively. The multiplicity is set to 1.
If the harmonic form is used, then the equilibrium improper torsion angle
is given by the `MIN` keyword.
Each quadruplet of `words` is treated
as a separate entry in the improper torsion parameter arrays, so it is possible
to specify the same parameters for many improper torsions.

HBOND repeat(word word) {EMIN real RMIN real } {CREPulsive real CATTractive real}

The `HBOND` command adds hydrogen bond parameters.
The form of the hydrogen bond term is given by

E_hb = (C_r / r^12 - C_a / r^10) cos^4(theta_HB)

There are two different ways to calculate hydrogen bond energies. The
form in the old CHARMM potential uses the distance between the heavy atom
attached to the donor hydrogen and the acceptor, and angular term
based on the heavy atom donor, donor hydrogen, acceptor angle.
The form used by the AMBER potential uses the distance between the hydrogen
and the acceptor, and no angle term. The `DEFAULT` command described
below allows you to switch from one form to the other.

There are two ways to specify the two coefficients. They may be specified
directly using `CREPULSIVE` to specify the first coefficient,
and `CATTRACTIVE` for the second. The second way is to specify the minimum
energy, keyword `EMIN`, and minimum energy distance, keyword `RMIN`,
and CONGEN will compute the coefficients for you.

The pairs of `words` in each command specifies pairs of atom type patterns
to be used for setting the coefficients. The first pattern in the pair
gives the atoms types for the donor, being heavy atom or hydrogen. The second
pattern gives the acceptor.

The actual process of setting hydrogen bond parameters is complicated by the requirement for constructing a table of hydrogen bond codes so that hydrogen bond codes can be looked up rapidly. Pseudocode for the operation is as follows:

For Ih = 1 to Number of Hydrogen bond patterns For I = 1 to Number of Atom Types (NATC) If atom_type(I) matches pattern(1,Ih) For J = 1 to NATC If atom_type(J) matches pattern(2,Ih) HBCODE = I*NATC+J-1 if (HBCODE is not in current list of HB codes) add new HBCODE and coefficients. fi fi done fi done done

{NBOND } repeat(word) [EMIN real ] {NONBONDED} [RADIUS real ] [ALPHa real ] [NEFF real ] [CREPulsive real ] [CATTractive real]

The `NBOND` command adds non-bonded energy parameters.
The nonbonded energy function is

Enb = A/r^12 - B/r^6

Non-bonded energy parameters are specified only by atom types, and mixed parameters are specified using the combination rules in the CHARMM paper, see Introduction, for the reference.

In each `NBOND` command, the `word`s are atom type codes.
The options have the following meanings:

`EMIN`- Minimum van der Waals energy (kcal/mole).
`RADIUS`- Van der Waals radius (Angstroms).
`ALPHA`- Atomic Polarizability (cubic Angstroms)
`NEFF`- Number of effective electroncs (dimensionless)
`CREPulsive`- Coefficient A above.
`CATTractive`- Coefficient B above.

The parameters can be specified in three different ways; by the 6-12
coefficients (`CREPULSIVE` and `CATTRACTIVE`, by minimum energy
(`EMIN`) and radius (`RADIUS`), or by radius (`RADIUS`),
number of effective electrons (`NEFF`), and polarizabilities
(`ALPHA`). The program does not check if you overspecify options, so
pick one method and use it consistently.

DEFAULT [IMPRoper [COSIne ] [NOSYmmetry] END] [HARMonic] [SYMMetry ] [HBOND [H-A] END] [D-A] [NBOND [VDW14 real] [EL14 real] [HBEXclude] END] [HBINclude]

The `DEFAULT` command is used to set defaults which pertain
how some of energy terms are calculated. These defaults are set in the
parameter file because the parameters are developed as an integrated whole.
Settings in the `DEFAULT` command are an integral part of any parameter file.

From the syntax, it can be seen that there are three different energy terms
to which these
defaults can apply. The `IMPROPER` options control the following
aspects of the improper torsion energy:

`COSINE`- The improper torsion term is calculated using the trigonometric function
used for the torsion angle term. This form was developed for the implementation
of the AMBER
potential.
`HARMONIC`- The improper torsion term is calculated using the harmonic version
of the potential. This form was developed for the CHARMM potential.
This is the default.
`SYMMETRY``NOSYMMETRY`- These keywords control the matching of improper torsions against
the parameters. If
`SYMMETRY`is selected, then matching of the four atoms in an improper torsion is attempted in the original order, with the first and fourth atoms swapped, with the second and third atoms swapped, and with all atoms reversed in position.`SYMMETRY`is used for the CHARMM potential. If`NOSYMMETRY`is selected, no reorderings are done.`NOSYMMETRY`is used for the AMBER potential.`SYMMETRY`is the default.

The `HBOND` default options control which distance is used in the
hydrogen bond energy. If `D-A` is specified, the distance is
calculated between the heavy atom donor and the acceptor, and the
angular term is included. In addition, the parameterization
is done based on the heavy atom donor and acceptor.
This is the CHARMM form. If `H-A`
is specified, the distance is calculated between the hydrogen
and the acceptor, and no angular term is included. The parameterization
is done based on the hydrogen and the acceptor. The default
is `D-A`

The `NBOND` default options control scaling for 1-4 interactions
and the inclusion of van der Waals energies for hydrogen bond pairs.
1-4 interactions are non-bonded interactions of atoms connected
by three bonds (see Nbxmod, for more information).
The `VDW14` keyword sets the scale factor for the van der Waals energy
of 1-4 interactions. The `EL14` keyword sets the scale factor for 1-4
electrostatic
interactions. The default is 1.0 for both of these scale factors. In the AMBER
potential, they are set to 0.5. The `HBINCLUDE` keyword specifies that van der
Waals interactions will be calculated for atoms involved in hydrogen bonds. This
is the default. The `HBEXLCUDE` keyword specifies that van der Waals interactions
will be turned off for all possible atom pairs specified as possible hydrogen bonds.
This is the default for the AMBER potential. *Warning:* you must ensure
that the hydrogen bond distance cutoff is positive when this option
is in use. Otherwise, it is possible to generate infinite energies if a
charged hydrogen and its acceptor get too close together.

PRINT [ON ] [OFF]

The `PRINT` command turns on the echoing of commands in the parameter
file and the display of all non-bonded parameters. It is useful for debugging.
It is off by default.

END