git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@3037 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp
2009-08-10 20:13:44 +00:00
parent 2c6dc60a30
commit 1dbef4b5f8
26 changed files with 829 additions and 101 deletions

BIN
doc/Eqs/pair_lj96.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

11
doc/Eqs/pair_lj96.tex Normal file
View File

@ -0,0 +1,11 @@
\documentstyle[12pt]{article}
\begin{document}
$$
E = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{9} -
\left(\frac{\sigma}{r}\right)^6 \right]
\qquad r < r_c
$$
\end{document}

View File

@ -373,10 +373,10 @@ full description:
<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/tip4p</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_lj_smooth.html">lj/smooth</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate</A></TD><TD ><A HREF = "pair_meam.html">meam</A></TD><TD ><A HREF = "pair_morse.html">morse</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_morse.html">morse/opt</A></TD><TD ><A HREF = "pair_peri_pmb.html">peri/pmb</A></TD><TD ><A HREF = "pair_reax.html">reax</A></TD><TD ><A HREF = "pair_resquared.html">resquared</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_soft.html">soft</A></TD><TD ><A HREF = "pair_sw.html">sw</A></TD><TD ><A HREF = "pair_table.html">table</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa</A>
<TR ALIGN="center"><TD ><A HREF = "pair_lj_smooth.html">lj/smooth</A></TD><TD ><A HREF = "pair_lj96_cut.html">lj96/cut</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate</A></TD><TD ><A HREF = "pair_meam.html">meam</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_morse.html">morse</A></TD><TD ><A HREF = "pair_morse.html">morse/opt</A></TD><TD ><A HREF = "pair_peri_pmb.html">peri/pmb</A></TD><TD ><A HREF = "pair_reax.html">reax</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_resquared.html">resquared</A></TD><TD ><A HREF = "pair_soft.html">soft</A></TD><TD ><A HREF = "pair_sw.html">sw</A></TD><TD ><A HREF = "pair_table.html">table</A></TD></TR>
<TR ALIGN="center"><TD ><A HREF = "pair_tersoff.html">tersoff</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa</A>
</TD></TR></TABLE></DIV>
<P>These are pair styles contributed by users, which can be used if
@ -396,7 +396,7 @@ full description:
<DIV ALIGN=center><TABLE BORDER=1 >
<TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_none.html">none</A></TD><TD WIDTH="100"><A HREF = "bond_hybrid.html">hybrid</A></TD><TD WIDTH="100"><A HREF = "bond_class2.html">class2</A></TD><TD WIDTH="100"><A HREF = "bond_fene.html">fene</A></TD></TR>
<TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_fene_expand.html">fene/expand</A></TD><TD WIDTH="100"><A HREF = "bond_harmonic.html">harmonic</A></TD><TD WIDTH="100"><A HREF = "bond_morse.html">morse</A></TD><TD WIDTH="100"><A HREF = "bond_nonlinear.html">nonlinear</A></TD></TR>
<TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_quartic.html">quartic</A>
<TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_quartic.html">quartic</A></TD><TD WIDTH="100"><A HREF = "bond_table.html">table</A>
</TD></TR></TABLE></DIV>
<HR>
@ -407,7 +407,8 @@ itself for a full description:
</P>
<DIV ALIGN=center><TABLE BORDER=1 >
<TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_none.html">none</A></TD><TD WIDTH="100"><A HREF = "angle_hybrid.html">hybrid</A></TD><TD WIDTH="100"><A HREF = "angle_charmm.html">charmm</A></TD><TD WIDTH="100"><A HREF = "angle_class2.html">class2</A></TD></TR>
<TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_cosine.html">cosine</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_delta.html">cosine/delta</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_squared.html">cosine/squared</A></TD><TD WIDTH="100"><A HREF = "angle_harmonic.html">harmonic</A>
<TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_cosine.html">cosine</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_delta.html">cosine/delta</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_squared.html">cosine/squared</A></TD><TD WIDTH="100"><A HREF = "angle_harmonic.html">harmonic</A></TD></TR>
<TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_table.html">table</A>
</TD></TR></TABLE></DIV>
<P>These are angle styles contributed by users, which can be used if

View File

@ -533,6 +533,7 @@ full description:
"lj/gromacs"_pair_gromacs.html,
"lj/gromacs/coul/gromacs"_pair_gromacs.html,
"lj/smooth"_pair_lj_smooth.html,
"lj96/cut"_pair_lj96_cut.html,
"lubricate"_pair_lubricate.html,
"meam"_pair_meam.html,
"morse"_pair_morse.html,
@ -570,7 +571,8 @@ full description:
"harmonic"_bond_harmonic.html,
"morse"_bond_morse.html,
"nonlinear"_bond_nonlinear.html,
"quartic"_bond_quartic.html :tb(c=4,ea=c,w=100)
"quartic"_bond_quartic.html,
"table"_bond_table.html :tb(c=4,ea=c,w=100)
:line
@ -585,7 +587,8 @@ itself for a full description:
"cosine"_angle_cosine.html,
"cosine/delta"_angle_cosine_delta.html,
"cosine/squared"_angle_cosine_squared.html,
"harmonic"_angle_harmonic.html :tb(c=4,ea=c,w=100)
"harmonic"_angle_harmonic.html,
"table"_angle_table.html :tb(c=4,ea=c,w=100)
These are angle styles contributed by users, which can be used if
"LAMMPS is built with the appropriate package"_Section_start.html#2_3.

