From a87360587a15e5fedf21ddc5fedde662c499fd14 Mon Sep 17 00:00:00 2001
From: sjplimp The example input scripts included in the LAMMPS distribution and
highlighted in this section also show how to
@@ -1016,6 +1017,82 @@ frequencies and global vs per-atom attributes are the same.
add a HowTo on time integration options and/or thermostat/temperature options
+ 4 thermostats
+ which do integration, which need fix nve or fix nph
+ all can be used with press/berendsen
+ only NVT thermostats rotational degrees of freedom directly
+ what bias is, how to remove it
+ howto remove bias for temp/sphere and temp/asphere
+ which biases can be doubled up via compute_modify bias command
+ Enhanced the computes that calculate temperature, thermostatting
+fixes, and time integrators that use temperature control to be more
+flexible and consistent. This is for point particles, extended
+spherical particles, and aspherical
+particles. Also Added new compute
+ke and compute
+erotate/asphere commands.
+ These compute commands calculate temperature. All
+but the first 3 calculate velocity biases that are removed when
+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.
+ Four thermostatting methods are available: Nose-Hoover, Berendsen,
+Langevin, and direct rescaling. Nose/Hoover works on rotational
+degrees-of-freedom for spherical and aspherical particles; the others
+only work on translational degrees of freedom. Any of these methods
+can use temperature computes that remove bias for the purpose of
+computing the current temperature and performing thermostatting only
+on the remaining thermal velocity. For non-equilibrium MD
+simulations., there is also a SLLOD fix
+which does NVT thermostatting in conjunction with the SLLOD equations
+of motion. These are the relevant fix commands:
+ Note that only the nvt fixes perform time integration. The others
+should be used with an NVE integration fix such as these:
+ Two barosttating methods are available: Nose-Hoover and Berendsen.
+The fix npt commands include Nose-Hoover thermostatting. Fix nph and
+fix press/bernendsen can be used in conjunction with any of the 4
+thermostatting methods. These are the relevant fix
+commands:
+ See the "thermo_style" command for more details.
See this howto section of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+ Output info:
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp.txt b/doc/compute_temp.txt
index 6696bcf5c8..b18e93dba1 100644
--- a/doc/compute_temp.txt
+++ b/doc/compute_temp.txt
@@ -55,6 +55,10 @@ compute thermo_temp all temp :pre
See the "thermo_style" command for more details.
+See "this howto section"_Section_howto.html#4_16 of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+
[Output info:]
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_com.html b/doc/compute_temp_com.html
index 8836839bad..44b66a8a56 100644
--- a/doc/compute_temp_com.html
+++ b/doc/compute_temp_com.html
@@ -65,6 +65,10 @@ atoms that include these constraints will be computed correctly. If
needed, the subtracted degrees-of-freedom can be altered using the
extra option of the compute_modify command.
See this howto section of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+ Output info:
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_com.txt b/doc/compute_temp_com.txt
index 30d519d792..460602d15f 100644
--- a/doc/compute_temp_com.txt
+++ b/doc/compute_temp_com.txt
@@ -62,6 +62,10 @@ atoms that include these constraints will be computed correctly. If
needed, the subtracted degrees-of-freedom can be altered using the
{extra} option of the "compute_modify"_compute_modify.html command.
+See "this howto section"_Section_howto.html#4_16 of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+
[Output info:]
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_deform.html b/doc/compute_temp_deform.html
index 23f93752e2..9e10e7d147 100644
--- a/doc/compute_temp_deform.html
+++ b/doc/compute_temp_deform.html
@@ -87,6 +87,10 @@ atoms that include these constraints will be computed correctly. If
needed, the subtracted degrees-of-freedom can be altered using the
extra option of the compute_modify command.
See this howto section of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+ Output info:
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_deform.txt b/doc/compute_temp_deform.txt
index b3fe7e5c8d..d0ddc343df 100644
--- a/doc/compute_temp_deform.txt
+++ b/doc/compute_temp_deform.txt
@@ -84,6 +84,10 @@ atoms that include these constraints will be computed correctly. If
needed, the subtracted degrees-of-freedom can be altered using the
{extra} option of the "compute_modify"_compute_modify.html command.
+See "this howto section"_Section_howto.html#4_16 of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+
[Output info:]
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_partial.html b/doc/compute_temp_partial.html
index 158795fc1a..0157cc88c2 100644
--- a/doc/compute_temp_partial.html
+++ b/doc/compute_temp_partial.html
@@ -66,6 +66,10 @@ atoms that include these constraints will be computed correctly. If
needed, the subtracted degrees-of-freedom can be altered using the
extra option of the compute_modify command.
See this howto section of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+ Output info:
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_partial.txt b/doc/compute_temp_partial.txt
index e1ef41d283..d38a34b07e 100644
--- a/doc/compute_temp_partial.txt
+++ b/doc/compute_temp_partial.txt
@@ -63,6 +63,10 @@ atoms that include these constraints will be computed correctly. If
needed, the subtracted degrees-of-freedom can be altered using the
{extra} option of the "compute_modify"_compute_modify.html command.
+See "this howto section"_Section_howto.html#4_16 of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+
[Output info:]
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_ramp.html b/doc/compute_temp_ramp.html
index 0e2a170e56..d3f8863446 100644
--- a/doc/compute_temp_ramp.html
+++ b/doc/compute_temp_ramp.html
@@ -78,6 +78,10 @@ atoms that include these constraints will be computed correctly. If
needed, the subtracted degrees-of-freedom can be altered using the
extra option of the compute_modify command.
See this howto section of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+ Output info:
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_ramp.txt b/doc/compute_temp_ramp.txt
index 3fd44ff25d..2e8b288ac0 100644
--- a/doc/compute_temp_ramp.txt
+++ b/doc/compute_temp_ramp.txt
@@ -74,6 +74,10 @@ atoms that include these constraints will be computed correctly. If
needed, the subtracted degrees-of-freedom can be altered using the
{extra} option of the "compute_modify"_compute_modify.html command.
+See "this howto section"_Section_howto.html#4_16 of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+
[Output info:]
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_region.html b/doc/compute_temp_region.html
index 0ca168aace..daf8f0c0a2 100644
--- a/doc/compute_temp_region.html
+++ b/doc/compute_temp_region.html
@@ -77,6 +77,10 @@ constrain molecular motion, such as fix shake and
degrees-of-freedom can be altered using the extra option of the
compute_modify command.
See this howto section of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+ Output info:
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_region.txt b/doc/compute_temp_region.txt
index 50736d846b..a74ec40af4 100644
--- a/doc/compute_temp_region.txt
+++ b/doc/compute_temp_region.txt
@@ -74,6 +74,10 @@ constrain molecular motion, such as "fix shake"_fix_shake.html and
degrees-of-freedom can be altered using the {extra} option of the
"compute_modify"_compute_modify.html command.
+See "this howto section"_Section_howto.html#4_16 of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+
[Output info:]
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_sphere.html b/doc/compute_temp_sphere.html
index 4e164db224..3ad02ed746 100644
--- a/doc/compute_temp_sphere.html
+++ b/doc/compute_temp_sphere.html
@@ -70,6 +70,10 @@ computed correctly. If needed, the subtracted degrees-of-freedom can
be altered using the extra option of the
compute_modify command.
See this howto section of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+ Output info:
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/compute_temp_sphere.txt b/doc/compute_temp_sphere.txt
index a40887822e..4c7878d9b4 100755
--- a/doc/compute_temp_sphere.txt
+++ b/doc/compute_temp_sphere.txt
@@ -67,6 +67,10 @@ computed correctly. If needed, the subtracted degrees-of-freedom can
be altered using the {extra} option of the
"compute_modify"_compute_modify.html command.
+See "this howto section"_Section_howto.html#4_16 of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+
[Output info:]
The scalar value calculated by this compute is "intensive", meaning it
diff --git a/doc/fix_langevin.html b/doc/fix_langevin.html
index dcbc61ae2a..f7389486fd 100644
--- a/doc/fix_langevin.html
+++ b/doc/fix_langevin.html
@@ -85,6 +85,10 @@ should not normally be used on atoms that also have their temperature
controlled by another fix - e.g. by fix nvt or fix
temp/rescale commands.
See this howto section of the manual for a
+discussion of different ways to compute temperature and perform
+thermostatting.
+ The desired temperature at each timestep is a ramped value during the
run from Tstart to Tstop.
4.15 Output from LAMMPS
+
+ 4.16 Thermostatting, barostatting, and compute temperature
4.13 NEMD simulations
4.14 Aspherical particles
-4.15 Output from LAMMPS
+4.15 Output from LAMMPS
+4.16 Thermostatting, barostatting and computing temperature
+4.16 Thermostatting, barostatting, and computing temperature
+
+
+
+
+
diff --git a/doc/Section_howto.txt b/doc/Section_howto.txt
index b8694ec367..8744e2876d 100644
--- a/doc/Section_howto.txt
+++ b/doc/Section_howto.txt
@@ -25,7 +25,8 @@ certain kinds of LAMMPS simulations.
4.12 "Non-orthogonal simulation boxes"_#4_12
4.13 "NEMD simulations"_#4_13
4.14 "Aspherical particles"_#4_14
-4.15 "Output from LAMMPS"_#4_15 :all(b)
+4.15 "Output from LAMMPS"_#4_15
+4.16 "Thermostatting, barostatting and computing temperature"_#4_16 :all(b)
The example input scripts included in the LAMMPS distribution and
highlighted in "this section"_Section_example.html also show how to
@@ -1005,6 +1006,84 @@ variable atom: thermo keywords, atom value vx\[123\], atom vector vx\[\], global
print: any variable: N/A: screen, log: between runs
run every: any variable: nevery: screen, log: nevery :tb(s=:)
+:line
+
+4.16 Thermostatting, barostatting, and computing temperature :link(4_16),h4
+
+ add a HowTo on time integration options and/or thermostat/temperature options
+ 4 thermostats
+ which do integration, which need fix nve or fix nph
+ all can be used with press/berendsen
+ only NVT thermostats rotational degrees of freedom directly
+ what bias is, how to remove it
+ howto remove bias for temp/sphere and temp/asphere
+ which biases can be doubled up via compute_modify bias command
+
+Enhanced the computes that calculate temperature, thermostatting
+fixes, and time integrators that use temperature control to be more
+flexible and consistent. This is for point particles, extended
+spherical particles, and "aspherical
+particles"_doc/Section_howto.html#4_14. Also Added new "compute
+ke"_doc/compute_ke.html and "compute
+erotate/asphere"_doc/compute_erotate_asphere.html commands.
+
+These "compute commands"_doc/compute.html calculate temperature. All
+but the first 3 calculate velocity biases that are removed when
+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
+"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,
+Langevin, and direct rescaling. Nose/Hoover works on rotational
+degrees-of-freedom for spherical and aspherical particles; the others
+only work on translational degrees of freedom. Any of these methods
+can use temperature computes that remove bias for the purpose of
+computing the current temperature and performing thermostatting only
+on the remaining thermal velocity. For "non-equilibrium MD
+simulations"_doc/Section_howto.html#4_13., there is also a SLLOD fix
+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
+"fix nvt/sphere"_doc/fix_nvt_sphere.html
+"fix nvt/asphere"_doc/fix_nvt_asphere.html
+"fix nvt/sllod"_doc/fix_nvt_sllod.html
+"fix temp/berendsen"_doc/fix_temp_berendsen.html
+"fix langevin"_doc/fix_langevin.html
+"fix temp/rescale"_doc/fix_temp_rescale.html :ul
+
+Note that only the nvt fixes perform time integration. The others
+should be used with an NVE integration fix such as these:
+
+"fix nve"_doc/fix_nve.html
+"fix nve/sphere"_doc/fix_nve_sphere.html
+"fix nve/asphere"_doc_fix_nve_asphere.html :ul
+
+Two barosttating methods are available: Nose-Hoover and Berendsen.
+The fix npt commands include Nose-Hoover thermostatting. Fix nph and
+fix press/bernendsen can be used in conjunction with any of the 4
+thermostatting methods. These are the relevant "fix
+commands"_doc/fix.html:
+
+"fix npt"_doc/fix_npt.html
+"fix npt/sphere"_doc/fix_npt_sphere.html
+"fix npt/asphere"_doc/fix_npt_asphere.html
+"fix nph"_doc/fix_nph.html
+"fix press/berendsen"_doc/fix_press_berendsen.html :ul
+
+
+
:line
:line
diff --git a/doc/compute_temp.html b/doc/compute_temp.html
index 7d68165bd2..9275822752 100644
--- a/doc/compute_temp.html
+++ b/doc/compute_temp.html
@@ -58,6 +58,10 @@ LAMMPS starts up, as if this command were in the input script:
See this howto section of the manual for a +discussion of different ways to compute temperature and perform +thermostatting and barostatting. +
The pressure can be controlled in one of several styles, as specified diff --git a/doc/fix_nph.txt b/doc/fix_nph.txt index 0cc8e5e671..8335b39865 100644 --- a/doc/fix_nph.txt +++ b/doc/fix_nph.txt @@ -72,6 +72,10 @@ nvt"_fix_nvt.html on atoms to which this fix is applied. Use "fix npt"_fix_npt.html instead of this fix, if you want to control both temperature and pressure via Nose/Hoover. +See "this howto section"_Section_howto.html#4_16 of the manual for a +discussion of different ways to compute temperature and perform +thermostatting and barostatting. + :line The pressure can be controlled in one of several styles, as specified diff --git a/doc/fix_npt.html b/doc/fix_npt.html index d6ba128413..a1e03fa370 100644 --- a/doc/fix_npt.html +++ b/doc/fix_npt.html @@ -92,6 +92,10 @@ normally be used on atoms that also have their temperature controlled by another fix - e.g. by fix langevin or fix temp/rescale commands.
+See this howto section of the manual for a +discussion of different ways to compute temperature and perform +thermostatting and barostatting. +
The pressure can be controlled in one of several styles, as specified diff --git a/doc/fix_npt.txt b/doc/fix_npt.txt index c845e2b5de..37b142e37c 100644 --- a/doc/fix_npt.txt +++ b/doc/fix_npt.txt @@ -81,6 +81,10 @@ normally be used on atoms that also have their temperature controlled by another fix - e.g. by "fix langevin"_fix_nvt.html or "fix temp/rescale"_fix_temp_rescale.html commands. +See "this howto section"_Section_howto.html#4_16 of the manual for a +discussion of different ways to compute temperature and perform +thermostatting and barostatting. + :line The pressure can be controlled in one of several styles, as specified diff --git a/doc/fix_nvt.html b/doc/fix_nvt.html index 55a08a000a..29730e764c 100644 --- a/doc/fix_nvt.html +++ b/doc/fix_nvt.html @@ -75,6 +75,10 @@ temperature controlled by another fix - e.g. by fix langevin or fix temp/rescale commands.
+See this howto section of the manual for a +discussion of different ways to compute temperature and perform +thermostatting. +
This fix computes a temperature each timestep. To do this, the fix creates its own compute of style "temp", as if this command had been issued: diff --git a/doc/fix_nvt.txt b/doc/fix_nvt.txt index 8afd202297..75692605dc 100644 --- a/doc/fix_nvt.txt +++ b/doc/fix_nvt.txt @@ -66,6 +66,10 @@ temperature controlled by another fix - e.g. by "fix langevin"_fix_nvt.html or "fix temp/rescale"_fix_temp_rescale.html commands. +See "this howto section"_Section_howto.html#4_16 of the manual for a +discussion of different ways to compute temperature and perform +thermostatting. + This fix computes a temperature each timestep. To do this, the fix creates its own compute of style "temp", as if this command had been issued: diff --git a/doc/fix_press_berendsen.html b/doc/fix_press_berendsen.html index f482c42231..182429b80b 100644 --- a/doc/fix_press_berendsen.html +++ b/doc/fix_press_berendsen.html @@ -73,6 +73,10 @@ conjunction with thermostatting fixes to control the temperature, such as fix nvt or fix langevin or fix temp/berendsen.
+See this howto section of the manual for a +discussion of different ways to compute temperature and perform +thermostatting and barostatting. +
The pressure can be controlled in one of several styles, as specified diff --git a/doc/fix_press_berendsen.txt b/doc/fix_press_berendsen.txt index 1812b8ada9..9a1fcb72a5 100644 --- a/doc/fix_press_berendsen.txt +++ b/doc/fix_press_berendsen.txt @@ -64,6 +64,10 @@ conjunction with thermostatting fixes to control the temperature, such as "fix nvt"_fix_nvt.html or "fix langevin"_fix_langevin.html or "fix temp/berendsen"_fix_temp_berendsen,html. +See "this howto section"_Section_howto.html#4_16 of the manual for a +discussion of different ways to compute temperature and perform +thermostatting and barostatting. + :line The pressure can be controlled in one of several styles, as specified diff --git a/doc/fix_temp_berendsen.html b/doc/fix_temp_berendsen.html index ad595c430e..878190cd7b 100644 --- a/doc/fix_temp_berendsen.html +++ b/doc/fix_temp_berendsen.html @@ -54,6 +54,10 @@ normally be used on atoms that also have their temperature controlled by another fix - e.g. by fix nvt or fix langevin commands.
+See this howto section of the manual for a +discussion of different ways to compute temperature and perform +thermostatting. +
This fix computes a temperature each timestep. To do this, the fix creates its own compute of style "temp", as if this command had been issued: diff --git a/doc/fix_temp_berendsen.txt b/doc/fix_temp_berendsen.txt index b2aad9f1f7..30dd827a44 100644 --- a/doc/fix_temp_berendsen.txt +++ b/doc/fix_temp_berendsen.txt @@ -51,6 +51,10 @@ normally be used on atoms that also have their temperature controlled by another fix - e.g. by "fix nvt"_fix_nvt.html or "fix langevin"_fix_langevin.html commands. +See "this howto section"_Section_howto.html#4_16 of the manual for a +discussion of different ways to compute temperature and perform +thermostatting. + This fix computes a temperature each timestep. To do this, the fix creates its own compute of style "temp", as if this command had been issued: diff --git a/doc/fix_temp_rescale.html b/doc/fix_temp_rescale.html index 85aa969914..1b2a61c987 100644 --- a/doc/fix_temp_rescale.html +++ b/doc/fix_temp_rescale.html @@ -61,6 +61,10 @@ normally be used on atoms that also have their temperature controlled by another fix - e.g. by fix nvt or fix langevin commands.
+See this howto section of the manual for a +discussion of different ways to compute temperature and perform +thermostatting. +
This fix computes a temperature each timestep. To do this, the fix creates its own compute of style "temp", as if one of this command had been issued: diff --git a/doc/fix_temp_rescale.txt b/doc/fix_temp_rescale.txt index f7e2560374..d345c2e7af 100644 --- a/doc/fix_temp_rescale.txt +++ b/doc/fix_temp_rescale.txt @@ -58,6 +58,10 @@ normally be used on atoms that also have their temperature controlled by another fix - e.g. by "fix nvt"_fix_nvt.html or "fix langevin"_fix_langevin.html commands. +See "this howto section"_Section_howto.html#4_16 of the manual for a +discussion of different ways to compute temperature and perform +thermostatting. + This fix computes a temperature each timestep. To do this, the fix creates its own compute of style "temp", as if one of this command had been issued: