Commit 22961a92 authored by sjplimp's avatar sjplimp
Browse files

git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@14539 f3b2605a-c512-4ea7-a41b-209d697bcdaa
parent 0963784f
Loading
Loading
Loading
Loading
+85 −0
Original line number Diff line number Diff line
.. index:: compute dpd

compute dpd command
===================

Syntax
""""""

.. parsed-literal::

   compute ID group-ID dpd

* ID, group-ID are documented in :doc:`compute <compute>` command
* dpd = style name of this compute command

Examples
""""""""

.. parsed-literal::

   compute 1 all dpd

Description
"""""""""""

Define a computation that accumulates the total internal conductive
energy (U_cond), the total internal mechanical energy (U_mech), the
total internal energy (U) and the *harmonic* average of the internal
temperature (dpdTheta) for the entire system of particles.  See the
:doc:`compute dpd/atom <compute_dpd_atom>` command if you want
per-particle internal energies and internal temperatures.

The system internal properties are computed according to the following
relations:

.. image:: Eqs/compute_dpd.jpg
   :align: center

where N is the number of particles in the system


----------


**Output info:**

This compute calculates a global vector of length 5 (U_cond, U_mech,
U, dpdTheta, N_particles), which can be accessed by indices 1-5.  See
:ref:`this section <howto_15>` for an overview of LAMMPS
output options.

The vector values will be in energy and temperature :doc:`units <units>`.

Restrictions
""""""""""""


The compute *dpd* is only available if LAMMPS is built with the
USER-DPD package and requires the :doc:`atom_style dpd <atom_style>`.

Related commands
""""""""""""""""

:doc:`compute dpd/atom <compute_dpd_atom>`,
:doc:`thermo_style <thermo_style>`

**Default:** none


----------


.. _Larentzos:



**(Larentzos)** J.P. Larentzos, J.K. Brennan, J.D. Moore, and
W.D. Mattson, "LAMMPS Implementation of Constant Energy Dissipative
Particle Dynamics (DPD-E)", ARL-TR-6863, U.S. Army Research
Laboratory, Aberdeen Proving Ground, MD (2014).


.. _lws: http://lammps.sandia.gov
.. _ld: Manual.html
.. _lc: Section_commands.html#comm
+73 −0
Original line number Diff line number Diff line
.. index:: compute dpd/atom

compute dpd/atom command
========================

Syntax
""""""

.. parsed-literal::

   compute ID group-ID dpd/atom

* ID, group-ID are documented in :doc:`compute <compute>` command
* dpd/atom = style name of this compute command

Examples
""""""""

compute 1 all dpd/atom

Description
"""""""""""

Define a computation that accesses the per-particle internal
conductive energy (u_cond), internal mechanical energy (u_mech) and
internal temperatures (dpdTheta) for each particle in a group.  See
the :doc:`compute dpd <compute_dpd>` command if you want the total
internal conductive energy, the total internal mechanical energy, and
average internal temperature of the entire system or group of dpd
particles.

**Output info:**

This compute calculates a per-particle array with 3 columns (u_cond,
u_mech, dpdTheta), which can be accessed by indices 1-3 by any command
that uses per-particle values from a compute as input.  See
:ref:`Section_howto15 <howto_15>` for an overview of
LAMMPS output options.

The per-particle array values will be in energy (u_cond, u_mech) and
temperature (dpdTheta) :doc:`units <units>`.

Restrictions
""""""""""""


The compute *dpd/atom* is only available if LAMMPS is built with the
USER-DPD package.

Related commands
""""""""""""""""

:doc:`dump custom <dump>`, :doc:`compute dpd <compute_dpd>`

**Default:** none


----------


.. _Larentzos:



**(Larentzos)** J.P. Larentzos, J.K. Brennan, J.D. Moore, and
W.D. Mattson, "LAMMPS Implementation of Constant Energy Dissipative
Particle Dynamics (DPD-E)", ARL-TR-6863, U.S. Army Research
Laboratory, Aberdeen Proving Ground, MD (2014).


.. _lws: http://lammps.sandia.gov
.. _ld: Manual.html
.. _lc: Section_commands.html#comm
+74 −0
Original line number Diff line number Diff line
.. index:: fix eos/cv

fix eos/cv command
==================

Syntax
""""""

.. parsed-literal::

   fix ID group-ID eos/cv cv

* ID, group-ID are documented in :doc:`fix <fix>` command
* eos/cv = style name of this fix command
* cv = constant-volume heat capacity (energy/temperature units)

Examples
""""""""