View File

@ -70,7 +70,8 @@ specified by the associated <A HREF = "angle_coeff.html">angle_coeff</A> command
<LI><A HREF = "angle_cosine.html">angle_style cosine</A> - cosine angle potential
<LI><A HREF = "angle_cosine_delta.html">angle_style cosine/delta</A> - difference of cosines angle potential
<LI><A HREF = "angle_cosine_squared.html">angle_style cosine/squared</A> - cosine squared angle potential
<LI><A HREF = "angle_harmonic.html">angle_style harmonic</A> - harmonic angle
<LI><A HREF = "angle_harmonic.html">angle_style harmonic</A> - harmonic angle
<LI><A HREF = "angle_table.html">angle_style table</A> - tabulated by angle
</UL>
<HR>

View File

@ -67,7 +67,8 @@ specified by the associated "angle_coeff"_angle_coeff.html command:
"angle_style cosine"_angle_cosine.html - cosine angle potential
"angle_style cosine/delta"_angle_cosine_delta.html - difference of cosines angle potential
"angle_style cosine/squared"_angle_cosine_squared.html - cosine squared angle potential
"angle_style harmonic"_angle_harmonic.html - harmonic angle :ul
"angle_style harmonic"_angle_harmonic.html - harmonic angle
"angle_style table"_angle_table.html - tabulated by angle :ul
:line

View File

@ -67,7 +67,8 @@ specified by the associated <A HREF = "angle_coeff.html">angle_coeff</A> command
<LI><A HREF = "angle_cosine.html">angle_style cosine</A> - cosine angle potential
<LI><A HREF = "angle_cosine_delta.html">angle_style cosine/delta</A> - difference of cosines angle potential
<LI><A HREF = "angle_cosine_squared.html">angle_style cosine/squared</A> - cosine squared angle potential
<LI><A HREF = "angle_harmonic.html">angle_style harmonic</A> - harmonic angle
<LI><A HREF = "angle_harmonic.html">angle_style harmonic</A> - harmonic angle
<LI><A HREF = "angle_table.html">angle_style table</A> - tabulated by angle
</UL>
<HR>

View File

@ -65,7 +65,8 @@ specified by the associated "angle_coeff"_angle_coeff.html command:
"angle_style cosine"_angle_cosine.html - cosine angle potential
"angle_style cosine/delta"_angle_cosine_delta.html - difference of cosines angle potential
"angle_style cosine/squared"_angle_cosine_squared.html - cosine squared angle potential
"angle_style harmonic"_angle_harmonic.html - harmonic angle :ul
"angle_style harmonic"_angle_harmonic.html - harmonic angle
"angle_style table"_angle_table.html - tabulated by angle :ul
:line

130
doc/angle_table.html Normal file
View File

