181 lines
6.5 KiB
ReStructuredText
181 lines
6.5 KiB
ReStructuredText
.. index:: fix amoeba/pitorsion
|
|
|
|
fix amoeba/pitorsion command
|
|
============================
|
|
|
|
Syntax
|
|
""""""
|
|
|
|
.. code-block:: LAMMPS
|
|
|
|
fix ID group-ID ameoba/pitorsion
|
|
|
|
* ID, group-ID are documented in :doc:`fix <fix>` command
|
|
* amoeba/pitorsion = style name of this fix command
|
|
|
|
Examples
|
|
""""""""
|
|
|
|
.. code-block:: LAMMPS
|
|
|
|
fix pit all amoeba/pitorsion
|
|
read_data proteinX.data fix pit "pitorsion types" "PiTorsion Coeffs" &
|
|
fix pit pitorsions PiTorsions
|
|
fix_modify pit energy yes
|
|
|
|
Description
|
|
"""""""""""
|
|
|
|
This command enables 6-body pitorsion interactions to be added to
|
|
simulations which use the AMOEBA and HIPPO force fields. It matches
|
|
how the Tinker MD code computes its pitorsion interactions for the
|
|
AMOEBA and HIPPO force fields. See the :doc:`Howto amoeba <Howto_amoeba>`
|
|
doc page for more information about the implementation of AMOEBA and HIPPO in
|
|
LAMMPS.
|
|
|
|
Pitorsion interactions add additional potential energy contributions
|
|
to 6-tuples of atoms :math:`IJKLMN` that have a bond between atoms
|
|
:math:`K` and :math:`L`, where both :math:`K` and :math:`L` are additionally
|
|
bonded to exactly two other atoms. Namely, :math:`K` is also bonded to
|
|
:math:`I` and :math:`J`, and :math:`L` is also bonded to :math:`M` and
|
|
:math:`N`.
|
|
|
|
The examples/amoeba directory has a sample input script and data file
|
|
for ubiquitin, which illustrates use of the fix amoeba/pitorsion
|
|
command.
|
|
|
|
As in the example above, this fix should be used before reading a data
|
|
file that contains a listing of pitorsion interactions.
|
|
|
|
The data file read by the :doc:`read_data <read_data>` command must
|
|
contain the topology of all the pitorsion interactions, similar to the
|
|
topology data for bonds, angles, dihedrals, etc. Specifically, it
|
|
should have two lines like these in its header section:
|
|
|
|
.. parsed-literal::
|
|
|
|
M pitorsion types
|
|
N pitorsions
|
|
|
|
where :math:`N` is the number of pitorsion 5-body interactions and :math:`M` is
|
|
the number of pitorsion types. It should also have two sections in the body
|
|
of the data file like these with :math:`M` and :math:`N` lines each:
|
|
|
|
.. parsed-literal::
|
|
|
|
PiTorsion Coeffs
|
|
|
|
1 6.85
|
|
2 10.2
|
|
[...]
|
|
M 6.85
|
|
|
|
.. parsed-literal::
|
|
|
|
PiTorsions
|
|
|
|
1 1 8 10 12 18 20
|
|
2 5 18 20 22 25 27
|
|
[...]
|
|
N 3 314 315 317 318 330
|
|
|
|
For PiTorsion Coeffs, the first column is an index from 1 to :math:`M` to
|
|
enumerate the pitorsion types. The second column is the single
|
|
prefactor coefficient needed for each type.
|
|
|
|
For PiTorsions, the first column is an index from 1 to :math:`N` to enumerate
|
|
the pitorsion 5-atom tuples; it is ignored by LAMMPS. The second
|
|
column is the "type" of the interaction; it is an index into the
|
|
PiTorsion Coeffs. The remaining 5 columns are the atom IDs of the
|
|
atoms in the two 4-atom dihedrals that overlap to create the pitorsion
|
|
5-body interaction.
|
|
|
|
Note that the *pitorsion types* and *pitorsions* and *PiTorsion
|
|
Coeffs* and *PiTorsions* keywords for the header and body sections of
|
|
the data file match those specified in the :doc:`read_data <read_data>`
|
|
command following the data file name.
|
|
|
|
The data file should be generated by using the
|
|
tools/tinker/tinker2lmp.py conversion script which creates a LAMMPS
|
|
data file from Tinker input files, including its PRM file which
|
|
contains the parameters necessary for computing pitorsion
|
|
interactions.
|
|
|
|
The potential energy associated with pitorsion interactions can be
|
|
output as described below. It can also be included in the total
|
|
potential energy of the system, as output by the :doc:`thermo_style
|
|
<thermo_style>` command, if the :doc:`fix_modify energy <fix_modify>`
|
|
command is used, as in the example above. See the note below about
|
|
how to include the pitorsion energy when performing an :doc:`energy
|
|
minimization <minimize>`.
|
|
|
|
----------
|
|
|
|
Restart, fix_modify, output, run start/stop, minimize info
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
This fix writes the list of pitorsion interactions to :doc:`binary
|
|
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
|
command for info on how to re-specify a fix in an input script that
|
|
reads a restart file, so that the operation of the fix continues in an
|
|
uninterrupted fashion.
|
|
|
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
|
this fix to add the potential energy of the pitorsion interactions to
|
|
both the global potential energy and peratom potential energies of the
|
|
system as part of :doc:`thermodynamic output <thermo_style>` or output
|
|
by the :doc:`compute pe/atom <compute_pe_atom>` command. The default
|
|
setting for this fix is :doc:`fix_modify energy yes <fix_modify>`.
|
|
|
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
|
this fix to add the contribution due to the pitorsion interactions to
|
|
both the global pressure and per-atom stress of the system via the
|
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
|
stress/atom <compute_stress_atom>` commands. The former can be
|
|
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
|
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
|
|
|
This fix computes a global scalar which can be accessed by various
|
|
:doc:`output commands <Howto_output>`. The scalar is the potential
|
|
energy discussed above. The scalar value calculated by this fix is
|
|
"extensive."
|
|
|
|
No parameter of this fix can be used with the *start/stop* keywords of
|
|
the :doc:`run <run>` command.
|
|
|
|
The forces due to this fix are imposed during an energy minimization,
|
|
invoked by the :doc:`minimize <minimize>` command.
|
|
|
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
|
fix. This allows to set at which level of the :doc:`r-RESPA
|
|
<run_style>` integrator the fix is adding its forces. Default is the
|
|
outermost level.
|
|
|
|
.. note::
|
|
|
|
For energy minimization, if you want the potential energy
|
|
associated with the pitorsion terms forces to be included in the
|
|
total potential energy of the system (the quantity being
|
|
minimized), you MUST not disable the :doc:`fix_modify <fix_modify>`
|
|
*energy* option for this fix.
|
|
|
|
Restrictions
|
|
""""""""""""
|
|
|
|
To function as expected this fix command must be issued *before* a
|
|
:doc:`read_data <read_data>` command but *after* a
|
|
:doc:`read_restart <read_restart>` command.
|
|
|
|
This fix can only be used if LAMMPS was built with the AMOEBA package.
|
|
See the :doc:`Build package <Build_package>` page for more info.
|
|
|
|
Related commands
|
|
""""""""""""""""
|
|
|
|
:doc:`fix_modify <fix_modify>`, :doc:`read_data <read_data>`
|
|
|
|
Default
|
|
"""""""
|
|
|
|
none
|