lammps/doc/pair_sw.html

190 lines
7.5 KiB
HTML

<HTML>
<CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A>
</CENTER>
<HR>
<H3>pair_style sw command
</H3>
<P><B>Syntax:</B>
</P>
<PRE>pair_style sw
</PRE>
<P><B>Examples:</B>
</P>
<PRE>pair_style sw
pair_coeff * * si.sw Si
pair_coeff * * SiC.sw Si C Si
</PRE>
<P><B>Description:</B>
</P>
<P>The <I>sw</I> style computes a 3-body <A HREF = "#Stillinger">Stillinger-Weber</A>
potential for the energy E of a system of atoms as
</P>
<CENTER><IMG SRC = "Eqs/pair_sw.jpg">
</CENTER>
<P>where phi2 is a two-body term and phi3 is a three-body term. The
summations in the formula are over all neighbors J and K of atom I
within a cutoff distance = a*sigma.
</P>
<P>Only a single pair_coeff command is used with the <I>sw</I> style which
specifies a Stillinger-Weber 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:
</P>
<UL><LI>filename
<LI>N element names = mapping of SW elements to atom types
</UL>
<P>As an example, imagine the SiC.sw file has Stillinger-Weber values for
Si and C. If your LAMMPS simulation has 4 atoms types and you want
the 1st 3 to be Si, and the 4th to be C, you would use the following
pair_coeff command:
</P>
<PRE>pair_coeff * * SiC.sw Si Si Si C
</PRE>
<P>The 1st 2 arguments must be * * so as to span all LAMMPS atom types.
The first three Si arguments map LAMMPS atom types 1,2,3 to the Si
element in the SW file. The final C argument maps LAMMPS atom type 4
to the C element in the SW file. If a mapping value is specified as
NULL, the mapping is not performed. This can be used when a <I>sw</I>
potential is used as part of the <I>hybrid</I> pair style. The NULL values
are placeholders for atom types that will be used with other
potentials.
</P>
<P>Stillinger-Weber files in the <I>potentials</I> directory of the LAMMPS
distribution have a ".sw" 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 the two-body
and three-body coefficients in the formula above:
</P>
<UL><LI>element 1 (the center atom in a 3-body interaction)
<LI>element 2
<LI>element 3
<LI>epsilon (energy units)
<LI>sigma (distance units)
<LI>a
<LI>lambda
<LI>gamma
<LI>costheta0
<LI>A
<LI>B
<LI>p
<LI>q
<LI>tol
</UL>
<P>The A, B, p, and q parameters are used only for two-body
interactions. The lambda and costheta0 parameters are used only for
three-body interactions. The epsilon, sigma and a parameters are used
for both two-body and three-body interactions. gamma is used only in the
three-body interactions, but is defined for pairs of atoms.
The non-annotated parameters are unitless.
</P>
<P>Lammps introduces an additional performance-optimization parameter
tol that is used for
both two-body and three-body interactions.
In the Stillinger-Weber potential, the
interaction enrgies become negligibly small at atomic separations
substantially less than the theoretical cutoff
distances. Lammps therefore defines a virtual cutoff distance
based on a user defined tolerance tol.
The use of the virtual cutoff distance in constructing atom neighbor
lists can significantly reduce the neighbor list sizes and therefore the
computational cost. Lammps provide a tol value for each of the three-body
entries so that they can be separately controlled. If tol = 0.0, then
the standard Stillinger-Weber cutoff is used.
</P>
<P>The Stillinger-Weber 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.
</P>
<P>For a single-element simulation, only a single entry is required
(e.g. SiSiSi). For a two-element simulation, the file must contain 8
entries (for SiSiSi, SiSiC, SiCSi, SiCC, CSiSi, CSiC, CCSi, CCC), that
specify SW parameters for all permutations of the two elements
interacting in three-body configurations. Thus for 3 elements, 27
entries would be required, etc.
</P>
<P>As annotated above, the first element in the entry is the center atom
in a three-body interaction. Thus an entry for SiCC means a Si atom
with 2 C atoms as neighbors. The parameter values used for
the two-body interaction come
from the entry where the 2nd and 3rd elements are the same.
Thus the two-body
parameters for Si interacting with C, comes from the SiCC entry.
The three-body parameters can in principle be specific to the
three elements of the configuration. In the literature, however, the
three-body parameters are usually defined by simple formulas involving
two sets of pair-wise parameters, corresponding to the ij and ik pairs,
where i is the center atom. The user must
ensure that the correct combining rule is used to calculate the
values of the threebody parameters for alloys. Note also that
the function phi3 contains two exponential screening factors with parameter
values from the ij pair and ik pairs. So phi3 for a C atom bonded to a Si atom and
a second C atom will depend on the three-body parameters for the CSiC
entry, and also on the two-body parameters for the CCC and CSiSi entries. Since the order
of the two neighbors is arbitrary, the threebody parameters for entries CSiC and CCSi
should be the same.
Similarly, the two-body parameters for entries SiCC
and CSiSi should also be the same.
The parameters used only for two-body interactions (A, B, p, and q)
in entries whose 2nd and 3rd element are different (e.g. SiCSi)
are not used for anything and can be set to 0.0 if desired.
</P>
<HR>
<P><B>Mixing, shift, table, tail correction, restart, rRESPA info</B>:
</P>
<P>For atom type pairs I,J and I != J, where types I and J correspond to
two different element types, mixing is performed by LAMMPS as
described above from values in the potential file.
</P>
<P>This pair style does not support the <A HREF = "pair_modify.html">pair_modify</A>
shift, table, and tail options.
</P>
<P>This pair style does not write its information to <A HREF = "restart.html">binary restart
files</A>, 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.
</P>
<P>This pair style can only be used via the <I>pair</I> keyword of the
<A HREF = "run_style.html">run_style respa</A> command. It does not support the
<I>inner</I>, <I>middle</I>, <I>outer</I> keywords.
</P>
<HR>
<P><B>Restrictions:</B>
</P>
<P>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 <A HREF = "Section_start.html#2_3">Making LAMMPS</A> section for more info.
</P>
<P>This pair style requires the <A HREF = "newton.html">newton</A> setting to be "on"
for pair interactions.
</P>
<P>The Stillinger-Weber potential files provided with LAMMPS (see the
potentials directory) are parameterized for metal <A HREF = "units.html">units</A>.
You can use the SW potential with any LAMMPS units, but you would need
to create your own SW potential file with coefficients listed in the
appropriate units if your simulation doesn't use "metal" units.
</P>
<P><B>Related commands:</B>
</P>
<P><A HREF = "pair_coeff.html">pair_coeff</A>
</P>
<P><B>Default:</B> none
</P>
<HR>
<A NAME = "Stillinger"></A>
<P><B>(Stillinger)</B> Stillinger and Weber, Phys Rev B, 31, 5262 (1985).
</P>
</HTML>