@ -0,0 +1,130 @@
<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>angle_style table command
</H3>
<P><B>Syntax:</B>
</P>
<PRE>angle_style table style N
</PRE>
<UL><LI>style = <I>linear</I> or <I>spline</I> = method of interpolation
<LI>N = use N values in table
</UL>
<P><B>Examples:</B>
</P>
<PRE>angle_style table linear 1000
angle_coeff 3 file.table ENTRY1
</PRE>
<P><B>Description:</B>
</P>
<P>Style <I>table</I> creates interpolation tables of length <I>N</I> from angle
potential and force values listed in a file(s) as a function of angle
The files are read by the <A HREF = "angle_coeff.html">angle_coeff</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 <I>N</I>
distances. During a simulation, these tables are used to interpolate
energy and force values as needed. The interpolation is done in one
of 2 styles: <I>linear</I> or <I>spline</I>.
</P>
<P>For the <I>linear</I> style, the angle is used to find 2 surrounding table
values from which an energy or force is computed by linear
interpolation.
</P>
<P>For the <I>spline</I> style, a cubic spline coefficients are computed and
stored at each of the <I>N</I> values in the table. The angle is used to
find the appropriate set of coefficients which are used to evaluate a
cubic polynomial which computes the energy or force.
</P>
<P>The following coefficients must be defined for each angle type via the
<A HREF = "angle_coeff.html">angle_coeff</A> command as in the example above.
</P>
<UL><LI>filename
<LI>keyword
</UL>
<P>The filename specifies a file containing tabulated energy and force
values. The keyword specifies a section of the file. The format of
this file is described below.
</P>
<HR>
<P>The format of a tabulated file is as follows (without the
parenthesized comments):
</P>
<PRE># Angle potential for harmonic (one or more comment or blank lines)
</PRE>
<PRE>HAM (keyword is the first text on line)
N 181 FP 0 0 EQ 90.0 (N, FP, EQ parameters)
(blank line)
N 181 FP 0 0 (N, FP parameters)
1 0.0 200.5 2.5 (index, angle, energy, force)
2 1.0 198.0 2.5
...
181 180.0 0.0 0.0
</PRE>
<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
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
<A HREF = "angle_coeff.html">angle_coeff</A> 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 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 <I>N</I>
specified in the <A HREF = "angle_style.html">angle_style table</A> command. Let
Ntable = <I>N</I> in the angle_style command, and Nfile = "N" in the
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 angles. 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
should set Ntable = Nfile.
</P>
<P>The "FP" parameter is optional. If used, it is followed by two values
fplo and fphi, which are the derivatives of the force at the innermost
and outermost angle settings. These values are needed by the spline
construction routines. If not specified by the "FP" parameter, they
are estimated (less accurately) by the first two and last two force
values in the table.
</P>
<P>The "EQ" parameter is also optional. If used, it is followed by a the
equilibrium angle value, which is used, for example, by the <A HREF = "fix_shake.html">fix
shake</A> command. If not used, the equilibrium angle is
set to 180.0.
</P>
<P>Following a blank line, the next N lines list the tabulated values.
On each line, the 1st value is the index from 1 to N, the 2nd value is
the angle value (in degrees), the 3rd value is the energy (in energy
units), and the 4th is the force (in force units). The angle values
must increase from one line to the next.
</P>
<P>Note that one file can contain many sections, each with a tabulated
potential. LAMMPS reads the file section by section until it finds
one that matches the specified keyword.
</P>
<P><B>Restrictions:</B>
</P>
<P>This angle style can only be used if LAMMPS was built with the
"molecular" package (which it is by default). See the <A HREF = "Section_start.html#2_3">Making
LAMMPS</A> section for more info on packages.
</P>
<P><B>Related commands:</B>
</P>
<P><A HREF = "angle_coeff.html">angle_coeff</A>
</P>
<P><B>Default:</B> none
</P>
</HTML>

125
doc/angle_table.txt Normal file
View File

@ -0,0 +1,125 @@
"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
angle_style table command :h3
[Syntax:]
angle_style table style N :pre
style = {linear} or {spline} = method of interpolation
N = use N values in table :ul
[Examples:]
angle_style table linear 1000
angle_coeff 3 file.table ENTRY1 :pre
[Description:]
Style {table} creates interpolation tables of length {N} from angle
potential and force values listed in a file(s) as a function of angle
The files are read by the "angle_coeff"_angle_coeff.html command.
The interpolation tables are created by fitting cubic splines to the
file values and interpolating energy and force values at each of {N}
distances. During a simulation, these tables are used to interpolate
energy and force values as needed. The interpolation is done in one
of 2 styles: {linear} or {spline}.
For the {linear} style, the angle is used to find 2 surrounding table
values from which an energy or force is computed by linear
interpolation.
For the {spline} style, a cubic spline coefficients are computed and
stored at each of the {N} values in the table. The angle is used to
find the appropriate set of coefficients which are used to evaluate a
cubic polynomial which computes the energy or force.
The following coefficients must be defined for each angle type via the
"angle_coeff"_angle_coeff.html command as in the example above.
filename
keyword :ul
The filename specifies a file containing tabulated energy and force
values. The keyword specifies a section of the file. The format of
this file is described below.
:line
The format of a tabulated file is as follows (without the
parenthesized comments):
# Angle potential for harmonic (one or more comment or blank lines) :pre
HAM (keyword is the first text on line)
N 181 FP 0 0 EQ 90.0 (N, FP, EQ parameters)
(blank line)
N 181 FP 0 0 (N, FP parameters)
1 0.0 200.5 2.5 (index, angle, energy, force)
2 1.0 198.0 2.5
...
181 180.0 0.0 0.0 :pre
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
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
"angle_coeff"_angle_coeff.html 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 numeric values.
The parameter "N" is required and its value is the number of table
entries that follow. Note that this may be different than the {N}
specified in the "angle_style table"_angle_style.html command. Let
Ntable = {N} in the angle_style command, and Nfile = "N" in the
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 angles. 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
should set Ntable = Nfile.
The "FP" parameter is optional. If used, it is followed by two values
fplo and fphi, which are the derivatives of the force at the innermost
and outermost angle settings. These values are needed by the spline
construction routines. If not specified by the "FP" parameter, they
are estimated (less accurately) by the first two and last two force
values in the table.
The "EQ" parameter is also optional. If used, it is followed by a the
equilibrium angle value, which is used, for example, by the "fix
shake"_fix_shake.html command. If not used, the equilibrium angle is
set to 180.0.
Following a blank line, the next N lines list the tabulated values.
On each line, the 1st value is the index from 1 to N, the 2nd value is
the angle value (in degrees), the 3rd value is the energy (in energy
units), and the 4th is the force (in force units). The angle values
must increase from one line to the next.
Note that one file can contain many sections, each with a tabulated
potential. LAMMPS reads the file section by section until it finds
one that matches the specified keyword.
[Restrictions:]
This angle style can only be used if LAMMPS was built with the
"molecular" package (which it is by default). See the "Making
LAMMPS"_Section_start.html#2_3 section for more info on packages.
[Related commands:]
"angle_coeff"_angle_coeff.html
[Default:] none

