Merge pull request #3663 from akohlmey/collected-small-changes

Collected small changes and fixes
This commit is contained in:
Axel Kohlmeyer
2023-03-10 22:24:56 -05:00
committed by GitHub
79 changed files with 4244 additions and 515 deletions

View File

@ -98,9 +98,11 @@ if(GPU_API STREQUAL "CUDA")
# comparison chart according to: https://en.wikipedia.org/wiki/CUDA#GPUs_supported # comparison chart according to: https://en.wikipedia.org/wiki/CUDA#GPUs_supported
if(CUDA_VERSION VERSION_LESS 8.0) if(CUDA_VERSION VERSION_LESS 8.0)
message(FATAL_ERROR "CUDA Toolkit version 8.0 or later is required") message(FATAL_ERROR "CUDA Toolkit version 8.0 or later is required")
elseif(CUDA_VERSION VERSION_GREATER_EQUAL "12.0") elseif(CUDA_VERSION VERSION_GREATER_EQUAL "13.0")
message(WARNING "Untested CUDA Toolkit version ${CUDA_VERSION}. Use at your own risk") message(WARNING "Untested CUDA Toolkit version ${CUDA_VERSION}. Use at your own risk")
set(GPU_CUDA_GENCODE "-arch=all") set(GPU_CUDA_GENCODE "-arch=all")
elseif(CUDA_VERSION VERSION_GREATER_EQUAL "12.0")
set(GPU_CUDA_GENCODE "-arch=all")
else() else()
# Kepler (GPU Arch 3.0) is supported by CUDA 5 to CUDA 10.2 # Kepler (GPU Arch 3.0) is supported by CUDA 5 to CUDA 10.2
if((CUDA_VERSION VERSION_GREATER_EQUAL "5.0") AND (CUDA_VERSION VERSION_LESS "11.0")) if((CUDA_VERSION VERSION_GREATER_EQUAL "5.0") AND (CUDA_VERSION VERSION_LESS "11.0"))

View File

