Merge pull request #1133 from lammps/doc-adjust
Multiple documentation adjustments and corrections from Steve and Axel
This commit is contained in:
12
doc/Makefile
12
doc/Makefile
@ -38,7 +38,7 @@ OBJECTS=$(SOURCES:src/%.txt=$(RSTDIR)/%.rst)
|
||||
help:
|
||||
@echo "Please use \`make <target>' where <target> is one of"
|
||||
@echo " html create HTML doc pages in html dir"
|
||||
@echo " pdf create Manual.pdf and Developer.pdf in this dir"
|
||||
@echo " pdf create Developer.pdf and Manual.pdf in this dir"
|
||||
@echo " old create old-style HTML doc pages in old dir"
|
||||
@echo " fetch fetch HTML and PDF files from LAMMPS web site"
|
||||
@echo " epub create ePUB format manual for e-book readers"
|
||||
@ -116,17 +116,17 @@ mobi: epub
|
||||
pdf: utils/txt2html/txt2html.exe
|
||||
@(\
|
||||
set -e; \
|
||||
cd src; \
|
||||
cd src/Developer; \
|
||||
pdflatex developer; \
|
||||
pdflatex developer; \
|
||||
mv developer.pdf ../../Developer.pdf; \
|
||||
cd ..; \
|
||||
../utils/txt2html/txt2html.exe -b *.txt; \
|
||||
htmldoc --batch lammps.book; \
|
||||
for s in `echo *.txt | sed -e 's,\.txt,\.html,g'` ; \
|
||||
do grep -q $$s lammps.book || \
|
||||
echo doc file $$s missing in src/lammps.book; done; \
|
||||
rm *.html; \
|
||||
cd Developer; \
|
||||
pdflatex developer; \
|
||||
pdflatex developer; \
|
||||
mv developer.pdf ../../Developer.pdf; \
|
||||
)
|
||||
|
||||
old: utils/txt2html/txt2html.exe
|
||||
|
||||
@ -70,7 +70,7 @@ OPT.
|
||||
"fourier/simple (o)"_angle_fourier_simple.html,
|
||||
"harmonic (iko)"_angle_harmonic.html,
|
||||
"quartic (o)"_angle_quartic.html,
|
||||
"sdk"_angle_sdk.html,
|
||||
"sdk (o)"_angle_sdk.html,
|
||||
"table (o)"_angle_table.html :tb(c=4,ea=c)
|
||||
|
||||
:line
|
||||
|
||||
@ -96,7 +96,7 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"property/atom"_compute_property_atom.html,
|
||||
"property/chunk"_compute_property_chunk.html,
|
||||
"property/local"_compute_property_local.html,
|
||||
"ptm/atom"_compute_ptm_atom.html
|
||||
"ptm/atom"_compute_ptm_atom.html,
|
||||
"rdf"_compute_rdf.html,
|
||||
"reduce"_compute_reduce.html,
|
||||
"reduce/chunk"_compute_reduce_chunk.html,
|
||||
@ -118,7 +118,7 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"smd/tlsph/strain"_compute_smd_tlsph_strain.html,
|
||||
"smd/tlsph/strain/rate"_compute_smd_tlsph_strain_rate.html,
|
||||
"smd/tlsph/stress"_compute_smd_tlsph_stress.html,
|
||||
"smd/triangle/mesh/vertices"_compute_smd_triangle_mesh_vertices.html,
|
||||
"smd/triangle/mesh/vertices"_compute_smd_triangle_vertices.html,
|
||||
"smd/ulsph/num/neighs"_compute_smd_ulsph_num_neighs.html,
|
||||
"smd/ulsph/strain"_compute_smd_ulsph_strain.html,
|
||||
"smd/ulsph/strain/rate"_compute_smd_ulsph_strain_rate.html,
|
||||
|
||||
@ -217,7 +217,7 @@ OPT.
|
||||
"wall/body/polyhedron"_fix_wall_body_polyhedron.html,
|
||||
"wall/colloid"_fix_wall.html,
|
||||
"wall/ees"_fix_wall_ees.html,
|
||||
"wall/gran"_fix_wall_gran.html,
|
||||
"wall/gran (o)"_fix_wall_gran.html,
|
||||
"wall/gran/region"_fix_wall_gran_region.html,
|
||||
"wall/harmonic"_fix_wall.html,
|
||||
"wall/lj1043"_fix_wall.html,
|
||||
|
||||
@ -26,7 +26,7 @@ OPT.
|
||||
|
||||
"none"_pair_none.html,
|
||||
"zero"_pair_zero.html,
|
||||
"hybrid"_pair_hybrid.html,
|
||||
"hybrid (k)"_pair_hybrid.html,
|
||||
"hybrid/overlay (k)"_pair_hybrid.html :tb(c=4,ea=c)
|
||||
|
||||
"adp (o)"_pair_adp.html,
|
||||
@ -81,6 +81,7 @@ OPT.
|
||||
"eam (gikot)"_pair_eam.html,
|
||||
"eam/alloy (gikot)"_pair_eam.html,
|
||||
"eam/cd (o)"_pair_eam.html,
|
||||
"eam/cd/old (o)"_pair_eam.html,
|
||||
"eam/fs (gikot)"_pair_eam.html,
|
||||
"edip (o)"_pair_edip.html,
|
||||
"edip/multi"_pair_edip.html,
|
||||
@ -167,7 +168,7 @@ OPT.
|
||||
"morse/soft"_pair_morse.html,
|
||||
"multi/lucy"_pair_multi_lucy.html,
|
||||
"multi/lucy/rx (k)"_pair_multi_lucy_rx.html,
|
||||
"nb3b/harmonic (o)"_pair_nb3b_harmonic.html,
|
||||
"nb3b/harmonic"_pair_nb3b_harmonic.html,
|
||||
"nm/cut (o)"_pair_nm.html,
|
||||
"nm/cut/coul/cut (o)"_pair_nm.html,
|
||||
"nm/cut/coul/long (o)"_pair_nm.html,
|
||||
|
||||
@ -1092,11 +1092,6 @@ correct. :dd
|
||||
The specified file cannot be opened. Check that the path and name are
|
||||
correct. :dd
|
||||
|
||||
{Cannot open fix ave/spatial file %s} :dt
|
||||
|
||||
The specified file cannot be opened. Check that the path and name are
|
||||
correct. :dd
|
||||
|
||||
{Cannot open fix ave/time file %s} :dt
|
||||
|
||||
The specified file cannot be opened. Check that the path and name are
|
||||
@ -1677,10 +1672,6 @@ provided by an atom map. An atom map does not exist (by default) for
|
||||
non-molecular problems. Using the atom_modify map command will force
|
||||
an atom map to be created. :dd
|
||||
|
||||
{Cannot use fix ave/spatial z for 2 dimensional model} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Cannot use fix bond/break with non-molecular systems} :dt
|
||||
|
||||
Only systems with bonds that can be changed can be used. Atom_style
|
||||
@ -2425,10 +2416,6 @@ Self-explanatory. :dd
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Compute ID for fix ave/spatial does not exist} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Compute ID for fix ave/time does not exist} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
@ -4074,10 +4061,6 @@ Self-explanatory. :dd
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Fix ID for fix ave/spatial does not exist} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Fix ID for fix ave/time does not exist} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
@ -4379,51 +4362,6 @@ same style. :dd
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Fix ave/spatial compute does not calculate a per-atom array} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Fix ave/spatial compute does not calculate a per-atom vector} :dt
|
||||
|
||||
A compute used by fix ave/spatial must generate per-atom values. :dd
|
||||
|
||||
{Fix ave/spatial compute does not calculate per-atom values} :dt
|
||||
|
||||
A compute used by fix ave/spatial must generate per-atom values. :dd
|
||||
|
||||
{Fix ave/spatial compute vector is accessed out-of-range} :dt
|
||||
|
||||
The index for the vector is out of bounds. :dd
|
||||
|
||||
{Fix ave/spatial fix does not calculate a per-atom array} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Fix ave/spatial fix does not calculate a per-atom vector} :dt
|
||||
|
||||
A fix used by fix ave/spatial must generate per-atom values. :dd
|
||||
|
||||
{Fix ave/spatial fix does not calculate per-atom values} :dt
|
||||
|
||||
A fix used by fix ave/spatial must generate per-atom values. :dd
|
||||
|
||||
{Fix ave/spatial fix vector is accessed out-of-range} :dt
|
||||
|
||||
The index for the vector is out of bounds. :dd
|
||||
|
||||
{Fix ave/spatial for triclinic boxes requires units reduced} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Fix ave/spatial settings invalid with changing box size} :dt
|
||||
|
||||
If the box size changes, only the units reduced option can be
|
||||
used. :dd
|
||||
|
||||
{Fix ave/spatial variable is not atom-style variable} :dt
|
||||
|
||||
A variable used by fix ave/spatial must generate per-atom values. :dd
|
||||
|
||||
{Fix ave/time cannot set output array intensive/extensive from these inputs} :dt
|
||||
|
||||
One of more of the vector inputs has individual elements which are
|
||||
|
||||
@ -291,24 +291,6 @@ This may cause accuracy problems. :dd
|
||||
|
||||
This may cause accuracy problems. :dd
|
||||
|
||||
{Fix thermal/conductivity comes before fix ave/spatial} :dt
|
||||
|
||||
The order of these 2 fixes in your input script is such that fix
|
||||
thermal/conductivity comes first. If you are using fix ave/spatial to
|
||||
measure the temperature profile induced by fix viscosity, then this
|
||||
may cause a glitch in the profile since you are averaging immediately
|
||||
after swaps have occurred. Flipping the order of the 2 fixes
|
||||
typically helps. :dd
|
||||
|
||||
{Fix viscosity comes before fix ave/spatial} :dt
|
||||
|
||||
The order of these 2 fixes in your input script is such that
|
||||
fix viscosity comes first. If you are using fix ave/spatial
|
||||
to measure the velocity profile induced by fix viscosity, then
|
||||
this may cause a glitch in the profile since you are averaging
|
||||
immediately after swaps have occurred. Flipping the order
|
||||
of the 2 fixes typically helps. :dd
|
||||
|
||||
{Fixes cannot send data in Kokkos communication, switching to classic communication} :dt
|
||||
|
||||
This is current restriction with Kokkos. :dd
|
||||
|
||||
@ -9,39 +9,16 @@ Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
Download an executable for Linux :h3
|
||||
|
||||
Binaries are available for many different versions of Linux:
|
||||
Binaries are available for different versions of Linux:
|
||||
|
||||
"Pre-built binary RPMs for Fedora/RedHat/CentOS/openSUSE"_#rpm
|
||||
"Pre-built Ubuntu Linux executables"_#ubuntu
|
||||
"Pre-built Fedora Linux executables"_#fedora
|
||||
"Pre-built EPEL Linux executables (RHEL, CentOS)"_#epel
|
||||
"Pre-built OpenSuse Linux executables"_#opensuse
|
||||
"Pre-built Gentoo Linux executable"_#gentoo :all(b)
|
||||
|
||||
:line
|
||||
|
||||
Pre-built binary RPMs for Fedora/RedHat/CentOS/openSUSE :h4,link(rpm)
|
||||
|
||||
Pre-built LAMMPS executables for various Linux distributions
|
||||
can be downloaded as binary RPM files from this site:
|
||||
|
||||
"http://rpm.lammps.org"_http://rpm.lammps.org
|
||||
|
||||
There are multiple package variants supporting serial, parallel and
|
||||
Python wrapper versions. The LAMMPS binaries contain all optional
|
||||
packages included in the source distribution except: GPU, KIM, REAX,
|
||||
and USER-INTEL.
|
||||
|
||||
Installation instructions for the various versions are here:
|
||||
|
||||
"http://rpm.lammps.org/install.html"_http://rpm.lammps.org/install.html
|
||||
|
||||
The instructions show how to enable the repository in the respective
|
||||
system's package management system. Installing and updating are then
|
||||
straightforward and automatic.
|
||||
|
||||
Thanks to Axel Kohlmeyer (Temple U, akohlmey at gmail.com) for setting
|
||||
up this RPM capability.
|
||||
|
||||
:line
|
||||
|
||||
Pre-built Ubuntu Linux executables :h4,link(ubuntu)
|
||||
|
||||
A pre-built LAMMPS executable suitable for running on the latest
|
||||
@ -60,10 +37,10 @@ To install LAMMPS do the following once:
|
||||
|
||||
sudo apt-get install lammps-daily :pre
|
||||
|
||||
This downloads an executable named "lammps-daily" to your box, which
|
||||
This downloads an executable named "lmp_daily" to your box, which
|
||||
can then be used in the usual way to run input scripts:
|
||||
|
||||
lammps-daily < in.lj :pre
|
||||
lmp_daily -in in.lj :pre
|
||||
|
||||
To update LAMMPS to the most current version, do the following:
|
||||
|
||||
@ -99,6 +76,80 @@ Ubuntu package capability.
|
||||
|
||||
:line
|
||||
|
||||
Pre-built Fedora Linux executables :h4,link(fedora)
|
||||
|
||||
Pre-built LAMMPS packages for stable releases are available
|
||||
in the Fedora Linux distribution as of version 28. The packages
|
||||
can be installed via the dnf package manager. There are 3 basic
|
||||
varieties (lammps = no MPI, lammps-mpich = MPICH MPI library,
|
||||
lammps-openmpi = OpenMPI MPI library) and for each support for
|
||||
linking to the C library interface (lammps-devel, lammps-mpich-devel,
|
||||
lammps-openmpi-devel), the header for compiling programs using
|
||||
the C library interface (lammps-headers), and the LAMMPS python
|
||||
module for Python 3. All packages can be installed at the same
|
||||
time and the name of the LAMMPS executable is {lmp} in all 3 cases.
|
||||
By default, {lmp} will refer to the serial executable, unless
|
||||
one of the MPI environment modules is loaded
|
||||
("module load mpi/mpich-x86_64" or "module load mpi/openmpi-x86_64").
|
||||
Then the corresponding parallel LAMMPS executable is used.
|
||||
The same mechanism applies when loading the LAMMPS python module.
|
||||
|
||||
To install LAMMPS with OpenMPI and run an input in.lj with 2 CPUs do:
|
||||
|
||||
dnf install lammps-openmpi
|
||||
module load mpi/openmpi-x86_64
|
||||
mpirun -np 2 lmp -in in.lj :pre
|
||||
|
||||
The "dnf install" command is needed only once. In case of a new LAMMPS
|
||||
stable release, "dnf update" will automatically update to the newer
|
||||
version as soon at the RPM files are built and uploaded to the download
|
||||
mirrors. The "module load" command is needed once per (shell) session
|
||||
or shell terminal instance, unless it is automatically loaded from the
|
||||
shell profile.
|
||||
|
||||
Please use "lmp -help" to see which compilation options, packages,
|
||||
and styles are included in the binary.
|
||||
|
||||
Thanks to Christoph Junghans (LANL) for making LAMMPS available in Fedora.
|
||||
|
||||
:line
|
||||
|
||||
Pre-built EPEL Linux executable :h4,link(epel)
|
||||
|
||||
Pre-built LAMMPS packages for stable releases are available
|
||||
in the "Extra Packages for Enterprise Linux (EPEL) repository"_https://fedoraproject.org/wiki/EPEL
|
||||
for use with Red Hat Enterprise Linux (RHEL) or CentOS version 7.x
|
||||
and compatible Linux distributions. Names of packages, executable,
|
||||
and content are the same as described above for Fedora Linux.
|
||||
But RHEL/CentOS 7.x uses the "yum" package manager instead of "dnf"
|
||||
in Fedora 28.
|
||||
|
||||
Please use "lmp -help" to see which compilation options, packages,
|
||||
and styles are included in the binary.
|
||||
|
||||
Thanks to Christoph Junghans (LANL) for making LAMMPS available in EPEL.
|
||||
|
||||
:line
|
||||
|
||||
Pre-built OpenSuse Linux executable :h4,link(opensuse)
|
||||
|
||||
A pre-built LAMMPS package for stable releases is available
|
||||
in OpenSuse as of Leap 15.0. You can install the package with:
|
||||
|
||||
zypper install lammps :pre
|
||||
|
||||
This includes support for OpenMPI. The name of the LAMMPS executable
|
||||
is {lmp}. Thus to run an input in parallel on 2 CPUs you would do:
|
||||
|
||||
mpirun -np 2 lmp -in in.lj :pre
|
||||
|
||||
Please use "lmp -help" to see which compilation options, packages,
|
||||
and styles are included in the binary.
|
||||
|
||||
Thanks to Christoph Junghans (LANL) for making LAMMPS available in OpenSuse.
|
||||
|
||||
:line
|
||||
|
||||
Pre-built Gentoo Linux executable :h4,link(gentoo)
|
||||
|
||||
LAMMPS is part of Gentoo's main package tree and can be installed by
|
||||
|
||||
@ -1749,7 +1749,7 @@ USER-PTM package :link(PKG-USER-PTM),h4
|
||||
|
||||
[Contents:]
|
||||
|
||||
A "compute ptm/atom"_compute_ptm.html command that calculates
|
||||
A "compute ptm/atom"_compute_ptm_atom.html command that calculates
|
||||
local structure characterization using the Polyhedral Template
|
||||
Matching methodology.
|
||||
|
||||
@ -1757,10 +1757,9 @@ Matching methodology.
|
||||
|
||||
[Supporting info:]
|
||||
|
||||
src/USER-PHONON: filenames -> commands
|
||||
src/USER-PHONON/README
|
||||
"fix phonon"_fix_phonon.html
|
||||
examples/USER/phonon :ul
|
||||
src/USER-PTM: filename starting with ptm_ -> supporting code, other filenames -> commands
|
||||
src/USER-PTM/LICENSE
|
||||
"compute ptm/atom"_compute_ptm_atom.html :ul
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -62,7 +62,7 @@ Package, Description, Doc page, Example, Library
|
||||
"USER-NETCDF"_Packages_details.html#PKG-USER-NETCDF, dump output via NetCDF,"dump netcdf"_dump_netcdf.html, n/a, ext
|
||||
"USER-OMP"_Packages_details.html#PKG-USER-OMP, OpenMP-enabled styles,"Speed omp"_Speed_omp.html, "Benchmarks"_http://lammps.sandia.gov/bench.html, no
|
||||
"USER-PHONON"_Packages_details.html#PKG-USER-PHONON, phonon dynamical matrix,"fix phonon"_fix_phonon.html, USER/phonon, no
|
||||
"USER-PTM"_Packages_details.html#PKG-USER-PTM, Polyhedral Template Matching,"compute ptm/atom"_compute_ptm.html, n/a, no
|
||||
"USER-PTM"_Packages_details.html#PKG-USER-PTM, Polyhedral Template Matching,"compute ptm/atom"_compute_ptm_atom.html, n/a, no
|
||||
"USER-QMMM"_Packages_details.html#PKG-USER-QMMM, QM/MM coupling,"fix qmmm"_fix_qmmm.html, USER/qmmm, ext
|
||||
"USER-QTB"_Packages_details.html#PKG-USER-QTB, quantum nuclear effects,"fix qtb"_fix_qtb.html "fix qbmsst"_fix_qbmsst.html, qtb, no
|
||||
"USER-QUIP"_Packages_details.html#PKG-USER-QUIP, QUIP/libatoms interface,"pair_style quip"_pair_quip.html, USER/quip, ext
|
||||
|
||||
@ -7,6 +7,7 @@
|
||||
:line
|
||||
|
||||
angle_style sdk command :h3
|
||||
angle_style sdk/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -43,6 +44,30 @@ internally; hence the units of K are in energy/radian^2.
|
||||
The also required {lj/sdk} parameters will be extracted automatically
|
||||
from the pair_style.
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
functionally the same as the corresponding style without the suffix.
|
||||
They have been optimized to run faster, depending on your available
|
||||
hardware, as discussed on the "Speed packages"_Speed_packages.html doc
|
||||
page. The accelerated styles take the same arguments and should
|
||||
produce the same results, except for round-off and precision issues.
|
||||
|
||||
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
|
||||
USER-OMP and OPT packages, respectively. They are only enabled if
|
||||
LAMMPS was built with those packages. See the "Build
|
||||
package"_Build_package.html doc page for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Run_options.html when you invoke LAMMPS, or you can use the
|
||||
"suffix"_suffix.html command in your input script.
|
||||
|
||||
See the "Speed packages"_Speed_packages.html doc page for more
|
||||
instructions on how to use the accelerated styles effectively.
|
||||
|
||||
:line
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
|
||||
@ -90,12 +90,12 @@ This is so that the fix this compute creates to store per-chunk
|
||||
quantities will also have the same ID, and thus be initialized
|
||||
correctly with chunk reference positions from the restart file.
|
||||
|
||||
The simplest way to output the results of the compute com/msd
|
||||
The simplest way to output the results of the compute msd/chunk
|
||||
calculation to a file is to use the "fix ave/time"_fix_ave_time.html
|
||||
command, for example:
|
||||
|
||||
compute cc1 all chunk/atom molecule
|
||||
compute myChunk all com/msd cc1
|
||||
compute myChunk all msd/chunk cc1
|
||||
fix 1 all ave/time 100 1 100 c_myChunk\[*\] file tmp.out mode vector :pre
|
||||
|
||||
[Output info:]
|
||||
|
||||
@ -80,9 +80,9 @@ too frequently or to have multiple compute/dump commands, each with a
|
||||
|
||||
[Output info:]
|
||||
|
||||
This compute calculates a per-atom array, which can be accessed by
|
||||
This compute calculates a per-atom arry, which can be accessed by
|
||||
any command that uses per-atom values from a compute as input. See
|
||||
"Section 6.15"_Section_howto.html#howto_15 for an overview of
|
||||
the "Howto output"_Howto_output.html doc page for an overview of
|
||||
LAMMPS output options.
|
||||
|
||||
Results are stored in the per-atom array in the following order:
|
||||
|
||||
@ -6,14 +6,14 @@
|
||||
|
||||
:line
|
||||
|
||||
compute smd/triangle/mesh/vertices :h3
|
||||
compute smd/triangle/vertices command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
compute ID group-ID smd/triangle/mesh/vertices :pre
|
||||
compute ID group-ID smd/triangle/vertices :pre
|
||||
|
||||
ID, group-ID are documented in "compute"_compute.html command
|
||||
smd/triangle/mesh/vertices = style name of this compute command :ul
|
||||
smd/triangle/vertices = style name of this compute command :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
@ -10,14 +10,14 @@ compute spin command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
compute ID group-ID compute/spin :pre
|
||||
compute ID group-ID spin :pre
|
||||
|
||||
ID, group-ID are documented in "compute"_compute.html command
|
||||
compute/spin = style name of this compute command :ul
|
||||
spin = style name of this compute command :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
compute out_mag all compute/spin :pre
|
||||
compute out_mag all spin :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
@ -26,7 +26,8 @@ of atoms having spins.
|
||||
|
||||
This compute calculates 6 magnetic quantities.
|
||||
|
||||
The three first quantities are the x,y and z coordinates of the total magnetization.
|
||||
The three first quantities are the x,y and z coordinates of the total
|
||||
magnetization.
|
||||
|
||||
The fourth quantity is the norm of the total magnetization.
|
||||
|
||||
@ -39,7 +40,7 @@ The simplest way to output the results of the compute spin calculation
|
||||
is to define some of the quantities as variables, and to use the thermo and
|
||||
thermo_style commands, for example:
|
||||
|
||||
compute out_mag all compute/spin :pre
|
||||
compute out_mag all spin :pre
|
||||
|
||||
variable mag_z equal c_out_mag\[3\]
|
||||
variable mag_norm equal c_out_mag\[4\]
|
||||
@ -53,7 +54,6 @@ the total magnetization, and the magnetic temperature. Three variables are
|
||||
assigned to those quantities. The thermo and thermo_style commands print them
|
||||
every 10 timesteps.
|
||||
|
||||
|
||||
[Output info:]
|
||||
|
||||
The array values are "intensive". The array values will be in
|
||||
@ -68,7 +68,6 @@ has to be "spin" for this compute to be valid.
|
||||
|
||||
[Related commands:] none
|
||||
|
||||
|
||||
[Default:] none
|
||||
|
||||
:line
|
||||
|
||||
@ -92,7 +92,7 @@ Computes :h1
|
||||
compute_smd_tlsph_strain
|
||||
compute_smd_tlsph_strain_rate
|
||||
compute_smd_tlsph_stress
|
||||
compute_smd_triangle_mesh_vertices
|
||||
compute_smd_triangle_vertices
|
||||
compute_smd_ulsph_num_neighs
|
||||
compute_smd_ulsph_strain
|
||||
compute_smd_ulsph_strain_rate
|
||||
|
||||
@ -16,7 +16,7 @@ dihedral_style nharmonic :pre
|
||||
[Examples:]
|
||||
|
||||
dihedral_style nharmonic
|
||||
dihedral_coeff 3 10.0 20.0 30.0 :pre
|
||||
dihedral_coeff * 3 10.0 20.0 30.0 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
|
||||
@ -384,12 +384,7 @@ change this via the "dump_modify"_dump_modify.html command.
|
||||
:line
|
||||
|
||||
The {fix} keyword can be used with a "fix"_fix.html that produces
|
||||
objects to be drawn. An example is the "fix
|
||||
surface/global"_fix_surface_global.html command which can draw lines
|
||||
or triangles for 2d/3d simulations.
|
||||
|
||||
NOTE: Aug 2016 - The fix surface/global command is not yet added to
|
||||
LAMMPS.
|
||||
objects to be drawn.
|
||||
|
||||
The {fflag1} and {fflag2} settings are numerical values which are
|
||||
passed to the fix to affect how the drawing of its objects is done.
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
|
||||
:line
|
||||
|
||||
fix msst command :h3
|
||||
fix msst command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
|
||||
56
doc/src/fix_nve_awpmd.txt
Normal file
56
doc/src/fix_nve_awpmd.txt
Normal file
@ -0,0 +1,56 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Commands_all.html)
|
||||
|
||||
:line
|
||||
|
||||
fix nve/awpmd command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
fix ID group-ID nve/awpmd :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command
|
||||
nve/awpmd = style name of this fix command :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 1 all nve/awpmd :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Perform constant NVE integration to update position and velocity for
|
||||
nuclei and electrons in the group for the "Antisymmetrized Wave Packet
|
||||
Molecular Dynamics"_pair_awpmd.html model. V is volume; E is energy.
|
||||
This creates a system trajectory consistent with the microcanonical
|
||||
ensemble.
|
||||
|
||||
The operation of this fix is exactly like that described by the "fix
|
||||
nve"_fix_nve.html command, except that the width and width-velocity of
|
||||
the electron wavefunctions are also updated.
|
||||
|
||||
:line
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
No information about this fix is written to "binary restart
|
||||
files"_restart.html. None of the "fix_modify"_fix_modify.html options
|
||||
are relevant to this fix. No global or per-atom quantities are stored
|
||||
by this fix for access by various "output commands"_Howto_output.html.
|
||||
No parameter of this fix can be used with the {start/stop} keywords of
|
||||
the "run"_run.html command. This fix is not invoked during "energy
|
||||
minimization"_minimize.html.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This fix is part of the USER-AWPMD package. It is only enabled if
|
||||
LAMMPS was built with that package. See the "Build
|
||||
package"_Build_package.html doc page for more info.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"fix nve"_fix_nve.html
|
||||
|
||||
[Default:] none
|
||||
@ -6,7 +6,7 @@
|
||||
|
||||
:line
|
||||
|
||||
fix poems :h3
|
||||
fix poems command :h3
|
||||
|
||||
Syntax:
|
||||
|
||||
|
||||
@ -7,6 +7,7 @@
|
||||
:line
|
||||
|
||||
fix property/atom command :h3
|
||||
fix property/atom/kk command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -201,6 +202,7 @@ added classes.
|
||||
:line
|
||||
|
||||
:link(isotopes)
|
||||
|
||||
Example for using per-atom masses with TIP4P water to
|
||||
study isotope effects. When setting up simulations with the "TIP4P
|
||||
pair styles"_Howto_tip4p.html for water, you have to provide exactly
|
||||
@ -238,6 +240,28 @@ set group hwat mass 2.0141018 :pre
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
functionally the same as the corresponding style without the suffix.
|
||||
They have been optimized to run faster, depending on your available
|
||||
hardware, as discussed on the "Speed packages"_Speed_packages.html doc
|
||||
page. The accelerated styles take the same arguments and should
|
||||
produce the same results, except for round-off and precision issues.
|
||||
|
||||
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
|
||||
USER-OMP and OPT packages, respectively. They are only enabled if
|
||||
LAMMPS was built with those packages. See the "Build
|
||||
package"_Build_package.html doc page for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Run_options.html when you invoke LAMMPS, or you can use the
|
||||
"suffix"_suffix.html command in your input script.
|
||||
|
||||
See the "Speed packages"_Speed_packages.html doc page for more
|
||||
instructions on how to use the accelerated styles effectively.
|
||||
|
||||
:line
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
This fix writes the per-atom values it stores to "binary restart
|
||||
|
||||
@ -73,7 +73,7 @@ package"_Build_package.html doc page for more info.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"smd/triangle_mesh_vertices"_compute_smd_triangle_mesh_vertices.html,
|
||||
"smd/triangle_mesh_vertices"_compute_smd_triangle_vertices.html,
|
||||
"smd/wall_surface"_fix_smd_wall_surface.html
|
||||
|
||||
[Default:] none
|
||||
|
||||
@ -64,7 +64,7 @@ multiple objects in one file.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"smd/triangle_mesh_vertices"_compute_smd_triangle_mesh_vertices.html,
|
||||
"smd/triangle_mesh_vertices"_compute_smd_triangle_vertices.html,
|
||||
"smd/move_tri_surf"_fix_smd_move_triangulated_surface.html,
|
||||
"smd/tri_surface"_pair_smd_triangulated_surface.html
|
||||
|
||||
|
||||
@ -1,19 +0,0 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Commands_all.html)
|
||||
|
||||
:line
|
||||
|
||||
fix wall/surface/global command :h3
|
||||
|
||||
[Description:]
|
||||
|
||||
This feature is not yet implemented.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"dump image"_dump_image.html
|
||||
|
||||
|
||||
@ -7,6 +7,7 @@
|
||||
:line
|
||||
|
||||
fix wall/gran command :h3
|
||||
fix wall/gran/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -136,6 +137,28 @@ the clockwise direction for {vshear} > 0 or counter-clockwise for
|
||||
{vshear} < 0. In this case, {vshear} is the tangential velocity of
|
||||
the wall at whatever {radius} has been defined.
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
functionally the same as the corresponding style without the suffix.
|
||||
They have been optimized to run faster, depending on your available
|
||||
hardware, as discussed on the "Speed packages"_Speed_packages.html doc
|
||||
page. The accelerated styles take the same arguments and should
|
||||
produce the same results, except for round-off and precision issues.
|
||||
|
||||
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
|
||||
USER-OMP and OPT packages, respectively. They are only enabled if
|
||||
LAMMPS was built with those packages. See the "Build
|
||||
package"_Build_package.html doc page for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Run_options.html when you invoke LAMMPS, or you can use the
|
||||
"suffix"_suffix.html command in your input script.
|
||||
|
||||
See the "Speed packages"_Speed_packages.html doc page for more
|
||||
instructions on how to use the accelerated styles effectively.
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
This fix writes the shear friction state of atoms interacting with the
|
||||
|
||||
@ -93,6 +93,7 @@ Fixes :h1
|
||||
fix_nve
|
||||
fix_nve_asphere
|
||||
fix_nve_asphere_noforce
|
||||
fix_nve_awpmd
|
||||
fix_nve_body
|
||||
fix_nve_dot
|
||||
fix_nve_dotc_langevin
|
||||
@ -155,7 +156,6 @@ Fixes :h1
|
||||
fix_srd
|
||||
fix_store_force
|
||||
fix_store_state
|
||||
fix_surface_global
|
||||
fix_temp_berendsen
|
||||
fix_temp_csvr
|
||||
fix_temp_rescale
|
||||
|
||||
@ -312,6 +312,7 @@ fix_npt_sphere.html
|
||||
fix_nve.html
|
||||
fix_nve_asphere.html
|
||||
fix_nve_asphere_noforce.html
|
||||
fix_nve_awpmd.html
|
||||
fix_nve_body.html
|
||||
fix_nve_dot.html
|
||||
fix_nve_dotc_langevin.html
|
||||
@ -375,7 +376,6 @@ fix_spring_self.html
|
||||
fix_srd.html
|
||||
fix_store_force.html
|
||||
fix_store_state.html
|
||||
fix_surface_global.html
|
||||
fix_temp_berendsen.html
|
||||
fix_temp_csvr.html
|
||||
fix_temp_rescale.html
|
||||
@ -490,7 +490,7 @@ compute_smd_tlsph_shape.html
|
||||
compute_smd_tlsph_strain.html
|
||||
compute_smd_tlsph_strain_rate.html
|
||||
compute_smd_tlsph_stress.html
|
||||
compute_smd_triangle_mesh_vertices.html
|
||||
compute_smd_triangle_vertices.html
|
||||
compute_smd_ulsph_num_neighs.html
|
||||
compute_smd_ulsph_strain.html
|
||||
compute_smd_ulsph_strain_rate.html
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
|
||||
:line
|
||||
|
||||
pair_style body command :h3
|
||||
pair_style body/nparticle command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
|
||||
@ -11,19 +11,14 @@ pair_style born command :h3
|
||||
pair_style born/omp command :h3
|
||||
pair_style born/gpu command :h3
|
||||
pair_style born/coul/long command :h3
|
||||
pair_style born/coul/long/cs command :h3
|
||||
pair_style born/coul/long/cs/gpu command :h3
|
||||
pair_style born/coul/long/gpu command :h3
|
||||
pair_style born/coul/long/omp command :h3
|
||||
pair_style born/coul/msm command :h3
|
||||
pair_style born/coul/msm/omp command :h3
|
||||
pair_style born/coul/wolf command :h3
|
||||
pair_style born/coul/wolf/cs command :h3
|
||||
pair_style born/coul/wolf/cs/gpu command :h3
|
||||
pair_style born/coul/wolf/gpu command :h3
|
||||
pair_style born/coul/wolf/omp command :h3
|
||||
pair_style born/coul/dsf command :h3
|
||||
pair_style born/coul/dsf/cs command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -55,9 +50,7 @@ pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
|
||||
|
||||
pair_style born/coul/long 10.0
|
||||
pair_style born/coul/long/cs 10.0
|
||||
pair_style born/coul/long 10.0 8.0
|
||||
pair_style born/coul/long/cs 10.0 8.0
|
||||
pair_style born/coul/long 10.0 8.
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
|
||||
|
||||
@ -68,7 +61,6 @@ pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
|
||||
|
||||
pair_style born/coul/wolf 0.25 10.0
|
||||
pair_style born/coul/wolf 0.25 10.0 9.0
|
||||
pair_style born/coul/wolf/cs 0.25 10.0 9.0
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
|
||||
|
||||
@ -107,13 +99,6 @@ Wolf potential in the "coul/wolf"_pair_coul.html pair style.
|
||||
The {born/coul/dsf} style computes the Coulomb contribution with the
|
||||
damped shifted force model as in the "coul/dsf"_pair_coul.html style.
|
||||
|
||||
Style {born/coul/long/cs} is identical to {born/coul/long} except that
|
||||
a term is added for the "core/shell model"_Howto_coreshell.html to
|
||||
allow charges on core and shell particles to be separated by r = 0.0.
|
||||
The same correction is introduced for the {born/coul/dsf/cs} style
|
||||
which is identical to {born/coul/dsf}. And likewise for
|
||||
{born/coul/wolf/cs} style which is identical to {born/coul/wolf}.
|
||||
|
||||
Note that these potentials are related to the "Buckingham
|
||||
potential"_pair_buck.html.
|
||||
|
||||
@ -174,7 +159,7 @@ for the energy of the exp(), 1/r^6, and 1/r^8 portion of the pair
|
||||
interaction.
|
||||
|
||||
The {born/coul/long} pair style supports the
|
||||
"pair_modify"_pair_modify.html table option ti tabulate the
|
||||
"pair_modify"_pair_modify.html table option to tabulate the
|
||||
short-range portion of the long-range Coulombic interaction.
|
||||
|
||||
These styles support the pair_modify tail option for adding long-range
|
||||
|
||||
@ -17,7 +17,6 @@ pair_style buck/coul/cut/intel command :h3
|
||||
pair_style buck/coul/cut/kk command :h3
|
||||
pair_style buck/coul/cut/omp command :h3
|
||||
pair_style buck/coul/long command :h3
|
||||
pair_style buck/coul/long/cs command :h3
|
||||
pair_style buck/coul/long/gpu command :h3
|
||||
pair_style buck/coul/long/intel command :h3
|
||||
pair_style buck/coul/long/kk command :h3
|
||||
@ -29,14 +28,14 @@ pair_style buck/coul/msm/omp command :h3
|
||||
|
||||
pair_style style args :pre
|
||||
|
||||
style = {buck} or {buck/coul/cut} or {buck/coul/long} or {buck/coul/long/cs} or {buck/coul/msm}
|
||||
style = {buck} or {buck/coul/cut} or {buck/coul/long} or {buck/coul/msm}
|
||||
args = list of arguments for a particular style :ul
|
||||
{buck} args = cutoff
|
||||
cutoff = global cutoff for Buckingham interactions (distance units)
|
||||
{buck/coul/cut} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{buck/coul/long} or {buck/coul/long/cs} args = cutoff (cutoff2)
|
||||
{buck/coul/long} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{buck/coul/msm} args = cutoff (cutoff2)
|
||||
@ -56,9 +55,7 @@ pair_coeff 1 1 100.0 1.5 200.0 9.0
|
||||
pair_coeff 1 1 100.0 1.5 200.0 9.0 8.0 :pre
|
||||
|
||||
pair_style buck/coul/long 10.0
|
||||
pair_style buck/coul/long/cs 10.0
|
||||
pair_style buck/coul/long 10.0 8.0
|
||||
pair_style buck/coul/long/cs 10.0 8.0
|
||||
pair_coeff * * 100.0 1.5 200.0
|
||||
pair_coeff 1 1 100.0 1.5 200.0 9.0 :pre
|
||||
|
||||
@ -92,10 +89,6 @@ A,C and Coulombic terms. If two cutoffs are specified, the first is
|
||||
used as the cutoff for the A,C terms, and the second is the cutoff for
|
||||
the Coulombic term.
|
||||
|
||||
Style {buck/coul/long/cs} is identical to {buck/coul/long} except that
|
||||
a term is added for the "core/shell model"_Howto_coreshell.html to
|
||||
allow charges on core and shell particles to be separated by r = 0.0.
|
||||
|
||||
Note that these potentials are related to the "Born-Mayer-Huggins
|
||||
potential"_pair_born.html.
|
||||
|
||||
@ -184,8 +177,7 @@ respa"_run_style.html command. They do not support the {inner},
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
The {buck/coul/long} style is part of the KSPACE package. The
|
||||
{buck/coul/long/cs} style is part of the CORESHELL package. They are
|
||||
The {buck/coul/long} style is part of the KSPACE package. They are
|
||||
only enabled if LAMMPS was built with that package. See the "Build
|
||||
package"_Build_package.html doc page for more info.
|
||||
|
||||
|
||||
@ -6,8 +6,8 @@
|
||||
|
||||
:line
|
||||
|
||||
pair_style buck6d/coul/gauss/dsf :h3
|
||||
pair_style buck6d/coul/gauss/long :h3
|
||||
pair_style buck6d/coul/gauss/dsf command :h3
|
||||
pair_style buck6d/coul/gauss/long command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
|
||||
@ -8,12 +8,15 @@
|
||||
|
||||
pair_style lj/charmm/coul/charmm command :h3
|
||||
pair_style lj/charmm/coul/charmm/intel command :h3
|
||||
pair_style lj/charmm/coul/charmm/kk command :h3
|
||||
pair_style lj/charmm/coul/charmm/omp command :h3
|
||||
pair_style lj/charmm/coul/charmm/implicit command :h3
|
||||
pair_style lj/charmm/coul/charmm/implicit/kk command :h3
|
||||
pair_style lj/charmm/coul/charmm/implicit/omp command :h3
|
||||
pair_style lj/charmm/coul/long command :h3
|
||||
pair_style lj/charmm/coul/long/gpu command :h3
|
||||
pair_style lj/charmm/coul/long/intel command :h3
|
||||
pair_style lj/charmm/coul/long/kk command :h3
|
||||
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
|
||||
|
||||
@ -7,9 +7,11 @@
|
||||
:line
|
||||
|
||||
pair_style born/coul/long/cs command :h3
|
||||
pair_style born/coul/long/cs/gpu command :h3
|
||||
pair_style buck/coul/long/cs command :h3
|
||||
pair_style born/coul/dsf/cs command :h3
|
||||
pair_style born/coul/wolf/cs command :h3
|
||||
pair_style born/coul/wolf/cs/gpu command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -97,6 +99,38 @@ a long-range solver, thus the only correction is the addition of a
|
||||
minimal distance to avoid the possible r = 0.0 case for a
|
||||
core/shell pair.
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
functionally the same as the corresponding style without the suffix.
|
||||
They have been optimized to run faster, depending on your available
|
||||
hardware, as discussed on the "Speed packages"_Speed_packages.html doc
|
||||
page. The accelerated styles take the same arguments and should
|
||||
produce the same results, except for round-off and precision issues.
|
||||
|
||||
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
|
||||
USER-OMP and OPT packages, respectively. They are only enabled if
|
||||
LAMMPS was built with those packages. See the "Build
|
||||
package"_Build_package.html doc page for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Run_options.html when you invoke LAMMPS, or you can use the
|
||||
"suffix"_suffix.html command in your input script.
|
||||
|
||||
See the "Speed packages"_Speed_packages.html doc page for more
|
||||
instructions on how to use the accelerated styles effectively.
|
||||
|
||||
:line
|
||||
|
||||
[Mixing, shift, table, tail correction, restart, rRESPA info]:
|
||||
|
||||
See the corresponding doc pages for pair styles without the "cs"
|
||||
suffix to see how mixing, shifting, tabulation, tail correction,
|
||||
restarting, and rRESPA are handled by theses pair styles.
|
||||
|
||||
:line
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
These pair styles are part of the CORESHELL package. They are only
|
||||
|
||||
@ -13,6 +13,7 @@ pair_style lj/sf/dipole/sf command :h3
|
||||
pair_style lj/sf/dipole/sf/gpu command :h3
|
||||
pair_style lj/sf/dipole/sf/omp command :h3
|
||||
pair_style lj/cut/dipole/long command :h3
|
||||
pair_style lj/cut/dipole/long/gpu command :h3
|
||||
pair_style lj/long/dipole/long command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -20,6 +20,8 @@ pair_style eam/alloy/omp command :h3
|
||||
pair_style eam/alloy/opt command :h3
|
||||
pair_style eam/cd command :h3
|
||||
pair_style eam/cd/omp command :h3
|
||||
pair_style eam/cd/old command :h3
|
||||
pair_style eam/cd/old/omp command :h3
|
||||
pair_style eam/fs command :h3
|
||||
pair_style eam/fs/gpu command :h3
|
||||
pair_style eam/fs/intel command :h3
|
||||
@ -31,7 +33,7 @@ pair_style eam/fs/opt command :h3
|
||||
|
||||
pair_style style :pre
|
||||
|
||||
style = {eam} or {eam/alloy} or {eam/cd} or {eam/fs} :ul
|
||||
style = {eam} or {eam/alloy} or {eam/cd} or {eam/cd/old} or {eam/fs} :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
@ -268,7 +270,8 @@ Style {eam/cd} is similar to the {eam/alloy} style, except that it
|
||||
computes alloy pairwise interactions using the concentration-dependent
|
||||
embedded-atom method (CD-EAM). This model can reproduce the enthalpy
|
||||
of mixing of alloys over the full composition range, as described in
|
||||
"(Stukowski)"_#Stukowski.
|
||||
"(Stukowski)"_#Stukowski. Style {eam/cd/old} is an older, slightly
|
||||
different and slower two-site formulation of the model "(Caro)"_#Caro.
|
||||
|
||||
The pair_coeff command is specified the same as for the {eam/alloy}
|
||||
style. However the DYNAMO {setfl} file must has two
|
||||
@ -442,3 +445,6 @@ Daw, Baskes, Phys Rev B, 29, 6443 (1984).
|
||||
:link(Stukowski)
|
||||
[(Stukowski)] Stukowski, Sadigh, Erhart, Caro; Modeling Simulation
|
||||
Materials Science & Engineering, 7, 075005 (2009).
|
||||
|
||||
:link(Caro)
|
||||
[(Caro)] A Caro, DA Crowson, M Caro; Phys Rev Lett, 95, 075702 (2005)
|
||||
|
||||
@ -7,6 +7,7 @@
|
||||
:line
|
||||
|
||||
pair_style edip command :h3
|
||||
pair_style edip/omp command :h3
|
||||
pair_style edip/multi command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -7,7 +7,7 @@
|
||||
:line
|
||||
|
||||
pair_style gran/hooke command :h3
|
||||
pair_style gran/omp command :h3
|
||||
pair_style gran/hooke/omp command :h3
|
||||
pair_style gran/hooke/history command :h3
|
||||
pair_style gran/hooke/history/omp command :h3
|
||||
pair_style gran/hertz/history command :h3
|
||||
|
||||
@ -8,8 +8,10 @@
|
||||
|
||||
pair_style lj/gromacs command :h3
|
||||
pair_style lj/gromacs/gpu command :h3
|
||||
pair_style lj/gromacs/kk command :h3
|
||||
pair_style lj/gromacs/omp command :h3
|
||||
pair_style lj/gromacs/coul/gromacs command :h3
|
||||
pair_style lj/gromacs/coul/gromacs/kk command :h3
|
||||
pair_style lj/gromacs/coul/gromacs/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -7,9 +7,8 @@
|
||||
:line
|
||||
|
||||
pair_style hybrid command :h3
|
||||
pair_style hybrid/omp command :h3
|
||||
pair_style hybrid/kk command :h3
|
||||
pair_style hybrid/overlay command :h3
|
||||
pair_style hybrid/overlay/omp command :h3
|
||||
pair_style hybrid/overlay/kk command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -14,6 +14,7 @@ pair_style lj/cut/opt command :h3
|
||||
pair_style lj/cut/omp command :h3
|
||||
pair_style lj/cut/coul/cut command :h3
|
||||
pair_style lj/cut/coul/cut/gpu command :h3
|
||||
pair_style lj/cut/coul/cut/kk command :h3
|
||||
pair_style lj/cut/coul/cut/omp command :h3
|
||||
pair_style lj/cut/coul/debye command :h3
|
||||
pair_style lj/cut/coul/debye/gpu command :h3
|
||||
@ -26,6 +27,7 @@ pair_style lj/cut/coul/dsf/omp command :h3
|
||||
pair_style lj/cut/coul/long command :h3
|
||||
pair_style lj/cut/coul/long/cs command :h3
|
||||
pair_style lj/cut/coul/long/gpu command :h3
|
||||
pair_style lj/cut/coul/long/kk command :h3
|
||||
pair_style lj/cut/coul/long/intel command :h3
|
||||
pair_style lj/cut/coul/long/opt command :h3
|
||||
pair_style lj/cut/coul/long/omp command :h3
|
||||
|
||||
@ -8,7 +8,10 @@
|
||||
|
||||
pair_style lj/expand command :h3
|
||||
pair_style lj/expand/gpu command :h3
|
||||
pair_style lj/expand/kk command :h3
|
||||
pair_style lj/expand/omp command :h3
|
||||
pair_style lj/expand/coul/long command :h3
|
||||
pair_style lj/expand/coul/long/gpu command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -22,6 +25,11 @@ pair_style lj/expand 2.5
|
||||
pair_coeff * * 1.0 1.0 0.5
|
||||
pair_coeff 1 1 1.0 1.0 -0.2 2.0 :pre
|
||||
|
||||
pair_style lj/expand/coul/long 2.5
|
||||
pair_style lj/expand/coul/long 2.5 4.0
|
||||
pair_coeff * * 1.0 1.0 0.5
|
||||
pair_coeff 1 1 1.0 1.0 -0.2 3.0 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Style {lj/expand} computes a LJ interaction with a distance shifted by
|
||||
@ -34,11 +42,12 @@ formula:
|
||||
Rc is the cutoff which does not include the delta distance. I.e. the
|
||||
actual force cutoff is the sum of cutoff + delta.
|
||||
|
||||
The following coefficients must be defined for each pair of atoms
|
||||
types via the "pair_coeff"_pair_coeff.html command as in the examples
|
||||
above, or in the data file or restart files read by the
|
||||
"read_data"_read_data.html or "read_restart"_read_restart.html
|
||||
commands, or by mixing as described below:
|
||||
For all of the {lj/expand} pair styles, the following coefficients must
|
||||
be defined for each pair of atoms types via the
|
||||
"pair_coeff"_pair_coeff.html command as in the examples above, or in
|
||||
the data file or restart files read by the "read_data"_read_data.html
|
||||
or "read_restart"_read_restart.html commands, or by mixing as
|
||||
described below:
|
||||
|
||||
epsilon (energy units)
|
||||
sigma (distance units)
|
||||
@ -48,6 +57,11 @@ cutoff (distance units) :ul
|
||||
The delta values can be positive or negative. The last coefficient is
|
||||
optional. If not specified, the global LJ cutoff is used.
|
||||
|
||||
For {lj/expand/coul/long} only the LJ cutoff can be specified since a
|
||||
Coulombic cutoff cannot be specified for an individual I,J type pair.
|
||||
All type pairs use the same global Coulombic cutoff specified in the
|
||||
pair_style command.
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
|
||||
@ -11,6 +11,7 @@ pair_style lj/long/coul/long/intel command :h3
|
||||
pair_style lj/long/coul/long/omp command :h3
|
||||
pair_style lj/long/coul/long/opt command :h3
|
||||
pair_style lj/long/tip4p/long command :h3
|
||||
pair_style lj/long/tip4p/long/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
|
||||
@ -6,8 +6,8 @@
|
||||
|
||||
:line
|
||||
|
||||
pair_style meam/spline :h3
|
||||
pair_style meam/spline/omp :h3
|
||||
pair_style meam/spline command :h3
|
||||
pair_style meam/spline/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
|
||||
@ -6,8 +6,7 @@
|
||||
|
||||
:line
|
||||
|
||||
pair_style meam/sw/spline :h3
|
||||
pair_style meam/sw/spline/omp :h3
|
||||
pair_style meam/sw/spline command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
|
||||
@ -7,7 +7,6 @@
|
||||
:line
|
||||
|
||||
pair_style nb3b/harmonic command :h3
|
||||
pair_style nb3b/harmonic/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -89,28 +88,6 @@ a particular simulation; LAMMPS ignores those entries.
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
functionally the same as the corresponding style without the suffix.
|
||||
They have been optimized to run faster, depending on your available
|
||||
hardware, as discussed on the "Speed packages"_Speed_packages.html doc
|
||||
page. The accelerated styles take the same arguments and should
|
||||
produce the same results, except for round-off and precision issues.
|
||||
|
||||
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
|
||||
USER-OMP and OPT packages, respectively. They are only enabled if
|
||||
LAMMPS was built with those packages. See the "Build
|
||||
package"_Build_package.html doc page for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Run_options.html when you invoke LAMMPS, or you can use the
|
||||
"suffix"_suffix.html command in your input script.
|
||||
|
||||
See the "Speed packages"_Speed_packages.html doc page for more
|
||||
instructions on how to use the accelerated styles effectively.
|
||||
|
||||
:line
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This pair style can only be used if LAMMPS was built with the MANYBODY
|
||||
|
||||
@ -13,6 +13,8 @@ pair_style lj/sdk/omp command :h3
|
||||
pair_style lj/sdk/coul/long command :h3
|
||||
pair_style lj/sdk/coul/long/gpu command :h3
|
||||
pair_style lj/sdk/coul/long/omp command :h3
|
||||
pair_style lj/sdk/coul/msm command :h3
|
||||
pair_style lj/sdk/coul/msm/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -35,6 +37,10 @@ pair_style lj/sdk/coul/long 10.0
|
||||
pair_style lj/sdk/coul/long 10.0 12.0
|
||||
pair_coeff 1 1 lj9_6 100.0 3.5 12.0 :pre
|
||||
|
||||
pair_style lj/sdk/coul/msm 10.0
|
||||
pair_style lj/sdk/coul/msm 10.0 12.0
|
||||
pair_coeff 1 1 lj9_6 100.0 3.5 12.0 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The {lj/sdk} styles compute a 9/6, 12/4, or 12/6 Lennard-Jones potential,
|
||||
@ -75,10 +81,10 @@ and Coulombic interactions for this type pair. If both coefficients
|
||||
are specified, they are used as the LJ and Coulombic cutoffs for this
|
||||
type pair.
|
||||
|
||||
For {lj/sdk/coul/long} only the LJ cutoff can be specified since a
|
||||
Coulombic cutoff cannot be specified for an individual I,J type pair.
|
||||
All type pairs use the same global Coulombic cutoff specified in the
|
||||
pair_style command.
|
||||
For {lj/sdk/coul/long} and {lj/sdk/coul/msm} only the LJ cutoff can be
|
||||
specified since a Coulombic cutoff cannot be specified for an
|
||||
individual I,J type pair. All type pairs use the same global
|
||||
Coulombic cutoff specified in the pair_style command.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -6,11 +6,11 @@
|
||||
|
||||
:line
|
||||
|
||||
pair_style spin/me command :h3
|
||||
pair_style spin/magelec command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
pair_style spin/me cutoff :pre
|
||||
pair_style spin/magelec cutoff :pre
|
||||
|
||||
cutoff = global cutoff pair (distance in metal units) :ulb,l
|
||||
|
||||
@ -18,8 +18,8 @@ cutoff = global cutoff pair (distance in metal units) :ulb,l
|
||||
|
||||
[Examples:]
|
||||
|
||||
pair_style spin/me 4.5
|
||||
pair_coeff * * me 4.5 0.00109 1.0 1.0 1.0 :pre
|
||||
pair_style spin/magelec 4.5
|
||||
pair_coeff * * magelec 4.5 0.00109 1.0 1.0 1.0 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
|
||||
@ -29,34 +29,36 @@ between pairs of magnetic spins:
|
||||
|
||||
:c,image(Eqs/pair_spin_neel_interaction.jpg)
|
||||
|
||||
where si and sj are two neighboring magnetic spins of two particles,
|
||||
where si and sj are two neighboring magnetic spins of two particles,
|
||||
rij = ri - rj is the inter-atomic distance between the two particles,
|
||||
eij = (ri - rj)/|ri-rj| is their normalized separation vector
|
||||
and g1, q1 and q2 are three functions defining the intensity of the
|
||||
dipolar and quadrupolar contributions, with:
|
||||
eij = (ri - rj)/|ri-rj| is their normalized separation vector and g1,
|
||||
q1 and q2 are three functions defining the intensity of the dipolar
|
||||
and quadrupolar contributions, with:
|
||||
|
||||
:c,image(Eqs/pair_spin_neel_functions.jpg)
|
||||
|
||||
With the functions g(rij) and q(rij) defined and fitted according to the same
|
||||
Bethe-Slater function used to fit the exchange interaction:
|
||||
With the functions g(rij) and q(rij) defined and fitted according to
|
||||
the same Bethe-Slater function used to fit the exchange interaction:
|
||||
|
||||
:c,image(Eqs/pair_spin_exchange_function.jpg)
|
||||
|
||||
where a, b and d are the three constant coefficients defined in the associated
|
||||
"pair_coeff" command.
|
||||
where a, b and d are the three constant coefficients defined in the
|
||||
associated "pair_coeff" command.
|
||||
|
||||
The coefficients a, b, and d need to be fitted so that the function above matches with
|
||||
the values of the magneto-elastic constant of the materials at stake.
|
||||
The coefficients a, b, and d need to be fitted so that the function
|
||||
above matches with the values of the magneto-elastic constant of the
|
||||
materials at stake.
|
||||
|
||||
Examples and more explanations about this function and its parametrization are reported
|
||||
in "(Tranchida)"_#Tranchida6. More examples of parametrization will be provided in
|
||||
future work.
|
||||
Examples and more explanations about this function and its
|
||||
parametrization are reported in "(Tranchida)"_#Tranchida6. More
|
||||
examples of parametrization will be provided in future work.
|
||||
|
||||
From this DM interaction, each spin i will be submitted to a magnetic torque
|
||||
omega and its associated atom to a force F (for spin-lattice calculations only).
|
||||
From this DM interaction, each spin i will be submitted to a magnetic
|
||||
torque omega and its associated atom to a force F (for spin-lattice
|
||||
calculations only).
|
||||
|
||||
More details about the derivation of these torques/forces are reported in
|
||||
"(Tranchida)"_#Tranchida6.
|
||||
More details about the derivation of these torques/forces are reported
|
||||
in "(Tranchida)"_#Tranchida6.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -8,10 +8,10 @@
|
||||
|
||||
pair_style tersoff command :h3
|
||||
pair_style tersoff/table command :h3
|
||||
pair_style tersoff/gpu :h3
|
||||
pair_style tersoff/intel :h3
|
||||
pair_style tersoff/kk :h3
|
||||
pair_style tersoff/omp :h3
|
||||
pair_style tersoff/gpu command :h3
|
||||
pair_style tersoff/intel command :h3
|
||||
pair_style tersoff/kk command :h3
|
||||
pair_style tersoff/omp command :h3
|
||||
pair_style tersoff/table/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -36,7 +36,7 @@ fix 3 all nve/spin lattice no
|
||||
|
||||
timestep 0.0002
|
||||
|
||||
compute out_mag all compute/spin
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
@ -40,7 +40,7 @@ timestep 0.0001
|
||||
|
||||
# compute and output options
|
||||
|
||||
compute out_mag all compute/spin
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
@ -40,7 +40,7 @@ fix 3 all nve/spin lattice yes
|
||||
timestep 0.0001
|
||||
|
||||
|
||||
compute out_mag all compute/spin
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
@ -37,7 +37,7 @@ timestep 0.0001
|
||||
|
||||
# compute and output options
|
||||
|
||||
compute out_mag all compute/spin
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
@ -38,7 +38,7 @@ timestep 0.0001
|
||||
|
||||
# compute and output options
|
||||
|
||||
compute out_mag all compute/spin
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
@ -25,7 +25,7 @@ timestep 0.0001
|
||||
|
||||
# define outputs and computes
|
||||
|
||||
compute out_mag all compute/spin
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
@ -29,7 +29,7 @@ timestep 0.0001
|
||||
|
||||
# define outputs
|
||||
|
||||
compute out_mag all compute/spin
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
@ -34,7 +34,7 @@ timestep 0.0001
|
||||
|
||||
# compute and output options
|
||||
|
||||
compute out_mag all compute/spin
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
@ -129,7 +129,7 @@ compute contact_radius all smd/contact/radius
|
||||
compute S solids smd/tlsph/stress
|
||||
compute nn water smd/ulsph/num/neighs
|
||||
compute epl solids smd/plastic/strain
|
||||
compute vol all smd/volume
|
||||
compute vol all smd/vol
|
||||
compute rho all smd/rho
|
||||
|
||||
dump dump_id all custom 100 dump.LAMMPS id type x y &
|
||||
|
||||
@ -13,8 +13,8 @@
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
|
||||
FixStyle(python,FixPythonInvoke)
|
||||
FixStyle(python/invoke,FixPythonInvoke)
|
||||
FixStyle(python,FixPythonInvoke)
|
||||
|
||||
#else
|
||||
|
||||
|
||||
@ -24,6 +24,9 @@ style_nstencil.h
|
||||
style_ntopo.h
|
||||
# other auto-generated files
|
||||
lmpinstalledpkgs.h
|
||||
# renamed on 25 September 2018
|
||||
compute_smd_triangle_mesh_vertices.h
|
||||
compute_smd_triangle_mesh_vertices.cpp
|
||||
# renamed on 6 September 2018
|
||||
pair_cdeam_omp.h
|
||||
pair_cdeam_omp.cpp
|
||||
|
||||
@ -13,7 +13,7 @@
|
||||
|
||||
#ifdef COMPUTE_CLASS
|
||||
|
||||
ComputeStyle(compute/spin,ComputeSpin)
|
||||
ComputeStyle(spin,ComputeSpin)
|
||||
|
||||
#else
|
||||
|
||||
|
||||
@ -11,12 +11,6 @@
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef PAIR_CLASS
|
||||
|
||||
PairStyle(pair/spin,PairSpin)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_PAIR_SPIN_H
|
||||
#define LMP_PAIR_SPIN_H
|
||||
|
||||
@ -46,7 +40,6 @@ friend class FixNVESpin;
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* ERROR/WARNING messages:
|
||||
|
||||
@ -1,170 +0,0 @@
|
||||
/* ----------------------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
http://lammps.sandia.gov, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
This software is distributed under the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Contributing author: Axel Kohlmeyer (Temple U)
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include <cmath>
|
||||
#include "pair_nb3b_harmonic_omp.h"
|
||||
#include "atom.h"
|
||||
#include "comm.h"
|
||||
#include "force.h"
|
||||
#include "neighbor.h"
|
||||
#include "neigh_list.h"
|
||||
|
||||
#include "suffix.h"
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
PairNb3bHarmonicOMP::PairNb3bHarmonicOMP(LAMMPS *lmp) :
|
||||
PairNb3bHarmonic(lmp), ThrOMP(lmp, THR_PAIR)
|
||||
{
|
||||
suffix_flag |= Suffix::OMP;
|
||||
respa_enable = 0;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void PairNb3bHarmonicOMP::compute(int eflag, int vflag)
|
||||
{
|
||||
if (eflag || vflag) {
|
||||
ev_setup(eflag,vflag);
|
||||
} else evflag = vflag_fdotr = 0;
|
||||
|
||||
const int nall = atom->nlocal + atom->nghost;
|
||||
const int nthreads = comm->nthreads;
|
||||
const int inum = list->inum;
|
||||
|
||||
#if defined(_OPENMP)
|
||||
#pragma omp parallel default(none) shared(eflag,vflag)
|
||||
#endif
|
||||
{
|
||||
int ifrom, ito, tid;
|
||||
|
||||
loop_setup_thr(ifrom, ito, tid, inum, nthreads);
|
||||
ThrData *thr = fix->get_thr(tid);
|
||||
thr->timer(Timer::START);
|
||||
ev_setup_thr(eflag, vflag, nall, eatom, vatom, thr);
|
||||
|
||||
if (evflag) {
|
||||
if (eflag) {
|
||||
eval<1,1>(ifrom, ito, thr);
|
||||
} else {
|
||||
eval<1,0>(ifrom, ito, thr);
|
||||
}
|
||||
} else eval<0,0>(ifrom, ito, thr);
|
||||
|
||||
thr->timer(Timer::PAIR);
|
||||
reduce_thr(this, eflag, vflag, thr);
|
||||
} // end of omp parallel region
|
||||
}
|
||||
|
||||
template <int EVFLAG, int EFLAG>
|
||||
void PairNb3bHarmonicOMP::eval(int iifrom, int iito, ThrData * const thr)
|
||||
{
|
||||
int i,j,k,ii,jj,kk,jnum,jnumm1;
|
||||
int itype,jtype,ktype,ijparam,ikparam,ijkparam;
|
||||
double xtmp,ytmp,ztmp,evdwl;
|
||||
double rsq1,rsq2;
|
||||
double delr1[3],delr2[3],fj[3],fk[3];
|
||||
int *ilist,*jlist,*numneigh,**firstneigh;
|
||||
|
||||
evdwl = 0.0;
|
||||
|
||||
const dbl3_t * _noalias const x = (dbl3_t *) atom->x[0];
|
||||
dbl3_t * _noalias const f = (dbl3_t *) thr->get_f()[0];
|
||||
const int * _noalias const type = atom->type;
|
||||
|
||||
ilist = list->ilist;
|
||||
numneigh = list->numneigh;
|
||||
firstneigh = list->firstneigh;
|
||||
|
||||
double fxtmp,fytmp,fztmp;
|
||||
|
||||
// loop over full neighbor list of my atoms
|
||||
|
||||
for (ii = iifrom; ii < iito; ++ii) {
|
||||
|
||||
i = ilist[ii];
|
||||
itype = map[type[i]];
|
||||
xtmp = x[i].x;
|
||||
ytmp = x[i].y;
|
||||
ztmp = x[i].z;
|
||||
fxtmp = fytmp = fztmp = 0.0;
|
||||
|
||||
// two-body interactions, skip half of them
|
||||
|
||||
jlist = firstneigh[i];
|
||||
jnum = numneigh[i];
|
||||
jnumm1 = jnum - 1;
|
||||
|
||||
for (jj = 0; jj < jnumm1; jj++) {
|
||||
j = jlist[jj];
|
||||
j &= NEIGHMASK;
|
||||
jtype = map[type[j]];
|
||||
ijparam = elem2param[itype][jtype][jtype];
|
||||
delr1[0] = x[j].x - xtmp;
|
||||
delr1[1] = x[j].y - ytmp;
|
||||
delr1[2] = x[j].z - ztmp;
|
||||
rsq1 = delr1[0]*delr1[0] + delr1[1]*delr1[1] + delr1[2]*delr1[2];
|
||||
if (rsq1 > params[ijparam].cutsq) continue;
|
||||
|
||||
double fjxtmp,fjytmp,fjztmp;
|
||||
fjxtmp = fjytmp = fjztmp = 0.0;
|
||||
|
||||
for (kk = jj+1; kk < jnum; kk++) {
|
||||
k = jlist[kk];
|
||||
k &= NEIGHMASK;
|
||||
ktype = map[type[k]];
|
||||
ikparam = elem2param[itype][ktype][ktype];
|
||||
ijkparam = elem2param[itype][jtype][ktype];
|
||||
|
||||
delr2[0] = x[k].x - xtmp;
|
||||
delr2[1] = x[k].y - ytmp;
|
||||
delr2[2] = x[k].z - ztmp;
|
||||
rsq2 = delr2[0]*delr2[0] + delr2[1]*delr2[1] + delr2[2]*delr2[2];
|
||||
if (rsq2 > params[ikparam].cutsq) continue;
|
||||
|
||||
threebody(¶ms[ijparam],¶ms[ikparam],¶ms[ijkparam],
|
||||
rsq1,rsq2,delr1,delr2,fj,fk,EFLAG,evdwl);
|
||||
|
||||
fxtmp -= fj[0] + fk[0];
|
||||
fytmp -= fj[1] + fk[1];
|
||||
fztmp -= fj[2] + fk[2];
|
||||
fjxtmp += fj[0];
|
||||
fjytmp += fj[1];
|
||||
fjztmp += fj[2];
|
||||
f[k].x += fk[0];
|
||||
f[k].y += fk[1];
|
||||
f[k].z += fk[2];
|
||||
|
||||
if (EVFLAG) ev_tally3_thr(this,i,j,k,evdwl,0.0,fj,fk,delr1,delr2,thr);
|
||||
}
|
||||
f[j].x += fjxtmp;
|
||||
f[j].y += fjytmp;
|
||||
f[j].z += fjztmp;
|
||||
}
|
||||
f[i].x += fxtmp;
|
||||
f[i].y += fytmp;
|
||||
f[i].z += fztmp;
|
||||
}
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
double PairNb3bHarmonicOMP::memory_usage()
|
||||
{
|
||||
double bytes = memory_usage_thr();
|
||||
bytes += PairNb3bHarmonic::memory_usage();
|
||||
|
||||
return bytes;
|
||||
}
|
||||
@ -1,49 +0,0 @@
|
||||
/* -*- c++ -*- ----------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
http://lammps.sandia.gov, Sandia National Laboratories
|
||||
Steve Plimpton, sjplimp@sandia.gov
|
||||
|
||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
|
||||
certain rights in this software. This software is distributed under
|
||||
the GNU General Public License.
|
||||
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Contributing author: Axel Kohlmeyer (Temple U)
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef PAIR_CLASS
|
||||
|
||||
//PairStyle(nb3b/harmonic/omp,PairNb3bHarmonicOMP)
|
||||
PairStyle(disabled,PairNb3bHarmonicOMP)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_PAIR_NB3BHARMONIC_OMP_H
|
||||
#define LMP_PAIR_NB3BHARMONIC_OMP_H
|
||||
|
||||
#include "pair_nb3b_harmonic.h"
|
||||
#include "thr_omp.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
class PairNb3bHarmonicOMP : public PairNb3bHarmonic, public ThrOMP {
|
||||
|
||||
public:
|
||||
PairNb3bHarmonicOMP(class LAMMPS *);
|
||||
|
||||
virtual void compute(int, int);
|
||||
virtual double memory_usage();
|
||||
|
||||
private:
|
||||
template <int EVFLAG, int EFLAG>
|
||||
void eval(int ifrom, int ito, ThrData * const thr);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
@ -25,7 +25,7 @@
|
||||
|
||||
#ifdef COMPUTE_CLASS
|
||||
|
||||
ComputeStyle(smd/volume,ComputeSMDVol)
|
||||
ComputeStyle(smd/vol,ComputeSMDVol)
|
||||
|
||||
#else
|
||||
|
||||
|
||||
@ -24,12 +24,12 @@
|
||||
|
||||
#ifdef FIX_CLASS
|
||||
|
||||
FixStyle(smd/setvelocity,FixSMDSetVel)
|
||||
FixStyle(smd/setvel,FixSMDSetVel)
|
||||
|
||||
#else
|
||||
|
||||
#ifndef LMP_FIX_SMD_SET_VELOCITY_H
|
||||
#define LMP_FIX_SMD_SET_VELOCITY_H
|
||||
#ifndef LMP_FIX_SMD_SETVEL_H
|
||||
#define LMP_FIX_SMD_SETVEL_H
|
||||
|
||||
#include "fix.h"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user