View File

@ -72,7 +72,8 @@ specified by the associated <A HREF = "bond_coeff.html">bond_coeff</A> command:
<LI><A HREF = "bond_harmonic.html">bond_style harmonic</A> - harmonic bond
<LI><A HREF = "bond_morse.html">bond_style morse</A> - Morse bond
<LI><A HREF = "bond_nonlinear.html">bond_style nonlinear</A> - nonlinear bond
<LI><A HREF = "bond_quartic.html">bond_style quartic</A> - breakable quartic bond
<LI><A HREF = "bond_quartic.html">bond_style quartic</A> - breakable quartic bond
<LI><A HREF = "bond_table.html">bond_style table</A> - tabulated by bond length
</UL>
<HR>

View File

@ -69,7 +69,8 @@ specified by the associated "bond_coeff"_bond_coeff.html command:
"bond_style harmonic"_bond_harmonic.html - harmonic bond
"bond_style morse"_bond_morse.html - Morse bond
"bond_style nonlinear"_bond_nonlinear.html - nonlinear bond
"bond_style quartic"_bond_quartic.html - breakable quartic bond :ul
"bond_style quartic"_bond_quartic.html - breakable quartic bond
"bond_style table"_bond_table.html - tabulated by bond length :ul
:line

View File

@ -77,7 +77,8 @@ specified by the associated <A HREF = "bond_coeff.html">bond_coeff</A> command:
<LI><A HREF = "bond_harmonic.html">bond_style harmonic</A> - harmonic bond
<LI><A HREF = "bond_morse.html">bond_style morse</A> - Morse bond
<LI><A HREF = "bond_nonlinear.html">bond_style nonlinear</A> - nonlinear bond
<LI><A HREF = "bond_quartic.html">bond_style quartic</A> - breakable quartic bond
<LI><A HREF = "bond_quartic.html">bond_style quartic</A> - breakable quartic bond
<LI><A HREF = "bond_table.html">bond_style table</A> - tabulated by bond length
</UL>
<HR>

View File

@ -74,7 +74,8 @@ specified by the associated "bond_coeff"_bond_coeff.html command:
"bond_style harmonic"_bond_harmonic.html - harmonic bond
"bond_style morse"_bond_morse.html - Morse bond
"bond_style nonlinear"_bond_nonlinear.html - nonlinear bond
"bond_style quartic"_bond_quartic.html - breakable quartic bond :ul
"bond_style quartic"_bond_quartic.html - breakable quartic bond
"bond_style table"_bond_table.html - tabulated by bond length :ul
:line

130
doc/bond_table.html Normal file
View File

