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

This commit is contained in:
sjplimp 2008-04-04 22:13:20 +00:00
parent a87360587a
commit cb14b49a91
2 changed files with 238 additions and 122 deletions

View File

@ -1019,78 +1019,137 @@ frequencies and global vs per-atom attributes are the same.
<A NAME = "4_16"></A><H4>4.16 Thermostatting, barostatting, and computing temperature <A NAME = "4_16"></A><H4>4.16 Thermostatting, barostatting, and computing temperature
</H4> </H4>
<P> add a HowTo on time integration options and/or thermostat/temperature options <P>Thermostatting means controlling the temperature of particles in an MD
4 thermostats simulation. Barostatting means controlling the pressure. Since the
which do integration, which need fix nve or fix nph pressure includes a kinetic component due to particle velocities, both
all can be used with press/berendsen these operations require calculation of the temperature. Typically a
only NVT thermostats rotational degrees of freedom directly target temperature (T) and/or pressure (P) is specified by the user,
what bias is, how to remove it and the thermostat or barostat attempts to equilibrate the system to
howto remove bias for temp/sphere and temp/asphere the requested T and/or P.
which biases can be doubled up via compute_modify bias command
</P> </P>
<P>Enhanced the computes that calculate temperature, thermostatting <P>Temperature is computed as kinetic energy divided by some number of
fixes, and time integrators that use temperature control to be more degrees of freedom (and the Boltzmann constant). Since kinetic energy
flexible and consistent. This is for point particles, extended is a function of particle velocity, there is often a need to
spherical particles, and <A HREF = "doc/Section_howto.html#4_14">aspherical distinguish between a particle's advection velocity (due to some
particles</A>. Also Added new <A HREF = "doc/compute_ke.html">compute aggregate motiion of particles) and its thermal velocity. The sum of
ke</A> and <A HREF = "doc/compute_erotate_asphere.html">compute the two is the particle's total velocity, but the latter is often what
erotate/asphere</A> commands. is wanted to compute a temperature.
</P> </P>
<P>These <A HREF = "doc/compute.html">compute commands</A> calculate temperature. All <P>LAMMPS has several options for computing temperatures and for using
but the first 3 calculate velocity biases that are removed when them in thermostatting and barostatting.
computing a temperature. Temp/sphere and temp/asphere now allow
computes that calculate such a biased temperature to be included as an
additional argument, so that the translational velocity of extended
spherical or aspherical particles can also be altered in prescribed
ways.
</P> </P>
<UL><LI><A HREF = "doc/compute_temp.html">compute temp</A> <P>These <A HREF = "compute.html">compute commands</A> calculate temperature.
<LI><A HREF = "doc/compute_temp_sphere.html">compute temp/sphere</A> </P>
<LI><A HREF = "doc/compute_temp_asphere.html">compute temp/asphere</A> <UL><LI><A HREF = "compute_temp.html">compute temp</A>
<LI><A HREF = "doc/compute_temp_com.html">compute temp/com</A> <LI><A HREF = "compute_temp_sphere.html">compute temp/sphere</A>
<LI><A HREF = "doc/compute_temp_deform.html">compute temp/deform</A> <LI><A HREF = "compute_temp_asphere.html">compute temp/asphere</A>
<LI><A HREF = "doc/compute_temp_partial.html">compute temp/partial</A> <LI><A HREF = "compute_temp_com.html">compute temp/com</A>
<LI><A HREF = "doc/compute_temp_ramp.html">compute temp/ramp</A> <LI><A HREF = "compute_temp_deform.html">compute temp/deform</A>
<LI><A HREF = "doc/compute_temp_region.html">compute temp/region</A> <LI><A HREF = "compute_temp_partial.html">compute temp/partial</A>
<LI><A HREF = "compute_temp_ramp.html">compute temp/ramp</A>
<LI><A HREF = "compute_temp_region.html">compute temp/region</A>
</UL> </UL>
<P>Four thermostatting methods are available: Nose-Hoover, Berendsen, <P>All but the first 3 calculate velocity biases (i.e. advection
Langevin, and direct rescaling. Nose/Hoover works on rotational velocities) that are removed when computing the thermal temperature.
degrees-of-freedom for spherical and aspherical particles; the others <A HREF = "fix_temp_sphere.html">Fix temp/sphere</A> and <A HREF = "fix_temp_asphere.html">fix
only work on translational degrees of freedom. Any of these methods temp/asphere</A> compute kinetic energy for
can use temperature computes that remove bias for the purpose of extended particles that includes rotational degrees of freedom. They
computing the current temperature and performing thermostatting only both allow, as an extra argument, another temperature compute that
on the remaining thermal velocity. For <A HREF = "doc/Section_howto.html#4_13">non-equilibrium MD subtracts a velocity bias, so the translational velocity of extended
simulations</A>., there is also a SLLOD fix spherical or aspherical particles can be adjusted in prescribed ways.
which does NVT thermostatting in conjunction with the SLLOD equations
of motion. These are the relevant <A HREF = "doc/fix.html">fix commands</A>:
</P> </P>
<UL><LI><A HREF = "doc/fix_nvt.html">fix nvt</A> <P>Thermostatting in LAMMPS is performed by <A HREF = "fix.html">fixes</A>. Four
<LI><A HREF = "doc/fix_nvt_sphere.html">fix nvt/sphere</A> thermostatting fixes are currently available: Nose-Hoover (nvt),
<LI><A HREF = "doc/fix_nvt_asphere.html">fix nvt/asphere</A> Berendsen, Langevin, and direct rescaling (temp/rescale):
<LI><A HREF = "doc/fix_nvt_sllod.html">fix nvt/sllod</A> </P>
<LI><A HREF = "doc/fix_temp_berendsen.html">fix temp/berendsen</A> <UL><LI><A HREF = "fix_nvt.html">fix nvt</A>
<LI><A HREF = "doc/fix_langevin.html">fix langevin</A> <LI><A HREF = "fix_nvt_sphere.html">fix nvt/sphere</A>
<LI><A HREF = "doc/fix_temp_rescale.html">fix temp/rescale</A> <LI><A HREF = "fix_nvt_asphere.html">fix nvt/asphere</A>
<LI><A HREF = "fix_nvt_sllod.html">fix nvt/sllod</A>
<LI><A HREF = "fix_temp_berendsen.html">fix temp/berendsen</A>
<LI><A HREF = "fix_langevin.html">fix langevin</A>
<LI><A HREF = "fix_temp_rescale.html">fix temp/rescale</A>
</UL> </UL>
<P>Note that only the nvt fixes perform time integration. The others <P><A HREF = "fix_nvt.html">Fix nvt</A> only thermostats the translational velocity of
should be used with an NVE integration fix such as these: particles. <A HREF = "fix_nvt_sllod.html">Fix nvt/sllod</A> does as well, except
that it subtracts out a velocity bias due to a deforming box and
integrates the SLLOD equations of motion. See the <A HREF = "#4_13">NEMD
simulations</A> section of this page for further details. <A HREF = "fix_nvt_sphere.html">Fix
nvt/sphere</A> and <A HREF = "fix_nvt_asphere.html">fix
nvt/asphere</A> thermostat not only translation
velocities but also rotational velocities for spherical and aspherical
particles.
</P> </P>
<UL><LI><A HREF = "doc/fix_nve.html">fix nve</A> <P>Any of these fixes can use temperature computes that remove bias for
<LI><A HREF = "doc/fix_nve_sphere.html">fix nve/sphere</A> two purposes: (a) computing the current temperature to compare to the
requested target temperature, and (b) adjusting only the thermal
temperature component of the particle's velocities. See the doc pages
for the individual fixes and for the <A HREF = "fix_modify.html">fix_modify</A>
command for instructions on how to assign a temperature compute to a
thermostatting fix.
</P>
<P>IMPORTANT NOTE: Only the nvt fixes perform time integration, meaning
they update the velocities and positions of particles due to forces
and velocities respectively. The other thermostat fixes only adjust
velocities; they do NOT perform time integration. Thus they should be
used in conjunction with a constant NVE integration fix such as these:
</P>
<UL><LI><A HREF = "fix_nve.html">fix nve</A>
<LI><A HREF = "fix_nve_sphere.html">fix nve/sphere</A>
<LI><A HREF = "doc_fix_nve_asphere.html">fix nve/asphere</A> <LI><A HREF = "doc_fix_nve_asphere.html">fix nve/asphere</A>
</UL> </UL>
<P>Two barosttating methods are available: Nose-Hoover and Berendsen. <P>Barostatting in LAMMPS is also performed by <A HREF = "fix.html">fixes</A>. Two
The fix npt commands include Nose-Hoover thermostatting. Fix nph and barosttating methods are currently available: Nose-Hoover (npt and
fix press/bernendsen can be used in conjunction with any of the 4 nph) and Berendsen:
thermostatting methods. These are the relevant <A HREF = "doc/fix.html">fix
commands</A>:
</P> </P>
<UL><LI><A HREF = "doc/fix_npt.html">fix npt</A> <UL><LI><A HREF = "fix_npt.html">fix npt</A>
<LI><A HREF = "doc/fix_npt_sphere.html">fix npt/sphere</A> <LI><A HREF = "fix_npt_sphere.html">fix npt/sphere</A>
<LI><A HREF = "doc/fix_npt_asphere.html">fix npt/asphere</A> <LI><A HREF = "fix_npt_asphere.html">fix npt/asphere</A>
<LI><A HREF = "doc/fix_nph.html">fix nph</A> <LI><A HREF = "fix_nph.html">fix nph</A>
<LI><A HREF = "doc/fix_press_berendsen.html">fix press/berendsen</A> <LI><A HREF = "fix_press_berendsen.html">fix press/berendsen</A>
</UL> </UL>
<P>The <A HREF = "fix_npt.html">fix npt</A> commands include a Nose-Hoover thermostat
and barostat. <A HREF = "fix_nph.html">Fix nph</A> is just a Nose/Hoover barostat;
it does no thermostatting. Both <A HREF = "fix_nph.html">fix nph</A> and <A HREF = "fix_press_berendsen.html">fix
press/bernendsen</A> can be used in conjunction
with any of the thermostatting fixes.
</P>
<P>As with the thermostats, <A HREF = "fix_npt.html">fix npt</A> and <A HREF = "fix_nph.html">fix
nph</A> only use translational motion of the particles in
computing T and P and performing thermo/barostatting. <A HREF = "fix_npt_sphere.html">Fix
npt/sphere</A> and <A HREF = "fix_npt_asphere.html">fix
npt/asphere</A> thermo/barostat using not only
translation velocities but also rotational velocities for spherical
and aspherical particles.
</P>
<P>All of the barostatting fixes use the <A HREF = "compute_pressure.html">compute
pressure</A> compute to calculate a current
pressure. The barostatting fixes can also use temperature computes
that remove bias for the purpose of computing the current temperature
which contributes to the current pressure. See the doc pages for the
individual fixes and for the <A HREF = "fix_modify.html">fix_modify</A> command for
instructions on how to assign a temperature or pressure compute to a
barostatting fix.
</P>
<P>IMPORTANT NOTE: As with the thermostats, the Nose/Hoover methods (<A HREF = "fix_npt.html">fix
npt</A> and <A HREF = "fix_nph.html">fix nph</A>) perform time
integration. <A HREF = "fix_press_berendsen.html">Fix press/berendsen</A> does NOT,
so it should be used with one of the constant NVE fixes or with one of
the NVT fixes.
</P>
<P>Finally, thermodynamic output, which can be setup via the
<A HREF = "thermo_style.html">thermo_style</A> command, often includes temperature
and pressure values. As explained on the doc page for the
<A HREF = "thermo_style.html">thermo_style</A> command, the default T and P are
setup by the thermo command itself. They are NOT the ones associated
with any thermostatting or barostatting fix you have defined or with
any compute that calculates a temperature or pressure. Thus if you
want to view these values of T and P, you need to specify them
explicitly via a <A HREF = "thermo_style.html">thermo_style custom</A> command. Or
you can use the <A HREF = "thermo_modify.html">thermo_modify</A> command to
re-define what temperature or pressure compute is used for default
thermodynamic output.
</P>
<HR> <HR>
<HR> <HR>

