All of the parameters, constants and atom type definitions for a given force field are defined in a text file. The format of this file is similar to that developed by Professor Jay Ponder of Washington University for the Tinker program. The files currently distributed with Pcmodel are:
Mmxconst.prm: Parameter file for MMX force field
Mm3.prm: Parameter file for Allinger’s MM3 force field
Mmff94.prm: Parameter file for Halgren’s MMFF94 force field
Oplsaa.prm: Parameter file for Jorgenson's OplsAA force field
Oplsua.prm: Parameter file for the United Atom force field
All the parameter files include a definition of the constants used for the various energy equations used by that force field, the atom types defined and the parameters required. The file is free format and data lines begin with a keyword that starts in column one followed by the data separated by one or more spaces. The information can be defined in any order since each line is parsed and interpreted. The beginning of the MMX force field parameter file is given below.
MMX (1986)
##############################
## ##
## Force Field Definition ##
## ##
##############################
forcefield MMX
bondunit 71.94
bond-cubic -2.0
bond-quartic 2.333333 !! (7/12) * bond-cubic^2
angleunit 0.02191418
angle-sextic 0.00000007
str-bndunit 2.51118
torsionunit 0.5
vdwtype BUCKINGHAM
radiusrule ARITHMETIC
radiustype R-MIN
radiussize RADIUS
epsilonrule GEOMETRIC
atom-14-scale 1.0
a-expterm 290000.0
b-expterm 12.5
c-expterm 2.25
chg-14-scale 1.0
dielectric 1.5
Definitions for some of the keywords are:
Forcefield definition of the name of the forcefield
Bond_unit constant for converting bond constants to energy
Bond_cubic same as above or zero if cubic stretch not used
Vdwtype Definition of vdw equation to use, Buckingham or Lennard-Jones
Radiusrule combining rule for vdw radius
Dielectric default dielectric constant
Atom type definitions begin with the keyword ‘atom’, followed by a numeric atom type, character atom type, a twenty character text description, atomic number, atomic weight, number of bonds, total bond order, and the atom class definition. In the example from MMX given below the first four atom types defined are all carbon, with atom type 1 being an sp3 carbon that forms four bonds, atom types 2 and 3 being sp2 carbons that form three bonds and finally atom type 4 which is a sp carbon and only forms two bonds. The information about bonds is necessary to automatically add hydrogen to an atom. The atom class definition allows the users to create many specific atom types without having to provide complete data for all of them. For example, MM3 defines the basic carbonyl oxygen as type 7 and then defines atom types 77 to 101 as specific types of carbonyls. In the data set there are specific stretching force constants for many of the carbonyl atom types, but if data is missing the default type 7 parameters are used.
## Atom Types
atom 1 C CSP3 6 12.011 4 4 1
atom 2 C CSP2 ALKENE 6 12.011 3 4 2
atom 3 C CSP2 CARBONYL 6 12.011 3 4 3
atom 4 C CSP ACETYLENE 6 12.011 2 4 4
atom 5 H HYDROGEN 1 1.008 1 1 5
atom 6 O C-O-H, C-O-C 8 15.999 2 2 6
atom 7 O =O CARBONYL 8 15.999 1 2 7
atom 8 N NSP3 7 14.007 3 3 8
atom 9 N NSP2 7 14.007 3 3 9
The bond stretching function used in Pcmodel is a fourth order polynomial. Force fields such as United Atom and Oplsaa are supported by setting the cubic stretch and quartic stretch terms to zero, while MM2, MM3, MMX and MMFF94 are supported by defining these terms.
Es = bu*ks/2*(dr)2 *[1 – cs*( dr) + qs*(dr)2]
Where:
Bu bondunit , conversion factor from md/A2 to kcal/mol-A2
Ks stretching force constant
Dr actual bond length – defined bond length
Cs cubic stretching term defined in parameter file
Qs quartic stretching term defined in parameter file
The keywords used for defining the bond parameters (force constant and defined bond length) are Bond, Bond3, Bond4, Bond5 and Bonddel. Parameter data begins with a keyword followed by the two atom types comprising the bond with the lower numbered atom type first. Next comes the stretching force constant and the defined bond length. The bonddel keyword only applies to MMFF94 and is used for bonds that are part of conjugated pi systems. Since MMFF94 does not support pi calculations it deals with delocalization by explicitly recognizing delocalized systems and using bond , angle and torsion parameters appropriate for this type of system. Thus the central bond of butadiene would be treated with a bonddel parameter for a type 2-type 2 bond. Examples of bond parameters are given below.
bond 1 1 4.4900 1.5247
bond3 5 22 5.130 1.0860
bond4 6 56 5.7000 1.4250
bond5 1 1 4.4900 1.5258
bonddel 2 2 5.3100 1.4300
Pcmodel uses both in-plane and out-of-plane bending functions. The in-plane angle deformation function used is a sixth order polynomial in delta theta. Force fields such as United Atom and Oplsaa use only the harmonic term while MMX, MM2, MM3 and MMFF94 use the higher order terms.
Eb = au*kb/2*(dQ)2*[1 + cf*( dQ) + qf*( dQ) 2 + pf*( dQ)3 + sf*( dQ)4]
Where:
Au conversion factor from md A/rad2 mol to kcal/deg2 mole
Kb bending force constant
dQ actual bond angle – defined bond angle
Cf cubic angle bending constant
Qf quartic angle bending constant
Pf pentic angle bending constant
Sf sextic angle bending constant
The keyword used for defining the in-plane angle parameters (bending force constant and defined angle) are angle, angle3, angle4, angle5 and angldel (MMFF94 only). Parameter data begins with a keyword followed by the three atom types of the atoms comprising the angle, the bending force constant and up to three defined angles. The first angle given is the default value and the value used if no hydrogens are attached to the central atom. If a second angle is present and not zero, it is used for angles with one hydrogen attached to the central atom. If a third angle term is present and not zero it is used for angles with two hydrogens attached to the central atom. Examples of angle parameters are given below.
angle 1 1 1 0.6700 109.5000 110.2000 111.0000
angle3 22 19 22 0.1250 50.2000 0.0000 0.0000
angle4 1 1 9 0.5500 106.5000 0.0000 0.0000
angle5 1 1 1 0.6700 109.5000 109.9000 111.0000
angdel 1 2 63 0.7680 127.9450
Pcmodel has two out-of-plane bending functions which are applied to sp2 atom types. The standard Allinger implementation uses the angles defined by the projection of the central atom onto the plane defined by the three attached atoms. MMFF94 uses the Wilson angles to define the out of plane deformation. The keyword is opbend and is followed by four atom types in the order of attached atom, central atom, attached atom, attached atom. The Allinger type implementations use only the second and third atom types (the first and fourth can be set to zero), while MMFF94 requires that all four atom types be defined.
opbend 0 2 1 0 0.1000
opbend 1 2 1 2 0.0300 (MMFF94)
The stretch-bend potential function is:
Esb = ksb*(dQ)*(dr)
The keyword is strbnd and it is followed by the three atom types of the atoms defining the angle and three force constants. The force constants are ordered by the number of hydrogens attached to the central atom and the order is zero, one and two.
strbnd 0 1 0 0.130 0.080 0.000 MM3
strbnd 1 1 1 0.2060 0.2060 0.000 0 MMFF94
The torsion potential function is a six term fourier series in the cosine of the dihedral angle.
Et = V1/2*(1+cosf) + V2/2*(1-cos2f) + V3/2*(1+cos3f) + V4/2*(1-cos4f) + V5/2*(1+cos5f) + V6/2*(1-cos6f)
The Allinger based force fields, such as MM2, MMX and MM3, and MMFF94 use the first three terms of the series, while the harmonic force fields, such as Oplsaa and United Atom, use only one of the first three terms. The keywords are torsion, torsion4, torsion5 and torsiondel, followed by the four atom types of the dihedral angle, the force constant and then the phase for that force constant.
torsion 1 1 1 1 0.185 +1 0.170 -2 0.520 +3
torsion5 1 1 1 1 0.185 +1 0.170 -2 1.160 +3
torsion4 3 1 1 9 0.000 +1 0.000 -2 0.250 +3
torsiondel 2 5 1 2 2 0.0000 +1 0.0000 -2 0.0550 +3
There are three different vdw functions programmed in Pcmodel. The Buckingham potential used by the Allinger force fields, the Leonard-Jones potential used by United Atom and Oplsaa, and the buffered-7-14 potential used by MMFF94.
Lennard-Jones Evdw = 4E*(( A/r)12 -( B/r)6)
Buckingham Evdw = A' exp( -B ' /r) -( C/r ) 6
MMFF94 Evdw = 4E*(( A/(r+const))14 -( B/(r+const))7)
The keywords are vdw, vdwpr and vdwmmff. The vdw keyword is used for basic vdw parameters and is followed by the atom type, the vdw radius and epsilon. The A, B and C constants are defined in the part of the parameter file dealing with general force field constants as are the combining rules. The MMX and MM3 force fields have separate entries for special pairs of atoms and this is done with the keyword vdwpr which is followed by two atom types the vdw radius and epsilon. This is primarily done for C-H interactions, but can also be used to describe other types of non-bonded interactions, such as that between metal ions and pi systems. The MMFF94 parameters are taken directly from Halgren’s published set of parameters and the vdw interactions are computed as given in “Merck Molecular Force Field.II. MMFF-94 van der Waals and Electrostatic Parameters for Intermolecular Interactions”, J Comp Chem, 17, 520-552 (1996).
vdw 1 2.040 0.027
vdwpr 1 5 3.560 0.023
vdwmmff 1 1.0500 2.4900 3.8900 1.2820 -
Pcmodel implements a coulomb potential function, charge-dipole and dipole-dipole potential functions. In the MMX force field charges are computed from the bond dipole moments. In MM3 the dipole moments are used directly in charge-dipole and dipole-dipole calculations. MMFF94 charges are computed as given in the J Comp Chem reference. For Oplsaa atom type charges are based on the chemical environment as encoded in a Smiles string, but if no charge is found in the parameter file MMFF94 charges are used. The keywords are dipole, charge, mmffcharge and bndchrg .
dipole 1 2 0.9000
charge 30 1.000
mmffchrg 1 0.0000 0.0000 0.0000 E94
bndchrg 1 1 0.0000 #C94
angang 1 0.240 0.300 0.000
strtors 1 1 0.059
electroi 1 1001 3 -0.007
MMX and MM3 use a PPP type scf calculation to modify the bond stretching and torsion parameters for pi systems. The pibond keyword is followed by two atom types, the bond stretching force constant, the bond length for a full pi bond, the bond moment (which is no longer used), the rate of change of the force constant with pi bond order and the rate of change of the bond length with pi bond order. The equations for modifying the pi bond length and force constant are:
Force_constant = bkon - slpk + slpk*pbo;
Bond_length = blen + slpl - slpl*pbo;
Where :
Pbo pi bond order
Bkon force constant from parameter file
Slpk change in force constant with pi bond order
Blen bond length from parameter file
Slpl change in bond length with pi bond order
piatom 2 1.0 -11.160 11.134 3.25 3.25 0.841 5.486 -15.172 4
pibond 2 2 7.5000 1.3320 0.0000 2.8200 0.1700