@ -0,0 +1,130 @@
<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>bond_style table command
</H3>
<P><B>Syntax:</B>
</P>
<PRE>bond_style table style N
</PRE>
<UL><LI>style = <I>linear</I> or <I>spline</I> = method of interpolation
<LI>N = use N values in table
</UL>
<P><B>Examples:</B>
</P>
<PRE>bond_style table linear 1000
bond_coeff 1 file.table ENTRY1
</PRE>
<P><B>Description:</B>
</P>
<P>Style <I>table</I> creates interpolation tables of length <I>N</I> from bond
potential and force values listed in a file(s) as a function of bond
length. The files are read by the <A HREF = "bond_coeff.html">bond_coeff</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 <I>N</I>
distances. During a simulation, these tables are used to interpolate
energy and force values as needed. The interpolation is done in one
of 2 styles: <I>linear</I> or <I>spline</I>.
</P>
<P>For the <I>linear</I> style, the bond length is used to find 2 surrounding
table values from which an energy or force is computed by linear
interpolation.
</P>
<P>For the <I>spline</I> style, a cubic spline coefficients are computed and
stored at each of the <I>N</I> values in the table. The bond length is
used to find the appropriate set of coefficients which are used to
evaluate a cubic polynomial which computes the energy or force.
</P>
<P>The following coefficients must be defined for each bond type via the
<A HREF = "bond_coeff.html">bond_coeff</A> command as in the example above.
</P>
<UL><LI>filename
<LI>keyword
</UL>
<P>The filename specifies a file containing tabulated energy and force
values. The keyword specifies a section of the file. The format of
this file is described below.
</P>
<HR>
<P>The format of a tabulated file is as follows (without the
parenthesized comments):
</P>
<PRE># Bond potential for harmonic (one or more comment or blank lines)
</PRE>
<PRE>HAM (keyword is the first text on line)
N 101 FP 0 0 EQ 0.5 (N, FP, EQ parameters)
(blank line)
1 0.00 338.0000 1352.0000 (index, bond-length, energy, force)
2 0.01 324.6152 1324.9600
...
101 1.00 338.0000 -1352.0000
</PRE>
<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
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
<A HREF = "bond_coeff.html">bond_coeff</A> 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 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 <I>N</I>
specified in the <A HREF = "bond_style.html">bond_style table</A> command. Let
Ntable = <I>N</I> in the bond_style command, and Nfile = "N" in the
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 bond lengths. 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
should set Ntable = Nfile.
</P>
<P>The "FP" parameter is optional. If used, it is followed by two values
fplo and fphi, which are the derivatives of the force at the innermost
and outermost bond lengths. These values are needed by the spline
construction routines. If not specified by the "FP" parameter, they
are estimated (less accurately) by the first two and last two force
values in the table.
</P>
<P>The "EQ" parameter is also optional. If used, it is followed by a the
equilibrium bond length, which is used, for example, by the <A HREF = "fix_shake.html">fix
shake</A> command. If not used, the equilibrium bond
length is set to 0.0.
</P>
<P>Following a blank line, the next N lines list the tabulated values.
On each line, the 1st value is the index from 1 to N, the 2nd value is
the bond length r (in distance units), the 3rd value is the energy (in
energy units), and the 4th is the force (in force units). The bond
lengths must increase from one line to the next.
</P>
<P>Note that one file can contain many sections, each with a tabulated
potential. LAMMPS reads the file section by section until it finds
one that matches the specified keyword.
</P>
<P><B>Restrictions:</B>
</P>
<P>This bond style can only be used if LAMMPS was built with the
"molecular" package (which it is by default). See the <A HREF = "Section_start.html#2_3">Making
LAMMPS</A> section for more info on packages.
</P>
<P><B>Related commands:</B>
</P>
<P><A HREF = "bond_coeff.html">bond_coeff</A>, <A HREF = "delete_bonds.html">delete_bonds</A>
</P>
<P><B>Default:</B> none
</P>
</HTML>

125
doc/bond_table.txt Normal file
View File

@ -0,0 +1,125 @@
"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
bond_style table command :h3
[Syntax:]
bond_style table style N :pre
style = {linear} or {spline} = method of interpolation
N = use N values in table :ul
[Examples:]
bond_style table linear 1000
bond_coeff 1 file.table ENTRY1 :pre
[Description:]
Style {table} creates interpolation tables of length {N} from bond
potential and force values listed in a file(s) as a function of bond
length. The files are read by the "bond_coeff"_bond_coeff.html
command.
The interpolation tables are created by fitting cubic splines to the
file values and interpolating energy and force values at each of {N}
distances. During a simulation, these tables are used to interpolate
energy and force values as needed. The interpolation is done in one
of 2 styles: {linear} or {spline}.
For the {linear} style, the bond length is used to find 2 surrounding
table values from which an energy or force is computed by linear
interpolation.
For the {spline} style, a cubic spline coefficients are computed and
stored at each of the {N} values in the table. The bond length is
used to find the appropriate set of coefficients which are used to
evaluate a cubic polynomial which computes the energy or force.
The following coefficients must be defined for each bond type via the
"bond_coeff"_bond_coeff.html command as in the example above.
filename
keyword :ul
The filename specifies a file containing tabulated energy and force
values. The keyword specifies a section of the file. The format of
this file is described below.
:line
The format of a tabulated file is as follows (without the
parenthesized comments):
# Bond potential for harmonic (one or more comment or blank lines) :pre
HAM (keyword is the first text on line)
N 101 FP 0 0 EQ 0.5 (N, FP, EQ parameters)
(blank line)
1 0.00 338.0000 1352.0000 (index, bond-length, energy, force)
2 0.01 324.6152 1324.9600
...
101 1.00 338.0000 -1352.0000 :pre
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
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
"bond_coeff"_bond_coeff.html 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 numeric values.
The parameter "N" is required and its value is the number of table
entries that follow. Note that this may be different than the {N}
specified in the "bond_style table"_bond_style.html command. Let
Ntable = {N} in the bond_style command, and Nfile = "N" in the
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 bond lengths. 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
should set Ntable = Nfile.
The "FP" parameter is optional. If used, it is followed by two values
fplo and fphi, which are the derivatives of the force at the innermost
and outermost bond lengths. These values are needed by the spline
construction routines. If not specified by the "FP" parameter, they
are estimated (less accurately) by the first two and last two force
values in the table.
The "EQ" parameter is also optional. If used, it is followed by a the
equilibrium bond length, which is used, for example, by the "fix
shake"_fix_shake.html command. If not used, the equilibrium bond
length is set to 0.0.
Following a blank line, the next N lines list the tabulated values.
On each line, the 1st value is the index from 1 to N, the 2nd value is
the bond length r (in distance units), the 3rd value is the energy (in
energy units), and the 4th is the force (in force units). The bond
lengths must increase from one line to the next.
Note that one file can contain many sections, each with a tabulated
potential. LAMMPS reads the file section by section until it finds
one that matches the specified keyword.
[Restrictions:]
This bond style can only be used if LAMMPS was built with the
"molecular" package (which it is by default). See the "Making
LAMMPS"_Section_start.html#2_3 section for more info on packages.
[Related commands:]
"bond_coeff"_bond_coeff.html, "delete_bonds"_delete_bonds.html
[Default:] none

