forked from lijiext/lammps
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@13732 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
parent
218bd7cec7
commit
059f719d62
|
@ -145,10 +145,12 @@ commands)
|
|||
<UL><LI> pairwise potentials: Lennard-Jones, Buckingham, Morse, Born-Mayer-Huggins, Yukawa, soft, class 2 (COMPASS), hydrogen bond, tabulated
|
||||
<LI> charged pairwise potentials: Coulombic, point-dipole
|
||||
<LI> manybody potentials: EAM, Finnis/Sinclair EAM, modified EAM (MEAM), embedded ion method (EIM), EDIP, ADP, Stillinger-Weber, Tersoff, REBO, AIREBO, ReaxFF, COMB, SNAP, Streitz-Mintmire
|
||||
<LI> long-range interactions for charge, point-dipoles, and LJ dispersion: Ewald, Wolf, PPPM (similar to particle-mesh Ewald)
|
||||
<LI> polarization models: <A HREF = "fix_qeq.html">QEq</A>, <A HREF = "Section_howto.html#howto_26">core/shell model</A>, <A HREF = "Section_howto.html#howto_27">Drude dipole model</A>
|
||||
<LI> charge equilibration (QEq via dynamic, point, shielded, Slater methods)
|
||||
<LI> electron force field (eFF, AWPMD)
|
||||
<LI> coarse-grained potentials: DPD, GayBerne, REsquared, colloidal, DLVO
|
||||
<LI> mesoscopic potentials: granular, Peridynamics, SPH
|
||||
<LI> electron force field (eFF, AWPMD)
|
||||
<LI> bond potentials: harmonic, FENE, Morse, nonlinear, class 2, quartic (breakable)
|
||||
<LI> angle potentials: harmonic, CHARMM, cosine, cosine/squared, cosine/periodic, class 2 (COMPASS)
|
||||
<LI> dihedral potentials: harmonic, CHARMM, multi-harmonic, helix, class 2 (COMPASS), OPLS
|
||||
|
@ -156,10 +158,8 @@ commands)
|
|||
<LI> polymer potentials: all-atom, united-atom, bead-spring, breakable
|
||||
<LI> water potentials: TIP3P, TIP4P, SPC
|
||||
<LI> implicit solvent potentials: hydrodynamic lubrication, Debye
|
||||
<LI> <A HREF = "http://openkim.org">KIM archive</A> of potentials
|
||||
<LI> long-range interactions for charge, point-dipoles, and LJ dispersion: Ewald, Wolf, PPPM (similar to particle-mesh Ewald)
|
||||
<LI> force-field compatibility with common CHARMM, AMBER, DREIDING, OPLS, GROMACS, COMPASS options
|
||||
<LI> handful of GPU-enabled pair styles
|
||||
<LI> access to <A HREF = "http://openkim.org">KIM archive</A> of potentials via <A HREF = "pair_kim.html">pair kim</A>
|
||||
<LI> hybrid potentials: multiple pair, bond, angle, dihedral, improper potentials can be used in one simulation
|
||||
<LI> overlaid potentials: superposition of multiple pair potentials
|
||||
</UL>
|
||||
|
|
|
@ -142,10 +142,15 @@ commands)
|
|||
manybody potentials: EAM, Finnis/Sinclair EAM, modified EAM (MEAM), \
|
||||
embedded ion method (EIM), EDIP, ADP, Stillinger-Weber, Tersoff, \
|
||||
REBO, AIREBO, ReaxFF, COMB, SNAP, Streitz-Mintmire
|
||||
long-range interactions for charge, point-dipoles, and LJ dispersion: \
|
||||
Ewald, Wolf, PPPM (similar to particle-mesh Ewald)
|
||||
polarization models: "QEq"_fix_qeq.html, \
|
||||
"core/shell model"_Section_howto.html#howto_26, \
|
||||
"Drude dipole model"_Section_howto.html#howto_27
|
||||
charge equilibration (QEq via dynamic, point, shielded, Slater methods)
|
||||
electron force field (eFF, AWPMD)
|
||||
coarse-grained potentials: DPD, GayBerne, REsquared, colloidal, DLVO
|
||||
mesoscopic potentials: granular, Peridynamics, SPH
|
||||
electron force field (eFF, AWPMD)
|
||||
bond potentials: harmonic, FENE, Morse, nonlinear, class 2, \
|
||||
quartic (breakable)
|
||||
angle potentials: harmonic, CHARMM, cosine, cosine/squared, cosine/periodic, \
|
||||
|
@ -156,12 +161,10 @@ commands)
|
|||
polymer potentials: all-atom, united-atom, bead-spring, breakable
|
||||
water potentials: TIP3P, TIP4P, SPC
|
||||
implicit solvent potentials: hydrodynamic lubrication, Debye
|
||||
"KIM archive"_http://openkim.org of potentials
|
||||
long-range interactions for charge, point-dipoles, and LJ dispersion: \
|
||||
Ewald, Wolf, PPPM (similar to particle-mesh Ewald)
|
||||
force-field compatibility with common CHARMM, AMBER, DREIDING, \
|
||||
OPLS, GROMACS, COMPASS options
|
||||
handful of GPU-enabled pair styles
|
||||
access to "KIM archive"_http://openkim.org of potentials via \
|
||||
"pair kim"_pair_kim.html
|
||||
hybrid potentials: multiple pair, bond, angle, dihedral, improper \
|
||||
potentials can be used in one simulation
|
||||
overlaid potentials: superposition of multiple pair potentials :ul
|
||||
|
|
|
@ -368,13 +368,13 @@ in LAMMPS using thermalized Drude oscillators.
|
|||
</P>
|
||||
<P>See these doc pages and their related commands to get started:
|
||||
</P>
|
||||
<P><A HREF = "tutorial_drude.html">Drude tutorial</A>
|
||||
<A HREF = "fix_drude.html">fix drude</A>
|
||||
<A HREF = "compute_temp_drude.html">compute temp/drude</A>
|
||||
<A HREF = "fix_langevin_drude.html">fix langevin/drude</A>
|
||||
<A HREF = "fix_drude_transform.html">fix drude/transform/...</A>
|
||||
<A HREF = "pair_thole.html">pair thole</A>
|
||||
</P>
|
||||
<UL><LI><A HREF = "tutorial_drude.html">Drude tutorial</A>
|
||||
<LI><A HREF = "fix_drude.html">fix drude</A>
|
||||
<LI><A HREF = "compute_temp_drude.html">compute temp/drude</A>
|
||||
<LI><A HREF = "fix_langevin_drude.html">fix langevin/drude</A>
|
||||
<LI><A HREF = "fix_drude_transform.html">fix drude/transform/...</A>
|
||||
<LI><A HREF = "pair_thole.html">pair thole</A>
|
||||
</UL>
|
||||
<P>There are auxiliary tools for using this package in tools/drude.
|
||||
</P>
|
||||
<P>The person who created this package is Alain Dequidt at Universite
|
||||
|
|
|
@ -360,7 +360,7 @@ See these doc pages and their related commands to get started:
|
|||
"compute temp/drude"_compute_temp_drude.html
|
||||
"fix langevin/drude"_fix_langevin_drude.html
|
||||
"fix drude/transform/..."_fix_drude_transform.html
|
||||
"pair thole"_pair_thole.html
|
||||
"pair thole"_pair_thole.html :ul
|
||||
|
||||
There are auxiliary tools for using this package in tools/drude.
|
||||
|
||||
|
|
|
@ -24,38 +24,63 @@
|
|||
</PRE>
|
||||
<P><B>Description:</B>
|
||||
</P>
|
||||
<P>Define a computation that calculates the temperature based on the
|
||||
center-of-mass velocities of pairs of Drude cores and Drude particles,
|
||||
bonded by springs. This compute is designed to be used with the
|
||||
<P>Define a computation that calculates the temperatures of core-Drude
|
||||
pairs. This compute is designed to be used with the thermalized Drude
|
||||
oscillator model. This compute is designed to be used with the
|
||||
<A HREF = "tutorial_drude.html">thermalized Drude oscillator model</A>. Polarizable
|
||||
models in LAMMPS are described in <A HREF = "Section_howto.html#howto_25">this
|
||||
Section</A>.
|
||||
</P>
|
||||
<P>Specifically, this compute enables calculation of the temperature of
|
||||
the Drude particles in relative coordinates with respect to their
|
||||
cores.
|
||||
<P>Drude oscillators consist of a core particle and a Drude particle
|
||||
connected by a harmonic bond, and the relative motion of these Drude
|
||||
oscillators is usually maintained cold by a specific thermostat that
|
||||
acts on the relative motion of the core-Drude particle
|
||||
pairs. Therefore, because LAMMPS considers Drude particles as normal
|
||||
atoms in its default temperature compute (<A HREF = "compute_temp.html">compute
|
||||
temp</A> command), the reduced temperature of the
|
||||
core-Drude particle pairs is not calculated correctly.
|
||||
</P>
|
||||
<P>By contrast, this compute calculates the temperature of the cores
|
||||
using center-of-mass velocities of the core-Drude pairs, and the
|
||||
reduced temperature of the Drude particles using the relative
|
||||
velocities of the Drude particles with respect to their cores.
|
||||
Non-polarizable atoms are considered as cores. Their velocities
|
||||
contribute to the temperature of the cores.
|
||||
</P>
|
||||
<P><B>Output info:</B>
|
||||
</P>
|
||||
<P>This compute calculates a global scalar (the temperature) and a global
|
||||
vector of length 6 (KE tensor), which can be accessed by indices 1-6.
|
||||
These values can be used by any command that uses global scalar or
|
||||
vector of length 6, which can be accessed by indices 1-6, whose components
|
||||
are
|
||||
</P>
|
||||
<OL><LI>temperature of the centers of mass (temperature units)
|
||||
<LI>temperature of the dipoles (temperature units)
|
||||
<LI>number of degrees of freedom of the centers of mass
|
||||
<LI>number of degrees of freedom of the dipoles
|
||||
<LI>kinetic energy of the centers of mass (energy units)
|
||||
<LI>kinetic energy of the dipoles (energy units)
|
||||
</OL>
|
||||
<P>These values can be used by any command that uses global scalar or
|
||||
vector values from a compute as input. See <A HREF = "Section_howto.html#howto_15">this
|
||||
section</A> for an overview of LAMMPS output
|
||||
options.
|
||||
</P>
|
||||
<P>The scalar value calculated by this compute is "intensive". The
|
||||
vector are "extensive".
|
||||
</P>
|
||||
<P>The scalar value will be in temperature <A HREF = "units.html">units</A>. The
|
||||
vector values will be in energy <A HREF = "units.html">units</A>.
|
||||
<P>Both the scalar value and the first two values of the vector
|
||||
calculated by this compute are "intensive". The other 4 vector values
|
||||
are "extensive".
|
||||
</P>
|
||||
<P><B>Restrictions:</B>
|
||||
</P>
|
||||
<P>The number of core-Drude pairs contributing to the temperature is
|
||||
assumed to be constant for the duration of the run.
|
||||
<P>The number of degrees of freedom contributing to the temperature is
|
||||
assumed to be constant for the duration of the run unless the
|
||||
<I>fix_modify</I> command sets the option <I>dynamic yes</I>.
|
||||
</P>
|
||||
<P><B>Related commands:</B> none
|
||||
<P><B>Related commands:</B>
|
||||
</P>
|
||||
<P><A HREF = "fix_drude.html">fix drude</A>, <A HREF = "fix_langevin_drude.html">fix
|
||||
langevin_drude</A>, <A HREF = "fix_drude_transform.html">fix
|
||||
drude/transform</A>, <A HREF = "pair_thole.html">pair_style
|
||||
thole</A>, <A HREF = "compute_temp.html">compute temp</A>
|
||||
</P>
|
||||
<P><B>Default:</B> none
|
||||
</P>
|
||||
|
|
|
@ -21,37 +21,62 @@ compute TDRUDE all temp/drude :pre
|
|||
|
||||
[Description:]
|
||||
|
||||
Define a computation that calculates the temperature based on the
|
||||
center-of-mass velocities of pairs of Drude cores and Drude particles,
|
||||
bonded by springs. This compute is designed to be used with the
|
||||
Define a computation that calculates the temperatures of core-Drude
|
||||
pairs. This compute is designed to be used with the thermalized Drude
|
||||
oscillator model. This compute is designed to be used with the
|
||||
"thermalized Drude oscillator model"_tutorial_drude.html. Polarizable
|
||||
models in LAMMPS are described in "this
|
||||
Section"_Section_howto.html#howto_25.
|
||||
|
||||
Specifically, this compute enables calculation of the temperature of
|
||||
the Drude particles in relative coordinates with respect to their
|
||||
cores.
|
||||
Drude oscillators consist of a core particle and a Drude particle
|
||||
connected by a harmonic bond, and the relative motion of these Drude
|
||||
oscillators is usually maintained cold by a specific thermostat that
|
||||
acts on the relative motion of the core-Drude particle
|
||||
pairs. Therefore, because LAMMPS considers Drude particles as normal
|
||||
atoms in its default temperature compute ("compute
|
||||
temp"_compute_temp.html command), the reduced temperature of the
|
||||
core-Drude particle pairs is not calculated correctly.
|
||||
|
||||
By contrast, this compute calculates the temperature of the cores
|
||||
using center-of-mass velocities of the core-Drude pairs, and the
|
||||
reduced temperature of the Drude particles using the relative
|
||||
velocities of the Drude particles with respect to their cores.
|
||||
Non-polarizable atoms are considered as cores. Their velocities
|
||||
contribute to the temperature of the cores.
|
||||
|
||||
[Output info:]
|
||||
|
||||
This compute calculates a global scalar (the temperature) and a global
|
||||
vector of length 6 (KE tensor), which can be accessed by indices 1-6.
|
||||
vector of length 6, which can be accessed by indices 1-6, whose components
|
||||
are
|
||||
|
||||
temperature of the centers of mass (temperature units)
|
||||
temperature of the dipoles (temperature units)
|
||||
number of degrees of freedom of the centers of mass
|
||||
number of degrees of freedom of the dipoles
|
||||
kinetic energy of the centers of mass (energy units)
|
||||
kinetic energy of the dipoles (energy units) :ol
|
||||
|
||||
These values can be used by any command that uses global scalar or
|
||||
vector values from a compute as input. See "this
|
||||
section"_Section_howto.html#howto_15 for an overview of LAMMPS output
|
||||
options.
|
||||
|
||||
The scalar value calculated by this compute is "intensive". The
|
||||
vector are "extensive".
|
||||
|
||||
The scalar value will be in temperature "units"_units.html. The
|
||||
vector values will be in energy "units"_units.html.
|
||||
Both the scalar value and the first two values of the vector
|
||||
calculated by this compute are "intensive". The other 4 vector values
|
||||
are "extensive".
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
The number of core-Drude pairs contributing to the temperature is
|
||||
assumed to be constant for the duration of the run.
|
||||
The number of degrees of freedom contributing to the temperature is
|
||||
assumed to be constant for the duration of the run unless the
|
||||
{fix_modify} command sets the option {dynamic yes}.
|
||||
|
||||
[Related commands:] none
|
||||
[Related commands:]
|
||||
|
||||
"fix drude"_fix_drude.html, "fix
|
||||
langevin_drude"_fix_langevin_drude.html, "fix
|
||||
drude/transform"_fix_drude_transform.html, "pair_style
|
||||
thole"_pair_thole.html, "compute temp"_compute_temp.html
|
||||
|
||||
[Default:] none
|
||||
|
|
|
@ -24,22 +24,13 @@
|
|||
</P>
|
||||
<PRE>fix ID group-ID style keyword value ...
|
||||
</PRE>
|
||||
<UL><LI>ID, group-ID are documented in <A HREF = "fix.html">fix</A> command
|
||||
|
||||
<UL><LI>ID, group-ID are documented in <A HREF = "fix.html">fix</A> command
|
||||
<LI>style = <I>drude/transform/direct</I> or <I>drude/transform/inverse</I>
|
||||
|
||||
<LI>zero or more keywords may be appended to drude/transform/inverse
|
||||
|
||||
<LI>keyword = <I>temp</I>
|
||||
|
||||
<PRE> <I>temp</I> value = <I>yes</I> or <I>no</I> = do or do not calculate reduced temperatures of core and Drude particles
|
||||
</PRE>
|
||||
|
||||
</UL>
|
||||
<P><B>Examples:</B>
|
||||
</P>
|
||||
<PRE>fix 3 all drude/transform/direct
|
||||
fix 1 all drude/transform/inverse temp yes
|
||||
fix 1 all drude/transform/inverse
|
||||
</PRE>
|
||||
<P><B>Description:</B>
|
||||
</P>
|
||||
|
@ -81,12 +72,6 @@ Forces: \begin{equation} F' = F + f \end{equation}
|
|||
and the virial defined with absolute positions
|
||||
\begin{equation} X\, F + x\, f = X'\, F' + x'\, f' \end{equation}
|
||||
</P>
|
||||
<P>The <I>temp</I> keyword specifies wheterh temperatures in reduced units for
|
||||
cores and Drude particles are calculated. If the <I>temp</I> option is set
|
||||
to <I>yes</I> the reduced temperatures, degrees of freedom, and kinetic
|
||||
energies are calculated and can be accessed as explained below;
|
||||
otherwise the reduced values are not calculated.
|
||||
</P>
|
||||
<HR>
|
||||
|
||||
<P>This fix requires each atom know whether it is a Drude particle or
|
||||
|
@ -119,12 +104,17 @@ thermostating fixes.
|
|||
<PRE>fix fDIRECT all drude/transform/direct
|
||||
fix fNVT gCORES nvt temp 300.0 300.0 100.0
|
||||
fix fNVT gDRUDES nvt temp 1.0 1.0 100.0
|
||||
fix fINVERSE all drude/transform/inverse
|
||||
fix fINVERSE all drude/transform/inverse
|
||||
compute TDRUDE all temp/drude
|
||||
thermo_style custom step cpu etotal ke pe ebond ecoul elong press vol temp c_TDRUDE[1] c_TDRUDE[2]
|
||||
</PRE>
|
||||
<P>In this example, <I>gCORES</I> is the group of the atom cores and <I>gDRUDES</I>
|
||||
is the group of the Drude particles (electrons). The centers of mass
|
||||
of the Drude oscillators will be thermostated at 300.0 and the
|
||||
internal degrees of freedom will be thermostated at 1.0.
|
||||
internal degrees of freedom will be thermostated at 1.0. The
|
||||
temperatures of cores and Drude particles, in center-of-mass and
|
||||
relatice coordinates, are calculated using <A HREF = "compute_temp_drude.html">compute
|
||||
temp/drude</A>
|
||||
</P>
|
||||
<P>In addition, if you want to use a barostat to simulate a system at
|
||||
constant pressure, only one of the Nose-Hoover fixes must be <I>npt</I>,
|
||||
|
@ -133,8 +123,8 @@ the other one should be <I>nvt</I>. You must add a <I>compute temp/com</I> and a
|
|||
that of its group but the pressure be the overall pressure
|
||||
<I>thermo_press</I>.
|
||||
</P>
|
||||
Example:
|
||||
<BR>
|
||||
<P>Example:
|
||||
</P>
|
||||
<PRE>compute cTEMP_CORE gCORES temp/com
|
||||
fix fDIRECT all drude/transform/direct
|
||||
fix fNPT gCORES npt temp 298.0 298.0 100.0 iso 1.0 1.0 500.0
|
||||
|
@ -158,18 +148,6 @@ to add a <I>fix momentum</I> command like such as
|
|||
|
||||
<P><B>Restart, fix_modify, output, run start/stop, minimize info:</B>
|
||||
</P>
|
||||
<P>If the <I>temp yes</I> keyword is used in <I>fix drude/transform/inverse</I>
|
||||
this fix computes a global vector with 6 components which can be
|
||||
accessed by various <A HREF = "Section_howto.html#howto_15">output commands</A>. The
|
||||
meaning of the components are
|
||||
</P>
|
||||
<OL><LI>temperature of the centers of mass (temperature units)
|
||||
<LI>temperature of the dipoles (temperature units)
|
||||
<LI>number of degrees of freedom of the centers of mass
|
||||
<LI>number of degrees of freedom of the dipoles
|
||||
<LI>kinetic energy of the centers of mass (energy units)
|
||||
<LI>kinetic energy of the dipoles (energy units)
|
||||
</OL>
|
||||
<P>No information about this fix is written to <A HREF = "restart.html">binary restart
|
||||
files</A>.
|
||||
</P>
|
||||
|
@ -182,9 +160,7 @@ files</A>.
|
|||
<A HREF = "compute_temp_drude.html">compute temp/drude</A>,
|
||||
<A HREF = "pair_thole.html">pair_style thole</A>
|
||||
</P>
|
||||
<P><B>Default:</B>
|
||||
</P>
|
||||
<P>The option defaults are temp = no.
|
||||
<P><B>Default:</B> none
|
||||
</P>
|
||||
<HR>
|
||||
|
||||
|
|
|
@ -20,17 +20,13 @@ fix drude/transform/inverse command :h3
|
|||
|
||||
fix ID group-ID style keyword value ... :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command :ulb,l
|
||||
style = {drude/transform/direct} or {drude/transform/inverse} :l
|
||||
zero or more keywords may be appended to drude/transform/inverse :l
|
||||
keyword = {temp} :l
|
||||
{temp} value = {yes} or {no} = do or do not calculate reduced temperatures of core and Drude particles :pre
|
||||
:ule
|
||||
ID, group-ID are documented in "fix"_fix.html command
|
||||
style = {drude/transform/direct} or {drude/transform/inverse} :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 3 all drude/transform/direct
|
||||
fix 1 all drude/transform/inverse temp yes :pre
|
||||
fix 1 all drude/transform/inverse :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
|
@ -72,12 +68,6 @@ This transform conserves the total kinetic energy
|
|||
and the virial defined with absolute positions
|
||||
\begin\{equation\} X\, F + x\, f = X'\, F' + x'\, f' \end\{equation\}
|
||||
|
||||
The {temp} keyword specifies wheterh temperatures in reduced units for
|
||||
cores and Drude particles are calculated. If the {temp} option is set
|
||||
to {yes} the reduced temperatures, degrees of freedom, and kinetic
|
||||
energies are calculated and can be accessed as explained below;
|
||||
otherwise the reduced values are not calculated.
|
||||
|
||||
:line
|
||||
|
||||
This fix requires each atom know whether it is a Drude particle or
|
||||
|
@ -110,12 +100,18 @@ Example:
|
|||
fix fDIRECT all drude/transform/direct
|
||||
fix fNVT gCORES nvt temp 300.0 300.0 100.0
|
||||
fix fNVT gDRUDES nvt temp 1.0 1.0 100.0
|
||||
fix fINVERSE all drude/transform/inverse :pre
|
||||
fix fINVERSE all drude/transform/inverse
|
||||
compute TDRUDE all temp/drude
|
||||
thermo_style custom step cpu etotal ke pe ebond ecoul elong press vol temp c_TDRUDE\[1\] c_TDRUDE\[2\] :pre
|
||||
|
||||
|
||||
In this example, {gCORES} is the group of the atom cores and {gDRUDES}
|
||||
is the group of the Drude particles (electrons). The centers of mass
|
||||
of the Drude oscillators will be thermostated at 300.0 and the
|
||||
internal degrees of freedom will be thermostated at 1.0.
|
||||
internal degrees of freedom will be thermostated at 1.0. The
|
||||
temperatures of cores and Drude particles, in center-of-mass and
|
||||
relatice coordinates, are calculated using "compute
|
||||
temp/drude"_compute_temp_drude.html
|
||||
|
||||
In addition, if you want to use a barostat to simulate a system at
|
||||
constant pressure, only one of the Nose-Hoover fixes must be {npt},
|
||||
|
@ -124,7 +120,7 @@ the other one should be {nvt}. You must add a {compute temp/com} and a
|
|||
that of its group but the pressure be the overall pressure
|
||||
{thermo_press}.
|
||||
|
||||
Example: :b
|
||||
Example:
|
||||
|
||||
compute cTEMP_CORE gCORES temp/com
|
||||
fix fDIRECT all drude/transform/direct
|
||||
|
@ -149,18 +145,6 @@ fix fMOMENTUM all momentum 100 linear 1 1 1 :pre
|
|||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
If the {temp yes} keyword is used in {fix drude/transform/inverse}
|
||||
this fix computes a global vector with 6 components which can be
|
||||
accessed by various "output commands"_Section_howto.html#howto_15. The
|
||||
meaning of the components are
|
||||
|
||||
temperature of the centers of mass (temperature units)
|
||||
temperature of the dipoles (temperature units)
|
||||
number of degrees of freedom of the centers of mass
|
||||
number of degrees of freedom of the dipoles
|
||||
kinetic energy of the centers of mass (energy units)
|
||||
kinetic energy of the dipoles (energy units) :ol
|
||||
|
||||
No information about this fix is written to "binary restart
|
||||
files"_restart.html.
|
||||
|
||||
|
@ -173,9 +157,7 @@ files"_restart.html.
|
|||
"compute temp/drude"_compute_temp_drude.html,
|
||||
"pair_style thole"_pair_thole.html
|
||||
|
||||
[Default:]
|
||||
|
||||
The option defaults are temp = no.
|
||||
[Default:] none
|
||||
|
||||
:line
|
||||
|
||||
|
|
|
@ -93,8 +93,10 @@ transform:
|
|||
\begin{equation} F = \frac M {M'}\, F' - f' \end{equation}
|
||||
\begin{equation} f = \frac m {M'}\, F' + f' \end{equation}
|
||||
</P>
|
||||
<P>For Drude pairs (core + electron), the center of mass and the dipole
|
||||
are thermostated if (and only if) the core atom is in the specified
|
||||
<P>This fix also thermostates non-polarizable atoms in the group at
|
||||
temperature <I>Tcom</I>, as if they had a massless Drude partner. The
|
||||
Drude particles themselves need not be in the group. The center of
|
||||
mass and the dipole are thermostated iff the core atom is in the
|
||||
group.
|
||||
</P>
|
||||
<P>Note that the thermostat effect of this fix is applied to only the
|
||||
|
@ -198,9 +200,14 @@ subtracting off an equal part of it from each center of mass in the
|
|||
group. As a result, the total center of mass of a system with zero
|
||||
initial momentum will not drift over time.
|
||||
</P>
|
||||
<P>The actual temperatures of cores and Drude particles, in
|
||||
center-of-mass and relatice coordinates, respectively, can be
|
||||
calculated using the <A HREF = "compute_temp_drude.html">compute temp/drude</A>
|
||||
command.
|
||||
</P>
|
||||
<HR>
|
||||
|
||||
<P>Example for rigid bodies in the NPT ensemble:
|
||||
<P>Usage example for rigid bodies in the NPT ensemble:
|
||||
</P>
|
||||
<PRE>comm_modify vel yes
|
||||
fix TEMP all langevin/drude 300. 100. 1256 1. 20. 13977 zero yes
|
||||
|
@ -210,14 +217,25 @@ thermo_style custom step cpu etotal ke pe ebond ecoul elong press vol temp c_TAT
|
|||
</PRE>
|
||||
<P>Comments:
|
||||
</P>
|
||||
<UL><LI>Drude particles should not be in the rigid group, otherwise the Drude oscillators will be frozen and the system will lose its polarizability.
|
||||
<LI><I>zero yes</I> avoids a drift of the center of mass of the system, but is a bit slower.
|
||||
<LI>use two different random seeds to avoid unphysical correlations.
|
||||
<LI>temperature is controlled by the fix <I>langevin/drude</I>, so the time-integration fixes do not thermostate.
|
||||
<UL><LI>Drude particles should not be in the rigid group, otherwise the Drude
|
||||
<LI>oscillators will be frozen and the system will lose its
|
||||
<LI>polarizability. <I>zero yes</I> avoids a drift of the center of mass of
|
||||
<LI>the system, but is a bit slower. use two different random seeds to
|
||||
<LI>avoid unphysical correlations. temperature is controlled by the fix
|
||||
<LI><I>langevin/drude</I>, so the time-integration fixes do not thermostate.
|
||||
<LI>don't forget to time-integrate both cores and Drude particles.
|
||||
<LI>pressure is time-integrated only once by using <I>nve</I> for Drude particles and <I>nph</I> for atoms/cores (or vice versa). Do not use <I>nph</I> for both.
|
||||
<LI>contrary to the alternative thermostating using Nose-Hoover thermostat fix <I>npt</I> and fix <I>drude/transform</I>, the <I>fix_modify</I> command is not required here, because the fix <I>nph</I> computes the global pressure even if its group is <I>ATOMS</I>. This is what we want. If we thermostated <I>ATOMS</I> using <I>npt</I>, the pressure should be the global one, but the temperature should be only that of the cores. That's why the command <I>fix_modify</I> should be called in that case.
|
||||
<LI>f_TEMP[1] and f_TEMP[2] contain the reduced temperatures of the cores/atoms and of the Drude particles (see below). They should be 300. and 1. on average here.
|
||||
<LI>pressure is time-integrated only once by using <I>nve</I> for Drude
|
||||
<LI>particles and <I>nph</I> for atoms/cores (or vice versa). Do not use <I>nph</I>
|
||||
<LI>for both. contrary to the alternative thermostating using Nose-Hoover
|
||||
<LI>thermostat fix <I>npt</I> and fix <I>drude/transform</I>, the <I>fix_modify</I>
|
||||
<LI>command is not required here, because the fix <I>nph</I> computes the
|
||||
<LI>global pressure even if its group is <I>ATOMS</I>. This is what we want. If
|
||||
<LI>we thermostated <I>ATOMS</I> using <I>npt</I>, the pressure should be the global
|
||||
<LI>one, but the temperature should be only that of the cores. That's why
|
||||
<LI>the command <I>fix_modify</I> should be called in that case. f_TEMP[1]
|
||||
<LI>and f_TEMP[2] contain the reduced temperatures of the cores/atoms
|
||||
<LI>and of the Drude particles (see below). They should be 300. and 1. on
|
||||
<LI>average here.
|
||||
</UL>
|
||||
<HR>
|
||||
|
||||
|
@ -236,17 +254,6 @@ you have defined to this fix which will be used in its thermostating
|
|||
procedure, as described above. For consistency, the group used by the
|
||||
compute should include the group of this fix and the Drude particles.
|
||||
</P>
|
||||
<P>This fix computes a global vector with 6 components which can be
|
||||
accessed by various <A HREF = "Section_howto.html#howto_15">output commands</A>. The
|
||||
meaning of the components are as follows:
|
||||
</P>
|
||||
<OL><LI>temperature of the centers of mass (temperature units)
|
||||
<LI>temperature of the dipoles (temperature units)
|
||||
<LI>number of degrees of freedom of the centers of mass
|
||||
<LI>number of degrees of freedom of the dipoles
|
||||
<LI>kinetic energy of the centers of mass (energy units)
|
||||
<LI>kinetic energy of the dipoles (energy units)
|
||||
</OL>
|
||||
<P>This fix is not invoked during <A HREF = "minimize.html">energy minimization</A>.
|
||||
</P>
|
||||
<P><B>Restrictions:</B> none
|
||||
|
@ -254,6 +261,7 @@ meaning of the components are as follows:
|
|||
<P><B>Related commands:</B>
|
||||
</P>
|
||||
<P><A HREF = "fix_langevin.html">fix langevin</A>,
|
||||
<A HREF = "fix_drude.html">fix drude</A>,
|
||||
<A HREF = "fix_drude_transform.html">fix drude/transform</A>,
|
||||
<A HREF = "compute_temp_drude.html">compute temp/drude</A>,
|
||||
<A HREF = "pair_thole.html">pair_style thole</A>
|
||||
|
|
|
@ -77,8 +77,10 @@ transform:
|
|||
\begin\{equation\} F = \frac M \{M'\}\, F' - f' \end\{equation\}
|
||||
\begin\{equation\} f = \frac m \{M'\}\, F' + f' \end\{equation\}
|
||||
|
||||
For Drude pairs (core + electron), the center of mass and the dipole
|
||||
are thermostated if (and only if) the core atom is in the specified
|
||||
This fix also thermostates non-polarizable atoms in the group at
|
||||
temperature {Tcom}, as if they had a massless Drude partner. The
|
||||
Drude particles themselves need not be in the group. The center of
|
||||
mass and the dipole are thermostated iff the core atom is in the
|
||||
group.
|
||||
|
||||
Note that the thermostat effect of this fix is applied to only the
|
||||
|
@ -182,9 +184,14 @@ subtracting off an equal part of it from each center of mass in the
|
|||
group. As a result, the total center of mass of a system with zero
|
||||
initial momentum will not drift over time.
|
||||
|
||||
The actual temperatures of cores and Drude particles, in
|
||||
center-of-mass and relatice coordinates, respectively, can be
|
||||
calculated using the "compute temp/drude"_compute_temp_drude.html
|
||||
command.
|
||||
|
||||
:line
|
||||
|
||||
Example for rigid bodies in the NPT ensemble:
|
||||
Usage example for rigid bodies in the NPT ensemble:
|
||||
|
||||
comm_modify vel yes
|
||||
fix TEMP all langevin/drude 300. 100. 1256 1. 20. 13977 zero yes
|
||||
|
@ -194,14 +201,25 @@ thermo_style custom step cpu etotal ke pe ebond ecoul elong press vol temp c_TAT
|
|||
|
||||
Comments:
|
||||
|
||||
Drude particles should not be in the rigid group, otherwise the Drude oscillators will be frozen and the system will lose its polarizability.
|
||||
{zero yes} avoids a drift of the center of mass of the system, but is a bit slower.
|
||||
use two different random seeds to avoid unphysical correlations.
|
||||
temperature is controlled by the fix {langevin/drude}, so the time-integration fixes do not thermostate.
|
||||
Drude particles should not be in the rigid group, otherwise the Drude
|
||||
oscillators will be frozen and the system will lose its
|
||||
polarizability. {zero yes} avoids a drift of the center of mass of
|
||||
the system, but is a bit slower. use two different random seeds to
|
||||
avoid unphysical correlations. temperature is controlled by the fix
|
||||
{langevin/drude}, so the time-integration fixes do not thermostate.
|
||||
don't forget to time-integrate both cores and Drude particles.
|
||||
pressure is time-integrated only once by using {nve} for Drude particles and {nph} for atoms/cores (or vice versa). Do not use {nph} for both.
|
||||
contrary to the alternative thermostating using Nose-Hoover thermostat fix {npt} and fix {drude/transform}, the {fix_modify} command is not required here, because the fix {nph} computes the global pressure even if its group is {ATOMS}. This is what we want. If we thermostated {ATOMS} using {npt}, the pressure should be the global one, but the temperature should be only that of the cores. That's why the command {fix_modify} should be called in that case.
|
||||
f_TEMP\[1\] and f_TEMP\[2\] contain the reduced temperatures of the cores/atoms and of the Drude particles (see below). They should be 300. and 1. on average here. :ul
|
||||
pressure is time-integrated only once by using {nve} for Drude
|
||||
particles and {nph} for atoms/cores (or vice versa). Do not use {nph}
|
||||
for both. contrary to the alternative thermostating using Nose-Hoover
|
||||
thermostat fix {npt} and fix {drude/transform}, the {fix_modify}
|
||||
command is not required here, because the fix {nph} computes the
|
||||
global pressure even if its group is {ATOMS}. This is what we want. If
|
||||
we thermostated {ATOMS} using {npt}, the pressure should be the global
|
||||
one, but the temperature should be only that of the cores. That's why
|
||||
the command {fix_modify} should be called in that case. f_TEMP\[1\]
|
||||
and f_TEMP\[2\] contain the reduced temperatures of the cores/atoms
|
||||
and of the Drude particles (see below). They should be 300. and 1. on
|
||||
average here. :ul
|
||||
|
||||
:line
|
||||
|
||||
|
@ -220,17 +238,6 @@ you have defined to this fix which will be used in its thermostating
|
|||
procedure, as described above. For consistency, the group used by the
|
||||
compute should include the group of this fix and the Drude particles.
|
||||
|
||||
This fix computes a global vector with 6 components which can be
|
||||
accessed by various "output commands"_Section_howto.html#howto_15. The
|
||||
meaning of the components are as follows:
|
||||
|
||||
temperature of the centers of mass (temperature units)
|
||||
temperature of the dipoles (temperature units)
|
||||
number of degrees of freedom of the centers of mass
|
||||
number of degrees of freedom of the dipoles
|
||||
kinetic energy of the centers of mass (energy units)
|
||||
kinetic energy of the dipoles (energy units) :ol
|
||||
|
||||
This fix is not invoked during "energy minimization"_minimize.html.
|
||||
|
||||
[Restrictions:] none
|
||||
|
@ -238,6 +245,7 @@ This fix is not invoked during "energy minimization"_minimize.html.
|
|||
[Related commands:]
|
||||
|
||||
"fix langevin"_fix_langevin.html,
|
||||
"fix drude"_fix_drude.html,
|
||||
"fix drude/transform"_fix_drude_transform.html,
|
||||
"compute temp/drude"_compute_temp_drude.html,
|
||||
"pair_style thole"_pair_thole.html
|
||||
|
|
Loading…
Reference in New Issue