forked from lijiext/lammps
340 lines
13 KiB
Plaintext
340 lines
13 KiB
Plaintext
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
|
|
|
:link(lws,http://lammps.sandia.gov)
|
|
:link(ld,Manual.html)
|
|
:link(lc,Section_commands.html#comm)
|
|
|
|
:line
|
|
|
|
pair_style coul/cut command :h3
|
|
pair_style coul/cut/gpu command :h3
|
|
pair_style coul/cut/kk command :h3
|
|
pair_style coul/cut/omp command :h3
|
|
pair_style coul/debye command :h3
|
|
pair_style coul/debye/gpu command :h3
|
|
pair_style coul/debye/kk command :h3
|
|
pair_style coul/debye/omp command :h3
|
|
pair_style coul/dsf command :h3
|
|
pair_style coul/dsf/gpu command :h3
|
|
pair_style coul/dsf/kk command :h3
|
|
pair_style coul/dsf/omp command :h3
|
|
pair_style coul/long command :h3
|
|
pair_style coul/long/cs command :h3
|
|
pair_style coul/long/omp command :h3
|
|
pair_style coul/long/gpu command :h3
|
|
pair_style coul/long/kk command :h3
|
|
pair_style coul/msm command :h3
|
|
pair_style coul/msm/omp command :h3
|
|
pair_style coul/streitz command :h3
|
|
pair_style coul/wolf command :h3
|
|
pair_style coul/wolf/kk command :h3
|
|
pair_style coul/wolf/omp command :h3
|
|
pair_style tip4p/cut command :h3
|
|
pair_style tip4p/long command :h3
|
|
pair_style tip4p/cut/omp command :h3
|
|
pair_style tip4p/long/omp command :h3
|
|
|
|
[Syntax:]
|
|
|
|
pair_style coul/cut cutoff
|
|
pair_style coul/debye kappa cutoff
|
|
pair_style coul/dsf alpha cutoff
|
|
pair_style coul/long cutoff
|
|
pair_style coul/long/cs cutoff
|
|
pair_style coul/long/gpu cutoff
|
|
pair_style coul/wolf alpha cutoff
|
|
pair_style coul/streitz cutoff keyword alpha
|
|
pair_style tip4p/cut otype htype btype atype qdist cutoff
|
|
pair_style tip4p/long otype htype btype atype qdist cutoff :pre
|
|
|
|
cutoff = global cutoff for Coulombic interactions
|
|
kappa = Debye length (inverse distance units)
|
|
alpha = damping parameter (inverse distance units) :ul
|
|
|
|
[Examples:]
|
|
|
|
pair_style coul/cut 2.5
|
|
pair_coeff * *
|
|
pair_coeff 2 2 3.5 :pre
|
|
|
|
pair_style coul/debye 1.4 3.0
|
|
pair_coeff * *
|
|
pair_coeff 2 2 3.5 :pre
|
|
|
|
pair_style coul/dsf 0.05 10.0
|
|
pair_coeff * * :pre
|
|
|
|
pair_style coul/long 10.0
|
|
pair_style coul/long/cs 10.0
|
|
pair_coeff * * :pre
|
|
|
|
pair_style coul/msm 10.0
|
|
pair_coeff * * :pre
|
|
|
|
pair_style coul/wolf 0.2 9.0
|
|
pair_coeff * * :pre
|
|
|
|
pair_style coul/streitz 12.0 ewald
|
|
pair_style coul/streitz 12.0 wolf 0.30
|
|
pair_coeff * * AlO.streitz Al O :pre
|
|
|
|
pair_style tip4p/cut 1 2 7 8 0.15 12.0
|
|
pair_coeff * * :pre
|
|
|
|
pair_style tip4p/long 1 2 7 8 0.15 10.0
|
|
pair_coeff * * :pre
|
|
|
|
[Description:]
|
|
|
|
The {coul/cut} style computes the standard Coulombic interaction
|
|
potential given by
|
|
|
|
:c,image(Eqs/pair_coulomb.jpg)
|
|
|
|
where C is an energy-conversion constant, Qi and Qj are the charges on
|
|
the 2 atoms, and epsilon is the dielectric constant which can be set
|
|
by the "dielectric"_dielectric.html command. The cutoff Rc truncates
|
|
the interaction distance.
|
|
|
|
:line
|
|
|
|
Style {coul/debye} adds an additional exp() damping factor to the
|
|
Coulombic term, given by
|
|
|
|
:c,image(Eqs/pair_debye.jpg)
|
|
|
|
where kappa is the Debye length. This potential is another way to
|
|
mimic the screening effect of a polar solvent.
|
|
|
|
:line
|
|
|
|
Style {coul/dsf} computes Coulombic interactions via the damped
|
|
shifted force model described in "Fennell"_#Fennell, given by:
|
|
|
|
:c,image(Eqs/pair_coul_dsf.jpg)
|
|
|
|
where {alpha} is the damping parameter and erfc() is the
|
|
complementary error-function. The potential corrects issues in the
|
|
Wolf model (described below) to provide consistent forces and energies
|
|
(the Wolf potential is not differentiable at the cutoff) and smooth
|
|
decay to zero.
|
|
|
|
:line
|
|
|
|
Style {coul/wolf} computes Coulombic interactions via the Wolf
|
|
summation method, described in "Wolf"_#Wolf, given by:
|
|
|
|
:c,image(Eqs/pair_coul_wolf.jpg)
|
|
|
|
where {alpha} is the damping parameter, and erc() and erfc() are
|
|
error-fuction and complementary error-function terms. This potential
|
|
is essentially a short-range, spherically-truncated,
|
|
charge-neutralized, shifted, pairwise {1/r} summation. With a
|
|
manipulation of adding and substracting a self term (for i = j) to the
|
|
first and second term on the right-hand-side, respectively, and a
|
|
small enough {alpha} damping parameter, the second term shrinks and
|
|
the potential becomes a rapidly-converging real-space summation. With
|
|
a long enough cutoff and small enough alpha parameter, the energy and
|
|
forces calcluated by the Wolf summation method approach those of the
|
|
Ewald sum. So it is a means of getting effective long-range
|
|
interactions with a short-range potential.
|
|
|
|
:line
|
|
|
|
Style {coul/streitz} is the Coulomb pair interaction defined as part
|
|
of the Streitz-Mintmire potential, as described in "this
|
|
paper"_#Streitz, in which charge distribution about an atom is modeled
|
|
as a Slater 1{s} orbital. More details can be found in the referenced
|
|
paper. To fully reproduce the published Streitz-Mintmire potential,
|
|
which is a variable charge potential, style {coul/streitz} must be
|
|
used with "pair_style eam/alloy"_pair_eam.html (or some other
|
|
short-range potential that has been parameterized appropriately) via
|
|
the "pair_style hybrid/overlay"_pair_hybrid.html command. Likewise,
|
|
charge equilibration must be performed via the "fix
|
|
qeq/slater"_fix_qeq.html command. For example:
|
|
|
|
pair_style hybrid/overlay coul/streitz 12.0 wolf 0.31 eam/alloy
|
|
pair_coeff * * coul/streitz AlO.streitz Al O
|
|
pair_coeff * * eam/alloy AlO.eam.alloy Al O
|
|
fix 1 all qeq/slater 1 12.0 1.0e-6 100 coul/streitz :pre
|
|
|
|
The keyword {wolf} in the coul/streitz command denotes computing
|
|
Coulombic interactions via Wolf summation. An additional damping
|
|
parameter is required for the Wolf summation, as described for the
|
|
coul/wolf potential above. Alternatively, Coulombic interactions can
|
|
be computed via an Ewald summation. For example:
|
|
|
|
pair_style hybrid/overlay coul/streitz 12.0 ewald eam/alloy
|
|
kspace_style ewald 1e-6 :pre
|
|
|
|
Keyword {ewald} does not need a damping parameter, but a
|
|
"kspace_style"_kspace_style.html must be defined, which can be style
|
|
{ewald} or {pppm}. The Ewald method was used in Streitz and
|
|
Mintmire's original paper, but a Wolf summation offers a speed-up in
|
|
some cases.
|
|
|
|
For the fix qeq/slater command, the {qfile} can be a filename that
|
|
contains QEq parameters as discussed on the "fix qeq"_fix_qeq.html
|
|
command doc page. Alternatively {qfile} can be replaced by
|
|
"coul/streitz", in which case the fix will extract QEq parameters from
|
|
the coul/streitz pair style itself.
|
|
|
|
See the examples/strietz directory for an example input script that
|
|
uses the Streitz-Mintmire potential. The potentials directory has the
|
|
AlO.eam.alloy and AlO.streitz potential files used by the example.
|
|
|
|
Note that the Streiz-Mintmire potential is generally used for oxides,
|
|
but there is no conceptual problem with extending it to nitrides and
|
|
carbides (such as SiC, TiN). Pair coul/strietz used by itself or with
|
|
any other pair style such as EAM, MEAM, Tersoff, or LJ in
|
|
hybrid/overlay mode. To do this, you would need to provide a
|
|
Streitz-Mintmire parameterizaion for the material being modeled.
|
|
|
|
:line
|
|
|
|
Styles {coul/long} and {coul/msm} compute the same Coulombic
|
|
interactions as style {coul/cut} except that an additional damping
|
|
factor is applied so it can be used in conjunction with the
|
|
"kspace_style"_kspace_style.html command and its {ewald} or {pppm}
|
|
option. The Coulombic cutoff specified for this style means that
|
|
pairwise interactions within this distance are computed directly;
|
|
interactions outside that distance are computed in reciprocal space.
|
|
|
|
Style {coul/long/cs} is identical to {coul/long} except that a term is
|
|
added for the "core/shell model"_Section_howto.html#howto_25 to allow
|
|
charges on core and shell particles to be separated by r = 0.0.
|
|
|
|
Styles {tip4p/cut} and {tip4p/long} implement the coulomb part of
|
|
the TIP4P water model of "(Jorgensen)"_#Jorgensen, which introduces
|
|
a massless site located a short distance away from the oxygen atom
|
|
along the bisector of the HOH angle. The atomic types of the oxygen and
|
|
hydrogen atoms, the bond and angle types for OH and HOH interactions,
|
|
and the distance to the massless charge site are specified as
|
|
pair_style arguments. Style {tip4p/cut} uses a global cutoff for
|
|
Coulomb interactions; style {tip4p/long} is for use with a long-range
|
|
Coulombic solver (Ewald or PPPM).
|
|
|
|
IMPORTANT NOTE: For each TIP4P water molecule in your system, the atom
|
|
IDs for the O and 2 H atoms must be consecutive, with the O atom
|
|
first. This is to enable LAMMPS to "find" the 2 H atoms associated
|
|
with each O atom. For example, if the atom ID of an O atom in a TIP4P
|
|
water molecule is 500, then its 2 H atoms must have IDs 501 and 502.
|
|
|
|
See the "howto section"_Section_howto.html#howto_8 for more
|
|
information on how to use the TIP4P pair styles and lists of
|
|
parameters to set. Note that the neighobr list cutoff for Coulomb
|
|
interactions is effectively extended by a distance 2*qdist when using
|
|
the TIP4P pair style, to account for the offset distance of the
|
|
fictitious charges on O atoms in water molecules. Thus it is
|
|
typically best in an efficiency sense to use a LJ cutoff >= Coulomb
|
|
cutoff + 2*qdist, to shrink the size of the neighbor list. This leads
|
|
to slightly larger cost for the long-range calculation, so you can
|
|
test the trade-off for your model.
|
|
|
|
:line
|
|
|
|
Note that these potentials are designed to be combined with other pair
|
|
potentials via the "pair_style hybrid/overlay"_pair_hybrid.html
|
|
command. This is because they have no repulsive core. Hence if they
|
|
are used by themselves, there will be no repulsion to keep two
|
|
oppositely charged particles from moving arbitrarily close to each
|
|
other.
|
|
|
|
The following coefficients must be defined for each pair of atoms
|
|
types via the "pair_coeff"_pair_coeff.html command as in the examples
|
|
above, or in the data file or restart files read by the
|
|
"read_data"_read_data.html or "read_restart"_read_restart.html
|
|
commands, or by mixing as described below:
|
|
|
|
cutoff (distance units) :ul
|
|
|
|
For {coul/cut} and {coul/debye}, the cutoff coefficient is optional.
|
|
If it is not used (as in some of the examples above), the default
|
|
global value specified in the pair_style command is used.
|
|
|
|
For {coul/long} and {coul/msm} no cutoff can be specified for an
|
|
individual I,J type pair via the pair_coeff command. All type pairs
|
|
use the same global Coulombic cutoff specified in the pair_style
|
|
command.
|
|
|
|
:line
|
|
|
|
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 "Section_accelerate"_Section_accelerate.html
|
|
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 "Making
|
|
LAMMPS"_Section_start.html#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 "-suffix command-line
|
|
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
|
|
use the "suffix"_suffix.html command in your input script.
|
|
|
|
See "Section_accelerate"_Section_accelerate.html of the manual for
|
|
more instructions on how to use the accelerated styles effectively.
|
|
|
|
:line
|
|
|
|
[Mixing, shift, table, tail correction, restart, rRESPA info]:
|
|
|
|
For atom type pairs I,J and I != J, the cutoff distance for the
|
|
{coul/cut} style can be mixed. The default mix value is {geometric}.
|
|
See the "pair_modify" command for details.
|
|
|
|
The "pair_modify"_pair_modify.html shift option is not relevant
|
|
for these pair styles.
|
|
|
|
The {coul/long} style supports the "pair_modify"_pair_modify.html
|
|
table option for tabulation of the short-range portion of the
|
|
long-range Coulombic interaction.
|
|
|
|
These pair styles do not support the "pair_modify"_pair_modify.html
|
|
tail option for adding long-range tail corrections to energy and
|
|
pressure.
|
|
|
|
These pair styles write their information to "binary restart
|
|
files"_restart.html, so pair_style and pair_coeff commands do not need
|
|
to be specified in an input script that reads a restart file.
|
|
|
|
This pair style can only be used via the {pair} keyword of the
|
|
"run_style respa"_run_style.html command. It does not support the
|
|
{inner}, {middle}, {outer} keywords.
|
|
|
|
:line
|
|
|
|
[Restrictions:]
|
|
|
|
The {coul/long}, {coul/msm} and {tip4p/long} styles are part of the
|
|
KSPACE package. The {coul/long/cs} style is part of the CORESHELL
|
|
package. They are only enabled if LAMMPS was built with that package
|
|
(which it is by default). See the "Making
|
|
LAMMPS"_Section_start.html#start_3 section for more info.
|
|
|
|
[Related commands:]
|
|
|
|
"pair_coeff"_pair_coeff.html, "pair_style,
|
|
hybrid/overlay"_pair_hybrid.html, "kspace_style"_kspace_style.html
|
|
|
|
[Default:] none
|
|
|
|
:line
|
|
|
|
:link(Wolf)
|
|
[(Wolf)] D. Wolf, P. Keblinski, S. R. Phillpot, J. Eggebrecht, J Chem
|
|
Phys, 110, 8254 (1999).
|
|
|
|
:link(Fennell)
|
|
[(Fennell)] C. J. Fennell, J. D. Gezelter, J Chem Phys, 124,
|
|
234104 (2006).
|
|
|
|
:link(Streitz)
|
|
[(Streitz)] F. H. Streitz, J. W. Mintmire, Phys Rev B, 50, 11996-12003
|
|
(1994).
|