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

This commit is contained in:
sjplimp 2016-06-02 14:05:40 +00:00
parent a1d64b989e
commit 126ae910b8
8 changed files with 99 additions and 62 deletions

View File

@ -54,14 +54,14 @@ thermodynamic integration (FDTI) or Bennet's acceptance ratio method
The potential energy of the system is decomposed in three terms: a
background term corresponding to interaction sites whose parameters
remain constant, a reference term {U}<sub>0</sub> corresponding to the
remain constant, a reference term \(U_0\) corresponding to the
initial interactions of the atoms that will undergo perturbation, and
a term {U}<sub>1</sub> corresponding to the final interactions of
a term \(U_1\) corresponding to the final interactions of
these atoms:
:c,image(Eqs/compute_fep_u.jpg)
A coupling parameter &lambda; varying from 0 to 1 connects the
A coupling parameter \(\lambda\) varying from 0 to 1 connects the
reference and perturbed systems:
:c,image(Eqs/compute_fep_lambda.jpg)
@ -70,7 +70,7 @@ It is possible but not necessary that the coupling parameter (or a
function thereof) appears as a multiplication factor of the potential
energy. Therefore, this compute can apply perturbations to interaction
parameters that are not directly proportional to the potential energy
(e.g. &sigma; in Lennard-Jones potentials).
(e.g. \(\sigma\) in Lennard-Jones potentials).
This command can be combined with "fix adapt"_fix_adapt.html to
perform multistage free-energy perturbation calculations along
@ -81,25 +81,25 @@ stepwise alchemical transformations during a simulation run:
This compute is suitable for the finite-difference thermodynamic
integration (FDTI) method "(Mezei)"_#Mezei, which is based on an
evaluation of the numerical derivative of the free energy by a
perturbation method using a very small &delta;:
perturbation method using a very small \(\delta\):
:c,image(Eqs/compute_fep_fdti.jpg)
where {w}<sub>i</sub> are weights of a numerical quadrature. The "fix
where \(w_i\) are weights of a numerical quadrature. The "fix
adapt"_fix_adapt.html command can be used to define the stages of
&lambda; at which the derivative is calculated and averaged.
\(\lambda\) at which the derivative is calculated and averaged.
The compute fep calculates the exponential Boltzmann term and also the
potential energy difference {U}<sub>1</sub>-{U}<sub>0</sub>. By
choosing a very small perturbation &delta; the thermodynamic
potential energy difference \(U_1 -U_0\). By
choosing a very small perturbation \(\delta\) the thermodynamic
integration method can be implemented using a numerical evaluation of
the derivative of the potential energy with respect to &lambda;:
the derivative of the potential energy with respect to \(\lambda\):
:c,image(Eqs/compute_fep_ti.jpg)
Another technique to calculate free energy differences is the
acceptance ratio method "(Bennet)"_#Bennet, which can be implemented
by calculating the potential energy differences with &delta; = 1.0 on
by calculating the potential energy differences with \(\delta\) = 1.0 on
both the forward and reverse routes:
:c,image(Eqs/compute_fep_bar.jpg)
@ -209,12 +209,12 @@ Tildesley)"_#AllenTildesley:
[Output info:]
This compute calculates a global vector of length 3 which contains the
energy difference ({U}<sub>1</sub>-{U}<sub>0</sub>) as c_ID\[1\], the
Boltzmann factor exp(-({U}<sub>1</sub>-{U}<sub>0</sub>)/{kT}), or
{V}exp(-({U}<sub>1</sub>-{U}<sub>0</sub>)/{kT}), as c_ID\[2\] and the
volume of the simulation box {V} as c_ID\[3\]. {U}<sub>1</sub> is the
energy difference ( \(U_1-U_0\) ) as c_ID\[1\], the
Boltzmann factor \(\exp(-(U_1-U_0)/kT)\), or
\(V \exp(-(U_1-U_0)/kT)\), as c_ID\[2\] and the
volume of the simulation box \(V\) as c_ID\[3\]. \(U_1\) is the
pair potential energy obtained with the perturbed parameters and
{U}<sub>0</sub> is the pair potential energy obtained with the
\(U_0\) is the pair potential energy obtained with the
unperturbed parameters. The energies include kspace terms if these
are used in the simulation.

View File

@ -39,9 +39,9 @@ or {face_threshold} or {neighbors} or {peratom} :l
compute 1 all voronoi/atom
compute 2 precipitate voronoi/atom surface matrix
compute 3b precipitate voronoi/atom radius v_r
compute 4 solute voronoi/atom only_group :pre
compute 5 defects voronoi/atom occupation :pre
compute 6 all voronoi/atom neighbors yes
compute 4 solute voronoi/atom only_group
compute 5 defects voronoi/atom occupation
compute 6 all voronoi/atom neighbors yes :pre
[Description:]

View File