View File

@ -126,6 +126,7 @@ the pair_style command, and coefficients specified by the associated
<LI><A HREF = "pair_gromacs.html">pair_style lj/gromacs</A> - GROMACS-style Lennard-Jones potential
<LI><A HREF = "pair_gromacs.html">pair_style lj/gromacs/coul/gromacs</A> - GROMACS-style LJ and Coulombic potential
<LI><A HREF = "pair_lj_smooth.html">pair_style lj/smooth</A> - smoothed Lennard-Jones potential
<LI><A HREF = "pair_lj96_cut.html">pair_style lj96/cut</A> - Lennard-Jones 9/6 potential
<LI><A HREF = "pair_lubricate.html">pair_style lubricate</A> - hydrodynamic lubrication forces
<LI><A HREF = "pair_meam.html">pair_style meam</A> - modified embedded atom method (MEAM)
<LI><A HREF = "pair_morse.html">pair_style morse</A> - Morse potential

View File

@ -122,6 +122,7 @@ the pair_style command, and coefficients specified by the associated
"pair_style lj/gromacs"_pair_gromacs.html - GROMACS-style Lennard-Jones potential
"pair_style lj/gromacs/coul/gromacs"_pair_gromacs.html - GROMACS-style LJ and Coulombic potential
"pair_style lj/smooth"_pair_lj_smooth.html - smoothed Lennard-Jones potential
"pair_style lj96/cut"_pair_lj96_cut.html - Lennard-Jones 9/6 potential
"pair_style lubricate"_pair_lubricate.html - hydrodynamic lubrication forces
"pair_style meam"_pair_meam.html - modified embedded atom method (MEAM)
"pair_style morse"_pair_morse.html - Morse potential

88
doc/pair_lj96_cut.html Normal file
View File

@ -0,0 +1,88 @@
<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 lj96/cut command
</H3>
<P><B>Syntax:</B>
</P>
<PRE>pair_style lj96/cut cutoff
</PRE>
<UL><LI>cutoff = global cutoff for lj96/cut interactions (distance units)
</UL>
<P><B>Examples:</B>
</P>
<PRE>pair_style lj96/cut 2.5
pair_coeff * * 1.0 1.0 0.5
pair_coeff 1 1 1.0 1.0 -0.2 2.0
</PRE>
<P><B>Description:</B>
</P>
<P>The <I>lj96/cut</I> style compute a 9/6 Lennard-Jones potential, instead
of the standard 12/6 potential, given by
</P>
<CENTER><IMG SRC = "Eqs/pair_lj96.jpg">
</CENTER>
<P>Rc is the cutoff.
</P>
<P>The following coefficients must be defined for each pair of atoms
types via the <A HREF = "pair_coeff.html">pair_coeff</A> command as in the examples
above, or in the data file or restart files read by the
<A HREF = "read_data.html">read_data</A> or <A HREF = "read_restart.html">read_restart</A>
commands, or by mixing as described below:
</P>
<UL><LI>epsilon (energy units)
<LI>sigma (distance units)
<LI>delta (distance units)
<LI>cutoff (distance units)
</UL>
<P>The last coefficient is optional. If not specified, the global LJ
cutoff specified in the pair_style command is used.
</P>
<HR>
<P><B>Mixing, shift, table, tail correction, restart, rRESPA info</B>:
</P>
<P>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 <I>geometric</I>. See the "pair_modify" command
for details.
</P>
<P>This pair style supports the <A HREF = "pair_modify.html">pair_modify</A> shift
option for the energy of the pair interaction.
</P>
<P>The <A HREF = "pair_modify.html">pair_modify</A> table option is not relevant
for this pair style.
</P>
<P>This pair style supports the <A HREF = "pair_modify.html">pair_modify</A> tail
option for adding a long-range tail correction to the energy and
pressure of the pair interaction.
</P>
<P>This pair style writes its information to <A HREF = "restart.html">binary restart
files</A>, so pair_style and pair_coeff commands do not need
to be specified in an input script that reads a restart file.
</P>
<P>This pair style supports the use of the <I>inner</I>, <I>middle</I>, and <I>outer</I>
keywords of the <A HREF = "run_style.html">run_style respa</A> command, meaning the
pairwise forces can be partitioned by distance at different levels of
the rRESPA hierarchy. See the <A HREF = "run_style.html">run_style</A> command for
details.
</P>
<HR>
<P><B>Restrictions:</B> none
</P>
<P><B>Related commands:</B>
</P>
<P><A HREF = "pair_coeff.html">pair_coeff</A>
</P>
<P><B>Default:</B> none
</P>
</HTML>

