lammps/doc/_sources/pair_tersoff_mod.txt

233 lines
7.0 KiB
Plaintext

.. index:: pair_style tersoff/mod
pair_style tersoff/mod command
==============================
pair_style tersoff/mod/gpu command
==================================
pair_style tersoff/mod/kk command
=================================
pair_style tersoff/mod/omp command
==================================
Syntax
""""""
.. parsed-literal::
pair_style tersoff/mod
Examples
""""""""
.. parsed-literal::
pair_style tersoff/mod
pair_coeff * * Si.tersoff.mod Si Si
Description
"""""""""""
The *tersoff/mod* style computes a bond-order type interatomic
potential :ref:`(Kumagai) <Kumagai>` based on a 3-body Tersoff potential
:ref:`(Tersoff_1) <Tersoff_1>`, :ref:`(Tersoff_2) <Tersoff_2>` with modified
cutoff function and angular-dependent term, giving the energy E of a
system of atoms as
.. image:: Eqs/pair_tersoff_mod.jpg
:align: center
where f_R is a two-body term and f_A includes three-body interactions.
The summations in the formula are over all neighbors J and K of atom I
within a cutoff distance = R + D.
The modified cutoff function f_C proposed by :ref:`(Murty) <Murty>` and
having a continuous second-order differential is employed. The
angular-dependent term g(theta) was modified to increase the
flexibility of the potential.
The *tersoff/mod* potential is fitted to both the elastic constants
and melting point by employing the modified Tersoff potential function
form in which the angular-dependent term is improved. The model
performs extremely well in describing the crystalline, liquid, and
amorphous phases :ref:`(Schelling) <Schelling>`.
Only a single pair_coeff command is used with the *tersoff/mod* style
which specifies a Tersoff/MOD potential file with parameters for all
needed elements. These are mapped to LAMMPS atom types by specifying
N additional arguments after the filename in the pair_coeff command,
where N is the number of LAMMPS atom types:
* filename
* N element names = mapping of Tersoff/MOD elements to atom types
As an example, imagine the Si.tersoff_mod file has Tersoff values for Si.
If your LAMMPS simulation has 3 Si atoms types, you would use the following
pair_coeff command:
.. parsed-literal::
pair_coeff * * Si.tersoff_mod Si Si Si
The 1st 2 arguments must be * * so as to span all LAMMPS atom types.
The three Si arguments map LAMMPS atom types 1,2,3 to the Si element
in the Tersoff/MOD file. If a mapping value is specified as NULL, the
mapping is not performed. This can be used when a *tersoff/mod*
potential is used as part of the *hybrid* pair style. The NULL values
are placeholders for atom types that will be used with other
potentials.
Tersoff/MOD file in the *potentials* directory of the LAMMPS
distribution have a ".tersoff.mod" suffix. Lines that are not blank
or comments (starting with #) define parameters for a triplet of
elements. The parameters in a single entry correspond to coefficients
in the formula above:
* element 1 (the center atom in a 3-body interaction)
* element 2 (the atom bonded to the center atom)
* element 3 (the atom influencing the 1-2 bond in a bond-order sense)
* beta
* alpha
* h
* eta
* beta_ters = 1 (dummy parameter)
* lambda2 (1/distance units)
* B (energy units)
* R (distance units)
* D (distance units)
* lambda1 (1/distance units)
* A (energy units)
* n
* c1
* c2
* c3
* c4
* c5
The n, eta, lambda2, B, lambda1, and A parameters are only used for
two-body interactions. The beta, alpha, c1, c2, c3, c4, c5, h
parameters are only used for three-body interactions. The R and D
parameters are used for both two-body and three-body interactions. The
non-annotated parameters are unitless.
The Tersoff/MOD potential file must contain entries for all the elements
listed in the pair_coeff command. It can also contain entries for
additional elements not being used in a particular simulation; LAMMPS
ignores those entries.
For a single-element simulation, only a single entry is required
(e.g. SiSiSi). As annotated above, the first element in the entry is
the center atom in a three-body interaction and it is bonded to the
2nd atom and the bond is influenced by the 3rd atom. Thus an entry
for SiSiSi means Si bonded to a Si with another Si atom influencing the bond.
----------
Styles with a *cuda*, *gpu*, *intel*, *kk*, *omp*, or *opt* suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in :doc:`Section_accelerate <Section_accelerate>`
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL,
KOKKOS, USER-OMP and OPT packages, respectively. They are only
enabled if LAMMPS was built with those packages. See the :ref:`Making LAMMPS <start_3>` section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the :ref:`-suffix command-line switch <start_7>` when you invoke LAMMPS, or you can
use the :doc:`suffix <suffix>` command in your input script.
See :doc:`Section_accelerate <Section_accelerate>` of the manual for
more instructions on how to use the accelerated styles effectively.
----------
**Mixing, shift, table, tail correction, restart, rRESPA info**:
This pair style does not support the :doc:`pair_modify <pair_modify>`
shift, table, and tail options.
This pair style does not write its information to :doc:`binary restart files <restart>`, since it is stored in potential files. Thus, you
need to re-specify the pair_style and pair_coeff commands in an input
script that reads a restart file.
This pair style can only be used via the *pair* keyword of the
:doc:`run_style respa <run_style>` command. It does not support the
*inner*, *middle*, *outer* keywords.
----------
Restrictions
""""""""""""
This pair style is part of the MANYBODY package. It is only enabled
if LAMMPS was built with that package (which it is by default). See
the :ref:`Making LAMMPS <start_3>` section for more info.
This pair style requires the :doc:`newton <newton>` setting to be "on"
for pair interactions.
The Tersoff/MOD potential files provided with LAMMPS (see the potentials
directory) are parameterized for metal :doc:`units <units>`. You can
use the Tersoff/MOD potential with any LAMMPS units, but you would need to
create your own Tersoff/MOD potential file with coefficients listed in the
appropriate units if your simulation doesn't use "metal" units.
Related commands
""""""""""""""""
:doc:`pair_coeff <pair_coeff>`
**Default:** none
----------
.. _Kumagai:
**(Kumagai)** T. Kumagai, S. Izumi, S. Hara, S. Sakai,
Comp. Mat. Science, 39, 457 (2007).
.. _Tersoff_1:
**(Tersoff_1)** J. Tersoff, Phys Rev B, 37, 6991 (1988).
.. _Tersoff_2:
**(Tersoff_2)** J. Tersoff, Phys Rev B, 38, 9902 (1988).
.. _Murty:
**(Murty)** M.V.R. Murty, H.A. Atwater, Phys Rev B, 51, 4889 (1995).
.. _Schelling:
**(Schelling)** Patrick K. Schelling, Comp. Mat. Science, 44, 274 (2008).
.. _lws: http://lammps.sandia.gov
.. _ld: Manual.html
.. _lc: Section_commands.html#comm