forked from lijiext/lammps
126 lines
5.3 KiB
HTML
126 lines
5.3 KiB
HTML
<HTML>
|
|
<CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A>
|
|
</CENTER>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<HR>
|
|
|
|
<H3>minimize command
|
|
</H3>
|
|
<P><B>Syntax:</B>
|
|
</P>
|
|
<PRE>minimize tolerance maxiter maxeval
|
|
</PRE>
|
|
<UL><LI>tolerance = stopping tolerance
|
|
<LI>maxiter = max iterations of minimizer
|
|
<LI>maxeval = max number of total force/energy evaluations
|
|
</UL>
|
|
<P><B>Examples:</B>
|
|
</P>
|
|
<PRE>minimize 1.0e-4 100 1000
|
|
</PRE>
|
|
<P><B>Description:</B>
|
|
</P>
|
|
<P>Perform an energy minimization of the system, by adjusting each atom's
|
|
atomic coordinates. The algorithm used is set by the
|
|
<A HREF = "min_style.html">min_style</A> command. Minimize commands can be
|
|
interspersed with <A HREF = "run.html">run</A> commands to alternate between
|
|
relaxation and dynamics. The minimizers are implemented in a robust
|
|
fashion that should allow for systems with highly overlapped atoms
|
|
(large energies and forces) to still be minimized by pushing the atoms
|
|
off of each other.
|
|
</P>
|
|
<P>Alternate means of relaxing a system are to run dynamics with a small
|
|
or <A HREF = "fix_nve_limit.html">limited timestep</A>. Or dynamics can be run
|
|
using <A HREF = "fix_viscous.html">fix viscous</A> to impose a damping force that
|
|
slowly drains all kinetic energy from the system. The <A HREF = "pair_soft.html">pair_style
|
|
soft</A> potential can be used to un-overlap atoms while
|
|
running dynamics.
|
|
</P>
|
|
<P>Following the minimization a statistical summary is printed that
|
|
includes the energy change and convergence criteria information.
|
|
</P>
|
|
<P>A minimization involves an outer iteration loop which sets the search
|
|
direction along which coordinates are changed. An inner iteration is
|
|
then performed using a line search algorithm. The line search
|
|
typically evaluates forces and energies several times to set new
|
|
coordinates. The minimization stops if any of several criteria are
|
|
met:
|
|
</P>
|
|
<UL><LI>the change in energy between outer iterations is less than the tolerance
|
|
<LI>the number of outer iterations exceeds maxiter
|
|
<LI>the number of force evaluations exceeds maxeval
|
|
<LI>the 3N dimensional force vector goes (nearly) to zero
|
|
</UL>
|
|
<P>For the first criterion, the specified tolerance is unitless; it is
|
|
met when the ratio of the energy delta to the energy magnitude is
|
|
equal to the tolerance (e.g. one part in 10^4 in the example above).
|
|
</P>
|
|
<P>During a minimization, the outer iteration count is treated as a
|
|
timestep. Output is triggered by this timestep, e.g. thermodynamic
|
|
output or dump and restart files.
|
|
</P>
|
|
<P>For optimal convergence, a <A HREF = "pair_style.html">pair style</A> that goes
|
|
smoothly to 0.0 at the cutoff distance for both energy and force
|
|
should typically be used though this is not required. Examples
|
|
include <I>pair/lj/charmm/coul/charmm</I> and <I>pair/lj/charmm/coul/long</I>.
|
|
If a <I>soft</I> potential is used the Astop value is used for the
|
|
prefactor (no time dependence).
|
|
</P>
|
|
<P>Only some fixes (typically those that apply force constraints) are
|
|
invoked during minimization. See the doc pages for individual
|
|
<A HREF = "fix.html">fix</A> commands to see which ones are relevant.
|
|
</P>
|
|
<P>IMPORTANT NOTE: Some fixes which are invoked during minimization have
|
|
an associated potential energy. For that energy to be included in the
|
|
total potential energy of the system (the quantity being minimized),
|
|
you MUST enable the <A HREF = "fix_modify.html">fix_modify</A> <I>energy</I> option for
|
|
that fix. The doc pages for individual <A HREF = "fix.html">fix</A> commands
|
|
specify if this should be done.
|
|
</P>
|
|
<P><B>Restrictions:</B>
|
|
</P>
|
|
<P>Features that are not yet implemented are listed here, in case someone
|
|
knows how they could be coded:
|
|
</P>
|
|
<P>It is an error to use <A HREF = "fix_shake.html">fix shake</A> with minimization
|
|
because it turns off bonds that should be included in the potential
|
|
energy of the system. The effect of a fix shake can be approximated
|
|
during a minimization by using stiff spring constants for the bonds
|
|
and/or angles that would normally be constrained by the SHAKE
|
|
algorithm.
|
|
</P>
|
|
<P><A HREF = "fix_rigid.html">Fix rigid</A> is also not supported by minimization. It
|
|
is not an error to have it defined, but the energy minimization will
|
|
not keep the defined body(s) rigid during the minimization. Note that
|
|
if bonds, angles, etc internal to a rigid body have been turned off
|
|
(e.g. via <A HREF = "neigh_modify.html">neigh_modify exclude</A>), they will not
|
|
contribute to the potential energy which is probably not what is
|
|
desired.
|
|
</P>
|
|
<P>The volume of the simulation domain is not allowed to change during a
|
|
minimization. Ideally we would allow a fix such as <I>npt</I> to impose an
|
|
external pressure that would be included in the minimization
|
|
(i.e. allow the box dimensions to change), but this has not yet been
|
|
implemented.
|
|
</P>
|
|
<P>Pair potentials that produce torque on a particle (e.g. <A HREF = "pair_gran.html">granular
|
|
potentials</A> or the <A HREF = "pair_gayberne.html">GayBerne
|
|
potential</A> for ellipsoidal particles) are not
|
|
relaxed by a minimization. More specifically, radial relaxations are
|
|
induced, but no rotations are induced by a minimization, so such a
|
|
system will not fully relax.
|
|
</P>
|
|
<P><B>Related commands:</B>
|
|
</P>
|
|
<P><A HREF = "min_modify.html">min_modify</A>, <A HREF = "min_style.html">min_style</A>,
|
|
<A HREF = "run_style.html">run_style</A>
|
|
</P>
|
|
<P><B>Default:</B> none
|
|
</P>
|
|
</HTML>
|