83
doc/pair_lj96_cut.txt Normal file
View File

@ -0,0 +1,83 @@
"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 lj96/cut command :h3
[Syntax:]
pair_style lj96/cut cutoff :pre
cutoff = global cutoff for lj96/cut interactions (distance units) :ul
[Examples:]
pair_style lj96/cut 2.5
pair_coeff * * 1.0 1.0 0.5
pair_coeff 1 1 1.0 1.0 -0.2 2.0 :pre
[Description:]
The {lj96/cut} style compute a 9/6 Lennard-Jones potential, instead
of the standard 12/6 potential, given by
:c,image(Eqs/pair_lj96.jpg)
Rc is the cutoff.
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)
delta (distance units)
cutoff (distance units) :ul
The last coefficient is optional. If not specified, the global LJ
cutoff specified in the pair_style command is used.
: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.
This pair style supports the "pair_modify"_pair_modify.html shift
option for the energy of the pair interaction.
The "pair_modify"_pair_modify.html table option is not relevant
for this pair style.
This pair style supports the "pair_modify"_pair_modify.html tail
option for adding a long-range tail correction to the energy and
pressure of the pair interaction.
This pair style writes its 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 supports 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. See the "run_style"_run_style.html command for
details.
:line
[Restrictions:] none
[Related commands:]
"pair_coeff"_pair_coeff.html
[Default:] none

View File

@ -128,6 +128,7 @@ the pair_style command, and coefficients specified by the associated
<LI><A HREF = "pair_gromacs.html">pair_style lj/gromacs</A> - GROMACS-style Lennard-Jones potential
<LI><A HREF = "pair_gromacs.html">pair_style lj/gromacs/coul/gromacs</A> - GROMACS-style LJ and Coulombic potential
<LI><A HREF = "pair_lj_smooth.html">pair_style lj/smooth</A> - smoothed Lennard-Jones potential
<LI><A HREF = "pair_lj96_cut.html">pair_style lj96/cut</A> - Lennard-Jones 9/6 potential
<LI><A HREF = "pair_lubricate.html">pair_style lubricate</A> - hydrodynamic lubrication forces
<LI><A HREF = "pair_meam.html">pair_style meam</A> - modified embedded atom method (MEAM)
<LI><A HREF = "pair_morse.html">pair_style morse</A> - Morse potential

View File

@ -124,6 +124,7 @@ the pair_style command, and coefficients specified by the associated
"pair_style lj/gromacs"_pair_gromacs.html - GROMACS-style Lennard-Jones potential
"pair_style lj/gromacs/coul/gromacs"_pair_gromacs.html - GROMACS-style LJ and Coulombic potential
"pair_style lj/smooth"_pair_lj_smooth.html - smoothed Lennard-Jones potential
"pair_style lj96/cut"_pair_lj96_cut.html - Lennard-Jones 9/6 potential
"pair_style lubricate"_pair_lubricate.html - hydrodynamic lubrication forces
"pair_style meam"_pair_meam.html - modified embedded atom method (MEAM)
"pair_style morse"_pair_morse.html - Morse potential

View File

@ -111,29 +111,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.
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>

View File

@ -108,29 +108,27 @@ entries would be required, etc.
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.
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.
:line

View File

