Commit 7c01ef57 authored by Steve Plimpton's avatar Steve Plimpton
Browse files

sync with SVN

parent 0316bb57
Loading
Loading
Loading
Loading
+24 −21
Original line number Diff line number Diff line
@@ -156,25 +156,32 @@ keyword = <em>every</em>
<div class="section" id="description">
<h2>Description</h2>
<p>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 <a class="reference internal" href="fix_shake.html#andersen"><span class="std std-ref">(Andersen)</span></a> written out for the special case of
single-particle constraints as explained in <a class="reference internal" href="fix_nvt_manifold_rattle.html#paquay"><span class="std std-ref">(Paquay)</span></a>.
V is volume; E is energy. This way, the dynamics of particles constrained to
curved surfaces can be studied. If combined with <a class="reference internal" href="fix_langevin.html"><span class="doc">fix langevin</span></a>, this generates
Brownian motion of particles constrained to a curved surface. For a list of currently supported
manifolds and their parameters, see <a class="reference internal" href="manifolds.html"><span class="doc">manifolds</span></a>.</p>
<p>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 <em>region</em> and <em>create_atoms</em> commands, but for more complex
surfaces it might be more useful to write a script.</p>
atoms constrained to a curved surface (manifold) in the group each
timestep. The constraint is handled by RATTLE <a class="reference internal" href="fix_shake.html#andersen"><span class="std std-ref">(Andersen)</span></a>
written out for the special case of single-particle constraints as
explained in <a class="reference internal" href="fix_nvt_manifold_rattle.html#paquay"><span class="std std-ref">(Paquay)</span></a>.  V is volume; E is energy. This way,
the dynamics of particles constrained to curved surfaces can be
studied. If combined with <a class="reference internal" href="fix_langevin.html"><span class="doc">fix langevin</span></a>, this
generates Brownian motion of particles constrained to a curved
surface. For a list of currently supported manifolds and their
parameters, see <a class="reference internal" href="manifolds.html"><span class="doc">manifolds</span></a>.</p>
<p>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 <em>region</em> and <em>create_atoms</em>
commands, but for more complex surfaces it might be more useful to
write a script.</p>
<p>The manifold args may be equal-style variables, like so:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">R</span> <span class="n">equal</span> <span class="s2">&quot;ramp(5.0,3.0)&quot;</span>
<span class="n">fix</span> <span class="n">shrink_sphere</span> <span class="nb">all</span> <span class="n">nve</span><span class="o">/</span><span class="n">manifold</span><span class="o">/</span><span class="n">rattle</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">4</span> <span class="mi">10</span> <span class="n">sphere</span> <span class="n">v_R</span>
</pre></div>
</div>
<p>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.</p>
<p>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.</p>
</div>
<hr class="docutils" />
<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info">
@@ -188,12 +195,8 @@ This fix is not invoked during <a class="reference internal" href="minimize.html
<hr class="docutils" />
<div class="section" id="restrictions">
<h2>Restrictions</h2>
<p>This fix is part of the USER-MANIFOLD package. It is only enabled if LAMMPS
was built with that package. See the <a class="reference internal" href="Section_start.html#start-3"><span class="std std-ref">Making LAMMPS</span></a>
section for more info.</p>
<p>Only use this with <em>min_style hftn</em> or <em>min_style quickmin</em>. If not, the constraints
will not be satisfied very well at all. A warning is generated if the <em>min_style</em> is
incompatible but no error.</p>
<p>This fix is part of the USER-MANIFOLD package. It is only enabled if
LAMMPS was built with that package. See the <a class="reference internal" href="Section_start.html#start-3"><span class="std std-ref">Making LAMMPS</span></a> section for more info.</p>
</div>
<hr class="docutils" />
<div class="section" id="related-commands">
@@ -202,7 +205,7 @@ incompatible but no error.</p>
<p><strong>Default:</strong> every = 0, tchain = 3</p>
<hr class="docutils" />
<p id="andersen"><strong>(Andersen)</strong> Andersen, J. Comp. Phys. 52, 24, (1983).</p>
<p id="paquay"><strong>(Paquay)</strong> Paquay and Kusters, Biophys. J., 110, ???, (2016), to be published,
<p id="paquay"><strong>(Paquay)</strong> Paquay and Kusters, Biophys. J., 110, 6, (2016).
preprint available at <a class="reference external" href="http://arxiv.org/abs/1411.3019/">arXiv:1411.3019</a>.</p>
</div>
</div>
+1 −4
Original line number Diff line number Diff line
@@ -176,9 +176,6 @@ This fix is not invoked during <a class="reference internal" href="minimize.html
<p>This fix is part of the USER-MANIFOLD package. It is only enabled if LAMMPS
was built with that package. See the <a class="reference internal" href="Section_start.html#start-3"><span class="std std-ref">Making LAMMPS</span></a>
section for more info.</p>
<p>Only use this with <em>min_style hftn</em> or <em>min_style quickmin</em>. If not, the constraints
will not be satisfied very well at all. A warning is generated if the <em>min_style</em> is
incompatible but no error.</p>
</div>
<hr class="docutils" />
<div class="section" id="related-commands">
@@ -187,7 +184,7 @@ incompatible but no error.</p>
<strong>Default:</strong> every = 0</p>
<hr class="docutils" />
<p id="andersen"><strong>(Andersen)</strong> Andersen, J. Comp. Phys. 52, 24, (1983).</p>
<p id="paquay"><strong>(Paquay)</strong> Paquay and Kusters, Biophys. J., 110, ???, (2016), to be published,
<p id="paquay"><strong>(Paquay)</strong> Paquay and Kusters, Biophys. J., 110, 6, (2016).
preprint available at <a class="reference external" href="http://arxiv.org/abs/1411.3019/">arXiv:1411.3019</a>.</p>
</div>
</div>
+1 −1

