forked from lijiext/lammps
264 lines
10 KiB
Plaintext
264 lines
10 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 lj/cut command :h3
|
|
pair_style lj/cut/gpu command :h3
|
|
pair_style lj/cut/opt command :h3
|
|
pair_style lj/cut/coul/cut command :h3
|
|
pair_style lj/cut/coul/debye command :h3
|
|
pair_style lj/cut/coul/long command :h3
|
|
pair_style lj/cut/coul/long/tip4p command :h3
|
|
|
|
[Syntax:]
|
|
|
|
pair_style style args :pre
|
|
|
|
style = {lj/cut} or {lj/cut/gpu} or {lj/cut/opt} or {lj/cut/coul/cut} or {lj/cut/coul/debye} \
|
|
or {lj/cut/coul/long} or {lj/cut/coul/long/tip4p}
|
|
args = list of arguments for a particular style :ul
|
|
{lj/cut} args = cutoff
|
|
cutoff = global cutoff for Lennard Jones interactions (distance units)
|
|
{lj/cut/gpu} args = gpumode gpuID cutoff
|
|
gpumode = {one/node} or {one/gpu} or {multi/gpu}
|
|
gpuID = ID or number of GPUs
|
|
cutoff = global cutoff for Lennard Jones interactions (distance units)
|
|
{lj/cut/opt} args = cutoff
|
|
cutoff = global cutoff for Lennard Jones interactions (distance units)
|
|
{lj/cut/coul/cut} args = cutoff (cutoff2)
|
|
cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
|
|
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
|
{lj/cut/coul/debye} args = kappa cutoff (cutoff2)
|
|
kappa = Debye length (inverse distance units)
|
|
cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
|
|
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
|
{lj/cut/coul/long} args = cutoff (cutoff2)
|
|
cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
|
|
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
|
{lj/cut/coul/long/tip4p} args = otype htype btype atype qdist cutoff (cutoff2)
|
|
otype,htype = atom types for TIP4P O and H
|
|
btype,atype = bond and angle types for TIP4P waters
|
|
qdist = distance from O atom to massless charge (distance units)
|
|
cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
|
|
cutoff2 = global cutoff for Coulombic (optional) (distance units) :pre
|
|
|
|
[Examples:]
|
|
|
|
pair_style lj/cut 2.5
|
|
pair_style lj/cut/gpu one/node 0 2.5
|
|
pair_style lj/cut/opt 2.5
|
|
pair_coeff * * 1 1
|
|
pair_coeff 1 1 1 1.1 2.8 :pre
|
|
|
|
pair_style lj/cut/coul/cut 10.0
|
|
pair_style lj/cut/coul/cut 10.0 8.0
|
|
pair_coeff * * 100.0 3.0
|
|
pair_coeff 1 1 100.0 3.5 9.0
|
|
pair_coeff 1 1 100.0 3.5 9.0 9.0 :pre
|
|
|
|
pair_style lj/cut/coul/debye 1.5 3.0
|
|
pair_style lj/cut/coul/debye 1.5 2.5 5.0
|
|
pair_coeff * * 1.0 1.0
|
|
pair_coeff 1 1 1.0 1.5 2.5
|
|
pair_coeff 1 1 1.0 1.5 2.5 5.0 :pre
|
|
|
|
pair_style lj/cut/coul/long 10.0
|
|
pair_style lj/cut/coul/long 10.0 8.0
|
|
pair_coeff * * 100.0 3.0
|
|
pair_coeff 1 1 100.0 3.5 9.0 :pre
|
|
|
|
pair_style lj/cut/coul/long/tip4p 1 2 7 8 0.3 12.0
|
|
pair_style lj/cut/coul/long/tip4p 1 2 7 8 0.3 12.0 10.0
|
|
pair_coeff * * 100.0 3.0
|
|
pair_coeff 1 1 100.0 3.5 9.0 :pre
|
|
|
|
[Description:]
|
|
|
|
The {lj/cut} styles compute the standard 12/6 Lennard-Jones potential,
|
|
given by
|
|
|
|
:c,image(Eqs/pair_lj.jpg)
|
|
|
|
Rc is the cutoff.
|
|
|
|
Style {lj/cut/gpu} is a GPU-enabled version of style {lj/cut} that
|
|
should give identical answers. Depending on system size and the GPU
|
|
processor you have on your system, it may be 4x faster (for the
|
|
pairwise portion of the run time). See more details below.
|
|
|
|
Style {lj/cut/opt} is an optimized version of style {lj/cut} that
|
|
should give identical answers. Depending on system size and the
|
|
processor you are running on, it may be 5-25% faster (for the pairwise
|
|
portion of the run time).
|
|
|
|
Style {lj/cut/coul/cut} adds a Coulombic pairwise interaction 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. If one cutoff is
|
|
specified in the pair_style command, it is used for both the LJ and
|
|
Coulombic terms. If two cutoffs are specified, they are used as
|
|
cutoffs for the LJ and Coulombic terms respectively.
|
|
|
|
Style {lj/cut/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.
|
|
|
|
Style {lj/cut/coul/long} computes the same Coulombic interactions as
|
|
style {lj/cut/coul/cut} except that an additional damping factor is
|
|
applied to the Coulombic term 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 {lj/cut/coul/long/tip4p} implements 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.
|
|
|
|
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#4_8 for more information on
|
|
how to use the TIP4P pair style.
|
|
|
|
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:
|
|
|
|
epsilon (energy units)
|
|
sigma (distance units)
|
|
cutoff1 (distance units)
|
|
cutoff2 (distance units) :ul
|
|
|
|
Note that sigma is defined in the LJ formula as the zero-crossing
|
|
distance for the potential, not as the energy minimum at 2^(1/6)
|
|
sigma.
|
|
|
|
The latter 2 coefficients are optional. If not specified, the global
|
|
LJ and Coulombic cutoffs specified in the pair_style command are used.
|
|
If only one cutoff is specified, it is used as the cutoff for both LJ
|
|
and Coulombic interactions for this type pair. If both coefficients
|
|
are specified, they are used as the LJ and Coulombic cutoffs for this
|
|
type pair. You cannot specify 2 cutoffs for style {lj/cut}, since it
|
|
has no Coulombic terms.
|
|
|
|
For {lj/cut/coul/long} and {lj/cut/coul/long/tip4p} only the LJ cutoff
|
|
can be specified since a Coulombic cutoff cannot be specified for an
|
|
individual I,J type pair. All type pairs use the same global
|
|
Coulombic cutoff specified in the pair_style command.
|
|
|
|
:line
|
|
|
|
The {lj/cut/gpu} style is identical to the {lj/cut} style, except that
|
|
each processor off-loads its pairwise calculations to a GPU chip.
|
|
Depending on the hardware available on your system this can provide a
|
|
speed-up. See the "Running on GPUs"_Section_start.html#2_8 section of
|
|
the manual for more details about hardware and software requirements
|
|
for using GPUs.
|
|
|
|
The {gpumode} and {gpuID} settings in the pair_style command refer to
|
|
how the GPUs on your system are configured.
|
|
|
|
Set {gpumode} to {one/node} if you have a single compute "node" on
|
|
your system, which may have multiple cores and/or GPUs. {GpuID}
|
|
should be set to the ID of the (first) GPU you wish to use with LAMMPS
|
|
(another GPU might be driving your display).
|
|
|
|
Set {gpumode} to {one/gpu} if you have multiple compute "nodes" on
|
|
your system, with one GPU per node. {GpuID} should be set to the ID
|
|
of the GPU.
|
|
|
|
Set {gpumode} to {multi/gpu} if you have multiple compute "nodes" on
|
|
your system, each with multiple GPUs. {GpuID} should be set to the
|
|
number of GPUs per node.
|
|
|
|
More details about these settings and various possible hardware
|
|
configuration are in "this section"_Section_start.html#2_8 of the
|
|
manual.
|
|
|
|
Additional requirements in your input script to run with style
|
|
{lj/cut/gpu} are as follows:
|
|
|
|
The "newton pair"_newton.html setting must be {off}.
|
|
|
|
:line
|
|
|
|
[Mixing, shift, table, tail correction, restart, rRESPA info]:
|
|
|
|
For atom type pairs I,J and I != J, the epsilon and sigma coefficients
|
|
and cutoff distance for all of the lj/cut pair styles can be mixed.
|
|
The default mix value is {geometric}. See the "pair_modify" command
|
|
for details.
|
|
|
|
All of the lj/cut pair styles support the
|
|
"pair_modify"_pair_modify.html shift option for the energy of the
|
|
Lennard-Jones portion of the pair interaction.
|
|
|
|
The {lj/cut/coul/long} and {lj/cut/coul/long/tip4p} pair styles
|
|
support the "pair_modify"_pair_modify.html table option since they can
|
|
tabulate the short-range portion of the long-range Coulombic
|
|
interaction.
|
|
|
|
All of the lj/cut pair styles support the
|
|
"pair_modify"_pair_modify.html tail option for adding a long-range
|
|
tail correction to the energy and pressure of the Lennard-Jones
|
|
portion of the pair interaction.
|
|
|
|
All of the lj/cut 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.
|
|
|
|
The lj/cut and lj/cut/coul/long pair styles support the use of the
|
|
{inner}, {middle}, and {outer} keywords of the "run_style
|
|
respa"_run_style.html command, meaning the pairwise forces can be
|
|
partitioned by distance at different levels of the rRESPA hierarchy.
|
|
The other styles only support the {pair} keyword of run_style respa.
|
|
See the "run_style"_run_style.html command for details.
|
|
|
|
:line
|
|
|
|
[Restrictions:]
|
|
|
|
The {lj/cut/coul/long} and {lj/cut/coul/long/tip4p} styles are part of
|
|
the "kspace" package. The {lj/cut/gpu} style is part of the "gpu"
|
|
package. The {lj/cut/opt} style is part of the "opt" package. They
|
|
are only enabled if LAMMPS was built with those packages. See the
|
|
"Making LAMMPS"_Section_start.html#2_3 section for more info. Note
|
|
that the "kspace" package is installed by default.
|
|
|
|
On some 64-bit machines, compiling with -O3 appears to break the
|
|
Coulombic tabling option used by the {lj/cut/coul/long} style. See
|
|
the "Additional build tips" section of the Making LAMMPS documentation
|
|
pages for workarounds on this issue.
|
|
|
|
[Related commands:]
|
|
|
|
"pair_coeff"_pair_coeff.html
|
|
|
|
[Default:] none
|
|
|
|
:line
|
|
|
|
:link(Jorgensen)
|
|
[(Jorgensen)] Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
|
Phys, 79, 926 (1983).
|