@ -94,10 +94,11 @@ html: xmlgen $(VENV) $(SPHINXCONFIG)/conf.py $(ANCHORCHECK) $(MATHJAX)
rm -f $(BUILDDIR)/doxygen/xml/run.stamp;\ rm -f $(BUILDDIR)/doxygen/xml/run.stamp;\
echo "############################################" ; env PYTHONWARNINGS= PYTHONDONTWRITEBYTECODE=1 \ echo "############################################" ; env PYTHONWARNINGS= PYTHONDONTWRITEBYTECODE=1 \
rst_anchor_check src/*.rst ;\ rst_anchor_check src/*.rst ;\
python $(BUILDDIR)/utils/check-packages.py -s ../src -d src ;\ $(PYTHON) $(BUILDDIR)/utils/check-packages.py -s ../src -d src ;\
env LC_ALL=C grep -n '[^ -~]' $(RSTDIR)/*.rst ;\ env LC_ALL=C grep -n '[^ -~]' $(RSTDIR)/*.rst ;\
env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst ;\ env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst ;\
python $(BUILDDIR)/utils/check-styles.py -s ../src -d src ;\ env LC_ALL=C grep -n ' `[^`]\+<[a-z][^`]\+`[^_]' $(RSTDIR)/*.rst ;\
$(PYTHON) $(BUILDDIR)/utils/check-styles.py -s ../src -d src ;\
echo "############################################" ;\ echo "############################################" ;\
deactivate ;\ deactivate ;\
) )
@ -174,10 +175,11 @@ pdf: xmlgen $(VENV) $(SPHINXCONFIG)/conf.py $(ANCHORCHECK)
rm -f $(BUILDDIR)/doxygen/xml/run.stamp;\ rm -f $(BUILDDIR)/doxygen/xml/run.stamp;\
echo "############################################" ; env PYTHONWARNINGS= PYTHONDONTWRITEBYTECODE=1 \ echo "############################################" ; env PYTHONWARNINGS= PYTHONDONTWRITEBYTECODE=1 \
rst_anchor_check src/*.rst ;\ rst_anchor_check src/*.rst ;\
python utils/check-packages.py -s ../src -d src ;\ $(PYTHON) utils/check-packages.py -s ../src -d src ;\
env LC_ALL=C grep -n '[^ -~]' $(RSTDIR)/*.rst ;\ env LC_ALL=C grep -n '[^ -~]' $(RSTDIR)/*.rst ;\
env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst ;\ env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst ;\
python utils/check-styles.py -s ../src -d src ;\ env LC_ALL=C grep -n ' `[^`]\+<[a-z][^`]\+`[^_]' $(RSTDIR)/*.rst ;\
$(PYTHON) utils/check-styles.py -s ../src -d src ;\
echo "############################################" ;\ echo "############################################" ;\
deactivate ;\ deactivate ;\
) )
@ -208,14 +210,14 @@ anchor_check : $(ANCHORCHECK)
style_check : $(VENV) style_check : $(VENV)
@(\ @(\
. $(VENV)/bin/activate ; env PYTHONWARNINGS= PYTHONDONTWRITEBYTECODE=1 \ . $(VENV)/bin/activate ; env PYTHONWARNINGS= PYTHONDONTWRITEBYTECODE=1 \
python utils/check-styles.py -s ../src -d src ;\ $(PYTHON) utils/check-styles.py -s ../src -d src ;\
deactivate ;\ deactivate ;\
) )
package_check : $(VENV) package_check : $(VENV)
@(\ @(\
. $(VENV)/bin/activate ; env PYTHONWARNINGS= PYTHONDONTWRITEBYTECODE=1 \ . $(VENV)/bin/activate ; env PYTHONWARNINGS= PYTHONDONTWRITEBYTECODE=1 \
python utils/check-packages.py -s ../src -d src ;\ $(PYTHON) utils/check-packages.py -s ../src -d src ;\
deactivate ;\ deactivate ;\
) )
@ -224,6 +226,7 @@ char_check :
role_check : role_check :
@( env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst && exit 1 || : ) @( env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst && exit 1 || : )
@( env LC_ALL=C grep -n ' `[^`]\+<[a-z][^`]\+`[^_]' $(RSTDIR)/*.rst && exit 1 || : )
link_check : $(VENV) html link_check : $(VENV) html
@(\ @(\

View File

@ -1,11 +1,11 @@
.TH MSI2LMP "1" "v3.9.9" "2018-11-05" .TH MSI2LMP "1" "v3.9.10" "2023-03-10"
.SH NAME .SH NAME
.B MSI2LMP .B MSI2LMP
\- Converter for Materials Studio files to LAMMPS \- Converter for Materials Studio files to LAMMPS
.SH SYNOPSIS .SH SYNOPSIS
.B msi2lmp .B msi2lmp
<ROOTNAME> [-class <I|1|II|2|O|0>] [-frc <path to frc file>] [-print #] [-ignore] [-nocenter] [-oldstyle] [-shift <x> <y> <z>] [-help] <ROOTNAME> [-class <I|1|II|2|O|0>] [-frc <path to frc file>] [-print #] [-ignore] [-nocenter] [-oldstyle] [-shift <x> <y> <z>]
.SH DESCRIPTION .SH DESCRIPTION
.PP .PP
@ -22,6 +22,9 @@ needed between .frc and .car/.mdf files are the atom types.
.SH OPTIONS .SH OPTIONS
.TP .TP
\fB\-h\fR, \fB\-help\fR,
Print detailed help message to the screen and stop.
.TP
\fB\<ROOTNAME>\fR \fB\<ROOTNAME>\fR
This has to be the first argument and is a This has to be the first argument and is a
.B mandatory .B mandatory

View File

@ -274,7 +274,7 @@ To enable GPU binning via CUDA performance primitives set the Makefile variable
most modern GPUs. most modern GPUs.
To support the CUDA multiprocessor server you can set the define To support the CUDA multiprocessor server you can set the define
``-DCUDA_PROXY``. Please note that in this case you must **not** use ``-DCUDA_MPS_SUPPORT``. Please note that in this case you must **not** use
the CUDA performance primitives and thus set the variable ``CUDPP_OPT`` the CUDA performance primitives and thus set the variable ``CUDPP_OPT``
to empty. to empty.
@ -1964,10 +1964,10 @@ OPENMP package
Apple offers the `Xcode package and IDE Apple offers the `Xcode package and IDE
<https://developer.apple.com/xcode/>`_ for compiling software on <https://developer.apple.com/xcode/>`_ for compiling software on
macOS, so you have likely installed it to compile LAMMPS. Their macOS, so you have likely installed it to compile LAMMPS. Their
compiler is based on `Clang <https://clang.llvm.org/>`, but while it compiler is based on `Clang <https://clang.llvm.org/>`_, but while it
is capable of processing OpenMP directives, the necessary header is capable of processing OpenMP directives, the necessary header
files and OpenMP runtime library are missing. The `R developers files and OpenMP runtime library are missing. The `R developers
<https://www.r-project.org/>` have figured out a way to build those <https://www.r-project.org/>`_ have figured out a way to build those
in a compatible fashion. One can download them from in a compatible fashion. One can download them from
`https://mac.r-project.org/openmp/ `https://mac.r-project.org/openmp/
<https://mac.r-project.org/openmp/>`_. Simply adding those files as <https://mac.r-project.org/openmp/>`_. Simply adding those files as

View File

@ -70,6 +70,7 @@ Force fields howto
Howto_amoeba Howto_amoeba
Howto_tip3p Howto_tip3p
Howto_tip4p Howto_tip4p
Howto_tip5p
Howto_spc Howto_spc
Packages howto Packages howto

View File

@ -63,18 +63,18 @@ The package also provides a :doc:`mdi plugin <mdi>` command, which
enables LAMMPS to operate as an MDI driver and load an MDI engine as a enables LAMMPS to operate as an MDI driver and load an MDI engine as a
plugin library. plugin library.
The package furthermore includes a `fix mdi/qm <fix_mdi_qm>` command, in The package furthermore includes a :doc:`fix mdi/qm <fix_mdi_qm>`
which LAMMPS operates as an MDI driver in conjunction with a quantum command, in which LAMMPS operates as an MDI driver in conjunction with a
mechanics code as an MDI engine. The post_force() method of the quantum mechanics code as an MDI engine. The post_force() method of the
``fix_mdi_qm.cpp`` file shows how a driver issues MDI commands to another ``fix_mdi_qm.cpp`` file shows how a driver issues MDI commands to
code. This command can be used to couple to an MDI engine, which is another code. This command can be used to couple to an MDI engine,
either a stand-alone code or a plugin library. which is either a stand-alone code or a plugin library.
As explained in the `fix mdi/qm <fix_mdi_qm>` command documentation, it As explained in the :doc:`fix mdi/qm <fix_mdi_qm>` command
can be used to perform *ab initio* MD simulations or energy documentation, it can be used to perform *ab initio* MD simulations or
minimizations, or to evaluate the quantum energy and forces for a series energy minimizations, or to evaluate the quantum energy and forces for a
of independent systems. The ``examples/mdi`` directory has example series of independent systems. The ``examples/mdi`` directory has
input scripts for all of these use cases. example input scripts for all of these use cases.
---------- ----------

View File

@ -20,7 +20,6 @@ atoms and the water molecule to run a rigid SPC model.
| LJ :math:`\epsilon`, :math:`\sigma` of OH, HH = 0.0 | LJ :math:`\epsilon`, :math:`\sigma` of OH, HH = 0.0
| :math:`r_0` of OH bond = 1.0 | :math:`r_0` of OH bond = 1.0
| :math:`\theta_0` of HOH angle = 109.47\ :math:`^{\circ}` | :math:`\theta_0` of HOH angle = 109.47\ :math:`^{\circ}`
|
Note that as originally proposed, the SPC model was run with a 9 Note that as originally proposed, the SPC model was run with a 9
Angstrom cutoff for both LJ and Coulomb terms. It can also be used Angstrom cutoff for both LJ and Coulomb terms. It can also be used
@ -33,16 +32,123 @@ the partial charge assignments change:
| O charge = -0.8476 | O charge = -0.8476
| H charge = 0.4238 | H charge = 0.4238
|
See the :ref:`(Berendsen) <howto-Berendsen>` reference for more details on both See the :ref:`(Berendsen) <howto-Berendsen>` reference for more details on both
the SPC and SPC/E models. the SPC and SPC/E models.
Below is the code for a LAMMPS input file and a molecule file
(``spce.mol``) of SPC/E water for use with the :doc:`molecule command
<molecule>` demonstrating how to set up a small bulk water system for
SPC/E with rigid bonds.
.. code-block:: LAMMPS
units real
atom_style full
region box block -5 5 -5 5 -5 5
create_box 2 box bond/types 1 angle/types 1 &
extra/bond/per/atom 2 extra/angle/per/atom 1 extra/special/per/atom 2
mass 1 15.9994
mass 2 1.008
pair_style lj/cut/coul/cut 10.0
pair_coeff 1 1 0.1553 3.166
pair_coeff 1 2 0.0 1.0
pair_coeff 2 2 0.0 1.0
bond_style zero
bond_coeff 1 1.0
angle_style zero
angle_coeff 1 109.47
molecule water spce.mol
create_atoms 0 random 33 34564 NULL mol water 25367 overlap 1.33
timestep 1.0
fix rigid all shake 0.0001 10 10000 b 1 a 1
minimize 0.0 0.0 1000 10000
run 0 post no
reset_timestep 0
velocity all create 300.0 5463576
fix integrate all nvt temp 300.0 300.0 1.0
thermo_style custom step temp press etotal density pe ke
thermo 1000
run 20000 upto
write_data tip4p.data nocoeff
.. _spce_molecule:
.. code-block::
# Water molecule. SPC/E geometry
3 atoms
2 bonds
1 angles
Coords
1 0.00000 -0.06461 0.00000
2 0.81649 0.51275 0.00000
3 -0.81649 0.51275 0.00000
Types
1 1 # O
2 2 # H
3 2 # H
Charges
1 -0.8476
2 0.4238
3 0.4238
Bonds
1 1 1 2
2 1 1 3
Angles
1 1 2 1 3
Shake Flags
1 1
2 1
3 1
Shake Atoms
1 1 2 3
2 1 2 3
3 1 2 3
Shake Bond Types
1 1 1 1
2 1 1 1
3 1 1 1
Special Bond Counts
1 2 0 0
2 1 1 0
3 1 1 0
Special Bonds
1 2 3
2 1 3
3 1 2
Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wiki/Water_model>`_. Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wiki/Water_model>`_.
---------- ----------
.. _howto-Berendsen: .. _howto-Berendsen:
**(Berendsen)** Berendsen, Grigera, Straatsma, J Phys Chem, 91, **(Berendsen)** Berendsen, Grigera, Straatsma, J Phys Chem, 91, 6269-6271 (1987).
6269-6271 (1987).

View File

@ -1,53 +1,211 @@
TIP3P water model TIP3P water model
================= =================
The TIP3P water model as implemented in CHARMM The TIP3P water model as implemented in CHARMM :ref:`(MacKerell)
:ref:`(MacKerell) <howto-tip3p>` specifies a 3-site rigid water molecule with <howto-tip3p>` specifies a 3-site rigid water molecule with charges and
charges and Lennard-Jones parameters assigned to each of the 3 atoms. Lennard-Jones parameters assigned to each of the 3 atoms.
In LAMMPS the :doc:`fix shake <fix_shake>` command can be used to hold
the two O-H bonds and the H-O-H angle rigid. A bond style of
*harmonic* and an angle style of *harmonic* or *charmm* should also be
used.
These are the additional parameters (in real units) to set for O and H A suitable pair style with cutoff Coulomb would be:
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
:ref:`(Jorgensen) <Jorgensen1>`.
| O mass = 15.9994 * :doc:`pair_style lj/cut/coul/cut <pair_lj_cut_coul>`
| H mass = 1.008
| O charge = -0.834
| H charge = 0.417
| LJ :math:`\epsilon` of OO = 0.1521
| LJ :math:`\sigma` of OO = 3.1507
| LJ :math:`\epsilon` of HH = 0.0460
| LJ :math:`\sigma` of HH = 0.4000
| LJ :math:`\epsilon` of OH = 0.0836
| LJ :math:`\sigma` of OH = 1.7753
| K of OH bond = 450
| :math:`r_0` of OH bond = 0.9572
| K of HOH angle = 55
| :math:`\theta` of HOH angle = 104.52\ :math:`^{\circ}`
|
These are the parameters to use for TIP3P with a long-range Coulomb or these commands for a long-range Coulomb model:
solver (e.g. Ewald or PPPM in LAMMPS), see :ref:`(Price) <Price1>` for
details: * :doc:`pair_style lj/cut/coul/long <pair_lj_cut_coul>`
* :doc:`pair_style lj/cut/coul/long/soft <pair_fep_soft>`
* :doc:`kspace_style pppm <kspace_style>`
* :doc:`kspace_style pppm/disp <kspace_style>`
In LAMMPS the :doc:`fix shake or fix rattle <fix_shake>` command can be
used to hold the two O-H bonds and the H-O-H angle rigid. A bond style
of :doc:`harmonic <bond_harmonic>` and an angle style of :doc:`harmonic
<angle_harmonic>` or :doc:`charmm <angle_charmm>` should also be used.
In case of rigid bonds also bond style :doc:`zero <bond_zero>` and angle
style :doc:`zero <angle_zero>` can be used.
The table below lists the force field parameters (in real :doc:`units
<units>`) to for the water molecule atoms to run a rigid or flexible
TIP3P-CHARMM model with a cutoff, the original 1983 TIP3P model
:ref:`(Jorgensen) <Jorgensen1>`, or a TIP3P model with parameters
optimized for a long-range Coulomb solver (e.g. Ewald or PPPM in LAMMPS)
:ref:`(Price) <Price1>`. The K values can be used if a flexible TIP3P
model (without fix shake) is desired, for rigid bonds/angles they are
ignored.
.. list-table::
:header-rows: 1
:widths: auto
* - Parameter
- TIP3P-CHARMM
- TIP3P (original)
- TIP3P (Ewald)
* - O mass (amu)
- 15.9994
- 15.9994
- 15.9994
* - H mass (amu)
- 1.008
- 1.008
- 1.008
* - O charge (:math:`e`)
- -0.834
- -0.834
- -0.834
* - H charge (:math:`e`)
- 0.417
- 0.417
- 0.417
* - LJ :math:`\epsilon` of OO (kcal/mole)
- 0.1521
- 0.1521
- 0.1020
* - LJ :math:`\sigma` of OO (:math:`\AA`)
- 3.1507
- 3.1507
- 3.188
* - LJ :math:`\epsilon` of HH (kcal/mole)
- 0.0460
- 0.0
- 0.0
* - LJ :math:`\sigma` of HH (:math:`\AA`)
- 0.4
- 1.0
- 1.0
* - LJ :math:`\epsilon` of OH (kcal/mole)
- 0.0836
- 0.0
- 0.0
* - LJ :math:`\sigma` of OH (:math:`\AA`)
- 1.7753
- 1.0
- 1.0
* - K of OH bond (kcal/mole/:math:`\AA^2`)
- 450
- 450
- 450
* - :math:`r_0` of OH bond (:math:`\AA`)
- 0.9572
- 0.9572
- 0.9572
* - K of HOH angle (kcal/mole)
- 55.0
- 55.0
- 55.0
* - :math:`\theta_0` of HOH angle
- 104.52\ :math:`^{\circ}`
- 104.52\ :math:`^{\circ}`
- 104.52\ :math:`^{\circ}`
Below is the code for a LAMMPS input file and a molecule file
(``tip3p.mol``) of TIP3P water for use with the :doc:`molecule command
<molecule>` demonstrating how to set up a small bulk water system for
TIP3P with rigid bonds.
.. code-block:: LAMMPS
units real
atom_style full
region box block -5 5 -5 5 -5 5
create_box 2 box bond/types 1 angle/types 1 &
extra/bond/per/atom 2 extra/angle/per/atom 1 extra/special/per/atom 2
mass 1 15.9994
mass 2 1.008
pair_style lj/cut/coul/cut 8.0
pair_coeff 1 1 0.1521 3.1507
pair_coeff 2 2 0.0 1.0
bond_style zero
bond_coeff 1 0.9574
angle_style zero
angle_coeff 1 104.52
molecule water tip3p.mol
create_atoms 0 random 33 34564 NULL mol water 25367 overlap 1.33
fix rigid all shake 0.001 10 10000 b 1 a 1
minimize 0.0 0.0 1000 10000
run 0 post no
reset_timestep 0
velocity all create 300.0 5463576
fix integrate all nvt temp 300 300 1.0
thermo_style custom step temp press etotal pe
thermo 1000
run 20000
write_data tip3p.data nocoeff
.. _tip3p_molecule:
.. code-block::
# Water molecule. TIP3P geometry
3 atoms
2 bonds
1 angles
Coords
1 0.00000 -0.06556 0.00000
2 0.75695 0.52032 0.00000
3 -0.75695 0.52032 0.00000
Types
1 1 # O
2 2 # H
3 2 # H
Charges
1 -0.834
2 0.417
3 0.417
Bonds
1 1 1 2
2 1 1 3
Angles
1 1 2 1 3
Shake Flags
1 1
2 1
3 1
Shake Atoms
1 1 2 3
2 1 2 3
3 1 2 3
Shake Bond Types
1 1 1 1
2 1 1 1
3 1 1 1
Special Bond Counts
1 2 0 0
2 1 1 0
3 1 1 0
Special Bonds
1 2 3
2 1 3
3 1 2
| O mass = 15.9994
| H mass = 1.008
| O charge = -0.830
| H charge = 0.415
| LJ :math:`\epsilon` of OO = 0.102
| LJ :math:`\sigma` of OO = 3.188
| LJ :math:`\epsilon`, :math:`\sigma` of OH, HH = 0.0
| K of OH bond = 450
| :math:`r_0` of OH bond = 0.9572
| K of HOH angle = 55
| :math:`\theta` of HOH angle = 104.52\ :math:`^{\circ}`
|
Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wiki/Water_model>`_. Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wiki/Water_model>`_.

View File

@ -2,19 +2,33 @@ TIP4P water model
================= =================
The four-point TIP4P rigid water model extends the traditional The four-point TIP4P rigid water model extends the traditional
three-point TIP3P model by adding an additional site, usually :doc:`three-point TIP3P <Howto_tip3p>` model by adding an additional
massless, where the charge associated with the oxygen atom is placed. site M, usually massless, where the charge associated with the oxygen
This site M is located at a fixed distance away from the oxygen along atom is placed. This site M is located at a fixed distance away from
the bisector of the HOH bond angle. A bond style of *harmonic* and an the oxygen along the bisector of the HOH bond angle. A bond style of
angle style of *harmonic* or *charmm* should also be used. :doc:`harmonic <bond_harmonic>` and an angle style of :doc:`harmonic
<angle_harmonic>` or :doc:`charmm <angle_charmm>` should also be used.
In case of rigid bonds also bond style :doc:`zero <bond_zero>` and angle
style :doc:`zero <angle_zero>` can be used.
A TIP4P model is run with LAMMPS using either these commands There are two ways to implement TIP4P water in LAMMPS:
for a cutoff model:
#. Use a specially written pair style that uses the :ref:`TIP3P geometry
<tip3p_molecule>` without the point M. The point M location is then
implicitly derived from the other atoms or each water molecule and
used during the force computation. The forces on M are then
projected on the oxygen and the two hydrogen atoms. This is
computationally very efficient, but the charge distribution in space
is only correct within the tip4p labeled styles. So all other
computations using charges will "see" the negative charge incorrectly
on the oxygen atom.
This can be done with the following pair styles for Coulomb with a cutoff:
* :doc:`pair_style tip4p/cut <pair_lj_cut_tip4p>` * :doc:`pair_style tip4p/cut <pair_lj_cut_tip4p>`
* :doc:`pair_style lj/cut/tip4p/cut <pair_lj_cut_tip4p>` * :doc:`pair_style lj/cut/tip4p/cut <pair_lj_cut_tip4p>`
or these commands for a long-range model: or these commands for a long-range Coulomb treatment:
* :doc:`pair_style tip4p/long <pair_coul>` * :doc:`pair_style tip4p/long <pair_coul>`
* :doc:`pair_style lj/cut/tip4p/long <pair_lj_cut_tip4p>` * :doc:`pair_style lj/cut/tip4p/long <pair_lj_cut_tip4p>`
@ -31,71 +45,95 @@ parameter sets listed below are all for rigid TIP4P model variants and
thus the bond and angle force constants are not used and can be set to thus the bond and angle force constants are not used and can be set to
any legal value; only equilibrium length and angle are used. any legal value; only equilibrium length and angle are used.
These are the additional parameters (in real units) to set for O and H #. Use an :ref:`explicit 4 point TIP4P geometry <tip4p_molecule>` where
atoms and the water molecule to run a rigid TIP4P model with a cutoff the oxygen atom carries no charge and the M point no Lennard-Jones
:ref:`(Jorgensen) <Jorgensen5>`. Note that the OM distance is specified in interactions. Since :doc:`fix shake <fix_shake>` or :doc:`fix rattle
the :doc:`pair_style <pair_style>` command, not as part of the pair <fix_shake>` may not be applied to this kind of geometry, :doc:`fix
coefficients. rigid or fix rigid/small <fix_rigid>` or its thermostatted variants
are required to maintain a rigid geometry. This avoids some of the
issues with respect to analysis and non-tip4p styles, but it is a
more costly force computation (more atoms in the same volume and thus
more neighbors in the neighbor lists) and requires a much shorter
timestep for stable integration of the rigid body motion. Since no
bonds or angles are required, they do not need to be defined and atom
style charge would be sufficient for a bulk TIP4P water system. In
order to avoid that LAMMPS produces an error due to the massless M
site a tiny non-zero mass needs to be assigned.
| O mass = 15.9994 The table below lists the force field parameters (in real :doc:`units
| H mass = 1.008 <units>`) to for a selection of popular variants of the TIP4P model.
| O charge = -1.040 There is the rigid TIP4P model with a cutoff :ref:`(Jorgensen)
| H charge = 0.520 <Jorgensen5>`, the TIP4/Ice model :ref:`(Abascal1) <Abascal1>`, the
| :math:`r_0` of OH bond = 0.9572 TIP4P/2005 model :ref:`(Abascal2) <Abascal2>` and a version of TIP4P
| :math:`\theta` of HOH angle = 104.52\ :math:`^{\circ}` parameters adjusted for use with a long-range Coulombic solver
| OM distance = 0.15 (e.g. Ewald or PPPM in LAMMPS). Note that for implicit TIP4P models the
| LJ :math:`\epsilon` of O-O = 0.1550 OM distance is specified in the :doc:`pair_style <pair_style>` command,
| LJ :math:`\sigma` of O-O = 3.1536 not as part of the pair coefficients.
| LJ :math:`\epsilon`, :math:`\sigma` of OH, HH = 0.0
| Coulomb cutoff = 8.5
|
For the TIP4/Ice model (J Chem Phys, 122, 234511 (2005); .. list-table::
https://doi.org/10.1063/1.1931662) these values can be used: :header-rows: 1
:widths: auto
| O mass = 15.9994 * - Parameter
| H mass = 1.008 - TIP4P (original)
| O charge = -1.1794 - TIP4P/Ice
| H charge = 0.5897 - TIP4P/2005
| :math:`r_0` of OH bond = 0.9572 - TIP4P (Ewald)
| :math:`\theta` of HOH angle = 104.52\ :math:`^{\circ}` * - O mass (amu)
| OM distance = 0.1577 - 15.9994
| LJ :math:`\epsilon` of O-O = 0.21084 - 15.9994
| LJ :math:`\sigma` of O-O = 3.1668 - 15.9994
| LJ :math:`\epsilon`, :math:`\sigma` of OH, HH = 0.0 - 15.9994
| Coulomb cutoff = 8.5 * - H mass (amu)
| - 1.008
- 1.008
For the TIP4P/2005 model (J Chem Phys, 123, 234505 (2005); - 1.008
https://doi.org/10.1063/1.2121687), these values can be used: - 1.008
* - O or M charge (:math:`e`)
| O mass = 15.9994 - -1.040
| H mass = 1.008 - -1.1794
| O charge = -1.1128 - -1.1128
| H charge = 0.5564 - -1.04844
| :math:`r_0` of OH bond = 0.9572 * - H charge (:math:`e`)
| :math:`\theta` of HOH angle = 104.52\ :math:`^{\circ}` - 0.520
| OM distance = 0.1546 - 0.5897
| LJ :math:`\epsilon` of O-O = 0.1852 - 0.5564
| LJ :math:`\sigma` of O-O = 3.1589 - 0.52422
| LJ :math:`\epsilon`, :math:`\sigma` of OH, HH = 0.0 * - LJ :math:`\epsilon` of OO (kcal/mole)
| Coulomb cutoff = 8.5 - 0.1550
| - 0.1577
- 0.1852
These are the parameters to use for TIP4P with a long-range Coulombic - 0.16275
solver (e.g. Ewald or PPPM in LAMMPS): * - LJ :math:`\sigma` of OO (:math:`\AA`)
- 3.1536
| O mass = 15.9994 - 3.1668
| H mass = 1.008 - 3.1589
| O charge = -1.0484 - 3.16435
| H charge = 0.5242 * - LJ :math:`\epsilon` of HH, MM, OH, OM, HM (kcal/mole)
| :math:`r_0` of OH bond = 0.9572 - 0.0
| :math:`\theta` of HOH angle = 104.52\ :math:`^{\circ}` - 0.0
| OM distance = 0.1250 - 0.0
| LJ :math:`\epsilon` of O-O = 0.16275 - 0.0
| LJ :math:`\sigma` of O-O = 3.16435 * - LJ :math:`\sigma` of HH, MM, OH, OM, HM (:math:`\AA`)
| LJ :math:`\epsilon`, :math:`\sigma` of OH, HH = 0.0 - 1.0
| - 1.0
- 1.0
- 1.0
* - :math:`r_0` of OH bond (:math:`\AA`)
- 0.9572
- 0.9572
- 0.9572
- 0.9572
* - :math:`\theta_0` of HOH angle
- 104.52\ :math:`^{\circ}`
- 104.52\ :math:`^{\circ}`
- 104.52\ :math:`^{\circ}`
- 104.52\ :math:`^{\circ}`
* - OM distance (:math:`\AA`)
- 0.15
- 0.1577
- 0.1546
- 0.1250
Note that the when using the TIP4P pair style, the neighbor list cutoff Note that the when using the TIP4P pair style, the neighbor list cutoff
for Coulomb interactions is effectively extended by a distance 2 \* (OM for Coulomb interactions is effectively extended by a distance 2 \* (OM
@ -108,6 +146,117 @@ trade-off for your model. The OM distance and the LJ and Coulombic
cutoffs are set in the :doc:`pair_style lj/cut/tip4p/long cutoffs are set in the :doc:`pair_style lj/cut/tip4p/long
<pair_lj_cut_tip4p>` command. <pair_lj_cut_tip4p>` command.
Below is the code for a LAMMPS input file using the implicit method and
the :ref:`TIP3P molecule file <tip3p_molecule>`. Because the TIP4P
charges are different from TIP3P they need to be reset (or the molecule
file changed):
.. code-block:: LAMMPS
units real
atom_style full
region box block -5 5 -5 5 -5 5
create_box 2 box bond/types 1 angle/types 1 &
extra/bond/per/atom 2 extra/angle/per/atom 1 extra/special/per/atom 2
mass 1 15.9994
mass 2 1.008
pair_style lj/cut/tip4p/cut 1 2 1 1 0.15 8.0
pair_coeff 1 1 0.1550 3.1536
pair_coeff 2 2 0.0 1.0
bond_style zero
bond_coeff 1 0.9574
angle_style zero
angle_coeff 1 104.52
molecule water tip3p.mol # this uses the TIP3P geometry
create_atoms 0 random 33 34564 NULL mol water 25367 overlap 1.33
# must change charges for TIP4P
set type 1 charge -1.040
set type 2 charge 0.520
fix rigid all shake 0.001 10 10000 b 1 a 1
minimize 0.0 0.0 1000 10000
run 0 post no
reset_timestep 0
velocity all create 300.0 5463576
fix integrate all nvt temp 300 300 1.0
thermo_style custom step temp press etotal pe
thermo 1000
run 20000
write_data tip3p.data nocoeff
Below is the code for a LAMMPS input file using the explicit method and
a TIP4P molecule file. Because of using :doc:`fix rigid/nvt/small
<fix_rigid>` no bonds need to be defined and thus no extra storage needs
to be reserved for them, but we need to switch to atom style full or use
:doc:`fix property/atom mol <fix_property_atom>` so that fix
rigid/nvt/small can identify rigid bodies by their molecule ID:
.. code-block:: LAMMPS
units real
atom_style charge
region box block -5 5 -5 5 -5 5
create_box 3 box
mass 1 15.9994
mass 2 1.008
mass 3 1.0e-100
pair_style lj/cut/coul/cut 8.0
pair_coeff 1 1 0.1550 3.1536
pair_coeff 2 2 0.0 1.0
pair_coeff 3 3 0.0 1.0
fix mol all property/atom mol
molecule water tip4p.mol
create_atoms 0 random 33 34564 NULL mol water 25367 overlap 1.33
timestep 0.1
fix integrate all rigid/nvt/small molecule temp 300.0 300.0 1.0
velocity all create 300.0 5463576
thermo_style custom step temp press etotal density pe ke
thermo 1000
run 20000
write_data tip4p.data nocoeff
.. _tip4p_molecule:
.. code-block::
# Water molecule. Explicit TIP4P geometry for use with fix rigid
4 atoms
Coords
1 0.00000 -0.06556 0.00000
2 0.75695 0.52032 0.00000
3 -0.75695 0.52032 0.00000
4 0.00000 0.08444 0.00000
Types
1 1 # O
2 2 # H
3 2 # H
4 3 # M
Charges
1 0.000
2 0.520
3 0.520
4 -1.040
Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wiki/Water_model>`_. Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wiki/Water_model>`_.
---------- ----------
@ -116,3 +265,13 @@ Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wik
**(Jorgensen)** Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem **(Jorgensen)** Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
Phys, 79, 926 (1983). Phys, 79, 926 (1983).
.. _Abascal1:
**(Abascal1)** Abascal, Sanz, Fernandez, Vega, J Chem Phys, 122, 234511 (2005)
https://doi.org/10.1063/1.1931662
.. _Abascal2:
**(Abascal2)** Abascal, J Chem Phys, 123, 234505 (2005)
https://doi.org/10.1063/1.2121687

161
doc/src/Howto_tip5p.rst Normal file
View File

@ -0,0 +1,161 @@
TIP5P water model
=================
The five-point TIP5P rigid water model extends the :doc:`three-point
TIP3P model <Howto_tip3p>` by adding two additional sites L, usually
massless, where the charge associated with the oxygen atom is placed.
These sites L are located at a fixed distance away from the oxygen atom,
forming a tetrahedral angle that is rotated by 90 degrees from the HOH
plane. Those sites thus somewhat approximate lone pairs of the oxygen
and consequently improve the water structure to become even more
"tetrahedral" in comparison to the :doc:`four-point TIP4P model
<Howto_tip4p>`.
A suitable pair style with cutoff Coulomb would be:
* :doc:`pair_style lj/cut/coul/cut <pair_lj_cut_coul>`
or these commands for a long-range model:
* :doc:`pair_style lj/cut/coul/long <pair_lj_cut_coul>`
* :doc:`pair_style lj/cut/coul/long/soft <pair_fep_soft>`
* :doc:`kspace_style pppm <kspace_style>`
* :doc:`kspace_style pppm/disp <kspace_style>`
A TIP5P model *must* be run using a :doc:`rigid fix <fix_rigid>` since
there is no other option to keep this kind of structure rigid in LAMMPS.
In order to avoid that LAMMPS produces an error due to the massless L
sites, those need to be assigned a tiny non-zero mass.
The table below lists the force field parameters (in real :doc:`units
<units>`) to for a the TIP5P model with a cutoff :ref:`(Mahoney)
<Mahoney>` and the TIP5P-E model :ref:`(Rick) <Rick>` for use with a
long-range Coulombic solver (e.g. Ewald or PPPM in LAMMPS).
.. list-table::
:header-rows: 1
:widths: auto
* - Parameter
- TIP5P
- TIP5P-E
* - O mass (amu)
- 15.9994
- 15.9994
* - H mass (amu)
- 1.008
- 1.008
* - O charge (:math:`e`)
- 0.0
- 0.0
* - L charge (:math:`e`)
- -0.241
- -0.241
* - H charge (:math:`e`)
- 0.241
- 0.241
* - LJ :math:`\epsilon` of OO (kcal/mole)
- 0.1600
- 0.1780
* - LJ :math:`\sigma` of OO (:math:`\AA`)
- 3.1200
- 3.0970
* - LJ :math:`\epsilon` of HH, LL, OH, OL, HL (kcal/mole)
- 0.0
- 0.0
* - LJ :math:`\sigma` of HH, LL, OH, OL, HL (:math:`\AA`)
- 1.0
- 1.0
* - :math:`r_0` of OH bond (:math:`\AA`)
- 0.9572
- 0.9572
* - :math:`\theta_0` of HOH angle
- 104.52\ :math:`^{\circ}`
- 104.52\ :math:`^{\circ}`
* - OL distance (:math:`\AA`)
- 0.70
- 0.70
* - :math:`\theta_0` of LOL angle
- 109.47\ :math:`^{\circ}`
- 109.47\ :math:`^{\circ}`
Below is the code for a LAMMPS input file for setting up a simulation of
TIP5P water with a molecule file. Because of using :doc:`fix
rigid/nvt/small <fix_rigid>` no bonds need to be defined and thus no
extra storage needs to be reserved for them, but we need to switch to
atom style full or use :doc:`fix property/atom mol <fix_property_atom>`
so that fix rigid/nvt/small can identify rigid bodies by their molecule
ID:
.. code-block:: LAMMPS
units real
atom_style charge
region box block -5 5 -5 5 -5 5
create_box 3 box
mass 1 15.9994
mass 2 1.008
mass 3 1.0e-100
pair_style lj/cut/coul/cut 8.0
pair_coeff 1 1 0.160 3.12
pair_coeff 2 2 0.0 1.0
pair_coeff 3 3 0.0 1.0
fix mol all property/atom mol
molecule water tip5p.mol
create_atoms 0 random 33 34564 NULL mol water 25367 overlap 1.33
timestep 0.20
fix integrate all rigid/nvt/small molecule temp 300.0 300.0 1.0
reset_timestep 0
velocity all create 300.0 5463576
thermo_style custom step temp press etotal density pe ke
thermo 1000
run 20000
write_data tip5p.data nocoeff
.. _tip5p_molecule:
.. code-block::
# Water molecule. Explicit TIP5P geometry for use with fix rigid
5 atoms
Coords
1 0.00000 -0.06556 0.00000
2 0.75695 0.52032 0.00000
3 -0.75695 0.52032 0.00000
4 0.00000 -0.46971 0.57154
5 0.00000 -0.46971 -0.57154
Types
1 1 # O
2 2 # H
3 2 # H
4 3 # L
5 3 # L
Charges
1 0.000
2 0.241
3 0.241
4 -0.241
5 -0.241
Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wiki/Water_model>`_.
----------
.. _Mahoney:
**(Mahoney)** Mahoney, Jorgensen, J Chem Phys 112, 8910 (2000)
.. _Rick:
**(Rick)** Rick, J Chem Phys 120, 6085 (2004)

View File

@ -42,7 +42,7 @@ static linkage, there is no ``liblammps.so`` library file and thus also the
LAMMPS python module, which depends on it, is not included. LAMMPS python module, which depends on it, is not included.
The compressed tar archives available for download have names following The compressed tar archives available for download have names following
the pattern `lammps-linux-x86_64-<version>.tar.gz` and will all unpack the pattern ``lammps-linux-x86_64-<version>.tar.gz`` and will all unpack
into a ``lammps-static`` folder. The executables are then in the into a ``lammps-static`` folder. The executables are then in the
``lammps-static/bin/`` folder. Since they do not depend on any other ``lammps-static/bin/`` folder. Since they do not depend on any other
software, they may be freely moved or copied around. software, they may be freely moved or copied around.

View File

@ -17,11 +17,12 @@ install the Windows MPI package (MPICH2 from Argonne National Labs),
needed to run in parallel with MPI. needed to run in parallel with MPI.
The LAMMPS binaries contain *all* :doc:`optional packages <Packages>` The LAMMPS binaries contain *all* :doc:`optional packages <Packages>`
included in the source distribution except: KIM, KOKKOS, MSCG, PYTHON, included in the source distribution except: ADIOS, H5MD, KIM, ML-PACE,
ADIOS, H5MD, NETCDF, QMMM, ML-QUIP, and VTK. ML-QUIP, MSCG, NETCDF, PLUMED, QMMM, SCAFACOS, and VTK. The serial
The serial version also does not include the MPIIO and version also does not include the MPIIO and LATBOLTZ packages. The
LATBOLTZ packages. The GPU package is compiled for OpenCL with PYTHON package is only available in the Python installers that bundle a
mixed precision kernels. Python runtime. The GPU package is compiled for OpenCL with mixed
precision kernels.
The LAMMPS library is compiled as a shared library and the The LAMMPS library is compiled as a shared library and the
:doc:`LAMMPS Python module <Python_module>` is installed, so that :doc:`LAMMPS Python module <Python_module>` is installed, so that

View File

@ -195,7 +195,7 @@ Multi-replica models
* :doc:`parallel replica dynamics <prd>` * :doc:`parallel replica dynamics <prd>`
* :doc:`temperature accelerated dynamics <tad>` * :doc:`temperature accelerated dynamics <tad>`
* :doc:`parallel tempering <temper>` * :doc:`parallel tempering <temper>`
* path-integral MD: `first variant <fix_pimd>`, `second variant <fix_ipi>` * path-integral MD: :doc:`first variant <fix_pimd>`, :doc:`second variant <fix_ipi>`
* multi-walker collective variables with :doc:`Colvars <fix_colvars>` and :doc:`Plumed <fix_plumed>` * multi-walker collective variables with :doc:`Colvars <fix_colvars>` and :doc:`Plumed <fix_plumed>`
.. _prepost: .. _prepost:

View File

@ -498,7 +498,7 @@ data to other processors during load-balancing will be random or
deterministic. Random is generally faster; deterministic will ensure deterministic. Random is generally faster; deterministic will ensure
the new ordering of atoms on each processor is the same each time the the new ordering of atoms on each processor is the same each time the
same simulation is run. This can be useful for debugging purposes. same simulation is run. This can be useful for debugging purposes.
Since the balance commmand is a one-time operation, the default is Since the balance command is a one-time operation, the default is
*yes* to perform sorting. *yes* to perform sorting.
The *out* keyword writes a text file to the specified *filename* with The *out* keyword writes a text file to the specified *filename* with

View File

@ -112,8 +112,9 @@ are estimated (less accurately) by the first two and last two force
values in the table. values in the table.
The "EQ" parameter is also optional. If used, it is followed by a the The "EQ" parameter is also optional. If used, it is followed by a the
equilibrium bond length, which is used, for example, by the :doc:`fix shake <fix_shake>` command. If not used, the equilibrium bond equilibrium bond length, which is used, for example, by the :doc:`fix
length is to the distance in the table with the lowest potential energy. shake <fix_shake>` command. If not used, the equilibrium bond length is
to the distance in the table with the lowest potential energy.
Following a blank line, the next N lines list the tabulated values. Following a blank line, the next N lines list the tabulated values.
On each line, the first value is the index from 1 to N, the second value is On each line, the first value is the index from 1 to N, the second value is
@ -135,16 +136,15 @@ one that matches the specified keyword.
---------- ----------
Restart, fix_modify, output, run start/stop, minimize info Restart info
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" """"""""""""
This bond style writes the settings for the "bond_style table" This bond style writes the settings for the "bond_style table" command
command to :doc:`binary restart files <restart>`, so a bond_style to :doc:`binary restart files <restart>`, so a bond_style command does
command does not need to specified in an input script that reads a not need to specified in an input script that reads a restart file.
restart file. However, the coefficient information is not stored in However, the coefficient information is not stored in the restart file,
the restart file, since it is tabulated in the potential files. Thus, since it is tabulated in the potential files. Thus, bond_coeff commands
bond_coeff commands do need to be specified in the restart input do need to be specified in the restart input script.
script.
Restrictions Restrictions
"""""""""""" """"""""""""

View File

@ -70,7 +70,7 @@ be specified even if the potential has a finite value at r = 0.0.
Related commands Related commands
"""""""""""""""" """"""""""""""""
:doc:`bond_style table <bond_table>`, `angle_write <angle_write>`, :doc:`bond_style table <bond_table>`, :doc:`angle_write <angle_write>`,
:doc:`bond_style <bond_style>`, :doc:`bond_coeff <bond_coeff>` :doc:`bond_style <bond_style>`, :doc:`bond_coeff <bond_coeff>`
Default Default

View File

@ -375,7 +375,7 @@ output with each snapshot:
nx ny nz nx ny nz
The value dim will be 2 or 3 for 2d or 3d simulations. It is included The value dim will be 2 or 3 for 2d or 3d simulations. It is included
so that post-processing tools like `OVITO <https://www.ovito.org>`, so that post-processing tools like `OVITO <https://www.ovito.org>`_,
which can visualize grid-based quantities know how to draw each grid which can visualize grid-based quantities know how to draw each grid
cell. The grid size will match the input script parameters for cell. The grid size will match the input script parameters for
grid(s) created by the computes or fixes which are referenced by the grid(s) created by the computes or fixes which are referenced by the

View File

@ -139,7 +139,7 @@ formulas for the meaning of these parameters:
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`buck/mdf <pair_mdf>` | a,c | type pairs | | :doc:`buck/mdf <pair_mdf>` | a,c | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`coul/cut <pair_coul>` | scale | type pairs | | :doc:`coul/cut, coul/cut/global <pair_coul>` | scale | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`coul/cut/soft <pair_fep_soft>` | lambda | type pairs | | :doc:`coul/cut/soft <pair_fep_soft>` | lambda | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
@ -151,10 +151,16 @@ formulas for the meaning of these parameters:
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`coul/long/soft <pair_fep_soft>` | scale, lambda, coulombic_cutoff | type pairs | | :doc:`coul/long/soft <pair_fep_soft>` | scale, lambda, coulombic_cutoff | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`coul/slater/long <pair_coul_slater>` | scale | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`coul/streitz <pair_coul>` | scale | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`eam, eam/alloy, eam/fs <pair_eam>` | scale | type pairs | | :doc:`eam, eam/alloy, eam/fs <pair_eam>` | scale | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`gauss <pair_gauss>` | a | type pairs | | :doc:`gauss <pair_gauss>` | a | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`harmonic/cut <pair_harmonic_cut>` | k, cutoff | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`lennard/mdf <pair_mdf>` | A,B | type pairs | | :doc:`lennard/mdf <pair_mdf>` | A,B | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`lj/class2 <pair_class2>` | epsilon,sigma | type pairs | | :doc:`lj/class2 <pair_class2>` | epsilon,sigma | type pairs |
@ -181,6 +187,8 @@ formulas for the meaning of these parameters:
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`lubricate <pair_lubricate>` | mu | global | | :doc:`lubricate <pair_lubricate>` | mu | global |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`meam <pair_meam>` | scale | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`mie/cut <pair_mie>` | epsilon,sigma,gamma_repulsive,gamma_attractive | type pairs | | :doc:`mie/cut <pair_mie>` | epsilon,sigma,gamma_repulsive,gamma_attractive | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`morse, morse/smooth/linear <pair_morse>` | D0,R0,alpha | type pairs | | :doc:`morse, morse/smooth/linear <pair_morse>` | D0,R0,alpha | type pairs |
@ -191,7 +199,7 @@ formulas for the meaning of these parameters:
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`nm/cut/coul/cut, nm/cut/coul/long <pair_nm>` | E0,R0,m,n,coulombic_cutoff | type pairs | | :doc:`nm/cut/coul/cut, nm/cut/coul/long <pair_nm>` | E0,R0,m,n,coulombic_cutoff | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`reaxff <pair_reaxff>` | chi, eta, gamma | type global | | :doc:`pace, pace/extrapolation <pair_pace>` | scale | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`snap <pair_snap>` | scale | type pairs | | :doc:`snap <pair_snap>` | scale | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
@ -203,11 +211,13 @@ formulas for the meaning of these parameters:
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`spin/neel <pair_spin_neel>` | coulombic_cutoff | type global | | :doc:`spin/neel <pair_spin_neel>` | coulombic_cutoff | type global |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`soft <pair_soft>` | a | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`table <pair_table>` | table_cutoff | type pairs | | :doc:`table <pair_table>` | table_cutoff | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`ufm <pair_ufm>` | epsilon,sigma | type pairs | | :doc:`ufm <pair_ufm>` | epsilon,sigma | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`soft <pair_soft>` | a | type pairs | | :doc:`wf/cut <pair_wf_cut>` | epsilon,sigma,nu,mu | type pairs |
+------------------------------------------------------------------------------+--------------------------------------------------+-------------+ +------------------------------------------------------------------------------+--------------------------------------------------+-------------+
.. note:: .. note::

View File

@ -12,7 +12,7 @@ Syntax
* ID, group-ID are documented in :doc:`fix <fix>` command * ID, group-ID are documented in :doc:`fix <fix>` command
* alchemy = style name of this fix command * alchemy = style name of this fix command
* v_name = variable with name that determines the :math:`\lambda_p` value * v_name = variable with name that determines the :math:`\lambda_R` value
Examples Examples
"""""""" """"""""
@ -26,87 +26,126 @@ Description
.. versionadded:: TBD .. versionadded:: TBD
This fix command enables running an "alchemical transformation" MD This fix command enables an "alchemical transformation" to be performed
simulation between two topologies (i.e. the same number and positions of between two systems, whereby one system slowly transforms into the other
atoms, but differences in atom parameters like type, charge, bonds, over the course of a molecular dynamics run. This is useful for
angles and so on). For this a :ref:`multi-partition run <partition>` is measuring thermodynamic differences between two different systems. It
required with exactly two partitions. During the MD run, the fix will also allows transformations that are not easily possible with the
will determine a factor, :math:`\lambda_p`, for each partition *p* that :doc:`pair style hybrid/scaled <pair_hybrid>`, :doc:`fix adapt
will be taken from an equal style or equivalent :doc:`variable <fix_adapt>` or :doc:`fix adapt/fep <fix_adapt_fep>` commands.
<variable>`. Typically, this variable would be chose to linearly ramp
*down* from 1.0 to 0.0 for the *first* partition (*p=0*) and linearly
ramp *up* from 0.0 to 1.0 for the *second* partition (*p=1*). The
forces used for the propagation of the atoms will be the sum of the
forces of the two systems combined and scaled with their respective
:math:`\lambda_p` factor. This allows to perform transformations that
are not easily possible with :doc:`pair style hybrid/scaled
<pair_hybrid>`, :doc:`fix adapt <fix_adapt>` or :doc:`fix adapt/fep
<fix_adapt_fep>`.
.. note:: Example inputs are included in the ``examples/PACKAGES/alchemy``
directory for (a) transforming a pure copper system into a
copper/aluminum bronze alloy and (b) transforming two water molecules
in a box of water into a hydronium and a hydroxyl ion.
Since the definition of the variable to provide the :math:`\lambda_p` is The two systems must be defined as :doc:`separate replica
independent in the two partitions, no check is made that the two values <Howto_replica>` and run in separate partitions of processors using the
remain between 0.0 and 1.0 and that they add up to 1.0. So care needs to :doc:`-partition <Run_options>` command-line switch. Exactly two
be taken when defining those variables that this is the case. partitions must be specified, and each partition must use the same number
of processors and the same domain decomposition.
Due to the specifics of the implementation, the initial geometry and Because the forces applied to the atoms are the same mix of the forces
dimensions of the system must be exactly the same and the fix will from each partition and the simulation starts with the same atom
synchronize them during the run. It is thus not possible to initialize positions across both partitions, they will generate the same trajectory
the two partitions by reading different data files or creating different of coordinates for each atom, and the same simulation box size and
systems from scratch, but rather they have to be started from the same shape. The latter two conditions are *enforced* by this fix; it
system and then the desired modifications need to be applied to the exchanges coordinates and box information between the replicas. This is
system of the second partition. The commands :doc:`pair style not strictly required, but since MD simulations are an example of a
hybrid/scaled <pair_hybrid>`, :doc:`fix adapt <fix_adapt>` or :doc:`fix chaotic system, even the tiniest random difference will eventually grow
adapt/fep <fix_adapt_fep>` could be used for simulations where the exponentially into an unwanted divergence.
requirements for fix alchemy are not given.
The commands below demonstrate how the setup for the second partition Otherwise, the properties of each atom (type, charge, bond and angle
can be done for the example of transforming a pure copper system into a partners, etc.), as well as energy and forces between interacting atoms
copper/aluminum bronze. (pair, bond, angle styles, etc.) can be different in the two systems.
This can be initialized in the same input script by using commands which
only apply to one or the other replica. The example scripts use a
world-style :doc:`variable <variable>` command along with
:doc:`if/then/else <if>` commands for this purpose. The
:doc:`partition <partition>` command can also be used.
.. code-block:: LAMMPS .. code-block:: LAMMPS
variable name world pure alloy
create_box 2 box create_box 2 box
create_atoms 1 box create_atoms 1 box
pair_style eam/alloy pair_style eam/alloy
pair_coeff * * AlCu.eam.alloy Cu Al pair_coeff * * AlCu.eam.alloy Cu Al
# replace 5% of copper with aluminum on the second partition only # replace 5% of copper with aluminum on the second partition only
variable name world pure alloy variable name world pure alloy
if "${name} == alloy" then & if "${name} == alloy" then &
"set type 1 type/fraction 2 0.05 6745234" "set type 1 type/fraction 2 0.05 6745234"
# define ramp variable to combine the two different partitions Both replicas must define an instance of this fix, but with a different
if "${name} == pure" then & *v_name* variable. The named variable must be an equal-style or
"variable ramp equal ramp(1.0,0.0)" & equivalent :doc:`variable <variable>`. The two variables should be
else & defined so that one ramps *down* from 1.0 to 0.0 for the *first* replica
"variable ramp equal ramp(0.0,1.0)" (*R=0*) and the other ramps *up* from 0.0 to 1.0 for the *second*
replica (*R=1*). A simple way is to do this is linearly, which can be
done using the ramp() function of the :doc:`variable <variable>`
command. You could also define a variable which returns a value between
0.0 and 1.0 as a non-linear function of the timestep. Here is a linear
example:
.. code-block:: LAMMPS
partition yes 1 variable ramp equal ramp(1.0,0.0)
partition yes 2 variable ramp equal ramp(0.0,1.0)
fix 2 all alchemy v_ramp fix 2 all alchemy v_ramp
.. note::
The ``examples/PACKAGES/alchemy`` folder contains complete example For an alchemical transformation, the two variables should sum to
inputs for this command. exactly 1.0 at any timestep. LAMMPS does *NOT* check that this is
the case.
If you use the ``ramp()`` function to define the two variables, this fix
can easily be used across successive runs in the same input script by
ensuring each instance of the :doc:`run <run>` command specifies the
appropriate *start* or *stop* options.
At each timestep of an MD run, the two instances of this fix evaluate
their respective variables as a :math:`\lambda_R` factor, where *R* = 0
or 1 for each replica. The forces used by each system for the
propagation of their atoms is set to the sum of the forces for the two
systems, each scaled by their respective :math:`\lambda_R` factor. Thus,
during the MD run, the system will transform incrementally from the
first system to the second system.
.. note::
As mentioned above, the coordinates of the atoms and box size/shape
must be exactly the same in the two replicas. Therefore, it is
generally not a good idea to initialize the two replicas by reading
different data files or creating them individually from scratch.
Rather, a single system should be initialized and then desired
modifications applied to the system to either replica. If your
input script somehow induces the two systems to become different
(e.g. by performing :doc:`atom_modify sort <atom_modify>`
differently, or by adding or depositing a different number of atoms),
then LAMMPS will detect the mismatch and generate an error. This is
done by ensuring that each step the number and ordering of atoms is
identical within each pair of processors in the two replicas.
---------- ----------
Restart, fix_modify, output, run start/stop, minimize info Restart, fix_modify, output, run start/stop, minimize info
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""""""""""""""
No information about this fix is written to :doc:`binary restart files <restart>`. No information about this fix is written to :doc:`binary restart files
None of the :doc:`fix_modify <fix_modify>` options are relevant to this fix. <restart>`. None of the :doc:`fix_modify <fix_modify>` options are
relevant to this fix.
This fix stores a global scalar (the current value of :math:`\lambda_p`) This fix stores a global scalar (the current value of :math:`\lambda_R`)
and a global vector of length 3 which contains the potential energy of and a global vector of length 3 which contains the potential energy of
the first partition, the second partition and the combined value, the first partition, the second partition and the combined value,
respectively. The global scalar is unitless and "intensive", the vector respectively. The global scalar is unitless and "intensive", the vector
is in :doc:`energy units <units>` and "extensive". These values can be is in :doc:`energy units <units>` and "extensive". These values can be
used by any command that uses a global value from a fix as input. See used by any command that uses a global value from a fix as input. See
the :doc:`Howto output <Howto_output>` doc page for an overview of the :doc:`output howto <Howto_output>` page for an overview of LAMMPS
LAMMPS output options. output options.
This fix is not invoked during :doc:`energy minimization <minimize>`. This fix is not invoked during :doc:`energy minimization <minimize>`.
@ -117,12 +156,9 @@ This fix is part of the REPLICA package. It is only enabled if LAMMPS
was built with that package. See the :doc:`Build package was built with that package. See the :doc:`Build package
<Build_package>` page for more info. <Build_package>` page for more info.
There may be only one instance of this fix in use at any time. There may be only one instance of this fix in use at a time within
each replica.
This fix requires to perform a :ref:`multi-partition run <partition>`
with *exactly* two partitions.
This fix is *not* compatible with :doc:`load balancing <fix_balance>`.
Related commands Related commands
"""""""""""""""" """"""""""""""""

View File

@ -314,7 +314,7 @@ data to other processors during load-balancing will be random or
deterministic. Random is generally faster; deterministic will ensure deterministic. Random is generally faster; deterministic will ensure
the new ordering of atoms on each processor is the same each time the the new ordering of atoms on each processor is the same each time the
same simulation is run. This can be useful for debugging purposes. same simulation is run. This can be useful for debugging purposes.
Since the fix balance commmand is performed during timestepping, the Since the fix balance command is performed during timestepping, the
default is *no* so that sorting is not performed. default is *no* so that sorting is not performed.
The *out* keyword writes text to the specified *filename* with the The *out* keyword writes text to the specified *filename* with the

View File

@ -40,15 +40,15 @@ Description
This fix applies the Multi-Scale Coarse-Graining (MSCG) method to This fix applies the Multi-Scale Coarse-Graining (MSCG) method to
snapshots from a dump file to generate potentials for coarse-grained snapshots from a dump file to generate potentials for coarse-grained
simulations from all-atom simulations, using a force-matching simulations from all-atom simulations, using a force-matching technique
technique (:ref:`Izvekov <Izvekov>`, :ref:`Noid <Noid>`). (:ref:`Izvekov <Izvekov>`, :ref:`Noid <Noid>`).
It makes use of the MS-CG library, written and maintained by Greg It makes use of the MS-CG library, written and maintained by Greg Voth's
Voth's group at the University of Chicago, which is freely available group at the University of Chicago, which is freely available on their
on their `MS-CG GitHub site <https://github.com/uchicago-voth/MSCG-release>`_. See instructions `MS-CG GitHub site <https://github.com/uchicago-voth/MSCG-release>`_.
on obtaining and installing the MS-CG library in the src/MSCG/README See instructions on obtaining and installing the MS-CG library in the
file, which must be done before you build LAMMPS with this fix command src/MSCG/README file, which must be done before you build LAMMPS with
and use the command in a LAMMPS input script. this fix command and use the command in a LAMMPS input script.
An example script using this fix is provided the examples/mscg An example script using this fix is provided the examples/mscg
directory. directory.
@ -65,15 +65,18 @@ simulations is as follows:
6. Check the results of the force matching. 6. Check the results of the force matching.
7. Run coarse-grained simulations using the new coarse-grained potentials. 7. Run coarse-grained simulations using the new coarse-grained potentials.
This fix can perform the range finding and force matching steps 4 and This fix can perform the range finding and force matching steps 4 and 5
5 of the above workflow when used in conjunction with the of the above workflow when used in conjunction with the :doc:`rerun
:doc:`rerun <rerun>` command. It does not perform steps 1-3 and 6-7. <rerun>` command. It does not perform steps 1-3 and 6-7.
Step 2 can be performed using a Python script (what is the name?) Step 2 can be performed using a Python script (cgmap), which defines the
provided with the MS-CG library which defines the coarse-grained model coarse-grained model and converts a standard LAMMPS dump file for an
and converts a standard LAMMPS dump file for an all-atom simulation all-atom simulation (step 1) into a LAMMPS dump file which has the
(step 1) into a LAMMPS dump file which has the positions of and forces positions of and forces on the coarse-grained beads. To use cgmap the
on the coarse-grained beads. following repositories need to be downloaded and installed.
#. The custom lammpsdata branch of mdtraj from https://github.com/hockyg/mdtraj/tree/lammpsdata
#. The master branch of cgmap from https://github.com/uchicago-voth/cgmap
In step 3, an input file named "control.in" is needed by the MS-CG In step 3, an input file named "control.in" is needed by the MS-CG
library which sets parameters for the range finding and force matching library which sets parameters for the range finding and force matching
@ -83,12 +86,12 @@ info on this file.
When this fix is used to perform steps 4 and 5, the MS-CG library also When this fix is used to perform steps 4 and 5, the MS-CG library also
produces additional output files. The range finder functionality produces additional output files. The range finder functionality
(step 4) outputs files defining pair and bonded interaction ranges. (step 4) outputs files defining pair and bonded interaction ranges. The
The force matching functionality (step 5) outputs tabulated force force matching functionality (step 5) outputs tabulated force files for
files for every interaction in the system. Other diagnostic files can every interaction in the system. Other diagnostic files can also be
also be output depending on the parameters in the MS-CG library input output depending on the parameters in the MS-CG library input script.
script. Again, see the documentation provided with the MS-CG library Again, see the documentation provided with the MS-CG library for more
for more info. info.
---------- ----------
@ -97,8 +100,8 @@ be invoked. If *on*, the step 4 range finder functionality is invoked.
*off*, the step 5 force matching functionality is invoked. *off*, the step 5 force matching functionality is invoked.
If the *name* keyword is used, string names are defined to associate If the *name* keyword is used, string names are defined to associate
with the integer atom types in LAMMPS. *Ntype* names must be with the integer atom types in LAMMPS. *Ntype* names must be provided,
provided, one for each atom type (1-Ntype). one for each atom type (1-Ntype).
The *max* keyword specifies the maximum number of bonds, angles, and The *max* keyword specifies the maximum number of bonds, angles, and
dihedrals a bead can have in the coarse-grained model. dihedrals a bead can have in the coarse-grained model.
@ -107,16 +110,13 @@ Restrictions
"""""""""""" """"""""""""
This fix is part of the MSCG package. It is only enabled if LAMMPS was This fix is part of the MSCG package. It is only enabled if LAMMPS was
built with that package. See the :doc:`Build package <Build_package>` built with that package. Building the MSCG package also requires
doc page for more info. external libraries. See the :doc:`Build_package` and :doc:`Build_extras`
pages for more info.
The MS-CG library uses C++11, which may not be supported by older
compilers. The MS-CG library also has some additional numeric library
dependencies, which are described in its documentation.
Currently, the MS-CG library is not set up to run in parallel with MPI, Currently, the MS-CG library is not set up to run in parallel with MPI,
so this fix can only be used in a serial LAMMPS build and run so this fix can only be used in a serial LAMMPS build and run on a
on a single processor. single processor.
Related commands Related commands
"""""""""""""""" """"""""""""""""

View File

@ -65,33 +65,37 @@ a default value of 0.5 is used, which effectively reproduces the
standard velocity-Verlet (VV) scheme. For more details, see standard velocity-Verlet (VV) scheme. For more details, see
:ref:`Groot <Groot2>`. :ref:`Groot <Groot2>`.
Fix *mvv/dpd* updates the position and velocity of each atom. It can Fix *mvv/dpd* updates the position and velocity of each atom. It can be
be used with the :doc:`pair_style mdpd <pair_mesodpd>` command or other used with the :doc:`pair_style mdpd <pair_mesodpd>` command or other
pair styles such as :doc:`pair dpd <pair_dpd>`. pair styles such as :doc:`pair dpd <pair_dpd>`.
Fix *mvv/edpd* updates the per-atom temperature, in addition to Fix *mvv/edpd* updates the per-atom temperature, in addition to position
position and velocity, and must be used with the :doc:`pair_style edpd <pair_mesodpd>` command. and velocity, and must be used with the :doc:`pair_style edpd
<pair_mesodpd>` command.
Fix *mvv/tdpd* updates the per-atom chemical concentration, in Fix *mvv/tdpd* updates the per-atom chemical concentration, in addition
addition to position and velocity, and must be used with the to position and velocity, and must be used with the :doc:`pair_style
:doc:`pair_style tdpd <pair_mesodpd>` command. tdpd <pair_mesodpd>` command.
---------- ----------
Restart, fix_modify, output, run start/stop, minimize info Restart, fix_modify, output, run start/stop, minimize info
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""""""""""""""
No information about this fix is written to :doc:`binary restart files <restart>`. None of the :doc:`fix_modify <fix_modify>` options No information about this fix is written to :doc:`binary restart files
are relevant to this fix. No global or per-atom quantities are stored <restart>`. None of the :doc:`fix_modify <fix_modify>` options are
by this fix for access by various :doc:`output commands <Howto_output>`. relevant to this fix. No global or per-atom quantities are stored by
this fix for access by various :doc:`output commands <Howto_output>`.
No parameter of this fix can be used with the *start/stop* keywords of No parameter of this fix can be used with the *start/stop* keywords of
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`. the :doc:`run <run>` command. This fix is not invoked during
:doc:`energy minimization <minimize>`.
Restrictions Restrictions
"""""""""""" """"""""""""
This fix is part of the DPD-MESO package. It is only enabled if These fixes are part of the DPD-MESO package. They are only enabled if
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` page for more info. LAMMPS was built with that package. See the :doc:`Build package
<Build_package>` page for more info.
Related commands Related commands
"""""""""""""""" """"""""""""""""

View File

@ -218,10 +218,11 @@ use :doc:`change_box <change_box>` before invoking the fix.
Related commands Related commands
"""""""""""""""" """"""""""""""""
:doc:`fix nvt <fix_nh>`, :doc:`fix npt <fix_nh>`, `fix nvt/sllod :doc:`fix nvt <fix_nh>`, :doc:`fix npt <fix_nh>`,
:doc:<fix_nvt_sllod>`, `compute temp/uef <compute_temp_uef>`, :doc:`fix nvt/sllod <fix_nvt_sllod>`,
:doc::doc:`compute pressure/uef <compute_pressure_uef>`, `dump cfg/uef :doc:`compute temp/uef <compute_temp_uef>`,
:doc:<dump_cfg_uef>` :doc:`compute pressure/uef <compute_pressure_uef>`,
:doc:`dump cfg/uef <dump_cfg_uef>`
Default Default
""""""" """""""

View File

@ -1,7 +1,7 @@
.. index:: fix pimd/nvt .. index:: fix pimd/nvt
fix pimd/nvt command fix pimd/nvt command
================ ====================
Syntax Syntax
"""""" """"""

View File

@ -63,7 +63,7 @@ however, can *only* be applied during molecular dynamics runs.
.. versionchanged:: 15Sep2022 .. versionchanged:: 15Sep2022
These fixes may still be used during minimization. In that case the These fixes may now also be used during minimization. In that case the
constraints are *approximated* by strong harmonic restraints. constraints are *approximated* by strong harmonic restraints.
**SHAKE vs RATTLE:** **SHAKE vs RATTLE:**
@ -133,9 +133,9 @@ constraint lists atom types. All bonds connected to an atom of the
specified type will be constrained. The *m* constraint lists atom specified type will be constrained. The *m* constraint lists atom
masses. All bonds connected to atoms of the specified masses will be masses. All bonds connected to atoms of the specified masses will be
constrained (within a fudge factor of MASSDELTA specified in constrained (within a fudge factor of MASSDELTA specified in
fix_shake.cpp). The *a* constraint lists angle types. If both bonds ``src/RIGID/fix_shake.cpp``). The *a* constraint lists angle types. If
in the angle are constrained then the angle will also be constrained both bonds in the angle are constrained then the angle will also be
if its type is in the list. constrained if its type is in the list.
For all constraints, a particular bond is only constrained if both For all constraints, a particular bond is only constrained if both
atoms in the bond are in the group specified with the SHAKE fix. atoms in the bond are in the group specified with the SHAKE fix.
@ -205,11 +205,11 @@ LAMMPS closely follows (:ref:`Andersen (1983) <Andersen3>`).
The *fix rattle* command modifies forces and velocities and thus The *fix rattle* command modifies forces and velocities and thus
should be defined after all other integration fixes in your input should be defined after all other integration fixes in your input
script. If you define other fixes that modify velocities or forces script. If you define other fixes that modify velocities or forces
after *fix rattle* operates, then *fix rattle* will not take them into after *fix rattle* operates, then *fix rattle* will not take them
account and the overall time integration will typically not satisfy into account and the overall time integration will typically not
the RATTLE constraints. You can check whether the constraints work satisfy the RATTLE constraints. You can check whether the
correctly by setting the value of RATTLE_DEBUG in src/fix_rattle.cpp constraints work correctly by setting the value of RATTLE_DEBUG in
to 1 and recompiling LAMMPS. ``src/RIGID/fix_rattle.cpp`` to 1 and recompiling LAMMPS.
---------- ----------
@ -275,8 +275,8 @@ reducing the :doc:`timestep <timestep>`.
Related commands Related commands
"""""""""""""""" """"""""""""""""
`fix rigid <fix_rigid>`, `fix ehex <fix_ehex>`, :doc:`fix rigid <fix_rigid>`, :doc:`fix ehex <fix_ehex>`,
`fix nve/manifold/rattle <fix_nve_manifold_rattle>` :doc:`fix nve/manifold/rattle <fix_nve_manifold_rattle>`
Default Default

View File

@ -194,6 +194,8 @@ For style *wall/morse*, the energy E is given by a Morse potential:
E = D_0 \left[ e^{- 2 \alpha (r - r_0)} - 2 e^{- \alpha (r - r_0)} \right] E = D_0 \left[ e^{- 2 \alpha (r - r_0)} - 2 e^{- \alpha (r - r_0)} \right]
\qquad r < r_c \qquad r < r_c
.. versionadded:: TBD
For style *wall/lepton*, the energy E is provided as an Lepton For style *wall/lepton*, the energy E is provided as an Lepton
expression string using "r" as the distance variable. The `Lepton expression string using "r" as the distance variable. The `Lepton
library <https://simtk.org/projects/lepton>`_, that the *wall/lepton* library <https://simtk.org/projects/lepton>`_, that the *wall/lepton*
@ -213,6 +215,8 @@ spring as in fix *wall/harmonic* with a force constant *K* (same as
:math:`\epsilon` above) of 100 energy units. More details on the Lepton :math:`\epsilon` above) of 100 energy units. More details on the Lepton
expression strings are given below. expression strings are given below.
.. versionadded:: TBD
For style *wall/table*, the energy E and forces are determined from For style *wall/table*, the energy E and forces are determined from
interpolation tables listed in one or more files as a function of interpolation tables listed in one or more files as a function of
distance. The interpolation tables are used to evaluate energy and distance. The interpolation tables are used to evaluate energy and
@ -371,7 +375,7 @@ is *no*, which means the system must be non-periodic when using a wall.
But you may wish to use a periodic box. E.g. to allow some particles to But you may wish to use a periodic box. E.g. to allow some particles to
interact with the wall via the fix group-ID, and others to pass through interact with the wall via the fix group-ID, and others to pass through
it and wrap around a periodic box. In this case you should ensure that it and wrap around a periodic box. In this case you should ensure that
the wall if sufficiently far enough away from the box boundary. If you the wall is sufficiently far enough away from the box boundary. If you
do not, then particles may interact with both the wall and with periodic do not, then particles may interact with both the wall and with periodic
images on the other side of the box, which is probably not what you images on the other side of the box, which is probably not what you
want. want.

View File

@ -49,19 +49,19 @@ and forces) by pushing the atoms off of each other.
The distance that atoms can move during individual minimization steps The distance that atoms can move during individual minimization steps
can be quite large, especially at the beginning of a minimization. can be quite large, especially at the beginning of a minimization.
Thus `neighbor list settings <neigh_modify>` of *every = 1* and Thus :doc:`neighbor list settings <neigh_modify>` of *every = 1* and
*delay = 0* are **required**. This may be combined with either *delay = 0* are **required**. This may be combined with either
*check = no* (always update the neighbor list) or *check = yes* (only *check = no* (always update the neighbor list) or *check = yes* (only
update the neighbor list if at least one atom has moved more than update the neighbor list if at least one atom has moved more than
half the `neighbor list skin <neighbor>` distance since the last half the :doc:`neighbor list skin <neighbor>` distance since the last
reneighboring). Using *check = yes* is recommended since it avoids reneighboring). Using *check = yes* is recommended since it avoids
unneeded reneighboring steps when the system is closer to the minimum unneeded reneighboring steps when the system is closer to the minimum
and thus atoms move only small distances. Using *check = no* may and thus atoms move only small distances. Using *check = no* may be
be required for debugging or when coupling LAMMPS with external required for debugging or when coupling LAMMPS with external codes
codes that require a predictable sequence of neighbor list updates. that require a predictable sequence of neighbor list updates.
If the settings are **not** *every = 1* and *delay = 0*, LAMMPS If the settings are **not** *every = 1* and *delay = 0*, LAMMPS will
will temporarily apply a `neigh_modify every 1 delay 0 check yes temporarily apply a :doc:`neigh_modify every 1 delay 0 check yes
<neigh_modify>` setting during the minimization and restore the <neigh_modify>` setting during the minimization and restore the
original setting at the end of the minimization. A corresponding original setting at the end of the minimization. A corresponding
message will be printed to the screen and log file, if this happens. message will be printed to the screen and log file, if this happens.

View File

@ -121,6 +121,11 @@ molecule (header keyword = inertia).
ensure space is allocated for storing topology info for molecules that ensure space is allocated for storing topology info for molecules that
are added later. are added later.
----------
Format of a molecule file
"""""""""""""""""""""""""
The format of an individual molecule file is similar but The format of an individual molecule file is similar but
(not identical) to the data file read by the :doc:`read_data <read_data>` (not identical) to the data file read by the :doc:`read_data <read_data>`
commands, and is as follows. commands, and is as follows.

View File

@ -116,11 +116,12 @@ are parameterized in terms of LAMMPS :doc:`metal units <units>`.
.. note:: .. note::
Note that unlike for other potentials, cutoffs for EAM Note that unlike for other potentials, cutoffs for EAM potentials are not
potentials are not set in the pair_style or pair_coeff command; they set in the pair_style or pair_coeff command; they are specified in the EAM
are specified in the EAM potential files themselves. Likewise, the potential files themselves. Likewise, valid EAM potential files usually
EAM potential files list atomic masses; thus you do not need to use contain atomic masses; thus you may not need to use the :doc:`mass <mass>`
the :doc:`mass <mass>` command to specify them. command to specify them, unless the potential file uses a dummy value (e.g.
0.0). LAMMPS will print a warning, if this is the case.
There are web sites that distribute and document EAM potentials stored There are web sites that distribute and document EAM potentials stored
in DYNAMO or other formats: in DYNAMO or other formats:

View File

@ -103,12 +103,13 @@ Mixing, shift, table, tail correction, restart, rRESPA info
For atom type pairs I,J and I != J, the A, B, H, sigma_h, r_mh For atom type pairs I,J and I != J, the A, B, H, sigma_h, r_mh
parameters, and the cutoff distance for these pair styles can be mixed: parameters, and the cutoff distance for these pair styles can be mixed:
A (energy units)
sqrt(1/B) (distance units, see below) * A (energy units)
H (energy units) * :math:`\sqrt{\frac{1}{B}}` (distance units, see below)
sigma_h (distance units) * H (energy units)
r_mh (distance units) * :math:`r_{mh}` (distance units)
cutoff (distance units):ul * :math:`\sigma_h` (distance units)
* cutoff (distance units)
The default mix value is *geometric*\ . The default mix value is *geometric*\ .
Only *arithmetic* and *geometric* mix values are supported. Only *arithmetic* and *geometric* mix values are supported.

View File

@ -91,7 +91,8 @@ contributions from sub-styles are weighted by their scale factors, which
may be fractional or even negative. Furthermore the scale factors may may be fractional or even negative. Furthermore the scale factors may
be variables that may change during a simulation. This enables be variables that may change during a simulation. This enables
switching smoothly between two different pair styles or two different switching smoothly between two different pair styles or two different
parameter sets during a run. parameter sets during a run in a similar fashion as could be done
with :doc:`fix adapt <fix_adapt>` or :doc:`fix alchemy <fix_alchemy>`.
All pair styles that will be used are listed as "sub-styles" following All pair styles that will be used are listed as "sub-styles" following
the *hybrid* or *hybrid/overlay* keyword, in any order. In case of the the *hybrid* or *hybrid/overlay* keyword, in any order. In case of the

View File

@ -299,7 +299,7 @@ Restrictions
"""""""""""" """"""""""""
The pair styles *edpd*, *mdpd*, *mdpd/rhosum* and *tdpd* are part of The pair styles *edpd*, *mdpd*, *mdpd/rhosum* and *tdpd* are part of
the DPD-MESO package. It is only enabled if LAMMPS was built with the DPD-MESO package. They are only enabled if LAMMPS was built with
that package. See the :doc:`Build package <Build_package>` page for that package. See the :doc:`Build package <Build_package>` page for
more info. more info.

View File

@ -145,7 +145,7 @@ coefficients in the formulae above:
* c3 * c3
* c4 * c4
* c5 * c5
* c0 (energy units, tersoff/mod/c only):ul * c0 (energy units, tersoff/mod/c only)
The n, :math:`\eta`, :math:`\lambda_2`, B, :math:`\lambda_1`, and A parameters are only used for The n, :math:`\eta`, :math:`\lambda_2`, B, :math:`\lambda_1`, and A parameters are only used for
two-body interactions. The :math:`\beta`, :math:`\alpha`, c1, c2, c3, c4, c5, h two-body interactions. The :math:`\beta`, :math:`\alpha`, c1, c2, c3, c4, c5, h

View File

@ -142,10 +142,11 @@ the :doc:`atom_style ellipsoid <atom_style>` command.
Related commands Related commands
"""""""""""""""" """"""""""""""""
:doc:`pair_coeff <pair_coeff>`, :doc:`fix nve/asphere :doc:`pair_coeff <pair_coeff>`,
:doc:<fix_nve_asphere>`, `compute temp/asphere <compute_temp_asphere>`, :doc:`fix nve/asphere <fix_nve_asphere>`,
:doc::doc:`pair_style resquared <pair_resquared>`, :doc:`pair_style :doc:`compute temp/asphere <compute_temp_asphere>`,
:doc:gayberne <pair_gayberne>` :doc:`pair_style resquared <pair_resquared>`,
:doc:`pair_style gayberne <pair_gayberne>`
Default Default
""""""" """""""

View File

@ -1477,10 +1477,12 @@ The *Triangles* section must appear after the *Atoms* section.
where the keywords have these meanings: where the keywords have these meanings:
.. parsed-literal::
vx,vy,vz = translational velocity of atom vx,vy,vz = translational velocity of atom
lx,ly,lz = angular momentum of aspherical atom lx,ly,lz = angular momentum of aspherical atom
wx,wy,wz = angular velocity of spherical atom wx,wy,wz = angular velocity of spherical atom
ervel = electron radial velocity (0 for fixed-core):ul ervel = electron radial velocity (0 for fixed-core)
The velocity lines can appear in any order. This section can only be The velocity lines can appear in any order. This section can only be
used after an *Atoms* section. This is because the *Atoms* section used after an *Atoms* section. This is because the *Atoms* section

View File

@ -78,27 +78,41 @@ processors. See the :doc:`-partition command-line switch <Run_options>`
for info on how to run LAMMPS with multiple partitions. for info on how to run LAMMPS with multiple partitions.
Specifically, this style performs all computation except the Specifically, this style performs all computation except the
:doc:`kspace_style <kspace_style>` portion of the force field on the first :doc:`kspace_style <kspace_style>` portion of the force field on the
partition. This include the :doc:`pair style <pair_style>`, :doc:`bond style <bond_style>`, :doc:`neighbor list building <neighbor>`, first partition. This include the :doc:`pair style <pair_style>`,
:doc:`fixes <fix>` including time integration, and output. The :doc:`bond style <bond_style>`, :doc:`neighbor list building
:doc:`kspace_style <kspace_style>` portion of the calculation is <neighbor>`, :doc:`fixes <fix>` including time integration, and output.
The :doc:`kspace_style <kspace_style>` portion of the calculation is
performed on the second partition. performed on the second partition.
This is most useful for the PPPM kspace_style when its performance on This can lead to a significant speedup, if the number of processors can
a large number of processors degrades due to the cost of communication be easily increased and the fraction of time is spent in computing
in its 3d FFTs. In this scenario, splitting your P total processors Kspace interactions is significant, too. The two partitions may have a
into 2 subsets of processors, P1 in the first partition and P2 in the different number of processors. This is most useful for the PPPM
second partition, can enable your simulation to run faster. This is kspace_style when its performance on a large number of processors
because the long-range forces in PPPM can be calculated at the same degrades due to the cost of communication in its 3d FFTs. In this
time as pairwise and bonded forces are being calculated, and the FFTs scenario, splitting your P total processors into 2 subsets of
can actually speed up when running on fewer processors. processors, P1 in the first partition and P2 in the second partition,
can enable your simulation to run faster. This is because the
long-range forces in PPPM can be calculated at the same time as pairwise
and bonded forces are being calculated *and* the parallel 3d FFTs can be
faster to compute when running on fewer processors. Please note that
the scenario of using fewer MPI processes to reduce communication
overhead can also be implemented through using MPI with OpenMP threads
via the INTEL, KOKKOS, or OPENMP package. This alternative option is
typically more effective in case of a fixed number of available
processors and less complex to execute.
To use this style, you must define 2 partitions where P1 is a multiple To use the *verlet/split* style, you must define 2 partitions with the
of P2. Typically having P1 be 3x larger than P2 is a good choice. :doc:`-partition command-line switch <Run_options>`, where partition P1
The 3d processor layouts in each partition must overlay in the is either the same size or an integer multiple of the size of the
following sense. If P1 is a Px1 by Py1 by Pz1 grid, and P2 = Px2 by partition P2. Typically having P1 be 3x larger than P2 is a good
Py2 by Pz2, then Px1 must be an integer multiple of Px2, and similarly choice, since the (serial) performance of LAMMPS is often best if the
for Py1 a multiple of Py2, and Pz1 a multiple of Pz2. time spent in the ``Pair`` computation versus ``Kspace`` is a 3:1 split.
The 3d processor layouts in each partition must overlay in the following
sense. If P1 is a Px1 by Py1 by Pz1 grid, and P2 = Px2 by Py2 by Pz2,
then Px1 must be an integer multiple of Px2, and similarly for Py1 a
multiple of Py2, and Pz1 a multiple of Pz2.
Typically the best way to do this is to let the first partition choose Typically the best way to do this is to let the first partition choose
its own optimal layout, then require the second partition's layout to its own optimal layout, then require the second partition's layout to
@ -122,9 +136,10 @@ of 60 and 15 processors each:
When you run in 2-partition mode with the *verlet/split* style, the When you run in 2-partition mode with the *verlet/split* style, the
thermodynamic data for the entire simulation will be output to the log thermodynamic data for the entire simulation will be output to the log
and screen file of the first partition, which are log.lammps.0 and and screen file of the first partition, which are log.lammps.0 and
screen.0 by default; see the :doc:`-plog and -pscreen command-line switches <Run_options>` to change this. The log and screen file screen.0 by default; see the :doc:`-plog and -pscreen command-line
for the second partition will not contain thermodynamic output beyond the switches <Run_options>` to change this. The log and screen file for the
first timestep of the run. second partition will not contain thermodynamic output beyond the first
timestep of the run.
See the :doc:`Accelerator packages <Speed_packages>` page for See the :doc:`Accelerator packages <Speed_packages>` page for
performance details of the speed-up offered by the *verlet/split* performance details of the speed-up offered by the *verlet/split*
@ -137,70 +152,73 @@ options to support this, and strategies are discussed in :doc:`Section
---------- ----------
The *respa* style implements the rRESPA multi-timescale integrator The *respa* style implements the rRESPA multi-timescale integrator
:ref:`(Tuckerman) <Tuckerman3>` with N hierarchical levels, where level 1 is :ref:`(Tuckerman) <Tuckerman3>` with N hierarchical levels, where level
the innermost loop (shortest timestep) and level N is the outermost 1 is the innermost loop (shortest timestep) and level N is the outermost
loop (largest timestep). The loop factor arguments specify what the loop (largest timestep). The loop factor arguments specify what the
looping factor is between levels. N1 specifies the number of looping factor is between levels. N1 specifies the number of iterations
iterations of level 1 for a single iteration of level 2, N2 is the of level 1 for a single iteration of level 2, N2 is the iterations of
iterations of level 2 per iteration of level 3, etc. N-1 looping level 2 per iteration of level 3, etc. N-1 looping parameters must be
parameters must be specified. specified.
Thus with a 4-level respa setting of "2 2 2" for the 3 loop factors, Thus with a 4-level respa setting of "2 2 2" for the 3 loop factors, you
you could choose to have bond interactions computed 8x per large could choose to have bond interactions computed 8x per large timestep,
timestep, angle interactions computed 4x, pair interactions computed angle interactions computed 4x, pair interactions computed 2x, and
2x, and long-range interactions once per large timestep. long-range interactions once per large timestep.
The :doc:`timestep <timestep>` command sets the large timestep for the The :doc:`timestep <timestep>` command sets the large timestep for the
outermost rRESPA level. Thus if the 3 loop factors are "2 2 2" for outermost rRESPA level. Thus if the 3 loop factors are "2 2 2" for
4-level rRESPA, and the outer timestep is set to 4.0 fs, then the 4-level rRESPA, and the outer timestep is set to 4.0 fs, then the inner
inner timestep would be 8x smaller or 0.5 fs. All other LAMMPS timestep would be 8x smaller or 0.5 fs. All other LAMMPS commands that
commands that specify number of timesteps (e.g. :doc:`thermo <thermo>` specify number of timesteps (e.g. :doc:`thermo <thermo>` for thermo
for thermo output every N steps, :doc:`neigh_modify delay/every <neigh_modify>` parameters, :doc:`dump <dump>` every N output every N steps, :doc:`neigh_modify delay/every <neigh_modify>`
steps, etc) refer to the outermost timesteps. parameters, :doc:`dump <dump>` every N steps, etc) refer to the
outermost timesteps.
The rRESPA keywords enable you to specify at what level of the The rRESPA keywords enable you to specify at what level of the hierarchy
hierarchy various forces will be computed. If not specified, the various forces will be computed. If not specified, the defaults are
defaults are that bond forces are computed at level 1 (innermost that bond forces are computed at level 1 (innermost loop), angle forces
loop), angle forces are computed where bond forces are, dihedral are computed where bond forces are, dihedral forces are computed where
forces are computed where angle forces are, improper forces are angle forces are, improper forces are computed where dihedral forces
computed where dihedral forces are, pair forces are computed at the are, pair forces are computed at the outermost level, and kspace forces
outermost level, and kspace forces are computed where pair forces are. are computed where pair forces are. The inner, middle, outer forces
The inner, middle, outer forces have no defaults. have no defaults.
For fixes that support it, the rRESPA level at which a given fix is For fixes that support it, the rRESPA level at which a given fix is
active, can be selected through the :doc:`fix_modify <fix_modify>` command. active, can be selected through the :doc:`fix_modify <fix_modify>`
command.
The *inner* and *middle* keywords take additional arguments for The *inner* and *middle* keywords take additional arguments for cutoffs
cutoffs that are used by the pairwise force computations. If the 2 that are used by the pairwise force computations. If the 2 cutoffs for
cutoffs for *inner* are 5.0 and 6.0, this means that all pairs up to *inner* are 5.0 and 6.0, this means that all pairs up to 6.0 apart are
6.0 apart are computed by the inner force. Those between 5.0 and 6.0 computed by the inner force. Those between 5.0 and 6.0 have their force
have their force go ramped to 0.0 so the overlap with the next regime go ramped to 0.0 so the overlap with the next regime (middle or outer)
(middle or outer) is smooth. The next regime (middle or outer) will is smooth. The next regime (middle or outer) will compute forces for
compute forces for all pairs from 5.0 outward, with those from 5.0 to all pairs from 5.0 outward, with those from 5.0 to 6.0 having their
6.0 having their value ramped in an inverse manner. value ramped in an inverse manner.
Note that you can use *inner* and *outer* without using *middle* to Note that you can use *inner* and *outer* without using *middle* to
split the pairwise computations into two portions instead of three. split the pairwise computations into two portions instead of three.
Unless you are using a very long pairwise cutoff, a 2-way split is Unless you are using a very long pairwise cutoff, a 2-way split is often
often faster than a 3-way split, since it avoids too much duplicate faster than a 3-way split, since it avoids too much duplicate
computation of pairwise interactions near the intermediate cutoffs. computation of pairwise interactions near the intermediate cutoffs.
Also note that only a few pair potentials support the use of the Also note that only a few pair potentials support the use of the *inner*
*inner* and *middle* and *outer* keywords. If not, only the *pair* and *middle* and *outer* keywords. If not, only the *pair* keyword can
keyword can be used with that pair style, meaning all pairwise forces be used with that pair style, meaning all pairwise forces are computed
are computed at the same rRESPA level. See the doc pages for at the same rRESPA level. See the doc pages for individual pair styles
individual pair styles for details. for details.
Another option for using pair potentials with rRESPA is with the Another option for using pair potentials with rRESPA is with the
*hybrid* keyword, which requires the use of the :doc:`pair_style hybrid or hybrid/overlay <pair_hybrid>` command. In this scenario, different *hybrid* keyword, which requires the use of the :doc:`pair_style hybrid
or hybrid/overlay <pair_hybrid>` command. In this scenario, different
sub-styles of the hybrid pair style are evaluated at different rRESPA sub-styles of the hybrid pair style are evaluated at different rRESPA
levels. This can be useful, for example, to set different timesteps levels. This can be useful, for example, to set different timesteps for
for hybrid coarse-grained/all-atom models. The *hybrid* keyword hybrid coarse-grained/all-atom models. The *hybrid* keyword requires as
requires as many level assignments as there are hybrid sub-styles, many level assignments as there are hybrid sub-styles, which assigns
which assigns each sub-style to a rRESPA level, following their order each sub-style to a rRESPA level, following their order of definition in
of definition in the pair_style command. Since the *hybrid* keyword the pair_style command. Since the *hybrid* keyword operates on pair
operates on pair style computations, it is mutually exclusive with style computations, it is mutually exclusive with either the *pair* or
either the *pair* or the *inner*\ /\ *middle*\ /\ *outer* keywords. the *inner*\ /\ *middle*\ /\ *outer* keywords.
When using rRESPA (or for any MD simulation) care must be taken to When using rRESPA (or for any MD simulation) care must be taken to
choose a timestep size(s) that ensures the Hamiltonian for the chosen choose a timestep size(s) that ensures the Hamiltonian for the chosen

View File

@ -49,7 +49,9 @@ pkgs = []
# folder, and is not called 'MAKE' is a package # folder, and is not called 'MAKE' is a package
for d in pkgdirs: for d in pkgdirs:
pkg = dirs.match(d).group(1) match = dirs.match(d)
if not match: continue
pkg = match.group(1)
if not os.path.isdir(os.path.join(src_dir, pkg)): continue if not os.path.isdir(os.path.join(src_dir, pkg)): continue
if pkg in ['DEPEND','MAKE','STUBS']: continue if pkg in ['DEPEND','MAKE','STUBS']: continue
pkgs.append(pkg) pkgs.append(pkg)

View File

@ -1,5 +1,6 @@
aa aa
aat aat
Abascal
abc abc
abf abf
ABI ABI
@ -437,6 +438,7 @@ cfile
CFL CFL
cgdna cgdna
CGDNA CGDNA
cgmap
cgs cgs
cgsdk cgsdk
CGSDK CGSDK
@ -1442,6 +1444,7 @@ hux
hwloc hwloc
hx hx
hy hy
hydronium
hydrophobicity hydrophobicity
hydrostatic hydrostatic
hydrostatically hydrostatically
@ -1791,6 +1794,7 @@ lammps
Lammps Lammps
LAMMPS LAMMPS
lammpsbin lammpsbin
lammpsdata
lammpsplot lammpsplot
lammpsplugin lammpsplugin
Lamoureux Lamoureux
@ -1985,6 +1989,7 @@ magelec
Maginn Maginn
magneton magneton
magnetons magnetons
Mahoney
mainboard mainboard
mainboards mainboards
makefile makefile
@ -2070,6 +2075,7 @@ mdi
MDI MDI
mdpd mdpd
mDPD mDPD
mdtraj
meam meam
MEAM MEAM
meamf meamf
@ -3186,6 +3192,7 @@ Sandia
sandybrown sandybrown
sanitizer sanitizer
Sanyal Sanyal
Sanz
Sarath Sarath
sc sc
scafacos scafacos

View File

@ -0,0 +1,2 @@
LAMMPS (8 Feb 2023)
Running on 8 partitions of processors

View File

@ -0,0 +1,199 @@
LAMMPS (8 Feb 2023)
Processor partition = 0
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 32 pad
variable out_freq string 100
variable job_name string H2
units real
atom_style full
pair_style table linear 10000
neighbor 2.0 bin
neigh_modify every 1 delay 0 check no
read_data H2.data
Reading data file ...
orthogonal box = (0 0 0) to (19.71219 19.71219 19.71219)
1 by 1 by 1 MPI processor grid
reading atoms ...
180 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.003 seconds
pair_coeff 1 * pair.table PAIR_H2
WARNING: 5852 of 18000 force values in table PAIR_H2 are inconsistent with -dE/dr.
WARNING: Should only be flagged at inflection points (src/pair_table.cpp:466)
timestep 0.001
velocity all create 1.0 1985 rot yes dist gaussian
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 25.0 nhc 4
thermo_style custom step temp pe etotal pzz f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
thermo ${out_freq}
thermo 100
#dump dcd all dcd ${out_freq} ${job_name}_${ibead}.dcd
#restart ${out_freq} ${job_name}_${ibead}.restart1 ${job_name}_${ibead}.restart2
run 10000
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Fix pimd/nvt -P/(beta^2 * hbar^2) = -2.0510430e-01 (kcal/mol/A^2)
Neighbor list info ...
update: every = 1 steps, delay = 0 steps, check = no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 11.55117
ghost atom cutoff = 11.55117
binsize = 5.775585, bins = 4 4 4
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair table, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.97 | 11.97 | 11.97 Mbytes
Step Temp PotEng TotEng Pzz espring T_ring virial
0 1 -50.292986 -49.759421 16.18218 0 2.4190752e-312 4.331435e-14
100 1.0017926 -50.292812 -49.758291 16.197861 4.265072e-05 0.99622709 -0.027624534
200 1.0071966 -50.292414 -49.755009 16.235286 0.00017002327 1.0016011 -0.055248299
300 1.0162913 -50.291757 -49.7495 16.297361 0.00038044032 1.0106453 -0.082873452
400 1.0292116 -50.290849 -49.741697 16.38451 0.00067129747 1.0234938 -0.11047807
500 1.046152 -50.289692 -49.731502 16.497053 0.0010393068 1.0403401 -0.13806207
600 1.0673727 -50.288298 -49.718785 16.634959 0.0014807685 1.0614428 -0.16561253
700 1.0932075 -50.286675 -49.703378 16.798983 0.0019918311 1.0871342 -0.19314289
800 1.1240754 -50.284828 -49.68506 16.990234 0.0025687136 1.1178306 -0.22065895
900 1.1604938 -50.28276 -49.663562 17.210179 0.0032078786 1.1540466 -0.24818038
1000 1.2030968 -50.280481 -49.638551 17.460167 0.0039061562 1.196413 -0.27572028
1100 1.2526583 -50.277991 -49.609616 17.742341 0.0046608267 1.2456991 -0.30331246
1200 1.3101204 -50.275294 -49.576259 18.059364 0.0054696709 1.3028419 -0.33099732
1300 1.3766308 -50.272386 -49.537864 18.415203 0.0063309999 1.3689828 -0.35880748
1400 1.4535894 -50.269262 -49.493677 18.814095 0.007243672 1.4455139 -0.38678366
1500 1.5427084 -50.265919 -49.442783 19.261431 0.0082071044 1.5341378 -0.41499269
1600 1.6460882 -50.262344 -49.384049 19.763852 0.0092212862 1.6369433 -0.44348166
1700 1.7663158 -50.25853 -49.316086 20.329991 0.010286796 1.756503 -0.47232409
1800 1.9065905 -50.254461 -49.237171 20.96974 0.01140483 1.8959983 -0.50158483
1900 2.0708856 -50.250115 -49.145163 21.696809 0.012577241 2.0593807 -0.53134846
2000 2.2641571 -50.245477 -49.037402 22.525956 0.013806592 2.2515785 -0.5617101
2100 2.4926123 -50.240516 -48.910546 23.477847 0.015096239 2.4787644 -0.59276642
2200 2.7640541 -50.2352 -48.760398 24.577541 0.01645042 2.7486983 -0.62463764
2300 3.088323 -50.229491 -48.58167 25.856282 0.017874391 3.0711656 -0.65745388
2400 3.4778567 -50.223344 -48.367681 27.353194 0.01937458 3.4585353 -0.69135912
2500 3.9483938 -50.216703 -48.109978 29.11873 0.020958791 3.9264583 -0.72652121
2600 4.5198403 -50.209503 -47.797875 31.215234 0.02263645 4.4947301 -0.76313188
2700 5.2173107 -50.201663 -47.417889 33.721815 0.024418904 5.1883257 -0.80140558
2800 6.0723283 -50.193089 -46.953107 36.73757 0.026319777 6.0385931 -0.84159436
2900 7.1241213 -50.183668 -46.382487 40.38551 0.028355393 7.0845429 -0.88396874
3000 8.4208727 -50.173266 -45.680183 44.816478 0.030545255 8.3740901 -0.9288431
3100 10.020649 -50.161717 -44.81505 50.212214 0.032912578 9.9649788 -0.97656436
3200 11.991558 -50.148837 -43.750561 56.786471 0.035484852 11.924938 -1.0275116
3300 14.410456 -50.134392 -42.445477 64.781319 0.038294377 14.330398 -1.0821007
3400 17.359303 -50.11813 -40.855813 74.455919 0.041378722 17.262863 -1.14076
3500 20.918126 -50.099744 -38.938564 86.068376 0.044780961 20.801915 -1.2039443
3600 25.153676 -50.078895 -36.657774 99.840861 0.048549564 25.013933 -1.2720773
3700 30.103431 -50.055212 -33.993075 115.91254 0.052737712 29.93619 -1.3455663
3800 35.755845 -50.028299 -30.950232 134.28175 0.057401834 35.557201 -1.4247605
3900 42.029581 -49.997746 -27.572232 154.74519 0.062599126 41.796084 -1.5098692
4000 48.756702 -49.963159 -23.948289 176.84543 0.06838392 48.485832 -1.6010084
4100 55.676392 -49.924188 -20.217214 199.84979 0.074802896 55.367079 -1.6980754
4200 62.445716 -49.880563 -16.561714 222.7783 0.081889414 62.098795 -1.8007866
4300 68.671023 -49.832118 -13.191664 244.49021 0.089657516 68.289518 -1.9086164
4400 73.957826 -49.778843 -10.317535 263.82539 0.098096488 73.546949 -2.0208305
4500 77.969954 -49.7209 -8.1188616 279.77238 0.10716704 77.536788 -2.1364913
4600 80.483598 -49.658617 -6.7153862 291.6285 0.11680011 80.036467 -2.254524
4700 81.421471 -49.592506 -6.1488596 299.10183 0.12689894 80.969129 -2.3737378
4800 80.857888 -49.523204 -6.3802649 302.3328 0.13734453 80.408677 -2.492954
4900 78.994781 -49.451459 -7.3026086 301.83334 0.14800388 78.555921 -2.6110228
5000 76.117367 -49.378045 -8.7644823 298.36557 0.15873983 75.694493 -2.7269278
5100 72.542745 -49.303735 -10.597466 292.79593 0.16942116 72.139729 -2.8398052
5200 68.573953 -49.22923 -12.640569 285.96472 0.17993138 68.192987 -2.949009
5300 64.467624 -49.155126 -14.757458 278.59037 0.19017535 64.10947 -3.0540851
5400 60.41785 -49.081671 -16.844821 271.22804 0.20008281 60.082195 -3.1546148
5500 56.554431 -49.009666 -18.834201 264.2355 0.20960898 56.24024 -3.250862
5600 52.95111 -48.938861 -20.686002 257.84121 0.21873248 52.656937 -3.3428291
5700 49.638794 -48.869827 -22.384304 252.12886 0.22745138 49.363023 -3.4305128
5800 46.619514 -48.801888 -23.927347 247.13356 0.23577844 46.360517 -3.5141755
5900 43.878389 -48.73593 -25.323958 242.80111 0.24373625 43.634621 -3.5942967
6000 41.392437 -48.671406 -26.585851 239.09246 0.25135296 41.162479 -3.6710953
6100 39.136252 -48.60798 -27.726246 235.9541 0.25865905 38.918828 -3.7449553
6200 37.085195 -48.545774 -28.758412 233.32233 0.26568495 36.879167 -3.8159439
6300 35.216896 -48.484909 -29.694407 231.1392 0.27245965 35.021246 -3.884503
6400 33.511732 -48.42458 -30.543893 229.37842 0.2790099 33.325556 -3.9507385
6500 31.952789 -48.365385 -31.316496 227.98228 0.2853599 31.775274 -4.0149897
6600 30.525576 -48.307233 -32.019853 226.91697 0.29153132 30.35599 -4.0774486
6700 29.217672 -48.24981 -32.660283 226.16022 0.29754342 29.055351 -4.1382338
6800 28.018378 -48.192803 -33.243177 225.69366 0.30341329 27.862721 -4.1974677
6900 26.918418 -48.136622 -33.773896 225.48194 0.30915615 26.768871 -4.2553485
7000 25.909681 -48.08096 -34.256461 225.51257 0.31478562 25.765738 -4.311968
7100 24.985015 -48.025534 -34.694405 225.77479 0.32031392 24.84621 -4.3675242
7200 24.138072 -47.970746 -35.091516 226.24048 0.32575216 24.003972 -4.4219335
7300 23.36317 -47.916089 -35.450319 226.90757 0.33111051 23.233375 -4.4754578
7400 22.655198 -47.861976 -35.773956 227.75054 0.33639834 22.529336 -4.5280134
7500 22.009532 -47.808135 -36.064618 228.76407 0.34162439 21.887257 -4.5797622
7600 21.421974 -47.754508 -36.324492 229.93785 0.34679689 21.302963 -4.6307739
7700 20.888691 -47.700827 -36.555352 231.26801 0.35192361 20.772643 -4.6812057
7800 20.406177 -47.64705 -36.759028 232.73618 0.35701201 20.292809 -4.7306795
7900 19.971205 -47.593833 -36.937897 234.33449 0.36206923 19.860254 -4.7798815
8000 19.580795 -47.540435 -37.092808 236.06384 0.36710221 19.472013 -4.8285632
8100 19.232176 -47.487281 -37.225665 237.90655 0.37211768 19.125331 -4.8768578
8200 18.922755 -47.4341 -37.33758 239.86116 0.37712221 18.817628 -4.9247735
8300 18.650078 -47.380856 -37.429827 241.92202 0.38212226 18.546466 -4.972363
8400 18.4118 -47.327508 -37.503616 244.08393 0.38712418 18.309512 -5.0196756
8500 18.205651 -47.273789 -37.559891 246.34742 0.3921342 18.104508 -5.06671
8600 18.029398 -47.219424 -37.599568 248.71065 0.39715848 17.929235 -5.1133124
8700 17.880815 -47.165549 -37.624972 251.14475 0.4022031 17.781477 -5.1600447
8800 17.757645 -47.110958 -37.636101 253.66312 0.40727406 17.658991 -5.2066259
8900 17.657573 -47.056554 -37.635091 256.25454 0.41237724 17.559475 -5.2531731
9000 17.578197 -47.001835 -37.622724 258.91696 0.41751847 17.48054 -5.2996769
9100 17.517006 -46.946535 -37.600073 261.64727 0.42270345 17.41969 -5.3462575
9200 17.471368 -46.890625 -37.568515 264.44427 0.42793776 17.374305 -5.3925966
9300 17.438519 -46.834765 -37.530181 267.28872 0.43322691 17.341639 -5.4391596
9400 17.415579 -46.778464 -37.486121 270.18178 0.43857628 17.318826 -5.485798
9500 17.399563 -46.721685 -37.437887 273.11812 0.44399119 17.302899 -5.5325337
9600 17.387425 -46.664405 -37.387083 276.08982 0.44947693 17.290829 -5.5793912
9700 17.376109 -46.606364 -37.335081 279.09236 0.45503878 17.279575 -5.6264788
9800 17.362615 -46.547755 -37.283671 282.11747 0.46068208 17.266156 -5.6736623
9900 17.344087 -46.488783 -37.234585 285.15699 0.46641232 17.247731 -5.7209993
10000 17.317913 -46.42918 -37.188947 288.20641 0.4722352 17.221703 -5.7685405
Loop time of 14.691 on 1 procs for 10000 steps with 180 atoms
Performance: 0.059 ns/day, 408.083 hours/ns, 680.689 timesteps/s, 122.524 katom-step/s
96.5% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 3.0453 | 3.0453 | 3.0453 | 0.0 | 20.73
Bond | 0.00108 | 0.00108 | 0.00108 | 0.0 | 0.01
Neigh | 6.6815 | 6.6815 | 6.6815 | 0.0 | 45.48
Comm | 0.55477 | 0.55477 | 0.55477 | 0.0 | 3.78
Output | 0.0028885 | 0.0028885 | 0.0028885 | 0.0 | 0.02
Modify | 4.3341 | 4.3341 | 4.3341 | 0.0 | 29.50
Other | | 0.07136 | | | 0.49
Nlocal: 180 ave 180 max 180 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1510 ave 1510 max 1510 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 13729 ave 13729 max 13729 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 13729
Ave neighs/atom = 76.272222
Ave special neighs/atom = 0
Neighbor list builds = 10000
Dangerous builds not checked
Total wall time: 0:00:14

View File

@ -0,0 +1,197 @@
LAMMPS (8 Feb 2023)
Processor partition = 1
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 32 pad
variable out_freq string 100
variable job_name string H2
units real
atom_style full
pair_style table linear 10000
neighbor 2.0 bin
neigh_modify every 1 delay 0 check no
read_data H2.data
Reading data file ...
orthogonal box = (0 0 0) to (19.71219 19.71219 19.71219)
1 by 1 by 1 MPI processor grid
reading atoms ...
180 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.003 seconds
pair_coeff 1 * pair.table PAIR_H2
WARNING: 5852 of 18000 force values in table PAIR_H2 are inconsistent with -dE/dr.
WARNING: Should only be flagged at inflection points (src/pair_table.cpp:466)
timestep 0.001
velocity all create 1.0 1985 rot yes dist gaussian
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 25.0 nhc 4
thermo_style custom step temp pe etotal pzz f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
thermo ${out_freq}
thermo 100
#dump dcd all dcd ${out_freq} ${job_name}_${ibead}.dcd
#restart ${out_freq} ${job_name}_${ibead}.restart1 ${job_name}_${ibead}.restart2
run 10000
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 0 steps, check = no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 11.55117
ghost atom cutoff = 11.55117
binsize = 5.775585, bins = 4 4 4
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair table, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.97 | 11.97 | 11.97 Mbytes
Step Temp PotEng TotEng Pzz espring T_ring virial
0 1 -50.292986 -49.759421 16.18218 0 0 4.331435e-14
100 1.0008585 -50.292908 -49.758885 16.189586 7.3078196e-06 4.6642574 -0.013945396
200 1.0034473 -50.292787 -49.757382 16.20341 2.9015288e-05 4.6763219 -0.027851725
300 1.0078065 -50.292593 -49.754863 16.225711 6.4500006e-05 4.6966366 -0.041662754
400 1.0140035 -50.29233 -49.751293 16.257176 0.00011280318 4.7255165 -0.055352542
500 1.022135 -50.292004 -49.746629 16.297097 0.000172727 4.7634112 -0.068879202
600 1.0323282 -50.291621 -49.740807 16.346105 0.00024293886 4.810914 -0.082221014
700 1.044744 -50.291188 -49.733749 16.404167 0.00032206529 4.8687751 -0.095360512
800 1.0595808 -50.290712 -49.725357 16.471712 0.00040876559 4.9379182 -0.10826526
900 1.0770788 -50.290199 -49.715507 16.549069 0.00050178229 5.0194635 -0.1209272
1000 1.0975268 -50.289655 -49.704053 16.636751 0.00059997025 5.1147563 -0.13335203
1100 1.1212697 -50.289087 -49.690817 16.735749 0.00070230922 5.2254045 -0.14552504
1200 1.1487191 -50.288499 -49.675582 16.846901 0.00080790454 5.3533259 -0.15745048
1300 1.1803661 -50.287894 -49.658092 16.971484 0.00091598038 5.5008089 -0.16912662
1400 1.2167975 -50.287272 -49.638032 17.111786 0.001025869 5.6705884 -0.18056175
1500 1.2587169 -50.286644 -49.615037 17.26922 0.0011369979 5.8659438 -0.19176702
1600 1.3069713 -50.286008 -49.588654 17.446637 0.0012488773 6.0908216 -0.20274823
1700 1.3625842 -50.285365 -49.558338 17.646978 0.0013610874 6.349992 -0.21351296
1800 1.4267987 -50.284719 -49.523429 17.874056 0.0014732674 6.6492481 -0.2240754
1900 1.5011316 -50.284073 -49.483122 18.132347 0.0015851058 6.9956586 -0.23443788
2000 1.5874426 -50.283426 -49.436422 18.428012 0.0016963317 7.3978897 -0.24461477
2100 1.6880217 -50.282783 -49.382113 18.767914 0.0018067084 7.866614 -0.25461336
2200 1.805701 -50.282144 -49.318685 19.160875 0.0019160281 8.4150298 -0.26443254
2300 1.9439951 -50.281509 -49.244262 19.617751 0.0020241086 9.0595157 -0.27408815
2400 2.1072772 -50.280879 -49.15651 20.152728 0.0021307926 9.8204522 -0.28357876
2500 2.3009976 -50.28026 -49.052528 20.78256 0.0022359485 10.723239 -0.29290505
2600 2.5319494 -50.279651 -48.928691 21.528586 0.0023394759 11.799534 -0.30206821
2700 2.8085834 -50.279048 -48.780486 22.417919 0.0024413142 13.088719 -0.31106836
2800 3.1413661 -50.278457 -48.602334 23.483643 0.0025414581 14.639572 -0.31990395
2900 3.5431594 -50.277876 -48.38737 24.766603 0.0026399801 16.512032 -0.32855403
3000 4.029577 -50.277305 -48.127264 26.316279 0.0027370628 18.778862 -0.33702346
3100 4.6192292 -50.276739 -47.81208 28.192254 0.0028330445 21.526793 -0.3452905
3200 5.333716 -50.276174 -47.43029 30.464107 0.0029284791 24.856485 -0.35332773
3300 6.1971481 -50.275605 -46.969024 33.208128 0.0030242128 28.8803 -0.36114465
3400 7.2349012 -50.27502 -46.41473 36.506582 0.0031214781 33.716495 -0.36868512
3500 8.4712457 -50.274401 -45.754441 40.437918 0.0032219998 39.478178 -0.37595678
3600 9.9255066 -50.273728 -44.977825 45.065017 0.0033281047 46.255407 -0.38292345
3700 11.606561 -50.27297 -44.080116 50.41841 0.0034428151 54.089554 -0.38955061
3800 13.505865 -50.272095 -43.065838 56.472981 0.0035698989 62.940797 -0.39583139
3900 15.589837 -50.271059 -41.952868 63.125206 0.0037138374 72.652639 -0.40173444
4000 17.793286 -50.26982 -40.775945 70.171007 0.0038796665 82.921278 -0.40724146
4100 20.016352 -50.26833 -39.588305 77.297059 0.0040726574 93.281337 -0.350557
4200 22.127692 -50.266548 -38.459986 84.091411 0.0042978175 103.12072 -0.42427987
4300 23.975875 -50.264442 -37.471754 90.07826 0.0045592402 111.73373 -0.44332019
4400 25.408871 -50.262001 -36.704717 94.780152 0.0048593802 118.41186 -0.4712594
4500 26.298516 -50.259233 -36.227265 97.796601 0.0051983826 122.55783 -0.48751932
4600 26.564146 -50.256176 -36.082477 98.874143 0.0055736202 123.79574 -0.50751557
4700 26.188683 -50.252888 -36.279523 97.96053 0.0059795748 122.04598 -0.53463961
4800 25.22218 -50.249455 -36.791783 95.211762 0.0064081371 117.54183 -0.56057187
4900 23.771743 -50.245971 -37.562201 90.960801 0.0068493041 110.78242 -0.58649549
5000 21.981009 -50.242542 -38.514245 85.651619 0.0072921623 102.43714 -0.58569676
5100 20.005118 -50.239262 -39.565231 79.762203 0.0077259803 93.228984 -0.58814947
5200 17.987555 -50.236217 -40.638687 73.732022 0.0081412203 83.826622 -0.64456631
5300 16.043551 -50.23346 -41.673183 67.91308 0.0085303062 74.767062 -0.66253179
5400 14.252123 -50.231042 -42.626609 62.542995 0.0088880521 66.418547 -0.67647833
5500 12.656267 -50.228973 -43.476032 57.750687 0.0092117291 58.981452 -0.69035428
5600 11.269006 -50.227253 -44.214506 53.573237 0.0095008225 52.516458 -0.70182381
5700 10.082247 -50.225863 -44.846329 49.983875 0.0097565822 46.985857 -0.71107461
5800 9.075711 -50.224777 -45.382295 46.920816 0.0099814848 42.295142 -0.72796918
5900 8.2241323 -50.223954 -45.835845 44.308503 0.010178713 38.326566 -0.7341011
6000 7.5020778 -50.223364 -46.220518 42.071534 0.010351726 34.961607 -0.73860614
6100 6.8865776 -50.222972 -46.548535 40.142111 0.010503944 32.093218 -0.74169302
6200 6.3581625 -50.222743 -46.83025 38.464555 0.010638555 29.630669 -0.74355815
6300 5.9009471 -50.222651 -47.074112 36.993223 0.010758413 27.499927 -0.72351831
6400 5.5022478 -50.222668 -47.286861 35.692229 0.010866003 25.641886 -0.72491142
6500 5.1520445 -50.222775 -47.473825 34.533075 0.010963451 24.009849 -0.72550196
6600 4.842444 -50.222956 -47.639197 33.493966 0.011052555 22.567032 -0.72539576
6700 4.5672154 -50.223194 -47.786287 32.557859 0.011134828 21.284396 -0.72468094
6800 4.3214112 -50.22348 -47.917726 31.710288 0.011211542 20.138885 -0.69977477
6900 4.1010719 -50.223805 -48.035616 30.941022 0.011283771 19.112047 -0.6977173
7000 3.9029992 -50.224161 -48.141657 30.240625 0.011352422 18.188977 -0.69521625
7100 3.7245829 -50.22454 -48.237233 29.602229 0.011418274 17.357512 -0.69232721
7200 3.5636708 -50.224941 -48.323491 29.019374 0.011482 16.60762 -0.68909561
7300 3.4184697 -50.225359 -48.401383 28.487117 0.011544187 15.930946 -0.68553322
7400 3.2874703 -50.225791 -48.471712 28.00136 0.011605358 15.320455 -0.68167743
7500 3.1693898 -50.226236 -48.53516 27.5579 0.01166598 14.77017 -0.67389187
7600 3.0631284 -50.226689 -48.592311 27.15399 0.011726479 14.274964 -0.66987688
7700 2.9677349 -50.227151 -48.643671 26.786563 0.011787244 13.830406 -0.66561073
7800 2.8823804 -50.227616 -48.689679 26.453373 0.011848631 13.432632 -0.66110134
7900 2.8063371 -50.228091 -48.730728 26.151709 0.011910973 13.078251 -0.65637083
8000 2.7389612 -50.228567 -48.767153 25.879876 0.011974573 12.764262 -0.65142182
8100 2.6796793 -50.229048 -48.799265 25.636155 0.01203971 12.487993 -0.64626697
8200 2.6279769 -50.229528 -48.827332 25.418653 0.012106636 12.247046 -0.64092634
8300 2.583388 -50.230009 -48.851603 25.225967 0.012175578 12.039251 -0.63576886
8400 2.5454874 -50.230488 -48.872305 25.056681 0.012246734 11.862624 -0.63004687
8500 2.5138825 -50.230965 -48.889645 24.909342 0.012320275 11.715337 -0.62413585
8600 2.4882074 -50.231439 -48.903818 24.782526 0.012396346 11.595685 -0.65229004
8700 2.468117 -50.231904 -48.915003 24.674923 0.012475068 11.502059 -0.64624002
8800 2.4532823 -50.232364 -48.923378 24.585268 0.012556541 11.432925 -0.6399876
8900 2.4433865 -50.232811 -48.929106 24.512562 0.012640854 11.386808 -0.63354
9000 2.4381226 -50.233249 -48.932352 24.45498 0.012728083 11.362277 -0.62690844
9100 2.4371917 -50.233668 -48.933268 24.411953 0.012818306 11.357939 -0.62009589
9200 2.4403031 -50.234074 -48.932014 24.381442 0.012911605 11.372438 -0.61311776
9300 2.4471754 -50.234458 -48.928731 24.362769 0.013008072 11.404465 -0.60599097
9400 2.4575396 -50.234822 -48.923565 24.354135 0.013107819 11.452765 -0.60061336
9500 2.4711435 -50.235157 -48.916642 24.354998 0.013210974 11.516163 -0.59323525
9600 2.4877569 -50.235465 -48.908085 24.363855 0.013317688 11.593585 -0.58576008
9700 2.5071778 -50.235743 -48.898 24.380012 0.013428136 11.684092 -0.57821051
9800 2.5292388 -50.235983 -48.886469 24.402788 0.013542514 11.786902 -0.57061067
9900 2.5538131 -50.236185 -48.873559 24.431609 0.013661041 11.901424 -0.56299206
10000 2.5808184 -50.236346 -48.859312 24.466316 0.013783954 12.027276 -0.55538687
Loop time of 14.691 on 1 procs for 10000 steps with 180 atoms
Performance: 0.059 ns/day, 408.083 hours/ns, 680.690 timesteps/s, 122.524 katom-step/s
98.6% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.8924 | 2.8924 | 2.8924 | 0.0 | 19.69
Bond | 0.00092288 | 0.00092288 | 0.00092288 | 0.0 | 0.01
Neigh | 6.5718 | 6.5718 | 6.5718 | 0.0 | 44.73
Comm | 0.55162 | 0.55162 | 0.55162 | 0.0 | 3.75
Output | 0.0029431 | 0.0029431 | 0.0029431 | 0.0 | 0.02
Modify | 4.6104 | 4.6104 | 4.6104 | 0.0 | 31.38
Other | | 0.06102 | | | 0.42
Nlocal: 180 ave 180 max 180 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1510 ave 1510 max 1510 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 13680 ave 13680 max 13680 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 13680
Ave neighs/atom = 76
Ave special neighs/atom = 0
Neighbor list builds = 10000
Dangerous builds not checked
Total wall time: 0:00:14

View File

@ -0,0 +1,197 @@
LAMMPS (8 Feb 2023)
Processor partition = 2
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 32 pad
variable out_freq string 100
variable job_name string H2
units real
atom_style full
pair_style table linear 10000
neighbor 2.0 bin
neigh_modify every 1 delay 0 check no
read_data H2.data
Reading data file ...
orthogonal box = (0 0 0) to (19.71219 19.71219 19.71219)
1 by 1 by 1 MPI processor grid
reading atoms ...
180 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.003 seconds
pair_coeff 1 * pair.table PAIR_H2
WARNING: 5852 of 18000 force values in table PAIR_H2 are inconsistent with -dE/dr.
WARNING: Should only be flagged at inflection points (src/pair_table.cpp:466)
timestep 0.001
velocity all create 1.0 1985 rot yes dist gaussian
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 25.0 nhc 4
thermo_style custom step temp pe etotal pzz f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
thermo ${out_freq}
thermo 100
#dump dcd all dcd ${out_freq} ${job_name}_${ibead}.dcd
#restart ${out_freq} ${job_name}_${ibead}.restart1 ${job_name}_${ibead}.restart2
run 10000
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 0 steps, check = no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 11.55117
ghost atom cutoff = 11.55117
binsize = 5.775585, bins = 4 4 4
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair table, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.97 | 11.97 | 11.97 Mbytes
Step Temp PotEng TotEng Pzz espring T_ring virial
0 1 -50.292986 -49.759421 16.18218 0 0 4.331435e-14
100 1.0008585 -50.292972 -49.758949 16.185544 6.2619058e-07 4.6642574 -0.0025876701
200 1.0034473 -50.292959 -49.757555 16.193637 2.4778684e-06 4.6763219 -0.0051513312
300 1.0078065 -50.292946 -49.755216 16.20654 5.4785827e-06 4.6966366 -0.0076677455
400 1.0140035 -50.292935 -49.751898 16.224472 9.5136721e-06 4.7255165 -0.010116117
500 1.022135 -50.292924 -49.747548 16.247769 1.4445387e-05 4.7634112 -0.012478816
600 1.0323281 -50.292913 -49.742099 16.276857 2.0128019e-05 4.810914 -0.014741354
700 1.044744 -50.292903 -49.735464 16.312269 2.6420278e-05 4.868775 -0.01689316
800 1.0595807 -50.292893 -49.727538 16.354636 3.3193675e-05 4.9379181 -0.018925599
900 1.0770788 -50.292883 -49.718191 16.404759 4.0337059e-05 5.0194633 -0.020834008
1000 1.0975267 -50.292873 -49.707271 16.463535 4.7758112e-05 5.114756 -0.022615739
1100 1.1212696 -50.292864 -49.694594 16.532005 5.5382858e-05 5.2254042 -0.024272115
1200 1.1487191 -50.292855 -49.679939 16.611504 6.3154057e-05 5.3533255 -0.025805429
1300 1.180366 -50.292847 -49.663045 16.703525 7.1029151e-05 5.5008084 -0.027221135
1400 1.2167974 -50.292839 -49.643599 16.809904 7.8978147e-05 5.6705878 -0.028525093
1500 1.2587168 -50.292831 -49.621224 16.932872 8.6981686e-05 5.8659431 -0.029723588
1600 1.3069711 -50.292824 -49.59547 17.075101 9.5029394e-05 6.0908207 -0.030823313
1700 1.362584 -50.292817 -49.56579 17.239763 0.00010311856 6.3499909 -0.031831844
1800 1.4267984 -50.29281 -49.53152 17.430752 0.00011125314 6.6492468 -0.032756757
1900 1.5011313 -50.292803 -49.491852 17.652797 0.00011944307 6.995657 -0.033606551
2000 1.5874422 -50.292796 -49.445792 17.911722 0.00012770381 7.3978879 -0.034390022
2100 1.6880212 -50.292789 -49.39212 18.214723 0.00013605623 7.866612 -0.035116463
2200 1.8057005 -50.292782 -49.329324 18.570726 0.00014452669 8.4150275 -0.035795677
2300 1.9439945 -50.292774 -49.255527 18.990774 0.00015314733 9.0595131 -0.036438481
2400 2.1072765 -50.292765 -49.168396 19.488686 0.00016195668 9.8204493 -0.037057048
2500 2.3009969 -50.292755 -49.065024 20.081627 0.00017100046 10.723236 -0.037663926
2600 2.5319487 -50.292742 -48.941783 20.791154 0.00018033268 11.799531 -0.038274916
2700 2.8085828 -50.292725 -48.794164 21.644055 0.00019001711 13.088716 -0.038907942
2800 3.1413656 -50.292704 -48.616581 22.673549 0.00020012896 14.63957 -0.039579122
2900 3.5431592 -50.292679 -48.402173 23.920341 0.00021075711 16.512031 -0.040310879
3000 4.0295773 -50.292645 -48.142604 25.434299 0.00022200654 18.778864 -0.041129941
3100 4.6192303 -50.292603 -47.827943 27.274622 0.00023400135 21.526798 -0.042063049
3200 5.3337183 -50.292548 -47.446663 29.510189 0.00024688797 24.856495 -0.043138944
3300 6.1971521 -50.292476 -46.985893 32.218076 0.00026083874 28.880319 -0.044388363
3400 7.2349077 -50.292383 -46.432089 35.479408 0.00027605543 33.716526 -0.04584988
3500 8.4712558 -50.292263 -45.772298 39.371841 0.00029277252 39.478225 -0.04755723
3600 9.9255215 -50.292106 -44.996195 43.95768 0.00031125948 46.255476 -0.04955234
3700 11.606583 -50.291907 -44.099041 49.265647 0.00033182131 54.089653 -0.051868152
3800 13.505895 -50.291653 -43.08538 55.269674 0.00035479603 62.940934 -0.060893692
3900 15.589876 -50.291332 -41.973119 61.864426 0.00038054772 72.652823 -0.064129637
4000 17.793337 -50.290932 -40.79703 68.843904 0.00040945342 82.921517 -0.070448746
4100 20.016417 -50.290444 -39.610385 75.893194 0.0004418827 93.281639 -0.087116518
4200 22.127771 -50.289857 -38.483253 82.59793 0.00047816979 103.12109 -0.097527157
4300 23.975968 -50.289169 -37.496432 88.481352 0.00051857989 111.73416 -0.10722194
4400 25.408977 -50.288385 -36.731045 93.065749 0.00056327427 118.41235 -0.11892611
4500 26.298632 -50.287506 -36.255477 95.950674 0.0006122807 122.55837 -0.1303584
4600 26.564268 -50.286547 -36.112784 96.88563 0.00066547749 123.79631 -0.14166752
4700 26.188807 -50.285529 -36.312099 95.820823 0.00072259756 122.04656 -0.15261419
4800 25.222299 -50.284475 -36.826739 92.916226 0.00078325554 117.54238 -0.16209083
4900 23.771855 -50.283413 -37.599583 88.509238 0.00084699472 110.78294 -0.17260047
5000 21.98111 -50.282357 -38.554006 83.049726 0.00091334478 102.43761 -0.18258656
5100 20.005206 -50.281326 -39.607248 77.020285 0.0009818775 93.229392 -0.17186696
5200 17.987631 -50.28033 -40.68276 70.86497 0.0010522474 83.826973 -0.18260146
5300 16.043616 -50.279377 -41.719065 64.938011 0.0011242079 74.767366 -0.18655435
5400 14.252181 -50.278457 -42.673992 59.48099 0.0011976018 66.41882 -0.20222138
5500 12.656323 -50.277568 -43.524597 54.622777 0.0012723319 58.981714 -0.21168712
5600 11.269064 -50.276696 -44.263917 50.401002 0.0013483229 52.516731 -0.20187998
5700 10.082312 -50.275828 -44.896259 46.788408 0.0014254889 46.986161 -0.22324171
5800 9.0757866 -50.274951 -45.432429 43.722025 0.0015037137 42.295494 -0.23860695
5900 8.2242212 -50.274058 -45.885902 41.123761 0.0015828465 38.326981 -0.25414759
6000 7.5021821 -50.273138 -46.270236 38.916656 0.0016627103 34.962093 -0.26976048
6100 6.8866987 -50.272182 -46.597681 37.031655 0.0017431162 32.093783 -0.28539248
6200 6.3583012 -50.27119 -46.878623 35.410368 0.0018238791 29.631315 -0.30095674
6300 5.9011035 -50.270159 -47.121537 34.005676 0.0019048302 27.500656 -0.31640935
6400 5.502422 -50.269086 -47.333186 32.779933 0.0019858256 25.642698 -0.33171137
6500 5.1522361 -50.267972 -47.518919 31.703747 0.0020667509 24.010742 -0.34682514
6600 4.8426527 -50.266817 -47.682947 30.753955 0.0021475225 22.568004 -0.36173006
6700 4.5674405 -50.265625 -47.828599 29.911814 0.0022280866 21.285445 -0.37640709
6800 4.3216522 -50.264395 -47.958513 29.163452 0.0023084174 20.140008 -0.39085666
6900 4.1013282 -50.26313 -48.074805 28.496518 0.0023885139 19.113242 -0.40506248
7000 3.9032702 -50.261831 -48.179183 27.90194 0.0024683969 18.19024 -0.41901469
7100 3.724868 -50.2605 -48.273041 27.371896 0.0025481062 17.35884 -0.43272933
7200 3.5639695 -50.259138 -48.357529 26.89966 0.0026276974 16.609012 -0.44620638
7300 3.4187816 -50.257743 -48.433601 26.480439 0.0027072396 15.932399 -0.45945212
7400 3.2877948 -50.256318 -48.502066 26.109145 0.0027868133 15.321967 -0.47246434
7500 3.1697267 -50.254865 -48.56361 25.781971 0.0028665077 14.77174 -0.48526006
7600 3.0634774 -50.25338 -48.618816 25.495767 0.0029464195 14.276591 -0.49784679
7700 2.9680959 -50.251868 -48.668196 25.247434 0.0030266508 13.832088 -0.51022378
7800 2.8827533 -50.250324 -48.712188 25.034584 0.0031073072 13.43437 -0.52242006
7900 2.8067218 -50.248752 -48.751183 24.854648 0.0031884966 13.080044 -0.53441576
8000 2.739358 -50.247146 -48.78552 24.705902 0.0032703269 12.766111 -0.54625728
8100 2.6800884 -50.245512 -48.815511 24.586269 0.003352905 12.4899 -0.55792685
8200 2.6283988 -50.243847 -48.841426 24.493934 0.0034363346 12.249013 -0.56944906
8300 2.5838233 -50.242148 -48.86351 24.42802 0.0035207151 12.041279 -0.58082697
8400 2.5459368 -50.240416 -48.881994 24.386467 0.0036061405 11.864719 -0.59207404
8500 2.5143471 -50.23866 -48.897093 24.367425 0.0036926982 11.717503 -0.6031939
8600 2.4886884 -50.236867 -48.90899 24.370737 0.0037804687 11.597926 -0.61420631
8700 2.4686158 -50.235045 -48.917878 24.393872 0.003869526 11.504383 -0.62511248
8800 2.4538005 -50.233192 -48.92393 24.436221 0.0039599381 11.43534 -0.63592614
8900 2.4439261 -50.231311 -48.927318 24.495987 0.0040517678 11.389323 -0.64665221
9000 2.4386859 -50.229399 -48.928202 24.571919 0.0041450744 11.364902 -0.65730127
9100 2.4377812 -50.227462 -48.926747 24.662499 0.0042399143 11.360686 -0.66787619
9200 2.4409216 -50.225498 -48.923108 24.766278 0.0043363422 11.375321 -0.67839903
9300 2.447826 -50.223507 -48.917432 24.882071 0.0044344105 11.407497 -0.68886647
9400 2.4582258 -50.22149 -48.909866 25.008577 0.0045341695 11.455963 -0.69927895
9500 2.471869 -50.219451 -48.900548 25.143849 0.0046356651 11.519544 -0.70966102
9600 2.4885255 -50.217386 -48.889596 25.286999 0.004738938 11.597167 -0.6940583
9700 2.5079938 -50.215302 -48.877125 25.436871 0.0048440213 11.687895 -0.70437543
9800 2.5301066 -50.213198 -48.863222 25.59205 0.0049509399 11.790946 -0.71464807
9900 2.5547371 -50.211072 -48.847954 25.752316 0.0050597095 11.90573 -0.72487926
10000 2.5818031 -50.208928 -48.831368 25.916904 0.0051703368 12.031865 -0.73506701
Loop time of 14.691 on 1 procs for 10000 steps with 180 atoms
Performance: 0.059 ns/day, 408.083 hours/ns, 680.690 timesteps/s, 122.524 katom-step/s
96.6% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.9104 | 2.9104 | 2.9104 | 0.0 | 19.81
Bond | 0.00098079 | 0.00098079 | 0.00098079 | 0.0 | 0.01
Neigh | 6.6139 | 6.6139 | 6.6139 | 0.0 | 45.02
Comm | 0.55394 | 0.55394 | 0.55394 | 0.0 | 3.77
Output | 0.0030074 | 0.0030074 | 0.0030074 | 0.0 | 0.02
Modify | 4.5374 | 4.5374 | 4.5374 | 0.0 | 30.89
Other | | 0.07132 | | | 0.49
Nlocal: 180 ave 180 max 180 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1510 ave 1510 max 1510 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 13680 ave 13680 max 13680 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 13680
Ave neighs/atom = 76
Ave special neighs/atom = 0
Neighbor list builds = 10000
Dangerous builds not checked
Total wall time: 0:00:14

View File

@ -0,0 +1,197 @@
LAMMPS (8 Feb 2023)
Processor partition = 3
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 32 pad
variable out_freq string 100
variable job_name string H2
units real
atom_style full
pair_style table linear 10000
neighbor 2.0 bin
neigh_modify every 1 delay 0 check no
read_data H2.data
Reading data file ...
orthogonal box = (0 0 0) to (19.71219 19.71219 19.71219)
1 by 1 by 1 MPI processor grid
reading atoms ...
180 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.003 seconds
pair_coeff 1 * pair.table PAIR_H2
WARNING: 5852 of 18000 force values in table PAIR_H2 are inconsistent with -dE/dr.
WARNING: Should only be flagged at inflection points (src/pair_table.cpp:466)
timestep 0.001
velocity all create 1.0 1985 rot yes dist gaussian
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 25.0 nhc 4
thermo_style custom step temp pe etotal pzz f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
thermo ${out_freq}
thermo 100
#dump dcd all dcd ${out_freq} ${job_name}_${ibead}.dcd
#restart ${out_freq} ${job_name}_${ibead}.restart1 ${job_name}_${ibead}.restart2
run 10000
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 0 steps, check = no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 11.55117
ghost atom cutoff = 11.55117
binsize = 5.775585, bins = 4 4 4
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair table, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.97 | 11.97 | 11.97 Mbytes
Step Temp PotEng TotEng Pzz espring T_ring virial
0 1 -50.292986 -49.759421 16.18218 0 0 4.331435e-14
100 0.99799183 -50.292972 -49.760479 16.176371 6.2763683e-07 15.879159 -0.0023935093
200 0.99208279 -50.292959 -49.763618 16.157336 2.500618e-06 15.785139 -0.0047805057
300 0.98260503 -50.292946 -49.768662 16.126279 5.5906177e-06 15.634338 -0.0071546335
400 0.97006821 -50.292934 -49.775339 16.085102 9.8548762e-06 15.434863 -0.0095106986
500 0.955104 -50.292922 -49.783311 16.036202 1.5241599e-05 15.196766 -0.011844212
600 0.93840578 -50.292908 -49.792208 15.982141 2.1695575e-05 14.931079 -0.014152859
700 0.92067359 -50.292894 -49.801655 15.925466 2.9163075e-05 14.64894 -0.016435757
800 0.90257158 -50.292879 -49.811298 15.868564 3.7595562e-05 14.360917 -0.018694156
900 0.88470062 -50.292862 -49.820817 15.813472 4.6952156e-05 14.07657 -0.020928907
1000 0.8675856 -50.292845 -49.829932 15.761951 5.7201072e-05 13.804251 -0.02314186
1100 0.85167476 -50.292826 -49.838402 15.715517 6.8320318e-05 13.551092 -0.025333843
1200 0.83734746 -50.292806 -49.846027 15.675218 8.0297954e-05 13.323129 -0.027508552
1300 0.8249274 -50.292785 -49.852632 15.642038 9.3132154e-05 13.125512 -0.0296698
1400 0.81469844 -50.292762 -49.858068 15.616792 0.00010683122 12.962757 -0.031821941
1500 0.80692178 -50.292739 -49.862194 15.600226 0.00012141373 12.839022 -0.033969494
1600 0.80185336 -50.292715 -49.864874 15.593117 0.0001369088 12.758378 -0.03611606
1700 0.79976156 -50.29269 -49.865965 15.596227 0.00015335664 12.725095 -0.038264652
1800 0.80094541 -50.292664 -49.865307 15.610404 0.00017080942 12.743931 -0.040416801
1900 0.80575383 -50.292637 -49.862715 15.636702 0.00018933238 12.820439 -0.042573524
2000 0.81460711 -50.292611 -49.857965 15.67644 0.00020900552 12.961304 -0.044736822
2100 0.82802133 -50.292583 -49.85078 15.731301 0.0002299256 13.174739 -0.046906382
2200 0.84663738 -50.292556 -49.84082 15.80341 0.00025220879 13.470941 -0.049081478
2300 0.87125571 -50.292527 -49.827656 15.895377 0.00027599404 13.862646 -0.051261652
2400 0.90287869 -50.292499 -49.810754 16.010541 0.00030144708 14.365803 -0.053443791
2500 0.94276179 -50.29247 -49.789446 16.15309 0.00032876555 15.000388 -0.055625674
2600 0.99247509 -50.292441 -49.762891 16.328426 0.00035818508 15.791381 -0.05780423
2700 1.0539754 -50.292412 -49.730048 16.543118 0.00038998665 16.76992 -0.059974442
2800 1.1296876 -50.292383 -49.689621 16.805367 0.00042450539 17.974586 -0.062128128
2900 1.2225906 -50.292352 -49.640021 17.125302 0.00046214072 19.452774 -0.064255792
3000 1.3362969 -50.292321 -49.57932 17.515126 0.000503368 21.261968 -0.066348705
3100 1.4751081 -50.292289 -49.505223 17.989435 0.0005487512 23.47061 -0.068394944
3200 1.6440125 -50.292255 -49.415068 18.56525 0.00059895625 26.158066 -0.070379528
3300 1.8485766 -50.292217 -49.305881 19.26156 0.00065476359 29.412908 -0.0722905
3400 2.0946636 -50.292172 -49.174533 20.098518 0.0007170785 33.328425 -0.070298499
3500 2.3878963 -50.292118 -49.01802 21.095116 0.00078693603 37.994084 -0.072718799
3600 2.7327825 -50.29205 -48.833933 22.267046 0.00086549715 43.481606 -0.071117313
3700 3.1314509 -50.291962 -48.621129 23.621508 0.00095403112 49.824863 -0.073902505
3800 3.5820285 -50.29185 -48.380605 25.151938 0.0010538788 56.994053 -0.082019029
3900 4.0768347 -50.291704 -48.116448 26.832847 0.0011663922 64.86697 -0.093365693
4000 4.6007622 -50.291519 -47.836714 28.612446 0.0012928467 73.203239 -0.10732489
4100 5.1304133 -50.29129 -47.553881 30.411364 0.0014343275 81.630577 -0.1197723
4200 5.6346502 -50.291011 -47.284558 32.123915 0.0015915962 89.653545 -0.13080997
4300 6.0770777 -50.290676 -47.04816 33.627475 0.0017649532 96.693059 -0.14165463
4400 6.4205234 -50.29029 -46.864523 34.796349 0.0019541156 102.15766 -0.15242678
4500 6.6328782 -50.28986 -46.750789 35.522716 0.0021581361 105.53646 -0.16280564
4600 6.692974 -50.289399 -46.718262 35.736356 0.0023753855 106.49265 -0.17244062
4700 6.5948627 -50.28892 -46.770133 35.418562 0.0026036121 104.93159 -0.18097864
4800 6.3491738 -50.288443 -46.900746 34.606797 0.0028400768 101.02241 -0.18808564
4900 5.981108 -50.287983 -47.096673 33.387033 0.0030817487 95.166073 -0.19348598
5000 5.5256727 -50.287549 -47.339243 31.878041 0.0033255323 87.919593 -0.19697013
5100 5.0215378 -50.287155 -47.607839 30.209726 0.0035684934 79.898246 -0.19841014
5200 4.5051017 -50.286803 -47.883038 28.504102 0.0038080527 71.681174 -0.19776394
5300 4.0060458 -50.286489 -48.149003 26.860164 0.0040421233 63.74064 -0.19507702
5400 3.5450327 -50.286205 -48.394699 25.34642 0.0042691817 56.405409 -0.17980245
5500 3.1335349 -50.28594 -48.613996 23.999815 0.0044882701 49.858022 -0.17499889
5600 2.7752591 -50.28568 -48.804899 22.832197 0.0046989433 44.157456 -0.1804676
5700 2.468384 -50.285415 -48.968371 21.836436 0.0049011768 39.274732 -0.17203381
5800 2.2078676 -50.285131 -49.10709 20.994608 0.0050952576 35.129626 -0.17967923
5900 1.9873283 -50.284819 -49.22445 20.285865 0.0052816779 31.620602 -0.18651596
6000 1.8003086 -50.284474 -49.323892 19.687668 0.0054610429 28.64491 -0.19262321
6100 1.640963 -50.284092 -49.408531 19.181029 0.0056340011 26.109545 -0.1982684
6200 1.50433 -50.283675 -49.481017 18.749125 0.0058011964 23.935562 -0.19911595
6300 1.3863531 -50.283219 -49.543509 18.379087 0.0059632392 22.058419 -0.20020649
6400 1.2837837 -50.28273 -49.597748 18.059898 0.0061206908 20.426426 -0.20439271
6500 1.1940433 -50.282206 -49.645106 17.783505 0.0062740588 18.998556 -0.19989782
6600 1.1150882 -50.281655 -49.686683 17.543117 0.0064237975 17.742293 -0.20427813
6700 1.0452925 -50.281076 -49.723345 17.333683 0.0065703119 16.631765 -0.20875566
6800 0.98335363 -50.28048 -49.755796 17.150648 0.0067139628 15.646249 -0.21165511
6900 0.92821916 -50.279858 -49.784593 16.991122 0.0068550735 14.768998 -0.21447191
7000 0.87903062 -50.279219 -49.810199 16.85215 0.0069939349 13.986354 -0.21690274
7100 0.83508106 -50.27857 -49.833 16.730809 0.0071308114 13.287068 -0.21879935
7200 0.79578318 -50.277905 -49.853302 16.625931 0.007265945 12.661795 -0.24086146
7300 0.76064516 -50.277227 -49.871373 16.535639 0.0073995599 12.10271 -0.24389998
7400 0.72925259 -50.27654 -49.887437 16.458538 0.0075318653 11.603219 -0.24724178
7500 0.70125479 -50.275848 -49.901683 16.39318 0.0076630586 11.157743 -0.24974257
7600 0.67635448 -50.275145 -49.914266 16.338958 0.0077933274 10.761551 -0.26938357
7700 0.65430014 -50.274434 -49.925322 16.294582 0.0079228516 10.410642 -0.27182741
7800 0.63488023 -50.273717 -49.934967 16.259573 0.0080518043 10.10165 -0.27327965
7900 0.61791898 -50.272993 -49.943293 16.233056 0.0081803536 9.8317776 -0.23270163
8000 0.60327334 -50.272261 -49.950375 16.214226 0.0083086629 9.5987492 -0.21174158
8100 0.59083054 -50.271521 -49.956274 16.203107 0.008436892 9.4007703 -0.20591477
8200 0.580506 -50.270774 -49.961036 16.198733 0.0085651973 9.2364955 -0.20633623
8300 0.57224102 -50.270016 -49.964688 16.201153 0.0086937323 9.1049904 -0.21200577
8400 0.56599941 -50.26925 -49.967252 16.209734 0.0088226478 9.0056795 -0.21499276
8500 0.56176264 -50.268474 -49.968737 16.224404 0.0089520921 8.9382678 -0.22565885
8600 0.55952259 -50.267687 -49.969145 16.244765 0.0090822109 8.9026261 -0.23453558
8700 0.55927158 -50.26689 -49.968482 16.270388 0.0092131476 8.8986323 -0.23126478
8800 0.56098987 -50.266078 -49.966754 16.301455 0.009345043 8.9259722 -0.23759225
8900 0.56463156 -50.265253 -49.963985 16.338219 0.0094780352 8.9839155 -0.25830691
9000 0.57011105 -50.264414 -49.960222 16.379852 0.0096122592 9.0711003 -0.24455142
9100 0.57729304 -50.263559 -49.955536 16.42695 0.0097478463 9.1853737 -0.25035816
9200 0.5859895 -50.262689 -49.950026 16.479216 0.0098849239 9.3237441 -0.2560083
9300 0.59596674 -50.261803 -49.943816 16.536984 0.010023615 9.482493 -0.26141076
9400 0.60696386 -50.2609 -49.937045 16.600194 0.010164037 9.6574694 -0.26654733
9500 0.61872142 -50.259982 -49.929854 16.669166 0.010306303 9.8445453 -0.2741745
9600 0.63101587 -50.259043 -49.922355 16.744325 0.010450522 10.040164 -0.27940426
9700 0.64369292 -50.258089 -49.914637 16.82549 0.010596798 10.24187 -0.28435931
9800 0.65669202 -50.257118 -49.906731 16.913131 0.010745233 10.4487 -0.28904477
9900 0.67005575 -50.256133 -49.898615 17.007446 0.01089593 10.661331 -0.29344272
10000 0.68392108 -50.25513 -49.890213 17.108905 0.011048996 10.881944 -0.29755711
Loop time of 14.691 on 1 procs for 10000 steps with 180 atoms
Performance: 0.059 ns/day, 408.083 hours/ns, 680.690 timesteps/s, 122.524 katom-step/s
98.6% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.8325 | 2.8325 | 2.8325 | 0.0 | 19.28
Bond | 0.0010203 | 0.0010203 | 0.0010203 | 0.0 | 0.01
Neigh | 6.5808 | 6.5808 | 6.5808 | 0.0 | 44.80
Comm | 0.55003 | 0.55003 | 0.55003 | 0.0 | 3.74
Output | 0.0030145 | 0.0030145 | 0.0030145 | 0.0 | 0.02
Modify | 4.6599 | 4.6599 | 4.6599 | 0.0 | 31.72
Other | | 0.06363 | | | 0.43
Nlocal: 180 ave 180 max 180 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1510 ave 1510 max 1510 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 13680 ave 13680 max 13680 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 13680
Ave neighs/atom = 76
Ave special neighs/atom = 0
Neighbor list builds = 10000
Dangerous builds not checked
Total wall time: 0:00:14

View File

@ -0,0 +1,197 @@
LAMMPS (8 Feb 2023)
Processor partition = 4
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 32 pad
variable out_freq string 100
variable job_name string H2
units real
atom_style full
pair_style table linear 10000
neighbor 2.0 bin
neigh_modify every 1 delay 0 check no
read_data H2.data
Reading data file ...
orthogonal box = (0 0 0) to (19.71219 19.71219 19.71219)
1 by 1 by 1 MPI processor grid
reading atoms ...
180 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.003 seconds
pair_coeff 1 * pair.table PAIR_H2
WARNING: 5852 of 18000 force values in table PAIR_H2 are inconsistent with -dE/dr.
WARNING: Should only be flagged at inflection points (src/pair_table.cpp:466)
timestep 0.001
velocity all create 1.0 1985 rot yes dist gaussian
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 25.0 nhc 4
thermo_style custom step temp pe etotal pzz f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
thermo ${out_freq}
thermo 100
#dump dcd all dcd ${out_freq} ${job_name}_${ibead}.dcd
#restart ${out_freq} ${job_name}_${ibead}.restart1 ${job_name}_${ibead}.restart2
run 10000
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 0 steps, check = no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 11.55117
ghost atom cutoff = 11.55117
binsize = 5.775585, bins = 4 4 4
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair table, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.97 | 11.97 | 11.97 Mbytes
Step Temp PotEng TotEng Pzz espring T_ring virial
0 1 -50.292986 -49.759421 16.18218 0 0 4.331435e-14
100 0.99799183 -50.292972 -49.760479 16.17637 1.1826193e-13 15.879159 -0.0025913805
200 0.99208279 -50.292959 -49.763618 16.157337 7.489305e-12 15.785139 -0.0051808234
300 0.98260503 -50.292946 -49.768662 16.126285 8.3895453e-11 15.634338 -0.0077662384
400 0.97006821 -50.292933 -49.775339 16.085117 4.6129385e-10 15.434863 -0.010346287
500 0.955104 -50.292921 -49.783311 16.036242 1.7157587e-09 15.196766 -0.012920943
600 0.93840577 -50.292907 -49.792206 15.982224 4.9828406e-09 14.931079 -0.015491155
700 0.92067358 -50.292891 -49.801652 15.925608 1.2201305e-08 14.64894 -0.018055916
800 0.90257157 -50.292875 -49.811294 15.868782 2.6375763e-08 14.360917 -0.020616424
900 0.88470061 -50.292856 -49.820811 15.813794 5.1849593e-08 14.07657 -0.02317448
1000 0.86758559 -50.292836 -49.829923 15.762447 9.4579685e-08 13.804251 -0.025732882
1100 0.85167475 -50.292814 -49.83839 15.716171 1.6240678e-07 13.551092 -0.028294045
1200 0.83734745 -50.29279 -49.846011 15.676049 2.6532099e-07 13.323128 -0.030863385
1300 0.82492738 -50.292764 -49.852612 15.643102 4.1573034e-07 13.125511 -0.033446749
1400 0.81469842 -50.292737 -49.858042 15.618114 6.287493e-07 12.962757 -0.036050518
1500 0.80692176 -50.292706 -49.862161 15.601972 9.2253166e-07 12.839022 -0.038681006
1600 0.80185333 -50.292674 -49.864833 15.595319 1.3186783e-06 12.758377 -0.041346087
1700 0.79976154 -50.292639 -49.865914 15.598922 1.8427553e-06 12.725095 -0.044055451
1800 0.80094538 -50.2926 -49.865244 15.613674 2.524964e-06 12.743931 -0.046819731
1900 0.80575381 -50.292559 -49.862637 15.640669 3.4010112e-06 12.820438 -0.049651934
2000 0.81460709 -50.292514 -49.857868 15.681364 4.5132409e-06 12.961304 -0.052564979
2100 0.82802133 -50.292465 -49.850661 15.73743 5.9121027e-06 13.174739 -0.055577058
2200 0.84663739 -50.29241 -49.840674 15.810925 7.658054e-06 13.470942 -0.058707326
2300 0.87125574 -50.292349 -49.827477 15.904535 9.82402e-06 13.862647 -0.061977077
2400 0.90287875 -50.29228 -49.810536 16.021749 1.2498571e-05 14.365804 -0.065412927
2500 0.94276188 -50.292203 -49.789178 16.16688 1.5790021e-05 15.000389 -0.069043572
2600 0.99247524 -50.292117 -49.762567 16.345151 1.9831692e-05 15.791384 -0.072902664
2700 1.0539756 -50.292019 -49.729655 16.56334 2.4788664e-05 16.769923 -0.077026939
2800 1.1296879 -50.291903 -49.689141 16.830177 3.0866362e-05 17.97459 -0.081462018
2900 1.222591 -50.29177 -49.639438 17.155398 3.8321389e-05 19.45278 -0.086262136
3000 1.3362974 -50.291614 -49.578613 17.551553 4.7474995e-05 21.261976 -0.091484095
3100 1.4751088 -50.291433 -49.504367 18.033555 5.872952e-05 23.47062 -0.097184337
3200 1.6440134 -50.291218 -49.41403 18.618802 7.2587889e-05 26.158079 -0.10344427
3300 1.8485776 -50.290963 -49.304627 19.3265 8.9675809e-05 29.412924 -0.11033444
3400 2.0946648 -50.290659 -49.17302 20.177003 0.00011076549 33.328444 -0.11794183
3500 2.3878978 -50.290296 -49.016197 21.189599 0.00013679846 37.994106 -0.12634541
3600 2.7327842 -50.289862 -48.831744 22.380493 0.0001689033 43.481633 -0.13563052
3700 3.1314527 -50.289342 -48.618508 23.757417 0.00020840179 49.824892 -0.1458703
3800 3.5820304 -50.288721 -48.377475 25.31432 0.00025679499 56.994084 -0.15714078
3900 4.0768367 -50.287983 -48.112726 27.026228 0.0003157187 64.867001 -0.1694959
4000 4.6007641 -50.287108 -47.832302 28.841926 0.0003868587 73.203268 -0.18296156
4100 5.1304148 -50.286087 -47.548677 30.682328 0.00047181946 81.6306 -0.19756083
4200 5.6346511 -50.284903 -47.278451 32.442736 0.00057194846 89.653559 -0.21328268
4300 6.0770778 -50.283545 -47.041029 33.999964 0.00068813116 96.69306 -0.23008376
4400 6.4205225 -50.282013 -46.856246 35.229403 0.00082058594 102.15765 -0.24791296
4500 6.6328762 -50.280301 -46.74123 36.023883 0.0009687004 105.53643 -0.26668503
4600 6.6929711 -50.278423 -46.707288 36.312847 0.0011309529 106.49261 -0.28630381
4700 6.5948589 -50.27639 -46.757604 36.078132 0.0013049526 104.93153 -0.3066628
4800 6.3491697 -50.274211 -46.886517 35.357678 0.0014876083 101.02235 -0.32764627
4900 5.9811042 -50.271915 -47.080607 34.23668 0.0016754063 95.166014 -0.34912704
5000 5.5256699 -50.269516 -47.321212 32.833829 0.001864752 87.919547 -0.37098454
5100 5.0215364 -50.267032 -47.587716 31.279327 0.002052314 79.898224 -0.39310129
5200 4.5051023 -50.264473 -47.860708 29.694368 0.0022353117 71.681183 -0.41536062
5300 4.0060486 -50.261854 -48.124367 28.177158 0.0024117009 63.740684 -0.43765657
5400 3.5450378 -50.259179 -48.367671 26.795368 0.0025802379 56.405491 -0.45989585
5500 3.1335423 -50.256452 -48.584504 25.585853 0.0027404289 49.858139 -0.48198401
5600 2.7752685 -50.253675 -48.772889 24.559285 0.0028923937 44.157606 -0.50383681
5700 2.4683952 -50.250848 -48.933799 23.707506 0.0030366865 39.27491 -0.52540813
5800 2.2078802 -50.247975 -49.069927 23.012724 0.0031741148 35.129826 -0.54664422
5900 1.987342 -50.245052 -49.184676 22.453088 0.0033055867 31.62082 -0.56749825
6000 1.8003231 -50.242086 -49.281496 22.005599 0.0034320005 28.645141 -0.5879444
6100 1.6409782 -50.239078 -49.363509 21.650929 0.0035541789 26.109787 -0.6079799
6200 1.5043457 -50.236031 -49.433365 21.372354 0.0036728367 23.935811 -0.62757526
6300 1.3863692 -50.23295 -49.493232 21.15608 0.0037885737 22.058674 -0.64672985
6400 1.2838 -50.229836 -49.544845 20.99171 0.0039018814 20.426685 -0.66545129
6500 1.1940599 -50.2267 -49.589591 20.870492 0.0040131566 18.998819 -0.68374953
6600 1.115105 -50.223537 -49.628556 20.785791 0.0041227168 17.742559 -0.70162987
6700 1.0453095 -50.220351 -49.66261 20.732525 0.0042308155 16.632035 -0.7190951
6800 0.98337083 -50.217149 -49.692456 20.706334 0.0043376557 15.646523 -0.73616716
6900 0.92823665 -50.213933 -49.718658 20.703509 0.0044434008 14.769276 -0.75286641
7000 0.87904844 -50.210704 -49.741675 20.721268 0.0045481845 13.986637 -0.7692006
7100 0.83509929 -50.207463 -49.761883 20.757758 0.0046521178 13.287358 -0.78517926
7200 0.79580187 -50.204208 -49.779596 20.810709 0.0047552948 12.662092 -0.80082697
7300 0.76066442 -50.200945 -49.795082 20.878241 0.0048577976 12.103016 -0.8161606
7400 0.72927251 -50.197671 -49.808557 20.959362 0.0049596993 11.603536 -0.83120088
7500 0.70127548 -50.194387 -49.820211 21.052437 0.0050610673 11.158072 -0.84595004
7600 0.67637608 -50.191091 -49.830201 21.156826 0.005161965 10.761895 -0.86043159
7700 0.65432278 -50.187783 -49.838659 21.271416 0.0052624536 10.411002 -0.87466503
7800 0.63490405 -50.184459 -49.845696 21.395737 0.0053625933 10.102029 -0.88866261
7900 0.61794415 -50.181125 -49.851412 21.52846 0.0054624448 9.8321781 -0.90243744
8000 0.60330004 -50.177777 -49.855877 21.669443 0.0055620701 9.599174 -0.91600112
8100 0.59085898 -50.174411 -49.859149 21.81797 0.0056615336 9.4012229 -0.92936588
8200 0.58053641 -50.171025 -49.861271 21.974141 0.0057609033 9.2369793 -0.94255403
8300 0.57227364 -50.16762 -49.862274 22.13688 0.0058602524 9.1055094 -0.95557385
8400 0.5660345 -50.164193 -49.862177 22.306138 0.0059596607 9.0062378 -0.9684373
8500 0.56180048 -50.160744 -49.860987 22.48185 0.0060592167 8.9388698 -0.98115048
8600 0.55956345 -50.15727 -49.858706 22.663291 0.0061590199 8.9032763 -0.9937296
8700 0.55931575 -50.15377 -49.855339 22.850832 0.0062591826 8.899335 -1.0061868
8800 0.56103758 -50.150241 -49.850891 23.043918 0.006359832 8.9267313 -1.0185265
8900 0.564683 -50.146681 -49.845386 23.242887 0.0064611118 8.984734 -1.0307694
9000 0.57016633 -50.143095 -49.838874 23.44706 0.0065631821 9.0719798 -1.0429186
9100 0.57735215 -50.139473 -49.831418 23.657034 0.0066662188 9.1863142 -1.0549883
9200 0.58605231 -50.13582 -49.823123 23.872662 0.0067704103 9.3247434 -1.0669874
9300 0.59603298 -50.132131 -49.814109 24.094175 0.0068759533 9.483547 -1.078929
9400 0.60703315 -50.128412 -49.80452 24.321354 0.0069830466 9.6585719 -1.0908215
9500 0.61879332 -50.124656 -49.79449 24.554693 0.0070918841 9.8456893 -1.1026826
9600 0.63108995 -50.120866 -49.784139 24.794372 0.0072026473 10.041342 -1.1145246
9700 0.64376884 -50.117043 -49.773551 25.040354 0.0073154993 10.243078 -1.1263585
9800 0.6567696 -50.113185 -49.762755 25.293643 0.00743058 10.449934 -1.1381891
9900 0.67013503 -50.109296 -49.751736 25.553866 0.0075480045 10.662593 -1.150037
10000 0.68400233 -50.105373 -49.740413 25.821695 0.007667864 10.883237 -1.1619081
Loop time of 14.691 on 1 procs for 10000 steps with 180 atoms
Performance: 0.059 ns/day, 408.083 hours/ns, 680.690 timesteps/s, 122.524 katom-step/s
96.6% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.9541 | 2.9541 | 2.9541 | 0.0 | 20.11
Bond | 0.00096595 | 0.00096595 | 0.00096595 | 0.0 | 0.01
Neigh | 6.6965 | 6.6965 | 6.6965 | 0.0 | 45.58
Comm | 0.55386 | 0.55386 | 0.55386 | 0.0 | 3.77
Output | 0.0030352 | 0.0030352 | 0.0030352 | 0.0 | 0.02
Modify | 4.4131 | 4.4131 | 4.4131 | 0.0 | 30.04
Other | | 0.06945 | | | 0.47
Nlocal: 180 ave 180 max 180 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1510 ave 1510 max 1510 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 13680 ave 13680 max 13680 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 13680
Ave neighs/atom = 76
Ave special neighs/atom = 0
Neighbor list builds = 10000
Dangerous builds not checked
Total wall time: 0:00:14

View File

@ -0,0 +1,197 @@
LAMMPS (8 Feb 2023)
Processor partition = 5
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 32 pad
variable out_freq string 100
variable job_name string H2
units real
atom_style full
pair_style table linear 10000
neighbor 2.0 bin
neigh_modify every 1 delay 0 check no
read_data H2.data
Reading data file ...
orthogonal box = (0 0 0) to (19.71219 19.71219 19.71219)
1 by 1 by 1 MPI processor grid
reading atoms ...
180 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.003 seconds
pair_coeff 1 * pair.table PAIR_H2
WARNING: 5852 of 18000 force values in table PAIR_H2 are inconsistent with -dE/dr.
WARNING: Should only be flagged at inflection points (src/pair_table.cpp:466)
timestep 0.001
velocity all create 1.0 1985 rot yes dist gaussian
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 25.0 nhc 4
thermo_style custom step temp pe etotal pzz f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
thermo ${out_freq}
thermo 100
#dump dcd all dcd ${out_freq} ${job_name}_${ibead}.dcd
#restart ${out_freq} ${job_name}_${ibead}.restart1 ${job_name}_${ibead}.restart2
run 10000
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 0 steps, check = no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 11.55117
ghost atom cutoff = 11.55117
binsize = 5.775585, bins = 4 4 4
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair table, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.97 | 11.97 | 11.97 Mbytes
Step Temp PotEng TotEng Pzz espring T_ring virial
0 1 -50.292986 -49.759421 16.18218 0 0 4.331435e-14
100 0.9951423 -50.292972 -49.761999 16.167253 6.8948763e-13 27.030021 -0.0025924671
200 0.98099313 -50.292959 -49.769535 16.12199 4.364663e-11 26.645702 -0.0051895017
300 0.95873287 -50.292945 -49.781399 16.050646 4.8814317e-10 26.041069 -0.0077954546
400 0.93006021 -50.292933 -49.796685 15.959334 2.6734695e-09 25.262263 -0.010415337
500 0.89689329 -50.29292 -49.814369 15.854928 9.8711643e-09 24.361385 -0.013055676
600 0.86110024 -50.292904 -49.833451 15.743908 2.8339559e-08 23.389175 -0.015723485
700 0.82431428 -50.292887 -49.853062 15.63173 6.8290594e-08 22.389996 -0.018423373
800 0.78784526 -50.292868 -49.872501 15.522613 1.4463127e-07 21.399426 -0.021164155
900 0.7526687 -50.292845 -49.891248 15.419533 2.77427e-07 20.443961 -0.023953669
1000 0.71946253 -50.29282 -49.90894 15.324327 4.9211825e-07 19.542016 -0.026800589
1100 0.6886647 -50.29279 -49.925343 15.237994 8.1957891e-07 18.705487 -0.029714543
1200 0.66053403 -50.292757 -49.940319 15.160974 1.2961277e-06 17.941403 -0.032707733
1300 0.63520454 -50.292719 -49.953796 15.093459 1.963599e-06 17.253404 -0.035794247
1400 0.61273022 -50.292676 -49.965745 15.035373 2.869563e-06 16.642957 -0.03898766
1500 0.59312003 -50.292628 -49.976159 14.9866 4.0677665e-06 16.110306 -0.042305977
1600 0.57636482 -50.292572 -49.985044 14.947135 5.6188557e-06 15.655201 -0.045764398
1700 0.56245786 -50.292508 -49.992401 14.916846 7.5914412e-06 15.277461 -0.049383169
1800 0.55141125 -50.292438 -49.998224 14.895701 1.0063569e-05 14.977413 -0.053180653
1900 0.54326954 -50.292356 -50.002487 14.8841 1.3124682e-05 14.756269 -0.057185281
2000 0.53812235 -50.292262 -50.005139 14.882365 1.6878177e-05 14.616461 -0.06142508
2100 0.53611706 -50.292157 -50.006103 14.891003 2.1444699e-05 14.561993 -0.065932846
2200 0.5374728 -50.292036 -50.005259 14.911208 2.6966349e-05 14.598818 -0.070740681
2300 0.54249683 -50.291895 -50.002438 14.944078 3.3612057e-05 14.73528 -0.075893774
2400 0.55160424 -50.291734 -49.997418 14.991434 4.1584413e-05 14.982655 -0.081441387
2500 0.56534189 -50.291548 -49.989902 15.055565 5.1128356e-05 15.355797 -0.08743341
2600 0.58441729 -50.291332 -49.979508 15.139015 6.2542191e-05 15.873922 -0.093934223
2700 0.60973261 -50.291079 -49.965747 15.245349 7.6191529e-05 16.561536 -0.10101976
2800 0.64242331 -50.290782 -49.948007 15.379156 9.2526793e-05 17.44948 -0.10876973
2900 0.68389894 -50.290432 -49.925527 15.54557 0.00011210502 18.576039 -0.11728634
3000 0.7358813 -50.29002 -49.89738 15.751474 0.00013561664 19.987983 -0.12666711
3100 0.80043068 -50.289531 -49.862449 16.004894 0.00016391766 21.741271 -0.13702882
3200 0.87994476 -50.288947 -49.819439 16.314811 0.00019806723 23.901029 -0.14852041
3300 0.97710684 -50.288249 -49.766899 16.691936 0.00023936963 26.540142 -0.16126751
3400 1.0947513 -50.287415 -49.703294 17.14741 0.00028941795 29.735596 -0.17542667
3500 1.2356068 -50.286413 -49.627136 17.692223 0.00035013447 33.561511 -0.19115489
3600 1.401879 -50.285209 -49.537215 18.336419 0.00042379924 38.077789 -0.20858771
3700 1.5946465 -50.283764 -49.432917 19.085164 0.00051305445 43.313732 -0.22786881
3800 1.8130867 -50.282042 -49.314643 19.93789 0.00062086813 49.246998 -0.24911566
3900 2.0536114 -50.279989 -49.184254 20.885144 0.0007504384 55.780123 -0.27238956
4000 2.3090877 -50.277563 -49.045514 21.903844 0.00090502091 62.71936 -0.29774099
4100 2.5684074 -50.274725 -48.904312 22.957566 0.00108767 69.762993 -0.32513211
4200 2.8167154 -50.271434 -48.768533 23.996177 0.0013008998 76.507527 -0.35448596
4300 3.036538 -50.267666 -48.647475 24.959984 0.0015462956 82.478341 -0.38565277
4400 3.2098498 -50.263408 -48.550744 25.787127 0.0018241308 87.185831 -0.41841744
4500 3.3207993 -50.258668 -48.486806 26.421384 0.0021330655 90.199435 -0.45253018
4600 3.3584953 -50.253474 -48.461498 26.823507 0.0024700053 91.223334 -0.48770345
4700 3.3191098 -50.247864 -48.476903 26.979088 0.002830177 90.153547 -0.523627
4800 3.2066723 -50.24189 -48.530922 26.900395 0.0032074389 87.099523 -0.55998518
4900 3.032313 -50.235626 -48.61769 26.623396 0.0035947863 82.363581 -0.59650144
5000 2.8121843 -50.229136 -48.728653 26.202501 0.0039849754 76.384452 -0.63291394
5100 2.5646536 -50.222488 -48.854078 25.698898 0.0043711592 69.661033 -0.66900289
5200 2.3074927 -50.215744 -48.984547 25.172075 0.0047474367 62.676038 -0.70458409
5300 2.0556743 -50.208948 -49.112112 24.671889 0.0051092373 55.836155 -0.73953676
5400 1.8201204 -50.202145 -49.230993 24.233676 0.0054535012 49.438049 -0.77374738
5500 1.6074397 -50.195362 -49.337688 23.877579 0.0057786579 43.661222 -0.80716644
5600 1.4204402 -50.188613 -49.430716 23.612103 0.0060844379 38.581947 -0.83975723
5700 1.2590781 -50.181911 -49.510111 23.435375 0.0063715815 34.199035 -0.8715173
5800 1.1215024 -50.175255 -49.576861 23.340009 0.0066415095 30.462209 -0.90243963
5900 1.0049565 -50.168645 -49.632435 23.316226 0.0068960167 27.296594 -0.93254359
6000 0.90642655 -50.162073 -49.678436 23.35333 0.0071370232 24.620327 -0.96187362
6100 0.82303426 -50.15554 -49.716398 23.441044 0.0073664003 22.355228 -0.99044001
6200 0.75222945 -50.149036 -49.747672 23.571168 0.0075858646 20.432031 -1.0182716
6300 0.69185157 -50.142555 -49.773408 23.736184 0.0077969274 18.792049 -1.0454141
6400 0.64011849 -50.1361 -49.794555 23.930273 0.0080008828 17.386876 -1.0718977
6500 0.59558258 -50.129659 -49.811877 24.148617 0.0081988179 16.177194 -1.0977481
6600 0.55707711 -50.123229 -49.825992 24.387764 0.0083916354 15.131309 -1.1230042
6700 0.52366443 -50.11681 -49.837401 24.644278 0.0085800803 14.223755 -1.1476911
6800 0.49459087 -50.110398 -49.846502 24.915585 0.0087647672 13.43406 -1.1718456
6900 0.46924933 -50.103993 -49.853618 25.199975 0.0089462046 12.745734 -1.1954836
7000 0.44714908 -50.09759 -49.859007 25.495663 0.0091248169 12.145448 -1.2186489
7100 0.42789171 -50.09119 -49.862882 25.801204 0.0093009621 11.62238 -1.2413589
7200 0.41115213 -50.084791 -49.865415 26.115435 0.0094749465 11.1677 -1.2636357
7300 0.39666341 -50.078389 -49.866743 26.43778 0.0096470373 10.774158 -1.2855199
7400 0.38420469 -50.071981 -49.866983 26.767492 0.0098174711 10.435755 -1.3070246
7500 0.37359146 -50.065568 -49.866233 27.103933 0.0099864621 10.147478 -1.3281809
7600 0.36466763 -50.059148 -49.864574 27.446285 0.010154207 9.9050896 -1.3490095
7700 0.35729911 -50.052716 -49.862074 27.794551 0.010320892 9.7049462 -1.3695395
7800 0.35136861 -50.046271 -49.858793 28.148371 0.010486691 9.5438621 -1.3897895
7900 0.34677153 -50.039813 -49.854788 28.507205 0.010651775 9.4189963 -1.4097881
8000 0.34341297 -50.033336 -49.850103 28.870887 0.010816309 9.3277714 -1.4295506
8100 0.34120579 -50.026841 -49.844785 29.238802 0.010980456 9.2678199 -1.4491058
8200 0.3400696 -50.020321 -49.838872 29.611242 0.011144377 9.2369587 -1.4684765
8300 0.33993073 -50.013777 -49.832402 29.987651 0.011308235 9.2331869 -1.4876802
8400 0.34072278 -50.007208 -49.82541 30.367811 0.011472193 9.2547003 -1.5067423
8500 0.34238718 -50.000608 -49.817922 30.75172 0.011636417 9.2999089 -1.5256766
8600 0.34487349 -49.993976 -49.809964 31.138912 0.011801076 9.3674418 -1.5445114
8700 0.34813839 -49.987308 -49.801554 31.529558 0.011966343 9.4561231 -1.5632615
8800 0.35214326 -49.980605 -49.792714 31.923412 0.012132398 9.5649031 -1.5819515
8900 0.35684992 -49.973862 -49.783459 32.320438 0.012299427 9.6927453 -1.6005873
9000 0.36221521 -49.967079 -49.773813 32.720589 0.012467623 9.8384771 -1.6191906
9100 0.36818518 -49.96025 -49.763799 33.12412 0.012637186 10.000633 -1.6377754
9200 0.3746904 -49.953378 -49.753456 33.530521 0.012808324 10.177328 -1.6563518
9300 0.3816439 -49.946457 -49.742826 33.940033 0.01298125 10.366198 -1.6749285
9400 0.3889426 -49.939487 -49.73196 34.352706 0.013156185 10.564445 -1.6935206
9500 0.39647284 -49.932468 -49.720924 34.768109 0.01333335 10.768982 -1.712126
9600 0.40411904 -49.925391 -49.709767 35.186397 0.013512971 10.976668 -1.7307508
9700 0.41177414 -49.918266 -49.698558 35.606965 0.013695276 11.184595 -1.7493922
9800 0.41934973 -49.911084 -49.687333 36.03058 0.013880493 11.390363 -1.7680484
9900 0.42678411 -49.903846 -49.676129 36.456503 0.014068856 11.592295 -1.7867244
10000 0.43404714 -49.896555 -49.664963 36.884919 0.014260602 11.789574 -1.8054063
Loop time of 14.691 on 1 procs for 10000 steps with 180 atoms
Performance: 0.059 ns/day, 408.083 hours/ns, 680.690 timesteps/s, 122.524 katom-step/s
98.3% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.9459 | 2.9459 | 2.9459 | 0.0 | 20.05
Bond | 0.0010983 | 0.0010983 | 0.0010983 | 0.0 | 0.01
Neigh | 6.4646 | 6.4646 | 6.4646 | 0.0 | 44.00
Comm | 0.54538 | 0.54538 | 0.54538 | 0.0 | 3.71
Output | 0.0030317 | 0.0030317 | 0.0030317 | 0.0 | 0.02
Modify | 4.662 | 4.662 | 4.662 | 0.0 | 31.73
Other | | 0.06897 | | | 0.47
Nlocal: 180 ave 180 max 180 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1510 ave 1510 max 1510 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 13680 ave 13680 max 13680 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 13680
Ave neighs/atom = 76
Ave special neighs/atom = 0
Neighbor list builds = 10000
Dangerous builds not checked
Total wall time: 0:00:14

View File

@ -0,0 +1,197 @@
LAMMPS (8 Feb 2023)
Processor partition = 6
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 32 pad
variable out_freq string 100
variable job_name string H2
units real
atom_style full
pair_style table linear 10000
neighbor 2.0 bin
neigh_modify every 1 delay 0 check no
read_data H2.data
Reading data file ...
orthogonal box = (0 0 0) to (19.71219 19.71219 19.71219)
1 by 1 by 1 MPI processor grid
reading atoms ...
180 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.003 seconds
pair_coeff 1 * pair.table PAIR_H2
WARNING: 5852 of 18000 force values in table PAIR_H2 are inconsistent with -dE/dr.
WARNING: Should only be flagged at inflection points (src/pair_table.cpp:466)
timestep 0.001
velocity all create 1.0 1985 rot yes dist gaussian
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 25.0 nhc 4
thermo_style custom step temp pe etotal pzz f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
thermo ${out_freq}
thermo 100
#dump dcd all dcd ${out_freq} ${job_name}_${ibead}.dcd
#restart ${out_freq} ${job_name}_${ibead}.restart1 ${job_name}_${ibead}.restart2
run 10000
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 0 steps, check = no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 11.55117
ghost atom cutoff = 11.55117
binsize = 5.775585, bins = 4 4 4
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair table, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.97 | 11.97 | 11.97 Mbytes
Step Temp PotEng TotEng Pzz espring T_ring virial
0 1 -50.292986 -49.759421 16.18218 0 0 4.331435e-14
100 0.9951423 -50.292972 -49.761999 16.167254 3.663073e-06 27.030021 -0.0025950927
200 0.98099313 -50.292958 -49.769535 16.121999 1.4652294e-05 26.645702 -0.0052104718
300 0.95873287 -50.292945 -49.781399 16.050672 3.2966429e-05 26.041069 -0.0078660339
400 0.93006021 -50.292932 -49.796684 15.959387 5.8599875e-05 25.262263 -0.010582044
500 0.89689329 -50.292917 -49.814366 15.855074 9.1539141e-05 24.361385 -0.013380753
600 0.86110024 -50.292898 -49.833445 15.744205 0.00013176059 23.389175 -0.016282487
700 0.82431428 -50.292877 -49.853052 15.632253 0.00017923062 22.389996 -0.019305323
800 0.78784526 -50.29285 -49.872483 15.523595 0.00023390859 21.399426 -0.022473781
900 0.7526687 -50.292816 -49.891219 15.421094 0.00029575217 20.443961 -0.025805439
1000 0.71946253 -50.292776 -49.908896 15.326586 0.0003647244 19.542016 -0.029318877
1100 0.6886647 -50.292726 -49.925279 15.241234 0.00044080156 18.705487 -0.033035613
1200 0.66053404 -50.292668 -49.94023 15.165485 0.00052398138 17.941403 -0.036980816
1300 0.63520455 -50.292595 -49.953672 15.099745 0.00061429107 17.253404 -0.041183239
1400 0.61273022 -50.292511 -49.965579 15.043883 0.00071179519 16.642957 -0.045662316
1500 0.59312004 -50.29241 -49.975942 14.99787 0.00081660341 16.110306 -0.050440479
1600 0.57636482 -50.292289 -49.984761 14.961722 0.00092887845 15.655202 -0.055550832
1700 0.56245787 -50.292149 -49.992041 14.935319 0.0010488445 15.277461 -0.061027295
1800 0.55141126 -50.291984 -49.99777 14.919091 0.0011767964 14.977414 -0.066900795
1900 0.54326956 -50.291792 -50.001923 14.913094 0.0013131107 14.756269 -0.073216193
2000 0.53812238 -50.29157 -50.004447 14.917947 0.0014582582 14.616462 -0.080017237
2100 0.53611709 -50.291312 -50.005259 14.934473 0.0016128191 14.561994 -0.087363239
2200 0.53747284 -50.291009 -50.004233 14.964038 0.0017775021 14.598819 -0.095297839
2300 0.54249688 -50.290657 -50.001199 15.008081 0.0019531669 14.735282 -0.10390758
2400 0.5516043 -50.290246 -49.995929 15.068555 0.0021408527 14.982657 -0.11326027
2500 0.56534197 -50.289766 -49.988119 15.147769 0.0023418123 15.355799 -0.12345646
2600 0.58441738 -50.289207 -49.977382 15.249155 0.0025575544 15.873925 -0.13459188
2700 0.60973272 -50.28855 -49.963218 15.376625 0.0027898943 16.561539 -0.14680402
2800 0.64242344 -50.287778 -49.945003 15.535379 0.0030410156 17.449483 -0.16021499
2900 0.68389909 -50.286869 -49.921964 15.731194 0.003313542 18.576043 -0.1749965
3000 0.73588147 -50.28579 -49.893149 15.972304 0.0036106211 19.987987 -0.19131687
3100 0.80043087 -50.284508 -49.857426 16.267625 0.0039360184 21.741276 -0.20938994
3200 0.87994497 -50.282984 -49.813476 16.627323 0.0042942181 23.901035 -0.229419
3300 0.97710707 -50.281162 -49.759812 17.064318 0.0046905236 26.540149 -0.25165651
3400 1.0947515 -50.278979 -49.694858 17.591402 0.0051311469 29.735603 -0.27634359
3500 1.2356071 -50.276358 -49.617081 18.222808 0.0056232657 33.561517 -0.30373125
3600 1.4018792 -50.273211 -49.525217 18.97057 0.0061750242 38.077795 -0.33406344
3700 1.5946467 -50.269438 -49.41859 19.844391 0.0067954397 43.313738 -0.36756248
3800 1.8130868 -50.264926 -49.297526 20.847335 0.0074941739 49.247003 -0.4044001
3900 2.0536116 -50.259558 -49.163823 21.972799 0.0082811282 55.780127 -0.44468343
4000 2.3090877 -50.253214 -49.021165 23.203274 0.0091658295 62.719362 -0.48844585
4100 2.5684074 -50.245778 -48.875365 24.50535 0.010156603 69.762993 -0.53559997
4200 2.8167153 -50.237155 -48.734254 25.832794 0.011259571 76.507524 -0.58595872
4300 3.0365377 -50.22728 -48.607089 27.128084 0.012477576 82.478334 -0.63920669
4400 3.2098494 -50.216129 -48.503465 28.32938 0.013809186 87.18582 -0.69492156
4500 3.3207987 -50.203729 -48.431867 29.380289 0.015247971 90.19942 -0.75258375
4600 3.3584946 -50.190151 -48.398176 30.239405 0.016782256 91.223315 -0.81162394
4700 3.319109 -50.175529 -48.404569 30.887433 0.01839546 90.153525 -0.87142276
4800 3.2066714 -50.160034 -48.449067 31.329923 0.020067061 87.099499 -0.93139568
4900 3.0323121 -50.14386 -48.525924 31.596801 0.021774071 82.363558 -0.99098372
5000 2.8121835 -50.127216 -48.626733 31.734704 0.02349282 76.384432 -1.04971
5100 2.5646531 -50.11031 -48.741901 31.798135 0.025200765 69.661019 -1.1071803
5200 2.3074925 -50.093317 -48.86212 31.840218 0.026878076 62.676032 -1.16309
5300 2.0556744 -50.076391 -48.979555 31.905031 0.028508785 55.836159 -1.217247
5400 1.820121 -50.059654 -49.088501 32.023732 0.030081384 49.438064 -1.2695269
5500 1.6074407 -50.04318 -49.185506 32.214415 0.031588873 43.661248 -1.319891
5600 1.4204416 -50.02701 -49.269112 32.484092 0.033028319 38.581985 -1.3683615
5700 1.2590798 -50.011162 -49.339361 32.830285 0.034400107 34.199083 -1.4149934
5800 1.1215045 -49.995631 -49.397236 33.245821 0.035707041 30.462267 -1.4598878
5900 1.0049589 -49.980399 -49.444188 33.721747 0.03695346 27.29666 -1.5031416
6000 0.90642926 -49.965438 -49.4818 34.248321 0.038144494 24.620401 -1.5448741
6100 0.82303723 -49.950718 -49.511574 34.817039 0.039285497 22.355309 -1.585191
6200 0.75223267 -49.936211 -49.534846 35.419814 0.040381668 20.432118 -1.6242074
6300 0.69185501 -49.921889 -49.552739 36.050843 0.041437835 18.792142 -1.6620216
6400 0.64012215 -49.907725 -49.566179 36.704661 0.042458347 17.386976 -1.6987306
6500 0.59558646 -49.893699 -49.575915 37.378286 0.04344705 16.177299 -1.7344148
6600 0.55708121 -49.879794 -49.582555 38.067181 0.044407312 15.131421 -1.7691453
6700 0.52366875 -49.865988 -49.586576 38.769884 0.045342063 14.223873 -1.8030059
6800 0.49459542 -49.852276 -49.588377 39.48355 0.046253857 13.434184 -1.8360506
6900 0.46925412 -49.838637 -49.58826 40.206955 0.047144922 12.745864 -1.8683386
7000 0.44715411 -49.825066 -49.58648 40.938794 0.048017218 12.145585 -1.8999205
7100 0.427897 -49.811553 -49.583243 41.677982 0.048872484 11.622524 -1.9308529
7200 0.4111577 -49.798086 -49.578707 42.423605 0.049712274 11.167851 -1.9611851
7300 0.39666926 -49.784662 -49.573013 43.175155 0.050538 10.774317 -1.9909515
7400 0.38421083 -49.771272 -49.56627 43.931762 0.051350953 10.435921 -2.0202015
7500 0.37359789 -49.757907 -49.558568 44.69348 0.052152332 10.147653 -2.0489622
7600 0.36467436 -49.744563 -49.549985 45.459725 0.052943262 9.9052723 -2.0772881
7700 0.35730613 -49.731235 -49.540589 46.229921 0.053724811 9.7051368 -2.1052027
7800 0.3513759 -49.717911 -49.530429 47.004627 0.054498005 9.54406 -2.1327445
7900 0.34677906 -49.704589 -49.51956 47.78318 0.055263836 9.419201 -2.1599468
8000 0.34342073 -49.691262 -49.508025 48.565675 0.056023277 9.327982 -2.1868375
8100 0.34121371 -49.677922 -49.495862 49.351802 0.056777286 9.2680351 -2.2134444
8200 0.34007764 -49.664566 -49.483112 50.141603 0.057526819 9.2371771 -2.2397997
8300 0.33993883 -49.651181 -49.469802 50.935241 0.05827283 9.2334067 -2.2659331
8400 0.34073085 -49.637766 -49.455963 51.732654 0.059016284 9.2549196 -2.2918688
8500 0.34239516 -49.62431 -49.441619 52.534019 0.059758157 9.3001256 -2.317626
8600 0.3448813 -49.610812 -49.426796 53.338612 0.060499441 9.367654 -2.3432261
8700 0.34814597 -49.597265 -49.411506 54.147073 0.061241149 9.4563288 -2.3686991
8800 0.35215054 -49.583658 -49.395763 54.959512 0.061984314 9.5651009 -2.3940587
8900 0.35685687 -49.569985 -49.379579 55.776434 0.062729991 9.692934 -2.419329
9000 0.36222181 -49.556241 -49.362972 56.597626 0.063479254 9.8386562 -2.4445253
9100 0.36819143 -49.54242 -49.345966 57.423306 0.064233198 10.000803 -2.469667
9200 0.37469636 -49.528518 -49.328593 58.253634 0.064992931 10.17749 -2.4947681
9300 0.38164964 -49.514521 -49.310886 59.088869 0.065759574 10.366354 -2.5198522
9400 0.38894823 -49.500427 -49.292898 59.929378 0.066534253 10.564598 -2.5449285
9500 0.3964785 -49.486229 -49.274681 60.775174 0.067318101 10.769135 -2.5700196
9600 0.4041249 -49.471917 -49.25629 61.626259 0.068112253 10.976827 -2.5951326
9700 0.41178035 -49.457494 -49.237782 62.482132 0.06891785 11.184764 -2.6202815
9800 0.41935645 -49.44294 -49.219186 63.343831 0.069736042 11.390545 -2.6454805
9900 0.42679147 -49.428257 -49.200536 64.211037 0.070567996 11.592495 -2.670741
10000 0.43405521 -49.413432 -49.181835 65.08463 0.071414903 11.789793 -2.6960774
Loop time of 14.691 on 1 procs for 10000 steps with 180 atoms
Performance: 0.059 ns/day, 408.083 hours/ns, 680.690 timesteps/s, 122.524 katom-step/s
95.3% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 3.1084 | 3.1084 | 3.1084 | 0.0 | 21.16
Bond | 0.0010414 | 0.0010414 | 0.0010414 | 0.0 | 0.01
Neigh | 6.6306 | 6.6306 | 6.6306 | 0.0 | 45.13
Comm | 0.56093 | 0.56093 | 0.56093 | 0.0 | 3.82
Output | 0.002951 | 0.002951 | 0.002951 | 0.0 | 0.02
Modify | 4.3177 | 4.3177 | 4.3177 | 0.0 | 29.39
Other | | 0.06942 | | | 0.47
Nlocal: 180 ave 180 max 180 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1510 ave 1510 max 1510 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 13680 ave 13680 max 13680 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 13680
Ave neighs/atom = 76
Ave special neighs/atom = 0
Neighbor list builds = 10000
Dangerous builds not checked
Total wall time: 0:00:14

View File

@ -0,0 +1,197 @@
LAMMPS (8 Feb 2023)
Processor partition = 7
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 32 pad
variable out_freq string 100
variable job_name string H2
units real
atom_style full
pair_style table linear 10000
neighbor 2.0 bin
neigh_modify every 1 delay 0 check no
read_data H2.data
Reading data file ...
orthogonal box = (0 0 0) to (19.71219 19.71219 19.71219)
1 by 1 by 1 MPI processor grid
reading atoms ...
180 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.002 seconds
pair_coeff 1 * pair.table PAIR_H2
WARNING: 5852 of 18000 force values in table PAIR_H2 are inconsistent with -dE/dr.
WARNING: Should only be flagged at inflection points (src/pair_table.cpp:466)
timestep 0.001
velocity all create 1.0 1985 rot yes dist gaussian
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 25.0 nhc 4
thermo_style custom step temp pe etotal pzz f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
thermo ${out_freq}
thermo 100
#dump dcd all dcd ${out_freq} ${job_name}_${ibead}.dcd
#restart ${out_freq} ${job_name}_${ibead}.restart1 ${job_name}_${ibead}.restart2
run 10000
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 0 steps, check = no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 11.55117
ghost atom cutoff = 11.55117
binsize = 5.775585, bins = 4 4 4
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair table, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.97 | 11.97 | 11.97 Mbytes
Step Temp PotEng TotEng Pzz espring T_ring virial
0 1 -50.292986 -49.759421 16.18218 0 0 4.331435e-14
100 0.99396717 -50.292908 -49.762562 16.16754 3.6546345e-06 31.630244 -0.01511026
200 0.97647843 -50.292785 -49.77177 16.117482 1.4519126e-05 31.073714 -0.030258999
300 0.94920978 -50.292584 -49.786119 16.040198 3.2307193e-05 30.205965 -0.045469889
400 0.91451321 -50.292301 -49.804349 15.94486 5.6578376e-05 29.101843 -0.060775514
500 0.87495051 -50.291935 -49.825092 15.839811 8.6783378e-05 27.84287 -0.07621024
600 0.83290521 -50.291484 -49.847075 15.733867 0.00012231241 26.504895 -0.091795014
700 0.79035049 -50.290943 -49.869239 15.633262 0.0001625386 25.150709 -0.10756384
800 0.74877056 -50.29031 -49.890792 15.542706 0.00020685191 23.827543 -0.12353621
900 0.70918842 -50.289582 -49.911184 15.465561 0.00025468227 22.567951 -0.13974782
1000 0.67224667 -50.288756 -49.930069 15.403036 0.00030551305 21.392383 -0.15621567
1100 0.63830199 -50.287828 -49.947252 15.356514 0.00035888685 20.312188 -0.17298512
1200 0.60751172 -50.286791 -49.962644 15.325845 0.0004144061 19.332373 -0.19008041
1300 0.57990404 -50.285641 -49.976225 15.311509 0.00047173031 18.453835 -0.20753645
1400 0.5554312 -50.284374 -49.988015 15.313263 0.00053057146 17.675055 -0.22539174
1500 0.53400813 -50.282975 -49.998047 15.33133 0.00059068877 16.993325 -0.24369544
1600 0.51553984 -50.281444 -50.00637 15.365561 0.00065188331 16.405623 -0.26248285
1700 0.49994085 -50.279767 -50.013016 15.416271 0.00071399304 15.909229 -0.28182209
1800 0.48714931 -50.277932 -50.018006 15.48387 0.00077688833 15.502174 -0.30176215
1900 0.47713797 -50.275928 -50.021344 15.569019 0.00084046832 15.183591 -0.32238808
2000 0.46992375 -50.273735 -50.023 15.673314 0.00090465799 14.954018 -0.3437631
2100 0.46557711 -50.271332 -50.022917 15.797801 0.00096940607 14.815698 -0.36598703
2200 0.46423244 -50.2687 -50.021002 15.944553 0.0010346838 14.772908 -0.38915619
2300 0.46610038 -50.26581 -50.017115 16.115839 0.0011004847 14.83235 -0.41338963
2400 0.47148286 -50.262625 -50.011058 16.314677 0.0011668255 15.003632 -0.43882597
2500 0.48079165 -50.259109 -50.002575 16.545079 0.0012337477 15.299859 -0.46562537
2600 0.49457102 -50.255212 -49.991327 16.811386 0.0013013219 15.738349 -0.49395245
2700 0.51352449 -50.250875 -49.976877 17.11979 0.0013696525 16.341491 -0.52401609
2800 0.53854543 -50.246032 -49.958683 17.477089 0.0014388859 17.137712 -0.55604082
2900 0.57074936 -50.240596 -49.936064 17.892199 0.0015092207 18.162513 -0.59030618
3000 0.61150422 -50.234467 -49.90819 18.375616 0.001580922 19.459423 -0.62708735
3100 0.66245096 -50.227523 -49.874062 18.939819 0.0016543394 21.080662 -0.66672955
3200 0.72550205 -50.219616 -49.832514 19.60023 0.0017299293 23.087088 -0.70958417
3300 0.80279929 -50.210579 -49.782233 20.37383 0.0018082826 25.546857 -0.75603924
3400 0.89660476 -50.200203 -49.721806 21.28012 0.0018901552 28.531956 -0.80651501
3500 1.0090938 -50.188252 -49.649835 22.340233 0.0019765002 32.111606 -0.86141363
3600 1.1420183 -50.174459 -49.565118 23.57558 0.0020684981 36.34156 -0.92115194
3700 1.2962221 -50.158518 -49.466899 25.006266 0.0021675754 41.248667 -0.98609175
3800 1.4710194 -50.140107 -49.355223 26.648455 0.0022754045 46.811106 -1.0565325
3900 1.6635051 -50.118886 -49.231298 28.511102 0.0023938687 52.936429 -1.1326688
4000 1.8679372 -50.094526 -49.097861 30.592386 0.0025249809 59.441913 -1.214555
4100 2.075405 -50.066723 -48.95936 32.878933 0.0026707445 66.044 -1.3020682
4200 2.2740293 -50.035234 -48.821891 35.342354 0.0028329538 72.364666 -1.394874
4300 2.449883 -49.999912 -48.69274 37.94169 0.0030129483 77.96072 -1.4924536
4400 2.5886538 -49.960721 -48.579506 40.62924 0.0032113484 82.376716 -1.5940701
4500 2.6778127 -49.917775 -48.488988 43.35421 0.0034278221 85.21395 -1.6987968
4600 2.7088053 -49.871336 -48.426012 46.071925 0.0036609337 86.200203 -1.8055903
4700 2.6786752 -49.821807 -48.39256 48.749456 0.0039081229 85.241397 -1.9133555
4800 2.5906421 -49.769708 -48.387433 51.369043 0.0041658356 82.439989 -2.0209603
4900 2.4534656 -49.71564 -48.406557 53.929171 0.0044297991 78.074727 -2.1273728
5000 2.2797967 -49.660246 -48.443826 56.439389 0.0046953978 72.548196 -2.2316692
5100 2.0839917 -49.60414 -48.492195 58.917167 0.0049580886 66.317246 -2.3330819
5200 1.8799454 -49.547898 -48.544825 61.38072 0.0052137855 59.824039 -2.4310487
5300 1.6794028 -49.492001 -48.59593 63.845702 0.0054591569 53.442329 -2.5251887
5400 1.4910004 -49.436812 -48.641266 66.323664 0.0056917984 47.446947 -2.6153153
5500 1.3200581 -49.382602 -48.678265 68.81759 0.0059102724 42.007182 -2.7013892
5600 1.1689597 -49.32954 -48.705824 71.326608 0.0061140319 37.198896 -2.7834961
5700 1.0378669 -49.277687 -48.723917 73.847293 0.0063032634 33.027232 -2.8618238
5800 0.92551081 -49.227051 -48.733231 76.373912 0.0064786911 29.451811 -2.9366159
5900 0.82988009 -49.177354 -48.734559 78.907054 0.0066413821 26.408629 -3.0079862
6000 0.74872148 -49.128988 -48.729496 81.429069 0.0067925784 23.825981 -3.0765541
6100 0.6798481 -49.081399 -48.718656 83.949013 0.0069335708 21.634277 -3.1425093
6200 0.62129621 -49.034965 -48.703463 86.450184 0.0070656124 19.771026 -3.2059256
6300 0.5713815 -48.989354 -48.684484 88.938306 0.0071898691 18.182629 -3.2671248
6400 0.52869861 -48.944483 -48.662388 91.411964 0.0073073957 16.824365 -3.326325
6500 0.49209369 -48.900284 -48.63772 93.869881 0.00741913 15.659515 -3.383704
6600 0.4606278 -48.85645 -48.610675 96.319181 0.0075258972 14.6582 -3.4393879
6700 0.4335401 -48.813153 -48.581831 98.754093 0.0076284202 13.796209 -3.4935699
6800 0.41021495 -48.770575 -48.551698 101.16784 0.0077273325 13.053951 -3.546418
6900 0.39015391 -48.728202 -48.520029 103.57385 0.0078231904 12.415565 -3.5980989
7000 0.37295279 -48.686464 -48.487469 105.95986 0.0079164859 11.868187 -3.6485312
7100 0.35828286 -48.645075 -48.453908 108.33347 0.008007657 11.401357 -3.6979091
7200 0.34587564 -48.603786 -48.419239 110.70102 0.0080970974 11.006532 -3.7462688
7300 0.33551045 -48.563011 -48.383994 113.05147 0.0081851643 10.676688 -3.7937749
7400 0.32700405 -48.5225 -48.348023 115.39114 0.008272185 10.405996 -3.8404567
7500 0.32020193 -48.481991 -48.311143 117.72756 0.0083584619 10.189537 -3.8863461
7600 0.31497086 -48.441913 -48.273856 120.0495 0.008444277 10.023073 -3.9315862
7700 0.31119256 -48.401778 -48.235736 122.37022 0.0085298943 9.9028389 -3.9761586
7800 0.30875834 -48.362027 -48.197284 124.67777 0.0086155626 9.8253766 -4.020194
7900 0.30756489 -48.322398 -48.158292 126.9798 0.0087015164 9.7873982 -4.0637137
8000 0.30751134 -48.282865 -48.118788 129.27742 0.0087879767 9.7856943 -4.1067668
8100 0.30849789 -48.243167 -48.078563 131.57737 0.0088751511 9.8170884 -4.1492332
8200 0.31042593 -48.203515 -48.037882 133.87491 0.0089632335 9.8784428 -4.1915847
8300 0.31319977 -48.163874 -47.996762 136.17056 0.0090524039 9.9667128 -4.2336145
8400 0.3167294 -48.124228 -47.955232 138.46555 0.0091428273 10.079033 -4.2753558
8500 0.32093339 -48.084773 -47.913534 140.75426 0.0092346543 10.212814 -4.3167737
8600 0.32574097 -48.045251 -47.871447 143.04447 0.0093280205 10.365802 -4.3579897
8700 0.33109202 -48.005633 -47.828974 145.33751 0.0094230472 10.536084 -4.3990428
8800 0.33693414 -47.965895 -47.786118 147.63516 0.0095198428 10.721993 -4.4399711
8900 0.34321684 -47.926004 -47.742875 149.9379 0.009618504 10.921922 -4.4808086
9000 0.34988367 -47.885934 -47.699248 152.24678 0.0097191181 11.134076 -4.5215921
9100 0.35686443 -47.845658 -47.655247 154.56358 0.0098217652 11.356219 -4.5623394
9200 0.3640698 -47.805147 -47.610893 156.88915 0.0099265208 11.58551 -4.6030874
9300 0.37139091 -47.764138 -47.565977 159.23099 0.010033457 11.818484 -4.6439479
9400 0.37870543 -47.722844 -47.52078 161.5788 0.010142648 12.051248 -4.6846276
9500 0.38588975 -47.68146 -47.475562 163.93728 0.010254165 12.279869 -4.7255143
9600 0.39283543 -47.639735 -47.430132 166.30871 0.010368088 12.500896 -4.7664862
9700 0.39946605 -47.597406 -47.384265 168.70114 0.010484497 12.711897 -4.8075181
9800 0.40575037 -47.55491 -47.338416 171.10373 0.010603483 12.911878 -4.848721
9900 0.41170816 -47.511756 -47.292083 173.53055 0.010725141 13.101469 -4.8900195
10000 0.41740707 -47.468384 -47.245671 175.97095 0.010849577 13.282821 -4.9315123
Loop time of 14.691 on 1 procs for 10000 steps with 180 atoms
Performance: 0.059 ns/day, 408.083 hours/ns, 680.690 timesteps/s, 122.524 katom-step/s
97.9% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.9822 | 2.9822 | 2.9822 | 0.0 | 20.30
Bond | 0.00090722 | 0.00090722 | 0.00090722 | 0.0 | 0.01
Neigh | 6.5119 | 6.5119 | 6.5119 | 0.0 | 44.33
Comm | 0.55377 | 0.55377 | 0.55377 | 0.0 | 3.77
Output | 0.0024523 | 0.0024523 | 0.0024523 | 0.0 | 0.02
Modify | 4.5713 | 4.5713 | 4.5713 | 0.0 | 31.12
Other | | 0.06845 | | | 0.47
Nlocal: 180 ave 180 max 180 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1510 ave 1510 max 1510 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 13712 ave 13712 max 13712 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 13712
Ave neighs/atom = 76.177778
Ave special neighs/atom = 0
Neighbor list builds = 10000
Dangerous builds not checked
Total wall time: 0:00:14

View File

@ -0,0 +1,2 @@
LAMMPS (8 Feb 2023)
Running on 8 partitions of processors

View File

@ -0,0 +1,148 @@
LAMMPS (8 Feb 2023)
Processor partition = 0
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 8 pad
units real
neigh_modify delay 2 every 1
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 11 12
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data system.data
Reading data file ...
orthogonal box = (-23.109 -22.733 -23.141) to (22.853 22.912 22.8)
1 by 1 by 1 MPI processor grid
reading atoms ...
8674 atoms
reading velocities ...
8674 velocities
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
18 = max dihedrals/atom
scanning impropers ...
1 = max impropers/atom
reading bonds ...
5869 bonds
reading angles ...
3264 angles
reading dihedrals ...
708 dihedrals
reading impropers ...
38 impropers
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
4 = max # of 1-2 neighbors
9 = max # of 1-3 neighbors
17 = max # of 1-4 neighbors
21 = max # of special neighbors
special bonds CPU = 0.004 seconds
read_data CPU = 0.138 seconds
#read_restart system_${ibead}.rest1
special_bonds charmm
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 300.0 nhc 4 sp 2.0
thermo 10
thermo_style custom step temp pe etotal f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
timestep 0.08
# restart 100 system_${ibead}.rest1 system_${ibead}.rest2
group prot id <= 256
256 atoms in group prot
# dump 1 prot dcd 100 prot_${ibead}.dcd
run 200
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
G vector (1/distance) = 0.22071363
grid = 20 20 20
stencil order = 5
estimated absolute RMS force accuracy = 0.024910591
estimated relative force accuracy = 7.5017505e-05
using double precision KISS FFT
3d grid and FFT values/proc = 15625 8000
Generated 231 of 231 mixed pair_coeff terms from arithmetic mixing rule
Fix pimd/nvt -P/(beta^2 * hbar^2) = -2.9535019e+01 (kcal/mol/A^2)
Neighbor list info ...
update: every = 1 steps, delay = 2 steps, check = yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 7 7 7
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/charmm/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
WARNING: Inconsistent image flags (src/domain.cpp:815)
Per MPI rank memory allocation (min/avg/max) = 84.59 | 84.59 | 84.59 Mbytes
Step Temp PotEng TotEng espring T_ring virial
0 306.20099 -26166.171 -18250.089 0 0 -676.31071
10 131.27164 -24353.129 -20959.421 307.69774 131.25651 -622.84631
20 173.87922 -20639.595 -16144.371 903.19698 173.85917 -146.32235
30 174.36894 -14805.957 -10298.072 2123.5094 174.34883 1001.9707
40 209.39721 -9107.42 -3693.9648 3643.8992 209.37307 2169.6179
50 224.56543 -4755.7551 1049.8374 5433.6153 224.53954 3077.7538
60 236.84365 -1848.0123 4275.0036 7420.6008 236.81634 3690.4423
70 251.60145 -545.63452 5958.9084 9472.1666 251.57244 3930.8483
80 259.97884 -310.2814 6410.8387 11592.586 259.94887 4052.0897
90 266.56259 -619.03771 6272.2892 13763.979 266.53186 3895.0106
100 277.74387 -1327.8055 5852.5862 15788.989 277.71185 3691.775
110 278.73044 -1998.5 5207.397 17723.605 278.69831 2838.6857
120 286.74106 -2688.0018 4724.9903 19437.173 286.70801 2354.3367
130 284.45763 -3484.7277 3869.2319 20933.859 284.42484 2037.2135
140 290.24681 -4412.7819 3090.8428 22113.049 290.21335 1802.8857
150 294.32521 -5490.1829 2118.8788 23005.855 294.29127 1927.3626
160 293.9109 -6586.1293 1012.2214 23597.9 293.87701 2198.3058
170 290.52772 -7737.8309 -226.94392 23882.219 290.49423 2454.2765
180 289.91516 -8766.2419 -1271.1912 23875.129 289.88174 2549.258
190 292.57992 -9618.0848 -2054.1432 23580.482 292.54619 2605.4823
200 295.4078 -10200.536 -2563.4865 23028.461 295.37374 2587.5531
Loop time of 35.3333 on 1 procs for 200 steps with 8674 atoms
Performance: 0.039 ns/day, 613.425 hours/ns, 5.660 timesteps/s, 49.098 katom-step/s
99.3% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 27.689 | 27.689 | 27.689 | 0.0 | 78.37
Bond | 0.1312 | 0.1312 | 0.1312 | 0.0 | 0.37
Kspace | 2.4446 | 2.4446 | 2.4446 | 0.0 | 6.92
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.12014 | 0.12014 | 0.12014 | 0.0 | 0.34
Output | 0.0020193 | 0.0020193 | 0.0020193 | 0.0 | 0.01
Modify | 4.886 | 4.886 | 4.886 | 0.0 | 13.83
Other | | 0.05992 | | | 0.17
Nlocal: 8674 ave 8674 max 8674 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 27366 ave 27366 max 27366 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 4.48585e+06 ave 4.48585e+06 max 4.48585e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 4485849
Ave neighs/atom = 517.16036
Ave special neighs/atom = 2.2573207
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:35

View File

@ -0,0 +1,146 @@
LAMMPS (8 Feb 2023)
Processor partition = 1
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 8 pad
units real
neigh_modify delay 2 every 1
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 11 12
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data system.data
Reading data file ...
orthogonal box = (-23.109 -22.733 -23.141) to (22.853 22.912 22.8)
1 by 1 by 1 MPI processor grid
reading atoms ...
8674 atoms
reading velocities ...
8674 velocities
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
18 = max dihedrals/atom
scanning impropers ...
1 = max impropers/atom
reading bonds ...
5869 bonds
reading angles ...
3264 angles
reading dihedrals ...
708 dihedrals
reading impropers ...
38 impropers
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
4 = max # of 1-2 neighbors
9 = max # of 1-3 neighbors
17 = max # of 1-4 neighbors
21 = max # of special neighbors
special bonds CPU = 0.004 seconds
read_data CPU = 0.139 seconds
#read_restart system_${ibead}.rest1
special_bonds charmm
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 300.0 nhc 4 sp 2.0
thermo 10
thermo_style custom step temp pe etotal f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
timestep 0.08
# restart 100 system_${ibead}.rest1 system_${ibead}.rest2
group prot id <= 256
256 atoms in group prot
# dump 1 prot dcd 100 prot_${ibead}.dcd
run 200
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
G vector (1/distance) = 0.22071363
grid = 20 20 20
stencil order = 5
estimated absolute RMS force accuracy = 0.024910591
estimated relative force accuracy = 7.5017505e-05
using double precision KISS FFT
3d grid and FFT values/proc = 15625 8000
Generated 231 of 231 mixed pair_coeff terms from arithmetic mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 2 steps, check = yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 7 7 7
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/charmm/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
WARNING: Inconsistent image flags (src/domain.cpp:815)
Per MPI rank memory allocation (min/avg/max) = 84.59 | 84.59 | 84.59 Mbytes
Step Temp PotEng TotEng espring T_ring virial
0 306.20099 -26166.171 -18250.089 0 0 -676.31071
10 64.17217 -26206.83 -24547.814 19.798491 300.69483 -715.39964
20 68.220475 -26516.716 -24753.042 40.042407 319.66418 -514.11207
30 57.966715 -26566.219 -25067.631 92.36071 271.61761 32.199121
40 49.627434 -26115.147 -24832.15 156.77313 232.54181 589.56751
50 50.238512 -24830.72 -23531.926 251.81147 235.40517 1098.4708
60 56.338925 -22753.456 -21296.951 361.53524 263.99019 1897.4199
70 54.380851 -19964.7 -18558.815 512.1854 254.81514 2327.9231
80 56.718808 -16822.195 -15355.868 692.48978 265.77022 2784.4839
90 57.350586 -13726.44 -12243.78 926.0914 268.73058 3260.3863
100 57.262365 -11280.793 -9800.4136 1186.0078 268.3172 3554.7754
110 58.507688 -9681.3843 -8168.8105 1483.328 274.15247 3368.3688
120 58.690757 -9008.7198 -7491.4132 1803.3617 275.01029 2974.5497
130 58.623212 -9097.3273 -7581.7669 2143.6544 274.69379 2535.9822
140 59.453502 -9689.6967 -8152.6711 2490.8635 278.58432 1947.3155
150 59.231787 -10601.929 -9070.635 2837.9543 277.54542 1774.9432
160 58.39319 -11413.85 -9904.2362 3183.3024 273.61596 1744.3579
170 60.201493 -12074.462 -10518.099 3515.6508 282.08922 1744.1497
180 59.592955 -12415.79 -10875.16 3827.6991 279.23776 1935.0884
190 59.698333 -12625.161 -11081.806 4120.4275 279.73154 1962.5444
200 59.87495 -12794.677 -11246.756 4387.202 280.55912 1854.7836
Loop time of 35.3334 on 1 procs for 200 steps with 8674 atoms
Performance: 0.039 ns/day, 613.427 hours/ns, 5.660 timesteps/s, 49.098 katom-step/s
97.8% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 27.948 | 27.948 | 27.948 | 0.0 | 79.10
Bond | 0.12842 | 0.12842 | 0.12842 | 0.0 | 0.36
Kspace | 2.4577 | 2.4577 | 2.4577 | 0.0 | 6.96
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.11986 | 0.11986 | 0.11986 | 0.0 | 0.34
Output | 0.0021166 | 0.0021166 | 0.0021166 | 0.0 | 0.01
Modify | 4.617 | 4.617 | 4.617 | 0.0 | 13.07
Other | | 0.06042 | | | 0.17
Nlocal: 8674 ave 8674 max 8674 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 27366 ave 27366 max 27366 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 4.48585e+06 ave 4.48585e+06 max 4.48585e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 4485849
Ave neighs/atom = 517.16036
Ave special neighs/atom = 2.2573207
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:35

View File

@ -0,0 +1,146 @@
LAMMPS (8 Feb 2023)
Processor partition = 2
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 8 pad
units real
neigh_modify delay 2 every 1
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 11 12
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data system.data
Reading data file ...
orthogonal box = (-23.109 -22.733 -23.141) to (22.853 22.912 22.8)
1 by 1 by 1 MPI processor grid
reading atoms ...
8674 atoms
reading velocities ...
8674 velocities
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
18 = max dihedrals/atom
scanning impropers ...
1 = max impropers/atom
reading bonds ...
5869 bonds
reading angles ...
3264 angles
reading dihedrals ...
708 dihedrals
reading impropers ...
38 impropers
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
4 = max # of 1-2 neighbors
9 = max # of 1-3 neighbors
17 = max # of 1-4 neighbors
21 = max # of special neighbors
special bonds CPU = 0.004 seconds
read_data CPU = 0.139 seconds
#read_restart system_${ibead}.rest1
special_bonds charmm
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 300.0 nhc 4 sp 2.0
thermo 10
thermo_style custom step temp pe etotal f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
timestep 0.08
# restart 100 system_${ibead}.rest1 system_${ibead}.rest2
group prot id <= 256
256 atoms in group prot
# dump 1 prot dcd 100 prot_${ibead}.dcd
run 200
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
G vector (1/distance) = 0.22071363
grid = 20 20 20
stencil order = 5
estimated absolute RMS force accuracy = 0.024910591
estimated relative force accuracy = 7.5017505e-05
using double precision KISS FFT
3d grid and FFT values/proc = 15625 8000
Generated 231 of 231 mixed pair_coeff terms from arithmetic mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 2 steps, check = yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 7 7 7
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/charmm/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
WARNING: Inconsistent image flags (src/domain.cpp:815)
Per MPI rank memory allocation (min/avg/max) = 84.59 | 84.59 | 84.59 Mbytes
Step Temp PotEng TotEng espring T_ring virial
0 306.20099 -26166.171 -18250.089 0 0 -676.31071
10 64.17182 -26152.123 -24493.117 2.6867435 300.69318 -871.30328
20 68.223719 -26376.797 -24613.039 8.6943178 319.67938 -734.6258
30 57.962426 -26437.775 -24939.297 20.196606 271.59751 -442.97527
40 49.527052 -26345.74 -25065.339 36.486067 232.07145 -109.57718
50 50.00573 -26013.669 -24720.893 64.828577 234.31441 90.23132
60 56.176816 -25453.583 -24001.268 104.35099 263.23058 350.85294
70 54.335616 -24764.408 -23359.692 168.84911 254.60318 370.58559
80 56.386432 -24068.851 -22611.117 255.96556 264.21279 359.85013
90 57.394261 -23487.859 -22004.071 377.57122 268.93523 350.57006
100 56.595909 -23070.567 -21607.418 531.24569 265.19435 380.72648
110 56.785626 -22692.803 -21224.749 716.4839 266.08332 119.53289
120 57.068588 -22142.475 -20667.105 936.74977 267.4092 53.114976
130 57.211273 -21289.908 -19810.849 1184.7712 268.0778 165.3536
140 58.110208 -20136.125 -18633.827 1461.5509 272.28998 268.40059
150 57.980844 -18752.784 -17253.831 1762.042 271.68381 732.81511
160 58.120526 -17237.742 -15735.177 2083.496 272.33833 1353.819
170 58.192327 -15808.132 -14303.711 2418.0799 272.67477 1963.8895
180 59.169638 -14676.59 -13146.903 2755.6611 277.2542 2483.717
190 60.190674 -13997.692 -12441.609 3096.3553 282.03852 2865.7644
200 60.619191 -13706.35 -12139.188 3426.2396 284.04645 2830.1842
Loop time of 35.3333 on 1 procs for 200 steps with 8674 atoms
Performance: 0.039 ns/day, 613.425 hours/ns, 5.660 timesteps/s, 49.098 katom-step/s
99.2% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 27.558 | 27.558 | 27.558 | 0.0 | 77.99
Bond | 0.1313 | 0.1313 | 0.1313 | 0.0 | 0.37
Kspace | 2.4344 | 2.4344 | 2.4344 | 0.0 | 6.89
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.11913 | 0.11913 | 0.11913 | 0.0 | 0.34
Output | 0.0022372 | 0.0022372 | 0.0022372 | 0.0 | 0.01
Modify | 5.0291 | 5.0291 | 5.0291 | 0.0 | 14.23
Other | | 0.05932 | | | 0.17
Nlocal: 8674 ave 8674 max 8674 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 27366 ave 27366 max 27366 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 4.48585e+06 ave 4.48585e+06 max 4.48585e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 4485849
Ave neighs/atom = 517.16036
Ave special neighs/atom = 2.2573207
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:35

View File

@ -0,0 +1,146 @@
LAMMPS (8 Feb 2023)
Processor partition = 3
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 8 pad
units real
neigh_modify delay 2 every 1
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 11 12
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data system.data
Reading data file ...
orthogonal box = (-23.109 -22.733 -23.141) to (22.853 22.912 22.8)
1 by 1 by 1 MPI processor grid
reading atoms ...
8674 atoms
reading velocities ...
8674 velocities
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
18 = max dihedrals/atom
scanning impropers ...
1 = max impropers/atom
reading bonds ...
5869 bonds
reading angles ...
3264 angles
reading dihedrals ...
708 dihedrals
reading impropers ...
38 impropers
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
4 = max # of 1-2 neighbors
9 = max # of 1-3 neighbors
17 = max # of 1-4 neighbors
21 = max # of special neighbors
special bonds CPU = 0.015 seconds
read_data CPU = 0.153 seconds
#read_restart system_${ibead}.rest1
special_bonds charmm
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 300.0 nhc 4 sp 2.0
thermo 10
thermo_style custom step temp pe etotal f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
timestep 0.08
# restart 100 system_${ibead}.rest1 system_${ibead}.rest2
group prot id <= 256
256 atoms in group prot
# dump 1 prot dcd 100 prot_${ibead}.dcd
run 200
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
G vector (1/distance) = 0.22071363
grid = 20 20 20
stencil order = 5
estimated absolute RMS force accuracy = 0.024910591
estimated relative force accuracy = 7.5017505e-05
using double precision KISS FFT
3d grid and FFT values/proc = 15625 8000
Generated 231 of 231 mixed pair_coeff terms from arithmetic mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 2 steps, check = yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 7 7 7
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/charmm/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
WARNING: Inconsistent image flags (src/domain.cpp:815)
Per MPI rank memory allocation (min/avg/max) = 84.59 | 84.59 | 84.59 Mbytes
Step Temp PotEng TotEng espring T_ring virial
0 306.20099 -26166.171 -18250.089 0 0 -676.31071
10 23.892089 -26194.747 -25577.075 6.0651132 382.22935 -806.80519
20 27.051257 -26510.555 -25811.21 19.798054 432.77021 -722.7628
30 27.053581 -26558.283 -25858.879 46.409761 432.8074 -314.77439
40 19.1336 -26301.271 -25806.618 80.715535 306.1023 33.240778
50 19.277021 -25564.199 -25065.839 122.0411 308.39678 420.32166
60 20.762569 -24490.516 -23953.751 171.68786 332.16281 922.0134
70 18.895283 -23277.775 -22789.283 228.13302 302.28967 1340.4892
80 20.103678 -22119.758 -21600.026 293.69148 321.62176 1692.277
90 18.733051 -21236.09 -20751.793 371.14173 299.69426 2111.5887
100 18.287299 -20684.674 -20211.9 458.53118 292.56305 2434.0418
110 18.012563 -20345.727 -19880.056 560.10663 288.16778 2560.064
120 17.92092 -19998.225 -19534.923 676.3247 286.70167 2752.7643
130 17.494577 -19524.549 -19072.269 808.35795 279.88096 3081.7784
140 17.122298 -18815.761 -18373.106 957.14076 273.92518 3209.6451
150 17.447826 -17981.659 -17530.588 1123.5613 279.13303 3627.9284
160 17.6202 -17066.393 -16610.866 1310.1872 281.8907 4230.0427
170 17.370561 -16269.055 -15819.981 1507.5411 277.89693 4602.925
180 17.444401 -15692.511 -15241.529 1720.5033 279.07824 5000.4081
190 17.587192 -15476.239 -15021.565 1938.8703 281.36263 5063.6159
200 18.000638 -15470.948 -15005.586 2164.2187 287.977 4707.0585
Loop time of 35.3335 on 1 procs for 200 steps with 8674 atoms
Performance: 0.039 ns/day, 613.428 hours/ns, 5.660 timesteps/s, 49.098 katom-step/s
99.5% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 27.094 | 27.094 | 27.094 | 0.0 | 76.68
Bond | 0.1276 | 0.1276 | 0.1276 | 0.0 | 0.36
Kspace | 2.3873 | 2.3873 | 2.3873 | 0.0 | 6.76
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.11312 | 0.11312 | 0.11312 | 0.0 | 0.32
Output | 0.0020657 | 0.0020657 | 0.0020657 | 0.0 | 0.01
Modify | 5.5507 | 5.5507 | 5.5507 | 0.0 | 15.71
Other | | 0.05892 | | | 0.17
Nlocal: 8674 ave 8674 max 8674 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 27366 ave 27366 max 27366 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 4.48585e+06 ave 4.48585e+06 max 4.48585e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 4485849
Ave neighs/atom = 517.16036
Ave special neighs/atom = 2.2573207
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:35

View File

@ -0,0 +1,146 @@
LAMMPS (8 Feb 2023)
Processor partition = 4
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 8 pad
units real
neigh_modify delay 2 every 1
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 11 12
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data system.data
Reading data file ...
orthogonal box = (-23.109 -22.733 -23.141) to (22.853 22.912 22.8)
1 by 1 by 1 MPI processor grid
reading atoms ...
8674 atoms
reading velocities ...
8674 velocities
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
18 = max dihedrals/atom
scanning impropers ...
1 = max impropers/atom
reading bonds ...
5869 bonds
reading angles ...
3264 angles
reading dihedrals ...
708 dihedrals
reading impropers ...
38 impropers
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
4 = max # of 1-2 neighbors
9 = max # of 1-3 neighbors
17 = max # of 1-4 neighbors
21 = max # of special neighbors
special bonds CPU = 0.004 seconds
read_data CPU = 0.138 seconds
#read_restart system_${ibead}.rest1
special_bonds charmm
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 300.0 nhc 4 sp 2.0
thermo 10
thermo_style custom step temp pe etotal f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
timestep 0.08
# restart 100 system_${ibead}.rest1 system_${ibead}.rest2
group prot id <= 256
256 atoms in group prot
# dump 1 prot dcd 100 prot_${ibead}.dcd
run 200
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
G vector (1/distance) = 0.22071363
grid = 20 20 20
stencil order = 5
estimated absolute RMS force accuracy = 0.024910591
estimated relative force accuracy = 7.5017505e-05
using double precision KISS FFT
3d grid and FFT values/proc = 15625 8000
Generated 231 of 231 mixed pair_coeff terms from arithmetic mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 2 steps, check = yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 7 7 7
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/charmm/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
WARNING: Inconsistent image flags (src/domain.cpp:815)
Per MPI rank memory allocation (min/avg/max) = 84.59 | 84.59 | 84.59 Mbytes
Step Temp PotEng TotEng espring T_ring virial
0 306.20099 -26166.171 -18250.089 0 0 -676.31071
10 23.892095 -26119.899 -25502.227 4.2771563 382.22944 -813.96512
20 27.051103 -26287.602 -25588.262 15.607084 432.76775 -745.77933
30 27.042026 -26290.973 -25591.867 35.550734 432.62253 -326.69805
40 19.133546 -26173.654 -25679.002 70.11544 306.10144 -11.324153
50 19.302675 -25883.61 -25384.586 121.68648 308.8072 290.09295
60 20.704866 -25425.468 -24890.194 201.50535 331.23967 650.74045
70 18.95281 -24809.575 -24319.596 321.84847 303.21 967.87686
80 20.178541 -24115.258 -23593.591 491.86818 322.81943 1230.7506
90 18.755289 -23448.841 -22963.969 726.07287 300.05003 1426.7932
100 18.159265 -22868.418 -22398.954 1013.598 290.51475 1609.3405
110 17.922985 -22283.38 -21820.025 1355.5366 286.7347 1483.5981
120 17.617358 -21583.469 -21128.015 1747.6539 281.84524 1444.208
130 17.233206 -20748.165 -20302.643 2173.0115 275.6995 1597.8139
140 17.06066 -19726.034 -19284.972 2629.6918 272.9391 1704.3744
150 17.004216 -18648.306 -18208.703 3099.2098 272.0361 2025.6026
160 17.414218 -17588.638 -17138.435 3580.8838 278.59537 2747.2565
170 17.295959 -16669.449 -16222.304 4058.5589 276.70344 3432.2976
180 17.706054 -15991.367 -15533.62 4524.6837 283.26421 4008.5413
190 17.649786 -15623.329 -15167.037 4968.3076 282.36402 4251.4209
200 17.914982 -15484.434 -15021.286 5382.5961 286.60667 4187.5146
Loop time of 35.3335 on 1 procs for 200 steps with 8674 atoms
Performance: 0.039 ns/day, 613.428 hours/ns, 5.660 timesteps/s, 49.098 katom-step/s
98.1% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 27.644 | 27.644 | 27.644 | 0.0 | 78.24
Bond | 0.1292 | 0.1292 | 0.1292 | 0.0 | 0.37
Kspace | 2.4108 | 2.4108 | 2.4108 | 0.0 | 6.82
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.12913 | 0.12913 | 0.12913 | 0.0 | 0.37
Output | 0.0021704 | 0.0021704 | 0.0021704 | 0.0 | 0.01
Modify | 4.959 | 4.959 | 4.959 | 0.0 | 14.03
Other | | 0.05951 | | | 0.17
Nlocal: 8674 ave 8674 max 8674 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 27366 ave 27366 max 27366 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 4.48585e+06 ave 4.48585e+06 max 4.48585e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 4485849
Ave neighs/atom = 517.16036
Ave special neighs/atom = 2.2573207
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:35

View File

@ -0,0 +1,146 @@
LAMMPS (8 Feb 2023)
Processor partition = 5
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 8 pad
units real
neigh_modify delay 2 every 1
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 11 12
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data system.data
Reading data file ...
orthogonal box = (-23.109 -22.733 -23.141) to (22.853 22.912 22.8)
1 by 1 by 1 MPI processor grid
reading atoms ...
8674 atoms
reading velocities ...
8674 velocities
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
18 = max dihedrals/atom
scanning impropers ...
1 = max impropers/atom
reading bonds ...
5869 bonds
reading angles ...
3264 angles
reading dihedrals ...
708 dihedrals
reading impropers ...
38 impropers
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
4 = max # of 1-2 neighbors
9 = max # of 1-3 neighbors
17 = max # of 1-4 neighbors
21 = max # of special neighbors
special bonds CPU = 0.004 seconds
read_data CPU = 0.139 seconds
#read_restart system_${ibead}.rest1
special_bonds charmm
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 300.0 nhc 4 sp 2.0
thermo 10
thermo_style custom step temp pe etotal f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
timestep 0.08
# restart 100 system_${ibead}.rest1 system_${ibead}.rest2
group prot id <= 256
256 atoms in group prot
# dump 1 prot dcd 100 prot_${ibead}.dcd
run 200
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
G vector (1/distance) = 0.22071363
grid = 20 20 20
stencil order = 5
estimated absolute RMS force accuracy = 0.024910591
estimated relative force accuracy = 7.5017505e-05
using double precision KISS FFT
3d grid and FFT values/proc = 15625 8000
Generated 231 of 231 mixed pair_coeff terms from arithmetic mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 2 steps, check = yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 7 7 7
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/charmm/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
WARNING: Inconsistent image flags (src/domain.cpp:815)
Per MPI rank memory allocation (min/avg/max) = 84.59 | 84.59 | 84.59 Mbytes
Step Temp PotEng TotEng espring T_ring virial
0 306.20099 -26166.171 -18250.089 0 0 -676.31071
10 14.020019 -26051.605 -25689.152 7.3596437 382.89455 -789.8534
20 15.752865 -25975.95 -25568.698 25.331469 430.21956 -594.00538
30 17.181375 -25873.108 -25428.926 57.426817 469.23297 -181.78718
40 11.772036 -25785.82 -25481.483 101.0172 321.50089 318.12089
50 11.907234 -25813.038 -25505.205 157.46734 325.19321 630.72419
60 12.407378 -25738.74 -25417.978 232.72881 338.85245 1042.2805
70 11.569463 -25485.646 -25186.546 331.59654 315.9685 1219.4474
80 12.423569 -25007.927 -24686.746 455.84829 339.29462 1585.4189
90 11.222078 -24360.128 -24070.009 610.51406 306.48124 1770.0165
100 10.746584 -23649.481 -23371.654 794.88729 293.49524 1751.0868
110 10.688659 -22906.499 -22630.17 1011.4935 291.91326 1164.4167
120 10.413653 -22131.25 -21862.03 1258.7802 284.40268 494.75639
130 10.207431 -21354.621 -21090.733 1532.012 278.77066 -85.33744
140 9.9484212 -20506.422 -20249.23 1833.2006 271.69695 -582.25635
150 9.8592991 -19641.288 -19386.399 2150.5002 269.26298 -860.97106
160 9.9476229 -18750.371 -18493.199 2484.32 271.67515 -781.67257
170 9.9050652 -17855.648 -17599.576 2822.3305 270.51287 -564.01235
180 9.9461836 -17049.565 -16792.431 3164.947 271.63584 -414.44888
190 9.9650455 -16346.398 -16088.776 3500.8641 272.15097 -250.509
200 10.114117 -15721.822 -15460.346 3824.3372 276.22219 -539.50977
Loop time of 35.3336 on 1 procs for 200 steps with 8674 atoms
Performance: 0.039 ns/day, 613.431 hours/ns, 5.660 timesteps/s, 49.098 katom-step/s
98.8% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 27.569 | 27.569 | 27.569 | 0.0 | 78.03
Bond | 0.13166 | 0.13166 | 0.13166 | 0.0 | 0.37
Kspace | 2.4398 | 2.4398 | 2.4398 | 0.0 | 6.91
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.12114 | 0.12114 | 0.12114 | 0.0 | 0.34
Output | 0.0022707 | 0.0022707 | 0.0022707 | 0.0 | 0.01
Modify | 5.0103 | 5.0103 | 5.0103 | 0.0 | 14.18
Other | | 0.05914 | | | 0.17
Nlocal: 8674 ave 8674 max 8674 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 27366 ave 27366 max 27366 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 4.48585e+06 ave 4.48585e+06 max 4.48585e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 4485849
Ave neighs/atom = 517.16036
Ave special neighs/atom = 2.2573207
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:35

View File

@ -0,0 +1,146 @@
LAMMPS (8 Feb 2023)
Processor partition = 6
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 8 pad
units real
neigh_modify delay 2 every 1
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 11 12
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data system.data
Reading data file ...
orthogonal box = (-23.109 -22.733 -23.141) to (22.853 22.912 22.8)
1 by 1 by 1 MPI processor grid
reading atoms ...
8674 atoms
reading velocities ...
8674 velocities
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
18 = max dihedrals/atom
scanning impropers ...
1 = max impropers/atom
reading bonds ...
5869 bonds
reading angles ...
3264 angles
reading dihedrals ...
708 dihedrals
reading impropers ...
38 impropers
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
4 = max # of 1-2 neighbors
9 = max # of 1-3 neighbors
17 = max # of 1-4 neighbors
21 = max # of special neighbors
special bonds CPU = 0.004 seconds
read_data CPU = 0.139 seconds
#read_restart system_${ibead}.rest1
special_bonds charmm
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 300.0 nhc 4 sp 2.0
thermo 10
thermo_style custom step temp pe etotal f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
timestep 0.08
# restart 100 system_${ibead}.rest1 system_${ibead}.rest2
group prot id <= 256
256 atoms in group prot
# dump 1 prot dcd 100 prot_${ibead}.dcd
run 200
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
G vector (1/distance) = 0.22071363
grid = 20 20 20
stencil order = 5
estimated absolute RMS force accuracy = 0.024910591
estimated relative force accuracy = 7.5017505e-05
using double precision KISS FFT
3d grid and FFT values/proc = 15625 8000
Generated 231 of 231 mixed pair_coeff terms from arithmetic mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 2 steps, check = yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 7 7 7
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/charmm/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
WARNING: Inconsistent image flags (src/domain.cpp:815)
Per MPI rank memory allocation (min/avg/max) = 84.59 | 84.59 | 84.59 Mbytes
Step Temp PotEng TotEng espring T_ring virial
0 306.20099 -26166.171 -18250.089 0 0 -676.31071
10 14.02002 -25861.333 -25498.879 45.268744 382.8946 -722.47561
20 15.752886 -25289.441 -24882.188 135.42322 430.22014 -482.48877
30 17.181691 -24659.071 -24214.881 316.76011 469.24159 115.80651
40 11.76983 -24165.345 -23861.065 544.21259 321.44065 710.32531
50 11.904289 -24034.29 -23726.534 812.12301 325.1128 1057.7309
60 12.409559 -23964.986 -23644.167 1115.614 338.91201 1490.6948
70 11.53241 -23718.204 -23420.061 1442.0767 314.95657 1654.3805
80 12.377693 -23123.366 -22803.371 1794.1167 338.04173 2019.537
90 11.21341 -22129.26 -21839.365 2172.5974 306.24451 2037.5349
100 10.778526 -20922.126 -20643.474 2553.3173 294.36759 1922.6067
110 10.656113 -19666.579 -19391.091 2944.1884 291.02442 1115.4533
120 10.374573 -18508.305 -18240.096 3331.7564 283.3354 401.15223
130 10.057534 -17613.953 -17353.939 3714.254 274.67688 -248.49945
140 9.7972276 -16953.726 -16700.443 4076.4386 267.56777 -841.79062
150 9.8266474 -16502.516 -16248.472 4422.7241 268.37124 -1155.8854
160 9.9655308 -16127.142 -15869.507 4748.4514 272.16422 -1094.1994
170 9.9292831 -15818.923 -15562.225 5045.9331 271.17428 -884.00102
180 10.157102 -15473.205 -15210.618 5313.5511 277.39613 -553.25499
190 10.068063 -15095.751 -14835.466 5545.0144 274.96443 -237.36247
200 10.155151 -14754.017 -14491.48 5742.1288 277.34285 -332.89648
Loop time of 35.3338 on 1 procs for 200 steps with 8674 atoms
Performance: 0.039 ns/day, 613.434 hours/ns, 5.660 timesteps/s, 49.098 katom-step/s
97.5% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 27.875 | 27.875 | 27.875 | 0.0 | 78.89
Bond | 0.12707 | 0.12707 | 0.12707 | 0.0 | 0.36
Kspace | 2.4348 | 2.4348 | 2.4348 | 0.0 | 6.89
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.11906 | 0.11906 | 0.11906 | 0.0 | 0.34
Output | 0.0021503 | 0.0021503 | 0.0021503 | 0.0 | 0.01
Modify | 4.7164 | 4.7164 | 4.7164 | 0.0 | 13.35
Other | | 0.05955 | | | 0.17
Nlocal: 8674 ave 8674 max 8674 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 27366 ave 27366 max 27366 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 4.48585e+06 ave 4.48585e+06 max 4.48585e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 4485849
Ave neighs/atom = 517.16036
Ave special neighs/atom = 2.2573207
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:35

View File

@ -0,0 +1,146 @@
LAMMPS (8 Feb 2023)
Processor partition = 7
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
variable ibead uloop 8 pad
units real
neigh_modify delay 2 every 1
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 11 12
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data system.data
Reading data file ...
orthogonal box = (-23.109 -22.733 -23.141) to (22.853 22.912 22.8)
1 by 1 by 1 MPI processor grid
reading atoms ...
8674 atoms
reading velocities ...
8674 velocities
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
18 = max dihedrals/atom
scanning impropers ...
1 = max impropers/atom
reading bonds ...
5869 bonds
reading angles ...
3264 angles
reading dihedrals ...
708 dihedrals
reading impropers ...
38 impropers
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
4 = max # of 1-2 neighbors
9 = max # of 1-3 neighbors
17 = max # of 1-4 neighbors
21 = max # of special neighbors
special bonds CPU = 0.004 seconds
read_data CPU = 0.138 seconds
#read_restart system_${ibead}.rest1
special_bonds charmm
fix 1 all pimd/nvt method nmpimd fmass 1.0 temp 300.0 nhc 4 sp 2.0
thermo 10
thermo_style custom step temp pe etotal f_1[1] f_1[2] f_1[3]
thermo_modify colname f_1[1] espring colname f_1[2] T_ring colname f_1[3] virial
timestep 0.08
# restart 100 system_${ibead}.rest1 system_${ibead}.rest2
group prot id <= 256
256 atoms in group prot
# dump 1 prot dcd 100 prot_${ibead}.dcd
run 200
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:342)
G vector (1/distance) = 0.22071363
grid = 20 20 20
stencil order = 5
estimated absolute RMS force accuracy = 0.024910591
estimated relative force accuracy = 7.5017505e-05
using double precision KISS FFT
3d grid and FFT values/proc = 15625 8000
Generated 231 of 231 mixed pair_coeff terms from arithmetic mixing rule
Neighbor list info ...
update: every = 1 steps, delay = 2 steps, check = yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 7 7 7
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/charmm/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
WARNING: Inconsistent image flags (src/domain.cpp:815)
Per MPI rank memory allocation (min/avg/max) = 84.59 | 84.59 | 84.59 Mbytes
Step Temp PotEng TotEng espring T_ring virial
0 306.20099 -26166.171 -18250.089 0 0 -676.31071
10 11.858328 -24949.912 -24643.343 11.21746 379.42274 -589.42772
20 13.313433 -22332.782 -21988.595 25.891404 425.98075 -189.42618
30 14.492332 -18605.094 -18230.43 60.87232 463.70115 853.22726
40 10.100576 -15158.156 -14897.03 103.87947 323.18115 1870.5664
50 10.437976 -12976.762 -12706.913 161.50852 333.97672 2649.3283
60 10.544993 -11868.561 -11595.946 225.58416 337.40089 3264.9267
70 9.756396 -11851.23 -11599.002 303.66274 312.16868 3549.9084
80 10.642372 -12316.225 -12041.092 392.92619 340.51663 3853.3301
90 9.3834726 -12853.33 -12610.744 501.5373 300.2365 3943.7218
100 8.9858656 -13254.517 -13022.21 619.67563 287.51455 3852.5038
110 8.9674385 -13407.55 -13175.719 752.87088 286.92495 3047.0516
120 8.7200626 -13430.184 -13204.748 897.34682 279.00983 2614.6547
130 8.4404226 -13413.462 -13195.256 1051.1979 270.06239 2361.7563
140 8.1867868 -13405.663 -13194.013 1215.2723 261.94697 2042.4666
150 8.26024 -13427.11 -13213.561 1389.0864 264.29721 2179.5219
160 8.2139102 -13403.956 -13191.605 1573.9454 262.81482 2489.6486
170 8.2258918 -13367.291 -13154.631 1768.2198 263.19819 2793.6911
180 8.4548603 -13245.62 -13027.04 1968.4468 270.52434 3070.2942
190 8.4589955 -12920.954 -12702.268 2174.1321 270.65665 3360.4993
200 8.537811 -12448.973 -12228.248 2382.746 273.17846 3370.2077
Loop time of 35.3334 on 1 procs for 200 steps with 8674 atoms
Performance: 0.039 ns/day, 613.428 hours/ns, 5.660 timesteps/s, 49.098 katom-step/s
99.1% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 27.709 | 27.709 | 27.709 | 0.0 | 78.42
Bond | 0.13165 | 0.13165 | 0.13165 | 0.0 | 0.37
Kspace | 2.4416 | 2.4416 | 2.4416 | 0.0 | 6.91
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.12826 | 0.12826 | 0.12826 | 0.0 | 0.36
Output | 0.002116 | 0.002116 | 0.002116 | 0.0 | 0.01
Modify | 4.863 | 4.863 | 4.863 | 0.0 | 13.76
Other | | 0.05754 | | | 0.16
Nlocal: 8674 ave 8674 max 8674 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 27366 ave 27366 max 27366 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 4.48585e+06 ave 4.48585e+06 max 4.48585e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 4485849
Ave neighs/atom = 517.16036
Ave special neighs/atom = 2.2573207
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:35

View File

@ -389,6 +389,10 @@ int DeviceT::set_ocl_params(std::string s_config, const std::string &extra_args)
#ifdef CL_VERSION_2_0 #ifdef CL_VERSION_2_0
_ocl_compile_string+="-cl-std=CL2.0 "; _ocl_compile_string+="-cl-std=CL2.0 ";
#endif #endif
// workaround for double precision with Intel OpenCL
#ifdef _DOUBLE_DOUBLE
if (params[0] == "500") params[4] = "0";
#endif
if (params[4] != "0") _ocl_compile_string+="-cl-fast-relaxed-math "; if (params[4] != "0") _ocl_compile_string+="-cl-fast-relaxed-math ";
_ocl_compile_string+=std::string(OCL_INT_TYPE)+" "+ _ocl_compile_string+=std::string(OCL_INT_TYPE)+" "+
std::string(OCL_PRECISION_COMPILE); std::string(OCL_PRECISION_COMPILE);

View File

@ -169,7 +169,7 @@
#define ucl_abs fabs #define ucl_abs fabs
#define ucl_erfc erfc #define ucl_erfc erfc
#if defined(FAST_MATH) && !defined(_DOUBLE_DOUBLE) #if defined(FAST_MATH) && (FAST_MATH > 0) && !defined(_DOUBLE_DOUBLE)
#define ucl_exp native_exp #define ucl_exp native_exp
#define ucl_pow pow #define ucl_pow pow

View File

@ -22,11 +22,13 @@
------------------------------------------------------------------------- */ ------------------------------------------------------------------------- */
#include "fix_mvv_dpd.h" #include "fix_mvv_dpd.h"
#include <cstring>
#include "atom.h" #include "atom.h"
#include "error.h"
#include "force.h" #include "force.h"
#include "update.h" #include "update.h"
#include "error.h"
#include <cstring>
using namespace LAMMPS_NS; using namespace LAMMPS_NS;
using namespace FixConst; using namespace FixConst;
@ -65,6 +67,9 @@ void FixMvvDPD::init()
dtv = update->dt; dtv = update->dt;
dtf = 0.5 * update->dt * force->ftm2v; dtf = 0.5 * update->dt * force->ftm2v;
if (!force->pair_match("^edpd",0) && !force->pair_match("^dpd",0))
error->all(FLERR, "Must use a dpd or edpd pair style with fix mvv/edpd");
} }
/* ---------------------------------------------------------------------- /* ----------------------------------------------------------------------

View File

@ -31,11 +31,13 @@
------------------------------------------------------------------------- */ ------------------------------------------------------------------------- */
#include "fix_mvv_edpd.h" #include "fix_mvv_edpd.h"
#include <cstring>
#include "atom.h" #include "atom.h"
#include "error.h"
#include "force.h" #include "force.h"
#include "update.h" #include "update.h"
#include "error.h"
#include <cstring>
using namespace LAMMPS_NS; using namespace LAMMPS_NS;
using namespace FixConst; using namespace FixConst;
@ -71,6 +73,9 @@ void FixMvvEDPD::init()
{ {
dtv = update->dt; dtv = update->dt;
dtf = 0.5 * update->dt * force->ftm2v; dtf = 0.5 * update->dt * force->ftm2v;
if (!force->pair_match("^edpd",0))
error->all(FLERR, "Must use pair style edpd with fix mvv/edpd");
} }
/* ---------------------------------------------------------------------- /* ----------------------------------------------------------------------

View File

@ -27,11 +27,13 @@
------------------------------------------------------------------------- */ ------------------------------------------------------------------------- */
#include "fix_mvv_tdpd.h" #include "fix_mvv_tdpd.h"
#include <cstring>
#include "atom.h" #include "atom.h"
#include "error.h"
#include "force.h" #include "force.h"
#include "update.h" #include "update.h"
#include "error.h"
#include <cstring>
using namespace LAMMPS_NS; using namespace LAMMPS_NS;
using namespace FixConst; using namespace FixConst;
@ -69,6 +71,8 @@ void FixMvvTDPD::init()
{ {
dtv = update->dt; dtv = update->dt;
dtf = 0.5 * update->dt * force->ftm2v; dtf = 0.5 * update->dt * force->ftm2v;
if (!force->pair_match("^tdpd",0))
error->all(FLERR, "Must use pair style tdpd with fix mvv/tdpd");
} }
/* ---------------------------------------------------------------------- /* ----------------------------------------------------------------------

View File

@ -35,6 +35,7 @@ FixOneWay::FixOneWay(LAMMPS *lmp, int narg, char **arg) :
Fix(lmp, narg, arg), region(nullptr), idregion(nullptr) Fix(lmp, narg, arg), region(nullptr), idregion(nullptr)
{ {
direction = NONE; direction = NONE;
dynamic_group_allow = 1;
if (narg < 6) error->all(FLERR, "Illegal fix oneway command"); if (narg < 6) error->all(FLERR, "Illegal fix oneway command");

View File

@ -796,6 +796,8 @@ double PairSNAP::memory_usage()
return bytes; return bytes;
} }
/* ---------------------------------------------------------------------- */
void *PairSNAP::extract(const char *str, int &dim) void *PairSNAP::extract(const char *str, int &dim)
{ {
dim = 2; dim = 2;

View File

@ -24,7 +24,7 @@ using namespace LAMMPS_NS;
/* ---------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- */
ComputePressureAlchemy::ComputePressureAlchemy(LAMMPS *lmp, int narg, char **arg) : ComputePressureAlchemy::ComputePressureAlchemy(LAMMPS *lmp, int narg, char **arg) :
Compute(lmp, narg, arg) Compute(lmp, narg, arg), fix(nullptr)
{ {
if (narg != 4) error->all(FLERR, "Illegal compute pressure/alchemy command"); if (narg != 4) error->all(FLERR, "Illegal compute pressure/alchemy command");
if (igroup) error->all(FLERR, "Compute pressure/alchemy must use group all"); if (igroup) error->all(FLERR, "Compute pressure/alchemy must use group all");

View File

@ -35,12 +35,12 @@ using namespace FixConst;
FixAlchemy::FixAlchemy(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg), commbuf(nullptr) FixAlchemy::FixAlchemy(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg), commbuf(nullptr)
{ {
if (narg != 4) error->all(FLERR, "Incorrect number of arguments for fix alchemy"); if (narg != 4) error->universe_all(FLERR, "Incorrect number of arguments for fix alchemy");
if (universe->nworlds != 2) error->all(FLERR, "Must use exactly two partitions"); if (universe->nworlds != 2) error->universe_all(FLERR, "Must use exactly two partitions");
if (utils::strmatch(arg[3], "^v_")) if (utils::strmatch(arg[3], "^v_"))
id_lambda = arg[3] + 2; id_lambda = arg[3] + 2;
else else
error->all(FLERR, "Must use variable as lambda argument to fix alchemy"); error->universe_all(FLERR, "Must use variable as lambda argument to fix alchemy");
lambda = epot[0] = epot[1] = epot[2] = 0.0; lambda = epot[0] = epot[1] = epot[2] = 0.0;
progress = 0; progress = 0;
@ -53,8 +53,8 @@ FixAlchemy::FixAlchemy(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
vector_flag = 1; vector_flag = 1;
size_vector = 3; size_vector = 3;
extvector = 1; extvector = 1;
ilevel_respa = 0;
nmax = 6; nmax = 6;
ivar = -1;
sync_box = 0; sync_box = 0;
// set up rank-to-rank communicator for inter-partition communication // set up rank-to-rank communicator for inter-partition communication
@ -73,7 +73,9 @@ FixAlchemy::FixAlchemy(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg),
int allfail = 0; int allfail = 0;
MPI_Allreduce(&fail, &allfail, 1, MPI_INT, MPI_MAX, universe->uworld); MPI_Allreduce(&fail, &allfail, 1, MPI_INT, MPI_MAX, universe->uworld);
if (allfail) if (allfail)
error->all(FLERR, "Number of atoms and domain decomposition must match for both partitions"); error->universe_all(FLERR,
"Number of atoms and domain decomposition must be the same "
"on all partitions");
id_pe = std::string(id) + "_pe"; id_pe = std::string(id) + "_pe";
pe = modify->add_compute(id_pe + " all pe"); pe = modify->add_compute(id_pe + " all pe");
@ -107,7 +109,51 @@ int FixAlchemy::setmask()
return mask; return mask;
} }
/* ---------------------------------------------------------------------- */ /* ----------------------------------------------------------------------
check consistency of owned atom count and ordering
compare each pair of replica procs
checked before each exchange of atom coords or forces
to ensure the replicas have not become out of sync
---------------------------------------------------------------------- */
void FixAlchemy::check_consistency_atoms()
{
// check that owned atom count is same for each pair of replica procs
const int nlocal = atom->nlocal;
int my_nlocal[2] = {0, 0};
int all_nlocal[2] = {0, 0};
my_nlocal[universe->iworld] = nlocal;
MPI_Allreduce(my_nlocal, all_nlocal, 2, MPI_INT, MPI_SUM, samerank);
int fail = (all_nlocal[0] == all_nlocal[1]) ? 0 : 1;
int allfail = 0;
MPI_Allreduce(&fail, &allfail, 1, MPI_INT, MPI_MAX, universe->uworld);
if (allfail) error->universe_all(FLERR, "Fix alchemy local atom count is inconsistent");
// check that owned atom ordering is same for each pair of replica procs
// re-use communication buffer for positions and forces
tagint *tagbuf = (tagint *) commbuf;
tagint *tag = atom->tag;
if (universe->iworld == 0) {
for (int i = 0; i < nlocal; ++i) tagbuf[i] = tag[i];
}
MPI_Bcast(tagbuf, nlocal, MPI_LMP_TAGINT, 0, samerank);
fail = allfail = 0;
if (universe->iworld > 0) {
for (int i = 0; i < nlocal; ++i)
if (tag[i] != tagbuf[i]) fail = 1;
}
MPI_Allreduce(&fail, &allfail, 1, MPI_INT, MPI_MAX, universe->uworld);
if (allfail) error->universe_all(FLERR, "Fix alchemy local atom ordering is inconsistent");
}
/* ----------------------------------------------------------------------
force simulation box size and shape to be identical for 2 replicas
invoked by post_integrate() after integration may have changed box
---------------------------------------------------------------------- */
static void synchronize_box(Domain *domain, MPI_Comm samerank) static void synchronize_box(Domain *domain, MPI_Comm samerank)
{ {
@ -130,17 +176,19 @@ void FixAlchemy::init()
memory->create(commbuf, sizeof(double) * nmax, "alchemy:nmax"); memory->create(commbuf, sizeof(double) * nmax, "alchemy:nmax");
if (modify->get_fix_by_style("^balance").size() > 0) if (modify->get_fix_by_style("^balance").size() > 0)
error->all(FLERR, "Fix alchemy is not compatible with load balancing"); error->universe_all(FLERR, "Fix alchemy is not compatible with load balancing");
if (modify->get_fix_by_style("^alchemy").size() > 1) if (modify->get_fix_by_style("^alchemy").size() > 1)
error->all(FLERR, "There may only one fix alchemy at a time"); error->universe_all(FLERR, "There may only one fix alchemy at a time");
if (utils::strmatch(update->integrate_style, "^respa"))
error->universe_all(FLERR, "Must not use run style respa with fix alchemy");
ivar = input->variable->find(id_lambda.c_str()); ivar = input->variable->find(id_lambda.c_str());
if (ivar < 0) if (ivar < 0)
error->universe_one(FLERR, fmt::format("Variable {} for fix alchemy does not exist", id_lambda)); error->universe_one(FLERR, fmt::format("Fix alchemy variable {} does not exist", id_lambda));
if (!input->variable->equalstyle(ivar)) if (!input->variable->equalstyle(ivar))
error->universe_one(FLERR, error->universe_one(FLERR, fmt::format("Fix alchemy variable {} is invalid style", id_lambda));
fmt::format("Variable {} for fix alchemy is invalid style", id_lambda));
lambda = input->variable->compute_equal(ivar); lambda = input->variable->compute_equal(ivar);
// synchronize box dimensions, determine if resync during run will be needed. // synchronize box dimensions, determine if resync during run will be needed.
@ -156,33 +204,33 @@ void FixAlchemy::init()
void FixAlchemy::setup(int vflag) void FixAlchemy::setup(int vflag)
{ {
if (utils::strmatch(update->integrate_style, "^respa")) {
auto respa = dynamic_cast<Respa *>(update->integrate);
respa->copy_flevel_f(ilevel_respa);
post_force_respa(vflag, ilevel_respa, 0);
respa->copy_f_flevel(ilevel_respa);
} else {
post_force(vflag);
}
if (universe->me == 0) { if (universe->me == 0) {
double delta = update->ntimestep - update->beginstep; progress = 0;
if ((delta != 0.0) && (update->beginstep != update->endstep)) auto msg = fmt::format("Starting alchemical run\n");
delta /= update->endstep - update->beginstep;
progress = static_cast<int>(delta*100.0);
auto msg = fmt::format("Starting alchemical transformation at {:>3d}%\n", progress);
if (universe->uscreen) fmt::print(universe->uscreen, msg); if (universe->uscreen) fmt::print(universe->uscreen, msg);
if (universe->ulogfile) fmt::print(universe->ulogfile, msg); if (universe->ulogfile) fmt::print(universe->ulogfile, msg);
} }
// recheck domain decomposition, atom ordering, and synchronize positions
post_integrate();
// mix initial forces
post_force(vflag);
} }
/* ---------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- */
void FixAlchemy::post_integrate() void FixAlchemy::post_integrate()
{ {
// check owned atom count and ordering between replicas
check_consistency_atoms();
// synchronize atom positions // synchronize atom positions
const int nall = atom->nlocal + atom->nghost; const int nall = atom->nlocal;
MPI_Bcast(&atom->x[0][0], 3 * nall, MPI_DOUBLE, 0, samerank); MPI_Bcast(&atom->x[0][0], 3 * nall, MPI_DOUBLE, 0, samerank);
// synchronize box dimensions, if needed // synchronize box dimensions, if needed
@ -194,15 +242,25 @@ void FixAlchemy::post_integrate()
void FixAlchemy::post_force(int /*vflag*/) void FixAlchemy::post_force(int /*vflag*/)
{ {
// grow commbuf if necessary
if (3 * atom->nmax > nmax) { if (3 * atom->nmax > nmax) {
nmax = 3 * atom->nmax; nmax = 3 * atom->nmax;
memory->grow(commbuf, sizeof(double) * atom->nmax, "alchemy:commbuf"); memory->grow(commbuf, sizeof(double) * atom->nmax, "alchemy:commbuf");
} }
const int nall = 3 * atom->nlocal; // check owned atom count and ordering between replicas
double *f = &atom->f[0][0];
check_consistency_atoms();
// evaluate lambda variable
lambda = input->variable->compute_equal(ivar); lambda = input->variable->compute_equal(ivar);
// sum forces multiplied by lambda across 2 replicas
const int nall = 3 * atom->nlocal;
double *f = &atom->f[0][0];
for (int i = 0; i < nall; ++i) commbuf[i] = f[i] * lambda; for (int i = 0; i < nall; ++i) commbuf[i] = f[i] * lambda;
MPI_Allreduce(commbuf, f, nall, MPI_DOUBLE, MPI_SUM, samerank); MPI_Allreduce(commbuf, f, nall, MPI_DOUBLE, MPI_SUM, samerank);
@ -222,7 +280,7 @@ void FixAlchemy::post_force(int /*vflag*/)
MPI_Allreduce(commbuf, pressure, 6, MPI_DOUBLE, MPI_SUM, universe->uworld); MPI_Allreduce(commbuf, pressure, 6, MPI_DOUBLE, MPI_SUM, universe->uworld);
press->addstep(update->ntimestep + 1); press->addstep(update->ntimestep + 1);
// print progress info // print progress info to universe screen/logfile
if (universe->me == 0) { if (universe->me == 0) {
double delta = update->ntimestep - update->beginstep; double delta = update->ntimestep - update->beginstep;
@ -231,7 +289,7 @@ void FixAlchemy::post_force(int /*vflag*/)
int status = static_cast<int>(delta * 100.0); int status = static_cast<int>(delta * 100.0);
if ((status / 10) > (progress / 10)) { if ((status / 10) > (progress / 10)) {
progress = status; progress = status;
auto msg = fmt::format(" Alchemical transformation progress: {:>3d}%\n", progress); auto msg = fmt::format(" Alchemical run progress: {:>3d}%\n", progress);
if (universe->uscreen) fmt::print(universe->uscreen, msg); if (universe->uscreen) fmt::print(universe->uscreen, msg);
if (universe->ulogfile) fmt::print(universe->ulogfile, msg); if (universe->ulogfile) fmt::print(universe->ulogfile, msg);
} }

View File

@ -48,9 +48,10 @@ class FixAlchemy : public Fix {
double pressure[6]; // joined pressure double pressure[6]; // joined pressure
int progress; // for progress indicator int progress; // for progress indicator
int sync_box; // 1 of box dimensions need to be synchronized int sync_box; // 1 of box dimensions need to be synchronized
int ilevel_respa;
int nmax; int nmax;
int ivar; int ivar;
void check_consistency_atoms();
}; };
} // namespace LAMMPS_NS } // namespace LAMMPS_NS

View File

@ -29,6 +29,7 @@
#include "error.h" #include "error.h"
#include "force.h" #include "force.h"
#include "math_const.h" #include "math_const.h"
#include "math_special.h"
#include "memory.h" #include "memory.h"
#include "universe.h" #include "universe.h"
#include "update.h" #include "update.h"
@ -40,6 +41,8 @@ using namespace LAMMPS_NS;
using namespace FixConst; using namespace FixConst;
using namespace MathConst; using namespace MathConst;
using MathSpecial::powint;
enum { PIMD, NMPIMD, CMD }; enum { PIMD, NMPIMD, CMD };
/* ---------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- */
@ -69,6 +72,8 @@ FixPIMDNVT::FixPIMDNVT(LAMMPS *lmp, int narg, char **arg) : Fix(lmp, narg, arg)
nhc_eta_dotdot = nullptr; nhc_eta_dotdot = nullptr;
nhc_eta_mass = nullptr; nhc_eta_mass = nullptr;
spring_energy = t_sys = virial = 0.0;
method = PIMD; method = PIMD;
fmass = 1.0; fmass = 1.0;
nhc_temp = 298.15; nhc_temp = 298.15;
@ -234,7 +239,7 @@ void FixPIMDNVT::init()
if (method == CMD || method == NMPIMD) if (method == CMD || method == NMPIMD)
nmpimd_init(); nmpimd_init();
else else
for (int i = 1; i <= atom->ntypes; i++) mass[i] = atom->mass[i] / np * fmass; for (int i = 1; i <= atom->ntypes; i++) mass[i] = atom->mass[i] * inverse_np * fmass;
if (!nhc_ready) nhc_init(); if (!nhc_ready) nhc_init();
} }
@ -468,8 +473,8 @@ void FixPIMDNVT::nmpimd_init()
// Set up eigenvectors for non-degenerated modes // Set up eigenvectors for non-degenerated modes
for (int i = 0; i < np; i++) { for (int i = 0; i < np; i++) {
M_x2xp[0][i] = 1.0 / np; M_x2xp[0][i] = inverse_np;
if (np % 2 == 0) M_x2xp[np - 1][i] = 1.0 / np * pow(-1.0, i); if (np % 2 == 0) M_x2xp[np - 1][i] = inverse_np * powint(-1.0, i);
} }
// Set up eigenvectors for degenerated modes // Set up eigenvectors for degenerated modes
@ -880,8 +885,8 @@ int FixPIMDNVT::size_restart(int /*nlocal*/)
double FixPIMDNVT::compute_vector(int n) double FixPIMDNVT::compute_vector(int n)
{ {
if (n == 0) { return spring_energy; } if (n == 0) return spring_energy;
if (n == 1) { return t_sys; } if (n == 1) return t_sys;
if (n == 2) { return virial; } if (n == 2) return virial;
return 0.0; return 0.0;
} }

View File

@ -52,6 +52,8 @@ class FixPIMDNVT : public Fix {
int pack_forward_comm(int, int *, double *, int, int *) override; int pack_forward_comm(int, int *, double *, int, int *) override;
void unpack_forward_comm(int, int, double *) override; void unpack_forward_comm(int, int, double *) override;
protected:
int method; int method;
int np; int np;
double inverse_np; double inverse_np;

View File

@ -1914,11 +1914,15 @@ void Atom::set_mass(const char *file, int line, const char *str, int type_offset
void Atom::set_mass(const char *file, int line, int itype, double value) void Atom::set_mass(const char *file, int line, int itype, double value)
{ {
if (mass == nullptr) error->all(file,line, "Cannot set mass for atom style {}", atom_style); if (mass == nullptr)
error->all(file,line, "Cannot set per-type mass for atom style {}", atom_style);
if (itype < 1 || itype > ntypes) if (itype < 1 || itype > ntypes)
error->all(file,line,"Invalid type {} for atom mass {}", itype, value); error->all(file,line,"Invalid type {} for atom mass {}", itype, value);
if (value <= 0.0) error->all(file,line,"Invalid atom mass value {}", value); if (value <= 0.0) {
if (comm->me == 0)
error->warning(file,line,"Ignoring invalid mass value {} for atom type {}", value, itype);
return;
}
mass[itype] = value; mass[itype] = value;
mass_setflag[itype] = 1; mass_setflag[itype] = 1;
} }

View File

@ -42,7 +42,7 @@ FixEfield::FixEfield(LAMMPS *lmp, int narg, char **arg) :
Fix(lmp, narg, arg), xstr(nullptr), ystr(nullptr), zstr(nullptr), estr(nullptr), Fix(lmp, narg, arg), xstr(nullptr), ystr(nullptr), zstr(nullptr), estr(nullptr),
idregion(nullptr), region(nullptr), efield(nullptr) idregion(nullptr), region(nullptr), efield(nullptr)
{ {
if (narg < 6) error->all(FLERR, "Illegal fix efield command"); if (narg < 6) utils::missing_cmd_args(FLERR, "fix efield", error);
dynamic_group_allow = 1; dynamic_group_allow = 1;
vector_flag = 1; vector_flag = 1;
@ -85,20 +85,20 @@ FixEfield::FixEfield(LAMMPS *lmp, int narg, char **arg) :
int iarg = 6; int iarg = 6;
while (iarg < narg) { while (iarg < narg) {
if (strcmp(arg[iarg], "region") == 0) { if (strcmp(arg[iarg], "region") == 0) {
if (iarg + 2 > narg) error->all(FLERR, "Illegal fix efield command"); if (iarg + 2 > narg) utils::missing_cmd_args(FLERR, "fix efield region", error);
region = domain->get_region_by_id(arg[iarg + 1]); region = domain->get_region_by_id(arg[iarg + 1]);
if (!region) error->all(FLERR, "Region {} for fix efield does not exist", arg[iarg + 1]); if (!region) error->all(FLERR, "Region {} for fix efield does not exist", arg[iarg + 1]);
idregion = utils::strdup(arg[iarg + 1]); idregion = utils::strdup(arg[iarg + 1]);
iarg += 2; iarg += 2;
} else if (strcmp(arg[iarg], "energy") == 0) { } else if (strcmp(arg[iarg], "energy") == 0) {
if (iarg + 2 > narg) error->all(FLERR, "Illegal fix efield command"); if (iarg + 2 > narg) utils::missing_cmd_args(FLERR, "fix efield energy", error);
if (utils::strmatch(arg[iarg + 1], "^v_")) { if (utils::strmatch(arg[iarg + 1], "^v_")) {
estr = utils::strdup(arg[iarg + 1] + 2); estr = utils::strdup(arg[iarg + 1] + 2);
} else } else
error->all(FLERR, "Illegal fix efield command"); error->all(FLERR, "Illegal fix efield energy value argument");
iarg += 2; iarg += 2;
} else } else
error->all(FLERR, "Illegal fix efield command"); error->all(FLERR, "Unknown fix efield keyword: {}", arg[iarg]);
} }
force_flag = 0; force_flag = 0;
@ -188,7 +188,7 @@ void FixEfield::init()
if (idregion) { if (idregion) {
region = domain->get_region_by_id(idregion); region = domain->get_region_by_id(idregion);
if (!region) error->all(FLERR, "Region {} for fix aveforce does not exist", idregion); if (!region) error->all(FLERR, "Region {} for fix efield does not exist", idregion);
} }
if (xstyle == ATOM || ystyle == ATOM || zstyle == ATOM) if (xstyle == ATOM || ystyle == ATOM || zstyle == ATOM)

View File

@ -29,7 +29,7 @@ FixStoreForce::FixStoreForce(LAMMPS *lmp, int narg, char **arg) :
Fix(lmp, narg, arg), Fix(lmp, narg, arg),
foriginal(nullptr) foriginal(nullptr)
{ {
if (narg < 3) error->all(FLERR,"Illegal fix store/coord command"); if (narg < 3) error->all(FLERR,"Illegal fix store/force command");
peratom_flag = 1; peratom_flag = 1;
size_peratom_cols = 3; size_peratom_cols = 3;

View File

@ -327,27 +327,28 @@ void Input::file(const char *filename)
// call to file() will close filename and decrement nfile // call to file() will close filename and decrement nfile
if (me == 0) { if (me == 0) {
if (nfile == maxfile) if (nfile == maxfile) error->one(FLERR,"Too many nested levels of input scripts");
error->one(FLERR,"Too many nested levels of input scripts");
if (filename) {
infile = fopen(filename,"r"); infile = fopen(filename,"r");
if (infile == nullptr) if (infile == nullptr)
error->one(FLERR,"Cannot open input script {}: {}", error->one(FLERR,"Cannot open input script {}: {}", filename, utils::getsyserror());
filename, utils::getsyserror());
infiles[nfile++] = infile; infiles[nfile++] = infile;
} }
}
// process contents of file // process contents of file
file(); file();
if (me == 0) { if (me == 0) {
if (filename) {
fclose(infile); fclose(infile);
nfile--; nfile--;
infile = infiles[nfile-1]; infile = infiles[nfile-1];
} }
} }
}
/** Process a single command from a string in *single* /** Process a single command from a string in *single*
* *

View File

@ -532,8 +532,7 @@ void lammps_file(void *handle, const char *filename)
BEGIN_CAPTURE BEGIN_CAPTURE
{ {
if (lmp->update->whichflag != 0) if (lmp->update->whichflag != 0)
lmp->error->all(FLERR,"Library error: issuing LAMMPS commands " lmp->error->all(FLERR, "Library error: issuing LAMMPS commands during a run is not allowed");
"during a run is not allowed.");
else else
lmp->input->file(filename); lmp->input->file(filename);
} }

View File

@ -336,8 +336,8 @@ void ReadData::command(int narg, char **arg)
error->all(FLERR, "Cannot run 2d simulation with nonperiodic Z dimension"); error->all(FLERR, "Cannot run 2d simulation with nonperiodic Z dimension");
if ((domain->nonperiodic == 2) && utils::strmatch(force->kspace_style, "^msm")) if ((domain->nonperiodic == 2) && utils::strmatch(force->kspace_style, "^msm"))
error->all(FLERR, error->all(FLERR,
"Reading a data file with shrinkwrap boundaries is " "Reading a data file with shrinkwrap boundaries is not "
"not compatible with a MSM KSpace style"); "compatible with a MSM KSpace style");
if (domain->box_exist && !addflag) if (domain->box_exist && !addflag)
error->all(FLERR, "Cannot use read_data without add keyword after simulation box is defined"); error->all(FLERR, "Cannot use read_data without add keyword after simulation box is defined");
if (!domain->box_exist && addflag) if (!domain->box_exist && addflag)
@ -617,8 +617,9 @@ void ReadData::command(int narg, char **arg)
atomflag = 1; atomflag = 1;
if (firstpass) { if (firstpass) {
if (me == 0 && !style_match(style, atom->atom_style)) if (me == 0 && !style_match(style, atom->atom_style))
error->warning(FLERR, error->warning(
"Atom style in data file differs from currently defined atom style"); FLERR, "Atom style in data file {} differs from currently defined atom style {}",
style, atom->atom_style);
atoms(); atoms();
} else } else
skip_lines(natoms); skip_lines(natoms);
@ -696,8 +697,9 @@ void ReadData::command(int narg, char **arg)
if (force->pair == nullptr) error->all(FLERR, "Must define pair_style before Pair Coeffs"); if (force->pair == nullptr) error->all(FLERR, "Must define pair_style before Pair Coeffs");
if (firstpass) { if (firstpass) {
if (me == 0 && !style_match(style, force->pair_style)) if (me == 0 && !style_match(style, force->pair_style))
error->warning(FLERR, error->warning(
"Pair style in data file differs from currently defined pair style"); FLERR, "Pair style {} in data file differs from currently defined pair style {}",
style, force->pair_style);
paircoeffs(); paircoeffs();
} else } else
skip_lines(ntypes); skip_lines(ntypes);
@ -706,9 +708,9 @@ void ReadData::command(int narg, char **arg)
error->all(FLERR, "Must define pair_style before PairIJ Coeffs"); error->all(FLERR, "Must define pair_style before PairIJ Coeffs");
if (firstpass) { if (firstpass) {
if (me == 0 && !style_match(style, force->pair_style)) if (me == 0 && !style_match(style, force->pair_style))
error->warning(FLERR, error->warning(
"Pair style in data file differs " FLERR, "Pair style {} in data file differs from currently defined pair style {}",
"from currently defined pair style"); style, force->pair_style);
pairIJcoeffs(); pairIJcoeffs();
} else } else
skip_lines(ntypes * (ntypes + 1) / 2); skip_lines(ntypes * (ntypes + 1) / 2);
@ -718,8 +720,9 @@ void ReadData::command(int narg, char **arg)
if (force->bond == nullptr) error->all(FLERR, "Must define bond_style before Bond Coeffs"); if (force->bond == nullptr) error->all(FLERR, "Must define bond_style before Bond Coeffs");
if (firstpass) { if (firstpass) {
if (me == 0 && !style_match(style, force->bond_style)) if (me == 0 && !style_match(style, force->bond_style))
error->warning(FLERR, error->warning(
"Bond style in data file differs from currently defined bond style"); FLERR, "Bond style {} in data file differs from currently defined bond style {}",
style, force->bond_style);
bondcoeffs(); bondcoeffs();
} else } else
skip_lines(nbondtypes); skip_lines(nbondtypes);
@ -730,8 +733,9 @@ void ReadData::command(int narg, char **arg)
error->all(FLERR, "Must define angle_style before Angle Coeffs"); error->all(FLERR, "Must define angle_style before Angle Coeffs");
if (firstpass) { if (firstpass) {
if (me == 0 && !style_match(style, force->angle_style)) if (me == 0 && !style_match(style, force->angle_style))
error->warning(FLERR, error->warning(
"Angle style in data file differs from currently defined angle style"); FLERR, "Angle style {} in data file differs from currently defined angle style {}",
style, force->angle_style);
anglecoeffs(0); anglecoeffs(0);
} else } else
skip_lines(nangletypes); skip_lines(nangletypes);
@ -742,9 +746,10 @@ void ReadData::command(int narg, char **arg)
error->all(FLERR, "Must define dihedral_style before Dihedral Coeffs"); error->all(FLERR, "Must define dihedral_style before Dihedral Coeffs");
if (firstpass) { if (firstpass) {
if (me == 0 && !style_match(style, force->dihedral_style)) if (me == 0 && !style_match(style, force->dihedral_style))
error->warning(FLERR, error->warning(
"Dihedral style in data file differs " FLERR,
"from currently defined dihedral style"); "Dihedral style {} in data file differs from currently defined dihedral style {}",
style, force->dihedral_style);
dihedralcoeffs(0); dihedralcoeffs(0);
} else } else
skip_lines(ndihedraltypes); skip_lines(ndihedraltypes);
@ -755,9 +760,10 @@ void ReadData::command(int narg, char **arg)
error->all(FLERR, "Must define improper_style before Improper Coeffs"); error->all(FLERR, "Must define improper_style before Improper Coeffs");
if (firstpass) { if (firstpass) {
if (me == 0 && !style_match(style, force->improper_style)) if (me == 0 && !style_match(style, force->improper_style))
error->warning(FLERR, error->warning(
"Improper style in data file differs " FLERR,
"from currently defined improper style"); "Improper style {} in data file differs from currently defined improper style {}",
style, force->improper_style);
impropercoeffs(0); impropercoeffs(0);
} else } else
skip_lines(nimpropertypes); skip_lines(nimpropertypes);
@ -1985,7 +1991,8 @@ void ReadData::paircoeffs()
next = strchr(buf, '\n'); next = strchr(buf, '\n');
*next = '\0'; *next = '\0';
parse_coeffs(buf, nullptr, 1, 2, toffset, tlabelflag, lmap->lmap2lmap.atom); parse_coeffs(buf, nullptr, 1, 2, toffset, tlabelflag, lmap->lmap2lmap.atom);
if (ncoeffarg == 0) error->all(FLERR, "Unexpected empty line in PairCoeffs section"); if (ncoeffarg == 0)
error->all(FLERR, "Unexpected empty line in PairCoeffs section. Expected {} lines.", ntypes);
force->pair->coeff(ncoeffarg, coeffarg); force->pair->coeff(ncoeffarg, coeffarg);
buf = next + 1; buf = next + 1;
} }
@ -2016,7 +2023,11 @@ void ReadData::pairIJcoeffs()
next = strchr(buf, '\n'); next = strchr(buf, '\n');
*next = '\0'; *next = '\0';
parse_coeffs(buf, nullptr, 0, 2, toffset, tlabelflag, lmap->lmap2lmap.atom); parse_coeffs(buf, nullptr, 0, 2, toffset, tlabelflag, lmap->lmap2lmap.atom);
if (ncoeffarg == 0) error->all(FLERR, "Unexpected empty line in PairCoeffs section"); if (ncoeffarg == 0)
error->all(FLERR,
"Unexpected empty line in PairIJCoeffs section. "
"Expected {} lines.",
(ntypes - 1) * ntypes);
force->pair->coeff(ncoeffarg, coeffarg); force->pair->coeff(ncoeffarg, coeffarg);
buf = next + 1; buf = next + 1;
} }
@ -2045,7 +2056,9 @@ void ReadData::bondcoeffs()
next = strchr(buf, '\n'); next = strchr(buf, '\n');
*next = '\0'; *next = '\0';
parse_coeffs(buf, nullptr, 0, 1, boffset, blabelflag, lmap->lmap2lmap.bond); parse_coeffs(buf, nullptr, 0, 1, boffset, blabelflag, lmap->lmap2lmap.bond);
if (ncoeffarg == 0) error->all(FLERR, "Unexpected empty line in BondCoeffs section"); if (ncoeffarg == 0)
error->all(FLERR, "Unexpected empty line in BondCoeffs section. Expected {} lines.",
nbondtypes);
force->bond->coeff(ncoeffarg, coeffarg); force->bond->coeff(ncoeffarg, coeffarg);
buf = next + 1; buf = next + 1;
} }

View File

@ -76,10 +76,14 @@ This program uses the .car and .mdf files from MSI/Biosyms's INSIGHT
The program is started by supplying information at the command prompt The program is started by supplying information at the command prompt
according to the usage described below. according to the usage described below.
USAGE: msi2lmp.exe <ROOTNAME> {-print #} {-class #} {-frc FRC_FILE} USAGE: msi2lmp.exe [-help] <ROOTNAME> [-print #] [-class #] [-frc FRC_FILE]
{-ignore} {-nocenter} {-shift # # #} [-ignore] [-nocenter] [-shift # # #]
-- msi2lmp.exe is the name of the executable -- msi2lmp.exe is the name of the executable
-- -help (or -h)
Print detailed this help message and exit.
-- <ROOTNAME> is the base name of the .car and .mdf files -- <ROOTNAME> is the base name of the .car and .mdf files
-- -print (or -p) -- -print (or -p)
@ -148,6 +152,15 @@ msi2lmp has the following known limitations:
CHANGELOG CHANGELOG
10 Mar 2023 Axel Kohlmeyer <akohlmey@gmail.com>
Substitute UTF-8 characters in .frc files with known ASCII equivalents
and add help message output
05 Nov 2018 Axel Kohlmeyer <akohlmey@gmail.com>
Teach msi2lmp to not generate dihedrals with identical 1-4 atoms
06 Oct 2016 Axel Kohlmeyer <akohlmey@gmail.com> 06 Oct 2016 Axel Kohlmeyer <akohlmey@gmail.com>
Improved whitespace handling in parsing topology and force field Improved whitespace handling in parsing topology and force field
@ -239,5 +252,5 @@ for number_of_dihedrals, etc. could be unpredictable in these systems.
----------------------------- -----------------------------
msi2lmp v3.9.8 6/10/2016 msi2lmp v3.9.10 3/10/2023

View File

@ -48,6 +48,7 @@ const char *SearchAndCheck(const char *keyword)
fprintf(stderr," Exiting....\n"); fprintf(stderr," Exiting....\n");
exit(1); exit(1);
} }
if (has_utf8(line)) utf8_subst(line);
if (line[0] == '@') { if (line[0] == '@') {
if (string_match(strtok(line+1," '\t\n\r\f("),keyword)) { if (string_match(strtok(line+1," '\t\n\r\f("),keyword)) {
got_it = 1; got_it = 1;
@ -82,6 +83,7 @@ void SearchAndFill(struct FrcFieldItem *item)
fprintf(stderr," Exiting....\n"); fprintf(stderr," Exiting....\n");
exit(1); exit(1);
} }
if (has_utf8(line)) utf8_subst(line);
if (line[0] == '#') { if (line[0] == '#') {
if (string_match(strtok(line," '\t\r\n("),item->keyword)) got_it = 1; if (string_match(strtok(line," '\t\r\n("),item->keyword)) got_it = 1;
} }
@ -116,13 +118,16 @@ void SearchAndFill(struct FrcFieldItem *item)
ctr = 0; ctr = 0;
while ( strncmp(line,"!---", 4) != 0 ) { while ( strncmp(line,"!---", 4) != 0 ) {
fgets(line, MAX_LINE_LENGTH, FrcF); fgets(line, MAX_LINE_LENGTH, FrcF);
if (has_utf8(line)) utf8_subst(line);
} }
/* Get first line of data that isn't commented out */ /* Get first line of data that isn't commented out */
fgets(line, MAX_LINE_LENGTH, FrcF); fgets(line, MAX_LINE_LENGTH, FrcF);
if (has_utf8(line)) utf8_subst(line);
while (strncmp(line,"!",1) == 0) { while (strncmp(line,"!",1) == 0) {
fgets( line, MAX_LINE_LENGTH, FrcF); fgets( line, MAX_LINE_LENGTH, FrcF);
if (has_utf8(line)) utf8_subst(line);
} }
/* Read data into structure */ /* Read data into structure */
@ -225,11 +230,13 @@ void SearchAndFill(struct FrcFieldItem *item)
ctr++; ctr++;
} }
fgets( line, MAX_LINE_LENGTH, FrcF); fgets( line, MAX_LINE_LENGTH, FrcF);
if (has_utf8(line)) utf8_subst(line);
/*if blank line encountered, get next */ /*if blank line encountered, get next */
while((blank_line(line)) || while((blank_line(line)) || (strncmp(line,"!",1) == 0)) {
(strncmp(line,"!",1) == 0)) {
status = fgets( line, MAX_LINE_LENGTH, FrcF); status = fgets( line, MAX_LINE_LENGTH, FrcF);
if (status == NULL) break; if (status == NULL) break;
if (has_utf8(line)) utf8_subst(line);
} }
} }
item->entries = ctr; item->entries = ctr;

View File

@ -2,6 +2,9 @@
* *
* msi2lmp.exe * msi2lmp.exe
* *
* v3.9.10 AK - Substitute UTF-8 characters in .frc files with known ASCII equivalents
* - add help message output
*
* v3.9.9 AK - Teach msi2lmp to not generate dihedrals with identical 1-4 atoms * v3.9.9 AK - Teach msi2lmp to not generate dihedrals with identical 1-4 atoms
* *
* v3.9.8 AK - Improved whitespace handling in parsing topology and force * v3.9.8 AK - Improved whitespace handling in parsing topology and force
@ -156,6 +159,59 @@
#include <ctype.h> #include <ctype.h>
#endif #endif
const char helpmesg[] =
" USAGE: msi2lmp [-help] ROOTNAME [-print #] [-class #] [-frc FRC_FILE] [-ignore] [-nocenter] [-oldstyle]\n"
"\n"
" -- msi2lmp is the name of the executable\n"
"\n"
" -- -help or -h triggers printing this message and exits\n"
"\n"
" -- ROOTNAME is the base name of the .car and .mdf files\n"
" -- all opther flags are optional and can be abbreviated (e.g. -p instead of -print)\n"
"\n"
" -- -print\n"
" # is the print level: 0 - silent except for errors\n"
" 1 - minimal (default)\n"
" 2 - more verbose\n"
" 3 - even more verbose\n"
" -- -class\n"
" # is the class of forcefield to use (I or 1 = Class I e.g., CVFF, clayff)\n"
" (II or 2 = Class II e.g., CFFx, COMPASS)\n"
" (O or 0 = OPLS-AA)\n"
" default is -class I\n"
"\n"
" -- -ignore - tells msi2lmp to ignore warnings and errors and keep going\n"
"\n"
" -- -nocenter - tells msi2lmp to not center the box around the (geometrical)\n"
" center of the atoms, but around the origin\n"
"\n"
" -- -oldstyle - tells msi2lmp to write out a data file without style hints\n"
" (to be compatible with older LAMMPS versions)\n"
"\n"
" -- -shift - tells msi2lmp to shift the entire system (box and coordinates)\n"
" by a vector (default: 0.0 0.0 0.0)\n"
"\n"
" -- -frc - specifies name of the forcefield file (e.g., cff91)\n"
"\n"
" If the name includes a hard wired directory (i.e., if the name\n"
" starts with . or /), then the name is used alone. Otherwise,\n"
" the program looks for the forcefield file in $MSI2LMP_LIBRARY.\n"
" If $MSI2LMP_LIBRARY is not set, then the current directory is\n"
" used.\n"
"\n"
" If the file name does not include a dot after the first\n"
" character, then .frc is appended to the name.\n"
"\n"
" For example, -frc cvff (assumes cvff.frc is in $MSI2LMP_LIBRARY or .)\n"
"\n"
" -frc cff/cff91 (assumes cff91.frc is in $MSI2LMP_LIBRARY/cff or ./cff)\n"
"\n"
" -frc /usr/local/forcefields/cff95 (absolute location)\n"
"\n"
" By default, the program uses $MSI2LMP_LIBRARY/cvff.frc\n"
"\n"
" -- output is written to a file called ROOTNAME.data\n";
/* global variables */ /* global variables */
char *rootname; char *rootname;
@ -239,9 +295,14 @@ int main (int argc, char *argv[])
frc_dir_name = getenv("MSI2LMP_LIBRARY"); frc_dir_name = getenv("MSI2LMP_LIBRARY");
if (argc < 2) { if (argc < 2) {
printf("usage: %s <rootname> [-class <I|1|II|2>] [-frc <path to frc file>] [-print #] [-ignore] [-nocenter] [-oldstyle]\n",argv[0]); printf("usage: %s [-help|-h] <rootname> [-class <I|1|II|2|O|0>] [-frc <path to frc file>] [-print #] [-ignore] [-nocenter] [-oldstyle]\n",argv[0]);
return 1; return 1;
} else { /* rootname was supplied as first argument, copy to rootname */ } else {
if ((strcmp(argv[1],"-help") == 0) || (strcmp(argv[1],"-h") == 0)) {
puts(helpmesg);
return 1;
}
/* rootname was supplied as first argument, copy to rootname */
int len = strlen(argv[1]) + 1; int len = strlen(argv[1]) + 1;
rootname = (char *)malloc(len); rootname = (char *)malloc(len);
strcpy(rootname,argv[1]); strcpy(rootname,argv[1]);
@ -249,6 +310,10 @@ int main (int argc, char *argv[])
n = 2; n = 2;
while (n < argc) { while (n < argc) {
if ((strcmp(argv[n],"-help") == 0) || (strcmp(argv[1],"-h") == 0)) {
puts(helpmesg);
return 1;
}
if (strncmp(argv[n],"-c",2) == 0) { if (strncmp(argv[n],"-c",2) == 0) {
n++; n++;
if (check_arg(argv,"-class",n,argc)) if (check_arg(argv,"-class",n,argc))
@ -444,3 +509,101 @@ int main (int argc, char *argv[])
printf("\nNormal program termination\n"); printf("\nNormal program termination\n");
return 0; return 0;
} }
/* detect if a line has UTF-8 characters */
int has_utf8(const char *line)
{
const unsigned char *c = (const unsigned char *)line;
while (*c != '\0') {
if (*c & 0x80U) return 1;
++c;
}
return 0;
}
/* replace UTF-8 characters with ASCII counterparts where known and possible */
void utf8_subst(char *line)
{
unsigned char *buf, *in, *out;
int i, len;
in = (unsigned char *)line;
len = strlen(line);
buf = (unsigned char *)malloc(len+1);
out = buf;
for (i = 0; i < len; ++i) {
/* UTF-8 2-byte character */
if ((in[i] & 0xe0U) == 0xc0U) {
if ((i + 1) < len) {
/* NON-BREAKING SPACE (U+00A0) */
if ((in[i] == 0xc2U) && (in[i + 1] == 0xa0U)) *out++ = ' ', ++i;
/* MODIFIER LETTER PLUS SIGN (U+02D6) */
if ((in[i] == 0xcbU) && (in[i + 1] == 0x96U)) *out++ = '+', ++i;
/* MODIFIER LETTER MINUS SIGN (U+02D7) */
if ((in[i] == 0xcbU) && (in[i + 1] == 0x97U)) *out++ = '-', ++i;
}
/* UTF-8 3-byte character */
} else if ((in[i] & 0xf0U) == 0xe0U) {
if ((i + 2) < len) {
/* EN QUAD (U+2000) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x80U)) *out++ = ' ', i += 2;
/* EM QUAD (U+2001) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x81U)) *out++ = ' ', i += 2;
/* EN SPACE (U+2002) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x82U)) *out++ = ' ', i += 2;
/* EM SPACE (U+2003) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x83U)) *out++ = ' ', i += 2;
/* THREE-PER-EM SPACE (U+2004) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x84U)) *out++ = ' ', i += 2;
/* FOUR-PER-EM SPACE (U+2005) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x85U)) *out++ = ' ', i += 2;
/* SIX-PER-EM SPACE (U+2006) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x86U)) *out++ = ' ', i += 2;
/* FIGURE SPACE (U+2007) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x87U)) *out++ = ' ', i += 2;
/* PUNCTUATION SPACE (U+2008) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x88U)) *out++ = ' ', i += 2;
/* THIN SPACE (U+2009) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x89U)) *out++ = ' ', i += 2;
/* HAIR SPACE (U+200A) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x8aU)) *out++ = ' ', i += 2;
/* ZERO WIDTH SPACE (U+200B) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x8bU)) *out++ = ' ', i += 2;
/* LEFT SINGLE QUOTATION MARK (U+2018) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x98U)) *out++ = '\'', i += 2;
/* RIGHT SINGLE QUOTATION MARK (U+2019) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x99U)) *out++ = '\'', i += 2;
/* LEFT DOUBLE QUOTATION MARK (U+201C) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x9cU)) *out++ = '"', i += 2;
/* RIGHT DOUBLE QUOTATION MARK (U+201D) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0x9dU)) *out++ = '"', i += 2;
/* NARROW NO-BREAK SPACE (U+202F) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x80U) && (in[i + 2] == 0xafU)) *out++ = ' ', i += 2;
/* WORD JOINER (U+2060) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x81U) && (in[i + 2] == 0xa0U)) *out++ = ' ', i += 2;
/* INVISIBLE SEPARATOR (U+2063) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x81U) && (in[i + 2] == 0xa3U)) *out++ = ' ', i += 2;
/* INVISIBLE PLUS (U+2064) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x81U) && (in[i + 2] == 0xa4U)) *out++ = '+', i += 2;
/* MINUS SIGN (U+2212) */
if ((in[i] == 0xe2U) && (in[i + 1] == 0x88U) && (in[i + 2] == 0x92U)) *out++ = '-', i += 2;
/* ZERO WIDTH NO-BREAK SPACE (U+FEFF) */
if ((in[i] == 0xefU) && (in[i + 1] == 0xbbU) && (in[i + 2] == 0xbfU)) *out++ = ' ', i += 2;
}
/* UTF-8 4-byte character */
} else if ((in[i] & 0xf8U) == 0xf0U) {
if ((i + 3) < len) { ; }
} else {
*out++ = in[i];
}
}
*out = '\0';
strncpy(line, (char *)buf, len);
free(buf);
}

View File

@ -36,7 +36,7 @@
#include <stdio.h> /* IWYU pragma: export */ #include <stdio.h> /* IWYU pragma: export */
#define MSI2LMP_VERSION "v3.9.9 / 05 Nov 2018" #define MSI2LMP_VERSION "v3.9.10 / 10 Mar 2023"
#define PI_180 0.01745329251994329576 #define PI_180 0.01745329251994329576
@ -226,3 +226,6 @@ extern void lamda2x(double *lamda, double *x, double *h, double *boxlo);
extern void x2lamda(double *x, double *lamda, double *h_inv, double *boxlo); extern void x2lamda(double *x, double *lamda, double *h_inv, double *boxlo);
extern void condexit(int); extern void condexit(int);
extern int has_utf8(const char *line);
extern void utf8_subst(char *line);