more edits

This commit is contained in:
Steve Plimpton
2022-06-10 15:32:41 -06:00
parent 204bba6ff7
commit 8346ae2565

View File

@ -13,16 +13,16 @@ Syntax
* ID, group-ID are documented in :doc:`fix <fix>` command
* mdi/qm = style name of this fix command
* zero or more keyword/value pairs may be appended
* keyword = *plugin* or *add* of *every*
* keyword = *plugin* or *every* or *add*
.. parsed-literal::
*plugin* args = none
*plugin* args = none
*every* args = Nevery
Nevery = request values from server code once every Nevery steps
*add* args = *yes* or *no*
yes = add returned value from server code to LAMMPS quantities
no = do not add returned values to LAMMPS quantities
*every* args = Nevery
Nevery = request values from server code once every Nevery steps
Examples
""""""""
@ -37,7 +37,8 @@ Description
This command enables LAMMPS to act as a client with another server
code that will compute the total energy, per-atom forces, and total
virial for conformations and box size/shape that LAMMPS sends it.
virial for atom conformations and simulation box size/shapes that
LAMMPS sends it.
Typically the server code will be a quantum code, hence the name of
the fix. However this is not required, the server code could be
@ -52,7 +53,7 @@ below):
* perform an ab intitio MD (AIMD) simulation with quantum forces
* perform an energy minimziation with quantum forces
* perform a nudged elatic band (NEB) calculation with quantum forces
* LAMMPS reads or creates a series of configurations and requests a QM calculation for each one
* requests a QM calculation for a series of independent systems which LAMMPS reads or generates
The code coupling performed by this command is done via the `MDI
Library <https://molssi-mdi.github.io/MDI_Library/html/index.html>`_.
@ -62,23 +63,23 @@ support for MDI. See the :doc:`Howto mdi <Howto_mdi>` page for more
information about how LAMMPS can operate as either an MDI driver or
engine.
The examples/mdi directory contains input scripts performing AIMD in
this manner with LAMMPS acting as both a driver and an engine
The examples/mdi directory contains input scripts using this fix, with
two instances of LAMMPS acting as both a driver and an engine
(surrogate for a QM code). The examples/mdi/README file explains how
to launch both driver and engine codes so that they communicate using
to launch two driver and engine codes so that they communicate using
the MDI library via either MPI or sockets. Any QM code that supports
MDI could be used in place of LAMMPS acting as a QM surrogate. See
the :doc:`Howto mdi <Howto_mdi>` page for a current list (March 2022)
of such QM codes.
Engine codes can support MDI in either or both of two ways. The
engine code can support being used as a stand-alone code, launched at
the same time as LAMMPS. Or the engine code can support being used as
a plugin library, which LAMMPS loads. See the :doc:`mdi plugin <mdi>`
command for how to trigger LAMMPS to load the plugin library. The
examples/mdi/README file explains both use cases: launching both the
driver and engine as stand-alone codes or having the driver code load
an engine as a plugin library.
Engine codes can support MDI in either or both of two ways. It can
support being used as a stand-alone code, launched at the same time as
LAMMPS. Or it can support being used as a plugin library, which
LAMMPS loads. See the :doc:`mdi plugin <mdi>` command for how to
trigger LAMMPS to load the plugin library. The examples/mdi/README
file explains both use cases: launching both the driver and engine as
stand-alone codes or having the driver code load an engine as a plugin
library.
----------
@ -87,10 +88,6 @@ an engine as a plugin library.
To use this fix with a plugin engine, you must specify the
*plugin* keyword as the last argument, as illustrated above.
.. note::
As of April 2022, the *plugin* keyword is needed. In a future
version of the MDI library it will no longer be necessary.
----------