2015-07-30 22:53:28 +08:00
<!DOCTYPE html>
<!-- [if IE 8]><html class="no - js lt - ie9" lang="en" > <![endif] -->
<!-- [if gt IE 8]><! --> < html class = "no-js" lang = "en" > <!-- <![endif] -->
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
2015-12-21 23:20:41 +08:00
< title > pair_style table command — LAMMPS documentation< / title >
2015-07-30 22:53:28 +08:00
< link rel = "stylesheet" href = "_static/css/theme.css" type = "text/css" / >
< link rel = "stylesheet" href = "_static/sphinxcontrib-images/LightBox2/lightbox2/css/lightbox.css" type = "text/css" / >
2015-12-21 23:20:41 +08:00
< link rel = "top" title = "LAMMPS documentation" href = "index.html" / >
2015-07-30 22:53:28 +08:00
< script src = "_static/js/modernizr.min.js" > < / script >
< / head >
< body class = "wy-body-for-nav" role = "document" >
< div class = "wy-grid-for-nav" >
< nav data-toggle = "wy-nav-shift" class = "wy-nav-side" >
< div class = "wy-side-nav-search" >
< a href = "Manual.html" class = "icon icon-home" > LAMMPS
< / a >
< div role = "search" >
< form id = "rtd-search-form" class = "wy-form" action = "search.html" method = "get" >
< input type = "text" name = "q" placeholder = "Search docs" / >
< input type = "hidden" name = "check_keywords" value = "yes" / >
< input type = "hidden" name = "area" value = "default" / >
< / form >
< / div >
< / div >
< div class = "wy-menu wy-menu-vertical" data-spy = "affix" role = "navigation" aria-label = "main navigation" >
< ul >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_intro.html" > 1. Introduction< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_start.html" > 2. Getting Started< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_commands.html" > 3. Commands< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_packages.html" > 4. Packages< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_accelerate.html" > 5. Accelerating LAMMPS performance< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_howto.html" > 6. How-to discussions< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_example.html" > 7. Example problems< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_perf.html" > 8. Performance & scalability< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_tools.html" > 9. Additional tools< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_modify.html" > 10. Modifying & extending LAMMPS< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_python.html" > 11. Python interface to LAMMPS< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_errors.html" > 12. Errors< / a > < / li >
< li class = "toctree-l1" > < a class = "reference internal" href = "Section_history.html" > 13. Future and history< / a > < / li >
< / ul >
< / div >
< / nav >
< section data-toggle = "wy-nav-shift" class = "wy-nav-content-wrap" >
< nav class = "wy-nav-top" role = "navigation" aria-label = "top navigation" >
< i data-toggle = "wy-nav-top" class = "fa fa-bars" > < / i >
< a href = "Manual.html" > LAMMPS< / a >
< / nav >
< div class = "wy-nav-content" >
< div class = "rst-content" >
< div role = "navigation" aria-label = "breadcrumbs navigation" >
< ul class = "wy-breadcrumbs" >
< li > < a href = "Manual.html" > Docs< / a > » < / li >
< li > pair_style table command< / li >
< li class = "wy-breadcrumbs-aside" >
< a href = "http://lammps.sandia.gov" > Website< / a >
< a href = "Section_commands.html#comm" > Commands< / a >
< / li >
< / ul >
< hr / >
< / div >
< div role = "main" class = "document" itemscope = "itemscope" itemtype = "http://schema.org/Article" >
< div itemprop = "articleBody" >
< div class = "section" id = "pair-style-table-command" >
< span id = "index-0" > < / span > < h1 > pair_style table command< a class = "headerlink" href = "#pair-style-table-command" title = "Permalink to this headline" > ¶< / a > < / h1 >
< / div >
< div class = "section" id = "pair-style-table-gpu-command" >
< h1 > pair_style table/gpu command< a class = "headerlink" href = "#pair-style-table-gpu-command" title = "Permalink to this headline" > ¶< / a > < / h1 >
< / div >
< div class = "section" id = "pair-style-table-kk-command" >
< h1 > pair_style table/kk command< a class = "headerlink" href = "#pair-style-table-kk-command" title = "Permalink to this headline" > ¶< / a > < / h1 >
< / div >
< div class = "section" id = "pair-style-table-omp-command" >
< h1 > pair_style table/omp command< a class = "headerlink" href = "#pair-style-table-omp-command" title = "Permalink to this headline" > ¶< / a > < / h1 >
< div class = "section" id = "syntax" >
< h2 > Syntax< a class = "headerlink" href = "#syntax" title = "Permalink to this headline" > ¶< / a > < / h2 >
< div class = "highlight-python" > < div class = "highlight" > < pre > pair_style table style N keyword ...
< / pre > < / div >
< / div >
< ul class = "simple" >
< li > style = < em > lookup< / em > or < em > linear< / em > or < em > spline< / em > or < em > bitmap< / em > = method of interpolation< / li >
< li > N = use N values in < em > lookup< / em > , < em > linear< / em > , < em > spline< / em > tables< / li >
< li > N = use 2^N values in < em > bitmap< / em > tables< / li >
< li > zero or more keywords may be appended< / li >
< li > keyword = < em > ewald< / em > or < em > pppm< / em > or < em > msm< / em > or < em > dispersion< / em > or < em > tip4p< / em > < / li >
< / ul >
< / div >
< div class = "section" id = "examples" >
< h2 > Examples< a class = "headerlink" href = "#examples" title = "Permalink to this headline" > ¶< / a > < / h2 >
< div class = "highlight-python" > < div class = "highlight" > < pre > pair_style table linear 1000
2013-04-24 06:19:03 +08:00
pair_style table linear 1000 pppm
2006-09-22 00:22:34 +08:00
pair_style table bitmap 12
pair_coeff * 3 morse.table ENTRY1
2015-07-30 22:53:28 +08:00
pair_coeff * 3 morse.table ENTRY1 7.0
< / pre > < / div >
< / div >
< / div >
< div class = "section" id = "description" >
< h2 > Description< a class = "headerlink" href = "#description" title = "Permalink to this headline" > ¶< / a > < / h2 >
< p > Style < em > table< / em > creates interpolation tables of length < em > N< / em > from pair
2006-09-22 00:22:34 +08:00
potential and force values listed in a file(s) as a function of
2015-07-30 22:53:28 +08:00
distance. The files are read by the < a class = "reference internal" href = "pair_coeff.html" > < em > pair_coeff< / em > < / a >
command.< / p >
< p > The interpolation tables are created by fitting cubic splines to the
file values and interpolating energy and force values at each of < em > N< / em >
2006-09-22 00:22:34 +08:00
distances. During a simulation, these tables are used to interpolate
energy and force values as needed. The interpolation is done in one
2015-07-30 22:53:28 +08:00
of 4 styles: < em > lookup< / em > , < em > linear< / em > , < em > spline< / em > , or < em > bitmap< / em > .< / p >
< p > For the < em > lookup< / em > style, the distance between 2 atoms is used to find
the nearest table entry, which is the energy or force.< / p >
< p > For the < em > linear< / em > style, the pair distance is used to find 2
2009-08-11 04:13:44 +08:00
surrounding table values from which an energy or force is computed by
2015-07-30 22:53:28 +08:00
linear interpolation.< / p >
< p > For the < em > spline< / em > style, a cubic spline coefficients are computed and
stored at each of the < em > N< / em > values in the table. The pair distance is
2009-08-11 04:13:44 +08:00
used to find the appropriate set of coefficients which are used to
2015-07-30 22:53:28 +08:00
evaluate a cubic polynomial which computes the energy or force.< / p >
< p > For the < em > bitmap< / em > style, the N means to create interpolation tables
2015-04-28 22:16:50 +08:00
that are 2^N in length. The pair distance is used to index into the
2015-07-30 22:53:28 +08:00
table via a fast bit-mapping technique due to < a class = "reference internal" href = "#wolff" > < span > (Wolff)< / span > < / a > , and a
linear interpolation is performed between adjacent table values.< / p >
< p > The following coefficients must be defined for each pair of atoms
types via the < a class = "reference internal" href = "pair_coeff.html" > < em > pair_coeff< / em > < / a > command as in the examples
above.< / p >
< ul class = "simple" >
< li > filename< / li >
< li > keyword< / li >
< li > cutoff (distance units)< / li >
< / ul >
< p > The filename specifies a file containing tabulated energy and force
2006-09-22 00:22:34 +08:00
values. The keyword specifies a section of the file. The cutoff is
an optional coefficient. If not specified, the outer cutoff in the
table itself (see below) will be used to build an interpolation table
2008-03-01 09:13:20 +08:00
that extend to the largest tabulated distance. If specified, only
2006-09-22 00:22:34 +08:00
file values up to the cutoff are used to create the interpolation
2015-07-30 22:53:28 +08:00
table. The format of this file is described below.< / p >
< p > If your tabulated potential(s) are designed to be used as the
2013-04-24 06:19:03 +08:00
short-range part of one of the long-range solvers specified by the
2015-07-30 22:53:28 +08:00
< a class = "reference internal" href = "kspace_style.html" > < em > kspace_style< / em > < / a > command, then you must use one or
2013-04-24 06:19:03 +08:00
more of the optional keywords listed above for the pair_style command.
2015-07-30 22:53:28 +08:00
These are < em > ewald< / em > or < em > pppm< / em > or < em > msm< / em > or < em > dispersion< / em > or < em > tip4p< / em > . This
2013-04-24 06:19:03 +08:00
is so LAMMPS can insure the short-range potential and long-range
solver are compatible with each other, as it does for other
2015-07-30 22:53:28 +08:00
short-range pair styles, such as < a class = "reference internal" href = "pair_lj.html" > < em > pair_style lj/cut/coul/long< / em > < / a > . Note that it is up to you to insure
2013-04-24 06:19:03 +08:00
the tabulated values for each pair of atom types has the correct
2015-07-30 22:53:28 +08:00
functional form to be compatible with the matching long-range solver.< / p >
< hr class = "docutils" / >
< p > Here are some guidelines for using the pair_style table command to
best effect:< / p >
< ul class = "simple" >
< li > Vary the number of table points; you may need to use more than you think
to get good resolution.< / li >
< li > Always use the < a class = "reference internal" href = "pair_write.html" > < em > pair_write< / em > < / a > command to produce a plot
2008-04-03 07:05:25 +08:00
of what the final interpolated potential looks like. This can show up
2015-07-30 22:53:28 +08:00
interpolation “ features” you may not like.< / li >
< li > Start with the linear style; it’ s the style least likely to have problems.< / li >
< li > Use < em > N< / em > in the pair_style command equal to the “ N” in the tabulation
file, and use the “ RSQ” or “ BITMAP” parameter, so additional interpolation
is not needed. See discussion below.< / li >
< li > Make sure that your tabulated forces and tabulated energies are consistent
(dE/dr = -F) along the entire range of r values.< / li >
< li > Use as large an inner cutoff as possible. This avoids fitting splines
to very steep parts of the potential.< / li >
< / ul >
< hr class = "docutils" / >
< p > The format of a tabulated file is a series of one or more sections,
defined as follows (without the parenthesized comments):< / p >
< div class = "highlight-python" > < div class = "highlight" > < pre > < span class = "c" > # Morse potential for Fe (one or more comment or blank lines)< / span >
< / pre > < / div >
< / div >
< div class = "highlight-python" > < div class = "highlight" > < pre > MORSE_FE (keyword is first text on line)
2006-09-22 00:22:34 +08:00
N 500 R 1.0 10.0 (N, R, RSQ, BITMAP, FPRIME parameters)
(blank)
1 1.0 25.5 102.34 (index, r, energy, force)
2 1.02 23.4 98.5
...
2015-07-30 22:53:28 +08:00
500 10.0 0.001 0.003
< / pre > < / div >
< / div >
< p > A section begins with a non-blank line whose 1st character is not a
“ #” ; blank lines or lines starting with “ #” can be used as comments
2006-09-22 00:22:34 +08:00
between sections. The first line begins with a keyword which
identifies the section. The line can contain additional text, but the
initial text must match the argument specified in the pair_coeff
command. The next line lists (in any order) one or more parameters
for the table. Each parameter is a keyword followed by one or more
2015-07-30 22:53:28 +08:00
numeric values.< / p >
< p > The parameter “ N” is required and its value is the number of table
entries that follow. Note that this may be different than the < em > N< / em >
specified in the < a class = "reference internal" href = "pair_style.html" > < em > pair_style table< / em > < / a > command. Let
Ntable = < em > N< / em > in the pair_style command, and Nfile = “ N” in the
2009-08-11 04:13:44 +08:00
tabulated file. What LAMMPS does is a preliminary interpolation by
creating splines using the Nfile tabulated values as nodal points. It
uses these to interpolate as needed to generate energy and force
values at Ntable different points. The resulting tables of length
Ntable are then used as described above, when computing energy and
force for individual pair distances. This means that if you want the
interpolation tables of length Ntable to match exactly what is in the
tabulated file (with effectively no preliminary interpolation), you
2015-07-30 22:53:28 +08:00
should set Ntable = Nfile, and use the “ RSQ” or “ BITMAP” parameter.
The internal table abscissa is RSQ (separation distance squared).< / p >
< p > All other parameters are optional. If “ R” or “ RSQ” or “ BITMAP” does
2009-08-11 04:13:44 +08:00
not appear, then the distances in each line of the table are used
as-is to perform spline interpolation. In this case, the table values
2015-07-30 22:53:28 +08:00
can be spaced in < em > r< / em > uniformly or however you wish to position table
values in regions of large gradients.< / p >
< p > If used, the parameters “ R” or “ RSQ” are followed by 2 values < em > rlo< / em >
and < em > rhi< / em > . If specified, the distance associated with each energy and
2006-09-22 00:22:34 +08:00
force value is computed from these 2 values (at high accuracy), rather
than using the (low-accuracy) value listed in each line of the table.
2012-04-11 01:11:48 +08:00
The distance values in the table file are ignored in this case.
2015-07-30 22:53:28 +08:00
For “ R” , distances uniformly spaced between < em > rlo< / em > and < em > rhi< / em > are
computed; for “ RSQ” , squared distances uniformly spaced between
< em > rlo*rlo< / em > and < em > rhi*rhi< / em > are computed.< / p >
< p > If used, the parameter “ BITMAP” is also followed by 2 values < em > rlo< / em > and
< em > rhi< / em > . These values, along with the “ N” value determine the ordering
2006-09-22 00:22:34 +08:00
of the N lines that follow and what distance is associated with each.
This ordering is complex, so it is not documented here, since this
2015-07-30 22:53:28 +08:00
file is typically produced by the < a class = "reference internal" href = "pair_write.html" > < em > pair_write< / em > < / a > command
with its < em > bitmap< / em > option. When the table is in BITMAP format, the “ N”
2006-09-22 00:22:34 +08:00
parameter in the file must be equal to 2^M where M is the value
specified in the pair_style command. Also, a cutoff parameter cannot
be used as an optional 3rd argument in the pair_coeff command; the
2015-07-30 22:53:28 +08:00
entire table extent as specified in the file must be used.< / p >
< p > If used, the parameter “ FPRIME” is followed by 2 values < em > fplo< / em > and
< em > fphi< / em > which are the derivative of the force at the innermost and
2006-09-22 00:22:34 +08:00
outermost distances listed in the table. These values are needed by
2015-07-30 22:53:28 +08:00
the spline construction routines. If not specified by the “ FPRIME”
2006-09-22 00:22:34 +08:00
parameter, they are estimated (less accurately) by the first 2 and
last 2 force values in the table. This parameter is not used by
2015-07-30 22:53:28 +08:00
BITMAP tables.< / p >
< p > Following a blank line, the next N lines list the tabulated values.
2006-09-22 00:22:34 +08:00
On each line, the 1st value is the index from 1 to N, the 2nd value is
r (in distance units), the 3rd value is the energy (in energy units),
and the 4th is the force (in force units). The r values must increase
2015-07-30 22:53:28 +08:00
from one line to the next (unless the BITMAP parameter is specified).< / p >
< p > Note that one file can contain many sections, each with a tabulated
2006-09-22 00:22:34 +08:00
potential. LAMMPS reads the file section by section until it finds
2015-07-30 22:53:28 +08:00
one that matches the specified keyword.< / p >
< hr class = "docutils" / >
< p > Styles with a < em > cuda< / em > , < em > gpu< / em > , < em > intel< / em > , < em > kk< / em > , < em > omp< / em > , or < em > opt< / em > suffix are
2014-05-30 06:52:23 +08:00
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
2015-07-30 22:53:28 +08:00
hardware, as discussed in < a class = "reference internal" href = "Section_accelerate.html" > < em > Section_accelerate< / em > < / a >
2014-05-30 06:52:23 +08:00
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
2015-07-30 22:53:28 +08:00
issues.< / p >
< p > These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL,
2014-08-15 00:30:25 +08:00
KOKKOS, USER-OMP and OPT packages, respectively. They are only
2015-07-30 22:53:28 +08:00
enabled if LAMMPS was built with those packages. See the < a class = "reference internal" href = "Section_start.html#start-3" > < span > Making LAMMPS< / span > < / a > section for more info.< / p >
< p > You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the < a class = "reference internal" href = "Section_start.html#start-7" > < span > -suffix command-line switch< / span > < / a > when you invoke LAMMPS, or you can
use the < a class = "reference internal" href = "suffix.html" > < em > suffix< / em > < / a > command in your input script.< / p >
< p > See < a class = "reference internal" href = "Section_accelerate.html" > < em > Section_accelerate< / em > < / a > of the manual for
more instructions on how to use the accelerated styles effectively.< / p >
< hr class = "docutils" / >
< p > < strong > Mixing, shift, table, tail correction, restart, rRESPA info< / strong > :< / p >
< p > This pair style does not support mixing. Thus, coefficients for all
I,J pairs must be specified explicitly.< / p >
< p > The < a class = "reference internal" href = "pair_modify.html" > < em > pair_modify< / em > < / a > shift, table, and tail options are
not relevant for this pair style.< / p >
< p > This pair style writes the settings for the “ pair_style table” command
to < a class = "reference internal" href = "restart.html" > < em > binary restart files< / em > < / a > , so a pair_style command does
2007-06-26 08:03:39 +08:00
not need to specified in an input script that reads a restart file.
However, the coefficient information is not stored in the restart
file, since it is tabulated in the potential files. Thus, pair_coeff
2015-07-30 22:53:28 +08:00
commands do need to be specified in the restart input script.< / p >
< p > This pair style can only be used via the < em > pair< / em > keyword of the
< a class = "reference internal" href = "run_style.html" > < em > run_style respa< / em > < / a > command. It does not support the
< em > inner< / em > , < em > middle< / em > , < em > outer< / em > keywords.< / p >
< / div >
< hr class = "docutils" / >
< div class = "section" id = "restrictions" >
< h2 > Restrictions< a class = "headerlink" href = "#restrictions" title = "Permalink to this headline" > ¶< / a > < / h2 >
< blockquote >
< div > none< / div > < / blockquote >
< / div >
< div class = "section" id = "related-commands" >
< h2 > Related commands< a class = "headerlink" href = "#related-commands" title = "Permalink to this headline" > ¶< / a > < / h2 >
< p > < a class = "reference internal" href = "pair_coeff.html" > < em > pair_coeff< / em > < / a > < / p >
< p > < strong > Default:< / strong > none< / p >
< hr class = "docutils" / >
< p id = "wolff" > < strong > (Wolff)< / strong > Wolff and Rudd, Comp Phys Comm, 120, 200-32 (1999).< / p >
< / div >
< / div >
< / div >
< / div >
< footer >
< hr / >
< div role = "contentinfo" >
< p >
2015-12-11 01:23:56 +08:00
© Copyright 2013 Sandia Corporation.
2015-07-30 22:53:28 +08:00
< / p >
< / div >
Built with < a href = "http://sphinx-doc.org/" > Sphinx< / a > using a < a href = "https://github.com/snide/sphinx_rtd_theme" > theme< / a > provided by < a href = "https://readthedocs.org" > Read the Docs< / a > .
< / footer >
< / div >
< / div >
< / section >
< / div >
< script type = "text/javascript" >
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'./',
2015-12-21 23:20:41 +08:00
VERSION:'',
2015-07-30 22:53:28 +08:00
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true
};
< / script >
< script type = "text/javascript" src = "_static/jquery.js" > < / script >
< script type = "text/javascript" src = "_static/underscore.js" > < / script >
< script type = "text/javascript" src = "_static/doctools.js" > < / script >
< script type = "text/javascript" src = "https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" > < / script >
< script type = "text/javascript" src = "_static/sphinxcontrib-images/LightBox2/lightbox2/js/jquery-1.11.0.min.js" > < / script >
< script type = "text/javascript" src = "_static/sphinxcontrib-images/LightBox2/lightbox2/js/lightbox.min.js" > < / script >
< script type = "text/javascript" src = "_static/sphinxcontrib-images/LightBox2/lightbox2-customize/jquery-noconflict.js" > < / script >
< script type = "text/javascript" src = "_static/js/theme.js" > < / script >
< script type = "text/javascript" >
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
< / script >
< / body >
< / html >