LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands

pair_style lj/cut command

pair_style lj/cut/gpu command

pair_style lj/cut/opt command

pair_style lj/cut/coul/cut command

pair_style lj/cut/coul/cut/gpu command

pair_style lj/cut/coul/debye command

pair_style lj/cut/coul/long command

pair_style lj/cut/coul/long/gpu command

pair_style lj/cut/coul/long/tip4p command

Syntax:

pair_style style args 
  lj/cut args = cutoff
    cutoff = global cutoff for Lennard Jones interactions (distance units)
  lj/cut/gpu args = cutoff
    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/cut/gpu 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/gpu 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) 

Examples:

pair_style lj/cut 2.5
pair_style lj/cut/gpu 2.5
pair_style lj/cut/opt 2.5
pair_coeff * * 1 1
pair_coeff 1 1 1 1.1 2.8 
pair_style lj/cut/coul/cut 10.0
pair_style lj/cut/coul/cut/gpu 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 
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 
pair_style lj/cut/coul/long 10.0
pair_style lj/cut/coul/long/gpu 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 
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 

Description:

The lj/cut styles compute the standard 12/6 Lennard-Jones potential, given by

Rc is the cutoff.

Style lj/cut/gpu is a GPU-enabled version of style lj/cut. 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

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 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/cut/gpu is a GPU-enabled version of style lj/cut/coul/cut. See more details below.

Style lj/cut/coul/debye adds an additional exp() damping factor to the Coulombic term, given by

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 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/gpu is a GPU-enabled version of style lj/cut/coul/long. See more details below.

Style lj/cut/coul/long/tip4p implements the TIP4P water model of (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 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 command as in the examples above, or in the data file or restart files read by the read_data or read_restart commands, or by mixing as described below:

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.


The lj/cut/gpu, lj/cut/coul/cut/gpu, and lj/cut/coul/long/gpu styles are identical to the lj/cut, lj/cut/coul/cut, and lj/cut/coul/long styles, 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 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 of the manual.

Additional requirements in your input script to run with GPU-enabled styles are as follows:

The newton pair setting must be off and fix gpu must be used. The fix controls the essential GPU selection and initialization steps.


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 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 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 tail option for adding a long-range tail correction to the energy and pressure for the Lennard-Jones portion of the pair interaction.

All of the lj/cut pair styles write their information to binary restart files, 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 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 command for details.


Restrictions:

The lj/cut/coul/long and lj/cut/coul/long/tip4p styles are part of the "kspace" package. The lj/cut/gpu, lj/cut/coul/cut/gpu, and lj/cut/coul/long/gpu styles are 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 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

Default: none


(Jorgensen) Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem Phys, 79, 926 (1983).