File changed.

Preview size limit exceeded, changes collapsed.

+27 −21
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@ one or more keyword/value pairs may be appended :l
keyword = {every}
  {every} values = N
    N = print info about iteration every N steps. N = 0 means no output :pre

:ule

[Examples:]
@@ -33,28 +32,34 @@ fix step all nve/manifold/rattle 1e-8 100 ellipsoid 2.5 2.5 5.0 every 25 :pre
[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 "(Andersen)"_#Andersen written out for the special case of
single-particle constraints as explained in "(Paquay)"_#Paquay.
V is volume; E is energy. This way, the dynamics of particles constrained to
curved surfaces can be studied. If combined with "fix langevin"_fix_langevin.html, this generates
Brownian motion of particles constrained to a curved surface. For a list of currently supported
manifolds and their parameters, see "manifolds"_manifolds.html.

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.
atoms constrained to a curved surface (manifold) in the group each
timestep. The constraint is handled by RATTLE "(Andersen)"_#Andersen
written out for the special case of single-particle constraints as
explained in "(Paquay)"_#Paquay.  V is volume; E is energy. This way,
the dynamics of particles constrained to curved surfaces can be
studied. If combined with "fix langevin"_fix_langevin.html, this
generates Brownian motion of particles constrained to a curved
surface. For a list of currently supported manifolds and their
parameters, see "manifolds"_manifolds.html.

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:

variable R equal "ramp(5.0,3.0)"
fix shrink_sphere all nve/manifold/rattle 1e-4 10 sphere v_R :pre

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.

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.

:line

@@ -72,15 +77,16 @@ This fix is not invoked during "energy minimization"_minimize.html.

[Restrictions:]

This fix is part of the USER-MANIFOLD package. It is only enabled if LAMMPS
was built with that package. See the "Making LAMMPS"_Section_start.html#start_3
section for more info.
This fix is part of the USER-MANIFOLD package. It is only enabled if
LAMMPS was built with that package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.

:line

[Related commands:]

"fix nvt/manifold/rattle"_fix_nvt_manifold_rattle.html, "fix manifoldforce"_fix_manifoldforce.html
"fix nvt/manifold/rattle"_fix_nvt_manifold_rattle.html, "fix
manifoldforce"_fix_manifoldforce.html

[Default:] every = 0, tchain = 3

+1 −1
Original line number Diff line number Diff line
@@ -86,7 +86,7 @@ void ComputeOmegaChunk::init()

void ComputeOmegaChunk::compute_array()
{
  int i,j,index;
  int i,j,m,index;
  double dx,dy,dz,massone;
  double unwrap[3];