lammps/doc/fix_imd.txt

134 lines
5.2 KiB
Plaintext
Raw Normal View History

"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
fix imd command :h3
[Syntax:]
fix ID group-ID imd trate port keyword values ... :pre
ID, group-ID are documented in "fix"_fix.html command :ulb,l
imd = style name of this fix command :l
port = port number on which the fix listens for an IMD client :l
keyword = {unwrap} or {fscale} or {trate} :l
{unwrap} arg = {on} or {off}
off = coordinates are wrapped back into the principal unit cell (default)
on = "unwrapped" coordinates using the image flags used
{fscale} arg = factor
factor = floating point number to scale IMD forces (default: 1.0)
{trate} arg = transmission rate of coordinate data sets (default: 1) :pre
:ule
[Examples:]
fix vmd all imd 5678
fix comm all imd 8888 trate 5 unwrap on fscale 10.0 :pre
[Description:]
This fix implements the "Interactive MD" (IMD) protocol which allows
to connect an IMD client, for example the VMD visualization program,
to a running LAMMPS simulation and monitor the progress of the simulation
and interactively apply forces to selected atoms.
Upon initialization of the fix, it will open a communication port
on the node with MPI task 0 and wait for an incoming connection.
As soon as an IMD client is connected, the simulation will continue
and the fix will send the current coordinates of the fix's group
to the IMD client at every trate MD step. When using r-RESPA, trate
applies to the steps of the outmost RESPA level.
During a run with an active IMD connection also the IMD client can
request to apply forces to selected atoms of the fix group.
The port number selected must be an available network port number.
On many machines, port numbers < 1024 are reserved for accounts with
system manager privilege and specific applications. If multiple imd
fixes would be active at the same time, each needs to use a different
port number.
The {trate} keyword allows to select how often the coordinate data
is sent to the IMD client. It can also be changed on request of
the IMD client through an IMD protocol message.
The {unwrap} keyword allows to send "unwrapped" coordinates to
the IMD client that undo the wrapping back of coordinates into
the principle unit cell, as done by default in LAMMPS.
The {fscale} keyword allows to apply a scaling factor to forces
transmitted by the IMD client. The IMD protocols stipulates that
forces are transferred in kcal/mol/angstrom under the assumption
that coordinates are given in angstrom. For LAMMPS runs with
different units or as a measure to tweak the forces generated
by the manipulation of the IMD client, this option allows to
make adjustments.
To connect VMD to a waiting LAMMPS simulation on the same
machine with fix imd enabled, one needs to start VMD and load
a coordinate or topology file that matches the fix group.
When the VMD command prompts appears, one types the command line:
imd connect localhost 5678 :pre
This assumes that {fix imd} was started with 5678 as a port
number for the IMD protocol.
The steps to do interactive manipulation of a running simulation
in VMD are the following:
In the Mouse menu of the VMD Main window, select "Mouse -> Force -> Atom".
You may alternately select "Residue", or "Fragment" to apply forces to
whole residues or fragments. Your mouse can now be used to apply forces
to your simulation. Click on an atom, residue, or fragment and drag to
apply a force. Click quickly without moving the mouse to turn the force
off. You can also use a variety of 3D position trackers to apply forces
to your simulation. Trackers with force-feedback such as the Sensable
PHANTOM allow you to feel the forces you are applying to your molecules,
as if they were real objects. See the "VMD IMD Homepage"_imdvmd for
more details.
:link(imdvmd,http://www.ks.uiuc.edu/Research/vmd/imd/)
[Restart, fix_modify, output, run start/stop, minimize info:]
The fix does not write any information to restart files.
None of the "fix_modify"_fix_modify.html options are relevant
to this fix.
If IMD control messages are received, a line of text describing
the message and its effect will be printed to the screen, if
screen output is active.
No parameter of this fix can be used with the {start/stop} keywords of
the "run"_run.html command. This fix is not invoked during "energy
minimization"_minimize.html.
[Restrictions:]
This source code for this fix includes code developed by the
Theoretical and Computational Biophysics Group in the Beckman
Institute for Advanced Science and Technology at the University of
Illinois at Urbana-Champaign.
This fix is part of the "user-imd" package. It is only enabled if
LAMMPS was built with that package. See the "Making
LAMMPS"_Section_start.html#2_3 section for more info.
When used in combination with VMD, a topology or coordinate file
has to be loaded, which matches in number and ordering of atoms
the group the fix is applied to. The fix internally sorts atom
IDs by ascending integer value; in VMD (and thus the IMD protocol)
those will be assigned 0-based consecutive index numbers.
When using multiple active IMD connections at the same time,
each needs to use a different port number.
[Related commands:] none
[Default:] none
:line