LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands

fix dt/reset command

Syntax:

fix ID group-ID dt/reset N Tmin Tmax Xmax keyword values ... 
  units value = lattice or box
    lattice = Xmax is defined in lattice units
    box = Xmax is defined in simulation box units 

Examples:

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 

Description:

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.

When the run style is respa, this fix resets the outer loop (largest) timestep, which is the same timestep that the timestep command sets.

Restart, fix_modify, output, run start/stop, minimize info:

No information about this fix is written to binary restart files. None of the fix_modify options are relevant to this fix.

The current timestep size is stored as a scalar quantity by this fix. The cumulative simulation time (in time units) is stored as the first element of a vector. Both these quantities can be accessed by various output commands. The scalar and vector values calculated by this fix are "intensive".

No parameter of this fix can be used with the start/stop keywords of the run command. This fix is not invoked during energy minimization.

Restrictions:

The cumulative time is zeroed when the fix is created and continuously accrues thereafter. Using the reset_timestep command while this fix is defined will mess up the time accumulation.

Related commands:

timestep

Default:

The option defaults is units = lattice.