fix dt/reset command
fix ID group-ID dt/reset N Tmin Tmax Xmax keyword values ...
- ID, group-ID are documented in fix command
- dt/reset = style name of this fix command
- N = recompute dt every N timesteps
- Tmin = minimum dt allowed which can be NULL (time units)
- Tmax = maximum dt allowed which can be NULL (time units)
- Xmax = maximum distance for an atom to move in one timestep (distance units)
- zero or more keyword/value pairs may be appended
- keyword = units
units value = lattice or box lattice = Xmax is defined in lattice units box = Xmax is defined in simulation box units
fix 5 all dt/reset 10 1.0e-5 0.01 0.1 fix 5 all dt/reset 10 0.01 2.0 0.2 units box
Reset the timestep size every N steps during a run, so that no atom moves further than Xmax, based on current atom velocities and forces. This can be useful when starting from a configuration with overlapping atoms, where forces will be large. Or it can be useful when running an impact simulation where one or more high-energy atoms collide with a solid, causing a damage cascade.
This fix overrides the timestep size setting made by the timestep command. The new timestep size dt is computed in the following manner.
For each atom, the timestep is computed that would cause it to displace Xmax on the next integration step, as a function of its current velocity and force. Since performing this calculation exactly would require the solution to a quartic equation, a cheaper estimate is generated. The estimate is conservative in that the atom’s displacement is guaranteed not to exceed Xmax, though it may be smaller.
Given this putative timestep for each atom, the minimum timestep value across all atoms is computed. Then the Tmin and Tmax bounds are applied, if specified. If one (or both) is specified as NULL, it is not applied.
Note that the cumulative simulation time (in time units), which accounts for changes in the timestep size as a simulation proceeds, can be accessed by the thermo_style time keyword.
Restart, fix_modify, output, run start/stop, minimize info:
This fix computes a global scalar which can be accessed by various output commands. The scalar stores the last timestep on which the timestep was reset to a new value.
The scalar value calculated by this fix is “intensive”.
The option defaults is units = lattice.