lammps/doc/fix_temp_rescale.txt

99 lines
3.9 KiB
Plaintext

"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
fix temp/rescale command :h3
[Syntax:]
fix ID group-ID temp/rescale N Tstart Tstop window fraction keyword values ... :pre
ID, group-ID are documented in "fix"_fix.html command :ulb,l
temp/rescale = style name of this fix command :l
N = perform rescaling every N steps :l
Tstart,Tstop = desired temperature at start/end of run (temperature units) :l
window = only rescale if temperature is outside this window (temperature units) :l
fraction = rescale to target temperature by this fraction :l
zero or more keyword/value pairs may be appended to the args :l
keyword = {region}
{region} values = region-ID
region-ID = ID of region to apply rescaling to :pre
:ule
[Examples:]
fix 3 flow temp/rescale 100 1.0 1.1 0.02 0.5
fix 3 boundary temp/rescale 1 1.0 1.5 0.05 1.0 region edge :pre
[Description:]
Reset the temperature of a group of atoms by explicitly rescaling
their velocities.
Rescaling is performed every N timesteps. The target temperature is a
ramped value between the {Tstart} and {Tstop} temperatures at the
beginning and end of the run. The "run"_run.html command documents
how to make the ramping take place across multiple runs.
Rescaling is only performed if the difference between the current and
desired temperatures is greater than the {window} value. The amount
of rescaling that is applied is a {fraction} (from 0.0 to 1.0) of the
difference between the actual and desired temperature. E.g. if
{fraction} = 1.0, the temperature is reset to exactly the desired
value.
The keyword {region} applies the fix only to atoms that are in the
specified geometric region (and in the fix group). Since atoms can
enter/leave a region, this test is performed each timestep.
This fix computes a temperature each timestep. The fix creates its
own method for computing T, as if it had been defined by one of these
commands:
temperature fix-ID group-ID full
temperature fix-ID group-ID region region-ID :pre
Which is used depends on whether a region was specified with the fix.
See the "temperature"_temperature.html command for details. Note that
this is NOT the temperature with ID = {default}. This means you can
change the attributes of this fix's temperature (e.g. its
degrees-of-freedom) via the "temp_modify"_temp_modify.html command or
print the temperature with thermodyanmic output via the "thermo_style
custom"_thermo_style.html command using the appropriate temp-ID =
fix-ID. It also means that changing attributes of the default
temperature will have no effect on this fix. Alternatively, you can
directly assign a new temperature to the fix via the
"fix_modify"_fix_modify.html command. For consistency, if using the
keyword {region}, the temperature you assign should also be of style
{region}.
A temp/rescale fix does not update the coordinates of its atoms. It
is normally used with a fix of style {nve} that does that. A
temp/rescale fix should not normally be used on atoms that also have
their temperature controlled by another fix - e.g. a
"nvt"_fix_nvt.html or "langevin"_fix_langevin.html fix.
This fix supports the "fix_modify"_fix_modify.html options for
{thermo} and {energy}. The former will print the contribution the fix
makes to the energy of the system when thermodynamics is printed. The
latter will add this contribution to the total potential energy
(PotEng) so that energy conservation can be monitored. Note that the
energy value printed by thermo is not cummulative energy, but energy
added in the most recent rescaling. Also note that because this fix
is invoked every N steps and thermo may be printed every M steps, that
unless M is a multiple of N, the energy info printed by thermo will
not be for the current timestep.
[Restrictions:] none
[Related commands:]
"fix langevin"_fix_langevin.html, "fix nvt"_fix_nvt.html,
"fix_modify"_fix_modify.html
[Default:] none