@ -80,7 +80,7 @@ assumes the constituent atoms are point particles); see
No information about the {rigid} and {rigid/nve} fixes are written to
"binary restart files"_restart.html.
Similar to the "fix rigid"_fix_rigid.html command: &quot; The rigid
Similar to the "fix rigid"_fix_rigid.html command: The rigid
fix computes a global scalar which can be accessed by various "output
commands"_Section_howto.html#howto_15. The scalar value calculated by
these fixes is "intensive". The scalar is the current temperature of
@ -91,9 +91,9 @@ mass of the body and v = the velocity of its center of mass. The
rotational energy of a rigid body is 1/2 I w^2, where I = the moment
of inertia tensor of the body and w = its angular velocity. Degrees
of freedom constrained by the {force} and {torque} keywords are
removed from this calculation.&quot;
removed from this calculation.
&quot;All of these fixes compute a global array of values which can be
All of these fixes compute a global array of values which can be
accessed by various "output commands"_Section_howto.html#howto_15.
The number of rows in the array is equal to the number of rigid
bodies. The number of columns is 15. Thus for each rigid body, 15
@ -117,7 +117,7 @@ they are independent of the number of atoms in the simulation.
No parameter of these fixes can be used with the {start/stop} keywords
of the "run"_run.html command. These fixes are not invoked during
"energy minimization"_minimize.html. &quot;
"energy minimization"_minimize.html.
[Restrictions:]

View File

@ -106,7 +106,7 @@ bash:
Windows:
% set LAMMPS_POTENTIALS="C:\Path to LAMMPS\Potentials" :pre
% set LAMMPS_POTENTIALS="C:\\Path to LAMMPS\\Potentials" :pre
:line

View File

@ -12,19 +12,34 @@ pair_style morse/omp command :h3
pair_style morse/opt command :h3
pair_style morse/smooth/linear command :h3
pair_style morse/smooth/linear/omp command :h3
pair_style morse/soft command :h3
[Syntax:]
pair_style morse cutoff :pre
pair_style style args :pre
cutoff = global cutoff for Morse interactions (distance units) :ul
style = {morse} or {morse/smooth/linear} or {morse/soft}
args = list of arguments for a particular style :ul
{morse} args = cutoff
cutoff = global cutoff for Morse interactions (distance units)
{morse/smooth/linear} args = cutoff
cutoff = global cutoff for Morse interactions (distance units)
{morse/soft} args = n lf cutoff
n = soft-core parameter
lf = transformation range is lf < lambda < 1
cutoff = global cutoff for Morse interactions (distance units)
:pre
[Examples:]
pair_style morse 2.5
pair_style morse/smooth/linear 2.5
pair_coeff * * 100.0 2.0 1.5
pair_coeff 1 1 100.0 2.0 1.5 3.0 :pre
pair_coeff 1 1 100.0 2.0 1.5 3.0
pair_style morse/soft 4 0.9 10.0
pair_coeff * * 100.0 2.0 1.5 1.0
pair_coeff 1 1 100.0 2.0 1.5 1.0 3.0 :pre
[Description:]
@ -46,13 +61,13 @@ r0 (distance units)
cutoff (distance units) :ul
The last coefficient is optional. If not specified, the global morse
cutoff is used. :ul
cutoff is used.
:line
The {smooth/linear} variant is similar to the lj/smooth/linear variant
in that it adds to the potential a shift and a linear term to make both
the potential energy and force go to zero at the cut-off:
The {morse/smooth/linear} variant is similar to the lj/smooth/linear
variant in that it adds to the potential a shift and a linear term
so that both, potential energy and force, go to zero at the cut-off:
:c,image(Eqs/pair_morse_smooth_linear.jpg)
@ -61,6 +76,27 @@ the {morse} and {morse/smooth/linear} styles.
:line
The {morse/soft} variant is similar to the {lj/cut/soft} pair style
in that it modifies the potential at short range to have a soft core.
This helps to avoid singularities during free energy calculation in
which sites are created or anihilated. The formula differs from that
of {lj/cut/soft}, and is instead given by:
:c,image(Eqs/pair_morse_soft.jpg)
The {morse/soft} style requires the following pair coefficients:
D0 (energy units)
alpha (1/distance units)
r0 (distance units)
lamda (unitless, between 0.0 and 1.0)
cutoff (distance units) :ul
The last coefficient is optional. If not specified, the global morse
cutoff is used.
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
@ -115,6 +151,10 @@ The {morse/smooth/linear} pair style is only enabled if LAMMPS was
built with the USER-MISC package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
The {morse/soft} pair style is only enabled if LAMMPS was
built with the USER-FEP package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
[Related commands:]
"pair_coeff"_pair_coeff.html

View File