View File

@ -1010,79 +1010,136 @@ run every: any variable: nevery: screen, log: nevery :tb(s=:)
4.16 Thermostatting, barostatting, and computing temperature :link(4_16),h4 4.16 Thermostatting, barostatting, and computing temperature :link(4_16),h4
add a HowTo on time integration options and/or thermostat/temperature options Thermostatting means controlling the temperature of particles in an MD
4 thermostats simulation. Barostatting means controlling the pressure. Since the
which do integration, which need fix nve or fix nph pressure includes a kinetic component due to particle velocities, both
all can be used with press/berendsen these operations require calculation of the temperature. Typically a
only NVT thermostats rotational degrees of freedom directly target temperature (T) and/or pressure (P) is specified by the user,
what bias is, how to remove it and the thermostat or barostat attempts to equilibrate the system to
howto remove bias for temp/sphere and temp/asphere the requested T and/or P.
which biases can be doubled up via compute_modify bias command
Enhanced the computes that calculate temperature, thermostatting Temperature is computed as kinetic energy divided by some number of
fixes, and time integrators that use temperature control to be more degrees of freedom (and the Boltzmann constant). Since kinetic energy
flexible and consistent. This is for point particles, extended is a function of particle velocity, there is often a need to
spherical particles, and "aspherical distinguish between a particle's advection velocity (due to some
particles"_doc/Section_howto.html#4_14. Also Added new "compute aggregate motiion of particles) and its thermal velocity. The sum of
ke"_doc/compute_ke.html and "compute the two is the particle's total velocity, but the latter is often what
erotate/asphere"_doc/compute_erotate_asphere.html commands. is wanted to compute a temperature.
These "compute commands"_doc/compute.html calculate temperature. All LAMMPS has several options for computing temperatures and for using
but the first 3 calculate velocity biases that are removed when them in thermostatting and barostatting.
computing a temperature. Temp/sphere and temp/asphere now allow
computes that calculate such a biased temperature to be included as an
additional argument, so that the translational velocity of extended
spherical or aspherical particles can also be altered in prescribed
ways.
"compute temp"_doc/compute_temp.html These "compute commands"_compute.html calculate temperature.
"compute temp/sphere"_doc/compute_temp_sphere.html
"compute temp/asphere"_doc/compute_temp_asphere.html
"compute temp/com"_doc/compute_temp_com.html
"compute temp/deform"_doc/compute_temp_deform.html
"compute temp/partial"_doc/compute_temp_partial.html
"compute temp/ramp"_doc/compute_temp_ramp.html
"compute temp/region"_doc/compute_temp_region.html :ul
Four thermostatting methods are available: Nose-Hoover, Berendsen, "compute temp"_compute_temp.html
Langevin, and direct rescaling. Nose/Hoover works on rotational "compute temp/sphere"_compute_temp_sphere.html
degrees-of-freedom for spherical and aspherical particles; the others "compute temp/asphere"_compute_temp_asphere.html
only work on translational degrees of freedom. Any of these methods "compute temp/com"_compute_temp_com.html
can use temperature computes that remove bias for the purpose of "compute temp/deform"_compute_temp_deform.html
computing the current temperature and performing thermostatting only "compute temp/partial"_compute_temp_partial.html
on the remaining thermal velocity. For "non-equilibrium MD "compute temp/ramp"_compute_temp_ramp.html
simulations"_doc/Section_howto.html#4_13., there is also a SLLOD fix "compute temp/region"_compute_temp_region.html :ul
which does NVT thermostatting in conjunction with the SLLOD equations
of motion. These are the relevant "fix commands"_doc/fix.html:
"fix nvt"_doc/fix_nvt.html All but the first 3 calculate velocity biases (i.e. advection
"fix nvt/sphere"_doc/fix_nvt_sphere.html velocities) that are removed when computing the thermal temperature.
"fix nvt/asphere"_doc/fix_nvt_asphere.html "Fix temp/sphere"_fix_temp_sphere.html and "fix
"fix nvt/sllod"_doc/fix_nvt_sllod.html temp/asphere"_fix_temp_asphere.html compute kinetic energy for
"fix temp/berendsen"_doc/fix_temp_berendsen.html extended particles that includes rotational degrees of freedom. They
"fix langevin"_doc/fix_langevin.html both allow, as an extra argument, another temperature compute that
"fix temp/rescale"_doc/fix_temp_rescale.html :ul subtracts a velocity bias, so the translational velocity of extended
spherical or aspherical particles can be adjusted in prescribed ways.
Note that only the nvt fixes perform time integration. The others Thermostatting in LAMMPS is performed by "fixes"_fix.html. Four
should be used with an NVE integration fix such as these: thermostatting fixes are currently available: Nose-Hoover (nvt),
Berendsen, Langevin, and direct rescaling (temp/rescale):
"fix nve"_doc/fix_nve.html "fix nvt"_fix_nvt.html
"fix nve/sphere"_doc/fix_nve_sphere.html "fix nvt/sphere"_fix_nvt_sphere.html
"fix nvt/asphere"_fix_nvt_asphere.html
"fix nvt/sllod"_fix_nvt_sllod.html
"fix temp/berendsen"_fix_temp_berendsen.html
"fix langevin"_fix_langevin.html
"fix temp/rescale"_fix_temp_rescale.html :ul
"Fix nvt"_fix_nvt.html only thermostats the translational velocity of
particles. "Fix nvt/sllod"_fix_nvt_sllod.html does as well, except
that it subtracts out a velocity bias due to a deforming box and
integrates the SLLOD equations of motion. See the "NEMD
simulations"_#4_13 section of this page for further details. "Fix
nvt/sphere"_fix_nvt_sphere.html and "fix
nvt/asphere"_fix_nvt_asphere.html thermostat not only translation
velocities but also rotational velocities for spherical and aspherical
particles.
Any of these fixes can use temperature computes that remove bias for
two purposes: (a) computing the current temperature to compare to the
requested target temperature, and (b) adjusting only the thermal
temperature component of the particle's velocities. See the doc pages
for the individual fixes and for the "fix_modify"_fix_modify.html
command for instructions on how to assign a temperature compute to a
thermostatting fix.
IMPORTANT NOTE: Only the nvt fixes perform time integration, meaning
they update the velocities and positions of particles due to forces
and velocities respectively. The other thermostat fixes only adjust
velocities; they do NOT perform time integration. Thus they should be
used in conjunction with a constant NVE integration fix such as these:
"fix nve"_fix_nve.html
"fix nve/sphere"_fix_nve_sphere.html
"fix nve/asphere"_doc_fix_nve_asphere.html :ul "fix nve/asphere"_doc_fix_nve_asphere.html :ul
Two barosttating methods are available: Nose-Hoover and Berendsen. Barostatting in LAMMPS is also performed by "fixes"_fix.html. Two
The fix npt commands include Nose-Hoover thermostatting. Fix nph and barosttating methods are currently available: Nose-Hoover (npt and
fix press/bernendsen can be used in conjunction with any of the 4 nph) and Berendsen:
thermostatting methods. These are the relevant "fix
commands"_doc/fix.html:
"fix npt"_doc/fix_npt.html "fix npt"_fix_npt.html
"fix npt/sphere"_doc/fix_npt_sphere.html "fix npt/sphere"_fix_npt_sphere.html
"fix npt/asphere"_doc/fix_npt_asphere.html "fix npt/asphere"_fix_npt_asphere.html
"fix nph"_doc/fix_nph.html "fix nph"_fix_nph.html
"fix press/berendsen"_doc/fix_press_berendsen.html :ul "fix press/berendsen"_fix_press_berendsen.html :ul
The "fix npt"_fix_npt.html commands include a Nose-Hoover thermostat
and barostat. "Fix nph"_fix_nph.html is just a Nose/Hoover barostat;
it does no thermostatting. Both "fix nph"_fix_nph.html and "fix
press/bernendsen"_fix_press_berendsen.html can be used in conjunction
with any of the thermostatting fixes.
As with the thermostats, "fix npt"_fix_npt.html and "fix
nph"_fix_nph.html only use translational motion of the particles in
computing T and P and performing thermo/barostatting. "Fix
npt/sphere"_fix_npt_sphere.html and "fix
npt/asphere"_fix_npt_asphere.html thermo/barostat using not only
translation velocities but also rotational velocities for spherical
and aspherical particles.
All of the barostatting fixes use the "compute
pressure"_compute_pressure.html compute to calculate a current
pressure. The barostatting fixes can also use temperature computes
that remove bias for the purpose of computing the current temperature
which contributes to the current pressure. See the doc pages for the
individual fixes and for the "fix_modify"_fix_modify.html command for
instructions on how to assign a temperature or pressure compute to a
barostatting fix.
IMPORTANT NOTE: As with the thermostats, the Nose/Hoover methods ("fix
npt"_fix_npt.html and "fix nph"_fix_nph.html) perform time
integration. "Fix press/berendsen"_fix_press_berendsen.html does NOT,
so it should be used with one of the constant NVE fixes or with one of
the NVT fixes.
Finally, thermodynamic output, which can be setup via the
"thermo_style"_thermo_style.html command, often includes temperature
and pressure values. As explained on the doc page for the
"thermo_style"_thermo_style.html command, the default T and P are
setup by the thermo command itself. They are NOT the ones associated
with any thermostatting or barostatting fix you have defined or with
any compute that calculates a temperature or pressure. Thus if you
want to view these values of T and P, you need to specify them
explicitly via a "thermo_style custom"_thermo_style.html command. Or
you can use the "thermo_modify"_thermo_modify.html command to
re-define what temperature or pressure compute is used for default
thermodynamic output.
:line :line
:line :line