forked from lijiext/lammps
87 lines
3.4 KiB
Plaintext
87 lines
3.4 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 nve/limit command :h3
|
|
|
|
[Syntax:]
|
|
|
|
fix ID group-ID nve/limit xmax :pre
|
|
|
|
ID, group-ID are documented in "fix"_fix.html command
|
|
nve = style name of this fix command
|
|
xmax = maximum distance an atom can move in one timestep (distance units) :ul
|
|
|
|
[Examples:]
|
|
|
|
fix 1 all nve/limit 0.1 :pre
|
|
|
|
[Description:]
|
|
|
|
Perform constant NVE updates of position and velocity for atoms in the
|
|
group each timestep. A limit is imposed on the maximum distance an
|
|
atom can move in one timestep. This is useful when starting a
|
|
simulation with a configuration containing highly overlapped atoms.
|
|
Normally this would generate huge forces which would blow atoms out of
|
|
the simulation box, causing LAMMPS to stop with an error.
|
|
|
|
Using this fix can overcome that problem. Forces on atoms must still
|
|
be computable (which typically means 2 atoms must have a separation
|
|
distance > 0.0). But large velocities generated by large forces are
|
|
reset to a value that corresponds to a displacement of length {xmax}
|
|
in a single timestep. {Xmax} is specified in distance units; see the
|
|
"units"_units.html command for details. The value of {xmax} should be
|
|
consistent with the neighbor skin distance and the frequency of
|
|
neighbor list re-building, so that pairwise interactions are not
|
|
missed on successive timesteps as atoms move. See the
|
|
"neighbor"_neighbor.html and "neigh_modify"_neigh_modify.html commands
|
|
for details.
|
|
|
|
Note that if a velocity reset occurs the integrator will not conserve
|
|
energy. On steps where no velocity resets occur, this integrator is
|
|
exactly like the "fix nve"_fix_nve.html command. Since forces are
|
|
unaltered, pressures computed by thermodynamic output will still be
|
|
very large for overlapped configurations.
|
|
|
|
IMPORTANT NOTE: You should not use "fix shake"_fix_shake.html in
|
|
conjunction with this fix. That is because fix shake applies
|
|
contraint forces based on the predicted postitions of atoms after the
|
|
next timestep. It has no way of knowing the timestep may change due
|
|
to this fix, which will cause the constraint forces to be invalid. A
|
|
better strategy is to turn off fix shake when performing initial
|
|
dynamics that need this fix, then turn fix shake on when doing normal
|
|
dynamics with a fixed-size timestep.
|
|
|
|
[Restart, fix_modify, output, run start/stop, minimize info:]
|
|
|
|
No information about this fix is written to "binary restart
|
|
files"_restart.html. None of the "fix_modify"_fix_modify.html options
|
|
are relevant to this fix.
|
|
|
|
This fix computes a global scalar which can be accessed by various
|
|
"output commands"_Section_howto.html#howto_15. The scalar is the
|
|
count of how many updates of atom's velocity/position were limited by
|
|
the maximum distance criterion. This should be roughly the number of
|
|
atoms so affected, except that updates occur at both the beginning and
|
|
end of a timestep in a velocity Verlet timestepping algorithm. This
|
|
is a cumulative quantity for the current run, but is re-initialized to
|
|
zero each time a run is performed. The scalar value calculated by
|
|
this fix is "extensive".
|
|
|
|
No parameter of this fix can be used with the {start/stop} keywords of
|
|
the "run"_run.html command. This fix is not invoked during "energy
|
|
minimization"_minimize.html.
|
|
|
|
[Restrictions:] none
|
|
|
|
[Related commands:]
|
|
|
|
"fix nve"_fix_nve.html, "fix nve/noforce"_fix_nve_noforce.html,
|
|
"pair_style soft"_pair_soft.html
|
|
|
|
[Default:] none
|