@ -42,25 +42,23 @@ of 4 styles: <I>lookup</I>, <I>linear</I>, <I>spline</I>, or <I>bitmap</I>.
<P>For the <I>lookup</I> style, the distance between 2 atoms is used to find
the nearest table entry, which is the energy or force.
</P>
<P>For the <I>linear</I> style, the distance is used to find 2 surrounding
table values from which an energy or force is computed by linear
interpolation.
<P>For the <I>linear</I> style, the pair distance is used to find 2
surrounding table values from which an energy or force is computed by
linear interpolation.
</P>
<P>For the <I>spline</I> style, a cubic spline coefficients are computed and
stored each of the <I>N</I> values in the table. The pair distance is used
to find the appropriate set of coefficients which are used to evaluate
a cubic polynomial which computes the energy or force.
stored at each of the <I>N</I> values in the table. The pair distance is
used to find the appropriate set of coefficients which are used to
evaluate a cubic polynomial which computes the energy or force.
</P>
<P>For the <I>bitmap</I> style, the N means to create interpolation tables
that are 2^N in length. The pair distance is used to index into the
that are 2^N in length. <The pair distance is used to index into the
table via a fast bit-mapping technique <A HREF = "#Wolff">(Wolff)</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 HREF = "pair_coeff.html">pair_coeff</A> command as in the examples
above, or in the data file or restart files read by the
<A HREF = "read_data.html">read_data</A> or <A HREF = "read_restart.html">read_restart</A>
commands:
above.
</P>
<UL><LI>filename
<LI>keyword
@ -88,11 +86,12 @@ interpolation "features" you may not like.
<LI>Start with the linear style; it's the style least likely to have problems.
<LI>Use <I>N</I> in the pair_style command equal to the "N" in the tabulation
file, so additional interpolation is not needed. See discussion
below.
<LI>Use as large an inner cutoff as possible. This avoids fitting splines
to very steep parts of the potential.
<LI>Make sure the tabulated potential you are feeding to LAMMPS is not
pathological.
</UL>
<HR>
@ -118,12 +117,25 @@ 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
numeric values.
</P>
<P>The parameter "N" is required; its value is the number of table
entries that follow. All other parameters are optional. If "R" or
"RSQ" or "BITMAP" does 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 can be spaced in <I>r</I> uniformly or however you
wish to position table values in regions of large gradients.
<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 <I>N</I>
specified in the <A HREF = "pair_style.html">pair_style table</A> command. Let
Ntable = <I>N</I> in the pair_style command, and Nfile = "N" in the
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
should set Ntable = Nfile.
</P>
<P>All other parameters are optional. If "R" or "RSQ" or "BITMAP" does
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
can be spaced in <I>r</I> 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 <I>rlo</I>
and <I>rhi</I>. If specified, the distance associated with each energy and

View File

@ -39,25 +39,23 @@ of 4 styles: {lookup}, {linear}, {spline}, or {bitmap}.
For the {lookup} style, the distance between 2 atoms is used to find
the nearest table entry, which is the energy or force.
For the {linear} style, the distance is used to find 2 surrounding
table values from which an energy or force is computed by linear
interpolation.
For the {linear} style, the pair distance is used to find 2
surrounding table values from which an energy or force is computed by
linear interpolation.
For the {spline} style, a cubic spline coefficients are computed and
stored each of the {N} values in the table. The pair distance is used
to find the appropriate set of coefficients which are used to evaluate
a cubic polynomial which computes the energy or force.
stored at each of the {N} values in the table. The pair distance is
used to find the appropriate set of coefficients which are used to
evaluate a cubic polynomial which computes the energy or force.
For the {bitmap} style, the N means to create interpolation tables
that are 2^N in length. The pair distance is used to index into the
that are 2^N in length. <The pair distance is used to index into the
table via a fast bit-mapping technique "(Wolff)"_#Wolff and a linear
interpolation is performed between adjacent table values.
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:
above.
filename
keyword
@ -85,11 +83,12 @@ interpolation "features" you may not like. :l
Start with the linear style; it's the style least likely to have problems. :l
Use as large an inner cutoff as possible. This avoids fitting splines
to very steep parts of the potential. :l
Use {N} in the pair_style command equal to the "N" in the tabulation
file, so additional interpolation is not needed. See discussion
below. :l
Make sure the tabulated potential you are feeding to LAMMPS is not
pathological. :l,ule
Use as large an inner cutoff as possible. This avoids fitting splines
to very steep parts of the potential. :l,ule
:line
@ -115,12 +114,25 @@ 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
numeric values.
The parameter "N" is required; its value is the number of table
entries that follow. All other parameters are optional. If "R" or
"RSQ" or "BITMAP" does 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 can be spaced in {r} uniformly or however you
wish to position table values in regions of large gradients.
The parameter "N" is required and its value is the number of table
entries that follow. Note that this may be different than the {N}
specified in the "pair_style table"_pair_style.html command. Let
Ntable = {N} in the pair_style command, and Nfile = "N" in the
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
should set Ntable = Nfile.
All other parameters are optional. If "R" or "RSQ" or "BITMAP" does
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
can be spaced in {r} uniformly or however you wish to position table
values in regions of large gradients.
If used, the parameters "R" or "RSQ" are followed by 2 values {rlo}
and {rhi}. If specified, the distance associated with each energy and