Compare commits
164 Commits
patch_7Mar
...
stable_31M
| Author | SHA1 | Date | |
|---|---|---|---|
| ae56b9ad89 | |||
| 4466d9fb4a | |||
| ac1aa9edea | |||
| c733204a70 | |||
| 4b9d0a9566 | |||
| 0637f23875 | |||
| 9f6e126a2f | |||
| 645f56cf70 | |||
| 80e5111dca | |||
| 7e9f05b617 | |||
| 1d8f0c762d | |||
| ef6070cbde | |||
| 61f3ff1d2b | |||
| 111d350a22 | |||
| 1dfd61f532 | |||
| 5c1f5462e7 | |||
| 66a6375405 | |||
| 604afebf6f | |||
| 8afed61db1 | |||
| ee55a98103 | |||
| f8da9a866a | |||
| 28bdebd3c0 | |||
| fc51c38abb | |||
| 443ea13eff | |||
| 5feeb79c13 | |||
| a241b2d0f7 | |||
| 61e7595a94 | |||
| da9096750e | |||
| 87ea9ba661 | |||
| c041727e4f | |||
| 3feffbe1de | |||
| 04fd038d35 | |||
| 3dfe4505dd | |||
| 394e9b42b0 | |||
| e6fcaefe95 | |||
| f5a85d68ad | |||
| 277b93cb89 | |||
| 8820315ff9 | |||
| 44841f6891 | |||
| 2cdcd6d630 | |||
| 47cade2bcf | |||
| a72efbea36 | |||
| 5c9892c083 | |||
| 9ecc5c8cf7 | |||
| 47cebb0d23 | |||
| f127e428cc | |||
| 568b67eee9 | |||
| 865b41e201 | |||
| b88a749680 | |||
| 02e65900e6 | |||
| 343c9eda82 | |||
| df8dbec676 | |||
| 1075be7eca | |||
| 6d395ec511 | |||
| bf560e78f3 | |||
| daae76c465 | |||
| 1ea9a14121 | |||
| 1db5834b99 | |||
| 3070b043be | |||
| ef3f323fc4 | |||
| 43a304f564 | |||
| a79aef65e8 | |||
| dc1d93a491 | |||
| 66eb9c2486 | |||
| a14d58259c | |||
| 127597023d | |||
| 3ec16f3630 | |||
| cb9059652d | |||
| 43f27250b5 | |||
| af0b5b0e84 | |||
| c5d561a312 | |||
| 7435084375 | |||
| 734e639c5d | |||
| dcede304df | |||
| 145e682ad3 | |||
| 6482df6c2f | |||
| 0c9cd11b4e | |||
| 82d952ae0e | |||
| 47d6451d03 | |||
| e110d6961a | |||
| a42b0b7dcb | |||
| 03828b5836 | |||
| 3b44c3ff1d | |||
| 0d0c2b65f7 | |||
| 2218a9d704 | |||
| 0a6b33cd78 | |||
| ecf17621aa | |||
| f0c6ed004d | |||
| 554531a302 | |||
| d496c0fdfa | |||
| 5c39dfd740 | |||
| 5b842f0010 | |||
| 52987a3615 | |||
| b6ecfb91c4 | |||
| d04ea8653d | |||
| 2ab77caa8b | |||
| da81531906 | |||
| 5be32f5d8d | |||
| 4a90bca7a3 | |||
| 9f35b764f8 | |||
| 7ca5dce2f5 | |||
| fcc3b3bd36 | |||
| 53a3877c3d | |||
| a936b7b2ab | |||
| a91b851f3d | |||
| d31c591b60 | |||
| ae5ebf6001 | |||
| 7fb741d53d | |||
| 8e75616c14 | |||
| 411c069ba6 | |||
| ac82d041cc | |||
| 621d7d5ce0 | |||
| 1bb9c7da42 | |||
| f893104b18 | |||
| efb2a942e0 | |||
| 070ce33a13 | |||
| f604f86cfc | |||
| bed288339e | |||
| 1995f434f3 | |||
| db0281b4df | |||
| 2f5e711acd | |||
| bdb7669e27 | |||
| cda8213892 | |||
| ef940d226c | |||
| 36da9223ec | |||
| eb29ef32b1 | |||
| 29550d472d | |||
| 79cae51156 | |||
| a210867025 | |||
| 0262a54ecf | |||
| 0d8f74f0c5 | |||
| 3a2da51a82 | |||
| b1c59126f7 | |||
| 4c77838514 | |||
| f9468f46f5 | |||
| ec1778b586 | |||
| c3ce3747e0 | |||
| fdc390ad05 | |||
| 580f6b567b | |||
| 27b1c33a16 | |||
| 7a75cd111c | |||
| 23b8287933 | |||
| 4cfe623bc1 | |||
| f871ecdc67 | |||
| 470353e320 | |||
| ffe02d20ca | |||
| f70752c18f | |||
| 07fcfd6d54 | |||
| c97feafca6 | |||
| b20d95d495 | |||
| 0b4adaa9e6 | |||
| 5fe6206638 | |||
| 65964f3b31 | |||
| b28b84d444 | |||
| a001a5ceb0 | |||
| 2ef713ea1b | |||
| 1f6c1942b3 | |||
| 683023d820 | |||
| 42d3a8f498 | |||
| 3626496c7c | |||
| 458b6749e7 | |||
| 0efd209480 | |||
| ed0a347fbf | |||
| 149f37e764 |
18
doc/Makefile
18
doc/Makefile
@ -6,6 +6,7 @@ BUILDDIR = /tmp/lammps-docs-$(SHA1)
|
||||
RSTDIR = $(BUILDDIR)/rst
|
||||
VENV = $(BUILDDIR)/docenv
|
||||
TXT2RST = $(VENV)/bin/txt2rst
|
||||
ANCHORCHECK = $(VENV)/bin/doc_anchor_check
|
||||
|
||||
PYTHON = $(shell which python3)
|
||||
HAS_PYTHON3 = NO
|
||||
@ -22,7 +23,7 @@ endif
|
||||
SOURCES=$(wildcard src/*.txt)
|
||||
OBJECTS=$(SOURCES:src/%.txt=$(RSTDIR)/%.rst)
|
||||
|
||||
.PHONY: help clean-all clean epub html pdf old venv spelling
|
||||
.PHONY: help clean-all clean epub html pdf old venv spelling anchor_check
|
||||
|
||||
# ------------------------------------------
|
||||
|
||||
@ -36,6 +37,7 @@ help:
|
||||
@echo " clean remove all intermediate RST files"
|
||||
@echo " clean-all reset the entire build environment"
|
||||
@echo " txt2html build txt2html tool"
|
||||
@echo " anchor_check scan for duplicate anchor labels"
|
||||
|
||||
# ------------------------------------------
|
||||
|
||||
@ -49,11 +51,14 @@ clean:
|
||||
clean-spelling:
|
||||
rm -rf spelling
|
||||
|
||||
html: $(OBJECTS)
|
||||
html: $(OBJECTS) $(ANCHORCHECK)
|
||||
@(\
|
||||
. $(VENV)/bin/activate ;\
|
||||
cp -r src/* $(RSTDIR)/ ;\
|
||||
sphinx-build -j 8 -b html -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) html ;\
|
||||
echo "############################################" ;\
|
||||
doc_anchor_check src/*.txt ;\
|
||||
echo "############################################" ;\
|
||||
deactivate ;\
|
||||
)
|
||||
-rm html/searchindex.js
|
||||
@ -127,6 +132,13 @@ fetch:
|
||||
|
||||
txt2html: utils/txt2html/txt2html.exe
|
||||
|
||||
anchor_check : $(ANCHORCHECK)
|
||||
@(\
|
||||
. $(VENV)/bin/activate ;\
|
||||
doc_anchor_check src/*.txt ;\
|
||||
deactivate ;\
|
||||
)
|
||||
|
||||
# ------------------------------------------
|
||||
|
||||
utils/txt2html/txt2html.exe: utils/txt2html/txt2html.cpp
|
||||
@ -151,7 +163,7 @@ $(VENV):
|
||||
deactivate;\
|
||||
)
|
||||
|
||||
$(TXT2RST): $(VENV)
|
||||
$(TXT2RST) $(ANCHORCHECK): $(VENV)
|
||||
@( \
|
||||
. $(VENV)/bin/activate; \
|
||||
(cd utils/converters;\
|
||||
|
||||
BIN
doc/src/Eqs/fix_gcmc1.jpg
Normal file
BIN
doc/src/Eqs/fix_gcmc1.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.5 KiB |
9
doc/src/Eqs/fix_gcmc1.tex
Normal file
9
doc/src/Eqs/fix_gcmc1.tex
Normal file
@ -0,0 +1,9 @@
|
||||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
\mu &=&\mu^{id} + \mu^{ex}
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
||||
BIN
doc/src/Eqs/fix_gcmc2.jpg
Normal file
BIN
doc/src/Eqs/fix_gcmc2.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
10
doc/src/Eqs/fix_gcmc2.tex
Normal file
10
doc/src/Eqs/fix_gcmc2.tex
Normal file
@ -0,0 +1,10 @@
|
||||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
\mu^{id} &=& k T \ln{\rho \Lambda^3} \\
|
||||
&=& k T \ln{\frac{\phi P \Lambda^3}{k T}}
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
||||
BIN
doc/src/Eqs/fix_gcmc3.jpg
Normal file
BIN
doc/src/Eqs/fix_gcmc3.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.3 KiB |
9
doc/src/Eqs/fix_gcmc3.tex
Normal file
9
doc/src/Eqs/fix_gcmc3.tex
Normal file
@ -0,0 +1,9 @@
|
||||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
\Lambda &=& \sqrt{ \frac{h^2}{2 \pi m k T}}
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
||||
BIN
doc/src/Eqs/pair_momb.jpg
Normal file
BIN
doc/src/Eqs/pair_momb.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
13
doc/src/Eqs/pair_momb.tex
Normal file
13
doc/src/Eqs/pair_momb.tex
Normal file
@ -0,0 +1,13 @@
|
||||
\documentclass[12pt,fleqn]{article}
|
||||
\usepackage{amsmath}
|
||||
\thispagestyle{empty}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\setlength{\jot}{2ex}
|
||||
\begin{gather*}
|
||||
E = D_0 [\exp^{-2 \alpha (r-r_0)} - 2\exp^{-\alpha (r-r_0)}] - s_6 \frac{C_6}{r^6} f_{damp}(r,R_r) \\
|
||||
f_{damp}(r,R_r) = \frac{1}{1 + \exp^{-d(r/R_r - 1)}}
|
||||
\end{gather*}
|
||||
|
||||
\end{document}
|
||||
@ -1,7 +1,7 @@
|
||||
<!-- HTML_ONLY -->
|
||||
<HEAD>
|
||||
<TITLE>LAMMPS Users Manual</TITLE>
|
||||
<META NAME="docnumber" CONTENT="7 Mar 2017 version">
|
||||
<META NAME="docnumber" CONTENT="31 Mar 2017 version">
|
||||
<META NAME="author" CONTENT="http://lammps.sandia.gov - Sandia National Laboratories">
|
||||
<META NAME="copyright" CONTENT="Copyright (2003) Sandia Corporation. This software and manual is distributed under the GNU General Public License.">
|
||||
</HEAD>
|
||||
@ -21,7 +21,7 @@
|
||||
<H1></H1>
|
||||
|
||||
LAMMPS Documentation :c,h3
|
||||
7 Mar 2017 version :c,h4
|
||||
31 Mar 2017 version :c,h4
|
||||
|
||||
Version info: :h4
|
||||
|
||||
@ -39,7 +39,7 @@ directory name created when you unpack a tarball, and at the top of
|
||||
the first page of the manual (this page).
|
||||
|
||||
If you browse the HTML doc pages on the LAMMPS WWW site, they always
|
||||
describe the most current version of LAMMPS. :ulb,l
|
||||
describe the most current [development] version of LAMMPS. :ulb,l
|
||||
|
||||
If you browse the HTML doc pages included in your tarball, they
|
||||
describe the version you have. :l
|
||||
@ -67,7 +67,7 @@ Labs and Temple University:
|
||||
|
||||
"Steve Plimpton"_sjp, sjplimp at sandia.gov :ulb,l
|
||||
Aidan Thompson, athomps at sandia.gov :l
|
||||
Stan Moore, stamoore at sandia.gov :l
|
||||
Stan Moore, stamoor at sandia.gov :l
|
||||
"Axel Kohlmeyer"_ako, akohlmey at gmail.com :l
|
||||
:ule
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@ -687,6 +687,7 @@ package"_Section_start.html#start_3.
|
||||
"eos/cv"_fix_eos_cv.html,
|
||||
"eos/table"_fix_eos_table.html,
|
||||
"eos/table/rx"_fix_eos_table_rx.html,
|
||||
"filter/corotate"_fix_filter_corotate.html,
|
||||
"flow/gauss"_fix_flow_gauss.html,
|
||||
"gle"_fix_gle.html,
|
||||
"grem"_fix_grem.html,
|
||||
@ -939,6 +940,8 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"lj/charmm/coul/charmm/implicit (ko)"_pair_charmm.html,
|
||||
"lj/charmm/coul/long (giko)"_pair_charmm.html,
|
||||
"lj/charmm/coul/msm"_pair_charmm.html,
|
||||
"lj/charmmfsw/coul/charmmfsh"_pair_charmm.html,
|
||||
"lj/charmmfsw/coul/long"_pair_charmm.html,
|
||||
"lj/class2 (gko)"_pair_class2.html,
|
||||
"lj/class2/coul/cut (ko)"_pair_class2.html,
|
||||
"lj/class2/coul/long (gko)"_pair_class2.html,
|
||||
@ -1034,6 +1037,7 @@ package"_Section_start.html#start_3.
|
||||
"meam/spline (o)"_pair_meam_spline.html,
|
||||
"meam/sw/spline"_pair_meam_sw_spline.html,
|
||||
"mgpt"_pair_mgpt.html,
|
||||
"momb"_pair_momb.html,
|
||||
"morse/smooth/linear"_pair_morse.html,
|
||||
"morse/soft"_pair_morse.html,
|
||||
"multi/lucy"_pair_multi_lucy.html,
|
||||
@ -1043,6 +1047,10 @@ package"_Section_start.html#start_3.
|
||||
"oxdna/hbond"_pair_oxdna.html,
|
||||
"oxdna/stk"_pair_oxdna.html,
|
||||
"oxdna/xstk"_pair_oxdna.html,
|
||||
"oxdna2/coaxstk"_pair_oxdna2.html,
|
||||
"oxdna2/dh"_pair_oxdna2.html,
|
||||
"oxdna2/excv"_pair_oxdna2.html,
|
||||
"oxdna2/stk"_pair_oxdna2.html,
|
||||
"quip"_pair_quip.html,
|
||||
"reax/c (k)"_pair_reax_c.html,
|
||||
"smd/hertz"_pair_smd_hertz.html,
|
||||
@ -1060,7 +1068,7 @@ package"_Section_start.html#start_3.
|
||||
"table/rx"_pair_table_rx.html,
|
||||
"tersoff/table (o)"_pair_tersoff.html,
|
||||
"thole"_pair_thole.html,
|
||||
"tip4p/long/soft (o)"_pair_lj_soft.html :tb(c=4,ea=c)
|
||||
"tip4p/long/soft (o)"_pair_lj_soft.html :tb(c=4,ea=c)
|
||||
|
||||
:line
|
||||
|
||||
@ -1092,7 +1100,8 @@ package"_Section_start.html#start_3.
|
||||
|
||||
"harmonic/shift (o)"_bond_harmonic_shift.html,
|
||||
"harmonic/shift/cut (o)"_bond_harmonic_shift_cut.html,
|
||||
"oxdna/fene"_bond_oxdna.html :tb(c=4,ea=c)
|
||||
"oxdna/fene"_bond_oxdna.html,
|
||||
"oxdna2/fene"_bond_oxdna.html :tb(c=4,ea=c)
|
||||
|
||||
:line
|
||||
|
||||
@ -1146,6 +1155,7 @@ USER-OMP, t = OPT.
|
||||
"zero"_dihedral_zero.html,
|
||||
"hybrid"_dihedral_hybrid.html,
|
||||
"charmm (ko)"_dihedral_charmm.html,
|
||||
"charmmfsh"_dihedral_charmm.html,
|
||||
"class2 (ko)"_dihedral_class2.html,
|
||||
"harmonic (io)"_dihedral_harmonic.html,
|
||||
"helix (o)"_dihedral_helix.html,
|
||||
|
||||
@ -25,9 +25,7 @@ files and image files.
|
||||
|
||||
If you uncomment the "dump"_dump.html command in the input script, a
|
||||
text dump file will be produced, which can be animated by various
|
||||
"visualization programs"_http://lammps.sandia.gov/viz.html. It can
|
||||
also be animated using the xmovie tool described in the "Additional
|
||||
Tools"_Section_tools.html section of the LAMMPS documentation.
|
||||
"visualization programs"_http://lammps.sandia.gov/viz.html.
|
||||
|
||||
If you uncomment the "dump image"_dump.html command in the input
|
||||
script, and assuming you have built LAMMPS with a JPG library, JPG
|
||||
@ -53,9 +51,11 @@ Lowercase directories :h4
|
||||
accelerate: run with various acceleration options (OpenMP, GPU, Phi)
|
||||
balance: dynamic load balancing, 2d system
|
||||
body: body particles, 2d system
|
||||
cmap: CMAP 5-body contributions to CHARMM force field
|
||||
colloid: big colloid particles in a small particle solvent, 2d system
|
||||
comb: models using the COMB potential
|
||||
coreshell: core/shell model using CORESHELL package
|
||||
controller: use of fix controller as a thermostat
|
||||
crack: crack propagation in a 2d solid
|
||||
deposit: deposit atoms and molecules on a surface
|
||||
dipole: point dipolar particles, 2d system
|
||||
@ -64,6 +64,8 @@ eim: NaCl using the EIM potential
|
||||
ellipse: ellipsoidal particles in spherical solvent, 2d system
|
||||
flow: Couette and Poiseuille flow in a 2d channel
|
||||
friction: frictional contact of spherical asperities between 2d surfaces
|
||||
gcmc: Grand Canonical Monte Carlo (GCMC) via the fix gcmc command
|
||||
granregion: use of fix wall/region/gran as boundary on granular particles
|
||||
hugoniostat: Hugoniostat shock dynamics
|
||||
indent: spherical indenter into a 2d solid
|
||||
kim: use of potentials in Knowledge Base for Interatomic Models (KIM)
|
||||
@ -71,6 +73,7 @@ meam: MEAM test for SiC and shear (same as shear examples)
|
||||
melt: rapid melt of 3d LJ system
|
||||
micelle: self-assembly of small lipid-like molecules into 2d bilayers
|
||||
min: energy minimization of 2d LJ melt
|
||||
mscg: parameterize a multi-scale coarse-graining (MSCG) model
|
||||
msst: MSST shock dynamics
|
||||
nb3b: use of nonbonded 3-body harmonic pair style
|
||||
neb: nudged elastic band (NEB) calculation for barrier finding
|
||||
@ -89,7 +92,8 @@ snap: NVE dynamics for BCC tantalum crystal using SNAP potential
|
||||
srd: stochastic rotation dynamics (SRD) particles as solvent
|
||||
streitz: use of Streitz/Mintmire potential with charge equilibration
|
||||
tad: temperature-accelerated dynamics of vacancy diffusion in bulk Si
|
||||
vashishta: use of the Vashishta potential :tb(s=:)
|
||||
vashishta: use of the Vashishta potential
|
||||
voronoi: Voronoi tesselation via compute voronoi/atom command :tb(s=:)
|
||||
|
||||
Here is how you can run and visualize one of the sample problems:
|
||||
|
||||
|
||||
@ -165,9 +165,16 @@ Many of the example input scripts included in the LAMMPS distribution
|
||||
are for 2d models.
|
||||
|
||||
NOTE: Some models in LAMMPS treat particles as finite-size spheres, as
|
||||
opposed to point particles. In 2d, the particles will still be
|
||||
spheres, not disks, meaning their moment of inertia will be the same
|
||||
as in 3d.
|
||||
opposed to point particles. See the "atom_style
|
||||
sphere"_atom_style.html and "fix nve/sphere"_fix_nve_sphere.html
|
||||
commands for details. By default, for 2d simulations, such particles
|
||||
will still be modeled as 3d spheres, not 2d discs (circles), meaning
|
||||
their moment of inertia will be that of a sphere. If you wish to
|
||||
model them as 2d discs, see the "set density/disc"_set.html command
|
||||
and the {disc} option for the "fix nve/sphere"_fix_nve_sphere.html,
|
||||
"fix nvt/sphere"_fix_nvt_sphere.html, "fix
|
||||
nph/sphere"_fix_nph_sphere.html, "fix npt/sphere"_fix_npt_sphere.html
|
||||
commands.
|
||||
|
||||
:line
|
||||
|
||||
@ -197,7 +204,10 @@ documentation for the formula it computes.
|
||||
|
||||
"bond_style"_bond_harmonic.html harmonic
|
||||
"angle_style"_angle_charmm.html charmm
|
||||
"dihedral_style"_dihedral_charmm.html charmmfsh
|
||||
"dihedral_style"_dihedral_charmm.html charmm
|
||||
"pair_style"_pair_charmm.html lj/charmmfsw/coul/charmmfsh
|
||||
"pair_style"_pair_charmm.html lj/charmmfsw/coul/long
|
||||
"pair_style"_pair_charmm.html lj/charmm/coul/charmm
|
||||
"pair_style"_pair_charmm.html lj/charmm/coul/charmm/implicit
|
||||
"pair_style"_pair_charmm.html lj/charmm/coul/long :ul
|
||||
@ -205,6 +215,12 @@ documentation for the formula it computes.
|
||||
"special_bonds"_special_bonds.html charmm
|
||||
"special_bonds"_special_bonds.html amber :ul
|
||||
|
||||
NOTE: For CHARMM, the newer {charmmfsw} or {charmmfsh} styles were
|
||||
released in March 2017. We recommend they be used instead of the
|
||||
older {charmm} styles. See discussion of the differences on the "pair
|
||||
charmm"_pair_charmm.html and "dihedral charmm"_dihedral_charmm.html
|
||||
doc pages.
|
||||
|
||||
DREIDING is a generic force field developed by the "Goddard
|
||||
group"_http://www.wag.caltech.edu at Caltech and is useful for
|
||||
predicting structures and dynamics of organic, biological and
|
||||
@ -434,6 +450,12 @@ computations between frozen atoms by using this command:
|
||||
|
||||
"neigh_modify"_neigh_modify.html exclude :ul
|
||||
|
||||
NOTE: By default, for 2d systems, granular particles are still modeled
|
||||
as 3d spheres, not 2d discs (circles), meaning their moment of inertia
|
||||
will be the same as in 3d. If you wish to model granular particles in
|
||||
2d as 2d discs, see the note on this topic in "Section
|
||||
6.2"_Section_howto.html#howto_2, where 2d simulations are disussed.
|
||||
|
||||
:line
|
||||
|
||||
6.7 TIP3P water model :link(howto_7),h4
|
||||
@ -451,7 +473,7 @@ atoms and the water molecule to run a rigid TIP3P-CHARMM model with a
|
||||
cutoff. The K values can be used if a flexible TIP3P model (without
|
||||
fix shake) is desired. If the LJ epsilon and sigma for HH and OH are
|
||||
set to 0.0, it corresponds to the original 1983 TIP3P model
|
||||
"(Jorgensen)"_#Jorgensen.
|
||||
"(Jorgensen)"_#Jorgensen1.
|
||||
|
||||
O mass = 15.9994
|
||||
H mass = 1.008
|
||||
@ -469,7 +491,7 @@ K of HOH angle = 55
|
||||
theta of HOH angle = 104.52 :all(b),p
|
||||
|
||||
These are the parameters to use for TIP3P with a long-range Coulombic
|
||||
solver (e.g. Ewald or PPPM in LAMMPS), see "(Price)"_#Price for
|
||||
solver (e.g. Ewald or PPPM in LAMMPS), see "(Price)"_#Price1 for
|
||||
details:
|
||||
|
||||
O mass = 15.9994
|
||||
@ -513,7 +535,7 @@ using the "fix shake"_fix_shake.html command.
|
||||
|
||||
These are the additional parameters (in real units) to set for O and H
|
||||
atoms and the water molecule to run a rigid TIP4P model with a cutoff
|
||||
"(Jorgensen)"_#Jorgensen. Note that the OM distance is specified in
|
||||
"(Jorgensen)"_#Jorgensen1. Note that the OM distance is specified in
|
||||
the "pair_style"_pair_style.html command, not as part of the pair
|
||||
coefficients.
|
||||
|
||||
@ -737,23 +759,14 @@ LAMMPS itself does not do visualization, but snapshots from LAMMPS
|
||||
simulations can be visualized (and analyzed) in a variety of ways.
|
||||
|
||||
LAMMPS snapshots are created by the "dump"_dump.html command which can
|
||||
create files in several formats. The native LAMMPS dump format is a
|
||||
create files in several formats. The native LAMMPS dump format is a
|
||||
text file (see "dump atom" or "dump custom") which can be visualized
|
||||
by the "xmovie"_Section_tools.html#xmovie program, included with the
|
||||
LAMMPS package. This produces simple, fast 2d projections of 3d
|
||||
systems, and can be useful for rapid debugging of simulation geometry
|
||||
and atom trajectories.
|
||||
|
||||
by several popular visualization tools. The "dump image"_dump_image.html
|
||||
and "dump movie"_dump_image.html styles can output internally rendered
|
||||
images and convert a sequence of them to a movie during the MD run.
|
||||
Several programs included with LAMMPS as auxiliary tools can convert
|
||||
native LAMMPS dump files to other formats. See the
|
||||
"Section 9"_Section_tools.html doc page for details. The first is
|
||||
the "ch2lmp tool"_Section_tools.html#charmm, which contains a
|
||||
lammps2pdb Perl script which converts LAMMPS dump files into PDB
|
||||
files. The second is the "lmp2arc tool"_Section_tools.html#arc which
|
||||
converts LAMMPS dump files into Accelrys' Insight MD program files.
|
||||
The third is the "lmp2cfg tool"_Section_tools.html#cfg which converts
|
||||
LAMMPS dump files into CFG files which can be read into the
|
||||
"AtomEye"_atomeye visualizer.
|
||||
between LAMMPS format files and other formats.
|
||||
See the "Section 9"_Section_tools.html doc page for details.
|
||||
|
||||
A Python-based toolkit distributed by our group can read native LAMMPS
|
||||
dump files, including custom dump files with additional columns of
|
||||
@ -766,22 +779,7 @@ RasMol visualization programs. Pizza.py has tools that do interactive
|
||||
3d OpenGL visualization and one that creates SVG images of dump file
|
||||
snapshots.
|
||||
|
||||
LAMMPS can create XYZ files directly (via "dump xyz") which is a
|
||||
simple text-based file format used by many visualization programs
|
||||
including "VMD"_vmd.
|
||||
|
||||
LAMMPS can create DCD files directly (via "dump dcd") which can be
|
||||
read by "VMD"_vmd in conjunction with a CHARMM PSF file. Using this
|
||||
form of output avoids the need to convert LAMMPS snapshots to PDB
|
||||
files. See the "dump"_dump.html command for more information on DCD
|
||||
files.
|
||||
|
||||
LAMMPS can create XTC files directly (via "dump xtc") which is GROMACS
|
||||
file format which can also be read by "VMD"_vmd for visualization.
|
||||
See the "dump"_dump.html command for more information on XTC files.
|
||||
|
||||
:link(pizza,http://www.sandia.gov/~sjplimp/pizza.html)
|
||||
:link(vmd,http://www.ks.uiuc.edu/Research/vmd)
|
||||
:link(ensight,http://www.ensight.com)
|
||||
:link(atomeye,http://mt.seas.upenn.edu/Archive/Graphics/A)
|
||||
|
||||
@ -1032,6 +1030,10 @@ profile consistent with the applied shear strain rate.
|
||||
An alternative method for calculating viscosities is provided via the
|
||||
"fix viscosity"_fix_viscosity.html command.
|
||||
|
||||
NEMD simulations can also be used to measure transport properties of a fluid
|
||||
through a pore or channel. Simulations of steady-state flow can be performed
|
||||
using the "fix flow/gauss"_fix_flow_gauss.html command.
|
||||
|
||||
:line
|
||||
|
||||
6.14 Finite-size spherical and aspherical particles :link(howto_14),h4
|
||||
@ -1684,7 +1686,7 @@ nph) and Berendsen:
|
||||
The "fix npt"_fix_nh.html commands include a Nose-Hoover thermostat
|
||||
and barostat. "Fix nph"_fix_nh.html is just a Nose/Hoover barostat;
|
||||
it does no thermostatting. Both "fix nph"_fix_nh.html and "fix
|
||||
press/bernendsen"_fix_press_berendsen.html can be used in conjunction
|
||||
press/berendsen"_fix_press_berendsen.html can be used in conjunction
|
||||
with any of the thermostatting fixes.
|
||||
|
||||
As with the thermostats, "fix npt"_fix_nh.html and "fix
|
||||
@ -1834,7 +1836,7 @@ the deformation must be chosen judiciously, and care must be taken to
|
||||
fully equilibrate the deformed cell before sampling the stress
|
||||
tensor. Another approach is to sample the triclinic cell fluctuations
|
||||
that occur in an NPT simulation. This method can also be slow to
|
||||
converge and requires careful post-processing "(Shinoda)"_#Shinoda
|
||||
converge and requires careful post-processing "(Shinoda)"_#Shinoda1
|
||||
|
||||
:line
|
||||
|
||||
@ -1957,9 +1959,12 @@ The extract functions return a pointer to various global or per-atom
|
||||
quantities stored in LAMMPS or to values calculated by a compute, fix,
|
||||
or variable. The pointer returned by the extract_global() function
|
||||
can be used as a permanent reference to a value which may change. For
|
||||
the other extract functions, the underlying storage may be reallocated
|
||||
as LAMMPS runs, so you need to re-call the function to assure a
|
||||
current pointer or returned value(s).
|
||||
the extract_atom() method, see the extract() method in the
|
||||
src/atom.cpp file for a list of valid per-atom properties. New names
|
||||
could easily be added if the property you want is not listed. For the
|
||||
other extract functions, the underlying storage may be reallocated as
|
||||
LAMMPS runs, so you need to re-call the function to assure a current
|
||||
pointer or returned value(s).
|
||||
|
||||
The lammps_reset_box() function resets the size and shape of the
|
||||
simulation box, e.g. as part of restoring a previously extracted and
|
||||
@ -1975,11 +1980,20 @@ keyword as a double precision value.
|
||||
The lammps_get_natoms() function returns the total number of atoms in
|
||||
the system and can be used by the caller to allocate space for the
|
||||
lammps_gather_atoms() and lammps_scatter_atoms() functions. The
|
||||
gather function collects atom info of the requested type (atom coords,
|
||||
types, forces, etc) from all processors, orders them by atom ID, and
|
||||
returns a full list to each calling processor. The scatter function
|
||||
does the inverse. It distributes the same kinds of values,
|
||||
gather function collects peratom info of the requested type (atom
|
||||
coords, types, forces, etc) from all processors, orders them by atom
|
||||
ID, and returns a full list to each calling processor. The scatter
|
||||
function does the inverse. It distributes the same peratom values,
|
||||
passed by the caller, to each atom owned by individual processors.
|
||||
Both methods are thus a means to extract or assign (overwrite) any
|
||||
peratom quantities within LAMMPS. See the extract() method in the
|
||||
src/atom.cpp file for a list of valid per-atom properties. New names
|
||||
could easily be added if the property you want is not listed.
|
||||
A special treatment is applied for accessing image flags via the
|
||||
"image" property. Image flags are stored in a packed format with all
|
||||
three image flags stored in a single integer. When signaling to access
|
||||
the image flags as 3 individual values per atom instead of 1, the data
|
||||
is transparently packed or unpacked by the library interface.
|
||||
|
||||
The lammps_create_atoms() function takes a list of N atoms as input
|
||||
with atom types and coords (required), an optionally atom IDs and
|
||||
@ -2899,14 +2913,14 @@ Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
||||
[(Mayo)] Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909
|
||||
(1990).
|
||||
|
||||
:link(Jorgensen)
|
||||
:link(Jorgensen1)
|
||||
[(Jorgensen)] Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
||||
Phys, 79, 926 (1983).
|
||||
|
||||
:link(Price)
|
||||
:link(Price1)
|
||||
[(Price)] Price and Brooks, J Chem Phys, 121, 10096 (2004).
|
||||
|
||||
:link(Shinoda)
|
||||
:link(Shinoda1)
|
||||
[(Shinoda)] Shinoda, Shiga, and Mikami, Phys Rev B, 69, 134103 (2004).
|
||||
|
||||
:link(MitchellFincham)
|
||||
|
||||
@ -338,15 +338,13 @@ dynamics timestepping, particularly if the computations are not
|
||||
parallel, so it is often better to leave such analysis to
|
||||
post-processing codes.
|
||||
|
||||
A very simple (yet fast) visualizer is provided with the LAMMPS
|
||||
package - see the "xmovie"_Section_tools.html#xmovie tool in "this
|
||||
section"_Section_tools.html. It creates xyz projection views of
|
||||
atomic coordinates and animates them. We find it very useful for
|
||||
debugging purposes. For high-quality visualization we recommend the
|
||||
For high-quality visualization we recommend the
|
||||
following packages:
|
||||
|
||||
"VMD"_http://www.ks.uiuc.edu/Research/vmd
|
||||
"AtomEye"_http://mt.seas.upenn.edu/Archive/Graphics/A
|
||||
"OVITO"_http://www.ovito.org/
|
||||
"ParaView"_http://www.paraview.org/
|
||||
"PyMol"_http://www.pymol.org
|
||||
"Raster3d"_http://www.bmsc.washington.edu/raster3d/raster3d.html
|
||||
"RasMol"_http://www.openrasmol.org :ul
|
||||
|
||||
@ -1140,7 +1140,7 @@ Package, Description, Author(s), Doc page, Example, Pic/movie, Library
|
||||
"USER-ATC"_#USER-ATC, atom-to-continuum coupling, Jones & Templeton & Zimmerman (1), "fix atc"_fix_atc.html, USER/atc, "atc"_atc, lib/atc
|
||||
"USER-AWPMD"_#USER-AWPMD, wave-packet MD, Ilya Valuev (JIHT), "pair_style awpmd/cut"_pair_awpmd.html, USER/awpmd, -, lib/awpmd
|
||||
"USER-CG-CMM"_#USER-CG-CMM, coarse-graining model, Axel Kohlmeyer (Temple U), "pair_style lj/sdk"_pair_sdk.html, USER/cg-cmm, "cg"_cg, -
|
||||
"USER-CGDNA"_#USER-CGDNA, coarse-grained DNA force fields, Oliver Henrich (U Edinburgh), src/USER-CGDNA/README, USER/cgdna, -, -
|
||||
"USER-CGDNA"_#USER-CGDNA, coarse-grained DNA force fields, Oliver Henrich (U Strathclyde Glasgow), src/USER-CGDNA/README, USER/cgdna, -, -
|
||||
"USER-COLVARS"_#USER-COLVARS, collective variables, Fiorin & Henin & Kohlmeyer (2), "fix colvars"_fix_colvars.html, USER/colvars, "colvars"_colvars, lib/colvars
|
||||
"USER-DIFFRACTION"_#USER-DIFFRACTION, virutal x-ray and electron diffraction, Shawn Coleman (ARL),"compute xrd"_compute_xrd.html, USER/diffraction, -, -
|
||||
"USER-DPD"_#USER-DPD, reactive dissipative particle dynamics (DPD), Larentzos & Mattox & Brennan (5), src/USER-DPD/README, USER/dpd, -, -
|
||||
@ -1288,25 +1288,29 @@ him directly if you have questions.
|
||||
USER-CGDNA package :link(USER-CGDNA),h5
|
||||
|
||||
Contents: The CGDNA package implements coarse-grained force fields for
|
||||
single- and double-stranded DNA. This is at the moment mainly the
|
||||
oxDNA model, developed by Doye, Louis and Ouldridge at the University
|
||||
single- and double-stranded DNA. These are at the moment mainly the
|
||||
oxDNA and oxDNA2 models, developed by Doye, Louis and Ouldridge at the University
|
||||
of Oxford. The package also contains Langevin-type rigid-body
|
||||
integrators with improved stability.
|
||||
|
||||
See these doc pages to get started:
|
||||
|
||||
"bond_style oxdna/fene"_bond_oxdna.html
|
||||
"bond_style oxdna2/fene"_bond_oxdna.html
|
||||
"pair_style oxdna/..."_pair_oxdna.html
|
||||
"pair_style oxdna2/..."_pair_oxdna2.html
|
||||
"fix nve/dotc/langevin"_fix_nve_dotc_langevin.html :ul
|
||||
|
||||
Supporting info: /src/USER-CGDNA/README, "bond_style
|
||||
oxdna/fene"_bond_oxdna.html, "pair_style
|
||||
oxdna/..."_pair_oxdna.html, "fix
|
||||
oxdna/fene"_bond_oxdna.html, "bond_style
|
||||
oxdna2/fene"_bond_oxdna.html, "pair_style
|
||||
oxdna/..."_pair_oxdna.html, "pair_style
|
||||
oxdna2/..."_pair_oxdna2.html, "fix
|
||||
nve/dotc/langevin"_fix_nve_dotc_langevin.html
|
||||
|
||||
Author: Oliver Henrich at the University of Edinburgh, UK (o.henrich
|
||||
at epcc.ed.ac.uk or ohenrich at ph.ed.ac.uk). Contact him directly if
|
||||
you have any questions.
|
||||
Author: Oliver Henrich at the University of Strathclyde, Glasgow, UK and
|
||||
University of Edinburgh (ohenrich@ph.ed.ac.uk).
|
||||
Contact him directly if you have any questions.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -594,10 +594,10 @@ flag = lmp.set_variable(name,value) # set existing named string-style vari
|
||||
value = lmp.get_thermo(name) # return current value of a thermo keyword
|
||||
|
||||
natoms = lmp.get_natoms() # total # of atoms as int
|
||||
data = lmp.gather_atoms(name,type,count) # return atom attribute of all atoms gathered into data, ordered by atom ID
|
||||
data = lmp.gather_atoms(name,type,count) # return per-atom property of all atoms gathered into data, ordered by atom ID
|
||||
# name = "x", "charge", "type", etc
|
||||
# count = # of per-atom values, 1 or 3, etc
|
||||
lmp.scatter_atoms(name,type,count,data) # scatter atom attribute of all atoms from data, ordered by atom ID
|
||||
lmp.scatter_atoms(name,type,count,data) # scatter per-atom property to all atoms from data, ordered by atom ID
|
||||
# name = "x", "charge", "type", etc
|
||||
# count = # of per-atom values, 1 or 3, etc :pre
|
||||
|
||||
@ -656,10 +656,10 @@ argument.
|
||||
For extract_atom(), a pointer to internal LAMMPS atom-based data is
|
||||
returned, which you can use via normal Python subscripting. See the
|
||||
extract() method in the src/atom.cpp file for a list of valid names.
|
||||
Again, new names could easily be added. A pointer to a vector of
|
||||
doubles or integers, or a pointer to an array of doubles (double **)
|
||||
or integers (int **) is returned. You need to specify the appropriate
|
||||
data type via the type argument.
|
||||
Again, new names could easily be added if the property you want is not
|
||||
listed. A pointer to a vector of doubles or integers, or a pointer to
|
||||
an array of doubles (double **) or integers (int **) is returned. You
|
||||
need to specify the appropriate data type via the type argument.
|
||||
|
||||
For extract_compute() and extract_fix(), the global, per-atom, or
|
||||
local data calculated by the compute or fix can be accessed. What is
|
||||
@ -689,12 +689,21 @@ specified group.
|
||||
The get_natoms() method returns the total number of atoms in the
|
||||
simulation, as an int.
|
||||
|
||||
The gather_atoms() method returns a ctypes vector of ints or doubles
|
||||
as specified by type, of length count*natoms, for the property of all
|
||||
the atoms in the simulation specified by name, ordered by count and
|
||||
then by atom ID. The vector can be used via normal Python
|
||||
subscripting. If atom IDs are not consecutively ordered within
|
||||
LAMMPS, a None is returned as indication of an error.
|
||||
The gather_atoms() method allows any per-atom property (coordinates,
|
||||
velocities, etc) to be extracted from LAMMPS. It returns a ctypes
|
||||
vector of ints or doubles as specified by type, of length
|
||||
count*natoms, for the named property for all atoms in the simulation.
|
||||
The data is ordered by count and then by atom ID. See the extract()
|
||||
method in the src/atom.cpp file for a list of valid names. Again, new
|
||||
names could easily be added if the property you want is missing. The
|
||||
vector can be used via normal Python subscripting. If atom IDs are
|
||||
not consecutively ordered within LAMMPS, a None is returned as
|
||||
indication of an error. A special treatment is applied for image flags
|
||||
stored in the "image" property. All three image flags are stored in
|
||||
a packed format in a single integer, so count would be 1 to retrieve
|
||||
that integer, however also a count value of 3 can be used and then
|
||||
the image flags will be unpacked into 3 individual integers, ordered
|
||||
in a similar fashion as coordinates.
|
||||
|
||||
Note that the data structure gather_atoms("x") returns is different
|
||||
from the data structure returned by extract_atom("x") in four ways.
|
||||
@ -711,14 +720,22 @@ assigning a new values to the extract_atom() array. To do this with
|
||||
the gather_atoms() vector, you need to change values in the vector,
|
||||
then invoke the scatter_atoms() method.
|
||||
|
||||
The scatter_atoms() method takes a vector of ints or doubles as
|
||||
specified by type, of length count*natoms, for the property of all the
|
||||
atoms in the simulation specified by name, ordered by bount and then
|
||||
by atom ID. It uses the vector of data to overwrite the corresponding
|
||||
properties for each atom inside LAMMPS. This requires LAMMPS to have
|
||||
its "map" option enabled; see the "atom_modify"_atom_modify.html
|
||||
command for details. If it is not, or if atom IDs are not
|
||||
consecutively ordered, no coordinates are reset.
|
||||
The scatter_atoms() method allows any per-atom property (coordinates,
|
||||
velocities, etc) to be inserted into LAMMPS, overwriting the current
|
||||
property. It takes a vector of ints or doubles as specified by type,
|
||||
of length count*natoms, for the named property for all atoms in the
|
||||
simulation. The data should be ordered by count and then by atom ID.
|
||||
See the extract() method in the src/atom.cpp file for a list of valid
|
||||
names. Again, new names could easily be added if the property you
|
||||
want is missing. It uses the vector of data to overwrite the
|
||||
corresponding properties for each atom inside LAMMPS. This requires
|
||||
LAMMPS to have its "map" option enabled; see the
|
||||
"atom_modify"_atom_modify.html command for details. If it is not, or
|
||||
if atom IDs are not consecutively ordered, no coordinates are reset.
|
||||
Similar as for gather_atoms() a special treatment is applied for image
|
||||
flags, which can be provided in packed (count = 1) or unpacked (count = 3)
|
||||
format and in the latter case, they will be packed before applied to
|
||||
atoms.
|
||||
|
||||
The array of coordinates passed to scatter_atoms() must be a ctypes
|
||||
vector of ints or doubles, allocated and initialized something like
|
||||
@ -734,7 +751,7 @@ x\[2\] = z coord of atom with ID 1
|
||||
x\[3\] = x coord of atom with ID 2
|
||||
...
|
||||
x\[n3-1\] = z coord of atom with ID natoms
|
||||
lmp.scatter_coords("x",1,3,x) :pre
|
||||
lmp.scatter_atoms("x",1,3,x) :pre
|
||||
|
||||
Alternatively, you can just change values in the vector returned by
|
||||
gather_atoms("x",1,3), since it is a ctypes vector of doubles.
|
||||
|
||||
@ -12,9 +12,12 @@ Section"_Section_modify.html :c
|
||||
|
||||
LAMMPS is designed to be a computational kernel for performing
|
||||
molecular dynamics computations. Additional pre- and post-processing
|
||||
steps are often necessary to setup and analyze a simulation. A few
|
||||
additional tools are provided with the LAMMPS distribution and are
|
||||
described in this section.
|
||||
steps are often necessary to setup and analyze a simulation. A
|
||||
list of such tools can be found on the LAMMPS home page
|
||||
at "http://lammps.sandia.gov/prepost.html"_http://lammps.sandia.gov/prepost.html
|
||||
|
||||
A few additional tools are provided with the LAMMPS distribution
|
||||
and are described in this section.
|
||||
|
||||
Our group has also written and released a separate toolkit called
|
||||
"Pizza.py"_pizza which provides tools for doing setup, analysis,
|
||||
@ -36,16 +39,16 @@ authors.
|
||||
The source code for each of these codes is in the tools sub-directory
|
||||
of the LAMMPS distribution. There is a Makefile (which you may need
|
||||
to edit for your platform) which will build several of the tools which
|
||||
reside in that directory. Some of them are larger packages in their
|
||||
own sub-directories with their own Makefiles.
|
||||
reside in that directory. Most of them are larger packages in their
|
||||
own sub-directories with their own Makefiles and/or README files.
|
||||
|
||||
"amber2lmp"_#amber
|
||||
"binary2txt"_#binary
|
||||
"ch2lmp"_#charmm
|
||||
"chain"_#chain
|
||||
"colvars"_#colvars
|
||||
"createatoms"_#create
|
||||
"data2xmovie"_#data
|
||||
"createatoms"_#createatoms
|
||||
"drude"_#drude
|
||||
"eam database"_#eamdb
|
||||
"eam generate"_#eamgn
|
||||
"eff"_#eff
|
||||
@ -56,20 +59,18 @@ own sub-directories with their own Makefiles.
|
||||
"kate"_#kate
|
||||
"lmp2arc"_#arc
|
||||
"lmp2cfg"_#cfg
|
||||
"lmp2vmd"_#vmd
|
||||
"matlab"_#matlab
|
||||
"micelle2d"_#micelle
|
||||
"moltemplate"_#moltemplate
|
||||
"msi2lmp"_#msi
|
||||
"phonon"_#phonon
|
||||
"polymer bonding"_#polybond
|
||||
"polybond"_#polybond
|
||||
"pymol_asphere"_#pymol
|
||||
"python"_#pythontools
|
||||
"reax"_#reax_tool
|
||||
"restart2data"_#restart
|
||||
"smd"_#smd
|
||||
"vim"_#vim
|
||||
"xmgrace"_#xmgrace
|
||||
"xmovie"_#xmovie :ul
|
||||
|
||||
:line
|
||||
|
||||
@ -158,7 +159,7 @@ gmail.com) at ICTP, Italy.
|
||||
|
||||
:line
|
||||
|
||||
createatoms tool :h4,link(create)
|
||||
createatoms tool :h4,link(createatoms)
|
||||
|
||||
The tools/createatoms directory contains a Fortran program called
|
||||
createAtoms.f which can generate a variety of interesting crystal
|
||||
@ -171,16 +172,16 @@ The tool is authored by Xiaowang Zhou (Sandia), xzhou at sandia.gov.
|
||||
|
||||
:line
|
||||
|
||||
data2xmovie tool :h4,link(data)
|
||||
drude tool :h4,link(drude)
|
||||
|
||||
The file data2xmovie.c converts a LAMMPS data file into a snapshot
|
||||
suitable for visualizing with the "xmovie"_#xmovie tool, as if it had
|
||||
been output with a dump command from LAMMPS itself. The syntax for
|
||||
running the tool is
|
||||
The tools/drude directory contains a Python script called
|
||||
polarizer.py which can add Drude oscillators to a LAMMPS
|
||||
data file in the required format.
|
||||
|
||||
data2xmovie \[options\] < infile > outfile :pre
|
||||
See the header of the polarizer.py file for details.
|
||||
|
||||
See the top of the data2xmovie.c file for a discussion of the options.
|
||||
The tool is authored by Agilio Padua and Alain Dequidt: agilio.padua
|
||||
at univ-bpclermont.fr, alain.dequidt at univ-bpclermont.fr
|
||||
|
||||
:line
|
||||
|
||||
@ -317,18 +318,6 @@ This tool was written by Ara Kooser at Sandia (askoose at sandia.gov).
|
||||
|
||||
:line
|
||||
|
||||
lmp2vmd tool :h4,link(vmd)
|
||||
|
||||
The lmp2vmd sub-directory contains a README.txt file that describes
|
||||
details of scripts and plugin support within the "VMD
|
||||
package"_http://www.ks.uiuc.edu/Research/vmd for visualizing LAMMPS
|
||||
dump files.
|
||||
|
||||
The VMD plugins and other supporting scripts were written by Axel
|
||||
Kohlmeyer (akohlmey at cmm.chem.upenn.edu) at U Penn.
|
||||
|
||||
:line
|
||||
|
||||
matlab tool :h4,link(matlab)
|
||||
|
||||
The matlab sub-directory contains several "MATLAB"_matlabhome scripts for
|
||||
@ -381,16 +370,14 @@ supports it. It has its own WWW page at
|
||||
msi2lmp tool :h4,link(msi)
|
||||
|
||||
The msi2lmp sub-directory contains a tool for creating LAMMPS input
|
||||
data files from Accelrys' Insight MD code (formerly MSI/Biosym and
|
||||
its Discover MD code). See the README file for more information.
|
||||
data files from BIOVIA's Materias Studio files (formerly Accelrys'
|
||||
Insight MD code, formerly MSI/Biosym and its Discover MD code).
|
||||
|
||||
This tool was written by John Carpenter (Cray), Michael Peachey
|
||||
(Cray), and Steve Lustig (Dupont). John is now at the Mayo Clinic
|
||||
(jec at mayo.edu), but still fields questions about the tool.
|
||||
(Cray), and Steve Lustig (Dupont). Several people contributed changes
|
||||
to remove bugs and adapt its output to changes in LAMMPS.
|
||||
|
||||
This tool may be out-of-date with respect to the current LAMMPS and
|
||||
Insight versions. Since we don't use it at Sandia, you'll need to
|
||||
experiment with it yourself.
|
||||
See the README file for more information.
|
||||
|
||||
:line
|
||||
|
||||
@ -409,7 +396,7 @@ University.
|
||||
|
||||
:line
|
||||
|
||||
polymer bonding tool :h4,link(polybond)
|
||||
polybond tool :h4,link(polybond)
|
||||
|
||||
The polybond sub-directory contains a Python-based tool useful for
|
||||
performing "programmable polymer bonding". The Python file
|
||||
@ -468,48 +455,19 @@ These tools were written by Aidan Thompson at Sandia.
|
||||
|
||||
:line
|
||||
|
||||
restart2data tool :h4,link(restart)
|
||||
smd tool :h4,link(smd)
|
||||
|
||||
NOTE: This tool is now obsolete and is not included in the current
|
||||
LAMMPS distribution. This is because there is now a
|
||||
"write_data"_write_data.html command, which can create a data file
|
||||
from within an input script. Running LAMMPS with the "-r"
|
||||
"command-line switch"_Section_start.html#start_7 as follows:
|
||||
The smd sub-directory contains a C++ file dump2vtk_tris.cpp and
|
||||
Makefile which can be compiled and used to convert triangle output
|
||||
files created by the Smooth-Mach Dynamics (USER-SMD) package into a
|
||||
VTK-compatible unstructured grid file. It could then be read in and
|
||||
visualized by VTK.
|
||||
|
||||
lmp_g++ -r restartfile datafile
|
||||
See the header of dump2vtk.cpp for more details.
|
||||
|
||||
is the same as running a 2-line input script:
|
||||
|
||||
read_restart restartfile
|
||||
write_data datafile
|
||||
|
||||
which will produce the same data file that the restart2data tool used
|
||||
to create. The following information is included in case you have an
|
||||
older version of LAMMPS which still includes the restart2data tool.
|
||||
|
||||
The file restart2data.cpp converts a binary LAMMPS restart file into
|
||||
an ASCII data file. The syntax for running the tool is
|
||||
|
||||
restart2data restart-file data-file (input-file) :pre
|
||||
|
||||
Input-file is optional and if specified will contain LAMMPS input
|
||||
commands for the masses and force field parameters, instead of putting
|
||||
those in the data-file. Only a few force field styles currently
|
||||
support this option.
|
||||
|
||||
This tool must be compiled on a platform that can read the binary file
|
||||
created by a LAMMPS run, since binary files are not compatible across
|
||||
all platforms.
|
||||
|
||||
Note that a text data file has less precision than a binary restart
|
||||
file. Hence, continuing a run from a converted data file will
|
||||
typically not conform as closely to a previous run as will restarting
|
||||
from a binary restart file.
|
||||
|
||||
If a "%" appears in the specified restart-file, the tool expects a set
|
||||
of multiple files to exist. See the "restart"_restart.html and
|
||||
"write_restart"_write_restart.html commands for info on how such sets
|
||||
of files are written by LAMMPS, and how the files are named.
|
||||
This tool was written by the USER-SMD package author, Georg
|
||||
Ganzenmuller at the Fraunhofer-Institute for High-Speed Dynamics,
|
||||
Ernst Mach Institute in Germany (georg.ganzenmueller at emi.fhg.de).
|
||||
|
||||
:line
|
||||
|
||||
@ -537,32 +495,3 @@ See the README file for details.
|
||||
|
||||
These files were provided by Vikas Varshney (vv0210 at gmail.com)
|
||||
|
||||
:line
|
||||
|
||||
xmovie tool :h4,link(xmovie)
|
||||
|
||||
The xmovie tool is an X-based visualization package that can read
|
||||
LAMMPS dump files and animate them. It is in its own sub-directory
|
||||
with the tools directory. You may need to modify its Makefile so that
|
||||
it can find the appropriate X libraries to link against.
|
||||
|
||||
The syntax for running xmovie is
|
||||
|
||||
xmovie \[options\] dump.file1 dump.file2 ... :pre
|
||||
|
||||
If you just type "xmovie" you will see a list of options. Note that
|
||||
by default, LAMMPS dump files are in scaled coordinates, so you
|
||||
typically need to use the -scale option with xmovie. When xmovie runs
|
||||
it opens a visualization window and a control window. The control
|
||||
options are straightforward to use.
|
||||
|
||||
Xmovie was mostly written by Mike Uttormark (U Wisconsin) while he
|
||||
spent a summer at Sandia. It displays 2d projections of a 3d domain.
|
||||
While simple in design, it is an amazingly fast program that can
|
||||
render large numbers of atoms very quickly. It's a useful tool for
|
||||
debugging LAMMPS input and output and making sure your simulation is
|
||||
doing what you think it should. The animations on the Examples page
|
||||
of the "LAMMPS WWW site"_lws were created with xmovie.
|
||||
|
||||
I've lost contact with Mike, so I hope he's comfortable with us
|
||||
distributing his great tool!
|
||||
|
||||
@ -464,7 +464,7 @@ supported.
|
||||
|
||||
[References:]
|
||||
|
||||
Brown, W.M., Carrillo, J.-M.Y., Mishra, B., Gavhane, N., Thakker, F.M., De Kraker, A.R., Yamada, M., Ang, J.A., Plimpton, S.J., “Optimizing Classical Molecular Dynamics in LAMMPS,” in Intel Xeon Phi Processor High Performance Programming: Knights Landing Edition, J. Jeffers, J. Reinders, A. Sodani, Eds. Morgan Kaufmann. :ulb,l
|
||||
Brown, W.M., Carrillo, J.-M.Y., Mishra, B., Gavhane, N., Thakker, F.M., De Kraker, A.R., Yamada, M., Ang, J.A., Plimpton, S.J., "Optimizing Classical Molecular Dynamics in LAMMPS," in Intel Xeon Phi Processor High Performance Programming: Knights Landing Edition, J. Jeffers, J. Reinders, A. Sodani, Eds. Morgan Kaufmann. :ulb,l
|
||||
|
||||
Brown, W. M., Semin, A., Hebenstreit, M., Khvostov, S., Raman, K., Plimpton, S.J. Increasing Molecular Dynamics Simulation Rates with an 8-Fold Increase in Electrical Power Efficiency. 2016 International Conference for High Performance Computing. In press. :l
|
||||
|
||||
|
||||
@ -41,7 +41,7 @@ angle.
|
||||
|
||||
The torque on the dipole can be obtained by differentiating the
|
||||
potential using the 'chain rule' as in appendix C.3 of
|
||||
"(Allen)"_#Allen:
|
||||
"(Allen)"_#Allen1:
|
||||
|
||||
:c,image(Eqs/angle_dipole_torque.jpg)
|
||||
|
||||
@ -121,6 +121,6 @@ This angle style should not be used with SHAKE.
|
||||
[(Orsi)] Orsi & Essex, The ELBA force field for coarse-grain modeling of
|
||||
lipid membranes, PloS ONE 6(12): e28637, 2011.
|
||||
|
||||
:link(Allen)
|
||||
:link(Allen1)
|
||||
[(Allen)] Allen & Tildesley, Computer Simulation of Liquids,
|
||||
Clarendon Press, Oxford, 1987.
|
||||
|
||||
@ -110,7 +110,12 @@ basis.
|
||||
For the {sphere} style, the particles are spheres and each stores a
|
||||
per-particle diameter and mass. If the diameter > 0.0, the particle
|
||||
is a finite-size sphere. If the diameter = 0.0, it is a point
|
||||
particle.
|
||||
particle. Note that by use of the {disc} keyword with the "fix
|
||||
nve/sphere"_fix_nve_sphere.html, "fix nvt/sphere"_fix_nvt_sphere.html,
|
||||
"fix nph/sphere"_fix_nph_sphere.html, "fix
|
||||
npt/sphere"_fix_npt_sphere.html commands, spheres can be effectively
|
||||
treated as 2d discs for a 2d simulation if desired. See also the "set
|
||||
density/disc"_set.html command.
|
||||
|
||||
For the {ellipsoid} style, the particles are ellipsoids and each
|
||||
stores a flag which indicates whether it is a finite-size ellipsoid or
|
||||
|
||||
@ -286,24 +286,32 @@ above. It performs a recursive coordinate bisectioning (RCB) of the
|
||||
simulation domain. The basic idea is as follows.
|
||||
|
||||
The simulation domain is cut into 2 boxes by an axis-aligned cut in
|
||||
the longest dimension, leaving one new box on either side of the cut.
|
||||
All the processors are also partitioned into 2 groups, half assigned
|
||||
to the box on the lower side of the cut, and half to the box on the
|
||||
upper side. (If the processor count is odd, one side gets an extra
|
||||
processor.) The cut is positioned so that the number of particles in
|
||||
the lower box is exactly the number that the processors assigned to
|
||||
that box should own for load balance to be perfect. This also makes
|
||||
load balance for the upper box perfect. The positioning is done
|
||||
iteratively, by a bisectioning method. Note that counting particles
|
||||
on either side of the cut requires communication between all
|
||||
processors at each iteration.
|
||||
one of the dimensions, leaving one new sub-box on either side of the
|
||||
cut. Which dimension is chosen for the cut depends on the particle
|
||||
(weight) distribution within the parent box. Normally the longest
|
||||
dimension of the box is cut, but if all (or most) of the particles are
|
||||
at one end of the box, a cut may be performed in another dimension to
|
||||
induce sub-boxes that are more cube-ish (3d) or square-ish (2d) in
|
||||
shape.
|
||||
|
||||
After the cut is made, all the processors are also partitioned into 2
|
||||
groups, half assigned to the box on the lower side of the cut, and
|
||||
half to the box on the upper side. (If the processor count is odd,
|
||||
one side gets an extra processor.) The cut is positioned so that the
|
||||
number of (weighted) particles in the lower box is exactly the number
|
||||
that the processors assigned to that box should own for load balance
|
||||
to be perfect. This also makes load balance for the upper box
|
||||
perfect. The positioning of the cut is done iteratively, by a
|
||||
bisectioning method (median search). Note that counting particles on
|
||||
either side of the cut requires communication between all processors
|
||||
at each iteration.
|
||||
|
||||
That is the procedure for the first cut. Subsequent cuts are made
|
||||
recursively, in exactly the same manner. The subset of processors
|
||||
assigned to each box make a new cut in the longest dimension of that
|
||||
box, splitting the box, the subset of processors, and the particles
|
||||
in the box in two. The recursion continues until every processor is
|
||||
assigned a sub-box of the entire simulation domain, and owns the
|
||||
assigned to each box make a new cut in one dimension of that box,
|
||||
splitting the box, the subset of processors, and the particles in the
|
||||
box in two. The recursion continues until every processor is assigned
|
||||
a sub-box of the entire simulation domain, and owns the (weighted)
|
||||
particles in that sub-box.
|
||||
|
||||
:line
|
||||
|
||||
@ -7,19 +7,24 @@
|
||||
:line
|
||||
|
||||
bond_style oxdna/fene command :h3
|
||||
bond_style oxdna2/fene command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
bond_style oxdna/fene :pre
|
||||
bond_style oxdna2/fene :pre
|
||||
|
||||
[Examples:]
|
||||
|
||||
bond_style oxdna/fene
|
||||
bond_coeff * 2.0 0.25 0.7525 :pre
|
||||
|
||||
bond_style oxdna2/fene
|
||||
bond_coeff * 2.0 0.25 0.7564 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The {oxdna/fene} bond style uses the potential
|
||||
The {oxdna/fene} and {oxdna2/fene} bond styles use the potential
|
||||
|
||||
:c,image(Eqs/bond_oxdna_fene.jpg)
|
||||
|
||||
@ -36,13 +41,16 @@ epsilon (energy)
|
||||
Delta (distance)
|
||||
r0 (distance) :ul
|
||||
|
||||
NOTE: This bond style has to be used together with the corresponding oxDNA pair styles
|
||||
NOTE: The oxDNA bond style has to be used together with the corresponding oxDNA pair styles
|
||||
for excluded volume interaction {oxdna/excv}, stacking {oxdna/stk}, cross-stacking {oxdna/xstk}
|
||||
and coaxial stacking interaction {oxdna/coaxstk} as well as hydrogen-bonding interaction {oxdna/hbond} (see also documentation of
|
||||
"pair_style oxdna/excv"_pair_oxdna.html). The coefficients
|
||||
"pair_style oxdna/excv"_pair_oxdna.html). For the oxDNA2 "(Snodin)"_#oxdna2 bond style the analogous pair styles and an additional Debye-Hueckel pair
|
||||
style {oxdna2/dh} have to be defined.
|
||||
|
||||
The coefficients
|
||||
in the above example have to be kept fixed and cannot be changed without reparametrizing the entire model.
|
||||
|
||||
Example input and data files can be found in examples/USER/cgdna/examples/duplex1/ and /duplex2/.
|
||||
Example input and data files for DNA duplexes can be found in examples/USER/cgdna/examples/oxDNA/ and /oxDNA2/.
|
||||
A simple python setup tool which creates single straight or helical DNA strands,
|
||||
DNA duplexes or arrays of DNA duplexes can be found in examples/USER/cgdna/util/.
|
||||
A technical report with more information on the model, the structure of the input file,
|
||||
@ -60,7 +68,7 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"pair_style oxdna/excv"_pair_oxdna.html, "fix nve/dotc/langevin"_fix_nve_dotc_langevin.html, "bond_coeff"_bond_coeff.html
|
||||
"pair_style oxdna/excv"_pair_oxdna.html, "pair_style oxdna2/excv"_pair_oxdna2.html, "fix nve/dotc/langevin"_fix_nve_dotc_langevin.html, "bond_coeff"_bond_coeff.html
|
||||
|
||||
[Default:] none
|
||||
|
||||
@ -68,3 +76,6 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages.
|
||||
|
||||
:link(oxdna_fene)
|
||||
[(Ouldridge)] T.E. Ouldridge, A.A. Louis, J.P.K. Doye, J. Chem. Phys. 134, 085101 (2011).
|
||||
|
||||
:link(oxdna2)
|
||||
[(Snodin)] B.E. Snodin, F. Randisi, M. Mosayebi, et al., J. Chem. Phys. 142, 234901 (2015).
|
||||
|
||||
@ -16,6 +16,7 @@ Bond Styles :h1
|
||||
bond_none
|
||||
bond_nonlinear
|
||||
bond_oxdna
|
||||
bond_oxdna2
|
||||
bond_quartic
|
||||
bond_table
|
||||
bond_zero
|
||||
|
||||
@ -101,11 +101,11 @@ Instead you could do something like this, assuming the simulation box
|
||||
is non-periodic and atoms extend from 0 to 20 in all dimensions:
|
||||
|
||||
change_box all x final -10 20
|
||||
create_atoms 1 single -5 5 5 # this will fail to insert an atom :pre
|
||||
create_atoms 1 single -5 5 5 # this will fail to insert an atom :pre
|
||||
|
||||
change_box all x final -10 20 boundary f s s
|
||||
create_atoms 1 single -5 5 5
|
||||
change_box boundary s s s # this will work :pre
|
||||
change_box all boundary s s s # this will work :pre
|
||||
|
||||
NOTE: Unlike the earlier "displace_box" version of this command, atom
|
||||
remapping is NOT performed by default. This command allows remapping
|
||||
|
||||
@ -148,7 +148,9 @@ described further below where the keywords are discussed.
|
||||
The {binning} styles perform a spatial binning of atoms, and assign an
|
||||
atom the chunk ID corresponding to the bin number it is in. {Nchunk}
|
||||
is set to the number of bins, which can change if the simulation box
|
||||
size changes.
|
||||
size changes. This also depends on the setting of the {units}
|
||||
keyword; e.g. for {reduced} units the number of chunks may not change
|
||||
even if the box size does.
|
||||
|
||||
The {bin/1d}, {bin/2d}, and {bin/3d} styles define bins as 1d layers
|
||||
(slabs), 2d pencils, or 3d boxes. The {dim}, {origin}, and {delta}
|
||||
|
||||
@ -64,7 +64,7 @@ defined by the orientational order parameter calculated by the
|
||||
"compute orientorder/atom"_compute_orientorder_atom.html command.
|
||||
This {cstyle} thus allows one to apply the ten Wolde's criterion to
|
||||
identify crystal-like atoms in a system, as discussed in "ten
|
||||
Wolde"_#tenWolde.
|
||||
Wolde"_#tenWolde1.
|
||||
|
||||
The ID of the previously specified "compute
|
||||
orientorder/atom"_compute_orientorder/atom command is specified as
|
||||
@ -127,6 +127,6 @@ explained above.
|
||||
|
||||
:line
|
||||
|
||||
:link(tenWolde)
|
||||
:link(tenWolde1)
|
||||
[(tenWolde)] P. R. ten Wolde, M. J. Ruiz-Montero, D. Frenkel,
|
||||
J. Chem. Phys. 104, 9932 (1996).
|
||||
|
||||
@ -64,7 +64,7 @@ command.
|
||||
|
||||
:line
|
||||
|
||||
:link(Larentzos)
|
||||
:link(Larentzos1)
|
||||
[(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
|
||||
|
||||
@ -59,7 +59,7 @@ command.
|
||||
|
||||
:line
|
||||
|
||||
:link(Larentzos)
|
||||
:link(Larentzos2)
|
||||
[(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
|
||||
|
||||
@ -14,27 +14,29 @@ compute_modify compute-ID keyword value ... :pre
|
||||
|
||||
compute-ID = ID of the compute to modify :ulb,l
|
||||
one or more keyword/value pairs may be listed :l
|
||||
keyword = {extra} or {dynamic} :l
|
||||
{extra} value = N
|
||||
keyword = {extra/dof} or {extra} or {dynamic/dof} or {dynamic} :l
|
||||
{extra/dof} value = N
|
||||
N = # of extra degrees of freedom to subtract
|
||||
{dynamic} value = {yes} or {no}
|
||||
yes/no = do or do not recompute the number of atoms contributing to the temperature :pre
|
||||
{extra} syntax is identical to {extra/dof}, will be disabled at some point
|
||||
{dynamic/dof} value = {yes} or {no}
|
||||
yes/no = do or do not recompute the number of degrees of freedom (DOF) contributing to the temperature
|
||||
{dynamic} syntax is identical to {dynamic/dof}, will be disabled at some point :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
compute_modify myTemp extra 0
|
||||
compute_modify newtemp dynamic yes extra 600 :pre
|
||||
compute_modify myTemp extra/dof 0
|
||||
compute_modify newtemp dynamic/dof yes extra/dof 600 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Modify one or more parameters of a previously defined compute. Not
|
||||
all compute styles support all parameters.
|
||||
|
||||
The {extra} keyword refers to how many degrees-of-freedom are
|
||||
subtracted (typically from 3N) as a normalizing factor in a
|
||||
temperature computation. Only computes that compute a temperature use
|
||||
this option. The default is 2 or 3 for "2d or 3d
|
||||
The {extra/dof} or {extra} keyword refers to how many
|
||||
degrees-of-freedom are subtracted (typically from 3N) as a normalizing
|
||||
factor in a temperature computation. Only computes that compute a
|
||||
temperature use this option. The default is 2 or 3 for "2d or 3d
|
||||
systems"_dimension.html which is a correction factor for an ensemble
|
||||
of velocities with zero total linear momentum. For compute
|
||||
temp/partial, if one or more velocity components are excluded, the
|
||||
@ -43,14 +45,21 @@ number for the {extra} parameter if you need to add
|
||||
degrees-of-freedom. See the "compute
|
||||
temp/asphere"_compute_temp_asphere.html command for an example.
|
||||
|
||||
The {dynamic} keyword determines whether the number of atoms N in the
|
||||
compute group is re-computed each time a temperature is computed.
|
||||
Only compute styles that calculate a temperature use this option. By
|
||||
default, N is assumed to be constant. If you are adding atoms to the
|
||||
system (see the "fix pour"_fix_pour.html or "fix
|
||||
deposit"_fix_deposit.html commands) or expect atoms to be lost
|
||||
(e.g. due to evaporation), then this option should be used to insure
|
||||
the temperature is correctly normalized.
|
||||
The {dynamic/dof} or {dynamic} keyword determines whether the number
|
||||
of atoms N in the compute group and their associated degrees of
|
||||
freedom are re-computed each time a temperature is computed. Only
|
||||
compute styles that calculate a temperature use this option. By
|
||||
default, N and their DOF are assumed to be constant. If you are
|
||||
adding atoms or molecules to the system (see the "fix
|
||||
pour"_fix_pour.html, "fix deposit"_fix_deposit.html, and "fix
|
||||
gcmc"_fix_gcmc.html commands) or expect atoms or molecules to be lost
|
||||
(e.g. due to exiting the simulation box or via "fix
|
||||
evaporate"_fix_evaporate.html), then this option should be used to
|
||||
insure the temperature is correctly normalized.
|
||||
|
||||
NOTE: The {extra} and {dynamic} keywords should not be used as they
|
||||
are deprecated (March 2017) and will eventually be disabled. Instead,
|
||||
use the equivalent {extra/dof} and {dynamic/dof} keywords.
|
||||
|
||||
[Restrictions:] none
|
||||
|
||||
@ -60,5 +69,5 @@ the temperature is correctly normalized.
|
||||
|
||||
[Default:]
|
||||
|
||||
The option defaults are extra = 2 or 3 for 2d or 3d systems and
|
||||
dynamic = no.
|
||||
The option defaults are extra/dof = 2 or 3 for 2d or 3d systems and
|
||||
dynamic/dof = no.
|
||||
|
||||
@ -78,7 +78,7 @@ normalized complex vector {Ybar_lm} of degree {ldegree}, which must be
|
||||
explicitly included in the keyword {degrees}. This option can be used
|
||||
in conjunction with "compute coord_atom"_compute_coord_atom.html to
|
||||
calculate the ten Wolde's criterion to identify crystal-like
|
||||
particles, as discussed in "ten Wolde"_#tenWolde.
|
||||
particles, as discussed in "ten Wolde"_#tenWolde2.
|
||||
|
||||
The value of {Ql} is set to zero for atoms not in the
|
||||
specified compute group, as well as for atoms that have less than
|
||||
@ -143,6 +143,6 @@ Phys. Rev. B 28, 784 (1983).
|
||||
[(Mickel)] W. Mickel, S. C. Kapfer, G. E. Schroeder-Turkand, K. Mecke,
|
||||
J. Chem. Phys. 138, 044501 (2013).
|
||||
|
||||
:link(tenWolde)
|
||||
:link(tenWolde2)
|
||||
[(tenWolde)] P. R. ten Wolde, M. J. Ruiz-Montero, D. Frenkel,
|
||||
J. Chem. Phys. 104, 9932 (1996).
|
||||
|
||||
@ -49,7 +49,7 @@ pairwise interactions between 1-4 atoms. The energy contribution of
|
||||
these terms is included in the pair energy, not the dihedral energy.
|
||||
|
||||
The KSpace contribution is calculated using the method in
|
||||
"(Heyes)"_#Heyes for the Ewald method and a related method for PPPM,
|
||||
"(Heyes)"_#Heyes1 for the Ewald method and a related method for PPPM,
|
||||
as specified by the "kspace_style pppm"_kspace_style.html command.
|
||||
For PPPM, the calculation requires 1 extra FFT each timestep that
|
||||
per-atom energy is calculated. This "document"_PDF/kspace.pdf
|
||||
@ -97,5 +97,5 @@ stress/atom"_compute_stress_atom.html
|
||||
|
||||
:line
|
||||
|
||||
:link(Heyes)
|
||||
:link(Heyes1)
|
||||
[(Heyes)] Heyes, Phys Rev B 49, 755 (1994),
|
||||
|
||||
@ -70,7 +70,7 @@ means include all terms except the kinetic energy {ke}.
|
||||
Details of how LAMMPS computes the virial efficiently for the entire
|
||||
system, including for manybody potentials and accounting for the
|
||||
effects of periodic boundary conditions are discussed in
|
||||
"(Thompson)"_#Thompson.
|
||||
"(Thompson)"_#Thompson1.
|
||||
|
||||
The temperature and kinetic energy tensor is not calculated by this
|
||||
compute, but rather by the temperature compute specified with the
|
||||
@ -150,5 +150,5 @@ stress/atom"_compute_stress_atom.html,
|
||||
|
||||
:line
|
||||
|
||||
:link(Thompson)
|
||||
:link(Thompson1)
|
||||
[(Thompson)] Thompson, Plimpton, Mattson, J Chem Phys, 131, 154107 (2009).
|
||||
|
||||
@ -24,7 +24,7 @@ twojmax = band limit for bispectrum components (non-negative integer) :l
|
||||
R_1, R_2,... = list of cutoff radii, one for each type (distance units) :l
|
||||
w_1, w_2,... = list of neighbor weights, one for each type :l
|
||||
zero or more keyword/value pairs may be appended :l
|
||||
keyword = {diagonal} or {rmin0} or {switchflag} :l
|
||||
keyword = {diagonal} or {rmin0} or {switchflag} or {bzeroflag} :l
|
||||
{diagonal} value = {0} or {1} or {2} or {3}
|
||||
{0} = all j1, j2, j <= twojmax, j2 <= j1
|
||||
{1} = subset satisfying j1 == j2
|
||||
@ -33,7 +33,10 @@ keyword = {diagonal} or {rmin0} or {switchflag} :l
|
||||
{rmin0} value = parameter in distance to angle conversion (distance units)
|
||||
{switchflag} value = {0} or {1}
|
||||
{0} = do not use switching function
|
||||
{1} = use switching function :pre
|
||||
{1} = use switching function
|
||||
{bzeroflag} value = {0} or {1}
|
||||
{0} = do not subtract B0
|
||||
{1} = subtract B0 :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
@ -50,12 +53,12 @@ for each atom in a group.
|
||||
Bispectrum components of an atom are order parameters characterizing
|
||||
the radial and angular distribution of neighbor atoms. The detailed
|
||||
mathematical definition is given in the paper by Thompson et
|
||||
al. "(Thompson)"_#Thompson2014
|
||||
al. "(Thompson)"_#Thompson20141
|
||||
|
||||
The position of a neighbor atom {i'} relative to a central atom {i} is
|
||||
a point within the 3D ball of radius {R_ii' = rcutfac*(R_i + R_i')}
|
||||
|
||||
Bartok et al. "(Bartok)"_#Bartok2010, proposed mapping this 3D ball
|
||||
Bartok et al. "(Bartok)"_#Bartok20101, proposed mapping this 3D ball
|
||||
onto the 3-sphere, the surface of the unit ball in a four-dimensional
|
||||
space. The radial distance {r} within {R_ii'} is mapped on to a third
|
||||
polar angle {theta0} defined by,
|
||||
@ -92,7 +95,7 @@ The expansion coefficients {u^j_m,m'} are complex-valued and they are
|
||||
not directly useful as descriptors, because they are not invariant
|
||||
under rotation of the polar coordinate frame. However, the following
|
||||
scalar triple products of expansion coefficients can be shown to be
|
||||
real-valued and invariant under rotation "(Bartok)"_#Bartok2010.
|
||||
real-valued and invariant under rotation "(Bartok)"_#Bartok20101.
|
||||
|
||||
:c,image(Eqs/compute_sna_atom3.jpg)
|
||||
|
||||
@ -153,6 +156,12 @@ ordered in which they are listed
|
||||
The keyword {switchflag} can be used to turn off the switching
|
||||
function.
|
||||
|
||||
The keyword {bzeroflag} determines whether or not {B0}, the bispectrum
|
||||
components of an atom with no neighbors, are subtracted from
|
||||
the calculated bispectrum components. This optional keyword is only
|
||||
available for compute {sna/atom}, as {snad/atom} and {snav/atom}
|
||||
are unaffected by the removal of constant terms.
|
||||
|
||||
NOTE: If you have a bonded system, then the settings of
|
||||
"special_bonds"_special_bonds.html command can remove pairwise
|
||||
interactions between atoms in the same bond, angle, or dihedral. This
|
||||
@ -222,15 +231,15 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
[Default:]
|
||||
|
||||
The optional keyword defaults are {diagonal} = 0, {rmin0} = 0,
|
||||
{switchflag} = 1.
|
||||
{switchflag} = 1, {bzeroflag} = 0.
|
||||
|
||||
:line
|
||||
|
||||
:link(Thompson2014)
|
||||
:link(Thompson20141)
|
||||
[(Thompson)] Thompson, Swiler, Trott, Foiles, Tucker, under review, preprint
|
||||
available at "arXiv:1409.3880"_http://arxiv.org/abs/1409.3880
|
||||
|
||||
:link(Bartok2010)
|
||||
:link(Bartok20101)
|
||||
[(Bartok)] Bartok, Payne, Risi, Csanyi, Phys Rev Lett, 104, 136403 (2010).
|
||||
|
||||
:link(Meremianin2006)
|
||||
|
||||
@ -74,7 +74,7 @@ other atoms in the simulation, not just with other atoms in the group.
|
||||
|
||||
Details of how LAMMPS computes the virial for individual atoms for
|
||||
either pairwise or manybody potentials, and including the effects of
|
||||
periodic boundary conditions is discussed in "(Thompson)"_#Thompson.
|
||||
periodic boundary conditions is discussed in "(Thompson)"_#Thompson2.
|
||||
The basic idea for manybody potentials is to treat each component of
|
||||
the force computation between a small cluster of atoms in the same
|
||||
manner as in the formula above for bond, angle, dihedral, etc
|
||||
@ -89,8 +89,8 @@ pairwise interactions between 1-4 atoms. The virial contribution of
|
||||
these terms is included in the pair virial, not the dihedral virial.
|
||||
|
||||
The KSpace contribution is calculated using the method in
|
||||
"(Heyes)"_#Heyes for the Ewald method and by the methodology described
|
||||
in "(Sirk)"_#Sirk for PPPM. The choice of KSpace solver is specified
|
||||
"(Heyes)"_#Heyes2 for the Ewald method and by the methodology described
|
||||
in "(Sirk)"_#Sirk1 for PPPM. The choice of KSpace solver is specified
|
||||
by the "kspace_style pppm"_kspace_style.html command. Note that for
|
||||
PPPM, the calculation requires 6 extra FFTs each timestep that
|
||||
per-atom stress is calculated. Thus it can significantly increase the
|
||||
@ -159,11 +159,11 @@ The per-atom array values will be in pressure*volume
|
||||
|
||||
:line
|
||||
|
||||
:link(Heyes)
|
||||
:link(Heyes2)
|
||||
[(Heyes)] Heyes, Phys Rev B 49, 755 (1994),
|
||||
|
||||
:link(Sirk)
|
||||
:link(Sirk1)
|
||||
[(Sirk)] Sirk, Moore, Brown, J Chem Phys, 138, 064505 (2013).
|
||||
|
||||
:link(Thompson)
|
||||
:link(Thompson2)
|
||||
[(Thompson)] Thompson, Plimpton, Mattson, J Chem Phys, 131, 154107 (2009).
|
||||
|
||||
@ -27,7 +27,7 @@ compute core_shells all temp/cs cores shells :pre
|
||||
Define a computation that calculates the temperature of a system based
|
||||
on the center-of-mass velocity of atom pairs that are bonded to each
|
||||
other. This compute is designed to be used with the adiabatic
|
||||
core/shell model of "(Mitchell and Finchham)"_#MitchellFinchham. See
|
||||
core/shell model of "(Mitchell and Finchham)"_#MitchellFinchham1. See
|
||||
"Section 6.25"_Section_howto.html#howto_25 of the manual for an
|
||||
overview of the model as implemented in LAMMPS. Specifically, this
|
||||
compute enables correct temperature calculation and thermostatting of
|
||||
@ -114,6 +114,6 @@ temp/chunk"_compute_temp_chunk.html
|
||||
|
||||
:line
|
||||
|
||||
:link(MitchellFinchham)
|
||||
:link(MitchellFinchham1)
|
||||
[(Mitchell and Finchham)] Mitchell, Finchham, J Phys Condensed Matter,
|
||||
5, 1031-1038 (1993).
|
||||
|
||||
@ -43,7 +43,7 @@ atoms, after subtracting out a spatially-averaged center-of-mass
|
||||
velocity field, before computing the kinetic energy. This can be
|
||||
useful for thermostatting a collection of atoms undergoing a complex
|
||||
flow, e.g. via a profile-unbiased thermostat (PUT) as described in
|
||||
"(Evans)"_#Evans. A compute of this style can be used by any command
|
||||
"(Evans)"_#Evans1. A compute of this style can be used by any command
|
||||
that computes a temperature, e.g. "thermo_modify"_thermo_modify.html,
|
||||
"fix temp/rescale"_fix_temp_rescale.html, "fix npt"_fix_nh.html, etc.
|
||||
|
||||
@ -75,7 +75,7 @@ atoms (sum of 1/2 m v^2), dim = 2 or 3 = dimensionality of the
|
||||
simulation, N = number of atoms in the group, k = Boltzmann constant,
|
||||
and T = temperature. The dim*Nx*Ny*Nz term are degrees of freedom
|
||||
subtracted to adjust for the removal of the center-of-mass velocity in
|
||||
each of Nx*Ny*Nz bins, as discussed in the "(Evans)"_#Evans paper.
|
||||
each of Nx*Ny*Nz bins, as discussed in the "(Evans)"_#Evans1 paper.
|
||||
|
||||
If the {out} keyword is used with a {tensor} value, which is the
|
||||
default, a kinetic energy tensor, stored as a 6-element vector, is
|
||||
@ -126,7 +126,7 @@ See "this howto section"_Section_howto.html#howto_16 of the manual for
|
||||
a discussion of different ways to compute temperature and perform
|
||||
thermostatting. Using this compute in conjunction with a
|
||||
thermostatting fix, as explained there, will effectively implement a
|
||||
profile-unbiased thermostat (PUT), as described in "(Evans)"_#Evans.
|
||||
profile-unbiased thermostat (PUT), as described in "(Evans)"_#Evans1.
|
||||
|
||||
[Output info:]
|
||||
|
||||
@ -178,5 +178,5 @@ The option default is out = tensor.
|
||||
|
||||
:line
|
||||
|
||||
:link(Evans)
|
||||
:link(Evans1)
|
||||
[(Evans)] Evans and Morriss, Phys Rev Lett, 56, 2172-2175 (1986).
|
||||
|
||||
@ -134,6 +134,17 @@ not overlap existing atoms inappropriately, especially if molecules
|
||||
are being added. The "delete_atoms"_delete_atoms.html command can be
|
||||
used to remove overlapping atoms or molecules.
|
||||
|
||||
NOTE: You cannot use any of the styles explained above to create atoms
|
||||
that are outside the simulation box; they will just be ignored by
|
||||
LAMMPS. This is true even if you are using shrink-wrapped box
|
||||
boundaries, as specified by the "boundary"_boundary.html command.
|
||||
However, you can first use the "change_box"_change_box.html command to
|
||||
temporarily expand the box, then add atoms via create_atoms, then
|
||||
finally use change_box command again if needed to re-shrink-wrap the
|
||||
new atoms. See the "change_box"_change_box.html doc page for an
|
||||
example of how to do this, using the create_atoms {single} style to
|
||||
insert a new atom outside the current simulation box.
|
||||
|
||||
:line
|
||||
|
||||
Individual atoms are inserted by this command, unless the {mol}
|
||||
|
||||
@ -10,21 +10,25 @@ dihedral_style charmm command :h3
|
||||
dihedral_style charmm/intel command :h3
|
||||
dihedral_style charmm/kk command :h3
|
||||
dihedral_style charmm/omp command :h3
|
||||
dihedral_style charmmfsh command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
dihedral_style charmm :pre
|
||||
dihedral_style style :pre
|
||||
|
||||
style = {charmm} or {charmmfsh} :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
dihedral_style charmm
|
||||
dihedral_style charmmfsh
|
||||
dihedral_coeff 1 0.2 1 180 1.0
|
||||
dihedral_coeff 2 1.8 1 0 1.0
|
||||
dihedral_coeff 1 3.1 2 180 0.5 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The {charmm} dihedral style uses the potential
|
||||
The {charmm} and {charmmfsh} dihedral styles use the potential
|
||||
|
||||
:c,image(Eqs/dihedral_charmm.jpg)
|
||||
|
||||
@ -34,6 +38,14 @@ field (see comment on weighting factors below). See
|
||||
"(Cornell)"_#dihedral-Cornell for a description of the AMBER force
|
||||
field.
|
||||
|
||||
NOTE: The newer {charmmfsh} style was released in March 2017. We
|
||||
recommend it be used instead of the older {charmm} style when running
|
||||
a simulation with the CHARMM force field and Coulomb cutoffs, via the
|
||||
"pair_style lj/charmmfsw/coul/charmmfsh"_pair_charmm.html command.
|
||||
Otherwise the older {charmm} style is fine to use. See the discussion
|
||||
below and more details on the "pair_style charmm"_pair_charmm.html doc
|
||||
page.
|
||||
|
||||
The following coefficients must be defined for each dihedral type via the
|
||||
"dihedral_coeff"_dihedral_coeff.html command as in the example above, or in
|
||||
the data file or restart files read by the "read_data"_read_data.html
|
||||
@ -73,13 +85,28 @@ special_bonds 1-4 scaling factor to 0.0 (which is the
|
||||
default). Otherwise 1-4 non-bonded interactions in dihedrals will be
|
||||
computed twice.
|
||||
|
||||
Also note that for AMBER force fields, which use pair styles with
|
||||
"lj/cut", the special_bonds 1-4 scaling factor should be set to the
|
||||
AMBER defaults (1/2 and 5/6) and all the dihedral weighting factors
|
||||
(4th coeff above) must be set to 0.0. In this case, you can use any
|
||||
pair style you wish, since the dihedral does not need any
|
||||
Lennard-Jones parameter information and will not compute any 1-4
|
||||
non-bonded interactions.
|
||||
For simulations using the CHARMM force field with a Coulomb cutoff,
|
||||
the difference between the {charmm} and {charmmfsh} styles is in the
|
||||
computation of the 1-4 non-bond interactions, though only if the
|
||||
distance between the two atoms is within the switching region of the
|
||||
pairwise potential defined by the corresponding CHARMM pair style,
|
||||
i.e. within the outer cutoff specified for the pair style. The
|
||||
{charmmfsh} style should only be used when using the "pair_style
|
||||
lj/charmmfsw/coul/charmmfsh"_pair_charmm.html to make the Coulombic
|
||||
pairwise calculations consistent. Use the {charmm} style with
|
||||
long-range Coulombics or the older "pair_style
|
||||
lj/charmm/coul/charmm"_pair_charmm.html command. See the discussion
|
||||
on the "CHARMM pair_style"_pair_charmm.html doc page for details.
|
||||
|
||||
Note that for AMBER force fields, which use pair styles with "lj/cut",
|
||||
the special_bonds 1-4 scaling factor should be set to the AMBER
|
||||
defaults (1/2 and 5/6) and all the dihedral weighting factors (4th
|
||||
coeff above) must be set to 0.0. In this case, you can use any pair
|
||||
style you wish, since the dihedral does not need any Lennard-Jones
|
||||
parameter information and will not compute any 1-4 non-bonded
|
||||
interactions. Likewise the {charmm} or {charmmfsh} styles are
|
||||
identical in this case since no 1-4 non-bonded interactions are
|
||||
computed.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -331,10 +331,7 @@ bonds and colors.
|
||||
|
||||
Note that {atom}, {custom}, {dcd}, {xtc}, and {xyz} style dump files
|
||||
can be read directly by "VMD"_http://www.ks.uiuc.edu/Research/vmd, a
|
||||
popular molecular viewing program. See
|
||||
"Section 9"_Section_tools.html#vmd of the manual and the
|
||||
tools/lmp2vmd/README.txt file for more information about support in
|
||||
VMD for reading and visualizing LAMMPS dump files.
|
||||
popular molecular viewing program.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -26,7 +26,6 @@ args = list of arguments for a particular style :l
|
||||
q, mux, muy, muz, mu,
|
||||
radius, diameter, omegax, omegay, omegaz,
|
||||
angmomx, angmomy, angmomz, tqx, tqy, tqz,
|
||||
spin, eradius, ervel, erforce,
|
||||
c_ID, c_ID\[N\], f_ID, f_ID\[N\], v_name :pre
|
||||
|
||||
id = atom ID
|
||||
@ -51,17 +50,18 @@ args = list of arguments for a particular style :l
|
||||
angmomx,angmomy,angmomz = angular momentum of aspherical particle
|
||||
tqx,tqy,tqz = torque on finite-size particles
|
||||
c_ID = per-atom vector calculated by a compute with ID
|
||||
c_ID\[N\] = Nth column of per-atom array calculated by a compute with ID
|
||||
c_ID\[I\] = Ith column of per-atom array calculated by a compute with ID, I can include wildcard (see below)
|
||||
f_ID = per-atom vector calculated by a fix with ID
|
||||
f_ID\[N\] = Nth column of per-atom array calculated by a fix with ID
|
||||
v_name = per-atom vector calculated by an atom-style variable with name :pre
|
||||
f_ID\[I\] = Ith column of per-atom array calculated by a fix with ID, I can include wildcard (see below)
|
||||
v_name = per-atom vector calculated by an atom-style variable with name
|
||||
d_name = per-atom floating point vector with name, managed by fix property/atom
|
||||
i_name = per-atom integer vector with name, managed by fix property/atom :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
dump dmpvtk all custom/vtk 100 dump*.myforce.vtk id type vx fx
|
||||
dump dmpvtp flow custom/vtk 100 dump*.%.displace.vtp id type c_myD\[1\] c_myD\[2\] c_myD\[3\] v_ke
|
||||
dump e_data all custom/vtk 100 dump*.vtu id type spin eradius fx fy fz eforce :pre
|
||||
dump dmpvtp flow custom/vtk 100 dump*.%.displace.vtp id type c_myD\[1\] c_myD\[2\] c_myD\[3\] v_ke :pre
|
||||
|
||||
The style {custom/vtk} is similar to the "custom"_dump.html style but
|
||||
uses the VTK library to write data to VTK simple legacy or XML format
|
||||
@ -199,32 +199,38 @@ part of the {custom/vtk} style.
|
||||
The {id}, {mol}, {proc}, {procp1}, {type}, {element}, {mass}, {vx},
|
||||
{vy}, {vz}, {fx}, {fy}, {fz}, {q} attributes are self-explanatory.
|
||||
|
||||
{id} is the atom ID. {mol} is the molecule ID, included in the data
|
||||
file for molecular systems. {type} is the atom type. {element} is
|
||||
typically the chemical name of an element, which you must assign to
|
||||
each type via the "dump_modify element"_dump_modify.html command.
|
||||
More generally, it can be any string you wish to associate with an
|
||||
atom type. {mass} is the atom mass. {vx}, {vy}, {vz}, {fx}, {fy},
|
||||
{fz}, and {q} are components of atom velocity and force and atomic
|
||||
charge.
|
||||
{Id} is the atom ID. {Mol} is the molecule ID, included in the data
|
||||
file for molecular systems. {Proc} is the ID of the processor (0 to
|
||||
Nprocs-1) that currently owns the atom. {Procp1} is the proc ID+1,
|
||||
which can be convenient in place of a {type} attribute (1 to Ntypes)
|
||||
for coloring atoms in a visualization program. {Type} is the atom
|
||||
type (1 to Ntypes). {Element} is typically the chemical name of an
|
||||
element, which you must assign to each type via the "dump_modify
|
||||
element"_dump_modify.html command. More generally, it can be any
|
||||
string you wish to associated with an atom type. {Mass} is the atom
|
||||
mass. {Vx}, {vy}, {vz}, {fx}, {fy}, {fz}, and {q} are components of
|
||||
atom velocity and force and atomic charge.
|
||||
|
||||
There are several options for outputting atom coordinates. The {x},
|
||||
{y}, {z} attributes are used to write atom coordinates "unscaled", in
|
||||
the appropriate distance "units"_units.html (Angstroms, sigma, etc).
|
||||
Additionally, you can use {xs}, {ys}, {zs} if you want to also save the
|
||||
coordinates "scaled" to the box size, so that each value is 0.0 to
|
||||
1.0. If the simulation box is triclinic (tilted), then all atom
|
||||
coords will still be between 0.0 and 1.0. Use {xu}, {yu}, {zu} if you
|
||||
want the coordinates "unwrapped" by the image flags for each atom.
|
||||
Unwrapped means that if the atom has passed through a periodic
|
||||
boundary one or more times, the value is printed for what the
|
||||
coordinate would be if it had not been wrapped back into the periodic
|
||||
box. Note that using {xu}, {yu}, {zu} means that the coordinate
|
||||
values may be far outside the box bounds printed with the snapshot.
|
||||
Using {xsu}, {ysu}, {zsu} is similar to using {xu}, {yu}, {zu}, except
|
||||
that the unwrapped coordinates are scaled by the box size. Atoms that
|
||||
have passed through a periodic boundary will have the corresponding
|
||||
coordinate increased or decreased by 1.0.
|
||||
{y}, {z} attributes write atom coordinates "unscaled", in the
|
||||
appropriate distance "units"_units.html (Angstroms, sigma, etc). Use
|
||||
{xs}, {ys}, {zs} if you want the coordinates "scaled" to the box size,
|
||||
so that each value is 0.0 to 1.0. If the simulation box is triclinic
|
||||
(tilted), then all atom coords will still be between 0.0 and 1.0.
|
||||
I.e. actual unscaled (x,y,z) = xs*A + ys*B + zs*C, where (A,B,C) are
|
||||
the non-orthogonal vectors of the simulation box edges, as discussed
|
||||
in "Section 6.12"_Section_howto.html#howto_12.
|
||||
|
||||
Use {xu}, {yu}, {zu} if you want the coordinates "unwrapped" by the
|
||||
image flags for each atom. Unwrapped means that if the atom has
|
||||
passed thru a periodic boundary one or more times, the value is
|
||||
printed for what the coordinate would be if it had not been wrapped
|
||||
back into the periodic box. Note that using {xu}, {yu}, {zu} means
|
||||
that the coordinate values may be far outside the box bounds printed
|
||||
with the snapshot. Using {xsu}, {ysu}, {zsu} is similar to using
|
||||
{xu}, {yu}, {zu}, except that the unwrapped coordinates are scaled by
|
||||
the box size. Atoms that have passed through a periodic boundary will
|
||||
have the corresponding coordinate increased or decreased by 1.0.
|
||||
|
||||
The image flags can be printed directly using the {ix}, {iy}, {iz}
|
||||
attributes. For periodic dimensions, they specify which image of the
|
||||
@ -255,13 +261,7 @@ The {tqx}, {tqy}, {tqz} attributes are for finite-size particles that
|
||||
can sustain a rotational torque due to interactions with other
|
||||
particles.
|
||||
|
||||
The {spin}, {eradius}, {ervel}, and {erforce} attributes are for
|
||||
particles that represent nuclei and electrons modeled with the
|
||||
electronic force field (EFF). See "atom_style
|
||||
electron"_atom_style.html and "pair_style eff"_pair_eff.html for more
|
||||
details.
|
||||
|
||||
The {c_ID} and {c_ID\[N\]} attributes allow per-atom vectors or arrays
|
||||
The {c_ID} and {c_ID\[I\]} attributes allow per-atom vectors or arrays
|
||||
calculated by a "compute"_compute.html to be output. The ID in the
|
||||
attribute should be replaced by the actual ID of the compute that has
|
||||
been defined previously in the input script. See the
|
||||
@ -275,12 +275,14 @@ command. Instead, global quantities can be output by the
|
||||
"thermo_style custom"_thermo_style.html command, and local quantities
|
||||
can be output by the dump local command.
|
||||
|
||||
If {c_ID} is used as an attribute, then the per-atom vector calculated
|
||||
by the compute is printed. If {c_ID\[N\]} is used, then N must be in
|
||||
the range from 1-M, which will print the Nth column of the M-length
|
||||
per-atom array calculated by the compute.
|
||||
If {c_ID} is used as a attribute, then the per-atom vector calculated
|
||||
by the compute is printed. If {c_ID\[I\]} is used, then I must be in
|
||||
the range from 1-M, which will print the Ith column of the per-atom
|
||||
array with M columns calculated by the compute. See the discussion
|
||||
above for how I can be specified with a wildcard asterisk to
|
||||
effectively specify multiple values.
|
||||
|
||||
The {f_ID} and {f_ID\[N\]} attributes allow vector or array per-atom
|
||||
The {f_ID} and {f_ID\[I\]} attributes allow vector or array per-atom
|
||||
quantities calculated by a "fix"_fix.html to be output. The ID in the
|
||||
attribute should be replaced by the actual ID of the fix that has been
|
||||
defined previously in the input script. The "fix
|
||||
@ -291,9 +293,11 @@ any "compute"_compute.html, "fix"_fix.html, or atom-style
|
||||
be written to a dump file.
|
||||
|
||||
If {f_ID} is used as a attribute, then the per-atom vector calculated
|
||||
by the fix is printed. If {f_ID\[N\]} is used, then N must be in the
|
||||
range from 1-M, which will print the Nth column of the M-length
|
||||
per-atom array calculated by the fix.
|
||||
by the fix is printed. If {f_ID\[I\]} is used, then I must be in the
|
||||
range from 1-M, which will print the Ith column of the per-atom array
|
||||
with M columns calculated by the fix. See the discussion above for
|
||||
how I can be specified with a wildcard asterisk to effectively specify
|
||||
multiple values.
|
||||
|
||||
The {v_name} attribute allows per-atom vectors calculated by a
|
||||
"variable"_variable.html to be output. The name in the attribute
|
||||
@ -306,6 +310,10 @@ invoke other computes, fixes, or variables when they are evaluated, so
|
||||
this is a very general means of creating quantities to output to a
|
||||
dump file.
|
||||
|
||||
The {d_name} and {i_name} attributes allow to output custom per atom
|
||||
floating point or integer properties that are managed by
|
||||
"fix property/atom"_fix_property_atom.html.
|
||||
|
||||
See "Section 10"_Section_modify.html of the manual for information
|
||||
on how to add new compute and fix styles to LAMMPS to calculate
|
||||
per-atom quantities which could then be output into dump files.
|
||||
|
||||
@ -34,10 +34,7 @@ to one or more files every N timesteps in one of several formats.
|
||||
Only information for atoms in the specified group is dumped. This
|
||||
specific dump style uses molfile plugins that are bundled with the
|
||||
"VMD"_http://www.ks.uiuc.edu/Research/vmd molecular visualization and
|
||||
analysis program. See "Section 9"_Section_tools.html#vmd of the
|
||||
manual and the tools/lmp2vmd/README.txt file for more information
|
||||
about support in VMD for reading and visualizing native LAMMPS dump
|
||||
files.
|
||||
analysis program.
|
||||
|
||||
Unless the filename contains a * character, the output will be written
|
||||
to one single file with the specified format. Otherwise there will be
|
||||
|
||||
@ -191,8 +191,15 @@ remain constant for the duration of the simulation. This fix forces
|
||||
the chunk/atom compute specified by chunkID to hold {Nchunk} constant
|
||||
for the appropriate time windows, by not allowing it to re-calculate
|
||||
{Nchunk}, which can also affect how it assigns chunk IDs to atoms.
|
||||
More details are given on the "compute
|
||||
chunk/atom"_compute_chunk_atom.html doc page.
|
||||
This is particularly important to understand if the chunks defined by
|
||||
the "compute chunk/atom"_compute_chunk_atom.html command are spatial
|
||||
bins. If its {units} keyword is set to {box} or {lattice}, then the
|
||||
number of bins {Nchunk} and size of each bin will be fixed over the
|
||||
{Nfreq} time window, which can affect which atoms are discarded if the
|
||||
simulation box size changes. If its {units} keyword is set to
|
||||
{reduced}, then the number of bins {Nchunk} will still be fixed, but
|
||||
the size of each bin can vary at each timestep if the simulation box
|
||||
size changes, e.g. for an NPT simulation.
|
||||
|
||||
:line
|
||||
|
||||
@ -290,24 +297,32 @@ It the {norm} setting is {all}, which is the default, a chunk value is
|
||||
summed over all atoms in all {Nrepeat} samples, as is the count of
|
||||
atoms in the chunk. The averaged output value for the chunk on the
|
||||
{Nfreq} timesteps is Total-sum / Total-count. In other words it is an
|
||||
average over atoms across the entire {Nfreq} timescale.
|
||||
average over atoms across the entire {Nfreq} timescale. For the
|
||||
{density/number} and {density/mass} values, the volume (bin volume or
|
||||
system volume) used in the final normalization will be the volume at
|
||||
the final {Nfreq} timestep.
|
||||
|
||||
If the {norm} setting is {sample}, the chunk value is summed over atoms
|
||||
for each sample, as is the count, and an "average sample value" is
|
||||
computed for each sample, i.e. Sample-sum / Sample-count. The output
|
||||
value for the chunk on the {Nfreq} timesteps is the average of the
|
||||
{Nrepeat} "average sample values", i.e. the sum of {Nrepeat} "average
|
||||
sample values" divided by {Nrepeat}. In other words it is an average
|
||||
of an average.
|
||||
If the {norm} setting is {sample}, the chunk value is summed over
|
||||
atoms for each sample, as is the count, and an "average sample value"
|
||||
is computed for each sample, i.e. Sample-sum / Sample-count. The
|
||||
output value for the chunk on the {Nfreq} timesteps is the average of
|
||||
the {Nrepeat} "average sample values", i.e. the sum of {Nrepeat}
|
||||
"average sample values" divided by {Nrepeat}. In other words it is an
|
||||
average of an average. For the {density/number} and {density/mass}
|
||||
values, the volume (bin volume or system volume) used in the
|
||||
per-sample normalization will be the current volume at each sampling
|
||||
step.
|
||||
|
||||
If the {norm} setting is {none}, a similar computation as for the
|
||||
{sample} setting is done, except the individual "average sample values"
|
||||
are "summed sample values". A summed sample value is simply the chunk
|
||||
value summed over atoms in the sample, without dividing by the number
|
||||
of atoms in the sample. The output value for the chunk on the
|
||||
{Nfreq} timesteps is the average of the {Nrepeat} "summed sample
|
||||
{sample} setting is done, except the individual "average sample
|
||||
values" are "summed sample values". A summed sample value is simply
|
||||
the chunk value summed over atoms in the sample, without dividing by
|
||||
the number of atoms in the sample. The output value for the chunk on
|
||||
the {Nfreq} timesteps is the average of the {Nrepeat} "summed sample
|
||||
values", i.e. the sum of {Nrepeat} "summed sample values" divided by
|
||||
{Nrepeat}.
|
||||
{Nrepeat}. For the {density/number} and {density/mass} values, the
|
||||
volume (bin volume or system volume) used in the per-sample sum
|
||||
normalization will be the current volume at each sampling step.
|
||||
|
||||
The {ave} keyword determines how the per-chunk values produced every
|
||||
{Nfreq} steps are averaged with values produced on previous steps that
|
||||
|
||||
@ -27,7 +27,7 @@ fix_modify myCMAP energy yes :pre
|
||||
This command enables CMAP crossterms to be added to simulations which
|
||||
use the CHARMM force field. These are relevant for any CHARMM model
|
||||
of a peptide or protein sequences that is 3 or more amino-acid
|
||||
residues long; see "(Buck)"_#Buck and "(Brooks)"_#Brooks for details,
|
||||
residues long; see "(Buck)"_#Buck and "(Brooks)"_#Brooks2 for details,
|
||||
including the analytic energy expressions for CMAP interactions. The
|
||||
CMAP crossterms add additional potential energy contributions to pairs
|
||||
of overlapping phi-psi dihedrals of amino-acids, which are important
|
||||
@ -128,5 +128,5 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages.
|
||||
[(Buck)] Buck, Bouguet-Bonnet, Pastor, MacKerell Jr., Biophys J, 90, L36
|
||||
(2006).
|
||||
|
||||
:link(Brooks)
|
||||
:link(Brooks2)
|
||||
[(Brooks)] Brooks, Brooks, MacKerell Jr., J Comput Chem, 30, 1545 (2009).
|
||||
|
||||
@ -150,6 +150,12 @@ treated as rigid bodies, use the {rigid} keyword, specifying as its
|
||||
value the ID of a separate "fix rigid/small"_fix_rigid.html
|
||||
command which also appears in your input script.
|
||||
|
||||
NOTE: If you wish the new rigid molecules (and other rigid molecules)
|
||||
to be thermostatted correctly via "fix rigid/small/nvt"_fix_rigid.html
|
||||
or "fix rigid/small/npt"_fix_rigid.html, then you need to use the
|
||||
"fix_modify dynamic/dof yes" command for the rigid fix. This is to
|
||||
inform that fix that the molecule count will vary dynamically.
|
||||
|
||||
If you wish to insert molecules via the {mol} keyword, that will have
|
||||
their bonds or angles constrained via SHAKE, use the {shake} keyword,
|
||||
specifying as its value the ID of a separate "fix
|
||||
|
||||
@ -70,13 +70,13 @@ mesoparticle equation of state for each particle.
|
||||
|
||||
:line
|
||||
|
||||
:link(Lisal)
|
||||
:link(Lisal1)
|
||||
[(Lisal)] M. Lisal, J.K. Brennan, J. Bonet Avalos, "Dissipative
|
||||
particle dynamics at isothermal, isobaric, isoenergetic, and
|
||||
isoenthalpic conditions using Shardlow-like splitting algorithms.",
|
||||
J. Chem. Phys., 135, 204105 (2011).
|
||||
|
||||
:link(Larentzos)
|
||||
:link(Larentzos3)
|
||||
[(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
|
||||
|
||||
@ -32,7 +32,7 @@ fix 1 all drude/transform/inverse :pre
|
||||
|
||||
Transform the coordinates of Drude oscillators from real to reduced
|
||||
and back for thermalizing the Drude oscillators as described in
|
||||
"(Lamoureux)"_#Lamoureux using a Nose-Hoover thermostat. This fix is
|
||||
"(Lamoureux)"_#Lamoureux1 using a Nose-Hoover thermostat. This fix is
|
||||
designed to be used with the "thermalized Drude oscillator
|
||||
model"_tutorial_drude.html. Polarizable models in LAMMPS are
|
||||
described in "this Section"_Section_howto.html#howto_25.
|
||||
@ -160,5 +160,5 @@ files"_restart.html.
|
||||
|
||||
:line
|
||||
|
||||
:link(Lamoureux)
|
||||
:link(Lamoureux1)
|
||||
[(Lamoureux)] Lamoureux and Roux, J Chem Phys, 119, 3025-3039 (2003).
|
||||
|
||||
@ -53,7 +53,7 @@ command.
|
||||
|
||||
:line
|
||||
|
||||
:link(Larentzos)
|
||||
:link(Larentzos4)
|
||||
[(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
|
||||
|
||||
87
doc/src/fix_filter_corotate.txt
Normal file
87
doc/src/fix_filter_corotate.txt
Normal file
@ -0,0 +1,87 @@
|
||||
"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 filter/corotate command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
fix ID group-ID filter/corotate keyword value ... :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command :ulb,l
|
||||
one or more constraint/value pairs are appended :l
|
||||
constraint = {b} or {a} or {t} or {m} :l
|
||||
{b} values = one or more bond types
|
||||
{a} values = one or more angle types
|
||||
{t} values = one or more atom types
|
||||
{m} value = one or more mass values :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
timestep 8
|
||||
run_style respa 3 2 8 bond 1 pair 2 kspace 3
|
||||
fix cor all filter/corotate m 1.0 :pre
|
||||
|
||||
fix cor all filter/corotate b 4 19 a 3 5 2 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
This fix implements a corotational filter for a mollified impulse
|
||||
method. In biomolecular simulations, it allows the usage of larger
|
||||
timesteps for long-range electrostatic interactions. For details, see
|
||||
"(Fath)"_#Fath2017.
|
||||
|
||||
When using "run_style respa"_run_style.html for a biomolecular
|
||||
simulation with high-frequency covalent bonds, the outer time-step is
|
||||
restricted to below ~ 4fs due to resonance problems. This fix filters
|
||||
the outer stage of the respa and thus a larger (outer) time-step can
|
||||
be used. Since in large biomolecular simulations the computation of
|
||||
the long-range electrostatic contributions poses a major bottleneck,
|
||||
this can significantly accelerate the simulation.
|
||||
|
||||
The filter computes a cluster decomposition of the molecular structure
|
||||
following the criteria indicated by the options a, b, t and m. This
|
||||
process is similar to the approach in "fix shake"_fix_shake.html,
|
||||
however, the clusters are not kept contrained. Instead, the position
|
||||
is slightly modified only for the computation of long-range forces. A
|
||||
good cluster decomposition constitutes in building clusters which
|
||||
contain the fastest covalent bonds inside clusters.
|
||||
|
||||
If the clusters are chosen suitably, the "run_style
|
||||
respa"_run_style.html is stable for outer time-steps of at least 8fs.
|
||||
|
||||
:line
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
No information about these fixes is written to "binary restart
|
||||
files"_restart.html. None of the "fix_modify"_fix_modify.html options
|
||||
are relevant to these fixes. No global or per-atom quantities are
|
||||
stored by these fixes for access by various "output
|
||||
commands"_Section_howto.html#howto_15. No parameter of these fixes
|
||||
can be used with the {start/stop} keywords of the "run"_run.html
|
||||
command. These fixes are not invoked during "energy
|
||||
minimization"_minimize.html.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This fix is part of the USER-MISC 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.
|
||||
|
||||
Currently, it does not support "molecule templates"_molecule.html.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
|
||||
[Default:] none
|
||||
|
||||
:line
|
||||
|
||||
:link(Fath2017)
|
||||
[(Fath)] Fath, Hochbruck, Singh, J Comp Phys, 333, 180-198 (2017).
|
||||
@ -153,7 +153,7 @@ The option default for the {energy} keyword is energy = no.
|
||||
:link(Strong)
|
||||
[(Strong)] Strong and Eaves, J. Phys. Chem. B 121, 189 (2017).
|
||||
|
||||
:link(Evans)
|
||||
:link(Evans2)
|
||||
[(Evans)] Evans and Morriss, Phys. Rev. Lett. 56, 2172 (1986).
|
||||
|
||||
:link(Zhu)
|
||||
|
||||
@ -23,9 +23,11 @@ T = temperature of the ideal gas reservoir (temperature units) :l
|
||||
mu = chemical potential of the ideal gas reservoir (energy units) :l
|
||||
displace = maximum Monte Carlo translation distance (length units) :l
|
||||
zero or more keyword/value pairs may be appended to args :l
|
||||
keyword = {mol}, {region}, {maxangle}, {pressure}, {fugacity_coeff}, {full_energy}, {charge}, {group}, {grouptype}, {intra_energy}, or {tfac_insert}
|
||||
keyword = {mol}, {region}, {maxangle}, {pressure}, {fugacity_coeff}, {full_energy}, {charge}, {group}, {grouptype}, {intra_energy}, {tfac_insert}, or {overlap_cutoff}
|
||||
{mol} value = template-ID
|
||||
template-ID = ID of molecule template specified in a separate "molecule"_molecule.html command
|
||||
{rigid} value = fix-ID
|
||||
fix-ID = ID of "fix rigid/small"_fix_rigid.html command
|
||||
{shake} value = fix-ID
|
||||
fix-ID = ID of "fix shake"_fix_shake.html command
|
||||
{region} value = region-ID
|
||||
@ -41,7 +43,8 @@ keyword = {mol}, {region}, {maxangle}, {pressure}, {fugacity_coeff}, {full_energ
|
||||
type = atom type (int)
|
||||
group-ID = group-ID for inserted atoms (string)
|
||||
{intra_energy} value = intramolecular energy (energy units)
|
||||
{tfac_insert} value = scale up/down temperature of inserted atoms (unitless) :pre
|
||||
{tfac_insert} value = scale up/down temperature of inserted atoms (unitless)
|
||||
{overlap_cutoff} value = maximum pair distance for overlap rejection (distance units) :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
@ -53,26 +56,25 @@ fix 4 my_gas gcmc 1 10 10 1 123456543 300.0 -12.5 1.0 region disk :pre
|
||||
[Description:]
|
||||
|
||||
This fix performs grand canonical Monte Carlo (GCMC) exchanges of
|
||||
atoms or molecules of the given type with an imaginary ideal gas reservoir at
|
||||
the specified T and chemical potential (mu) as discussed in
|
||||
"(Frenkel)"_#Frenkel. If used with the "fix nvt"_fix_nh.html command,
|
||||
simulations in the grand canonical ensemble (muVT, constant chemical
|
||||
potential, constant volume, and constant temperature) can be
|
||||
atoms or molecules of the given type with an imaginary ideal gas
|
||||
reservoir at the specified T and chemical potential (mu) as discussed
|
||||
in "(Frenkel)"_#Frenkel. If used with the "fix nvt"_fix_nh.html
|
||||
command, simulations in the grand canonical ensemble (muVT, constant
|
||||
chemical potential, constant volume, and constant temperature) can be
|
||||
performed. Specific uses include computing isotherms in microporous
|
||||
materials, or computing vapor-liquid coexistence curves.
|
||||
|
||||
Every N timesteps the fix attempts a number of GCMC exchanges (insertions
|
||||
or deletions) of gas atoms or molecules of
|
||||
the given type between the simulation cell and the imaginary
|
||||
reservoir. It also attempts a number of Monte Carlo
|
||||
moves (translations and molecule rotations) of gas of the given type
|
||||
within the simulation cell or region. The average number of
|
||||
attempted GCMC exchanges is X. The average number of attempted MC moves is M.
|
||||
M should typically be chosen to be
|
||||
approximately equal to the expected number of gas atoms or molecules
|
||||
of the given type within the simulation cell or region,
|
||||
which will result in roughly one
|
||||
MC translation per atom or molecule per MC cycle.
|
||||
Every N timesteps the fix attempts a number of GCMC exchanges
|
||||
(insertions or deletions) of gas atoms or molecules of the given type
|
||||
between the simulation cell and the imaginary reservoir. It also
|
||||
attempts a number of Monte Carlo moves (translations and molecule
|
||||
rotations) of gas of the given type within the simulation cell or
|
||||
region. The average number of attempted GCMC exchanges is X. The
|
||||
average number of attempted MC moves is M. M should typically be
|
||||
chosen to be approximately equal to the expected number of gas atoms
|
||||
or molecules of the given type within the simulation cell or region,
|
||||
which will result in roughly one MC translation per atom or molecule
|
||||
per MC cycle.
|
||||
|
||||
For MC moves of molecular gasses, rotations and translations are each
|
||||
attempted with 50% probability. For MC moves of atomic gasses,
|
||||
@ -80,50 +82,50 @@ translations are attempted 100% of the time. For MC exchanges of
|
||||
either molecular or atomic gasses, deletions and insertions are each
|
||||
attempted with 50% probability.
|
||||
|
||||
All inserted particles are always assigned to two groups: the default group
|
||||
"all" and the group specified in the fix gcmc command (which can also
|
||||
be "all"). In addition, particles are also added to any groups specified
|
||||
by the {group} and {grouptype} keywords.
|
||||
If inserted particles are individual atoms, they are
|
||||
assigned the atom type given by the type argument. If they are molecules,
|
||||
the type argument has no effect and must be set to zero. Instead,
|
||||
the type of each atom in the inserted molecule is specified
|
||||
in the file read by the "molecule"_molecule.html command.
|
||||
All inserted particles are always assigned to two groups: the default
|
||||
group "all" and the group specified in the fix gcmc command (which can
|
||||
also be "all"). In addition, particles are also added to any groups
|
||||
specified by the {group} and {grouptype} keywords. If inserted
|
||||
particles are individual atoms, they are assigned the atom type given
|
||||
by the type argument. If they are molecules, the type argument has no
|
||||
effect and must be set to zero. Instead, the type of each atom in the
|
||||
inserted molecule is specified in the file read by the
|
||||
"molecule"_molecule.html command.
|
||||
|
||||
This fix cannot be used to perform MC insertions of gas atoms or
|
||||
molecules other than the exchanged type, but MC deletions,
|
||||
translations, and rotations can be performed on any atom/molecule in
|
||||
the fix group. All atoms in the simulation cell can be moved using
|
||||
regular time integration translations, e.g. via
|
||||
"fix nvt"_fix_nh.html, resulting in a hybrid GCMC+MD simulation. A
|
||||
smaller-than-usual timestep size may be needed when running such a
|
||||
hybrid simulation, especially if the inserted molecules are not well
|
||||
equilibrated.
|
||||
regular time integration translations, e.g. via "fix nvt"_fix_nh.html,
|
||||
resulting in a hybrid GCMC+MD simulation. A smaller-than-usual
|
||||
timestep size may be needed when running such a hybrid simulation,
|
||||
especially if the inserted molecules are not well equilibrated.
|
||||
|
||||
This command may optionally use the {region} keyword to define an
|
||||
exchange and move volume. The specified region must have been
|
||||
previously defined with a "region"_region.html command. It must be
|
||||
defined with side = {in}. Insertion attempts occur only within the
|
||||
specified region. For non-rectangular regions, random trial
|
||||
points are generated within the rectangular bounding box until a point is found
|
||||
that lies inside the region. If no valid point is generated after 1000 trials,
|
||||
no insertion is performed, but it is counted as an attempted insertion.
|
||||
Move and deletion attempt candidates are selected
|
||||
from gas atoms or molecules within the region. If there are no candidates,
|
||||
no move or deletion is performed, but it is counted as an attempt move
|
||||
or deletion. If an attempted move places the atom or molecule center-of-mass outside
|
||||
the specified region, a new attempted move is generated. This process is repeated
|
||||
until the atom or molecule center-of-mass is inside the specified region.
|
||||
specified region. For non-rectangular regions, random trial points are
|
||||
generated within the rectangular bounding box until a point is found
|
||||
that lies inside the region. If no valid point is generated after 1000
|
||||
trials, no insertion is performed, but it is counted as an attempted
|
||||
insertion. Move and deletion attempt candidates are selected from gas
|
||||
atoms or molecules within the region. If there are no candidates, no
|
||||
move or deletion is performed, but it is counted as an attempt move or
|
||||
deletion. If an attempted move places the atom or molecule
|
||||
center-of-mass outside the specified region, a new attempted move is
|
||||
generated. This process is repeated until the atom or molecule
|
||||
center-of-mass is inside the specified region.
|
||||
|
||||
If used with "fix nvt"_fix_nh.html, the temperature of the imaginary
|
||||
reservoir, T, should be set to be equivalent to the target temperature
|
||||
used in fix nvt. Otherwise, the imaginary reservoir
|
||||
will not be in thermal equilibrium with the simulation cell. Also,
|
||||
it is important that the temperature used by fix nvt be dynamic,
|
||||
which can be achieved as follows:
|
||||
used in fix nvt. Otherwise, the imaginary reservoir will not be in
|
||||
thermal equilibrium with the simulation cell. Also, it is important
|
||||
that the temperature used by fix nvt be dynamic/dof, which can be
|
||||
achieved as follows:
|
||||
|
||||
compute mdtemp mdatoms temp
|
||||
compute_modify mdtemp dynamic yes
|
||||
compute_modify mdtemp dynamic/dof yes
|
||||
fix mdnvt mdatoms nvt temp 300.0 300.0 10.0
|
||||
fix_modify mdnvt temp mdtemp :pre
|
||||
|
||||
@ -134,16 +136,16 @@ interactions. Specifically, avoid performing so many MC translations
|
||||
per timestep that atoms can move beyond the neighbor list skin
|
||||
distance. See the "neighbor"_neighbor.html command for details.
|
||||
|
||||
When an atom or molecule is to be inserted, its
|
||||
coordinates are chosen at a random position within the current
|
||||
simulation cell or region, and new atom velocities are randomly chosen from
|
||||
the specified temperature distribution given by T. The effective
|
||||
temperature for new atom velocities can be increased or decreased
|
||||
using the optional keyword {tfac_insert} (see below). Relative
|
||||
coordinates for atoms in a molecule are taken from the template
|
||||
molecule provided by the user. The center of mass of the molecule
|
||||
is placed at the insertion point. The orientation of the molecule
|
||||
is chosen at random by rotating about this point.
|
||||
When an atom or molecule is to be inserted, its coordinates are chosen
|
||||
at a random position within the current simulation cell or region, and
|
||||
new atom velocities are randomly chosen from the specified temperature
|
||||
distribution given by T. The effective temperature for new atom
|
||||
velocities can be increased or decreased using the optional keyword
|
||||
{tfac_insert} (see below). Relative coordinates for atoms in a
|
||||
molecule are taken from the template molecule provided by the
|
||||
user. The center of mass of the molecule is placed at the insertion
|
||||
point. The orientation of the molecule is chosen at random by rotating
|
||||
about this point.
|
||||
|
||||
Individual atoms are inserted, unless the {mol} keyword is used. It
|
||||
specifies a {template-ID} previously defined using the
|
||||
@ -155,53 +157,97 @@ command for details. The only settings required to be in this file
|
||||
are the coordinates and types of atoms in the molecule.
|
||||
|
||||
When not using the {mol} keyword, you should ensure you do not delete
|
||||
atoms that are bonded to other atoms, or LAMMPS will
|
||||
soon generate an error when it tries to find bonded neighbors. LAMMPS will
|
||||
warn you if any of the atoms eligible for deletion have a non-zero
|
||||
molecule ID, but does not check for this at the time of deletion.
|
||||
atoms that are bonded to other atoms, or LAMMPS will soon generate an
|
||||
error when it tries to find bonded neighbors. LAMMPS will warn you if
|
||||
any of the atoms eligible for deletion have a non-zero molecule ID,
|
||||
but does not check for this at the time of deletion.
|
||||
|
||||
If you wish to insert molecules via the {mol} keyword, that will be
|
||||
treated as rigid bodies, use the {rigid} keyword, specifying as its
|
||||
value the ID of a separate "fix rigid/small"_fix_rigid.html command
|
||||
which also appears in your input script.
|
||||
|
||||
NOTE: If you wish the new rigid molecules (and other rigid molecules)
|
||||
to be thermostatted correctly via "fix rigid/small/nvt"_fix_rigid.html
|
||||
or "fix rigid/small/npt"_fix_rigid.html, then you need to use the
|
||||
"fix_modify dynamic/dof yes" command for the rigid fix. This is to
|
||||
inform that fix that the molecule count will vary dynamically.
|
||||
|
||||
If you wish to insert molecules via the {mol} keyword, that will have
|
||||
their bonds or angles constrained via SHAKE, use the {shake} keyword,
|
||||
specifying as its value the ID of a separate "fix
|
||||
shake"_fix_shake.html command which also appears in your input script.
|
||||
|
||||
Optionally, users may specify the maximum rotation angle for
|
||||
molecular rotations using the {maxangle} keyword and specifying
|
||||
the angle in degrees. Rotations are performed by generating a random
|
||||
point on the unit sphere and a random rotation angle on the
|
||||
range \[0,maxangle). The molecule is then rotated by that angle about an
|
||||
Optionally, users may specify the maximum rotation angle for molecular
|
||||
rotations using the {maxangle} keyword and specifying the angle in
|
||||
degrees. Rotations are performed by generating a random point on the
|
||||
unit sphere and a random rotation angle on the range
|
||||
\[0,maxangle). The molecule is then rotated by that angle about an
|
||||
axis passing through the molecule center of mass. The axis is parallel
|
||||
to the unit vector defined by the point on the unit sphere.
|
||||
The same procedure is used for randomly rotating molecules when they
|
||||
are inserted, except that the maximum angle is 360 degrees.
|
||||
to the unit vector defined by the point on the unit sphere. The same
|
||||
procedure is used for randomly rotating molecules when they are
|
||||
inserted, except that the maximum angle is 360 degrees.
|
||||
|
||||
Note that fix GCMC does not use configurational bias
|
||||
MC or any other kind of sampling of intramolecular degrees of freedom.
|
||||
Inserted molecules can have different orientations, but they will all
|
||||
have the same intramolecular configuration,
|
||||
which was specified in the molecule command input.
|
||||
Note that fix GCMC does not use configurational bias MC or any other
|
||||
kind of sampling of intramolecular degrees of freedom. Inserted
|
||||
molecules can have different orientations, but they will all have the
|
||||
same intramolecular configuration, which was specified in the molecule
|
||||
command input.
|
||||
|
||||
For atomic gasses, inserted atoms have the specified atom type, but
|
||||
deleted atoms are any atoms that have been inserted or that belong
|
||||
to the user-specified fix group. For molecular gasses, exchanged
|
||||
molecules use the same atom types as in the template molecule
|
||||
supplied by the user. In both cases, exchanged
|
||||
atoms/molecules are assigned to two groups: the default group "all"
|
||||
and the group specified in the fix gcmc command (which can also be
|
||||
"all").
|
||||
deleted atoms are any atoms that have been inserted or that belong to
|
||||
the user-specified fix group. For molecular gasses, exchanged
|
||||
molecules use the same atom types as in the template molecule supplied
|
||||
by the user. In both cases, exchanged atoms/molecules are assigned to
|
||||
two groups: the default group "all" and the group specified in the fix
|
||||
gcmc command (which can also be "all").
|
||||
|
||||
The gas reservoir pressure can be specified using the {pressure}
|
||||
keyword, in which case the user-specified chemical potential is
|
||||
ignored. For non-ideal gas reservoirs, the user may also specify the
|
||||
fugacity coefficient using the {fugacity_coeff} keyword.
|
||||
The chemical potential is a user-specified input parameter defined
|
||||
as:
|
||||
|
||||
:c,image(Eqs/fix_gcmc1.jpg)
|
||||
|
||||
The second term mu_ex is the excess chemical potential due to
|
||||
energetic interactions and is formally zero for the fictitious gas
|
||||
reservoir but is non-zero for interacting systems. So, while the
|
||||
chemical potential of the reservoir and the simulation cell are equal,
|
||||
mu_ex is not, and as a result, the densities of the two are generally
|
||||
quite different. The first term mu_id is the ideal gas contribution
|
||||
to the chemical potential. mu_id can be related to the density or
|
||||
pressure of the fictitious gas reservoir by:
|
||||
|
||||
:c,image(Eqs/fix_gcmc2.jpg)
|
||||
|
||||
where k is Boltzman's constant,
|
||||
T is the user-specified temperature, rho is the number density,
|
||||
P is the pressure, and phi is the fugacity coefficient.
|
||||
The constant Lambda is required for dimensional consistency.
|
||||
For all unit styles except {lj} it is defined as the thermal
|
||||
de Broglie wavelength
|
||||
|
||||
:c,image(Eqs/fix_gcmc3.jpg)
|
||||
|
||||
where h is Planck's constant, and m is the mass of the exchanged atom
|
||||
or molecule. For unit style {lj}, Lambda is simply set to the
|
||||
unity. Note that prior to March 2017, lambda for unit style {lj} was
|
||||
calculated using the above formula with h set to the rather specific
|
||||
value of 0.18292026. Chemical potential under the old definition can
|
||||
be converted to an equivalent value under the new definition by
|
||||
subtracting 3kTln(Lambda_old).
|
||||
|
||||
As an alternative to specifying mu directly, the ideal gas reservoir
|
||||
can be defined by its pressure P using the {pressure} keyword, in
|
||||
which case the user-specified chemical potential is ignored. The user
|
||||
may also specify the fugacity coefficient phi using the
|
||||
{fugacity_coeff} keyword, which defaults to unity.
|
||||
|
||||
The {full_energy} option means that fix GCMC will compute the total
|
||||
potential energy of the entire simulated system. The total system
|
||||
energy before and after the proposed GCMC move is then used in the
|
||||
Metropolis criterion to determine whether or not to accept the
|
||||
proposed GCMC move. By default, this option is off, in which case
|
||||
only partial energies are computed to determine the difference in
|
||||
energy that would be caused by the proposed GCMC move.
|
||||
proposed GCMC move. By default, this option is off, in which case only
|
||||
partial energies are computed to determine the difference in energy
|
||||
that would be caused by the proposed GCMC move.
|
||||
|
||||
The {full_energy} option is needed for systems with complicated
|
||||
potential energy calculations, including the following:
|
||||
@ -210,7 +256,7 @@ potential energy calculations, including the following:
|
||||
many-body pair styles
|
||||
hybrid pair styles
|
||||
eam pair styles
|
||||
triclinic systems
|
||||
tail corrections
|
||||
need to include potential energy contributions from other fixes :ul
|
||||
|
||||
In these cases, LAMMPS will automatically apply the {full_energy}
|
||||
@ -219,42 +265,43 @@ keyword and issue a warning message.
|
||||
When the {mol} keyword is used, the {full_energy} option also includes
|
||||
the intramolecular energy of inserted and deleted molecules. If this
|
||||
is not desired, the {intra_energy} keyword can be used to define an
|
||||
amount of energy that is subtracted from the final energy when a molecule
|
||||
is inserted, and added to the initial energy when a molecule is
|
||||
deleted. For molecules that have a non-zero intramolecular energy, this
|
||||
will ensure roughly the same behavior whether or not the {full_energy}
|
||||
option is used.
|
||||
amount of energy that is subtracted from the final energy when a
|
||||
molecule is inserted, and added to the initial energy when a molecule
|
||||
is deleted. For molecules that have a non-zero intramolecular energy,
|
||||
this will ensure roughly the same behavior whether or not the
|
||||
{full_energy} option is used.
|
||||
|
||||
Inserted atoms and molecules are assigned random velocities based on the
|
||||
specified temperature T. Because the relative velocity of
|
||||
all atoms in the molecule is zero, this may result in inserted molecules
|
||||
that are systematically too cold. In addition, the intramolecular potential
|
||||
energy of the inserted molecule may cause the kinetic energy
|
||||
of the molecule to quickly increase or decrease after insertion.
|
||||
The {tfac_insert} keyword allows the user to counteract these effects
|
||||
by changing the temperature used to assign velocities to
|
||||
inserted atoms and molecules by a constant factor. For a
|
||||
particular application, some experimentation may be required
|
||||
to find a value of {tfac_insert} that results in inserted molecules that
|
||||
equilibrate quickly to the correct temperature.
|
||||
Inserted atoms and molecules are assigned random velocities based on
|
||||
the specified temperature T. Because the relative velocity of all
|
||||
atoms in the molecule is zero, this may result in inserted molecules
|
||||
that are systematically too cold. In addition, the intramolecular
|
||||
potential energy of the inserted molecule may cause the kinetic energy
|
||||
of the molecule to quickly increase or decrease after insertion. The
|
||||
{tfac_insert} keyword allows the user to counteract these effects by
|
||||
changing the temperature used to assign velocities to inserted atoms
|
||||
and molecules by a constant factor. For a particular application, some
|
||||
experimentation may be required to find a value of {tfac_insert} that
|
||||
results in inserted molecules that equilibrate quickly to the correct
|
||||
temperature.
|
||||
|
||||
Some fixes have an associated potential energy. Examples of such fixes
|
||||
include: "efield"_fix_efield.html, "gravity"_fix_gravity.html,
|
||||
"addforce"_fix_addforce.html, "langevin"_fix_langevin.html,
|
||||
"restrain"_fix_restrain.html, "temp/berendsen"_fix_temp_berendsen.html,
|
||||
"restrain"_fix_restrain.html,
|
||||
"temp/berendsen"_fix_temp_berendsen.html,
|
||||
"temp/rescale"_fix_temp_rescale.html, and "wall fixes"_fix_wall.html.
|
||||
For that energy to be included in the total potential energy of the
|
||||
system (the quantity used when performing GCMC moves),
|
||||
you MUST enable the "fix_modify"_fix_modify.html {energy} option for
|
||||
that fix. The doc pages for individual "fix"_fix.html commands
|
||||
specify if this should be done.
|
||||
system (the quantity used when performing GCMC moves), you MUST enable
|
||||
the "fix_modify"_fix_modify.html {energy} option for that fix. The
|
||||
doc pages for individual "fix"_fix.html commands specify if this
|
||||
should be done.
|
||||
|
||||
Use the {charge} option to insert atoms with a user-specified point
|
||||
charge. Note that doing so will cause the system to become non-neutral.
|
||||
LAMMPS issues a warning when using long-range electrostatics (kspace)
|
||||
with non-neutral systems. See the
|
||||
"compute group/group"_compute_group_group.html documentation for more
|
||||
details about simulating non-neutral systems with kspace on.
|
||||
charge. Note that doing so will cause the system to become
|
||||
non-neutral. LAMMPS issues a warning when using long-range
|
||||
electrostatics (kspace) with non-neutral systems. See the "compute
|
||||
group/group"_compute_group_group.html documentation for more details
|
||||
about simulating non-neutral systems with kspace on.
|
||||
|
||||
Use of this fix typically will cause the number of atoms to fluctuate,
|
||||
therefore, you will want to use the
|
||||
@ -262,6 +309,24 @@ therefore, you will want to use the
|
||||
current number of atoms is used as a normalizing factor each time
|
||||
temperature is computed. Here is the necessary command:
|
||||
|
||||
NOTE: If the density of the cell is initially very small or zero, and
|
||||
increases to a much larger density after a period of equilibration,
|
||||
then certain quantities that are only calculated once at the start
|
||||
(kspace parameters, tail corrections) may no longer be accurate. The
|
||||
solution is to start a new simulation after the equilibrium density
|
||||
has been reached.
|
||||
|
||||
With some pair_styles, such as "Buckingham"_pair_buck.html,
|
||||
"Born-Mayer-Huggins"_pair_born.html and "ReaxFF"_pair_reax_c.html, two
|
||||
atoms placed close to each other may have an arbitrary large, negative
|
||||
potential energy due to the functional form of the potential. While
|
||||
these unphysical configurations are inaccessible to typical dynamical
|
||||
trajectories, they can be generated by Monte Carlo moves. The
|
||||
{overlap_cutoff} keyword suppresses these moves by effectively
|
||||
assigning an infinite positive energy to all new configurations that
|
||||
place any pair of atoms closer than the specified overlap cutoff
|
||||
distance.
|
||||
|
||||
compute_modify thermo_temp dynamic yes :pre
|
||||
|
||||
If LJ units are used, note that a value of 0.18292026 is used by this
|
||||
@ -270,10 +335,10 @@ derived from LJ parameters for argon, where h* = h/sqrt(sigma^2 *
|
||||
epsilon * mass), sigma = 3.429 angstroms, epsilon/k = 121.85 K, and
|
||||
mass = 39.948 amu.
|
||||
|
||||
The {group} keyword assigns all inserted atoms to the "group"_group.html
|
||||
of the group-ID value. The {grouptype} keyword assigns all
|
||||
inserted atoms of the specified type to the "group"_group.html
|
||||
of the group-ID value.
|
||||
The {group} keyword assigns all inserted atoms to the
|
||||
"group"_group.html of the group-ID value. The {grouptype} keyword
|
||||
assigns all inserted atoms of the specified type to the
|
||||
"group"_group.html of the group-ID value.
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
@ -321,19 +386,15 @@ well in parallel. Only usable for 3D simulations.
|
||||
Note that very lengthy simulations involving insertions/deletions of
|
||||
billions of gas molecules may run out of atom or molecule IDs and
|
||||
trigger an error, so it is better to run multiple shorter-duration
|
||||
simulations. Likewise, very large molecules have not been tested
|
||||
and may turn out to be problematic.
|
||||
simulations. Likewise, very large molecules have not been tested and
|
||||
may turn out to be problematic.
|
||||
|
||||
Use of multiple fix gcmc commands in the same input script can be
|
||||
problematic if using a template molecule. The issue is that the
|
||||
user-referenced template molecule in the second fix gcmc command
|
||||
may no longer exist since it might have been deleted by the first
|
||||
fix gcmc command. An existing template molecule will need to be
|
||||
referenced by the user for each subsequent fix gcmc command.
|
||||
|
||||
Because molecule insertion does not work in combination with
|
||||
fix rigid, simulataneous use of fix rigid or fix rigid/small
|
||||
with this fix is not allowed.
|
||||
user-referenced template molecule in the second fix gcmc command may
|
||||
no longer exist since it might have been deleted by the first fix gcmc
|
||||
command. An existing template molecule will need to be referenced by
|
||||
the user for each subsequent fix gcmc command.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
@ -344,7 +405,8 @@ with this fix is not allowed.
|
||||
|
||||
[Default:]
|
||||
|
||||
The option defaults are mol = no, maxangle = 10, full_energy = no,
|
||||
The option defaults are mol = no, maxangle = 10, overlap_cutoff = 0.0,
|
||||
fugacity_coeff = 1, and full_energy = no,
|
||||
except for the situations where full_energy is required, as
|
||||
listed above.
|
||||
|
||||
|
||||
@ -15,15 +15,16 @@ fix ID group-ID halt N attribute operator avalue keyword value ... :pre
|
||||
ID, group-ID are documented in "fix"_fix.html command :ulb,l
|
||||
halt = style name of this fix command :l
|
||||
N = check halt condition every N steps :l
|
||||
attribute = hstyle or v_name :l
|
||||
hstyle = {bondmax}
|
||||
attribute = {bondmax} or {tlimit} or v_name :l
|
||||
bondmax = length of longest bond in the system
|
||||
tlimit = elapsed CPU time
|
||||
v_name = name of "equal-style variable"_variable.html :pre
|
||||
operator = "<" or "<=" or ">" or ">=" or "==" or "!=" or "|^" :l
|
||||
avalue = numeric value to compare attribute to :l
|
||||
string = text string to print with optional variable names :l
|
||||
zero or more keyword/value pairs may be appended :l
|
||||
keyword = {error} :l
|
||||
{error} value = {hard} or {soft} or {continue} :pre
|
||||
keyword = {error} or {message} :l
|
||||
{error} value = {hard} or {soft} or {continue}
|
||||
{message} value = {yes} or {no} :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
@ -40,14 +41,33 @@ specified by the "run"_run.html or "minimize"_minimize.html command.
|
||||
|
||||
The specified group-ID is ignored by this fix.
|
||||
|
||||
The specified {attribute} can be one of the {hstyle} options listed
|
||||
above, or an "equal-style variable"_variable.html referenced as
|
||||
{v_name}, where "name" is the name of a variable that has been defined
|
||||
previously in the input script.
|
||||
The specified {attribute} can be one of the options listed above,
|
||||
namely {bondmax} or {tlimit}, or an "equal-style
|
||||
variable"_variable.html referenced as {v_name}, where "name" is the
|
||||
name of a variable that has been defined previously in the input
|
||||
script.
|
||||
|
||||
The only {hstyle} option currently implemented is {bondmax}. This
|
||||
will loop over all bonds in the system, compute their current
|
||||
lengths, and set {attribute} to the longest bond distance.
|
||||
The {bondmax} attribute will loop over all bonds in the system,
|
||||
compute their current lengths, and set {attribute} to the longest bond
|
||||
distance.
|
||||
|
||||
The {tlimit} attribute queries the elapsed CPU time (in seconds) since
|
||||
the current run began, and sets {attribute} to that value. This is an
|
||||
alternative way to limit the length of a simulation run, similar to
|
||||
the "timer"_timer.html timeout command. There are two differences in
|
||||
using this method versus the timer command option. The first is that
|
||||
the clock starts at the beginning of the current run (not when the
|
||||
timer or fix command is specified), so that any setup time for the run
|
||||
is not included in the elapsed time. The second is that the timer
|
||||
invocation and syncing across all processors (via MPI_Allreduce) is
|
||||
not performed once every {N} steps by this command. Instead it is
|
||||
performed (typically) only a small number of times and the elapsed
|
||||
times are used to predict when the end-of-the-run will be. Both of
|
||||
these attributes can be useful when performing benchmark calculations
|
||||
for a desired length of time with minmimal overhead. For example, if
|
||||
a run is performing 1000s of timesteps/sec, the overhead for syncing
|
||||
the timer frequently across a large number of processors may be
|
||||
non-negligble.
|
||||
|
||||
Equal-style variables evaluate to a numeric value. See the
|
||||
"variable"_variable.html command for a description. They calculate
|
||||
@ -100,6 +120,14 @@ Note that you may wish use the "unfix"_unfix.html command on the fix
|
||||
halt ID, so that the same condition is not immediately triggered in a
|
||||
subsequent run.
|
||||
|
||||
The optional {message} keyword determines whether a message is printed
|
||||
to the screen and logfile when the halt condition is triggered. If
|
||||
{message} is set to yes, a one line message with the values that
|
||||
triggered the halt is printed. If {message} is set to no, no message
|
||||
is printed; the run simply exits. The latter may be desirable for
|
||||
post-processing tools that extract thermodyanmic information from log
|
||||
files.
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
No information about this fix is written to "binary restart
|
||||
@ -118,4 +146,4 @@ This fix is not invoked during "energy minimization"_minimize.html.
|
||||
|
||||
[Default:]
|
||||
|
||||
The option defaults are error = hard.
|
||||
The option defaults are error = hard and message = yes.
|
||||
|
||||
@ -49,7 +49,7 @@ fix 1 all langevin 1.0 1.1 100.0 48279 angmom 3.333 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Apply a Langevin thermostat as described in "(Schneider)"_#Schneider
|
||||
Apply a Langevin thermostat as described in "(Schneider)"_#Schneider1
|
||||
to a group of atoms which models an interaction with a background
|
||||
implicit solvent. Used with "fix nve"_fix_nve.html, this command
|
||||
performs Brownian dynamics (BD), since the total force on each atom
|
||||
@ -80,7 +80,7 @@ dt damp), where Kb is the Boltzmann constant, T is the desired
|
||||
temperature, m is the mass of the particle, dt is the timestep size,
|
||||
and damp is the damping factor. Random numbers are used to randomize
|
||||
the direction and magnitude of this force as described in
|
||||
"(Dunweg)"_#Dunweg, where a uniform random number is used (instead of
|
||||
"(Dunweg)"_#Dunweg1, where a uniform random number is used (instead of
|
||||
a Gaussian random number) for speed.
|
||||
|
||||
Note that unless you use the {omega} or {angmom} keywords, the
|
||||
@ -332,10 +332,10 @@ types, tally = no, zero = no, gjf = no.
|
||||
|
||||
:line
|
||||
|
||||
:link(Dunweg)
|
||||
:link(Dunweg1)
|
||||
[(Dunweg)] Dunweg and Paul, Int J of Modern Physics C, 2, 817-27 (1991).
|
||||
|
||||
:link(Schneider)
|
||||
:link(Schneider1)
|
||||
[(Schneider)] Schneider and Stoll, Phys Rev B, 17, 1302 (1978).
|
||||
|
||||
:link(Gronbech-Jensen)
|
||||
|
||||
@ -41,7 +41,7 @@ fix 1 all langevin/drude 298.15 100.0 19377 5.0 10.0 83451 zero yes :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Apply two Langevin thermostats as described in "(Jiang)"_#Jiang for
|
||||
Apply two Langevin thermostats as described in "(Jiang)"_#Jiang1 for
|
||||
thermalizing the reduced degrees of freedom of Drude oscillators.
|
||||
This link describes how to use the "thermalized Drude oscillator
|
||||
model"_tutorial_drude.html in LAMMPS and polarizable models in LAMMPS
|
||||
@ -268,6 +268,6 @@ The option defaults are zero = no.
|
||||
|
||||
:line
|
||||
|
||||
:link(Jiang)
|
||||
:link(Jiang1)
|
||||
[(Jiang)] Jiang, Hardy, Phillips, MacKerell, Schulten, and Roux, J
|
||||
Phys Chem Lett, 2, 87-92 (2011).
|
||||
|
||||
@ -37,7 +37,7 @@ fix 1 all langevin/eff 1.0 1.1 10.0 48279 scale 3 1.5 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Apply a Langevin thermostat as described in "(Schneider)"_#Schneider
|
||||
Apply a Langevin thermostat as described in "(Schneider)"_#Schneider2
|
||||
to a group of nuclei and electrons in the "electron force
|
||||
field"_pair_eff.html model. Used with "fix nve/eff"_fix_nve_eff.html,
|
||||
this command performs Brownian dynamics (BD), since the total force on
|
||||
@ -106,8 +106,8 @@ The option defaults are scale = 1.0 for all types and tally = no.
|
||||
|
||||
:line
|
||||
|
||||
:link(Dunweg)
|
||||
:link(Dunweg2)
|
||||
[(Dunweg)] Dunweg and Paul, Int J of Modern Physics C, 2, 817-27 (1991).
|
||||
|
||||
:link(Schneider)
|
||||
:link(Schneider2)
|
||||
[(Schneider)] Schneider and Stoll, Phys Rev B, 17, 1302 (1978).
|
||||
|
||||
@ -24,7 +24,7 @@ fix 1 all lb/pc :pre
|
||||
Update the positions and velocities of the individual particles
|
||||
described by {group-ID}, experiencing velocity-dependent hydrodynamic
|
||||
forces, using the integration algorithm described in "Mackay et
|
||||
al."_#Mackay. This integration algorithm should only be used if a
|
||||
al."_#Mackay1. This integration algorithm should only be used if a
|
||||
user-specified value for the force-coupling constant used in "fix
|
||||
lb/fluid"_fix_lb_fluid.html has been set; do not use this integration
|
||||
algorithm if the force coupling constant has been set by default.
|
||||
@ -58,5 +58,5 @@ lb/rigid/pc/sphere"_fix_lb_rigid_pc_sphere.html
|
||||
|
||||
:line
|
||||
|
||||
:link(Mackay)
|
||||
:link(Mackay1)
|
||||
[(Mackay et al.)] Mackay, F. E., Ollila, S.T.T., and Denniston, C., Hydrodynamic Forces Implemented into LAMMPS through a lattice-Boltzmann fluid, Computer Physics Communications 184 (2013) 2021-2031.
|
||||
|
||||
@ -44,7 +44,7 @@ hydrodynamic forces to the particles.
|
||||
:line
|
||||
|
||||
For further details, as well as descriptions and results of several
|
||||
test runs, see "Mackay et al."_#Mackay. Please include a citation to
|
||||
test runs, see "Mackay et al."_#Mackay3. Please include a citation to
|
||||
this paper if this fix is used in work contributing to published
|
||||
research.
|
||||
|
||||
@ -90,5 +90,5 @@ lb/rigid/pc/sphere"_fix_lb_rigid_pc_sphere.html
|
||||
|
||||
:line
|
||||
|
||||
:link(Mackay)
|
||||
:link(Mackay3)
|
||||
[(Mackay et al.)] Mackay, F. E., Ollila, S.T.T., and Denniston, C., Hydrodynamic Forces Implemented into LAMMPS through a lattice-Boltzmann fluid, Computer Physics Communications 184 (2013) 2021-2031.
|
||||
|
||||
@ -14,11 +14,13 @@ fix_modify fix-ID keyword value ... :pre
|
||||
|
||||
fix-ID = ID of the fix to modify :ulb,l
|
||||
one or more keyword/value pairs may be appended :l
|
||||
keyword = {temp} or {press} or {energy} or {respa} :l
|
||||
keyword = {temp} or {press} or {energy} or {respa} or {dynamic/dof} :l
|
||||
{temp} value = compute ID that calculates a temperature
|
||||
{press} value = compute ID that calculates a pressure
|
||||
{energy} value = {yes} or {no}
|
||||
{respa} value = {1} to {max respa level} or {0} (for outermost level) :pre
|
||||
{respa} value = {1} to {max respa level} or {0} (for outermost level)
|
||||
{dynamic/dof} value = {yes} or {no}
|
||||
yes/no = do or do not recompute the number of degrees of freedom (DOF) contributing to the temperature :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
@ -78,6 +80,27 @@ enabled to support this feature; if not, {fix_modify} will report an
|
||||
error. Active fixes with a custom RESPA level setting are reported
|
||||
with their specified level at the beginning of a r-RESPA run.
|
||||
|
||||
The {dynamic/dof} keyword determines whether the number of atoms N in
|
||||
the fix group and their associated degrees of freedom are re-computed
|
||||
each time a temperature is computed. Only fix styles that calculate
|
||||
their own internal temperature use this option. Currently this is
|
||||
only the "fix rigid/nvt/small"_fix_rigid.html and "fix
|
||||
rigid/npt/small"_fix_rigid.html commands for the purpose of
|
||||
thermostatting rigid body translation and rotation. By default, N and
|
||||
their DOF are assumed to be constant. If you are adding atoms or
|
||||
molecules to the system (see the "fix pour"_fix_pour.html, "fix
|
||||
deposit"_fix_deposit.html, and "fix gcmc"_fix_gcmc.html commands) or
|
||||
expect atoms or molecules to be lost (e.g. due to exiting the
|
||||
simulation box or via "fix evaporate"_fix_evaporate.html), then
|
||||
this option should be used to insure the temperature is correctly
|
||||
normalized.
|
||||
|
||||
NOTE: Other thermostatting fixes, such as "fix nvt"_fix_nh.html, do
|
||||
not use the {dynamic/dof} keyword because they use a temperature
|
||||
compute to calculate temperature. See the "compute_modify
|
||||
dynamic/dof"_compute_modify.html command for a similar way to insure
|
||||
correct temperature normalization for those thermostats.
|
||||
|
||||
[Restrictions:] none
|
||||
|
||||
[Related commands:]
|
||||
|
||||
@ -466,16 +466,6 @@ to undergo a slow random walk. This can be mitigated by resetting
|
||||
the momentum at infrequent intervals using the
|
||||
"fix momentum"_fix_momentum.html command.
|
||||
|
||||
NOTE: This implementation has been shown to conserve linear momentum
|
||||
up to machine precision under NVT dynamics. Under NPT dynamics,
|
||||
for a system with zero initial total linear momentum, the total
|
||||
momentum fluctuates close to zero. It may occasionally undergo brief
|
||||
excursions to non-negligible values, before returning close to zero.
|
||||
Over long simulations, this has the effect of causing the center-of-mass
|
||||
to undergo a slow random walk. This can be mitigated by resetting
|
||||
the momentum at infrequent intervals using the
|
||||
"fix momentum"_fix_momentum.html command.
|
||||
|
||||
:line
|
||||
|
||||
The fix npt and fix nph commands can be used with rigid bodies or
|
||||
|
||||
@ -128,15 +128,15 @@ ploop = 1, nreset = 0, drag = 0.0, dilate = all, and couple = none.
|
||||
|
||||
:line
|
||||
|
||||
:link(Martyna)
|
||||
:link(Martyna1)
|
||||
[(Martyna)] Martyna, Tobias and Klein, J Chem Phys, 101, 4177 (1994).
|
||||
|
||||
:link(Parrinello)
|
||||
[(Parrinello)] Parrinello and Rahman, J Appl Phys, 52, 7182 (1981).
|
||||
|
||||
:link(Tuckerman)
|
||||
:link(Tuckerman1)
|
||||
[(Tuckerman)] Tuckerman, Alejandre, Lopez-Rendon, Jochim, and
|
||||
Martyna, J Phys A: Math Gen, 39, 5629 (2006).
|
||||
|
||||
:link(Shinoda)
|
||||
:link(Shinoda2)
|
||||
[(Shinoda)] Shinoda, Shiga, and Mikami, Phys Rev B, 69, 134103 (2004).
|
||||
|
||||
@ -13,14 +13,17 @@ fix nph/sphere/omp command :h3
|
||||
|
||||
fix ID group-ID nph/sphere args keyword value ... :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command
|
||||
nph/sphere = style name of this fix command
|
||||
additional barostat related keyword/value pairs from the "fix nph"_fix_nh.html command can be appended :ul
|
||||
ID, group-ID are documented in "fix"_fix.html command :ulb,l
|
||||
nph/sphere = style name of this fix command :l
|
||||
keyword = {disc} :l
|
||||
{disc} value = none = treat particles as 2d discs, not spheres :pre
|
||||
additional barostat related keyword/value pairs from the "fix nph"_fix_nh.html command can be appended :l,ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 1 all nph/sphere iso 0.0 0.0 1000.0
|
||||
fix 2 all nph/sphere x 5.0 5.0 1000.0
|
||||
fix 2 all nph/sphere x 5.0 5.0 1000.0 disc
|
||||
fix 2 all nph/sphere x 5.0 5.0 1000.0 drag 0.2
|
||||
fix 2 water nph/sphere aniso 0.0 0.0 1000.0 dilate partial :pre
|
||||
|
||||
@ -35,6 +38,12 @@ isenthalpic ensemble.
|
||||
This fix differs from the "fix nph"_fix_nh.html command, which assumes
|
||||
point particles and only updates their position and velocity.
|
||||
|
||||
If the {disc} keyword is used, then each particle is treated as a 2d
|
||||
disc (circle) instead of as a sphere. This is only possible for 2d
|
||||
simulations, as defined by the "dimension"_dimension.html keyword.
|
||||
The only difference between discs and spheres in this context is their
|
||||
moment of inertia, as used in the time integration.
|
||||
|
||||
Additional parameters affecting the barostat are specified by keywords
|
||||
and values documented with the "fix nph"_fix_nh.html command. See,
|
||||
for example, discussion of the {aniso}, and {dilate} keywords.
|
||||
@ -139,6 +148,9 @@ command.
|
||||
All particles in the group must be finite-size spheres. They cannot
|
||||
be point particles.
|
||||
|
||||
Use of the {disc} keyword is only allowed for 2d simulations, as
|
||||
defined by the "dimension"_dimension.html keyword.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"fix nph"_fix_nh.html, "fix nve_sphere"_fix_nve_sphere.html, "fix
|
||||
|
||||
@ -49,7 +49,7 @@ fix myhug all nphug temp 1.0 1.0 10.0 iso 40.0 40.0 70.0 drag 200.0 tchain 1 pch
|
||||
This command is a variant of the Nose-Hoover
|
||||
"fix npt"_fix_nh.html fix style.
|
||||
It performs time integration of the Hugoniostat equations
|
||||
of motion developed by Ravelo et al. "(Ravelo)"_#Ravelo.
|
||||
of motion developed by Ravelo et al. "(Ravelo)"_#Ravelo1.
|
||||
These equations compress the system to a state with average
|
||||
axial stress or pressure equal to the specified target value
|
||||
and that satisfies the Rankine-Hugoniot (RH)
|
||||
@ -225,5 +225,5 @@ The keyword defaults are the same as those for "fix npt"_fix_nh.html
|
||||
|
||||
:line
|
||||
|
||||
:link(Ravelo)
|
||||
:link(Ravelo1)
|
||||
[(Ravelo)] Ravelo, Holian, Germann and Lomdahl, Phys Rev B, 70, 014103 (2004).
|
||||
|
||||
@ -15,12 +15,17 @@ fix ID group-ID npt/sphere keyword value ... :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command
|
||||
npt/sphere = style name of this fix command
|
||||
additional thermostat and barostat related keyword/value pairs from the "fix npt"_fix_nh.html command can be appended :ul
|
||||
zero or more keyword/value pairs may be appended :l
|
||||
keyword = {disc} :l
|
||||
{disc} value = none = treat particles as 2d discs, not spheres :pre
|
||||
additional thermostat and barostat related keyword/value pairs from the "fix npt"_fix_nh.html command can be appended :l,ule
|
||||
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 1 all npt/sphere temp 300.0 300.0 100.0 iso 0.0 0.0 1000.0
|
||||
fix 2 all npt/sphere temp 300.0 300.0 100.0 x 5.0 5.0 1000.0
|
||||
fix 2 all npt/sphere temp 300.0 300.0 100.0 x 5.0 5.0 1000.0 disc
|
||||
fix 2 all npt/sphere temp 300.0 300.0 100.0 x 5.0 5.0 1000.0 drag 0.2
|
||||
fix 2 water npt/sphere temp 300.0 300.0 100.0 aniso 0.0 0.0 1000.0 dilate partial :pre
|
||||
|
||||
@ -42,6 +47,12 @@ degrees of freedom (see below). The translational degrees of freedom
|
||||
can also have a bias velocity removed from them before thermostatting
|
||||
takes place; see the description below.
|
||||
|
||||
If the {disc} keyword is used, then each particle is treated as a 2d
|
||||
disc (circle) instead of as a sphere. This is only possible for 2d
|
||||
simulations, as defined by the "dimension"_dimension.html keyword.
|
||||
The only difference between discs and spheres in this context is their
|
||||
moment of inertia, as used in the time integration.
|
||||
|
||||
Additional parameters affecting the thermostat and barostat are
|
||||
specified by keywords and values documented with the "fix
|
||||
npt"_fix_nh.html command. See, for example, discussion of the {temp},
|
||||
@ -163,6 +174,9 @@ command.
|
||||
All particles in the group must be finite-size spheres. They cannot
|
||||
be point particles.
|
||||
|
||||
Use of the {disc} keyword is only allowed for 2d simulations, as
|
||||
defined by the "dimension"_dimension.html keyword.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"fix npt"_fix_nh.html, "fix nve_sphere"_fix_nve_sphere.html, "fix
|
||||
|
||||
@ -22,11 +22,11 @@ fix 1 all nve/dot :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Apply a rigid-body integrator as described in "(Davidchack)"_#Davidchack
|
||||
Apply a rigid-body integrator as described in "(Davidchack)"_#Davidchack1
|
||||
to a group of atoms, but without Langevin dynamics.
|
||||
This command performs Molecular dynamics (MD)
|
||||
via a velocity-Verlet algorithm and an evolution operator that rotates
|
||||
the quaternion degrees of freedom, similar to the scheme outlined in "(Miller)"_#Miller.
|
||||
the quaternion degrees of freedom, similar to the scheme outlined in "(Miller)"_#Miller1.
|
||||
|
||||
This command is the equivalent of the "fix nve/dotc/langevin"_fix_nve_dotc_langevin.html
|
||||
without damping and noise and can be used to determine the stability range
|
||||
@ -55,7 +55,7 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages.
|
||||
|
||||
:line
|
||||
|
||||
:link(Davidchack)
|
||||
:link(Davidchack1)
|
||||
[(Davidchack)] R.L Davidchack, T.E. Ouldridge, and M.V. Tretyakov. J. Chem. Phys. 142, 144114 (2015).
|
||||
:link(Miller)
|
||||
:link(Miller1)
|
||||
[(Miller)] T. F. Miller III, M. Eleftheriou, P. Pattnaik, A. Ndirango, G. J. Martyna, J. Chem. Phys., 116, 8649-8659 (2002).
|
||||
|
||||
@ -29,14 +29,14 @@ fix 1 all nve/dotc/langevin 1.0 1.0 0.03 457145 angmom 10 :pre
|
||||
[Description:]
|
||||
|
||||
Apply a rigid-body Langevin-type integrator of the kind "Langevin C"
|
||||
as described in "(Davidchack)"_#Davidchack
|
||||
as described in "(Davidchack)"_#Davidchack2
|
||||
to a group of atoms, which models an interaction with an implicit background
|
||||
solvent. This command performs Brownian dynamics (BD)
|
||||
via a technique that splits the integration into a deterministic Hamiltonian
|
||||
part and the Ornstein-Uhlenbeck process for noise and damping.
|
||||
The quaternion degrees of freedom are updated though an evolution
|
||||
operator which performs a rotation in quaternion space, preserves
|
||||
the quaternion norm and is akin to "(Miller)"_#Miller.
|
||||
the quaternion norm and is akin to "(Miller)"_#Miller2.
|
||||
|
||||
In terms of syntax this command has been closely modelled on the
|
||||
"fix langevin"_fix_langevin.html and its {angmom} option. But it combines
|
||||
@ -72,7 +72,7 @@ dt damp), where Kb is the Boltzmann constant, T is the desired
|
||||
temperature, m is the mass of the particle, dt is the timestep size,
|
||||
and damp is the damping factor. Random numbers are used to randomize
|
||||
the direction and magnitude of this force as described in
|
||||
"(Dunweg)"_#Dunweg, where a uniform random number is used (instead of
|
||||
"(Dunweg)"_#Dunweg3, where a uniform random number is used (instead of
|
||||
a Gaussian random number) for speed.
|
||||
|
||||
:line
|
||||
@ -126,9 +126,9 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages.
|
||||
|
||||
:line
|
||||
|
||||
:link(Davidchack)
|
||||
:link(Davidchack2)
|
||||
[(Davidchack)] R.L Davidchack, T.E. Ouldridge, M.V. Tretyakov. J. Chem. Phys. 142, 144114 (2015).
|
||||
:link(Miller)
|
||||
:link(Miller2)
|
||||
[(Miller)] T. F. Miller III, M. Eleftheriou, P. Pattnaik, A. Ndirango, G. J. Martyna, J. Chem. Phys., 116, 8649-8659 (2002).
|
||||
:link(Dunweg)
|
||||
:link(Dunweg3)
|
||||
[(Dunweg)] B. Dunweg, W. Paul, Int. J. Mod. Phys. C, 2, 817-27 (1991).
|
||||
|
||||
@ -33,7 +33,7 @@ fix step all nve/manifold/rattle 1e-8 100 ellipsoid 2.5 2.5 5.0 every 25 :pre
|
||||
|
||||
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
|
||||
timestep. The constraint is handled by RATTLE "(Andersen)"_#Andersen1
|
||||
written out for the special case of single-particle constraints as
|
||||
explained in "(Paquay)"_#Paquay2. V is volume; E is energy. This way,
|
||||
the dynamics of particles constrained to curved surfaces can be
|
||||
@ -92,7 +92,7 @@ manifoldforce"_fix_manifoldforce.html
|
||||
|
||||
:line
|
||||
|
||||
:link(Andersen)
|
||||
:link(Andersen1)
|
||||
[(Andersen)] Andersen, J. Comp. Phys. 52, 24, (1983).
|
||||
|
||||
:link(Paquay2)
|
||||
|
||||
@ -16,16 +16,18 @@ fix ID group-ID nve/sphere :pre
|
||||
ID, group-ID are documented in "fix"_fix.html command :ulb,l
|
||||
nve/sphere = style name of this fix command :l
|
||||
zero or more keyword/value pairs may be appended :l
|
||||
keyword = {update}
|
||||
keyword = {update} or {disc} :l
|
||||
{update} value = {dipole} or {dipole/dlm}
|
||||
dipole = update orientation of dipole moment during integration
|
||||
dipole/dlm = use DLM integrator to update dipole orientation :pre
|
||||
dipole/dlm = use DLM integrator to update dipole orientation
|
||||
{disc} value = none = treat particles as 2d discs, not spheres :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 1 all nve/sphere
|
||||
fix 1 all nve/sphere update dipole
|
||||
fix 1 all nve/sphere disc
|
||||
fix 1 all nve/sphere update dipole/dlm :pre
|
||||
|
||||
[Description:]
|
||||
@ -52,6 +54,12 @@ Dullweber-Leimkuhler-McLachlan integration scheme
|
||||
giving better energy conservation and allows slightly longer timesteps
|
||||
at only a small additional computational cost.
|
||||
|
||||
If the {disc} keyword is used, then each particle is treated as a 2d
|
||||
disc (circle) instead of as a sphere. This is only possible for 2d
|
||||
simulations, as defined by the "dimension"_dimension.html keyword.
|
||||
The only difference between discs and spheres in this context is their
|
||||
moment of inertia, as used in the time integration.
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
@ -98,6 +106,9 @@ command.
|
||||
All particles in the group must be finite-size spheres. They cannot
|
||||
be point particles.
|
||||
|
||||
Use of the {disc} keyword is only allowed for 2d simulations, as
|
||||
defined by the "dimension"_dimension.html keyword.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"fix nve"_fix_nve.html, "fix nve/asphere"_fix_nve_asphere.html
|
||||
|
||||
@ -37,7 +37,7 @@ fix 1 all nvt/manifold/rattle 1e-4 10 cylinder 3.0 temp 1.0 1.0 10.0
|
||||
|
||||
[Description:]
|
||||
|
||||
This fix combines the RATTLE-based "(Andersen)"_#Andersen time integrator of "fix nve/manifold/rattle"_fix_nve_manifold_rattle.html "(Paquay)"_#Paquay3 with a Nose-Hoover-chain thermostat to sample the
|
||||
This fix combines the RATTLE-based "(Andersen)"_#Andersen2 time integrator of "fix nve/manifold/rattle"_fix_nve_manifold_rattle.html "(Paquay)"_#Paquay3 with a Nose-Hoover-chain thermostat to sample the
|
||||
canonical ensemble of particles constrained to a curved surface (manifold). This sampling does suffer from discretization bias of O(dt).
|
||||
For a list of currently supported manifolds and their parameters, see "manifolds"_manifolds.html
|
||||
|
||||
@ -72,7 +72,7 @@ section for more info.
|
||||
|
||||
:line
|
||||
|
||||
:link(Andersen)
|
||||
:link(Andersen2)
|
||||
[(Andersen)] Andersen, J. Comp. Phys. 52, 24, (1983).
|
||||
|
||||
:link(Paquay3)
|
||||
|
||||
@ -54,9 +54,9 @@ by fix nvt/sllod. LAMMPS will give an error if this setting is not
|
||||
consistent.
|
||||
|
||||
The SLLOD equations of motion, originally proposed by Hoover and Ladd
|
||||
(see "(Evans and Morriss)"_#Evans), were proven to be equivalent to
|
||||
(see "(Evans and Morriss)"_#Evans3), were proven to be equivalent to
|
||||
Newton's equations of motion for shear flow by "(Evans and
|
||||
Morriss)"_#Evans. They were later shown to generate the desired
|
||||
Morriss)"_#Evans3. They were later shown to generate the desired
|
||||
velocity gradient and the correct production of work by stresses for
|
||||
all forms of homogeneous flow by "(Daivis and Todd)"_#Daivis. As
|
||||
implemented in LAMMPS, they are coupled to a Nose/Hoover chain
|
||||
@ -173,7 +173,7 @@ Same as "fix nvt"_fix_nh.html, except tchain = 1.
|
||||
|
||||
:line
|
||||
|
||||
:link(Evans)
|
||||
:link(Evans3)
|
||||
[(Evans and Morriss)] Evans and Morriss, Phys Rev A, 30, 1528 (1984).
|
||||
|
||||
:link(Daivis)
|
||||
|
||||
@ -89,6 +89,6 @@ Same as "fix nvt/eff"_fix_nh_eff.html, except tchain = 1.
|
||||
|
||||
:line
|
||||
|
||||
:link(Tuckerman)
|
||||
:link(Tuckerman2)
|
||||
[(Tuckerman)] Tuckerman, Mundy, Balasubramanian, Klein, J Chem Phys,
|
||||
106, 5615 (1997).
|
||||
|
||||
@ -13,13 +13,17 @@ fix nvt/sphere/omp command :h3
|
||||
|
||||
fix ID group-ID nvt/sphere keyword value ... :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command
|
||||
nvt/sphere = style name of this fix command
|
||||
additional thermostat related keyword/value pairs from the "fix nvt"_fix_nh.html command can be appended :ul
|
||||
ID, group-ID are documented in "fix"_fix.html command :ulb,l
|
||||
nvt/sphere = style name of this fix command :l
|
||||
zero or more keyword/value pairs may be appended :l
|
||||
keyword = {disc} :l
|
||||
{disc} value = none = treat particles as 2d discs, not spheres :pre
|
||||
additional thermostat related keyword/value pairs from the "fix nvt"_fix_nh.html command can be appended :l,ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 1 all nvt/sphere temp 300.0 300.0 100.0
|
||||
fix 1 all nvt/sphere temp 300.0 300.0 100.0 disc
|
||||
fix 1 all nvt/sphere temp 300.0 300.0 100.0 drag 0.2 :pre
|
||||
|
||||
[Description:]
|
||||
@ -40,6 +44,12 @@ degrees of freedom (see below). The translational degrees of freedom
|
||||
can also have a bias velocity removed from them before thermostatting
|
||||
takes place; see the description below.
|
||||
|
||||
If the {disc} keyword is used, then each particle is treated as a 2d
|
||||
disc (circle) instead of as a sphere. This is only possible for 2d
|
||||
simulations, as defined by the "dimension"_dimension.html keyword.
|
||||
The only difference between discs and spheres in this context is their
|
||||
moment of inertia, as used in the time integration.
|
||||
|
||||
Additional parameters affecting the thermostat are specified by
|
||||
keywords and values documented with the "fix nvt"_fix_nh.html
|
||||
command. See, for example, discussion of the {temp} and {drag}
|
||||
@ -140,6 +150,9 @@ command.
|
||||
All particles in the group must be finite-size spheres. They cannot
|
||||
be point particles.
|
||||
|
||||
Use of the {disc} keyword is only allowed for 2d simulations, as
|
||||
defined by the "dimension"_dimension.html keyword.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"fix nvt"_fix_nh.html, "fix nve_sphere"_fix_nve_sphere.html, "fix
|
||||
|
||||
@ -117,6 +117,12 @@ treated as rigid bodies, use the {rigid} keyword, specifying as its
|
||||
value the ID of a separate "fix rigid/small"_fix_rigid.html
|
||||
command which also appears in your input script.
|
||||
|
||||
NOTE: If you wish the new rigid molecules (and other rigid molecules)
|
||||
to be thermostatted correctly via "fix rigid/small/nvt"_fix_rigid.html
|
||||
or "fix rigid/small/npt"_fix_rigid.html, then you need to use the
|
||||
"fix_modify dynamic/dof yes" command for the rigid fix. This is to
|
||||
inform that fix that the molecule count will vary dynamically.
|
||||
|
||||
If you wish to insert molecules via the {mol} keyword, that will have
|
||||
their bonds or angles constrained via SHAKE, use the {shake} keyword,
|
||||
specifying as its value the ID of a separate "fix
|
||||
|
||||
@ -35,7 +35,7 @@ fix 2 all press/berendsen aniso 0.0 0.0 1000.0 dilate partial :pre
|
||||
[Description:]
|
||||
|
||||
Reset the pressure of the system by using a Berendsen barostat
|
||||
"(Berendsen)"_#Berendsen, which rescales the system volume and
|
||||
"(Berendsen)"_#Berendsen1, which rescales the system volume and
|
||||
(optionally) the atoms coordinates within the simulation box every
|
||||
timestep.
|
||||
|
||||
@ -221,7 +221,7 @@ pressure for whatever "units"_units.html are defined.
|
||||
|
||||
:line
|
||||
|
||||
:link(Berendsen)
|
||||
:link(Berendsen1)
|
||||
|
||||
[(Berendsen)] Berendsen, Postma, van Gunsteren, DiNola, Haak, J Chem
|
||||
Phys, 81, 3684 (1984).
|
||||
|
||||
@ -43,8 +43,8 @@ fix 1 all qeq/fire 1 10 1.0e-3 100 my_qeq qdamp 0.2 qstep 0.1 :pre
|
||||
[Description:]
|
||||
|
||||
Perform the charge equilibration (QEq) method as described in "(Rappe
|
||||
and Goddard)"_#Rappe and formulated in "(Nakano)"_#Nakano (also known
|
||||
as the matrix inversion method) and in "(Rick and Stuart)"_#Rick (also
|
||||
and Goddard)"_#Rappe1 and formulated in "(Nakano)"_#Nakano1 (also known
|
||||
as the matrix inversion method) and in "(Rick and Stuart)"_#Rick1 (also
|
||||
known as the extended Lagrangian method) based on the
|
||||
electronegativity equilization principle.
|
||||
|
||||
@ -97,8 +97,8 @@ below, thus the others can be set to 0.0 if desired.
|
||||
{chi} = electronegativity in energy units
|
||||
{eta} = self-Coulomb potential in energy units
|
||||
{gamma} = shielded Coulomb constant defined by "ReaxFF force field"_#vanDuin in distance units
|
||||
{zeta} = Slater type orbital exponent defined by the "Streitz-Mintmire"_#Streitz potential in reverse distance units
|
||||
{qcore} = charge of the nucleus defined by the "Streitz-Mintmire potential"_#Streitz potential in charge units :ul
|
||||
{zeta} = Slater type orbital exponent defined by the "Streitz-Mintmire"_#Streitz1 potential in reverse distance units
|
||||
{qcore} = charge of the nucleus defined by the "Streitz-Mintmire potential"_#Streitz1 potential in charge units :ul
|
||||
|
||||
The {qeq/point} style describes partial charges on atoms as point
|
||||
charges. Interaction between a pair of charged particles is 1/r,
|
||||
@ -126,7 +126,7 @@ charge densities centered around atoms via the Slater 1{s} orbital, so
|
||||
that the interaction between a pair of charged particles is the
|
||||
product of two Slater 1{s} orbitals. The expression for the Slater
|
||||
1{s} orbital is given under equation (6) of the
|
||||
"Streitz-Mintmire"_#Streitz paper. Only the {chi}, {eta}, {zeta}, and
|
||||
"Streitz-Mintmire"_#Streitz1 paper. Only the {chi}, {eta}, {zeta}, and
|
||||
{qcore} parameters from the {qfile} file are used. This style solves
|
||||
partial charges on atoms via the matrix inversion method. A tolerance
|
||||
of 1.0e-6 is usually a good number. Keyword {alpha} can be used to
|
||||
@ -194,18 +194,18 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
:line
|
||||
|
||||
:link(Rappe)
|
||||
:link(Rappe1)
|
||||
[(Rappe and Goddard)] A. K. Rappe and W. A. Goddard III, J Physical
|
||||
Chemistry, 95, 3358-3363 (1991).
|
||||
|
||||
:link(Nakano)
|
||||
:link(Nakano1)
|
||||
[(Nakano)] A. Nakano, Computer Physics Communications, 104, 59-69 (1997).
|
||||
|
||||
:link(Rick)
|
||||
:link(Rick1)
|
||||
[(Rick and Stuart)] S. W. Rick, S. J. Stuart, B. J. Berne, J Chemical Physics
|
||||
101, 16141 (1994).
|
||||
|
||||
:link(Streitz)
|
||||
:link(Streitz1)
|
||||
[(Streitz-Mintmire)] F. H. Streitz, J. W. Mintmire, Physical Review B, 50,
|
||||
16, 11996 (1994)
|
||||
|
||||
|
||||
@ -28,7 +28,7 @@ fix 1 all qeq/reax 1 0.0 10.0 1.0e-6 param.qeq :pre
|
||||
[Description:]
|
||||
|
||||
Perform the charge equilibration (QEq) method as described in "(Rappe
|
||||
and Goddard)"_#Rappe and formulated in "(Nakano)"_#Nakano. It is
|
||||
and Goddard)"_#Rappe2 and formulated in "(Nakano)"_#Nakano2. It is
|
||||
typically used in conjunction with the ReaxFF force field model as
|
||||
implemented in the "pair_style reax/c"_pair_reax_c.html command, but
|
||||
it can be used with any potential in LAMMPS, so long as it defines and
|
||||
@ -36,7 +36,7 @@ uses charges on each atom. The "fix qeq/comb"_fix_qeq_comb.html
|
||||
command should be used to perform charge equilibration with the "COMB
|
||||
potential"_pair_comb.html. For more technical details about the
|
||||
charge equilibration performed by fix qeq/reax, see the
|
||||
"(Aktulga)"_#Aktulga paper.
|
||||
"(Aktulga)"_#qeq-Aktulga paper.
|
||||
|
||||
The QEq method minimizes the electrostatic energy of the system by
|
||||
adjusting the partial charge on individual atoms based on interactions
|
||||
@ -112,13 +112,13 @@ be used for periodic cell dimensions less than 10 angstroms.
|
||||
|
||||
:line
|
||||
|
||||
:link(Rappe)
|
||||
:link(Rappe2)
|
||||
[(Rappe)] Rappe and Goddard III, Journal of Physical Chemistry, 95,
|
||||
3358-3363 (1991).
|
||||
|
||||
:link(Nakano)
|
||||
:link(Nakano2)
|
||||
[(Nakano)] Nakano, Computer Physics Communications, 104, 59-69 (1997).
|
||||
|
||||
:link(Aktulga)
|
||||
(Aktulga) Aktulga, Fogarty, Pandit, Grama, Parallel Computing, 38,
|
||||
:link(qeq-Aktulga)
|
||||
[(Aktulga)] Aktulga, Fogarty, Pandit, Grama, Parallel Computing, 38,
|
||||
245-259 (2012).
|
||||
|
||||
@ -93,7 +93,7 @@ Examples of large rigid bodies are a colloidal particle, or portions
|
||||
of a biomolecule such as a protein.
|
||||
|
||||
Example of small rigid bodies are patchy nanoparticles, such as those
|
||||
modeled in "this paper"_#Zhang by Sharon Glotzer's group, clumps of
|
||||
modeled in "this paper"_#Zhang1 by Sharon Glotzer's group, clumps of
|
||||
granular particles, lipid molecules consiting of one or more point
|
||||
dipoles connected to other spheroids or ellipsoids, irregular
|
||||
particles built from line segments (2d) or triangles (3d), and
|
||||
@ -299,12 +299,12 @@ perform constant NVE time integration. They are referred to below as
|
||||
the 4 NVE rigid styles. The only difference is that the {rigid} and
|
||||
{rigid/small} styles use an integration technique based on Richardson
|
||||
iterations. The {rigid/nve} and {rigid/small/nve} styles uses the
|
||||
methods described in the paper by "Miller"_#Miller, which are thought
|
||||
methods described in the paper by "Miller"_#Miller3, which are thought
|
||||
to provide better energy conservation than an iterative approach.
|
||||
|
||||
The {rigid/nvt} and {rigid/nvt/small} styles performs constant NVT
|
||||
integration using a Nose/Hoover thermostat with chains as described
|
||||
originally in "(Hoover)"_#Hoover and "(Martyna)"_#Martyna, which
|
||||
originally in "(Hoover)"_#Hoover and "(Martyna)"_#Martyna2, which
|
||||
thermostats both the translational and rotational degrees of freedom
|
||||
of the rigid bodies. They are referred to below as the 2 NVT rigid
|
||||
styles. The rigid-body algorithm used by {rigid/nvt} is described in
|
||||
@ -788,13 +788,13 @@ torque. Also Tchain = Pchain = 10, Titer = 1, Torder = 3.
|
||||
:link(Kamberaj)
|
||||
[(Kamberaj)] Kamberaj, Low, Neal, J Chem Phys, 122, 224114 (2005).
|
||||
|
||||
:link(Martyna)
|
||||
:link(Martyna2)
|
||||
[(Martyna)] Martyna, Klein, Tuckerman, J Chem Phys, 97, 2635 (1992);
|
||||
Martyna, Tuckerman, Tobias, Klein, Mol Phys, 87, 1117.
|
||||
|
||||
:link(Miller)
|
||||
:link(Miller3)
|
||||
[(Miller)] Miller, Eleftheriou, Pattnaik, Ndirango, and Newns,
|
||||
J Chem Phys, 116, 8649 (2002).
|
||||
|
||||
:link(Zhang)
|
||||
:link(Zhang1)
|
||||
[(Zhang)] Zhang, Glotzer, Nanoletters, 4, 1407-1413 (2004).
|
||||
|
||||
@ -53,7 +53,7 @@ velocities are approximated as finite differences to the trajectories
|
||||
integrated explicitly, as with velocity Verlet which is what LAMMPS
|
||||
uses as an integration method, a second set of constraining forces is
|
||||
required in order to eliminate velocity components along the bonds
|
||||
("Andersen (1983)"_#Andersen).
|
||||
("Andersen (1983)"_#Andersen3).
|
||||
|
||||
In order to formulate individual constraints for SHAKE and RATTLE,
|
||||
focus on a single molecule whose bonds are constrained. Let Ri and Vi
|
||||
@ -171,7 +171,7 @@ more instructions on how to use the accelerated styles effectively.
|
||||
|
||||
The velocity constraints lead to a linear system of equations which
|
||||
can be solved analytically. The implementation of the algorithm in
|
||||
LAMMPS closely follows ("Andersen (1983)"_#Andersen).
|
||||
LAMMPS closely follows ("Andersen (1983)"_#Andersen3).
|
||||
|
||||
NOTE: The fix rattle command modifies forces and velocities and thus
|
||||
should be defined after all other integration fixes in your input
|
||||
@ -223,5 +223,5 @@ SHAKE or RATTLE should not be used to constrain an angle at 180 degrees
|
||||
[(Ryckaert)] J.-P. Ryckaert, G. Ciccotti and H. J. C. Berendsen,
|
||||
J of Comp Phys, 23, 327-341 (1977).
|
||||
|
||||
:link(Andersen)
|
||||
:link(Andersen3)
|
||||
[(Andersen)] H. Andersen, J of Comp Phys, 52, 24-34 (1983).
|
||||
|
||||
@ -30,7 +30,7 @@ nve"_fix_nve.html or "fix nph"_fix_nh.html). 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 "(Lisal)"_#Lisal and
|
||||
"(Larentzos1)"_#Larentzos1.
|
||||
"(Larentzos1)"_#Larentzos1sh.
|
||||
|
||||
The fix {shardlow} must be used with the "pair_style
|
||||
dpd/fdt"_pair_style.html or "pair_style
|
||||
@ -83,13 +83,13 @@ particle dynamics as isothermal, isobaric, isoenergetic, and
|
||||
isoenthalpic conditions using Shardlow-like splitting algorithms.",
|
||||
J. Chem. Phys., 135, 204105 (2011).
|
||||
|
||||
:link(Larentzos1)
|
||||
:link(Larentzos1sh)
|
||||
[(Larentzos1)] 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).
|
||||
|
||||
:link(Larentzos2)
|
||||
:link(Larentzos2sh)
|
||||
[(Larentzos2)] 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
|
||||
|
||||
@ -72,7 +72,7 @@ viscosity"_fix_viscosity.html, and "fix nvt/sllod"_fix_nvt_sllod.html,
|
||||
can be used in conjunction with the SRD model.
|
||||
|
||||
For more details on how the SRD model is implemented in LAMMPS, "this
|
||||
paper"_#Petersen describes the implementation and usage of pure SRD
|
||||
paper"_#Petersen1 describes the implementation and usage of pure SRD
|
||||
fluids. "This paper"_#Lechman, which is nearly complete, describes
|
||||
the implementation and usage of mixture systems (solute particles in
|
||||
an SRD fluid). See the examples/srd directory for sample input
|
||||
@ -390,7 +390,7 @@ rescale = yes.
|
||||
:link(Hecht)
|
||||
[(Hecht)] Hecht, Harting, Ihle, Herrmann, Phys Rev E, 72, 011408 (2005).
|
||||
|
||||
:link(Petersen)
|
||||
:link(Petersen1)
|
||||
[(Petersen)] Petersen, Lechman, Plimpton, Grest, in' t Veld, Schunk, J
|
||||
Chem Phys, 132, 174106 (2010).
|
||||
|
||||
|
||||
@ -26,7 +26,7 @@ fix 1 all temp/berendsen 300.0 300.0 100.0 :pre
|
||||
[Description:]
|
||||
|
||||
Reset the temperature of a group of atoms by using a Berendsen
|
||||
thermostat "(Berendsen)"_#Berendsen, which rescales their velocities
|
||||
thermostat "(Berendsen)"_#Berendsen2, which rescales their velocities
|
||||
every timestep.
|
||||
|
||||
The thermostat is applied to only the translational degrees of freedom
|
||||
@ -157,7 +157,7 @@ temp/rescale"_fix_temp_rescale.html, "fix langevin"_fix_langevin.html,
|
||||
|
||||
:line
|
||||
|
||||
:link(Berendsen)
|
||||
:link(Berendsen2)
|
||||
|
||||
[(Berendsen)] Berendsen, Postma, van Gunsteren, DiNola, Haak, J Chem
|
||||
Phys, 81, 3684 (1984).
|
||||
|
||||
@ -31,7 +31,7 @@ fix 1 all thermal/conductivity 50 z 20 swap 2 :pre
|
||||
[Description:]
|
||||
|
||||
Use the Muller-Plathe algorithm described in "this
|
||||
paper"_#Muller-Plathe to exchange kinetic energy between two particles
|
||||
paper"_#Muller-Plathe1 to exchange kinetic energy between two particles
|
||||
in different regions of the simulation box every N steps. This
|
||||
induces a temperature gradient in the system. As described below this
|
||||
enables the thermal conductivity of a material to be calculated. This
|
||||
@ -85,7 +85,7 @@ quantity by time and the cross-sectional area of the simulation box
|
||||
yields a heat flux. The ratio of heat flux to the slope of the
|
||||
temperature profile is proportional to the thermal conductivity of the
|
||||
fluid, in appropriate units. See the "Muller-Plathe
|
||||
paper"_#Muller-Plathe for details.
|
||||
paper"_#Muller-Plathe1 for details.
|
||||
|
||||
NOTE: If your system is periodic in the direction of the heat flux,
|
||||
then the flux is going in 2 directions. This means the effective heat
|
||||
@ -136,7 +136,7 @@ kinetic energy of atoms that are in constrained molecules, e.g. via
|
||||
"fix shake"_fix_shake.html or "fix rigid"_fix_rigid.html. This is
|
||||
because application of the constraints will alter the amount of
|
||||
transferred momentum. You should, however, be able to use flexible
|
||||
molecules. See the "Zhang paper"_#Zhang for a discussion and results
|
||||
molecules. See the "Zhang paper"_#Zhang2 for a discussion and results
|
||||
of this idea.
|
||||
|
||||
When running a simulation with large, massive particles or molecules
|
||||
@ -155,9 +155,9 @@ The option defaults are swap = 1.
|
||||
|
||||
:line
|
||||
|
||||
:link(Muller-Plathe)
|
||||
:link(Muller-Plathe1)
|
||||
[(Muller-Plathe)] Muller-Plathe, J Chem Phys, 106, 6082 (1997).
|
||||
|
||||
:link(Zhang)
|
||||
:link(Zhang2)
|
||||
[(Zhang)] Zhang, Lussetti, de Souza, Muller-Plathe, J Phys Chem B,
|
||||
109, 15060-15067 (2005).
|
||||
|
||||
@ -33,7 +33,7 @@ fix 1 all viscosity 50 x z 20 swap 2 vtarget 1.5 :pre
|
||||
[Description:]
|
||||
|
||||
Use the Muller-Plathe algorithm described in "this
|
||||
paper"_#Muller-Plathe to exchange momenta between two particles in
|
||||
paper"_#Muller-Plathe2 to exchange momenta between two particles in
|
||||
different regions of the simulation box every N steps. This induces a
|
||||
shear velocity profile in the system. As described below this enables
|
||||
a viscosity of the fluid to be calculated. This algorithm is
|
||||
@ -83,7 +83,7 @@ quantity by time and the cross-sectional area of the simulation box
|
||||
yields a momentum flux. The ratio of momentum flux to the slope of
|
||||
the shear velocity profile is proportional to the viscosity of the
|
||||
fluid, in appropriate units. See the "Muller-Plathe
|
||||
paper"_#Muller-Plathe for details.
|
||||
paper"_#Muller-Plathe2 for details.
|
||||
|
||||
NOTE: If your system is periodic in the direction of the momentum
|
||||
flux, then the flux is going in 2 directions. This means the
|
||||
@ -161,7 +161,7 @@ The option defaults are swap = 1 and vtarget = INF.
|
||||
|
||||
:line
|
||||
|
||||
:link(Muller-Plathe)
|
||||
:link(Muller-Plathe2)
|
||||
[(Muller-Plathe)] Muller-Plathe, Phys Rev E, 59, 4894-4898 (1999).
|
||||
|
||||
:link(Maginn)
|
||||
|
||||
@ -42,6 +42,7 @@ Fixes :h1
|
||||
fix_eos_table_rx
|
||||
fix_evaporate
|
||||
fix_external
|
||||
fix_filter_corotate
|
||||
fix_flow_gauss
|
||||
fix_freeze
|
||||
fix_gcmc
|
||||
|
||||
@ -12,7 +12,7 @@ info command :h3
|
||||
|
||||
info args :pre
|
||||
|
||||
args = one or more of the following keywords: {out}, {all}, {system}, {communication}, {computes}, {dumps}, {fixes}, {groups}, {regions}, {variables}, {styles}, {time}, or {configuration}
|
||||
args = one or more of the following keywords: {out}, {all}, {system}, {memory}, {communication}, {computes}, {dumps}, {fixes}, {groups}, {regions}, {variables}, {styles}, {time}, or {configuration}
|
||||
{out} values = {screen}, {log}, {append} filename, {overwrite} filename
|
||||
{styles} values = {all}, {angle}, {atom}, {bond}, {compute}, {command}, {dump}, {dihedral}, {fix}, {improper}, {integrate}, {kspace}, {minimize}, {pair}, {region} :ul
|
||||
|
||||
@ -40,6 +40,17 @@ to that file, which is either appended to or overwritten, respectively.
|
||||
|
||||
The {all} flag activates printing all categories listed below.
|
||||
|
||||
The {configuration} category prints some information about the
|
||||
LAMMPS version as well as architecture and OS it is run on.
|
||||
|
||||
The {memory} category prints some information about the current
|
||||
memory allocation of MPI rank 0 (this the amount of dynamically
|
||||
allocated memory reported by LAMMPS classes). Where supported,
|
||||
also some OS specific information about the size of the reserved
|
||||
memory pool size (this is where malloc() and the new operator
|
||||
request memory from) and the maximum resident set size is reported
|
||||
(this is the maximum amount of physical memory occupied so far).
|
||||
|
||||
The {system} category prints a general system overview listing. This
|
||||
includes the unit style, atom style, number of atoms, bonds, angles,
|
||||
dihedrals, and impropers and the number of the respective types, box
|
||||
@ -93,11 +104,6 @@ region :ul
|
||||
The {time} category prints the accumulated CPU and wall time for the
|
||||
process that writes output (usually MPI rank 0).
|
||||
|
||||
The {configuration} command prints some information about the LAMMPS
|
||||
version and architecture and OS it is run on. Where supported, also
|
||||
information about the memory consumption provided by the OS is
|
||||
reported.
|
||||
|
||||
[Restrictions:] none
|
||||
|
||||
[Related commands:]
|
||||
|
||||
@ -206,7 +206,7 @@ beginning of the run to give the desired estimated error. Other
|
||||
cutoffs such as LJ will not be affected. If the grid is not set using
|
||||
the {mesh} command, this command will also attempt to use the optimal
|
||||
grid that minimizes cost using an estimate given by
|
||||
"(Hardy)"_#Hardy. Note that this cost estimate is not exact, somewhat
|
||||
"(Hardy)"_#Hardy1. Note that this cost estimate is not exact, somewhat
|
||||
experimental, and still may not yield the optimal parameters.
|
||||
|
||||
The {pressure/scalar} keyword applies only to MSM. If this option is
|
||||
@ -235,7 +235,7 @@ collective operations and adequate hardware.
|
||||
The {diff} keyword specifies the differentiation scheme used by the
|
||||
PPPM method to compute forces on particles given electrostatic
|
||||
potentials on the PPPM mesh. The {ik} approach is the default for
|
||||
PPPM and is the original formulation used in "(Hockney)"_#Hockney. It
|
||||
PPPM and is the original formulation used in "(Hockney)"_#Hockney1. It
|
||||
performs differentiation in Kspace, and uses 3 FFTs to transfer each
|
||||
component of the computed fields back to real space for total of 4
|
||||
FFTs per timestep.
|
||||
@ -271,7 +271,7 @@ speed-up the simulations but introduces some error in the force
|
||||
computations, as shown in "(Wennberg)"_#Wennberg. With {none}, it is
|
||||
assumed that no mixing rule is applicable. Splitting of the dispersion
|
||||
coefficients will be performed as described in
|
||||
"(Isele-Holder)"_#Isele-Holder. This splitting can be influenced with
|
||||
"(Isele-Holder)"_#Isele-Holder1. This splitting can be influenced with
|
||||
the {splittol} keywords. Only the eigenvalues that are larger than tol
|
||||
compared to the largest eigenvalues are included. Using this keywords
|
||||
the original matrix of dispersion coefficients is approximated. This
|
||||
@ -280,7 +280,7 @@ computations of the dispersion part is decreased.
|
||||
|
||||
The {force/disp/real} and {force/disp/kspace} keywords set the force
|
||||
accuracy for the real and space computations for the dispersion part
|
||||
of pppm/disp. As shown in "(Isele-Holder)"_#Isele-Holder, optimal
|
||||
of pppm/disp. As shown in "(Isele-Holder)"_#Isele-Holder1, optimal
|
||||
performance and accuracy in the results is obtained when these values
|
||||
are different.
|
||||
|
||||
@ -311,7 +311,7 @@ split = 0, tol = 1.0e-6, and disp/auto = no.
|
||||
|
||||
:line
|
||||
|
||||
:link(Hockney)
|
||||
:link(Hockney1)
|
||||
[(Hockney)] Hockney and Eastwood, Computer Simulation Using Particles,
|
||||
Adam Hilger, NY (1989).
|
||||
|
||||
@ -325,7 +325,7 @@ Adam Hilger, NY (1989).
|
||||
:link(Klapp)
|
||||
[(Klapp)] Klapp, Schoen, J Chem Phys, 117, 8050 (2002).
|
||||
|
||||
:link(Hardy)
|
||||
:link(Hardy1)
|
||||
[(Hardy)] David Hardy thesis: Multilevel Summation for the Fast
|
||||
Evaluation of Forces for the Simulation of Biomolecules, University of
|
||||
Illinois at Urbana-Champaign, (2006).
|
||||
@ -333,7 +333,7 @@ Illinois at Urbana-Champaign, (2006).
|
||||
:link(Hummer)
|
||||
[(Hummer)] Hummer, Gronbech-Jensen, Neumann, J Chem Phys, 109, 2791 (1998)
|
||||
|
||||
:link(Isele-Holder)
|
||||
:link(Isele-Holder1)
|
||||
[(Isele-Holder)] Isele-Holder, Mitchell, Hammond, Kohlmeyer, Ismail, J
|
||||
Chem Theory Comput, 9, 5412 (2013).
|
||||
|
||||
|
||||
@ -152,7 +152,7 @@ such as when using a barostat.
|
||||
:line
|
||||
|
||||
The {pppm/disp} and {pppm/disp/tip4p} styles add a mesh-based long-range
|
||||
dispersion sum option for 1/r^6 potentials "(Isele-Holder)"_#Isele-Holder,
|
||||
dispersion sum option for 1/r^6 potentials "(Isele-Holder)"_#Isele-Holder2012,
|
||||
similar to the {ewald/disp} style. The 1/r^6 capability means
|
||||
that Lennard-Jones or Buckingham potentials can be used without a cutoff,
|
||||
i.e. they become full long-range potentials.
|
||||
@ -163,8 +163,8 @@ This can be done by either choosing the Ewald and grid parameters, or
|
||||
by specifying separate accuracies for the real and kspace
|
||||
calculations. When not making any settings, the simulation will stop with
|
||||
an error message. Further information on the influence of the parameters
|
||||
and how to choose them is described in "(Isele-Holder)"_#Isele-Holder,
|
||||
"(Isele-Holder2)"_#Isele-Holder2 and the
|
||||
and how to choose them is described in "(Isele-Holder)"_#Isele-Holder2012,
|
||||
"(Isele-Holder2)"_#Isele-Holder2013 and the
|
||||
"How-To"_Section_howto.html#howto_24 discussion.
|
||||
|
||||
:line
|
||||
@ -182,13 +182,13 @@ currently support the -DFFT_SINGLE compiler switch.
|
||||
:line
|
||||
|
||||
The {msm} style invokes a multi-level summation method MSM solver,
|
||||
"(Hardy)"_#Hardy or "(Hardy2)"_#Hardy2, which maps atom charge to a 3d
|
||||
mesh, and uses a multi-level hierarchy of coarser and coarser meshes
|
||||
on which direct coulomb solves are done. This method does not use
|
||||
FFTs and scales as N. It may therefore be faster than the other
|
||||
"(Hardy)"_#Hardy2006 or "(Hardy2)"_#Hardy2009, which maps atom charge
|
||||
to a 3d mesh, and uses a multi-level hierarchy of coarser and coarser
|
||||
meshes on which direct coulomb solves are done. This method does not
|
||||
use FFTs and scales as N. It may therefore be faster than the other
|
||||
K-space solvers for relatively large problems when running on large
|
||||
core counts. MSM can also be used for non-periodic boundary conditions and
|
||||
for mixed periodic and non-periodic boundaries.
|
||||
core counts. MSM can also be used for non-periodic boundary conditions
|
||||
and for mixed periodic and non-periodic boundaries.
|
||||
|
||||
MSM is most competitive versus Ewald and PPPM when only relatively
|
||||
low accuracy forces, about 1e-4 relative error or less accurate,
|
||||
@ -247,7 +247,7 @@ equation 9 of "(Petersen)"_#Petersen. RMS force errors in K-space for
|
||||
which is similar to equation 32 of "(Kolafa)"_#Kolafa. RMS force
|
||||
errors in K-space for {pppm} are estimated using equation 38 of
|
||||
"(Deserno)"_#Deserno. RMS force errors for {msm} are estimated
|
||||
using ideas from chapter 3 of "(Hardy)"_#Hardy, with equation 3.197
|
||||
using ideas from chapter 3 of "(Hardy)"_#Hardy2006, with equation 3.197
|
||||
of particular note. When using {msm} with non-periodic boundary
|
||||
conditions, it is expected that the error estimation will be too
|
||||
pessimistic. RMS force errors for dipoles when using {ewald/disp}
|
||||
@ -366,19 +366,19 @@ and Computation 5, 2322 (2009)
|
||||
[(Toukmaji)] Toukmaji, Sagui, Board, and Darden, J Chem Phys, 113,
|
||||
10913 (2000).
|
||||
|
||||
:link(Isele-Holder)
|
||||
:link(Isele-Holder2012)
|
||||
[(Isele-Holder)] Isele-Holder, Mitchell, Ismail, J Chem Phys, 137,
|
||||
174107 (2012).
|
||||
|
||||
:link(Isele-Holder2)
|
||||
:link(Isele-Holder2013)
|
||||
[(Isele-Holder2)] Isele-Holder, Mitchell, Hammond, Kohlmeyer, Ismail,
|
||||
J Chem Theory Comput 9, 5412 (2013).
|
||||
|
||||
:link(Hardy)
|
||||
:link(Hardy2006)
|
||||
[(Hardy)] David Hardy thesis: Multilevel Summation for the Fast
|
||||
Evaluation of Forces for the Simulation of Biomolecules, University of
|
||||
Illinois at Urbana-Champaign, (2006).
|
||||
|
||||
:link(Hardy2)
|
||||
[(Hardy)] Hardy, Stone, Schulten, Parallel Computing 35 (2009)
|
||||
:link(Hardy2009)
|
||||
[(Hardy2)] Hardy, Stone, Schulten, Parallel Computing 35 (2009)
|
||||
164-177.
|
||||
|
||||
@ -168,6 +168,7 @@ fix_eos_table.html
|
||||
fix_eos_table_rx.html
|
||||
fix_evaporate.html
|
||||
fix_external.html
|
||||
fix_filter_corotate.html
|
||||
fix_flow_gauss.html
|
||||
fix_freeze.html
|
||||
fix_gcmc.html
|
||||
@ -455,6 +456,7 @@ pair_meam_spline.html
|
||||
pair_meam_sw_spline.html
|
||||
pair_mgpt.html
|
||||
pair_mie.html
|
||||
pair_momb.html
|
||||
pair_morse.html
|
||||
pair_multi_lucy.html
|
||||
pair_multi_lucy_rx.html
|
||||
@ -462,6 +464,7 @@ pair_nb3b_harmonic.html
|
||||
pair_nm.html
|
||||
pair_none.html
|
||||
pair_oxdna.html
|
||||
pair_oxdna2.html
|
||||
pair_peri.html
|
||||
pair_polymorphic.html
|
||||
pair_quip.html
|
||||
|
||||
@ -44,7 +44,7 @@ of the energy barrier associated with a transition state, e.g. for an
|
||||
atom to perform a diffusive hop from one energy basin to another in a
|
||||
coordinated fashion with its neighbors. The implementation in LAMMPS
|
||||
follows the discussion in these 3 papers: "(HenkelmanA)"_#HenkelmanA,
|
||||
"(HenkelmanB)"_#HenkelmanB, and "(Nakano)"_#Nakano.
|
||||
"(HenkelmanB)"_#HenkelmanB, and "(Nakano)"_#Nakano3.
|
||||
|
||||
Each replica runs on a partition of one or more processors. Processor
|
||||
partitions are defined at run-time using the -partition command-line
|
||||
@ -412,5 +412,5 @@ langevin"_fix_langevin.html, "fix viscous"_fix_viscous.html
|
||||
[(HenkelmanB)] Henkelman, Uberuaga, Jonsson, J Chem Phys, 113,
|
||||
9901-9904 (2000).
|
||||
|
||||
:link(Nakano)
|
||||
:link(Nakano3)
|
||||
[(Nakano)] Nakano, Comp Phys Comm, 178, 280-289 (2008).
|
||||
|
||||
@ -62,12 +62,13 @@ args = arguments specific to the style :l
|
||||
{no_affinity} values = none
|
||||
{kokkos} args = keyword value ...
|
||||
zero or more keyword/value pairs may be appended
|
||||
keywords = {neigh} or {newton} or {binsize} or {comm} or {comm/exchange} or {comm/forward}
|
||||
{neigh} value = {full} or {half} or {n2} or {full/cluster}
|
||||
keywords = {neigh} or {neigh/qeq} or {newton} or {binsize} or {comm} or {comm/exchange} or {comm/forward}
|
||||
{neigh} value = {full} or {half}
|
||||
full = full neighbor list
|
||||
half = half neighbor list built in thread-safe manner
|
||||
{neigh/qeq} value = {full} or {half}
|
||||
full = full neighbor list
|
||||
half = half neighbor list built in thread-safe manner
|
||||
n2 = non-binning neighbor list build, O(N^2) algorithm
|
||||
full/cluster = full neighbor list with clustered groups of atoms
|
||||
{newton} = {off} or {on}
|
||||
off = set Newton pairwise and bonded flags off (default)
|
||||
on = set Newton pairwise and bonded flags on
|
||||
@ -392,10 +393,7 @@ default value as listed below.
|
||||
|
||||
The {neigh} keyword determines how neighbor lists are built. A value
|
||||
of {half} uses a thread-safe variant of half-neighbor lists,
|
||||
the same as used by most pair styles in LAMMPS. A value of
|
||||
{n2} uses an O(N^2) algorithm to build the neighbor list without
|
||||
binning, where N = # of atoms on a processor. It is typically slower
|
||||
than the other methods, which use binning.
|
||||
the same as used by most pair styles in LAMMPS.
|
||||
|
||||
A value of {full} uses a full neighbor lists and is the default. This
|
||||
performs twice as much computation as the {half} option, however that
|
||||
@ -403,15 +401,9 @@ is often a win because it is thread-safe and doesn't require atomic
|
||||
operations in the calculation of pair forces. For that reason, {full}
|
||||
is the default setting. However, when running in MPI-only mode with 1
|
||||
thread per MPI task, {half} neighbor lists will typically be faster,
|
||||
just as it is for non-accelerated pair styles.
|
||||
|
||||
A value of {full/cluster} is an experimental neighbor style, where
|
||||
particles interact with all particles within a small cluster, if at
|
||||
least one of the clusters particles is within the neighbor cutoff
|
||||
range. This potentially allows for better vectorization on
|
||||
architectures such as the Intel Phi. If also reduces the size of the
|
||||
neighbor list by roughly a factor of the cluster size, thus reducing
|
||||
the total memory footprint considerably.
|
||||
just as it is for non-accelerated pair styles. Similarly, the {neigh/qeq}
|
||||
keyword determines how neighbor lists are built for "fix qeq/reax/kk"_fix_qeq_reax.html.
|
||||
If not explicitly set, the value of {neigh/qeq} will match {neigh}.
|
||||
|
||||
The {newton} keyword sets the Newton flags for pairwise and bonded
|
||||
interactions to {off} or {on}, the same as the "newton"_newton.html
|
||||
@ -582,9 +574,9 @@ is used. If it is not used, you must invoke the package intel
|
||||
command in your input script or or via the "-pk intel" "command-line
|
||||
switch"_Section_start.html#start_7.
|
||||
|
||||
For the KOKKOS package, the option defaults neigh = full, newton =
|
||||
off, binsize = 0.0, and comm = device. These settings are made
|
||||
automatically by the required "-k on" "command-line
|
||||
For the KOKKOS package, the option defaults neigh = full, neigh/qeq
|
||||
= full, newton = off, binsize = 0.0, and comm = device. These settings
|
||||
are made automatically by the required "-k on" "command-line
|
||||
switch"_Section_start.html#start_7. You can change them bu using the
|
||||
package kokkos command in your input script or via the "-pk kokkos"
|
||||
"command-line switch"_Section_start.html#start_7.
|
||||
|
||||
@ -137,7 +137,7 @@ and beta_pi,ij)(r_ij).
|
||||
|
||||
The parameters/coefficients format for the different kinds of BOP
|
||||
files are given below with variables matching the formulation of Ward
|
||||
("Ward"_#Ward) and Zhou ("Zhou"_#Zhou). Each header line containing a
|
||||
("Ward"_#Ward) and Zhou ("Zhou"_#Zhou1). Each header line containing a
|
||||
":" is preceded by a blank line.
|
||||
|
||||
|
||||
@ -258,7 +258,7 @@ Line 2: (A_ij)^(mu*nu) (for e1-e2 and repeats as above) :ul
|
||||
The parameters/coefficients format for the BOP potentials input file
|
||||
containing pre-tabulated functions of g is given below with variables
|
||||
matching the formulation of Ward ("Ward"_#Ward). This format also
|
||||
assumes the angular functions have the formulation of ("Zhou"_#Zhou).
|
||||
assumes the angular functions have the formulation of ("Zhou"_#Zhou1).
|
||||
|
||||
Line 1: # elements N :ul
|
||||
|
||||
@ -314,7 +314,7 @@ The rest of the table has the same structure as the previous section
|
||||
The parameters/coefficients format for the BOP potentials input file
|
||||
containing pre-tabulated functions of g is given below with variables
|
||||
matching the formulation of Ward ("Ward"_#Ward). This format also
|
||||
assumes the angular functions have the formulation of ("Zhou"_#Zhou).
|
||||
assumes the angular functions have the formulation of ("Zhou"_#Zhou1).
|
||||
|
||||
Line 1: # elements N :ul
|
||||
|
||||
@ -425,5 +425,5 @@ Drautz, and D.G. Pettifor, Phys. Rev. B, 73, 45206 (2006).
|
||||
[(Ward)] D.K. Ward, X.W. Zhou, B.M. Wong, F.P. Doty, and J.A.
|
||||
Zimmerman, Phys. Rev. B, 85,115206 (2012).
|
||||
|
||||
:link(Zhou)
|
||||
:link(Zhou1)
|
||||
[(Zhou)] X.W. Zhou, D.K. Ward, M. Foster (TBP).
|
||||
|
||||
@ -17,12 +17,14 @@ pair_style lj/charmm/coul/long/opt command :h3
|
||||
pair_style lj/charmm/coul/long/omp command :h3
|
||||
pair_style lj/charmm/coul/msm command :h3
|
||||
pair_style lj/charmm/coul/msm/omp command :h3
|
||||
pair_style lj/charmmfsw/coul/charmmfsh command :h3
|
||||
pair_style lj/charmmfsw/coul/long command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
pair_style style args :pre
|
||||
|
||||
style = {lj/charmm/coul/charmm} or {lj/charmm/coul/charmm/implicit} or {lj/charmm/coul/long} or {lj/charmm/coul/msm}
|
||||
style = {lj/charmm/coul/charmm} or {lj/charmm/coul/charmm/implicit} or {lj/charmm/coul/long} or {lj/charmm/coul/msm} or {lj/charmmfsw/coul/charmmfsh} or {lj/charmmfsw/coul/long}
|
||||
args = list of arguments for a particular style :ul
|
||||
{lj/charmm/coul/charmm} args = inner outer (inner2) (outer2)
|
||||
inner, outer = global switching cutoffs for Lennard Jones (and Coulombic if only 2 args)
|
||||
@ -35,12 +37,20 @@ args = list of arguments for a particular style :ul
|
||||
cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args)
|
||||
{lj/charmm/coul/msm} args = inner outer (cutoff)
|
||||
inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
|
||||
cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args)
|
||||
{lj/charmmfsw/coul/charmmfsh} args = inner outer (cutoff)
|
||||
inner, outer = global cutoffs for LJ (and Coulombic if only 2 args)
|
||||
cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args)
|
||||
{lj/charmmfsw/coul/long} args = inner outer (cutoff)
|
||||
inner, outer = global cutoffs for LJ (and Coulombic if only 2 args)
|
||||
cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args) :pre
|
||||
|
||||
[Examples:]
|
||||
|
||||
pair_style lj/charmm/coul/charmm 8.0 10.0
|
||||
pair_style lj/charmm/coul/charmm 8.0 10.0 7.0 9.0
|
||||
pair_style lj/charmmfsw/coul/charmmfsh 10.0 12.0
|
||||
pair_style lj/charmmfsw/coul/charmmfsh 10.0 12.0 9.0
|
||||
pair_coeff * * 100.0 2.0
|
||||
pair_coeff 1 1 100.0 2.0 150.0 3.5 :pre
|
||||
|
||||
@ -51,6 +61,8 @@ pair_coeff 1 1 100.0 2.0 150.0 3.5 :pre
|
||||
|
||||
pair_style lj/charmm/coul/long 8.0 10.0
|
||||
pair_style lj/charmm/coul/long 8.0 10.0 9.0
|
||||
pair_style lj/charmmfsw/coul/long 8.0 10.0
|
||||
pair_style lj/charmmfsw/coul/long 8.0 10.0 9.0
|
||||
pair_coeff * * 100.0 2.0
|
||||
pair_coeff 1 1 100.0 2.0 150.0 3.5 :pre
|
||||
|
||||
@ -61,21 +73,57 @@ pair_coeff 1 1 100.0 2.0 150.0 3.5 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The {lj/charmm} styles compute LJ and Coulombic interactions with an
|
||||
additional switching function S(r) that ramps the energy and force
|
||||
smoothly to zero between an inner and outer cutoff. It is a widely
|
||||
used potential in the "CHARMM"_http://www.scripps.edu/brooks MD code.
|
||||
See "(MacKerell)"_#pair-MacKerell for a description of the CHARMM force
|
||||
field.
|
||||
These pair styles compute Lennard Jones (LJ) and Coulombic
|
||||
interactions with additional switching or shifting functions that ramp
|
||||
the energy and/or force smoothly to zero between an inner and outer
|
||||
cutoff. They are implementations of the widely used CHARMM force
|
||||
field used in the "CHARMM"_http://www.scripps.edu/brooks MD code (and
|
||||
others). See "(MacKerell)"_#pair-MacKerell for a description of the
|
||||
CHARMM force field.
|
||||
|
||||
The styles with {charmm} (not {charmmfsw} or {charmmfsh}) in their
|
||||
name are the older, original LAMMPS implementations. They compute the
|
||||
LJ and Coulombic interactions with an energy switching function (esw,
|
||||
shown in the formula below as S(r)), which ramps the energy smoothly
|
||||
to zero between the inner and outer cutoff. This can cause
|
||||
irregularities in pair-wise forces (due to the discontinuous 2nd
|
||||
derivative of energy at the boundaries of the switching region), which
|
||||
in some cases can result in detectable artifacts in an MD simulation.
|
||||
|
||||
The newer styles with {charmmfsw} or {charmmfsh} in their name replace
|
||||
the energy switching with force switching (fsw) and force shifting
|
||||
(fsh) functions, for LJ and Coulombic interactions respectively.
|
||||
These follow the formulas and description given in
|
||||
"(Steinbach)"_#Steinbach and "(Brooks)"_#Brooks1 to minimize these
|
||||
artifacts.
|
||||
|
||||
NOTE: The newer {charmmfsw} or {charmmfsh} styles were released in
|
||||
March 2017. We recommend they be used instead of the older {charmm}
|
||||
styles. Eventually code from the new styles will propagate into the
|
||||
related pair styles (e.g. implicit, accelerator, free energy
|
||||
variants).
|
||||
|
||||
The general CHARMM formulas are as follows
|
||||
|
||||
:c,image(Eqs/pair_charmm.jpg)
|
||||
|
||||
Both the LJ and Coulombic terms require an inner and outer cutoff.
|
||||
They can be the same for both formulas or different depending on
|
||||
whether 2 or 4 arguments are used in the pair_style command. In each
|
||||
case, the inner cutoff distance must be less than the outer cutoff.
|
||||
It it typical to make the difference between the 2 cutoffs about 1.0
|
||||
Angstrom.
|
||||
where S(r) is the energy switching function mentioned above for the
|
||||
{charmm} styles. See the "(Steinbach)"_#Steinbach paper for the
|
||||
functional forms of the force switching and force shifting functions
|
||||
used in the {charmmfsw} and {charmmfsh} styles.
|
||||
|
||||
When using the {lj/charmm/coul/charmm styles}, both the LJ and
|
||||
Coulombic terms require an inner and outer cutoff. They can be the
|
||||
same for both formulas or different depending on whether 2 or 4
|
||||
arguments are used in the pair_style command. For the
|
||||
{lj/charmmfsw/coul/charmmfsh} style, the LJ term requires both an
|
||||
inner and outer cutoff, while the Coulombic term requires only one
|
||||
cutoff. If the Coulomb cutoff is not specified (2 instead of 3
|
||||
arguments), the LJ outer cutoff is used for the Coulombic cutoff. In
|
||||
all cases where an inner and outer cutoff are specified, the inner
|
||||
cutoff distance must be less than the outer cutoff. It is typical to
|
||||
make the difference between the inner and outer cutoffs about 2.0
|
||||
Angstroms.
|
||||
|
||||
Style {lj/charmm/coul/charmm/implicit} computes the same formulas as
|
||||
style {lj/charmm/coul/charmm} except that an additional 1/r term is
|
||||
@ -86,12 +134,18 @@ screening. It is designed for use in a simulation of an unsolvated
|
||||
biomolecule (no explicit water molecules).
|
||||
|
||||
Styles {lj/charmm/coul/long} and {lj/charmm/coul/msm} compute the same
|
||||
formulas as style {lj/charmm/coul/charmm} except that an additional
|
||||
damping factor is applied to the Coulombic term, as described for the
|
||||
"lj/cut"_pair_lj.html pair styles. Only one Coulombic cutoff is
|
||||
specified for {lj/charmm/coul/long} and {lj/charmm/coul/msm}; if only
|
||||
2 arguments are used in the pair_style command, then the outer LJ
|
||||
cutoff is used as the single Coulombic cutoff.
|
||||
formulas as style {lj/charmm/coul/charmm} and style
|
||||
{lj/charmmfsw/coul/long} computes the same formulas as style
|
||||
{lj/charmmfsw/coul/charmmfsh}, except that an additional damping
|
||||
factor is applied to the Coulombic term, so it can be used in
|
||||
conjunction with the "kspace_style"_kspace_style.html command and its
|
||||
{ewald} or {pppm} or {msm} option. Only one Coulombic cutoff is
|
||||
specified for these styles; if only 2 arguments are used in the
|
||||
pair_style command, then the outer LJ cutoff is used as the single
|
||||
Coulombic cutoff. The Coulombic cutoff specified for these styles
|
||||
means that pairwise interactions within this distance are computed
|
||||
directly; interactions outside that distance are computed in
|
||||
reciprocal space.
|
||||
|
||||
The following coefficients must be defined for each pair of atoms
|
||||
types via the "pair_coeff"_pair_coeff.html command as in the examples
|
||||
@ -111,7 +165,7 @@ sigma.
|
||||
The latter 2 coefficients are optional. If they are specified, they
|
||||
are used in the LJ formula between 2 atoms of these types which are
|
||||
also first and fourth atoms in any dihedral. No cutoffs are specified
|
||||
because this CHARMM force field does not allow varying cutoffs for
|
||||
because the CHARMM force field does not allow varying cutoffs for
|
||||
individual atom pairs; all pairs use the global cutoff(s) specified in
|
||||
the pair_style command.
|
||||
|
||||
@ -148,38 +202,41 @@ mixed. The default mix value is {arithmetic} to coincide with the
|
||||
usual settings for the CHARMM force field. See the "pair_modify"
|
||||
command for details.
|
||||
|
||||
None of the lj/charmm pair styles support the
|
||||
None of the {lj/charmm} or {lj/charmmfsw} pair styles support the
|
||||
"pair_modify"_pair_modify.html shift option, since the Lennard-Jones
|
||||
portion of the pair interaction is smoothed to 0.0 at the cutoff.
|
||||
|
||||
The {lj/charmm/coul/long} style supports the
|
||||
"pair_modify"_pair_modify.html table option since it can tabulate the
|
||||
short-range portion of the long-range Coulombic interaction.
|
||||
The {lj/charmm/coul/long} and {lj/charmmfsw/coul/long} styles support
|
||||
the "pair_modify"_pair_modify.html table option since they can
|
||||
tabulate the short-range portion of the long-range Coulombic
|
||||
interaction.
|
||||
|
||||
None of the lj/charmm pair styles support the
|
||||
None of the {lj/charmm} or {lj/charmmfsw} pair styles support the
|
||||
"pair_modify"_pair_modify.html tail option for adding long-range tail
|
||||
corrections to energy and pressure, since the Lennard-Jones portion of
|
||||
the pair interaction is smoothed to 0.0 at the cutoff.
|
||||
|
||||
All of the lj/charmm pair styles write their information to "binary
|
||||
restart files"_restart.html, so pair_style and pair_coeff commands do
|
||||
not need to be specified in an input script that reads a restart file.
|
||||
All of the {lj/charmm} and {lj/charmmfsw} pair styles write their
|
||||
information to "binary restart files"_restart.html, so pair_style and
|
||||
pair_coeff commands do not need to be specified in an input script
|
||||
that reads a restart file.
|
||||
|
||||
The lj/charmm/coul/long pair style supports the use of the {inner},
|
||||
{middle}, and {outer} keywords of the "run_style respa"_run_style.html
|
||||
command, meaning the pairwise forces can be partitioned by distance at
|
||||
different levels of the rRESPA hierarchy. The other styles only
|
||||
support the {pair} keyword of run_style respa. See the
|
||||
"run_style"_run_style.html command for details.
|
||||
The {lj/charmm/coul/long} and {lj/charmmfsw/coul/long} pair styles
|
||||
support the use of the {inner}, {middle}, and {outer} keywords of the
|
||||
"run_style respa"_run_style.html command, meaning the pairwise forces
|
||||
can be partitioned by distance at different levels of the rRESPA
|
||||
hierarchy. The other styles only support the {pair} keyword of
|
||||
run_style respa. See the "run_style"_run_style.html command for
|
||||
details.
|
||||
|
||||
:line
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
The {lj/charmm/coul/charmm} and {lj/charmm/coul/charmm/implicit}
|
||||
styles are part of the MOLECULE package. The {lj/charmm/coul/long}
|
||||
style is part of the KSPACE package. They are only enabled if LAMMPS
|
||||
was built with those packages. See the "Making
|
||||
All the styles with {coul/charmm} or {coul/charmmfsh} styles are part
|
||||
of the MOLECULE package. All the styles with {coul/long} style are
|
||||
part of the KSPACE package. They are only enabled if LAMMPS was built
|
||||
with those packages. See the "Making
|
||||
LAMMPS"_Section_start.html#start_3 section for more info. Note that
|
||||
the MOLECULE and KSPACE packages are installed by default.
|
||||
|
||||
@ -191,6 +248,13 @@ the MOLECULE and KSPACE packages are installed by default.
|
||||
|
||||
:line
|
||||
|
||||
:link(Brooks1)
|
||||
[(Brooks)] Brooks, et al, J Comput Chem, 30, 1545 (2009).
|
||||
|
||||
:link(pair-MacKerell)
|
||||
[(MacKerell)] MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field,
|
||||
Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
||||
|
||||
:link(Steinbach)
|
||||
[(Steinbach)] Steinbach, Brooks, J Comput Chem, 15, 667 (1994).
|
||||
|
||||
|
||||
@ -39,7 +39,7 @@ where A_cc is the Hamaker constant, a1 and a2 are the radii of the two
|
||||
colloidal particles, and Rc is the cutoff. This equation results from
|
||||
describing each colloidal particle as an integrated collection of
|
||||
Lennard-Jones particles of size sigma and is derived in
|
||||
"(Everaers)"_#Everaers.
|
||||
"(Everaers)"_#Everaers1.
|
||||
|
||||
The colloid-solvent interaction energy is given by
|
||||
|
||||
@ -201,5 +201,5 @@ only per-type polydispersity is enabled via the pair_coeff parameters.
|
||||
|
||||
:line
|
||||
|
||||
:link(Everaers)
|
||||
:link(Everaers1)
|
||||
[(Everaers)] Everaers, Ejtehadi, Phys Rev E, 67, 041710 (2003).
|
||||
|
||||
@ -50,7 +50,7 @@ atoms {i} and {j},
|
||||
|
||||
The COMB potentials (styles {comb} and {comb3}) are variable charge
|
||||
potentials. The equilibrium charge on each atom is calculated by the
|
||||
electronegativity equalization (QEq) method. See "Rick"_#Rick for
|
||||
electronegativity equalization (QEq) method. See "Rick"_#Rick2 for
|
||||
further details. This is implemented by the "fix
|
||||
qeq/comb"_fix_qeq_comb.html command, which should normally be
|
||||
specified in the input script when running a model with the COMB
|
||||
@ -187,6 +187,6 @@ S. R. Phillpot, Phys. Rev. B 81, 125328 (2010)
|
||||
Y. Li, Z. Lu, S. R. Phillpot, and S. B. Sinnott, Mat. Sci. & Eng: R 74,
|
||||
255-279 (2013).
|
||||
|
||||
:link(Rick)
|
||||
:link(Rick2)
|
||||
[(Rick)] S. W. Rick, S. J. Stuart, B. J. Berne, J Chem Phys 101, 6141
|
||||
(1994).
|
||||
|
||||
@ -109,7 +109,7 @@ mimic the screening effect of a polar solvent.
|
||||
:line
|
||||
|
||||
Style {coul/dsf} computes Coulombic interactions via the damped
|
||||
shifted force model described in "Fennell"_#Fennell, given by:
|
||||
shifted force model described in "Fennell"_#Fennell1, given by:
|
||||
|
||||
:c,image(Eqs/pair_coul_dsf.jpg)
|
||||
|
||||
@ -122,7 +122,7 @@ decay to zero.
|
||||
:line
|
||||
|
||||
Style {coul/wolf} computes Coulombic interactions via the Wolf
|
||||
summation method, described in "Wolf"_#Wolf, given by:
|
||||
summation method, described in "Wolf"_#Wolf1, given by:
|
||||
|
||||
:c,image(Eqs/pair_coul_wolf.jpg)
|
||||
|
||||
@ -143,7 +143,7 @@ interactions with a short-range potential.
|
||||
|
||||
Style {coul/streitz} is the Coulomb pair interaction defined as part
|
||||
of the Streitz-Mintmire potential, as described in "this
|
||||
paper"_#Streitz, in which charge distribution about an atom is modeled
|
||||
paper"_#Streitz2, in which charge distribution about an atom is modeled
|
||||
as a Slater 1{s} orbital. More details can be found in the referenced
|
||||
paper. To fully reproduce the published Streitz-Mintmire potential,
|
||||
which is a variable charge potential, style {coul/streitz} must be
|
||||
@ -205,7 +205,7 @@ added for the "core/shell model"_Section_howto.html#howto_25 to allow
|
||||
charges on core and shell particles to be separated by r = 0.0.
|
||||
|
||||
Styles {tip4p/cut} and {tip4p/long} implement the coulomb part of
|
||||
the TIP4P water model of "(Jorgensen)"_#Jorgensen, which introduces
|
||||
the TIP4P water model of "(Jorgensen)"_#Jorgensen3, which introduces
|
||||
a massless site located a short distance away from the oxygen atom
|
||||
along the bisector of the HOH angle. The atomic types of the oxygen and
|
||||
hydrogen atoms, the bond and angle types for OH and HOH interactions,
|
||||
@ -325,14 +325,18 @@ hybrid/overlay"_pair_hybrid.html, "kspace_style"_kspace_style.html
|
||||
|
||||
:line
|
||||
|
||||
:link(Wolf)
|
||||
:link(Wolf1)
|
||||
[(Wolf)] D. Wolf, P. Keblinski, S. R. Phillpot, J. Eggebrecht, J Chem
|
||||
Phys, 110, 8254 (1999).
|
||||
|
||||
:link(Fennell)
|
||||
:link(Fennell1)
|
||||
[(Fennell)] C. J. Fennell, J. D. Gezelter, J Chem Phys, 124,
|
||||
234104 (2006).
|
||||
|
||||
:link(Streitz)
|
||||
:link(Streitz2)
|
||||
[(Streitz)] F. H. Streitz, J. W. Mintmire, Phys Rev B, 50, 11996-12003
|
||||
(1994).
|
||||
|
||||
:link(Jorgensen3)
|
||||
[(Jorgensen)] Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
||||
Phys, 79, 926 (1983).
|
||||
|
||||
@ -46,10 +46,10 @@ for water at 298K.
|
||||
|
||||
Examples of the use of this type of Coulomb interaction include implicit
|
||||
solvent simulations of salt ions
|
||||
"(Lenart)"_#Lenart and of ionic surfactants "(Jusufi)"_#Jusufi.
|
||||
"(Lenart)"_#Lenart1 and of ionic surfactants "(Jusufi)"_#Jusufi1.
|
||||
Note that this potential is only reasonable for implicit solvent simulations
|
||||
and in combination with coul/cut or coul/long. It is also usually combined
|
||||
with gauss/cut, see "(Lenart)"_#Lenart or "(Jusufi)"_#Jusufi.
|
||||
with gauss/cut, see "(Lenart)"_#Lenart1 or "(Jusufi)"_#Jusufi1.
|
||||
|
||||
The following coefficients must be defined for each pair of atom
|
||||
types via the "pair_coeff"_pair_coeff.html command as in the example
|
||||
@ -103,10 +103,10 @@ LAMMPS"_Section_start.html#start_2_3 section for more info.
|
||||
[(Stiles)] Stiles , Hubbard, and Kayser, J Chem Phys, 77,
|
||||
6189 (1982).
|
||||
|
||||
:link(Lenart)
|
||||
:link(Lenart1)
|
||||
[(Lenart)] Lenart , Jusufi, and Panagiotopoulos, J Chem Phys, 126,
|
||||
044509 (2007).
|
||||
|
||||
:link(Jusufi)
|
||||
:link(Jusufi1)
|
||||
[(Jusufi)] Jusufi, Hynninen, and Panagiotopoulos, J Phys Chem B, 112,
|
||||
13783 (2008).
|
||||
|
||||
@ -44,7 +44,7 @@ pair_coeff 1 1 480.0 0.25 0.00 1.05 0.50 :pre
|
||||
[Description:]
|
||||
|
||||
These pair styles are designed to be used with the adiabatic
|
||||
core/shell model of "(Mitchell and Finchham)"_#MitchellFinchham. See
|
||||
core/shell model of "(Mitchell and Finchham)"_#MitchellFinchham2. See
|
||||
"Section 6.25"_Section_howto.html#howto_25 of the manual for an
|
||||
overview of the model as implemented in LAMMPS.
|
||||
|
||||
@ -95,6 +95,6 @@ LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
:line
|
||||
|
||||
:link(MitchellFinchham)
|
||||
:link(MitchellFinchham2)
|
||||
[(Mitchell and Finchham)] Mitchell, Finchham, J Phys Condensed Matter,
|
||||
5, 1031-1038 (1993).
|
||||
|
||||
@ -69,7 +69,7 @@ distance, and the vector r = Ri - Rj is the separation vector between
|
||||
the two particles. Note that Eqq and Fqq are simply Coulombic energy
|
||||
and force, Fij = -Fji as symmetric forces, and Tij != -Tji since the
|
||||
torques do not act symmetrically. These formulas are discussed in
|
||||
"(Allen)"_#Allen and in "(Toukmaji)"_#Toukmaji.
|
||||
"(Allen)"_#Allen2 and in "(Toukmaji)"_#Toukmaji2.
|
||||
|
||||
Style {lj/sf/dipole/sf} computes "shifted-force" interactions between
|
||||
pairs of particles that each have a charge and/or a point dipole
|
||||
@ -77,7 +77,7 @@ moment. In general, a shifted-force potential is a (sligthly) modified
|
||||
potential containing extra terms that make both the energy and its
|
||||
derivative go to zero at the cutoff distance; this removes
|
||||
(cutoff-related) problems in energy conservation and any numerical
|
||||
instability in the equations of motion "(Allen)"_#Allen. Shifted-force
|
||||
instability in the equations of motion "(Allen)"_#Allen2. Shifted-force
|
||||
interactions for the Lennard-Jones (E_LJ), charge-charge (Eqq),
|
||||
charge-dipole (Eqp), dipole-charge (Epq) and dipole-dipole (Epp)
|
||||
potentials are computed by these formulas for the energy (E), force
|
||||
@ -95,11 +95,11 @@ and force, Fij = -Fji as symmetric forces, and Tij != -Tji since the
|
||||
torques do not act symmetrically. The shifted-force formula for the
|
||||
Lennard-Jones potential is reported in "(Stoddard)"_#Stoddard. The
|
||||
original (unshifted) formulas for the electrostatic potentials, forces
|
||||
and torques can be found in "(Price)"_#Price. The shifted-force
|
||||
and torques can be found in "(Price)"_#Price2. The shifted-force
|
||||
electrostatic potentials have been obtained by applying equation 5.13
|
||||
of "(Allen)"_#Allen. The formulas for the corresponding forces and
|
||||
of "(Allen)"_#Allen2. The formulas for the corresponding forces and
|
||||
torques have been obtained by applying the 'chain rule' as in appendix
|
||||
C.3 of "(Allen)"_#Allen.
|
||||
C.3 of "(Allen)"_#Allen2.
|
||||
|
||||
If one cutoff is specified in the pair_style command, it is used for
|
||||
both the LJ and Coulombic (q,p) terms. If two cutoffs are specified,
|
||||
@ -110,7 +110,7 @@ scaled according to this factor. This scale factor is also made available
|
||||
for use with fix adapt.
|
||||
|
||||
Style {lj/cut/dipole/long} computes long-range point-dipole
|
||||
interactions as discussed in "(Toukmaji)"_#Toukmaji. Dipole-dipole,
|
||||
interactions as discussed in "(Toukmaji)"_#Toukmaji2. Dipole-dipole,
|
||||
dipole-charge, and charge-charge interactions are all supported, along
|
||||
with the standard 12/6 Lennard-Jones interactions, which are computed
|
||||
with a cutoff. A "kspace_style"_kspace_style.html must be defined to
|
||||
@ -119,7 +119,7 @@ ewald/disp"_kspace_style.html support long-range point-dipole
|
||||
interactions.
|
||||
|
||||
Style {lj/long/dipole/long} also computes point-dipole interactions as
|
||||
discussed in "(Toukmaji)"_#Toukmaji. Long-range dipole-dipole,
|
||||
discussed in "(Toukmaji)"_#Toukmaji2. Long-range dipole-dipole,
|
||||
dipole-charge, and charge-charge interactions are all supported, along
|
||||
with the standard 12/6 Lennard-Jones interactions. LJ interactions
|
||||
can be cutoff or long-ranged.
|
||||
@ -252,16 +252,16 @@ currently supported.
|
||||
|
||||
:line
|
||||
|
||||
:link(Allen)
|
||||
:link(Allen2)
|
||||
[(Allen)] Allen and Tildesley, Computer Simulation of Liquids,
|
||||
Clarendon Press, Oxford, 1987.
|
||||
|
||||
:link(Toukmaji)
|
||||
:link(Toukmaji2)
|
||||
[(Toukmaji)] Toukmaji, Sagui, Board, and Darden, J Chem Phys, 113,
|
||||
10913 (2000).
|
||||
|
||||
:link(Stoddard)
|
||||
[(Stoddard)] Stoddard and Ford, Phys Rev A, 8, 1504 (1973).
|
||||
|
||||
:link(Price)
|
||||
:link(Price2)
|
||||
[(Price)] Price, Stone and Alderton, Mol Phys, 52, 987 (1984).
|
||||
|
||||
@ -37,7 +37,7 @@ Styles {dpd/fdt} and {dpd/fdt/energy} compute the force for dissipative
|
||||
particle dynamics (DPD) simulations. The {dpd/fdt} style is used to
|
||||
perform DPD simulations under isothermal and isobaric conditions,
|
||||
while the {dpd/fdt/energy} style is used to perform DPD simulations
|
||||
under isoenergetic and isoenthalpic conditions (see "(Lisal)"_#Lisal).
|
||||
under isoenergetic and isoenthalpic conditions (see "(Lisal)"_#Lisal3).
|
||||
For DPD simulations in general, the force on atom I due to atom J is
|
||||
given as a sum of 3 terms
|
||||
|
||||
@ -111,7 +111,7 @@ calculated using only the conservative term.
|
||||
|
||||
The forces computed through the {dpd/fdt} and {dpd/fdt/energy} styles
|
||||
can be integrated with the velocity-Verlet integration scheme or the
|
||||
Shardlow splitting integration scheme described by "(Lisal)"_#Lisal.
|
||||
Shardlow splitting integration scheme described by "(Lisal)"_#Lisal3.
|
||||
In the cases when these pair styles are combined with the
|
||||
"fix shardlow"_fix_shardlow.html, these pair styles differ from the
|
||||
other dpd styles in that the dissipative and random forces are split
|
||||
@ -147,7 +147,7 @@ energies and temperatures.
|
||||
|
||||
:line
|
||||
|
||||
:link(Lisal)
|
||||
:link(Lisal3)
|
||||
[(Lisal)] M. Lisal, J.K. Brennan, J. Bonet Avalos, "Dissipative
|
||||
particle dynamics at isothermal, isobaric, isoenergetic, and
|
||||
isoenthalpic conditions using Shardlow-like splitting algorithms.",
|
||||
|
||||
@ -25,7 +25,7 @@ pair_coeff * * Na Cl ../potentials/ffield.eim Cl NULL Na :pre
|
||||
[Description:]
|
||||
|
||||
Style {eim} computes pairwise interactions for ionic compounds
|
||||
using embedded-ion method (EIM) potentials "(Zhou)"_#Zhou. The
|
||||
using embedded-ion method (EIM) potentials "(Zhou)"_#Zhou2. The
|
||||
energy of the system E is given by
|
||||
|
||||
:c,image(Eqs/pair_eim1.jpg)
|
||||
@ -169,6 +169,6 @@ LAMMPS was built with that package.
|
||||
|
||||
:line
|
||||
|
||||
:link(Zhou)
|
||||
:link(Zhou2)
|
||||
[(Zhou)] Zhou, submitted for publication (2010). Please contact
|
||||
Xiaowang Zhou (Sandia) for details via email at xzhou at sandia.gov.
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user