.. parsed-literal::

   fix 1 all eos/cv 0.01

Description
"""""""""""

Fix *eos/cv* applies a mesoparticle equation of state to relate the
particle internal energy (u_i) to the particle internal temperature
(dpdTheta_i).  The *eos/cv* mesoparticle equation of state requires
the constant-volume heat capacity, and is defined as follows:

.. image:: Eqs/fix_eos-cv.jpg
   :align: center

where Cv is the constant-volume heat capacity, u_cond is the internal
conductive energy, and u_mech is the internal mechanical energy.  Note
that alternative definitions of the mesoparticle equation of state are
possible.


----------


Restrictions
""""""""""""


The fix *eos/cv* is only available if LAMMPS is built with the
USER-DPD package.

Related commands
""""""""""""""""

:doc:`fix shardlow <fix_shardlow>`, :doc:`pair dpd/fdt <pair_dpd_fdt>`

**Default:** none


----------


.. _Larentzos:



**(Larentzos)** J.P. Larentzos, J.K. Brennan, J.D. Moore, and
W.D. Mattson, "LAMMPS Implementation of Constant Energy Dissipative
Particle Dynamics (DPD-E)", ARL-TR-6863, U.S. Army Research
Laboratory, Aberdeen Proving Ground, MD (2014).


.. _lws: http://lammps.sandia.gov
.. _ld: Manual.html
.. _lc: Section_commands.html#comm
+130 −0
Original line number Diff line number Diff line
.. index:: fix eos/table

fix eos/table command
=====================

Syntax
""""""

.. parsed-literal::

   fix ID group-ID eos/table style file N keyword

* ID, group-ID are documented in :doc:`fix <fix>` command
* eos/table = style name of this fix command
* style = *linear* = method of interpolation
* file = filename containing the tabulated equation of state
* N = use N values in *linear* tables
* keyword = name of table keyword correponding to table file

Examples
""""""""

.. parsed-literal::

   fix 1 all eos/table linear eos.table 100000 KEYWORD

Description
"""""""""""

Fix *eos/table* applies a tabulated mesoparticle equation of state to
relate the particle internal energy (u_i) to the particle internal
temperature (dpdTheta_i).

Fix *eos/table* creates interpolation tables of length *N* from
internal energy values listed in a file as a function of internal
temperature.

The interpolation tables are created by fitting cubic splines to the
file values and interpolating energy values at each of *N* internal
temperatures, and vice-versa.  During a simulation, these tables are
used to interpolate internal energy or temperature values as needed.
The interpolation is done with the *linear* style.

For the *linear* style, the internal temperature is used to find 2
surrounding table values from which an internal energy is computed by
linear interpolation, and vice-versa.

The filename specifies a file containing tabulated internal
temperature and internal energy values.  The keyword specifies a
section of the file.  The format of this file is described below.


----------


The format of a tabulated file is as follows (without the
parenthesized comments):

.. parsed-literal::

   # EOS TABLE                (one or more comment or blank lines)

.. parsed-literal::

   KEYWORD                    (keyword is first text on line)
   N 500                      (N  parameter)
                              (blank)
   1   1.00 0.000             (index, internal temperature, internal energy)
   2   1.02 0.001
   ...
   500 10.0 0.500

A section begins with a non-blank line whose 1st character is not a
"#"; blank lines or lines starting with "#" can be used as comments
between sections.  The first line begins with a keyword which
identifies the section.  The line can contain additional text, but the
initial text must match the argument specified in the fix command.

The next line lists the number of table entries.  The parameter "N" is
required and its value is the number of table entries that follow.
Note that this may be different than the *N* specified in the :doc:`fix eos/table <fix_style>` command.  Let Ntable = *N* in the fix
command, and Nfile = "N" in the tabulated file.  What LAMMPS does is a
preliminary interpolation by creating splines using the Nfile
tabulated values as nodal points.  It uses these to interpolate as
needed to generate energy and temperature values at Ntable different
points.  The resulting tables of length Ntable are then used as
described above, when computing energy and temperature relationships.
This means that if you want the interpolation tables of length Ntable
to match exactly what is in the tabulated file (with effectively no
preliminary interpolation), you should set Ntable = Nfile.

Following a blank line, the next N lines list the tabulated values.
On each line, the 1st value is the index from 1 to N, the 2nd value is
the internal temperature (in temperature units), the 3rd value is the
internal energy (in energy units).

Note that the internal temperature and internal energy values must 
increase from one line to the next.

Note that one file can contain many sections, each with a tabulated
potential.  LAMMPS reads the file section by section until it finds
one that matches the specified keyword.


----------


Restrictions
""""""""""""


The fix *eos/table* is only available if LAMMPS is built with the 
USER-DPD package.

The equation of state must be a monotonically increasing function.

An exit error will occur if the internal temperature or internal
energies are not within the table cutoffs.

Related commands
""""""""""""""""

