forked from lijiext/lammps
125 lines
3.9 KiB
Plaintext
125 lines
3.9 KiB
Plaintext
.. index:: fix nve/manifold/rattle
|
|
|
|
fix nve/manifold/rattle command
|
|
===============================
|
|
|
|
Syntax
|
|
""""""
|
|
|
|
.. parsed-literal::
|
|
|
|
fix ID group-ID nve/manifold/rattle tol maxit manifold manifold-args keyword value ...
|
|
|
|
* ID, group-ID are documented in :doc:`fix <fix>` command
|
|
* nve/manifold/rattle = style name of this fix command
|
|
* tol = tolerance to which Newton iteration must converge
|
|
* maxit = maximum number of iterations to perform
|
|
* manifold = name of the manifold
|
|
* manifold-args = parameters for the manifold
|
|
* one or more keyword/value pairs may be appended
|
|
.. parsed-literal::
|
|
|
|
keyword = *every*
|
|
*every* values = N
|
|
N = print info about iteration every N steps. N = 0 means no output
|
|
|
|
|
|
|
|
Examples
|
|
""""""""
|
|
|
|
.. parsed-literal::
|
|
|
|
fix 1 all nve/manifold/rattle 1e-4 10 sphere 5.0
|
|
fix step all nve/manifold/rattle 1e-8 100 ellipsoid 2.5 2.5 5.0 every 25
|
|
|
|
Description
|
|
"""""""""""
|
|
|
|
Perform constant NVE integration to update position and velocity for
|
|
atoms constrained to a curved surface (manifold) in the group each timestep. The constraint
|
|
is handled by RATTLE :ref:`(Andersen) <Andersen>` written out for the special case of
|
|
single-particle constraints as explained in :ref:`(Paquay) <Paquay>`.
|
|
V is volume; E is energy. This way, the dynamics of particles constrained to
|
|
curved surfaces can be studied. If combined with :doc:`fix langevin <fix_langevin>`, this generates
|
|
Brownian motion of particles constrained to a curved surface. For a list of currently supported
|
|
manifolds and their parameters, see :doc:`manifolds <manifolds>`.
|
|
|
|
Note that the particles must initially be close to the manifold in question. If not, RATTLE will
|
|
not be able to iterate until the constraint is satisfied, and an error is generated. For simple
|
|
manifolds this can be achieved with *region* and *create_atoms* commands, but for more complex
|
|
surfaces it might be more useful to write a script.
|
|
|
|
The manifold args may be equal-style variables, like so:
|
|
|
|
.. parsed-literal::
|
|
|
|
variable R equal "ramp(5.0,3.0)"
|
|
fix shrink_sphere all nve/manifold/rattle 1e-4 10 sphere v_R
|
|
|
|
In this case, the manifold parameter will change in time according to the variable.
|
|
This is not a problem for the time integrator as long as the change of the manifold is slow with respect to the dynamics of the particles.
|
|
Note that if the manifold has to exert work on the particles because of these changes, the total energy might not be conserved.
|
|
|
|
|
|
----------
|
|
|
|
|
|
Restart, fix_modify, output, run start/stop, minimize info
|
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
No information about this fix is written to :doc:`binary restart files <restart>`. None of the :doc:`fix_modify <fix_modify>` options
|
|
are relevant to this fix. No global or per-atom quantities are stored
|
|
by this fix for access by various :ref:`output commands <howto_15>`. No parameter of this fix can
|
|
be used with the *start/stop* keywords of the :doc:`run <run>` command.
|
|
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
|
|
|
|
|
----------
|
|
|
|
|
|
Restrictions
|
|
""""""""""""
|
|
|
|
|
|
This fix is part of the USER-MANIFOLD package. It is only enabled if LAMMPS
|
|
was built with that package. See the :ref:`Making LAMMPS <start_3>`
|
|
section for more info.
|
|
|
|
Only use this with *min_style hftn* or *min_style quickmin*\ . If not, the constraints
|
|
will not be satisfied very well at all. A warning is generated if the *min_style* is
|
|
incompatible but no error.
|
|
|
|
|
|
----------
|
|
|
|
|
|
Related commands
|
|
""""""""""""""""
|
|
|
|
:doc:`fix nvt/manifold/rattle <fix_nvt_manifold_rattle>`, :doc:`fix manifoldforce <fix_manifoldforce>`
|
|
|
|
**Default:** every = 0, tchain = 3
|
|
|
|
|
|
----------
|
|
|
|
|
|
.. _Andersen:
|
|
|
|
|
|
|
|
**(Andersen)** Andersen, J. Comp. Phys. 52, 24, (1983).
|
|
|
|
.. _Paquay:
|
|
|
|
|
|
|
|
**(Paquay)** Paquay and Kusters, Biophys. J., 110, ???, (2016), to be published,
|
|
preprint available at `arXiv:1411.3019 <http://arxiv.org/abs/1411.3019/>`_.
|
|
|
|
|
|
.. _lws: http://lammps.sandia.gov
|
|
.. _ld: Manual.html
|
|
.. _lc: Section_commands.html#comm
|