|
The
improper torsion term is of the Inclusion type
(i.e., indexed by the Atom Inclusion Type) and an
individual term is:
where
tijkl is the torsion angle
spanned by the atoms i, j, k
and l, Kt is the force
constant and to is the
equilibrium torsion angle. The two constants are
assigned to this particular improper torsion angle
based on the Atom Inclusion Types of the four
participating atoms.
The
Impropers
module is located in the Energy sub-directory of
the Yup package, hence:
Yup.Energy.Impropers.
The
improper torsion term is introduced into a
simulation by first creating an (empty) instance of
the Impropers
object. Participating atom groups of four atoms are
then added to this object. Previously added
torsions may also be deleted or modified. All these
actions affect only a list of candidate improper
torsions. The compile process binds Coordinate and
Gradient AtomVectors
to the Impropers
module and then goes through the candidate torsions
to form a compiled improper torsion list in which
all the atoms that are involved and the improper
torsion parameters that they are to use are
positively identified. Only then can the improper
torsion term be evaluated. (Prior attempts at
evaluation will either yield an exception or null
results.) The evaluate method would now be called
many times as part of a molecular mechanics
calculation. Each call would yield different
results even though the compiled torsion list is
fixed because the Coordinates are different at each
call. However, it is possible to modify the
improper torsion parameters (force constant and
equilibrium torsion angle) continuously during a
calculation. The parameters are accessed through
the subscript operator. More radical changes can be
made by adding new improper torsions and modifying
or deleting existing torsions. These actions affect
the candidate list and immediately clear the
compiled list. Therefore the
Impropers
module must be compiled again before evaluation can
resume. The state of the
Impropers
module can be judged by examining the data
attributes. The compiled torsions can also be
examined in great detail by printing the
object.
This
manual is divided into several pages:
|
Name
|
Content
|
|
Impropers
|
Introduction:
this page.
|
|
Create
|
Creating
a new Impropers
object. The function
Impropers().
|
|
Data
|
The
data attributes of a
Impropers
object; some of which may be assigned
new values.
|
|
Manage
|
Managing
improper torsions: add new torsions,
modifying existing improper torsions
and deleting existing torsions. The
methods: add(),
modify()
and delete().
|
|
Compile
|
Preparing
a Impropers
object for evaluation of the energy and
gradients. The methods:
update()
and compile().
|
|
Evaluate
|
Evaluate
the improper torsion energy and
gradients. The method:
evaluate().
|
|
Subscript
|
The
subscript []
operator: used to access and to assign
values to the improper torsion
parameters
|
|
Print
|
Documents
the print, repr, delete and compare
operators.
|
|
Write
|
Writing
the finalized improper torsion record
to the force field file.
|
|