:doc:`fix shardlow <fix_shardlow>`, :doc:`pair dpd/fdt <dpd_fdt>`

**Default:** none


.. _lws: http://lammps.sandia.gov
.. _ld: Manual.html
.. _lc: Section_commands.html#comm
+115 −0
Original line number Diff line number Diff line
.. index:: fix shardlow

fix shardlow command
====================

Syntax
""""""

.. parsed-literal::

   fix ID group-ID shardlow

* ID, group-ID are documented in :doc:`fix <fix>` command
* shardlow = style name of this fix command

Examples
""""""""

.. parsed-literal::

   fix 1 all shardlow

Description
"""""""""""

Specifies that the Shardlow splitting algorithm (SSA) is to be used to
integrate the DPD equations of motion.  The SSA splits the integration
into a stochastic and deterministic integration step.  The fix
*shardlow* performs the stochastic integration step and must be used
in conjunction with a deterministic integrator (e.g. :doc:`fix nve <fix_nve>` or :doc:`fix nph <fix_nph>`).  The stochastic
integration of the dissipative and random forces is performed prior to
the deterministic integration of the conservative force. Further
details regarding the method are provided in :ref:`(Lisal) <Lisal>` and
:ref:`(Larentzos) <Larentzos>`.

The fix *shardlow* must be used with the :doc:`pair_style dpd/fdt <pair_style>` or :doc:`pair_style dpd/fdt/energy <pair_style>` command to properly initialize the
fluctuation-dissipation theorem parameter(s) sigma (and kappa, if
necessary).

Note that numerous variants of DPD can be specified by choosing an
appropriate combination of the integrator and :doc:`pair_style dpd/fdt <pair_style>` command.  DPD under isothermal conditions can
be specified by using fix *shardlow*, fix *nve* and pair_style
*dpd/fdt*.  DPD under isoenergetic conditions can be specified by
using fix *shardlow*, fix *nve* and pair_style *dpd/fdt/energy*.  DPD
under isobaric conditions can be specified by using fix shardlow, fix
*nph* and pair_style *dpd/fdt*.  DPD under isoenthalpic conditions can
be specified by using fix shardlow, fix *nph* and pair_style
*dpd/fdt/energy*.  Examples of each DPD variant are provided in the
examples/USER/dpd directory.


----------


Restrictions
""""""""""""


This fix is only available if LAMMPS is built with the USER-DPD
package.  See the :ref:`Making LAMMPS <start_3>` section
for more info.

This fix is currently limited to orthogonal simulation cell
geometries.

This fix must be used with an additional fix that specifies time
integration, e.g. :doc:`fix nve <fix_nve>` or :doc:`fix nph <fix_nh>`.

The Shardlow splitting algorithm requires the sizes of the sub-domain
lengths to be larger than twice the cutoff+skin.  Generally, the
domain decomposition is dependant on the number of processors
requested.

Related commands
""""""""""""""""

:doc:`pair_style dpd/fdt <pair_dpd_fdt>`, :doc:`fix eos/cv <fix_eos_cv>`

**Default:** none


----------


.. _Lisal:



**(Lisal)** M. Lisal, J.K. Brennan, J. Bonet Avalos, "Dissipative
particle dynamics as isothermal, isobaric, isoenergetic, and
isoenthalpic conditions using Shardlow-like splitting algorithms.",
J. Chem. Phys., 135, 204105 (2011).

.. _Larentzos:



**(Larentzos)** J.P. Larentzos, J.K. Brennan, J.D. Moore, M. Lisal and
W.D. Mattson, "Parallel Implementation of Isothermal and Isoenergetic
Dissipative Particle Dynamics Using Shardlow-Like Splitting
Algorithms", Comput. Phys. Commun., 185, 1987-1998 (2014).

.. _Larentzos:



**(Larentzos)** J.P. Larentzos, J.K. Brennan, J.D. Moore, and
W.D. Mattson, "LAMMPS Implementation of Constant Energy Dissipative
Particle Dynamics (DPD-E)", ARL-TR-6863, U.S. Army Research
Laboratory, Aberdeen Proving Ground, MD (2014).


.. _lws: http://lammps.sandia.gov
.. _ld: Manual.html
.. _lc: Section_commands.html#comm
Loading