@ -44,24 +44,23 @@ stiffness of the harmonic bond should be large, so that the Drude
particle remains close ot the core. The values of Drude mass, Drude
charge, and force constant can be chosen following different
strategies, as in the following examples of polarizable force
fields.
fields:
"Lamoureux and Roux"_#Lamoureux suggest adopting a global
half-stiffness, \(K_D\) = 500 kcal/(mol &Aring;<sup>2</sup>) &mdash;
which corresponds to a force constant \(k_D\) = 4184 kJ/(mol
&Aring;<sup>2</sup>) &mdash; for all types of core-Drude bond, a
global mass \(m_D\) = 0.4 g/mol (or u) for all types of Drude
particle, and to calculate the Drude charges for individual atom types
from the atom polarizabilities using equation (1). This choice is
followed in the polarizable CHARMM force field. :ulb,l
"Lamoureux and Roux"_#Lamoureux suggest adopting a global half-stiffness, \
\(K_D\) = 500 kcal/(mol Ang \(\{\}^2\)) - which corresponds to a force \
constant \(k_D\) = 4184 kJ/(mol Ang \(\{\}^2\)) - for all types of \
core-Drude bond, a global mass \(m_D\) = 0.4 g/mol (or u) for all types \
of Drude particles, and to calculate the Drude charges for individual \
atom types from the atom polarizabilities using equation (1). This \
choice is followed in the polarizable CHARMM force field. :olb,l
Alternately "Schroeder and Steinhauser"_#Schroeder suggest adopting a global \
charge \(q_D\) = -1.0e and a global mass \(m_D\) = 0.1 g/mol (or u) \
for all Drude particles, and to calculate the force constant for each \
type of core-Drude bond from equation (1). The timesteps used by these \
authors are between 0.5 and 2 fs, with the degrees of freedom of the \
Drude oscillators kept cold at 1 K. :l
In both these force fields hydrogen atoms are treated as non-polarizable. :ole,l
"Schroeder and Steinhauser"_#Schroeder suggest adopting a global
charge \(q_D\) = -1.0e and a global mass \(m_D\) = 0.1 g/mol (or u)
for all Drude particles, and to calculate the force constant for each
type of core-Drude bond from equation (1). The timesteps used by these
authors are between 0.5 and 2 fs, with the degrees of freedom of the
Drude oscillators kept cold at 1 K. In both these force fields
hydrogen atoms are treated as non-polarizable. :ule,l
The motion of of the Drude particles can be calculated by minimizing
the energy of the induced dipoles at each timestep, by an interative,
@ -87,17 +86,16 @@ are such that the core-shell model is sufficiently stable. But to be
applicable to molecular/covalent systems the Drude model includes two
important features:
The possibility to thermostat the additional degrees of freedom
associated with the induced dipoles at very low temperature, in terms
of the reduced coordinates of the Drude particles with respect to
their cores. This makes the trajectory close to that of relaxed
The possibility to thermostat the additional degrees of freedom \
associated with the induced dipoles at very low temperature, in terms \
of the reduced coordinates of the Drude particles with respect to \
their cores. This makes the trajectory close to that of relaxed \
induced dipoles. :olb,l
The Drude dipoles on covalently bonded atoms interact too strongly
due to the short distances, so an atom may capture the Drude particle
(shell) of a neighbor, or the induced dipoles within the same molecule
may align too much. To avoid this, damping at short of the
interactions between the point charges composing the induced dipole
The Drude dipoles on covalently bonded atoms interact too strongly \
due to the short distances, so an atom may capture the Drude particle \
(shell) of a neighbor, or the induced dipoles within the same molecule \
may align too much. To avoid this, damping at short of the \
interactions between the point charges composing the induced dipole \
can be done by "Thole"_#Thole functions. :ole,l
@ -444,7 +442,7 @@ fix INVERSE all drude/transform/inverse :pre
[(Lamoureux)] Lamoureux and Roux, J Chem Phys, 119, 3025-3039 (2003)
:link(Schroeder)
[(Schroeder)] Schr&ouml;der and Steinhauser, J Chem Phys, 133,
[(Schroeder)] Schroeder and Steinhauser, J Chem Phys, 133,
154511 (2010).
:link(Jiang)

View File

@ -6,7 +6,7 @@
:line
LAMMPS GitHub tutorial :h1
LAMMPS GitHub tutorial :h2
written by Stefan Paquay :h3
:line

View File

@ -46,7 +46,7 @@ style = {delete} or {index} or {loop} or {world} or {universe} or {uloop} or {st
constants = PI, version, on, off, true, false, yes, no
thermo keywords = vol, ke, press, etc from "thermo_style"_thermo_style.html
math operators = (), -x, x+y, x-y, x*y, x/y, x^y, x%y,
x == y, x != y, x &lt y, x &lt= y, x &gt y, x &gt= y, x && y, x || y, !x
x == y, x != y, x < y, x <= y, x > y, x >= y, x && y, x || y, !x
math functions = sqrt(x), exp(x), ln(x), log(x), abs(x),
sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x),
random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x)
@ -428,9 +428,8 @@ references, and references to other variables.
Number: 0.2, 100, 1.0e20, -15.4, etc
Constant: PI, version, on, off, true, false, yes, no
Thermo keywords: vol, pe, ebond, etc
Math operators: (), -x, x+y, x-y, x*y, x/y, x^y, x%y,
Math operators: (), -x, x+y, x-y, x*y, x/y, x^y, x%y, \
x == y, x != y, x &lt y, x &lt= y, x &gt y, x &gt= y, x && y, x || y, !x
x == y, x != y, x < y, x <= y, x > y, x >= y, x && y, x || y, !x
Math functions: sqrt(x), exp(x), ln(x), log(x), abs(x), \
sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x), \
random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x), \