2
.github/CONTRIBUTING.md
vendored
2
.github/CONTRIBUTING.md
vendored
@ -73,7 +73,7 @@ Here is a checklist of steps you need to follow to submit a single file or user
|
||||
* If you want your contribution to be added as a user-contributed feature, and it is a single file (actually a `<name>.cpp` and `<name>.h` file) it can be rapidly added to the USER-MISC directory. Include the one-line entry to add to the USER-MISC/README file in that directory, along with the 2 source files. You can do this multiple times if you wish to contribute several individual features.
|
||||
* If you want your contribution to be added as a user-contribution and it is several related features, it is probably best to make it a user package directory with a name like USER-FOO. In addition to your new files, the directory should contain a README text file. The README should contain your name and contact information and a brief description of what your new package does. If your files depend on other LAMMPS style files also being installed (e.g. because your file is a derived class from the other LAMMPS class), then an Install.sh file is also needed to check for those dependencies. See other README and Install.sh files in other USER directories as examples. Send us a tarball of this USER-FOO directory.
|
||||
* Your new source files need to have the LAMMPS copyright, GPL notice, and your name and email address at the top, like other user-contributed LAMMPS source files. They need to create a class that is inside the LAMMPS namespace. If the file is for one of the USER packages, including USER-MISC, then we are not as picky about the coding style (see above). I.e. the files do not need to be in the same stylistic format and syntax as other LAMMPS files, though that would be nice for developers as well as users who try to read your code.
|
||||
* You **must** also create or extend a documentation file for each new command or style you are adding to LAMMPS. For simplicity and convenience, the documentation of groups of closely related commands or styles may be combined into a single file. This will be one file for a single-file feature. For a package, it might be several files. These are files in the [reStructuredText](https://docutils.sourceforge.io/rst.html) markup language, that are then converted to HTML and PDF. The tools for this conversion are included in the source distribution, and the translation can be as simple as doing "make html pdf" in the doc folder. Thus the documentation source files must be in the same format and style as other `<name>.rst` files in the lammps/doc/src directory for similar commands and styles; use one or more of them as a starting point. An introduction to reStructuredText can be found at [https://docutils.sourceforge.io/docs/user/rst/quickstart.html](https://docutils.sourceforge.io/docs/user/rst/quickstart.html). As appropriate, the text files can include mathematical expressions in MathJAX markup or links to equations (see doc/Eqs/*.tex for examples, we auto-create the associated JPG files), or figures (see doc/JPG for examples), or even additional PDF files with further details (see doc/PDF for examples). The doc page should also include literature citations as appropriate; see the bottom of doc/fix_nh.rst for examples and the earlier part of the same file for how to format the cite itself. The "Restrictions" section of the doc page should indicate that your command is only available if LAMMPS is built with the appropriate USER-MISC or USER-FOO package. See other user package doc files for examples of how to do this. The prerequisite for building the HTML format files are Python 3.x and virtualenv. Please run at least `make html` and `make spelling` and carefully inspect and proofread the resulting HTML format doc page as well as the output produced to the screen. Make sure that all spelling errors are fixed or the necessary false positives are added to the `doc/utils/sphinx-config/false_positives.txt` file. For new styles, those usually also need to be added to lists on the respective overview pages. This can be checked for also with `make style_check`.
|
||||
* You **must** also create or extend a documentation file for each new command or style you are adding to LAMMPS. For simplicity and convenience, the documentation of groups of closely related commands or styles may be combined into a single file. This will be one file for a single-file feature. For a package, it might be several files. These are files in the [reStructuredText](https://docutils.sourceforge.io/rst.html) markup language, that are then converted to HTML and PDF. The tools for this conversion are included in the source distribution, and the translation can be as simple as doing "make html pdf" in the doc folder. Thus the documentation source files must be in the same format and style as other `<name>.rst` files in the lammps/doc/src directory for similar commands and styles; use one or more of them as a starting point. An introduction to reStructuredText can be found at [https://docutils.sourceforge.io/docs/user/rst/quickstart.html](https://docutils.sourceforge.io/docs/user/rst/quickstart.html). The text files can include mathematical expressions and symbol in ".. math::" sections or ":math:" expressions or figures (see doc/JPG for examples), or even additional PDF files with further details (see doc/PDF for examples). The doc page should also include literature citations as appropriate; see the bottom of doc/fix_nh.rst for examples and the earlier part of the same file for how to format the cite itself. The "Restrictions" section of the doc page should indicate that your command is only available if LAMMPS is built with the appropriate USER-MISC or USER-FOO package. See other user package doc files for examples of how to do this. The prerequisite for building the HTML format files are Python 3.x and virtualenv. Please run at least `make html`, `make pdf` and `make spelling` and carefully inspect and proofread the resulting HTML format doc page as well as the output produced to the screen. Make sure that all spelling errors are fixed or the necessary false positives are added to the `doc/utils/sphinx-config/false_positives.txt` file. For new styles, those usually also need to be added to lists on the respective overview pages. This can be checked for also with `make style_check`.
|
||||
* For a new package (or even a single command) you should include one or more example scripts demonstrating its use. These should run in no more than a couple minutes, even on a single processor, and not require large data files as input. See directories under examples/USER for examples of input scripts other users provided for their packages. These example inputs are also required for validating memory accesses and testing for memory leaks with valgrind
|
||||
* If there is a paper of yours describing your feature (either the algorithm/science behind the feature itself, or its initial usage, or its implementation in LAMMPS), you can add the citation to the *.cpp source file. See src/USER-EFF/atom_vec_electron.cpp for an example. A LaTeX citation is stored in a variable at the top of the file and a single line of code that references the variable is added to the constructor of the class. Whenever a user invokes your feature from their input script, this will cause LAMMPS to output the citation to a log.cite file and prompt the user to examine the file. Note that you should only use this for a paper you or your group authored. E.g. adding a cite in the code for a paper by Nose and Hoover if you write a fix that implements their integrator is not the intended usage. That kind of citation should just be in the doc page you provide.
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
# CMake build system
|
||||
# This file is part of LAMMPS
|
||||
# Created by Christoph Junghans and Richard Berger
|
||||
cmake_minimum_required(VERSION 2.8.12)
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
project(lammps CXX)
|
||||
set(SOVERSION 0)
|
||||
@ -52,16 +52,19 @@ include(CheckCCompilerFlag)
|
||||
include(CheckIncludeFileCXX)
|
||||
|
||||
if(${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel")
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -restrict -std=c++11")
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -restrict")
|
||||
endif()
|
||||
|
||||
option(DISABLE_CXX11_REQUIREMENT "Disable check that requires C++11 for compiling LAMMPS" OFF)
|
||||
if(DISABLE_CXX11_REQUIREMENT)
|
||||
add_definitions(-DLAMMPS_CXX98)
|
||||
# else()
|
||||
# set(CMAKE_CXX_STANDARD 11)
|
||||
if(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
|
||||
if(NOT ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug"))
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ffast-math -ftree-vectorize -fexpensive-optimizations")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# we require C++11
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
# GNU compiler features
|
||||
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
|
||||
option(ENABLE_COVERAGE "Enable code coverage" OFF)
|
||||
@ -131,9 +134,9 @@ set(DEFAULT_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE
|
||||
USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-MESO USER-CGSDK USER-COLVARS
|
||||
USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD USER-LB
|
||||
USER-MANIFOLD USER-MEAMC USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE
|
||||
USER-NETCDF USER-PHONON USER-PLUMED USER-PTM USER-QTB USER-REAXC
|
||||
USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-TALLY USER-UEF
|
||||
USER-VTK USER-QUIP USER-QMMM USER-YAFF USER-ADIOS)
|
||||
USER-NETCDF USER-PHONON USER-PLUMED USER-PTM USER-QTB USER-REACTION
|
||||
USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-TALLY
|
||||
USER-UEF USER-VTK USER-QUIP USER-QMMM USER-YAFF USER-ADIOS)
|
||||
set(ACCEL_PACKAGES USER-OMP KOKKOS OPT USER-INTEL GPU)
|
||||
foreach(PKG ${DEFAULT_PACKAGES} ${ACCEL_PACKAGES})
|
||||
option(PKG_${PKG} "Build ${PKG} Package" OFF)
|
||||
@ -178,6 +181,7 @@ option(BUILD_MPI "Build MPI version" ${MPI_FOUND})
|
||||
if(BUILD_MPI)
|
||||
find_package(MPI REQUIRED)
|
||||
include_directories(${MPI_CXX_INCLUDE_PATH})
|
||||
add_definitions(-DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1)
|
||||
list(APPEND LAMMPS_LINK_LIBS ${MPI_CXX_LIBRARIES})
|
||||
option(LAMMPS_LONGLONG_TO_LONG "Workaround if your system or MPI version does not recognize 'long long' data types" OFF)
|
||||
if(LAMMPS_LONGLONG_TO_LONG)
|
||||
@ -355,9 +359,6 @@ endforeach(HEADER)
|
||||
set(MATH_LIBRARIES "m" CACHE STRING "math library")
|
||||
mark_as_advanced( MATH_LIBRARIES )
|
||||
include(CheckLibraryExists)
|
||||
if (CMAKE_VERSION VERSION_LESS "3.4")
|
||||
enable_language(C) # check_library_exists isn't supported without a C compiler before v3.4
|
||||
endif()
|
||||
# RB: disabled this check because it breaks with KOKKOS CUDA enabled
|
||||
#foreach(FUNC sin cos)
|
||||
# check_library_exists(${MATH_LIBRARIES} ${FUNC} "" FOUND_${FUNC}_${MATH_LIBRARIES})
|
||||
|
||||
@ -1,7 +1,4 @@
|
||||
if(PKG_GPU)
|
||||
if (CMAKE_VERSION VERSION_LESS "3.1")
|
||||
message(FATAL_ERROR "For the GPU package you need at least cmake-3.1")
|
||||
endif()
|
||||
set(GPU_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/GPU)
|
||||
set(GPU_SOURCES ${GPU_SOURCES_DIR}/gpu_extra.h
|
||||
${GPU_SOURCES_DIR}/fix_gpu.h
|
||||
|
||||
@ -8,9 +8,6 @@ if(PKG_LATTE)
|
||||
endif()
|
||||
option(DOWNLOAD_LATTE "Download the LATTE library instead of using an already installed one" ${DOWNLOAD_LATTE_DEFAULT})
|
||||
if(DOWNLOAD_LATTE)
|
||||
if (CMAKE_VERSION VERSION_LESS "3.7") # due to SOURCE_SUBDIR
|
||||
message(FATAL_ERROR "For downlading LATTE you need at least cmake-3.7")
|
||||
endif()
|
||||
if(CMAKE_GENERATOR STREQUAL "Ninja")
|
||||
message(FATAL_ERROR "Cannot build downloaded LATTE library with Ninja build tool")
|
||||
endif()
|
||||
|
||||
@ -8,9 +8,6 @@ if(PKG_MSCG)
|
||||
endif()
|
||||
option(DOWNLOAD_MSCG "Download MSCG library instead of using an already installed one)" ${DOWNLOAD_MSCG_DEFAULT})
|
||||
if(DOWNLOAD_MSCG)
|
||||
if (CMAKE_VERSION VERSION_LESS "3.7") # due to SOURCE_SUBDIR
|
||||
message(FATAL_ERROR "For downlading MSCG you need at least cmake-3.7")
|
||||
endif()
|
||||
if(CMAKE_GENERATOR STREQUAL "Ninja")
|
||||
message(FATAL_ERROR "Cannot build downloaded MSCG library with Ninja build tool")
|
||||
endif()
|
||||
|
||||
@ -1,8 +1,4 @@
|
||||
if(PKG_USER-MOLFILE)
|
||||
if (CMAKE_VERSION VERSION_LESS "3.10") # due to INTERFACE without a library
|
||||
message(FATAL_ERROR "For configuring USER-MOLFILE you need CMake 3.10 or later")
|
||||
endif()
|
||||
|
||||
set(MOLFILE_INCLUDE_DIRS "${LAMMPS_LIB_SOURCE_DIR}/molfile" CACHE STRING "Path to VMD molfile plugin headers")
|
||||
add_library(molfile INTERFACE)
|
||||
target_include_directories(molfile INTERFACE ${MOLFILE_INCLUDE_DIRS})
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
.TH LAMMPS "27 February 2020" "2020-02-27"
|
||||
.TH LAMMPS "3 March 2020" "2020-03-03"
|
||||
.SH NAME
|
||||
.B LAMMPS
|
||||
\- Molecular Dynamics Simulator.
|
||||
|
||||
@ -95,10 +95,8 @@ this directory or sub-directories within it that CMake creates.
|
||||
directory to un-install all packages. The purge removes all the \*.h
|
||||
files auto-generated by make.
|
||||
|
||||
You must have CMake version 2.8 or later on your system to build
|
||||
LAMMPS. A handful of LAMMPS packages (KOKKOS, LATTE, MSCG) require a
|
||||
later version. CMake will print a message telling you if a later
|
||||
version is required. Installation instructions for CMake are below.
|
||||
You must have CMake version 3.10 or later on your system to build
|
||||
LAMMPS. Installation instructions for CMake are below.
|
||||
|
||||
After the initial build, if you edit LAMMPS source files, or add your
|
||||
own new files to the source directory, you can just re-type make from
|
||||
|
||||
@ -287,22 +287,29 @@ KOKKOS\_ARCH settings described below. Note that for CMake, these are
|
||||
really Kokkos variables, not LAMMPS variables. Hence you must use
|
||||
case-sensitive values, e.g. BDW, not bdw.
|
||||
|
||||
* AMDAVX = AMD 64-bit x86 CPUs
|
||||
* EPYC = AMD EPYC Zen class CPUs
|
||||
* ARMv80 = ARMv8.0 Compatible CPU
|
||||
* ARMv81 = ARMv8.1 Compatible CPU
|
||||
* ARMv8-ThunderX = ARMv8 Cavium ThunderX CPU
|
||||
* BGQ = IBM Blue Gene/Q CPUs
|
||||
* Power8 = IBM POWER8 CPUs
|
||||
* Power9 = IBM POWER9 CPUs
|
||||
* ARMv8-TX2 = ARMv8 Cavium ThunderX2 CPU
|
||||
* WSM = Intel Westmere CPUs
|
||||
* SNB = Intel Sandy/Ivy Bridge CPUs
|
||||
* HSW = Intel Haswell CPUs
|
||||
* BDW = Intel Broadwell Xeon E-class CPUs
|
||||
* SKX = Intel Sky Lake Xeon E-class HPC CPUs (AVX512)
|
||||
* KNC = Intel Knights Corner Xeon Phi
|
||||
* KNL = Intel Knights Landing Xeon Phi
|
||||
* BGQ = IBM Blue Gene/Q CPUs
|
||||
* Power7 = IBM POWER8 CPUs
|
||||
* Power8 = IBM POWER8 CPUs
|
||||
* Power9 = IBM POWER9 CPUs
|
||||
* Kepler = NVIDIA Kepler default (generation CC 3.5)
|
||||
* Kepler30 = NVIDIA Kepler generation CC 3.0
|
||||
* Kepler32 = NVIDIA Kepler generation CC 3.2
|
||||
* Kepler35 = NVIDIA Kepler generation CC 3.5
|
||||
* Kepler37 = NVIDIA Kepler generation CC 3.7
|
||||
* Maxwell = NVIDIA Maxwell default (generation CC 5.0)
|
||||
* Maxwell50 = NVIDIA Maxwell generation CC 5.0
|
||||
* Maxwell52 = NVIDIA Maxwell generation CC 5.2
|
||||
* Maxwell53 = NVIDIA Maxwell generation CC 5.3
|
||||
|
||||
@ -23,11 +23,11 @@ explain how to do this for building both with CMake and make.
|
||||
C++11 standard compliance
|
||||
------------------------------------------
|
||||
|
||||
The LAMMPS developers plan to transition to make the C++11 standard the
|
||||
minimum requirement for compiling LAMMPS. Currently this only applies to
|
||||
some packages like KOKKOS while the rest aims to be compatible with the C++98
|
||||
standard. Most currently used compilers are compatible with C++11; some need
|
||||
to set extra flags to enable C++11 compliance. Example for GNU c++:
|
||||
A C++11 standard compatible compiler is a requirement for compiling LAMMPS.
|
||||
LAMMPS version 3 March 2020 is the last version compatible with the previous
|
||||
C++98 standard for the core code and most packages. Most currently used
|
||||
C++ compilers are compatible with C++11, but some older ones may need extra
|
||||
flags to enable C++11 compliance. Example for GNU c++ 4.8.x:
|
||||
|
||||
.. code-block:: make
|
||||
|
||||
|
||||
@ -17,7 +17,7 @@ General commands
|
||||
An alphabetic list of all general LAMMPS commands.
|
||||
|
||||
.. table_from_list::
|
||||
:columns: 6
|
||||
:columns: 5
|
||||
|
||||
* :doc:`angle_coeff <angle_coeff>`
|
||||
* :doc:`angle_style <angle_style>`
|
||||
|
||||
@ -9,133 +9,161 @@ have their own pages where they are listed alphabetically.
|
||||
Initialization:
|
||||
------------------------------
|
||||
|
||||
* :doc:`newton <newton>`,
|
||||
* :doc:`package <package>`,
|
||||
* :doc:`processors <processors>`,
|
||||
* :doc:`suffix <suffix>`,
|
||||
* :doc:`units <units>`
|
||||
.. table_from_list::
|
||||
:columns: 5
|
||||
|
||||
* :doc:`newton <newton>`
|
||||
* :doc:`package <package>`
|
||||
* :doc:`processors <processors>`
|
||||
* :doc:`suffix <suffix>`
|
||||
* :doc:`units <units>`
|
||||
|
||||
Setup simulation box:
|
||||
------------------------------
|
||||
|
||||
* :doc:`boundary <boundary>`,
|
||||
* :doc:`box <box>`,
|
||||
* :doc:`change_box <change_box>`,
|
||||
* :doc:`create_box <create_box>`,
|
||||
* :doc:`dimension <dimension>`,
|
||||
* :doc:`lattice <lattice>`,
|
||||
* :doc:`region <region>`
|
||||
.. table_from_list::
|
||||
:columns: 4
|
||||
|
||||
* :doc:`boundary <boundary>`
|
||||
* :doc:`box <box>`
|
||||
* :doc:`change_box <change_box>`
|
||||
* :doc:`create_box <create_box>`
|
||||
* :doc:`dimension <dimension>`
|
||||
* :doc:`lattice <lattice>`
|
||||
* :doc:`region <region>`
|
||||
|
||||
Setup atoms:
|
||||
------------------------------
|
||||
|
||||
* :doc:`atom_modify <atom_modify>`,
|
||||
* :doc:`atom_style <atom_style>`,
|
||||
* :doc:`balance <balance>`,
|
||||
* :doc:`create_atoms <create_atoms>`,
|
||||
* :doc:`create_bonds <create_bonds>`,
|
||||
* :doc:`delete_atoms <delete_atoms>`,
|
||||
* :doc:`delete_bonds <delete_bonds>`,
|
||||
* :doc:`displace_atoms <displace_atoms>`,
|
||||
* :doc:`group <group>`,
|
||||
* :doc:`mass <mass>`,
|
||||
* :doc:`molecule <molecule>`,
|
||||
* :doc:`read_data <read_data>`,
|
||||
* :doc:`read_dump <read_dump>`,
|
||||
* :doc:`read_restart <read_restart>`,
|
||||
* :doc:`replicate <replicate>`,
|
||||
* :doc:`set <set>`,
|
||||
* :doc:`velocity <velocity>`
|
||||
.. table_from_list::
|
||||
:columns: 4
|
||||
|
||||
* :doc:`atom_modify <atom_modify>`
|
||||
* :doc:`atom_style <atom_style>`
|
||||
* :doc:`balance <balance>`
|
||||
* :doc:`create_atoms <create_atoms>`
|
||||
* :doc:`create_bonds <create_bonds>`
|
||||
* :doc:`delete_atoms <delete_atoms>`
|
||||
* :doc:`delete_bonds <delete_bonds>`
|
||||
* :doc:`displace_atoms <displace_atoms>`
|
||||
* :doc:`group <group>`
|
||||
* :doc:`mass <mass>`
|
||||
* :doc:`molecule <molecule>`
|
||||
* :doc:`read_data <read_data>`
|
||||
* :doc:`read_dump <read_dump>`
|
||||
* :doc:`read_restart <read_restart>`
|
||||
* :doc:`replicate <replicate>`
|
||||
* :doc:`set <set>`
|
||||
* :doc:`velocity <velocity>`
|
||||
|
||||
Force fields:
|
||||
------------------------------
|
||||
|
||||
* :doc:`angle_coeff <angle_coeff>`,
|
||||
* :doc:`angle_style <angle_style>`,
|
||||
* :doc:`bond_coeff <bond_coeff>`,
|
||||
* :doc:`bond_style <bond_style>`,
|
||||
* :doc:`bond_write <bond_write>`,
|
||||
* :doc:`dielectric <dielectric>`,
|
||||
* :doc:`dihedral_coeff <dihedral_coeff>`,
|
||||
* :doc:`dihedral_style <dihedral_style>`,
|
||||
* :doc:`improper_coeff <improper_coeff>`,
|
||||
* :doc:`improper_style <improper_style>`,
|
||||
* :doc:`kspace_modify <kspace_modify>`,
|
||||
* :doc:`kspace_style <kspace_style>`,
|
||||
* :doc:`pair_coeff <pair_coeff>`,
|
||||
* :doc:`pair_modify <pair_modify>`,
|
||||
* :doc:`pair_style <pair_style>`,
|
||||
* :doc:`pair_write <pair_write>`,
|
||||
* :doc:`special_bonds <special_bonds>`
|
||||
.. table_from_list::
|
||||
:columns: 4
|
||||
|
||||
* :doc:`angle_coeff <angle_coeff>`
|
||||
* :doc:`angle_style <angle_style>`
|
||||
* :doc:`bond_coeff <bond_coeff>`
|
||||
* :doc:`bond_style <bond_style>`
|
||||
* :doc:`bond_write <bond_write>`
|
||||
* :doc:`dielectric <dielectric>`
|
||||
* :doc:`dihedral_coeff <dihedral_coeff>`
|
||||
* :doc:`dihedral_style <dihedral_style>`
|
||||
* :doc:`improper_coeff <improper_coeff>`
|
||||
* :doc:`improper_style <improper_style>`
|
||||
* :doc:`kspace_modify <kspace_modify>`
|
||||
* :doc:`kspace_style <kspace_style>`
|
||||
* :doc:`pair_coeff <pair_coeff>`
|
||||
* :doc:`pair_modify <pair_modify>`
|
||||
* :doc:`pair_style <pair_style>`
|
||||
* :doc:`pair_write <pair_write>`
|
||||
* :doc:`special_bonds <special_bonds>`
|
||||
|
||||
Settings:
|
||||
------------------------------
|
||||
|
||||
* :doc:`comm_modify <comm_modify>`,
|
||||
* :doc:`comm_style <comm_style>`,
|
||||
* :doc:`info <info>`,
|
||||
* :doc:`min_modify <min_modify>`,
|
||||
* :doc:`min_style <min_style>`,
|
||||
* :doc:`neigh_modify <neigh_modify>`,
|
||||
* :doc:`neighbor <neighbor>`,
|
||||
* :doc:`partition <partition>`,
|
||||
* :doc:`reset_timestep <reset_timestep>`,
|
||||
* :doc:`run_style <run_style>`,
|
||||
* :doc:`timer <timer>`,
|
||||
* :doc:`timestep <timestep>`
|
||||
.. table_from_list::
|
||||
:columns: 4
|
||||
|
||||
* :doc:`comm_modify <comm_modify>`
|
||||
* :doc:`comm_style <comm_style>`
|
||||
* :doc:`info <info>`
|
||||
* :doc:`min_modify <min_modify>`
|
||||
* :doc:`min_style <min_style>`
|
||||
* :doc:`neigh_modify <neigh_modify>`
|
||||
* :doc:`neighbor <neighbor>`
|
||||
* :doc:`partition <partition>`
|
||||
* :doc:`reset_timestep <reset_timestep>`
|
||||
* :doc:`run_style <run_style>`
|
||||
* :doc:`timer <timer>`
|
||||
* :doc:`timestep <timestep>`
|
||||
|
||||
Operations within timestepping (fixes) and diagnostics (computes):
|
||||
------------------------------------------------------------------------------------------
|
||||
|
||||
* :doc:`compute <compute>`,
|
||||
* :doc:`compute_modify <compute_modify>`,
|
||||
* :doc:`fix <fix>`,
|
||||
* :doc:`fix_modify <fix_modify>`,
|
||||
* :doc:`uncompute <uncompute>`,
|
||||
* :doc:`unfix <unfix>`
|
||||
.. table_from_list::
|
||||
:columns: 4
|
||||
|
||||
* :doc:`compute <compute>`
|
||||
* :doc:`compute_modify <compute_modify>`
|
||||
* :doc:`fix <fix>`
|
||||
* :doc:`fix_modify <fix_modify>`
|
||||
* :doc:`uncompute <uncompute>`
|
||||
* :doc:`unfix <unfix>`
|
||||
|
||||
Output:
|
||||
------------------------------
|
||||
|
||||
* :doc:`dump image <dump_image>`,
|
||||
* :doc:`dump movie <dump_image>`,
|
||||
* :doc:`dump <dump>`,
|
||||
* :doc:`dump_modify <dump_modify>`,
|
||||
* :doc:`restart <restart>`,
|
||||
* :doc:`thermo <thermo>`,
|
||||
* :doc:`thermo_modify <thermo_modify>`,
|
||||
* :doc:`thermo_style <thermo_style>`,
|
||||
* :doc:`undump <undump>`,
|
||||
* :doc:`write_coeff <write_coeff>`,
|
||||
* :doc:`write_data <write_data>`,
|
||||
* :doc:`write_dump <write_dump>`,
|
||||
* :doc:`write_restart <write_restart>`
|
||||
.. table_from_list::
|
||||
:columns: 4
|
||||
|
||||
* :doc:`dump image <dump_image>`
|
||||
* :doc:`dump movie <dump_image>`
|
||||
* :doc:`dump <dump>`
|
||||
* :doc:`dump_modify <dump_modify>`
|
||||
* :doc:`restart <restart>`
|
||||
* :doc:`thermo <thermo>`
|
||||
* :doc:`thermo_modify <thermo_modify>`
|
||||
* :doc:`thermo_style <thermo_style>`
|
||||
* :doc:`undump <undump>`
|
||||
* :doc:`write_coeff <write_coeff>`
|
||||
* :doc:`write_data <write_data>`
|
||||
* :doc:`write_dump <write_dump>`
|
||||
* :doc:`write_restart <write_restart>`
|
||||
|
||||
Actions:
|
||||
------------------------------
|
||||
|
||||
* :doc:`minimize <minimize>`,
|
||||
* :doc:`neb <neb>`,
|
||||
* :doc:`neb_spin <neb_spin>`,
|
||||
* :doc:`prd <prd>`,
|
||||
* :doc:`rerun <rerun>`,
|
||||
* :doc:`run <run>`,
|
||||
* :doc:`tad <tad>`,
|
||||
* :doc:`temper <temper>`
|
||||
.. table_from_list::
|
||||
:columns: 6
|
||||
|
||||
* :doc:`minimize <minimize>`
|
||||
* :doc:`neb <neb>`
|
||||
* :doc:`neb_spin <neb_spin>`
|
||||
* :doc:`prd <prd>`
|
||||
* :doc:`rerun <rerun>`
|
||||
* :doc:`run <run>`
|
||||
* :doc:`tad <tad>`
|
||||
* :doc:`temper <temper>`
|
||||
|
||||
Input script control:
|
||||
------------------------------
|
||||
|
||||
* :doc:`clear <clear>`,
|
||||
* :doc:`echo <echo>`,
|
||||
* :doc:`if <if>`,
|
||||
* :doc:`include <include>`,
|
||||
* :doc:`jump <jump>`,
|
||||
* :doc:`label <label>`,
|
||||
* :doc:`log <log>`,
|
||||
* :doc:`next <next>`,
|
||||
* :doc:`print <print>`,
|
||||
* :doc:`python <python>`,
|
||||
* :doc:`quit <quit>`,
|
||||
* :doc:`shell <shell>`,
|
||||
* :doc:`variable <variable>`
|
||||
.. table_from_list::
|
||||
:columns: 7
|
||||
|
||||
* :doc:`clear <clear>`
|
||||
* :doc:`echo <echo>`
|
||||
* :doc:`if <if>`
|
||||
* :doc:`include <include>`
|
||||
* :doc:`info <info>`
|
||||
* :doc:`jump <jump>`
|
||||
* :doc:`label <label>`
|
||||
* :doc:`log <log>`
|
||||
* :doc:`next <next>`
|
||||
* :doc:`print <print>`
|
||||
* :doc:`python <python>`
|
||||
* :doc:`quit <quit>`
|
||||
* :doc:`shell <shell>`
|
||||
* :doc:`variable <variable>`
|
||||
|
||||
@ -20,7 +20,7 @@ additional letters in parenthesis: g = GPU, i = USER-INTEL, k =
|
||||
KOKKOS, o = USER-OMP, t = OPT.
|
||||
|
||||
.. table_from_list::
|
||||
:columns: 6
|
||||
:columns: 5
|
||||
|
||||
* :doc:`ackland/atom <compute_ackland_atom>`
|
||||
* :doc:`adf <compute_adf>`
|
||||
|
||||
@ -20,7 +20,7 @@ parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
|
||||
OPT.
|
||||
|
||||
.. table_from_list::
|
||||
:columns: 6
|
||||
:columns: 5
|
||||
|
||||
* :doc:`adapt <fix_adapt>`
|
||||
* :doc:`adapt/fep <fix_adapt_fep>`
|
||||
|
||||
@ -26,6 +26,10 @@ OPT.
|
||||
* :doc:`zero <pair_zero>`
|
||||
* :doc:`hybrid (k) <pair_hybrid>`
|
||||
* :doc:`hybrid/overlay (k) <pair_hybrid>`
|
||||
* :doc:`kim <pair_kim>`
|
||||
* :doc:`list <pair_list>`
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
@ -108,14 +112,12 @@ OPT.
|
||||
* :doc:`hbond/dreiding/lj (o) <pair_hbond_dreiding>`
|
||||
* :doc:`hbond/dreiding/morse (o) <pair_hbond_dreiding>`
|
||||
* :doc:`ilp/graphene/hbn <pair_ilp_graphene_hbn>`
|
||||
* :doc:`kim <pair_kim>`
|
||||
* :doc:`kolmogorov/crespi/full <pair_kolmogorov_crespi_full>`
|
||||
* :doc:`kolmogorov/crespi/z <pair_kolmogorov_crespi_z>`
|
||||
* :doc:`lcbop <pair_lcbop>`
|
||||
* :doc:`lebedeva/z <pair_lebedeva_z>`
|
||||
* :doc:`lennard/mdf <pair_mdf>`
|
||||
* :doc:`line/lj <pair_line_lj>`
|
||||
* :doc:`list <pair_list>`
|
||||
* :doc:`lj/charmm/coul/charmm (iko) <pair_charmm>`
|
||||
* :doc:`lj/charmm/coul/charmm/implicit (ko) <pair_charmm>`
|
||||
* :doc:`lj/charmm/coul/long (gikot) <pair_charmm>`
|
||||
|
||||
@ -509,14 +509,14 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
||||
|
||||
*Bond/react: Atom affected by reaction too close to template edge*
|
||||
This means an atom which changes type or connectivity during the
|
||||
reaction is too close to an 'edge' atom defined in the superimpose
|
||||
reaction is too close to an 'edge' atom defined in the map
|
||||
file. This could cause incorrect assignment of bonds, angle, etc.
|
||||
Generally, this means you must include more atoms in your templates,
|
||||
such that there are at least two atoms between each atom involved in
|
||||
the reaction and an edge atom.
|
||||
|
||||
*Bond/react: Fix bond/react needs ghost atoms from farther away*
|
||||
This is because a processor needs to superimpose the entire unreacted
|
||||
This is because a processor needs to map the entire unreacted
|
||||
molecule template onto simulation atoms it knows about. The
|
||||
comm\_modify cutoff command can be used to extend the communication
|
||||
range.
|
||||
|
||||
@ -181,7 +181,7 @@ include Coulomb interactions, for instance *lj/cut/coul/long* with
|
||||
|
||||
As compared to the non-polarizable input file, *pair\_coeff* lines need
|
||||
to be added for the DPs. Since the DPs have no Lennard-Jones
|
||||
interactions, their *epsilon* is 0. so the only *pair\_coeff* line
|
||||
interactions, their :math:`\epsilon` is 0. so the only *pair\_coeff* line
|
||||
that needs to be added is
|
||||
|
||||
|
||||
|
||||
@ -55,7 +55,7 @@ rotation of **A**\ , **B**\ , and **C** and can be computed as follows:
|
||||
c_z = & |\mathbf{C} \cdot \widehat{(\mathbf{A} \times \mathbf{B})}|\quad = \quad \sqrt{C^2 - {c_x}^2 - {c_y}^2}
|
||||
|
||||
where A = \| **A** \| indicates the scalar length of **A**\ . The hat symbol (\^)
|
||||
indicates the corresponding unit vector. *beta* and *gamma* are angles
|
||||
indicates the corresponding unit vector. :math:`\beta` and :math:`\gamma` are angles
|
||||
between the vectors described below. Note that by construction,
|
||||
**a**\ , **b**\ , and **c** have strictly positive x, y, and z components, respectively.
|
||||
If it should happen that
|
||||
|
||||
@ -11,16 +11,20 @@ has several advantages:
|
||||
* You can submit your new features back to GitHub for inclusion in
|
||||
LAMMPS.
|
||||
|
||||
You must have `git <git_>`_ installed on your system to communicate with
|
||||
the public git server for LAMMPS.
|
||||
You must have `git <git_>`_ installed on your system to use the
|
||||
commands explained below to communicate with the git servers on
|
||||
GitHub. For people still using subversion (svn), GitHub also
|
||||
provides `limited support for subversion clients <svn_>`_.
|
||||
|
||||
|
||||
.. warning::
|
||||
|
||||
As of October 2016, the official home of public LAMMPS development is
|
||||
on GitHub. The previously advertised LAMMPS git repositories on
|
||||
git.lammps.org and bitbucket.org are now deprecated, and may go away at any time.
|
||||
git.lammps.org and bitbucket.org are now deprecated or offline.
|
||||
|
||||
.. _git: https://git-scm.com
|
||||
.. _svn: https://help.github.com/en/github/importing-your-projects-to-github/working-with-subversion-on-github
|
||||
|
||||
You can follow LAMMPS development on 3 different git branches:
|
||||
|
||||
|
||||
@ -78,7 +78,3 @@ Indices and tables
|
||||
|
||||
* :ref:`genindex`
|
||||
* :ref:`search`
|
||||
|
||||
.. raw:: html
|
||||
|
||||
</BODY>
|
||||
|
||||
@ -1,22 +1,28 @@
|
||||
Building the LAMMPS manual
|
||||
**************************
|
||||
|
||||
Depending on how you obtained LAMMPS, the doc directory has 2 or 3
|
||||
sub-directories and optionally 2 PDF files and 2 e-book format files:
|
||||
Depending on how you obtained LAMMPS, the doc directory has up
|
||||
to 6 sub-directories, 2 Nroff files, and optionally 2 PDF files
|
||||
plus 2 e-book format files:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
src # content files for LAMMPS documentation
|
||||
html # HTML version of the LAMMPS manual (see html/Manual.html)
|
||||
tools # tools and settings for building the documentation
|
||||
utils # tools and settings for building the documentation
|
||||
docenv # virtualenv for processing the manual sources
|
||||
doctrees # temporary data from processing the manual
|
||||
mathjax # code and fonts for rendering math in html
|
||||
Manual.pdf # large PDF version of entire manual
|
||||
Developer.pdf # small PDF with info about how LAMMPS is structured
|
||||
LAMMPS.epub # Manual in ePUB e-book format
|
||||
LAMMPS.mobi # Manual in MOBI e-book format
|
||||
lammps.1 # man page for the lammps command
|
||||
msi2lmp.1 # man page for the msi2lmp command
|
||||
|
||||
If you downloaded LAMMPS as a tarball from the web site, all these
|
||||
directories and files should be included.
|
||||
If you downloaded LAMMPS as a tarball from the web site, the html folder
|
||||
and the PDF files should be included.
|
||||
|
||||
If you downloaded LAMMPS from the public git repository, then the HTML
|
||||
and PDF files are not included. Instead you need to create them, in one
|
||||
|
||||
@ -140,8 +140,7 @@ packages in the src directory for examples. If you are uncertain, please ask.
|
||||
and your name and email address at the top, like other
|
||||
user-contributed LAMMPS source files. They need to create a class
|
||||
that is inside the LAMMPS namespace. If the file is for one of the
|
||||
|
||||
* USER packages, including USER-MISC, then we are not as picky about the
|
||||
USER packages, including USER-MISC, then we are not as picky about the
|
||||
coding style (see above). I.e. the files do not need to be in the
|
||||
same stylistic format and syntax as other LAMMPS files, though that
|
||||
would be nice for developers as well as users who try to read your
|
||||
|
||||
@ -4,7 +4,7 @@ Overview
|
||||
The best way to add a new feature to LAMMPS is to find a similar
|
||||
feature and look at the corresponding source and header files to figure
|
||||
out what it does. You will need some knowledge of C++ to be able to
|
||||
understand the hi-level structure of LAMMPS and its class
|
||||
understand the high-level structure of LAMMPS and its class
|
||||
organization, but functions (class methods) that do actual
|
||||
computations are written in vanilla C-style code and operate on simple
|
||||
C-style data structures (vectors and arrays).
|
||||
|
||||
Binary file not shown.
@ -94,6 +94,7 @@ page gives those details.
|
||||
* :ref:`USER-QMMM <PKG-USER-QMMM>`
|
||||
* :ref:`USER-QTB <PKG-USER-QTB>`
|
||||
* :ref:`USER-QUIP <PKG-USER-QUIP>`
|
||||
* :ref:`USER-REACTION <PKG-USER-REACTION>`
|
||||
* :ref:`USER-REAXC <PKG-USER-REAXC>`
|
||||
* :ref:`USER-SCAFACOS <PKG-USER-SCAFACOS>`
|
||||
* :ref:`USER-SDPD <PKG-USER-SDPD>`
|
||||
@ -2180,6 +2181,39 @@ This package has :ref:`specific installation instructions <user-quip>` on the :d
|
||||
----------
|
||||
|
||||
|
||||
.. _PKG-USER-REACTION:
|
||||
|
||||
USER-REACTION package
|
||||
---------------------
|
||||
|
||||
**Contents:**
|
||||
|
||||
This package allows for complex bond topology changes (reactions)
|
||||
during a running MD simulation, when using classical force fields.
|
||||
Topology changes are defined in pre- and post-reaction molecule
|
||||
templates and can include creation and deletion of bonds, angles,
|
||||
dihedrals, impropers, atom types, bond types, angle types, dihedral
|
||||
types, improper types, and/or atomic charges. Other options currently
|
||||
available include reaction constraints (e.g. angle and Arrhenius
|
||||
constraints), deletion of reaction byproducts or other small
|
||||
molecules, and chiral-sensitive reactions.
|
||||
|
||||
**Author:** Jacob R. Gissinger (CU Boulder) while at NASA Langley Research Center.
|
||||
|
||||
**Supporting info:**
|
||||
|
||||
* src/USER-REACTION: filenames -> commands
|
||||
* src/USER-REACTION/README
|
||||
* :doc:`fix bond/react <fix_bond_react>`
|
||||
* examples/USER/reaction
|
||||
* `2017 LAMMPS Workshop <https://lammps.sandia.gov/workshops/Aug17/pdf/gissinger.pdf>`_
|
||||
* `2019 LAMMPS Workshop <https://lammps.sandia.gov/workshops/Aug19/talk_gissinger.pdf>`_
|
||||
* disarmmd.org
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
.. _PKG-USER-REAXC:
|
||||
|
||||
USER-REAXC package
|
||||
|
||||
@ -91,6 +91,8 @@ package:
|
||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+---------+
|
||||
| :ref:`USER-QUIP <PKG-USER-QUIP>` | QUIP/libatoms interface | :doc:`pair_style quip <pair_quip>` | USER/quip | ext |
|
||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+---------+
|
||||
| :ref:`USER-REACTION <PKG-USER-REACTION>` | chemical reactions in classical MD | :doc:`fix bond/react <fix_bond_react>` | USER/reaction | no |
|
||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+---------+
|
||||
| :ref:`USER-REAXC <PKG-USER-REAXC>` | ReaxFF potential (C/C++) | :doc:`pair_style reaxc <pair_reaxc>` | reax | no |
|
||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------------+---------+
|
||||
| :ref:`USER-SCAFACOS <PKG-USER-SCAFACOS>` | wrapper on ScaFaCoS solver | :doc:`kspace_style scafacos <kspace_style>` | USER/scafacos | ext |
|
||||
|
||||
@ -66,7 +66,7 @@ and see one line of output for each processor you run on.
|
||||
insure both are using the same version of MPI. If you only have one
|
||||
MPI installed on your system, this is not an issue, but it can be if
|
||||
you have multiple MPIs. Your LAMMPS build is explicit about which MPI
|
||||
it is using, since you specify the details in your lo-level
|
||||
it is using, since you specify the details in your low-level
|
||||
src/MAKE/Makefile.foo file. Mpi4py uses the "mpicc" command to find
|
||||
information about the MPI it uses to build against. And it tries to
|
||||
load "libmpi.so" from the LD\_LIBRARY\_PATH. This may or may not find
|
||||
|
||||
@ -38,7 +38,7 @@ If an error occurs, carefully go through the steps on the
|
||||
library and the :doc:`Python\_install <Python_install>` doc page about
|
||||
insuring Python can find the necessary two files it needs.
|
||||
|
||||
**Test LAMMPS and Python in serial:**
|
||||
Test LAMMPS and Python in serial:
|
||||
-------------------------------------
|
||||
|
||||
To run a LAMMPS test in serial, type these lines into Python
|
||||
@ -67,7 +67,7 @@ typed something like:
|
||||
|
||||
lmp_g++ -in in.lj
|
||||
|
||||
**Test LAMMPS and Python in parallel:**
|
||||
Test LAMMPS and Python in parallel:
|
||||
---------------------------------------
|
||||
|
||||
To run LAMMPS in parallel, assuming you have installed the
|
||||
@ -128,7 +128,7 @@ described in the PyPar documentation. The last line of your Python
|
||||
script should be pypar.finalize(), to insure MPI is shut down
|
||||
correctly.
|
||||
|
||||
**Running Python scripts:**
|
||||
Running Python scripts:
|
||||
---------------------------
|
||||
|
||||
Note that any Python script (not just for LAMMPS) can be invoked in
|
||||
|
||||
@ -196,9 +196,9 @@ Specify a log file for LAMMPS to write status information to. In
|
||||
one-partition mode, if the switch is not used, LAMMPS writes to the
|
||||
file log.lammps. If this switch is used, LAMMPS writes to the
|
||||
specified file. In multi-partition mode, if the switch is not used, a
|
||||
log.lammps file is created with hi-level status information. Each
|
||||
log.lammps file is created with high-level status information. Each
|
||||
partition also writes to a log.lammps.N file where N is the partition
|
||||
ID. If the switch is specified in multi-partition mode, the hi-level
|
||||
ID. If the switch is specified in multi-partition mode, the high-level
|
||||
logfile is named "file" and each partition also logs information to a
|
||||
file.N. For both one-partition and multi-partition mode, if the
|
||||
specified file is "none", then no log files are created. Using a
|
||||
@ -529,10 +529,10 @@ Specify a file for LAMMPS to write its screen information to. In
|
||||
one-partition mode, if the switch is not used, LAMMPS writes to the
|
||||
screen. If this switch is used, LAMMPS writes to the specified file
|
||||
instead and you will see no screen output. In multi-partition mode,
|
||||
if the switch is not used, hi-level status information is written to
|
||||
if the switch is not used, high-level status information is written to
|
||||
the screen. Each partition also writes to a screen.N file where N is
|
||||
the partition ID. If the switch is specified in multi-partition mode,
|
||||
the hi-level screen dump is named "file" and each partition also
|
||||
the high-level screen dump is named "file" and each partition also
|
||||
writes screen information to a file.N. For both one-partition and
|
||||
multi-partition mode, if the specified file is "none", then no screen
|
||||
output is performed. Option -pscreen will override the name of the
|
||||
|
||||
@ -35,13 +35,14 @@ The *sdk* angle style is a combination of the harmonic angle potential,
|
||||
E = K (\theta - \theta_0)^2
|
||||
|
||||
|
||||
where :math:`\theta_0` is the equilibrium value of the angle and :math:`K` a prefactor,
|
||||
with the *repulsive* part of the non-bonded *lj/sdk* pair style
|
||||
between the atoms 1 and 3. This angle potential is intended for
|
||||
coarse grained MD simulations with the CMM parameterization using the
|
||||
:doc:`pair_style lj/sdk <pair_sdk>`. Relative to the pair\_style
|
||||
*lj/sdk*\ , however, the energy is shifted by *epsilon*\ , to avoid sudden
|
||||
jumps. Note that the usual 1/2 factor is included in :math:`K`.
|
||||
where :math:`\theta_0` is the equilibrium value of the angle and
|
||||
:math:`K` a prefactor, with the *repulsive* part of the non-bonded
|
||||
*lj/sdk* pair style between the atoms 1 and 3. This angle potential is
|
||||
intended for coarse grained MD simulations with the CMM parameterization
|
||||
using the :doc:`pair_style lj/sdk <pair_sdk>`. Relative to the
|
||||
pair\_style *lj/sdk*\ , however, the energy is shifted by
|
||||
:math:`\epsilon`, to avoid sudden jumps. Note that the usual 1/2 factor
|
||||
is included in :math:`K`.
|
||||
|
||||
The following coefficients must be defined for each angle type via the
|
||||
:doc:`angle_coeff <angle_coeff>` command as in the example above:
|
||||
|
||||
@ -28,8 +28,8 @@ Description
|
||||
Define a computation that calculates the translational kinetic energy
|
||||
of a group of particles.
|
||||
|
||||
The kinetic energy of each particle is computed as 1/2 m v\^2, where m
|
||||
and v are the mass and velocity of the particle.
|
||||
The kinetic energy of each particle is computed as :math:`\frac{1}{2} m
|
||||
v^2`, where *m* and *v* are the mass and velocity of the particle.
|
||||
|
||||
There is a subtle difference between the quantity calculated by this
|
||||
compute and the kinetic energy calculated by the *ke* or *etotal*
|
||||
@ -37,12 +37,13 @@ keyword used in thermodynamic output, as specified by the
|
||||
:doc:`thermo_style <thermo_style>` command. For this compute, kinetic
|
||||
energy is "translational" kinetic energy, calculated by the simple
|
||||
formula above. For thermodynamic output, the *ke* keyword infers
|
||||
kinetic energy from the temperature of the system with 1/2 Kb T of
|
||||
energy for each degree of freedom. For the default temperature
|
||||
computation via the :doc:`compute temp <compute_temp>` command, these
|
||||
are the same. But different computes that calculate temperature can
|
||||
subtract out different non-thermal components of velocity and/or
|
||||
include different degrees of freedom (translational, rotational, etc).
|
||||
kinetic energy from the temperature of the system with
|
||||
:math:`\frac{1}{2} k_B T` of energy for each degree of freedom. For the
|
||||
default temperature computation via the :doc:`compute temp
|
||||
<compute_temp>` command, these are the same. But different computes
|
||||
that calculate temperature can subtract out different non-thermal
|
||||
components of velocity and/or include different degrees of freedom
|
||||
(translational, rotational, etc).
|
||||
|
||||
**Output info:**
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute 1 all ke/atom/eff
|
||||
|
||||
@ -30,11 +30,12 @@ Define a computation that calculates the per-atom translational
|
||||
group. The particles are assumed to be nuclei and electrons modeled
|
||||
with the :doc:`electronic force field <pair_eff>`.
|
||||
|
||||
The kinetic energy for each nucleus is computed as 1/2 m v\^2, where m
|
||||
corresponds to the corresponding nuclear mass, and the kinetic energy
|
||||
for each electron is computed as 1/2 (me v\^2 + 3/4 me s\^2), where me
|
||||
and v correspond to the mass and translational velocity of each
|
||||
electron, and s to its radial velocity, respectively.
|
||||
The kinetic energy for each nucleus is computed as :math:`\frac{1}{2} m
|
||||
v^2`, where *m* corresponds to the corresponding nuclear mass, and the
|
||||
kinetic energy for each electron is computed as :math:`\frac{1}{2} (m_e
|
||||
v^2 + \frac{3}{4} m_e s^2)`, where :math:`m_e` and *v* correspond to the mass
|
||||
and translational velocity of each electron, and *s* to its radial
|
||||
velocity, respectively.
|
||||
|
||||
There is a subtle difference between the quantity calculated by this
|
||||
compute and the kinetic energy calculated by the *ke* or *etotal*
|
||||
@ -43,8 +44,8 @@ keyword used in thermodynamic output, as specified by the
|
||||
energy is "translational" plus electronic "radial" kinetic energy,
|
||||
calculated by the simple formula above. For thermodynamic output, the
|
||||
*ke* keyword infers kinetic energy from the temperature of the system
|
||||
with 1/2 Kb T of energy for each (nuclear-only) degree of freedom in
|
||||
eFF.
|
||||
with :math:`\frac{1}{2} k_B T` of energy for each (nuclear-only) degree
|
||||
of freedom in eFF.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -53,7 +54,7 @@ eFF.
|
||||
command, as shown in the following example:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute effTemp all temp/eff
|
||||
thermo_style custom step etotal pe ke temp press
|
||||
|
||||
@ -29,11 +29,12 @@ Define a computation that calculates the kinetic energy of motion of a
|
||||
group of eFF particles (nuclei and electrons), as modeled with the
|
||||
:doc:`electronic force field <pair_eff>`.
|
||||
|
||||
The kinetic energy for each nucleus is computed as 1/2 m v\^2 and the
|
||||
kinetic energy for each electron is computed as 1/2(me v\^2 + 3/4 me
|
||||
s\^2), where m corresponds to the nuclear mass, me to the electron
|
||||
mass, v to the translational velocity of each particle, and s to the
|
||||
radial velocity of the electron, respectively.
|
||||
The kinetic energy for each nucleus is computed as :math:`\frac{1}{2} m
|
||||
v^2` and the kinetic energy for each electron is computed as
|
||||
:math:`\frac{1}{2}(m_e v^2 + \frac{3}{4} m_e s^2)`, where *m*
|
||||
corresponds to the nuclear mass, :math:`m_e` to the electron mass, *v*
|
||||
to the translational velocity of each particle, and *s* to the radial
|
||||
velocity of the electron, respectively.
|
||||
|
||||
There is a subtle difference between the quantity calculated by this
|
||||
compute and the kinetic energy calculated by the *ke* or *etotal*
|
||||
@ -42,18 +43,20 @@ keyword used in thermodynamic output, as specified by the
|
||||
energy is "translational" and "radial" (only for electrons) kinetic
|
||||
energy, calculated by the simple formula above. For thermodynamic
|
||||
output, the *ke* keyword infers kinetic energy from the temperature of
|
||||
the system with 1/2 Kb T of energy for each degree of freedom. For
|
||||
the eFF temperature computation via the :doc:`compute temp\_eff <compute_temp_eff>` command, these are the same. But
|
||||
different computes that calculate temperature can subtract out
|
||||
different non-thermal components of velocity and/or include other
|
||||
degrees of freedom.
|
||||
the system with :math:`\frac{1}{2} k_B T` of energy for each degree of
|
||||
freedom. For the eFF temperature computation via the :doc:`compute
|
||||
temp\_eff <compute_temp_eff>` command, these are the same. But
|
||||
different computes that calculate temperature can subtract out different
|
||||
non-thermal components of velocity and/or include other degrees of
|
||||
freedom.
|
||||
|
||||
IMPRORTANT NOTE: The temperature in eFF models should be monitored via
|
||||
the :doc:`compute temp/eff <compute_temp_eff>` command, which can be
|
||||
printed with thermodynamic output by using the
|
||||
:doc:`thermo_modify <thermo_modify>` command, as shown in the following
|
||||
example:
|
||||
.. warning::
|
||||
|
||||
The temperature in eFF models should be monitored via
|
||||
the :doc:`compute temp/eff <compute_temp_eff>` command, which can be
|
||||
printed with thermodynamic output by using the
|
||||
:doc:`thermo_modify <thermo_modify>` command, as shown in the following
|
||||
example:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute 1 all pressure thermo_temp
|
||||
compute 1 all pressure NULL pair bond
|
||||
@ -42,20 +42,20 @@ The pressure is computed by the formula
|
||||
P = \frac{N k_B T}{V} + \frac{\sum_{i}^{N'} r_i \bullet f_i}{dV}
|
||||
|
||||
|
||||
where N is the number of atoms in the system (see discussion of DOF
|
||||
below), Kb is the Boltzmann constant, T is the temperature, d is the
|
||||
dimensionality of the system (2 or 3 for 2d/3d), and V is the system
|
||||
volume (or area in 2d). The second term is the virial, equal to
|
||||
where *N* is the number of atoms in the system (see discussion of DOF
|
||||
below), :math:`k_B` is the Boltzmann constant, *T* is the temperature, d
|
||||
is the dimensionality of the system (2 or 3 for 2d/3d), and *V* is the
|
||||
system volume (or area in 2d). The second term is the virial, equal to
|
||||
-dU/dV, computed for all pairwise as well as 2-body, 3-body, 4-body,
|
||||
many-body, and long-range interactions, where r\_i and f\_i are the
|
||||
position and force vector of atom i, and the black dot indicates a dot
|
||||
product. When periodic boundary conditions are used, N' necessarily
|
||||
includes periodic image (ghost) atoms outside the central box, and the
|
||||
position and force vectors of ghost atoms are thus included in the
|
||||
summation. When periodic boundary conditions are not used, N' = N =
|
||||
the number of atoms in the system. :doc:`Fixes <fix>` that impose
|
||||
constraints (e.g. the :doc:`fix shake <fix_shake>` command) also
|
||||
contribute to the virial term.
|
||||
many-body, and long-range interactions, where :math:`r_i` and
|
||||
:math:`f_i` are the position and force vector of atom *i*, and the black
|
||||
dot indicates a dot product. When periodic boundary conditions are
|
||||
used, N' necessarily includes periodic image (ghost) atoms outside the
|
||||
central box, and the position and force vectors of ghost atoms are thus
|
||||
included in the summation. When periodic boundary conditions are not
|
||||
used, N' = N = the number of atoms in the system. :doc:`Fixes <fix>`
|
||||
that impose constraints (e.g. the :doc:`fix shake <fix_shake>` command)
|
||||
also contribute to the virial term.
|
||||
|
||||
A symmetric pressure tensor, stored as a 6-element vector, is also
|
||||
calculated by this compute. The 6 components of the vector are
|
||||
@ -108,7 +108,7 @@ A compute of this style with the ID of "thermo\_press" is created when
|
||||
LAMMPS starts up, as if this command were in the input script:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute thermo_press all pressure thermo_temp
|
||||
|
||||
|
||||
@ -89,7 +89,7 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
dump d0 all image 100 dump.\*.jpg type type
|
||||
dump d1 mobile image 500 snap.\*.png element element ssao yes 4539 0.6
|
||||
@ -121,19 +121,12 @@ script to generate the images/movie.
|
||||
Here are two sample images, rendered as 1024x1024 JPEG files. Click
|
||||
to see the full-size images:
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<DIV ALIGN=center>
|
||||
|
||||
.. image:: JPG/dump1_small.jpg
|
||||
:target: JPG/dump1.jpg
|
||||
|
||||
:width: 48%
|
||||
.. image:: JPG/dump2_small.jpg
|
||||
:target: JPG/dump2.jpg
|
||||
|
||||
.. raw:: html
|
||||
|
||||
</DIV>
|
||||
:width: 48%
|
||||
|
||||
Only atoms in the specified group are rendered in the image. The
|
||||
:doc:`dump_modify region and thresh <dump_modify>` commands can also
|
||||
@ -235,8 +228,6 @@ the `AtomEye <atomeye_>`_ visualization package.
|
||||
|
||||
.. _atomeye: http://mt.seas.upenn.edu/Archive/Graphics/A
|
||||
|
||||
|
||||
|
||||
If other atom attributes are used for the *color* or *diameter*
|
||||
settings, they are interpreted in the following way.
|
||||
|
||||
@ -258,20 +249,16 @@ drawn. Note that finite-size spherical particles, as defined by
|
||||
:doc:`atom_style sphere <atom_style>` define a per-particle radius or
|
||||
diameter, which can be used as the *diameter* setting.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
The various keywords listed above control how the image is rendered.
|
||||
As listed below, all of the keywords have defaults, most of which you
|
||||
will likely not need to change. The :doc:`dump modify <dump_modify>`
|
||||
also has options specific to the dump image style, particularly for
|
||||
assigning colors to atoms, bonds, and other image features.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
The *atom* keyword allow you to turn off the drawing of all atoms, if
|
||||
the specified value is *no*\ . Note that this will not turn off the
|
||||
drawing of particles that are represented as lines, triangles, or
|
||||
@ -283,10 +270,8 @@ set a single numeric *size*\ . All atoms will be drawn with that
|
||||
diameter, e.g. 1.5, which is in whatever distance :doc:`units <units>`
|
||||
the input script defines, e.g. Angstroms.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
The *bond* keyword allows to you to alter how bonds are drawn. A bond
|
||||
is only drawn if both atoms in the bond are being drawn due to being
|
||||
in the specified group and due to other selection criteria
|
||||
@ -329,10 +314,8 @@ If *type* is specified for the *width* value then the diameter of each
|
||||
bond is determined by its bond type. By default all types have
|
||||
diameter 0.5. This mapping can be changed by the :doc:`dump_modify bdiam <dump_modify>` command.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
The *line* keyword can be used when :doc:`atom_style line <atom_style>`
|
||||
is used to define particles as line segments, and will draw them as
|
||||
lines. If this keyword is not used, such particles will be drawn as
|
||||
@ -586,10 +569,10 @@ MPEG or other movie file you can use:
|
||||
|
||||
* a) Use the ImageMagick convert program.
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: bash
|
||||
|
||||
% convert \*.jpg foo.gif
|
||||
% convert -loop 1 \*.ppm foo.mpg
|
||||
% convert *.jpg foo.gif
|
||||
% convert -loop 1 *.ppm foo.mpg
|
||||
|
||||
|
||||
Animated GIF files from ImageMagick are not optimized. You can use
|
||||
@ -614,18 +597,15 @@ MPEG or other movie file you can use:
|
||||
allows extremely flexible encoding and decoding of movies.
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: bash
|
||||
|
||||
cat snap.\*.jpg \| ffmpeg -y -f image2pipe -c:v mjpeg -i - -b:v 2000k movie.m4v
|
||||
cat snap.\*.ppm \| ffmpeg -y -f image2pipe -c:v ppm -i - -b:v 2400k movie.avi
|
||||
cat snap.*.jpg | ffmpeg -y -f image2pipe -c:v mjpeg -i - -b:v 2000k movie.m4v
|
||||
cat snap.*.ppm | ffmpeg -y -f image2pipe -c:v ppm -i - -b:v 2400k movie.avi
|
||||
|
||||
|
||||
Front ends for FFmpeg exist for multiple platforms. For more
|
||||
information see the `FFmpeg homepage <http://www.ffmpeg.org/>`_
|
||||
|
||||
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
@ -640,7 +620,7 @@ Play the movie:
|
||||
movie. Both are available for multiple OSes and support a large
|
||||
variety of file formats and decoders.
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: bash
|
||||
|
||||
% mplayer foo.mpg
|
||||
% ffplay bar.avi
|
||||
@ -649,9 +629,9 @@ Play the movie:
|
||||
`animate tool <http://www.sandia.gov/~sjplimp/pizza/doc/animate.html>`_,
|
||||
which works directly on a series of image files.
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: python
|
||||
|
||||
a = animate("foo\*.jpg")
|
||||
a = animate("foo*.jpg")
|
||||
|
||||
* d) QuickTime and other Windows- or MacOS-based media players can
|
||||
obviously play movie files directly. Similarly for corresponding tools
|
||||
@ -660,11 +640,8 @@ Play the movie:
|
||||
additional libraries, purchasing a license, or may not be
|
||||
supported.
|
||||
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
See the :doc:`Modify <Modify>` doc page for information on how to add
|
||||
new compute and fix styles to LAMMPS to calculate per-atom quantities
|
||||
which could then be output into dump files.
|
||||
|
||||
@ -60,7 +60,7 @@ Syntax
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
For unabridged example scripts and files, see examples/USER/misc/bond\_react.
|
||||
For unabridged example scripts and files, see examples/USER/reaction.
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
@ -149,10 +149,9 @@ constant-topology parts of your system separately. The dynamic group
|
||||
contains only atoms not involved in a reaction at a given timestep,
|
||||
and therefore should be used by a subsequent system-wide time
|
||||
integrator such as nvt, npt, or nve, as shown in the second example
|
||||
above (full examples can be found at examples/USER/misc/bond\_react).
|
||||
The time integration command should be placed after the fix bond/react
|
||||
command due to the internal dynamic grouping performed by fix
|
||||
bond/react.
|
||||
above (full examples can be found at examples/USER/reaction). The time
|
||||
integration command should be placed after the fix bond/react command
|
||||
due to the internal dynamic grouping performed by fix bond/react.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -295,7 +294,7 @@ either 'none' or 'charges.' Further details are provided in the
|
||||
discussion of the 'update\_edges' keyword. The fifth optional section
|
||||
begins with the keyword 'Constraints' and lists additional criteria
|
||||
that must be satisfied in order for the reaction to occur. Currently,
|
||||
there are three types of constraints available, as discussed below.
|
||||
there are four types of constraints available, as discussed below.
|
||||
|
||||
A sample map file is given below:
|
||||
|
||||
@ -371,6 +370,24 @@ the central atom). Angles must be specified in degrees. This
|
||||
constraint can be used to enforce a certain orientation between
|
||||
reacting molecules.
|
||||
|
||||
The constraint of type 'dihedral' has the following syntax:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
dihedral *ID1* *ID2* *ID3* *ID4* *amin* *amax* *amin2* *amax2*
|
||||
|
||||
where 'dihedral' is the required keyword, and *ID1*\ , *ID2*\ , *ID3*
|
||||
and *ID4* are pre-reaction atom IDs. Dihedral angles are calculated in
|
||||
the interval (-180,180]. Refer to the :doc:`dihedral style <dihedral_style>`
|
||||
documentation for further details on convention. If *amin* is less
|
||||
than *amax*, these four atoms must form a dihedral angle greater than
|
||||
*amin* **and** less than *amax* for the reaction to occur. If *amin*
|
||||
is greater than *amax*, these four atoms must form a dihedral angle
|
||||
greater than *amin* **or** less than *amax* for the reaction to occur.
|
||||
Angles must be specified in degrees. Optionally, a second range of
|
||||
permissible angles *amin2*-*amax2* can be specified.
|
||||
|
||||
The constraint of type 'arrhenius' imposes an additional reaction
|
||||
probability according to the temperature-dependent Arrhenius equation:
|
||||
|
||||
@ -516,7 +533,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
|
||||
This fix is part of the USER-MISC package. It is only enabled if
|
||||
This fix is part of the USER-REACTION package. It is only enabled if
|
||||
LAMMPS was built with that package. See the
|
||||
:doc:`Build package <Build_package>` doc page for more info.
|
||||
|
||||
|
||||
@ -155,17 +155,15 @@ simulation domain.
|
||||
|
||||
To accomplish this, if :math:`B_{ij} < B_{target}`, the :math:`C_{ij}`
|
||||
prefactor for bond *ij* is incremented on the current timestep by an
|
||||
amount proportional to the inverse of the specified *alpha* and the
|
||||
difference (:math:`B_{ij} - B_{target}`).
|
||||
Conversely if :math:`B_{ij} > B_{target}`, :math:`C_{ij}` is decremented
|
||||
by the same amount.
|
||||
This procedure is termed "boostostatting" in :ref:`(Voter2013) <Voter2013lhd>`.
|
||||
It drives all of the individual :math:`C_{ij}` to
|
||||
values such that when :math:`V^{max}_{ij}` is applied as a bias to
|
||||
bond *ij*, the resulting boost factor :math:`B_{ij}` will be close
|
||||
to :math:`B_{target}` on average.
|
||||
Thus the LHD time acceleration factor for the overall system is
|
||||
effectively *Btarget*\ .
|
||||
amount proportional to the inverse of the specified :math:`\alpha` and
|
||||
the difference (:math:`B_{ij} - B_{target}`). Conversely if
|
||||
:math:`B_{ij} > B_{target}`, :math:`C_{ij}` is decremented by the same
|
||||
amount. This procedure is termed "boostostatting" in :ref:`(Voter2013)
|
||||
<Voter2013lhd>`. It drives all of the individual :math:`C_{ij}` to
|
||||
values such that when :math:`V^{max}_{ij}` is applied as a bias to bond
|
||||
*ij*, the resulting boost factor :math:`B_{ij}` will be close to
|
||||
:math:`B_{target}` on average. Thus the LHD time acceleration factor
|
||||
for the overall system is effectively *Btarget*\ .
|
||||
|
||||
Note that in LHD, the boost factor :math:`B_{target}` is specified by the user.
|
||||
This is in contrast to global hyperdynamics (GHD) where the boost
|
||||
|
||||
@ -51,7 +51,7 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 3 boundary langevin 1.0 1.0 1000.0 699483
|
||||
fix 1 all langevin 1.0 1.1 100.0 48279 scale 3 1.5
|
||||
@ -67,35 +67,35 @@ performs Brownian dynamics (BD), since the total force on each atom
|
||||
will have the form:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. math::
|
||||
|
||||
F = Fc + Ff + Fr
|
||||
Ff = - (m / damp) v
|
||||
Fr is proportional to sqrt(Kb T m / (dt damp))
|
||||
F = & F_c + F_f + F_r \\
|
||||
F_f = & - \frac{m}{\mathrm{damp}} v \\
|
||||
F_r \propto & \sqrt{\frac{k_B T m}{dt~\mathrm{damp}}}
|
||||
|
||||
Fc is the conservative force computed via the usual inter-particle
|
||||
interactions (:doc:`pair_style <pair_style>`,
|
||||
:doc:`bond_style <bond_style>`, etc).
|
||||
:math:`F_c` is the conservative force computed via the usual
|
||||
inter-particle interactions (:doc:`pair_style <pair_style>`,
|
||||
:doc:`bond_style <bond_style>`, etc). The :math:`F_f` and :math:`F_r`
|
||||
terms are added by this fix on a per-particle basis. See the
|
||||
:doc:`pair_style dpd/tstat <pair_dpd>` command for a thermostatting
|
||||
option that adds similar terms on a pairwise basis to pairs of
|
||||
interacting particles.
|
||||
|
||||
The Ff and Fr terms are added by this fix on a per-particle basis.
|
||||
See the :doc:`pair_style dpd/tstat <pair_dpd>` command for a
|
||||
thermostatting option that adds similar terms on a pairwise basis to
|
||||
pairs of interacting particles.
|
||||
:math:`F_f` is a frictional drag or viscous damping term proportional to
|
||||
the particle's velocity. The proportionality constant for each atom is
|
||||
computed as :math:`\frac{m}{\mathrm{damp}}`, where *m* is the mass of the
|
||||
particle and damp is the damping factor specified by the user.
|
||||
|
||||
Ff is a frictional drag or viscous damping term proportional to the
|
||||
particle's velocity. The proportionality constant for each atom is
|
||||
computed as m/damp, where m is the mass of the particle and damp is
|
||||
the damping factor specified by the user.
|
||||
|
||||
Fr is a force due to solvent atoms at a temperature T randomly bumping
|
||||
into the particle. As derived from the fluctuation/dissipation
|
||||
theorem, its magnitude as shown above is proportional to sqrt(Kb T m /
|
||||
dt damp), where Kb is the Boltzmann constant, T is the desired
|
||||
temperature, m is the mass of the particle, dt is the timestep size,
|
||||
and damp is the damping factor. Random numbers are used to randomize
|
||||
the direction and magnitude of this force as described in
|
||||
:ref:`(Dunweg) <Dunweg1>`, where a uniform random number is used (instead of
|
||||
a Gaussian random number) for speed.
|
||||
:math:`F_r` is a force due to solvent atoms at a temperature *T*
|
||||
randomly bumping into the particle. As derived from the
|
||||
fluctuation/dissipation theorem, its magnitude as shown above is
|
||||
proportional to :math:`\sqrt{\frac{k_B T m}{dt~\mathrm{damp}}}`, where
|
||||
:math:`k_B` is the Boltzmann constant, *T* is the desired temperature,
|
||||
*m* is the mass of the particle, *dt* is the timestep size, and damp is
|
||||
the damping factor. Random numbers are used to randomize the direction
|
||||
and magnitude of this force as described in :ref:`(Dunweg) <Dunweg1>`,
|
||||
where a uniform random number is used (instead of a Gaussian random
|
||||
number) for speed.
|
||||
|
||||
Note that unless you use the *omega* or *angmom* keywords, the
|
||||
thermostat effect of this fix is applied to only the translational
|
||||
@ -107,14 +107,15 @@ thermostatting takes place; see the description below.
|
||||
|
||||
.. note::
|
||||
|
||||
Unlike the :doc:`fix nvt <fix_nh>` command which performs
|
||||
Nose/Hoover thermostatting AND time integration, this fix does NOT
|
||||
perform time integration. It only modifies forces to effect
|
||||
thermostatting. Thus you must use a separate time integration fix,
|
||||
like :doc:`fix nve <fix_nve>` to actually update the velocities and
|
||||
positions of atoms using the modified forces. Likewise, this fix
|
||||
should not normally be used on atoms that also have their temperature
|
||||
controlled by another fix - e.g. by :doc:`fix nvt <fix_nh>` or :doc:`fix temp/rescale <fix_temp_rescale>` commands.
|
||||
Unlike the :doc:`fix nvt <fix_nh>` command which performs Nose/Hoover
|
||||
thermostatting AND time integration, this fix does NOT perform time
|
||||
integration. It only modifies forces to effect thermostatting. Thus
|
||||
you must use a separate time integration fix, like :doc:`fix nve
|
||||
<fix_nve>` to actually update the velocities and positions of atoms
|
||||
using the modified forces. Likewise, this fix should not normally be
|
||||
used on atoms that also have their temperature controlled by another
|
||||
fix - e.g. by :doc:`fix nvt <fix_nh>` or :doc:`fix temp/rescale
|
||||
<fix_temp_rescale>` commands.
|
||||
|
||||
See the :doc:`Howto thermostat <Howto_thermostat>` doc page for
|
||||
a discussion of different ways to compute temperature and perform
|
||||
@ -154,13 +155,14 @@ the remaining thermal degrees of freedom, and the bias is added back
|
||||
in.
|
||||
|
||||
The *damp* parameter is specified in time units and determines how
|
||||
rapidly the temperature is relaxed. For example, a value of 100.0
|
||||
means to relax the temperature in a timespan of (roughly) 100 time
|
||||
units (tau or fmsec or psec - see the :doc:`units <units>` command).
|
||||
The damp factor can be thought of as inversely related to the
|
||||
viscosity of the solvent. I.e. a small relaxation time implies a
|
||||
hi-viscosity solvent and vice versa. See the discussion about gamma
|
||||
and viscosity in the documentation for the :doc:`fix viscous <fix_viscous>` command for more details.
|
||||
rapidly the temperature is relaxed. For example, a value of 100.0 means
|
||||
to relax the temperature in a timespan of (roughly) 100 time units
|
||||
(:math:`\tau` or fs or ps - see the :doc:`units <units>` command). The
|
||||
damp factor can be thought of as inversely related to the viscosity of
|
||||
the solvent. I.e. a small relaxation time implies a high-viscosity
|
||||
solvent and vice versa. See the discussion about :math:`\gamma` and
|
||||
viscosity in the documentation for the :doc:`fix viscous <fix_viscous>`
|
||||
command for more details.
|
||||
|
||||
The random # *seed* must be a positive integer. A Marsaglia random
|
||||
number generator is used. Each processor uses the input seed to
|
||||
@ -191,39 +193,40 @@ The rotational temperature of the particles can be monitored by the
|
||||
:doc:`compute temp/sphere <compute_temp_sphere>` and :doc:`compute temp/asphere <compute_temp_asphere>` commands with their rotate
|
||||
options.
|
||||
|
||||
For the *omega* keyword there is also a scale factor of 10.0/3.0 that
|
||||
is applied as a multiplier on the Ff (damping) term in the equation
|
||||
above and of sqrt(10.0/3.0) as a multiplier on the Fr term. This does
|
||||
not affect the thermostatting behavior of the Langevin formalism but
|
||||
insures that the randomized rotational diffusivity of spherical
|
||||
particles is correct.
|
||||
For the *omega* keyword there is also a scale factor of
|
||||
:math:`\frac{10.0}{3.0}` that is applied as a multiplier on the
|
||||
:math:`F_f` (damping) term in the equation above and of
|
||||
:math:`\sqrt{\frac{10.0}{3.0}}` as a multiplier on the :math:`F_r` term.
|
||||
This does not affect the thermostatting behavior of the Langevin
|
||||
formalism but insures that the randomized rotational diffusivity of
|
||||
spherical particles is correct.
|
||||
|
||||
For the *angmom* keyword a similar scale factor is needed which is
|
||||
10.0/3.0 for spherical particles, but is anisotropic for aspherical
|
||||
particles (e.g. ellipsoids). Currently LAMMPS only applies an
|
||||
isotropic scale factor, and you can choose its magnitude as the
|
||||
:math:`\frac{10.0}{3.0}` for spherical particles, but is anisotropic for
|
||||
aspherical particles (e.g. ellipsoids). Currently LAMMPS only applies
|
||||
an isotropic scale factor, and you can choose its magnitude as the
|
||||
specified value of the *angmom* keyword. If your aspherical particles
|
||||
are (nearly) spherical than a value of 10.0/3.0 = 3.333 is a good
|
||||
choice. If they are highly aspherical, a value of 1.0 is as good a
|
||||
choice as any, since the effects on rotational diffusivity of the
|
||||
particles will be incorrect regardless. Note that for any reasonable
|
||||
scale factor, the thermostatting effect of the *angmom* keyword on the
|
||||
rotational temperature of the aspherical particles should still be
|
||||
valid.
|
||||
are (nearly) spherical than a value of :math:`\frac{10.0}{3.0} =
|
||||
3.\overline{3}` is a good choice. If they are highly aspherical, a
|
||||
value of 1.0 is as good a choice as any, since the effects on rotational
|
||||
diffusivity of the particles will be incorrect regardless. Note that
|
||||
for any reasonable scale factor, the thermostatting effect of the
|
||||
*angmom* keyword on the rotational temperature of the aspherical
|
||||
particles should still be valid.
|
||||
|
||||
The keyword *scale* allows the damp factor to be scaled up or down by
|
||||
the specified factor for atoms of that type. This can be useful when
|
||||
different atom types have different sizes or masses. It can be used
|
||||
multiple times to adjust damp for several atom types. Note that
|
||||
specifying a ratio of 2 increases the relaxation time which is
|
||||
equivalent to the solvent's viscosity acting on particles with 1/2 the
|
||||
diameter. This is the opposite effect of scale factors used by the
|
||||
:doc:`fix viscous <fix_viscous>` command, since the damp factor in fix
|
||||
*langevin* is inversely related to the gamma factor in fix *viscous*\ .
|
||||
Also note that the damping factor in fix *langevin* includes the
|
||||
particle mass in Ff, unlike fix *viscous*\ . Thus the mass and size of
|
||||
different atom types should be accounted for in the choice of ratio
|
||||
values.
|
||||
equivalent to the solvent's viscosity acting on particles with
|
||||
:math:`\frac{1}{2}` the diameter. This is the opposite effect of scale
|
||||
factors used by the :doc:`fix viscous <fix_viscous>` command, since the
|
||||
damp factor in fix *langevin* is inversely related to the :math:`\gamma`
|
||||
factor in fix *viscous*\ . Also note that the damping factor in fix
|
||||
*langevin* includes the particle mass in Ff, unlike fix *viscous*\ .
|
||||
Thus the mass and size of different atom types should be accounted for
|
||||
in the choice of ratio values.
|
||||
|
||||
The keyword *tally* enables the calculation of the cumulative energy
|
||||
added/subtracted to the atoms as they are thermostatted. Effectively
|
||||
|
||||
@ -41,7 +41,7 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 3 boundary langevin/eff 1.0 1.0 10.0 699483
|
||||
fix 1 all langevin/eff 1.0 1.1 10.0 48279 scale 3 1.5
|
||||
@ -55,28 +55,31 @@ this command performs Brownian dynamics (BD), since the total force on
|
||||
each atom will have the form:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. math::
|
||||
|
||||
F = Fc + Ff + Fr
|
||||
Ff = - (m / damp) v
|
||||
Fr is proportional to sqrt(Kb T m / (dt damp))
|
||||
F = & F_c + F_f + F_r \\
|
||||
F_f = & - \frac{m}{\mathrm{damp}} v \\
|
||||
F_r \propto & \sqrt{\frac{k_B T m}{dt~\mathrm{damp}}}
|
||||
|
||||
Fc is the conservative force computed via the usual inter-particle
|
||||
interactions (:doc:`pair_style <pair_style>`).
|
||||
|
||||
The Ff and Fr terms are added by this fix on a per-particle basis.
|
||||
:math:`F_c` is the conservative force computed via the usual
|
||||
inter-particle interactions (:doc:`pair_style <pair_style>`).
|
||||
The :math:`F_f` and :math:`F_r` terms are added by this fix on a
|
||||
per-particle basis.
|
||||
|
||||
The operation of this fix is exactly like that described by the :doc:`fix langevin <fix_langevin>` command, except that the thermostatting
|
||||
is also applied to the radial electron velocity for electron
|
||||
particles.
|
||||
The operation of this fix is exactly like that described by the
|
||||
:doc:`fix langevin <fix_langevin>` command, except that the
|
||||
thermostatting is also applied to the radial electron velocity for
|
||||
electron particles.
|
||||
|
||||
**Restart, fix\_modify, output, run start/stop, minimize info:**
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`. Because the state of the random number generator
|
||||
is not saved in restart files, this means you cannot do "exact"
|
||||
restarts with this fix, where the simulation continues on the same as
|
||||
if no restart had taken place. However, in a statistical sense, a
|
||||
restarted simulation should produce the same behavior.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`. Because the state of the random number generator is not
|
||||
saved in restart files, this means you cannot do "exact" restarts with
|
||||
this fix, where the simulation continues on the same as if no restart
|
||||
had taken place. However, in a statistical sense, a restarted
|
||||
simulation should produce the same behavior.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||
fix. You can use it to assign a temperature :doc:`compute <compute>`
|
||||
|
||||
@ -125,9 +125,9 @@ functions,
|
||||
Full details of the lattice-Boltzmann algorithm used can be found in
|
||||
:ref:`Mackay et al. <fluid-Mackay>`.
|
||||
|
||||
The fluid is coupled to the MD particles described by *group-ID*
|
||||
through a velocity dependent force. The contribution to the fluid
|
||||
force on a given lattice mesh site j due to MD particle alpha is
|
||||
The fluid is coupled to the MD particles described by *group-ID* through
|
||||
a velocity dependent force. The contribution to the fluid force on a
|
||||
given lattice mesh site j due to MD particle :math:`\alpha` is
|
||||
calculated as:
|
||||
|
||||
.. math::
|
||||
@ -137,7 +137,7 @@ calculated as:
|
||||
|
||||
where :math:`\mathbf{v}_n` is the velocity of the MD particle,
|
||||
:math:`\mathbf{u}_f` is the fluid
|
||||
velocity interpolated to the particle location, and gamma is the force
|
||||
velocity interpolated to the particle location, and :math:`\gamma` is the force
|
||||
coupling constant. :math:`\zeta` is a weight assigned to the grid point,
|
||||
obtained by distributing the particle to the nearest lattice sites.
|
||||
For this, the user has the choice between a trilinear stencil, which
|
||||
@ -163,10 +163,10 @@ t_{collision}` is a collision time, chosen such that
|
||||
:math:`\frac{\tau}{\Delta t_{collision}} = 1` (see :ref:`Mackay and
|
||||
Denniston <Mackay2>` for full details). In order to calculate :math:`m_u`,
|
||||
the fluid density is interpolated to the MD particle location, and
|
||||
multiplied by a volume, node\_area\*dx\_lb, where node\_area
|
||||
multiplied by a volume, node\_area * :math:`dx_{LB}`, where node\_area
|
||||
represents the portion of the surface area of the composite object
|
||||
associated with a given MD particle. By default, node\_area is set
|
||||
equal to dx\_lb\*dx\_lb; however specific values for given atom types
|
||||
equal to :math:`dx_{LB}^2`; however specific values for given atom types
|
||||
can be set using the *setArea* keyword.
|
||||
|
||||
The user also has the option of specifying their own value for the
|
||||
@ -174,7 +174,7 @@ force coupling constant, for all the MD particles associated with the
|
||||
fix, through the use of the *setGamma* keyword. This may be useful
|
||||
when modelling porous particles. See :ref:`Mackay et al. <fluid-Mackay>` for a
|
||||
detailed description of the method by which the user can choose an
|
||||
appropriate gamma value.
|
||||
appropriate :math:`\gamma` value.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -188,7 +188,9 @@ appropriate gamma value.
|
||||
used to integrate the particle motion. However, if the user specifies
|
||||
their own value for the force coupling constant, as mentioned in
|
||||
:ref:`Mackay et al. <fluid-Mackay>`, the built-in LAMMPS integrators may prove to
|
||||
be unstable. Therefore, we have included our own integrators :doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>`, and :doc:`fix lb/pc <fix_lb_pc>`, to solve for the particle motion in these
|
||||
be unstable. Therefore, we have included our own integrators
|
||||
:doc:`fix lb/rigid/pc/sphere <fix_lb_rigid_pc_sphere>`, and
|
||||
:doc:`fix lb/pc <fix_lb_pc>`, to solve for the particle motion in these
|
||||
cases. These integrators should not be used with the
|
||||
:doc:`lb/viscous <fix_lb_viscous>` fix, as they add hydrodynamic forces
|
||||
to the particles directly. In addition, they can not be used if the
|
||||
@ -207,28 +209,29 @@ appropriate gamma value.
|
||||
location, in order to approximate an infinitely massive particle (see
|
||||
the dragforce test run for an example).
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
Inside the fix, parameters are scaled by the lattice-Boltzmann
|
||||
timestep, dt, grid spacing, dx, and mass unit, dm. dt is set equal to
|
||||
(nevery\*dt\_MD), where dt\_MD is the MD timestep. By default, dm is set
|
||||
equal to 1.0, and dx is chosen so that tau/(dt) =
|
||||
(3\*eta\*dt)/(rho\*dx\^2) is approximately equal to 1. However, the user
|
||||
has the option of specifying their own values for dm, and dx, by using
|
||||
timestep, :math:`dt_{LB}`, grid spacing, :math:`dx_{LB}`, and mass unit,
|
||||
:math:`dm_{LB}`. :math:`dt_{LB}` is set equal to
|
||||
:math:`\mathrm{nevery}\cdot dt_{MD}`, where :math:`dt_{MD}` is the MD timestep.
|
||||
By default,
|
||||
:math:`dm_{LB}` is set equal to 1.0, and :math:`dx_{LB}` is chosen so that
|
||||
:math:`\frac{\tau}{dt} = \frac{3\eta dt}{\rho dx^2}` is approximately equal to 1.
|
||||
However, the user has the option of specifying their own values for
|
||||
:math:`dm_{LB}`, and :math:`dx_{LB}`, by using
|
||||
the optional keywords *dm*\ , and *dx* respectively.
|
||||
|
||||
.. note::
|
||||
|
||||
Care must be taken when choosing both a value for dx, and a
|
||||
simulation domain size. This fix uses the same subdivision of the
|
||||
simulation domain among processors as the main LAMMPS program. In
|
||||
Care must be taken when choosing both a value for :math:`dx_{LB}`,
|
||||
and a simulation domain size. This fix uses the same subdivision of
|
||||
the simulation domain among processors as the main LAMMPS program. In
|
||||
order to uniformly cover the simulation domain with lattice sites, the
|
||||
lengths of the individual LAMMPS sub-domains must all be evenly
|
||||
divisible by dx. If the simulation domain size is cubic, with equal
|
||||
lengths in all dimensions, and the default value for dx is used, this
|
||||
will automatically be satisfied.
|
||||
divisible by :math:`dx_{LB}`. If the simulation domain size is cubic,
|
||||
with equal lengths in all dimensions, and the default value for
|
||||
:math:`dx_{LB}` is used, this will automatically be satisfied.
|
||||
|
||||
Physical parameters describing the fluid are specified through
|
||||
*viscosity*\ , *density*\ , and *a0*\ . If the force coupling constant is
|
||||
@ -240,27 +243,25 @@ the mass, distance, and time units chosen for the main LAMMPS run, as
|
||||
they are scaled by the LB timestep, lattice spacing, and mass unit,
|
||||
inside the fix.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
The *setArea* keyword allows the user to associate a surface area with
|
||||
a given atom type. For example if a spherical composite object of
|
||||
radius R is represented as a spherical shell of N evenly distributed
|
||||
MD particles, all of the same type, the surface area per particle
|
||||
associated with that atom type should be set equal to 4\*pi\*R\^2/N.
|
||||
associated with that atom type should be set equal to :math:`\frac{4\pi R^2}{N}`.
|
||||
This keyword should only be used if the force coupling constant,
|
||||
gamma, is set the default way.
|
||||
:math:`\gamma`, is set the default way.
|
||||
|
||||
The *setGamma* keyword allows the user to specify their own value for
|
||||
the force coupling constant, gamma, instead of using the default
|
||||
the force coupling constant, :math:`\gamma`, instead of using the default
|
||||
value.
|
||||
|
||||
The *scaleGamma* keyword should be used in conjunction with the
|
||||
*setGamma* keyword, when the user wishes to specify different gamma
|
||||
*setGamma* keyword, when the user wishes to specify different :math:`\gamma`
|
||||
values for different atom types. This keyword allows the user to
|
||||
scale the *setGamma* gamma value by a factor, gammaFactor, for a given
|
||||
atom type.
|
||||
scale the *setGamma* :math:`\gamma` value by a factor, gammaFactor,
|
||||
for a given atom type.
|
||||
|
||||
The *dx* keyword allows the user to specify a value for the LB grid
|
||||
spacing.
|
||||
@ -269,9 +270,10 @@ The *dm* keyword allows the user to specify the LB mass unit.
|
||||
|
||||
If the *a0* keyword is used, the value specified is used for the
|
||||
square of the speed of sound in the fluid. If this keyword is not
|
||||
present, the speed of sound squared is set equal to (1/3)\*(dx/dt)\^2.
|
||||
Setting a0 > (dx/dt)\^2 is not allowed, as this may lead to
|
||||
instabilities.
|
||||
present, the speed of sound squared is set equal to
|
||||
:math:`\frac{1}{3}\left(\frac{dx_{LB}}{dt_{LB}}\right)^2`.
|
||||
Setting :math:`a0 > (\frac{dx_{LB}}{dt_{LB}})^2` is not allowed,
|
||||
as this may lead to instabilities.
|
||||
|
||||
If the *noise* keyword is used, followed by a positive temperature
|
||||
value, and a positive integer random number seed, a thermal
|
||||
@ -388,13 +390,13 @@ By default, the force coupling constant is set according to
|
||||
\gamma = \frac{2m_um_v}{m_u+m_v}\left(\frac{1}{\Delta t_{collision}}\right)
|
||||
|
||||
|
||||
and an area of dx\_lb\^2 per node, used to calculate the fluid mass at
|
||||
and an area of :math:`dx_{LB}^2` per node, used to calculate the fluid mass at
|
||||
the particle node location, is assumed.
|
||||
|
||||
dx is chosen such that tau/(delta t\_LB) =
|
||||
(3 eta dt\_LB)/(rho dx\_lb\^2) is approximately equal to 1.
|
||||
dm is set equal to 1.0.
|
||||
a0 is set equal to (1/3)\*(dx\_lb/dt\_lb)\^2.
|
||||
*dx* is chosen such that :math:`\frac{\tau}{dt_{LB}} =
|
||||
\frac{3\eta dt_{LB}}{\rho dx_{LB}^2}` is approximately equal to 1.
|
||||
*dm* is set equal to 1.0.
|
||||
*a0* is set equal to :math:`\frac{1}{3}\left(\frac{dx_{LB}}{dt_{LB}}\right)^2`.
|
||||
The Peskin stencil is used as the default interpolation method.
|
||||
The D3Q15 lattice is used for the lattice-Boltzmann algorithm.
|
||||
If walls are present, they are assumed to be stationary.
|
||||
|
||||
@ -35,7 +35,7 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 1 all msst y 100.0 q 1.0e5 mu 1.0e5
|
||||
fix 2 all msst z 50.0 q 1.0e4 mu 1.0e4 v0 4.3419e+03 p0 3.7797e+03 e0 -9.72360e+02 tscale 0.01
|
||||
@ -101,16 +101,17 @@ timestep. To do this, the fix creates its own computes of style "temp"
|
||||
"pressure", and "pe", as if these commands had been issued:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute fix-ID_MSST_temp all temp
|
||||
compute fix-ID_MSST_press all pressure fix-ID_MSST_temp
|
||||
|
||||
compute fix-ID_MSST_pe all pe
|
||||
|
||||
See the :doc:`compute temp <compute_temp>` and :doc:`compute pressure <compute_pressure>` commands for details. Note that the
|
||||
IDs of the new computes are the fix-ID + "_MSST\_temp`or <MSST_press">`_
|
||||
or "_MSST\_pe". The group for the new computes is "all".
|
||||
See the :doc:`compute temp <compute_temp>` and :doc:`compute pressure
|
||||
<compute_pressure>` commands for details. Note that the IDs of the
|
||||
new computes are the fix-ID + "_MSST\_temp" or "MSST\_press" or
|
||||
"_MSST\_pe". The group for the new computes is "all".
|
||||
|
||||
|
||||
----------
|
||||
@ -132,9 +133,10 @@ timestepping. DFTB+ will communicate its info to LAMMPS via that fix.
|
||||
|
||||
**Restart, fix\_modify, output, run start/stop, minimize info:**
|
||||
|
||||
This fix writes the state of all internal variables to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>` command
|
||||
for info on how to re-specify a fix in an input script that reads a
|
||||
restart file, so that the operation of the fix continues in an
|
||||
This fix writes the state of all internal variables to :doc:`binary
|
||||
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
|
||||
The progress of the MSST can be monitored by printing the global
|
||||
@ -161,7 +163,7 @@ To print these quantities to the log file with descriptive column
|
||||
headers, the following LAMMPS commands are suggested:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix msst all msst z
|
||||
fix_modify msst energy yes
|
||||
@ -172,15 +174,17 @@ headers, the following LAMMPS commands are suggested:
|
||||
thermo_style custom step temp ke pe lz pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
|
||||
These fixes compute a global scalar and a global vector of 4
|
||||
quantities, which can be accessed by various :doc:`output commands <Howto_output>`. The scalar values calculated by this fix
|
||||
are "extensive"; the vector values are "intensive".
|
||||
quantities, which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar values calculated by this fix are
|
||||
"extensive"; the vector values are "intensive".
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
|
||||
This fix style is part of the SHOCK package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
All cell dimensions must be periodic. This fix can not be used with a
|
||||
triclinic cell. The MSST fix has been tested only for the group-ID
|
||||
|
||||
@ -29,7 +29,7 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 1 all nve/dotc/langevin 1.0 1.0 0.03 457145 angmom 10
|
||||
fix 1 all nve/dotc/langevin 0.1 0.1 78.9375 457145 angmom 10
|
||||
@ -61,33 +61,33 @@ over the standard integrator, permitting slightly larger timestep sizes.
|
||||
The total force on each atom will have the form:
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. math::
|
||||
|
||||
F = Fc + Ff + Fr
|
||||
Ff = - (m / damp) v
|
||||
Fr is proportional to sqrt(Kb T m / (dt damp))
|
||||
F = & F_c + F_f + F_r \\
|
||||
F_f = & - \frac{m}{\mathrm{damp}} v \\
|
||||
F_r \propto & \sqrt{\frac{k_B T m}{dt~\mathrm{damp}}}
|
||||
|
||||
Fc is the conservative force computed via the usual inter-particle
|
||||
interactions (:doc:`pair_style <pair_style>`,
|
||||
:doc:`bond_style <bond_style>`, etc).
|
||||
:math:`F_c` is the conservative force computed via the usual
|
||||
inter-particle interactions (:doc:`pair_style <pair_style>`,
|
||||
:doc:`bond_style <bond_style>`, etc). The :math:`F_f` and :math:`F_r`
|
||||
terms are implicitly taken into account by this fix on a per-particle
|
||||
basis.
|
||||
|
||||
The Ff and Fr terms are implicitly taken into account by this fix
|
||||
on a per-particle basis.
|
||||
:math:`F_f` is a frictional drag or viscous damping term proportional to
|
||||
the particle's velocity. The proportionality constant for each atom is
|
||||
computed as :math:`\frac{m}{\mathrm{damp}}`, where *m* is the mass of
|
||||
the particle and damp is the damping factor specified by the user.
|
||||
|
||||
Ff is a frictional drag or viscous damping term proportional to the
|
||||
particle's velocity. The proportionality constant for each atom is
|
||||
computed as m/damp, where m is the mass of the particle and damp is
|
||||
the damping factor specified by the user.
|
||||
|
||||
Fr is a force due to solvent atoms at a temperature T randomly bumping
|
||||
into the particle. As derived from the fluctuation/dissipation
|
||||
theorem, its magnitude as shown above is proportional to sqrt(Kb T m /
|
||||
dt damp), where Kb is the Boltzmann constant, T is the desired
|
||||
temperature, m is the mass of the particle, dt is the timestep size,
|
||||
and damp is the damping factor. Random numbers are used to randomize
|
||||
the direction and magnitude of this force as described in
|
||||
:ref:`(Dunweg) <Dunweg5>`, where a uniform random number is used (instead of
|
||||
a Gaussian random number) for speed.
|
||||
:math:`F_r` is a force due to solvent atoms at a temperature *T*
|
||||
randomly bumping into the particle. As derived from the
|
||||
fluctuation/dissipation theorem, its magnitude as shown above is
|
||||
proportional to :math:`\sqrt{\frac{k_B T m}{dt~\mathrm{damp}}}`, where
|
||||
:math:`k_B` is the Boltzmann constant, *T* is the desired temperature,
|
||||
*m* is the mass of the particle, *dt* is the timestep size, and damp is
|
||||
the damping factor. Random numbers are used to randomize the direction
|
||||
and magnitude of this force as described in :ref:`(Dunweg) <Dunweg5>`,
|
||||
where a uniform random number is used (instead of a Gaussian random
|
||||
number) for speed.
|
||||
|
||||
|
||||
----------
|
||||
@ -104,7 +104,7 @@ means to relax the temperature in a timespan of (roughly) 0.03 time
|
||||
units tau (see the :doc:`units <units>` command).
|
||||
The damp factor can be thought of as inversely related to the
|
||||
viscosity of the solvent, i.e. a small relaxation time implies a
|
||||
hi-viscosity solvent and vice versa. See the discussion about gamma
|
||||
high-viscosity solvent and vice versa. See the discussion about gamma
|
||||
and viscosity in the documentation for the :doc:`fix viscous <fix_viscous>` command for more details.
|
||||
Note that the value 78.9375 in the second example above corresponds
|
||||
to a diffusion constant, which is about an order of magnitude larger
|
||||
@ -124,10 +124,10 @@ particles are always considered to have a finite size.
|
||||
The keyword *angmom* enables thermostatting of the rotational degrees of
|
||||
freedom in addition to the usual translational degrees of freedom.
|
||||
|
||||
The scale factor after the *angmom* keyword gives the ratio of the rotational to
|
||||
the translational friction coefficient.
|
||||
The scale factor after the *angmom* keyword gives the ratio of the
|
||||
rotational to the translational friction coefficient.
|
||||
|
||||
An example input file can be found in /examples/USER/cgdna/examples/duplex2/.
|
||||
An example input file can be found in examples/USER/cgdna/examples/duplex2/.
|
||||
Further details of the implementation and stability of the integrators are contained in :ref:`(Henrich) <Henrich5>`.
|
||||
The preprint version of the article can be found `here <PDF/USER-CGDNA.pdf>`_.
|
||||
|
||||
|
||||
@ -26,7 +26,7 @@ Syntax
|
||||
*v0* value = initial simulation cell volume in the shock equations (distance\^3 units)
|
||||
*e0* value = initial total energy (energy units)
|
||||
*tscale* value = reduction in initial temperature (unitless fraction between 0.0 and 1.0)
|
||||
*damp* value = damping parameter (time units) inverse of friction <i>γ</i>
|
||||
*damp* value = damping parameter (time units) inverse of friction *gamma*
|
||||
*seed* value = random number seed (positive integer)
|
||||
*f_max* value = upper cutoff frequency of the vibration spectrum (1/time units)
|
||||
*N_f* value = number of frequency bins (positive integer)
|
||||
@ -40,44 +40,47 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 1 all qbmsst z 0.122 q 25 mu 0.9 tscale 0.01 damp 200 seed 35082 f_max 0.3 N_f 100 eta 1 beta 400 T_init 110 (liquid methane modeled with the REAX force field, real units)
|
||||
fix 2 all qbmsst z 72 q 40 tscale 0.05 damp 1 seed 47508 f_max 120.0 N_f 100 eta 1.0 beta 500 T_init 300 (quartz modeled with the BKS force field, metal units)
|
||||
# (liquid methane modeled with the REAX force field, real units)
|
||||
fix 1 all qbmsst z 0.122 q 25 mu 0.9 tscale 0.01 damp 200 seed 35082 f_max 0.3 N_f 100 eta 1 beta 400 T_init 110
|
||||
# (quartz modeled with the BKS force field, metal units)
|
||||
fix 2 all qbmsst z 72 q 40 tscale 0.05 damp 1 seed 47508 f_max 120.0 N_f 100 eta 1.0 beta 500 T_init 300
|
||||
|
||||
Two example input scripts are given, including shocked alpha quartz
|
||||
and shocked liquid methane. The input script first equilibrate an
|
||||
initial state with the quantum thermal bath at the target temperature
|
||||
and then apply the qbmsst to simulate shock compression with quantum
|
||||
nuclear correction. The following two figures plot related quantities
|
||||
for shocked alpha quartz.
|
||||
Two example input scripts are given, including shocked
|
||||
:math:`\alpha\textrm{-quartz}` and shocked liquid methane. The input
|
||||
script first equilibrates an initial state with the quantum thermal
|
||||
bath at the target temperature and then applies *fix qbmsst* to simulate
|
||||
shock compression with quantum nuclear correction. The following two
|
||||
figures plot relevant quantities for shocked
|
||||
:math:`\alpha\textrm{-quartz}`.
|
||||
|
||||
.. image:: JPG/qbmsst_init.jpg
|
||||
:align: center
|
||||
|
||||
Figure 1. Classical temperature <i>T</i><sup>cl</sup> = ∑
|
||||
<i>m<sub>i</sub>v<sub>i</sub><sup>2</sup>/3Nk</i><sub>B</sub> vs. time
|
||||
for coupling the alpha quartz initial state with the quantum thermal
|
||||
bath at target quantum temperature <i>T</i><sup>qm</sup> = 300 K. The
|
||||
NpH ensemble is used for time integration while QTB provides the
|
||||
colored random force. <i>T</i><sup>cl</sup> converges at the timescale
|
||||
of *damp* which is set to be 1 ps.
|
||||
Figure 1. Classical temperature
|
||||
:math:`T_{cl} = \sum \frac{m_iv_i^2}{3Nk_B}` vs. time for coupling the
|
||||
:math:`\alpha\textrm{-quartz}` initial state with the quantum thermal
|
||||
bath at target quantum temperature :math:`T^{qm} = 300 K`. The NpH
|
||||
ensemble is used for time integration while QTB provides the colored
|
||||
random force. :math:`T^{cl}` converges at the timescale of *damp*
|
||||
which is set to be 1 ps.
|
||||
|
||||
.. image:: JPG/qbmsst_shock.jpg
|
||||
:align: center
|
||||
|
||||
Figure 2. Quantum temperature and pressure vs. time for simulating
|
||||
shocked alpha quartz with the QBMSST. The shock propagates along the z
|
||||
direction. Restart of the QBMSST command is demonstrated in the
|
||||
example input script. Thermodynamic quantities stay continuous before
|
||||
and after the restart.
|
||||
shocked :math:`\alpha\textrm{-quartz}` with *fix qbmsst*\. The shock
|
||||
propagates along the z direction. Restart of the *fix qbmsst* command
|
||||
is demonstrated in the example input script. Thermodynamic quantities
|
||||
stay continuous before and after the restart.
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
This command performs the Quantum-Bath coupled Multi-Scale Shock
|
||||
Technique (QBMSST) integration. See :ref:`(Qi) <Qi>` for a detailed
|
||||
description of this method. The QBMSST provides description of the
|
||||
description of this method. QBMSST provides description of the
|
||||
thermodynamics and kinetics of shock processes while incorporating
|
||||
quantum nuclear effects. The *shockvel* setting determines the steady
|
||||
shock velocity that will be simulated along direction *dir*\ .
|
||||
@ -107,37 +110,34 @@ in the command :doc:`fix msst <fix_msst>`. The values of *e0*\ , *p0*\ , or
|
||||
parameter of *damp*\ , *f\_max*, and *N\_f* are described in the command
|
||||
:doc:`fix qtb <fix_qtb>`.
|
||||
|
||||
The fix qbmsst command couples the shock system to a quantum thermal
|
||||
The *fix qbmsst* command couples the shock system to a quantum thermal
|
||||
bath with a rate that is proportional to the change of the total
|
||||
energy of the shock system, <i>etot</i> - <i>etot</i><sub>0</sub>.
|
||||
Here <i>etot</i> consists of both the system energy and a thermal
|
||||
term, see :ref:`(Qi) <Qi>`, and <i>etot</i><sub>0</sub> = *e0* is the
|
||||
energy of the shock system, :math:`E^{tot} - E^{tot}_0`.
|
||||
Here :math:`E^{etot}` consists of both the system energy and a thermal
|
||||
term, see :ref:`(Qi) <Qi>`, and :math:`E^{tot}_0 = e0` is the
|
||||
initial total energy.
|
||||
|
||||
The *eta* (<i>η</i>) parameter is a unitless coupling constant
|
||||
between the shock system and the quantum thermal bath. A small *eta*
|
||||
The *eta* (:math:`\eta`) parameter is a unitless coupling constant
|
||||
between the shock system and the quantum thermal bath. A small :math:`\eta`
|
||||
value cannot adjust the quantum temperature fast enough during the
|
||||
temperature ramping period of shock compression while large *eta*
|
||||
leads to big temperature oscillation. A value of *eta* between 0.3 and
|
||||
temperature ramping period of shock compression while large :math:`\eta`
|
||||
leads to big temperature oscillation. A value of :math:`\eta` between 0.3 and
|
||||
1 is usually appropriate for simulating most systems under shock
|
||||
compression. We observe that different values of *eta* lead to almost
|
||||
compression. We observe that different values of :math:`\eta` lead to almost
|
||||
the same final thermodynamic state behind the shock, as expected.
|
||||
|
||||
The quantum temperature is updated every *beta* (<i>β</i>) steps
|
||||
with an integration time interval *beta* times longer than the
|
||||
simulation time step. In that case, <i>etot</i> is taken as its
|
||||
average over the past *beta* steps. The temperature of the quantum
|
||||
thermal bath <i>T</i><sup>qm</sup> changes dynamically according to
|
||||
the following equation where Δ<i>t</i> is the MD time step and
|
||||
<i>γ</i> is the friction constant which is equal to the inverse
|
||||
The quantum temperature is updated every *beta* (:math:`\beta`) steps
|
||||
with an integration time interval :math:`\beta` times longer than the
|
||||
simulation time step. In that case, :math:`E^{tot}` is taken as its
|
||||
average over the past :math:`\beta` steps. The temperature of the quantum
|
||||
thermal bath :math:`T^{qm}` changes dynamically according to
|
||||
the following equation where :math:`\Delta_t` is the MD time step and
|
||||
:math:`\gamma` is the friction constant which is equal to the inverse
|
||||
of the *damp* parameter.
|
||||
|
||||
.. raw:: html
|
||||
.. math::
|
||||
|
||||
<center><font size="4"> <i>dT</i><sup>qm</sup>/<i>dt =
|
||||
γη</i>∑<i><sup>β</sup><sub>l =
|
||||
1</sub></i>[<i>etot</i>(<i>t-l</i>Δ<i>t</i>)-<i>etot</i><sub>0</sub>]/<i>3βNk</i><sub>B</sub>
|
||||
</font></center>
|
||||
\frac{dT^{qm}}{dt} = \gamma\eta\sum^\beta_{l=1}\frac{E^{tot}(t-l\Delta t) - E^{tot}_0}{3\beta N k_B}
|
||||
|
||||
The parameter *T\_init* is the initial temperature of the quantum
|
||||
thermal bath and the system before shock loading.
|
||||
@ -172,12 +172,12 @@ vector contains five values in this order:
|
||||
2. *drayleigh* is the departure from the Rayleigh line (pressure units).
|
||||
3. *lagrangian\_speed* is the laboratory-frame Lagrangian speed (particle velocity) of the computational cell (velocity units).
|
||||
4. *lagrangian\_position* is the computational cell position in the reference frame moving at the shock speed. This is the distance of the computational cell behind the shock front.
|
||||
5. *quantum\_temperature* is the temperature of the quantum thermal bath <i>T</i><sup>qm</sup>.
|
||||
5. *quantum\_temperature* is the temperature of the quantum thermal bath :math:`T^{qm}`.
|
||||
|
||||
To print these quantities to the log file with descriptive column
|
||||
headers, the following LAMMPS commands are suggested. Here the
|
||||
:doc:`fix_modify <fix_modify>` energy command is also enabled to allow
|
||||
the thermo keyword *etotal* to print the quantity <i>etot</i>. See
|
||||
the thermo keyword *etotal* to print the quantity :math:`E^{tot}`. See
|
||||
also the :doc:`thermo_style <thermo_style>` command.
|
||||
|
||||
|
||||
@ -193,10 +193,11 @@ also the :doc:`thermo_style <thermo_style>` command.
|
||||
thermo_style custom step temp ke pe lz pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos v_T_qm f_fix_id
|
||||
|
||||
The global scalar under the entry f\_fix\_id is the quantity of thermo
|
||||
energy as an extra part of <i>etot</i>. This global scalar and the
|
||||
vector of 5 quantities can be accessed by various :doc:`output commands <Howto_output>`. It is worth noting that the temp keyword
|
||||
energy as an extra part of :math:`E^{tot}`. This global scalar and the
|
||||
vector of 5 quantities can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
It is worth noting that the temp keyword
|
||||
under the :doc:`thermo_style <thermo_style>` command print the
|
||||
instantaneous classical temperature <i>T</i><sup>cl</sup> as described
|
||||
instantaneous classical temperature :math:`T^{cl}` as described
|
||||
in the command :doc:`fix qtb <fix_qtb>`.
|
||||
|
||||
|
||||
|
||||
@ -19,7 +19,7 @@ Syntax
|
||||
.. parsed-literal::
|
||||
|
||||
*temp* value = target quantum temperature (temperature units)
|
||||
*damp* value = damping parameter (time units) inverse of friction <i>&gamma</i>;
|
||||
*damp* value = damping parameter (time units) inverse of friction *gamma*
|
||||
*seed* value = random number seed (positive integer)
|
||||
*f_max* value = upper cutoff frequency of the vibration spectrum (1/time units)
|
||||
*N_f* value = number of frequency bins (positive integer)
|
||||
@ -30,12 +30,14 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
# (liquid methane modeled with the REAX force field, real units)
|
||||
fix 1 all nve
|
||||
fix 1 all qtb temp 110 damp 200 seed 35082 f_max 0.3 N_f 100 (liquid methane modeled with the REAX force field, real units)
|
||||
fix 1 all qtb temp 110 damp 200 seed 35082 f_max 0.3 N_f 100
|
||||
# (quartz modeled with the BKS force field, metal units)
|
||||
fix 2 all nph iso 1.01325 1.01325 1
|
||||
fix 2 all qtb temp 300 damp 1 seed 47508 f_max 120.0 N_f 100 (quartz modeled with the BKS force field, metal units)
|
||||
fix 2 all qtb temp 300 damp 1 seed 47508 f_max 120.0 N_f 100
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
@ -56,61 +58,54 @@ atoms and thus higher classical limits.
|
||||
The equation of motion implemented by this command follows a Langevin
|
||||
form:
|
||||
|
||||
.. raw:: html
|
||||
.. math::
|
||||
|
||||
<center><font size="4"><i> m<sub>i</sub>a<sub>i</sub> = f<sub>i</sub>
|
||||
+ R<sub>i</sub> -
|
||||
m<sub>i</sub>γv<sub>i</sub>. </i></font></center>
|
||||
m_i a_i = f_i + R_i - m_i\gamma v_i
|
||||
|
||||
Here <i>m<sub>i</sub></i>, <i>a<sub>i</sub></i>, <i>f<sub>i</sub>
|
||||
</i>, <i>R<sub>i</sub></i>, <i>γ</i> and <i>v<sub>i</sub> </i>
|
||||
represent mass, acceleration, force exerted by all other atoms, random
|
||||
Here :math:`m_i, a_i, f_i, R_i, \gamma, \textrm{and} v_i`
|
||||
represent in this order mass, acceleration, force exerted by all other atoms, random
|
||||
force, frictional coefficient (the inverse of damping parameter damp),
|
||||
and velocity. The random force <i>R<sub>i</sub></i> is "colored" so
|
||||
that any vibrational mode with frequency <i>ω</i> will have a
|
||||
temperature-sensitive energy <i>θ</i>(<i>ω,T</i>) which
|
||||
and velocity. The random force :math:`R_i` is "colored" so
|
||||
that any vibrational mode with frequency :math:`\omega` will have a
|
||||
temperature-sensitive energy :math:`\theta(\omega,T)` which
|
||||
resembles the energy expectation for a quantum harmonic oscillator
|
||||
with the same natural frequency:
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<center><font size="4"> <i>θ</i>(<i>ω,T</i>) =
|
||||
ℏω/2 +
|
||||
ℏω[</i>exp(<i>ℏω/k</i><sub>B</sub><i>T</i>)<i>-1</i>]<i><sup>-1</sup></i>
|
||||
</font></center>
|
||||
.. math::
|
||||
|
||||
\theta(\omega T) = \frac{\hbar}{2} + \hbar\omega \left[\exp(\frac{\hbar\omega}{k_B T})-1 \right]^{-1}
|
||||
|
||||
To efficiently generate the random forces, we employ the method
|
||||
of :ref:`(Barrat) <Barrat>`, that circumvents the need to generate all
|
||||
random forces for all times before the simulation. The memory
|
||||
requirement of this approach is less demanding and independent
|
||||
of the simulation duration. Since the total random force <i>R</i><sub>tot</sub>
|
||||
of the simulation duration. Since the total random force :math:`R_{tot}`
|
||||
does not necessarily vanish for a finite number of atoms,
|
||||
<i>R<sub>i</sub></i> is replaced by <i>R<sub>i</sub></i> - <i>R</i><sub>tot</sub>/<i>N</i><sub>tot</sub>
|
||||
:math:`R_i` is replaced by :math:`R_i - \frac{R_{tot}}{N_{tot}}`
|
||||
to avoid collective motion of the system.
|
||||
|
||||
The *temp* parameter sets the target quantum temperature. LAMMPS will
|
||||
still have an output temperature in its thermo style. That is the
|
||||
instantaneous classical temperature <i>T</i><sup>cl</sup> derived from
|
||||
instantaneous classical temperature :math:`T^{cl}` derived from
|
||||
the atom velocities at thermal equilibrium. A non-zero
|
||||
<i>T</i><sup>cl</sup> will be present even when the quantum
|
||||
:math:`T^{cl}` will be present even when the quantum
|
||||
temperature approaches zero. This is associated with zero-point energy
|
||||
at low temperatures.
|
||||
|
||||
.. raw:: html
|
||||
.. math::
|
||||
|
||||
<center><font size="4"> <i>T</i><sup>cl</sup> = ∑
|
||||
<i>m<sub>i</sub>v<sub>i</sub><sup>2</sup>/3Nk</i><sub>B</sub>
|
||||
</font></center>
|
||||
T^{cl} = \sum \frac{m_i v_i^2}{3 N k_B}
|
||||
|
||||
The *damp* parameter is specified in time units, and it equals the
|
||||
inverse of the frictional coefficient <i>γ</i>. <i>γ</i>
|
||||
inverse of the frictional coefficient :math:`\gamma`. :math:`\gamma`
|
||||
should be as small as possible but slightly larger than the timescale
|
||||
of anharmonic coupling in the system which is about 10 ps to 100
|
||||
ps. When <i>γ</i> is too large, it gives an energy spectrum that
|
||||
differs from the desired Bose-Einstein spectrum. When <i>γ</i>
|
||||
ps. When :math:`\gamma` is too large, it gives an energy spectrum that
|
||||
differs from the desired Bose-Einstein spectrum. When :math:`\gamma`
|
||||
is too small, the quantum thermal bath coupling to the system will be
|
||||
less significant than anharmonic effects, reducing to a classical
|
||||
limit. We find that setting <i>γ</i> between 5 THz and 1 THz
|
||||
limit. We find that setting :math:`\gamma` between 5 THz and 1 THz
|
||||
could be appropriate depending on the system.
|
||||
|
||||
The random number *seed* is a positive integer used to initiate a
|
||||
@ -121,23 +116,22 @@ runs on different numbers of processors.
|
||||
|
||||
The *f\_max* parameter truncate the noise frequency domain so that
|
||||
vibrational modes with frequencies higher than *f\_max* will not be
|
||||
modulated. If we denote Δ<i>t</i> as the time interval for the
|
||||
modulated. If we denote :math:`\Delta t` as the time interval for the
|
||||
MD integration, *f\_max* is always reset by the code to make
|
||||
<i>α</i> = (int)(2*f\_max*Δ<i>t</i>)<sup><i>-1</i></sup> a
|
||||
:math:`\alpha = (int)(2` *f\_max* :math:`\Delta t)^{-1}` a
|
||||
positive integer and print out relative information. An appropriate
|
||||
value for the cutoff frequency *f\_max* would be around 2~3
|
||||
<i>f</i><sub>D</sub>, where <i>f</i><sub>D</sub> is the Debye
|
||||
frequency.
|
||||
value for the cutoff frequency *f\_max* would be around 2~3 :math:`f_D`,
|
||||
where :math:`f_D` is the Debye frequency.
|
||||
|
||||
The *N\_f* parameter is the frequency grid size, the number of points
|
||||
from 0 to *f\_max* in the frequency domain that will be
|
||||
sampled. <i>3×2</i> *N\_f* per-atom random numbers are required
|
||||
sampled. 3*2\ *N\_f* per-atom random numbers are required
|
||||
in the random force generation and there could be as many atoms as in
|
||||
the whole simulation that can migrate into every individual
|
||||
processor. A larger *N\_f* provides a more accurate sampling of the
|
||||
spectrum while consumes more memory. With fixed *f\_max* and
|
||||
<i>γ</i>, *N\_f* should be big enough to converge the classical
|
||||
temperature <i>T</i><sup>cl</sup> as a function of target quantum bath
|
||||
:math:`\gamma`, *N\_f* should be big enough to converge the classical
|
||||
temperature :math:`T^{cl}` as a function of target quantum bath
|
||||
temperature. Memory usage per processor could be from 10 to 100
|
||||
Mbytes.
|
||||
|
||||
@ -147,10 +141,12 @@ Mbytes.
|
||||
Nose/Hoover thermostatting AND time integration, this fix does NOT
|
||||
perform time integration. It only modifies forces to a colored
|
||||
thermostat. Thus you must use a separate time integration fix, like
|
||||
:doc:`fix nve <fix_nve>` or :doc:`fix nph <fix_nh>` to actually update the
|
||||
velocities and positions of atoms (as shown in the
|
||||
examples). Likewise, this fix should not normally be used with other
|
||||
fixes or commands that also specify system temperatures , e.g. :doc:`fix nvt <fix_nh>` and :doc:`fix temp/rescale <fix_temp_rescale>`.
|
||||
:doc:`fix nve <fix_nve>` or :doc:`fix nph <fix_nh>` to actually
|
||||
update the velocities and positions of atoms (as shown in the
|
||||
examples). Likewise, this fix should not normally be used with
|
||||
other fixes or commands that also specify system temperatures ,
|
||||
e.g. :doc:`fix nvt <fix_nh>` and :doc:`fix temp/rescale
|
||||
<fix_temp_rescale>`.
|
||||
|
||||
|
||||
----------
|
||||
@ -158,10 +154,11 @@ Mbytes.
|
||||
|
||||
**Restart, fix\_modify, output, run start/stop, minimizie info:**
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`. Because the state of the random number generator
|
||||
is not saved in restart files, this means you cannot do "exact"
|
||||
restarts with this fix. However, in a statistical sense, a restarted
|
||||
simulation should produce similar behaviors of the system.
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`. Because the state of the random number generator is not
|
||||
saved in restart files, this means you cannot do "exact" restarts with
|
||||
this fix. However, in a statistical sense, a restarted simulation
|
||||
should produce similar behaviors of the system.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
@ -174,7 +171,8 @@ Restrictions
|
||||
|
||||
|
||||
This fix style is part of the USER-QTB package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` doc page for more info.
|
||||
|
||||
|
||||
----------
|
||||
@ -183,7 +181,8 @@ LAMMPS was built with that package. See the :doc:`Build package <Build_package>`
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix nve <fix_nve>`, :doc:`fix nph <fix_nh>`, :doc:`fix langevin <fix_langevin>`, :doc:`fix qbmsst <fix_qbmsst>`
|
||||
:doc:`fix nve <fix_nve>`, :doc:`fix nph <fix_nh>`,
|
||||
:doc:`fix langevin <fix_langevin>`, :doc:`fix qbmsst <fix_qbmsst>`
|
||||
|
||||
|
||||
----------
|
||||
|
||||
@ -84,36 +84,37 @@ the implementation and usage of mixture systems (solute particles in
|
||||
an SRD fluid). See the examples/srd directory for sample input
|
||||
scripts using SRD particles in both settings.
|
||||
|
||||
This fix does 2 things:
|
||||
This fix does two things:
|
||||
|
||||
(1) It advects the SRD particles, performing collisions between SRD
|
||||
and big particles or walls every timestep, imparting force and torque
|
||||
to the big particles. Collisions also change the position and
|
||||
velocity of SRD particles.
|
||||
1. It advects the SRD particles, performing collisions between SRD
|
||||
and big particles or walls every timestep, imparting force and torque
|
||||
to the big particles. Collisions also change the position and
|
||||
velocity of SRD particles.
|
||||
|
||||
(2) It resets the velocity distribution of SRD particles via random
|
||||
rotations every N timesteps.
|
||||
2. It resets the velocity distribution of SRD particles via random
|
||||
rotations every N timesteps.
|
||||
|
||||
SRD particles have a mass, temperature, characteristic timestep
|
||||
dt\_SRD, and mean free path between collisions (lamda). The
|
||||
fundamental equation relating these 4 quantities is
|
||||
:math:`dt_{SRD}`, and mean free path between collisions
|
||||
(:math:`\lambda`). The fundamental equation relating these 4 quantities
|
||||
is
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. math::
|
||||
|
||||
lamda = dt_SRD \* sqrt(Kboltz \* Tsrd / mass)
|
||||
\lambda = dt_{SRD} \sqrt{\frac{k_B T_{SRD}}{m}}
|
||||
|
||||
The mass of SRD particles is set by the :doc:`mass <mass>` command
|
||||
elsewhere in the input script. The SRD timestep dt\_SRD is N times the
|
||||
step dt defined by the :doc:`timestep <timestep>` command. Big
|
||||
particles move in the normal way via a time integration :doc:`fix <fix>`
|
||||
with a short timestep dt. SRD particles advect with a large timestep
|
||||
dt\_SRD >= dt.
|
||||
The mass *m* of SRD particles is set by the :doc:`mass <mass>` command
|
||||
elsewhere in the input script. The SRD timestep :math:`dt_{SRD}` is N
|
||||
times the step *dt* defined by the :doc:`timestep <timestep>` command.
|
||||
Big particles move in the normal way via a time integration :doc:`fix
|
||||
<fix>` with a short timestep dt. SRD particles advect with a large
|
||||
timestep :math:`dt_{SRD} \ge dt`.
|
||||
|
||||
If the *lamda* keyword is not specified, the SRD temperature
|
||||
*Tsrd* is used in the above formula to compute lamda. If the *lamda*
|
||||
keyword is specified, then the *Tsrd* setting is ignored and the above
|
||||
equation is used to compute the SRD temperature.
|
||||
:math:`T_{SRD}` is used in the above formula to compute :math:`\lambda`.
|
||||
If the *lamda* keyword is specified, then the *Tsrd* setting is ignored
|
||||
and the above equation is used to compute the SRD temperature.
|
||||
|
||||
The characteristic length scale for the SRD fluid is set by *hgrid*
|
||||
which is used to bin SRD particles for purposes of resetting their
|
||||
@ -121,13 +122,14 @@ velocities. Normally hgrid is set to be 1/4 of the big particle
|
||||
diameter or smaller, to adequately resolve fluid properties around the
|
||||
big particles.
|
||||
|
||||
Lamda cannot be smaller than 0.6 \* hgrid, else an error is generated
|
||||
(unless the *shift* keyword is used, see below). The velocities of
|
||||
SRD particles are bounded by Vmax, which is set so that an SRD
|
||||
particle will not advect further than Dmax = 4\*lamda in dt\_SRD. This
|
||||
means that roughly speaking, Dmax should not be larger than a big
|
||||
particle diameter, else SRDs may pass through big particles without
|
||||
colliding. A warning is generated if this is the case.
|
||||
:math:`\lambda` cannot be smaller than 0.6 \* hgrid, else an error is
|
||||
generated (unless the *shift* keyword is used, see below). The
|
||||
velocities of SRD particles are bounded by Vmax, which is set so that an
|
||||
SRD particle will not advect further than :math:`D_{max} = 4 \lambda` in
|
||||
:math:`dt_{SRD}`. This means that roughly speaking, :math:`D_{max}`
|
||||
should not be larger than a big particle diameter, else SRDs may pass
|
||||
through big particles without colliding. A warning is generated if this
|
||||
is the case.
|
||||
|
||||
Collisions between SRD particles and big particles or walls are
|
||||
modeled as a lightweight SRD point particle hitting a heavy big
|
||||
@ -160,11 +162,12 @@ the big particles appropriately should be used.
|
||||
The *overlap* keyword should be set to *yes* if two (or more) big
|
||||
particles can ever overlap. This depends on the pair potential
|
||||
interaction used for big-big interactions, or could be the case if
|
||||
multiple big particles are held together as rigid bodies via the :doc:`fix rigid <fix_rigid>` command. If the *overlap* keyword is *no* and
|
||||
big particles do in fact overlap, then SRD/big collisions can generate
|
||||
an error if an SRD ends up inside two (or more) big particles at once.
|
||||
How this error is treated is determined by the *inside* keyword.
|
||||
Running with *overlap* set to *no* allows for faster collision
|
||||
multiple big particles are held together as rigid bodies via the
|
||||
:doc:`fix rigid <fix_rigid>` command. If the *overlap* keyword is *no*
|
||||
and big particles do in fact overlap, then SRD/big collisions can
|
||||
generate an error if an SRD ends up inside two (or more) big particles
|
||||
at once. How this error is treated is determined by the *inside*
|
||||
keyword. Running with *overlap* set to *no* allows for faster collision
|
||||
checking, so it should only be set to *yes* if needed.
|
||||
|
||||
The *inside* keyword determines how a collision is treated if the
|
||||
@ -258,30 +261,30 @@ warning is generated.
|
||||
reneighboring. Note that changing the SRD bin size may alter the
|
||||
properties of the SRD fluid, such as its viscosity.
|
||||
|
||||
The *shift* keyword determines whether the coordinates of SRD
|
||||
particles are randomly shifted when binned for purposes of rotating
|
||||
their velocities. When no shifting is performed, SRD particles are
|
||||
binned and the velocity distribution of the set of SRD particles in
|
||||
each bin is adjusted via a rotation operator. This is a statistically
|
||||
valid operation if SRD particles move sufficiently far between
|
||||
successive rotations. This is determined by their mean-free path
|
||||
lamda. If lamda is less than 0.6 of the SRD bin size, then shifting
|
||||
is required. A shift means that all of the SRD particles are shifted
|
||||
by a vector whose coordinates are chosen randomly in the range [-1/2
|
||||
bin size, 1/2 bin size]. Note that all particles are shifted by the
|
||||
same vector. The specified random number *shiftseed* is used to
|
||||
generate these vectors. This operation sufficiently randomizes which
|
||||
SRD particles are in the same bin, even if lamda is small.
|
||||
The *shift* keyword determines whether the coordinates of SRD particles
|
||||
are randomly shifted when binned for purposes of rotating their
|
||||
velocities. When no shifting is performed, SRD particles are binned and
|
||||
the velocity distribution of the set of SRD particles in each bin is
|
||||
adjusted via a rotation operator. This is a statistically valid
|
||||
operation if SRD particles move sufficiently far between successive
|
||||
rotations. This is determined by their mean-free path :math:`\lambda`.
|
||||
If :math:`\lambda` is less than 0.6 of the SRD bin size, then shifting
|
||||
is required. A shift means that all of the SRD particles are shifted by
|
||||
a vector whose coordinates are chosen randomly in the range [-1/2 bin
|
||||
size, 1/2 bin size]. Note that all particles are shifted by the same
|
||||
vector. The specified random number *shiftseed* is used to generate
|
||||
these vectors. This operation sufficiently randomizes which SRD
|
||||
particles are in the same bin, even if :math:`lambda` is small.
|
||||
|
||||
If the *shift* flag is set to *no*\ , then no shifting is performed, but
|
||||
bin data will be communicated if bins overlap processor boundaries.
|
||||
An error will be generated if lamda < 0.6 of the SRD bin size. If the
|
||||
*shift* flag is set to *possible*\ , then shifting is performed only if
|
||||
lamda < 0.6 of the SRD bin size. A warning is generated to let you
|
||||
know this is occurring. If the *shift* flag is set to *yes* then
|
||||
shifting is performed regardless of the magnitude of lamda. Note that
|
||||
the *shiftseed* is not used if the *shift* flag is set to *no*\ , but
|
||||
must still be specified.
|
||||
bin data will be communicated if bins overlap processor boundaries. An
|
||||
error will be generated if :math:`\lambda < 0.6` of the SRD bin size.
|
||||
If the *shift* flag is set to *possible*\ , then shifting is performed
|
||||
only if :math:`\lambda < 0.6` of the SRD bin size. A warning is
|
||||
generated to let you know this is occurring. If the *shift* flag is set
|
||||
to *yes* then shifting is performed regardless of the magnitude of
|
||||
:math:`\lambda`. Note that the *shiftseed* is not used if the *shift*
|
||||
flag is set to *no*\ , but must still be specified.
|
||||
|
||||
Note that shifting of SRD coordinates requires extra communication,
|
||||
hence it should not normally be enabled unless required.
|
||||
@ -398,10 +401,10 @@ Related commands
|
||||
Default
|
||||
"""""""
|
||||
|
||||
The option defaults are lamda inferred from Tsrd, collision = noslip,
|
||||
overlap = no, inside = error, exact = yes, radius = 1.0, bounce = 0,
|
||||
search = hgrid, cubic = error 0.01, shift = no, tstat = no, and
|
||||
rescale = yes.
|
||||
The option defaults are: *lamda* (:math:`\lambda`) is inferred from *Tsrd*,
|
||||
collision = noslip, overlap = no, inside = error, exact = yes, radius =
|
||||
1.0, bounce = 0, search = hgrid, cubic = error 0.01, shift = no, tstat =
|
||||
no, and rescale = yes.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
@ -47,11 +47,11 @@ energy to the system), it has the effect of slowly (or rapidly)
|
||||
freezing the system; hence it can also be used as a simple energy
|
||||
minimization technique.
|
||||
|
||||
The damping force F is given by F = - gamma \* velocity. The larger
|
||||
the coefficient, the faster the kinetic energy is reduced. If the
|
||||
optional keyword *scale* is used, gamma can scaled up or down by the
|
||||
specified factor for atoms of that type. It can be used multiple
|
||||
times to adjust gamma for several atom types.
|
||||
The damping force :math:`F_i` is given by :math:`F_i = - \gamma v_i`.
|
||||
The larger the coefficient, the faster the kinetic energy is reduced.
|
||||
If the optional keyword *scale* is used, :math:`\gamma` can scaled up or
|
||||
down by the specified factor for atoms of that type. It can be used
|
||||
multiple times to adjust :math:`\gamma` for several atom types.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -60,38 +60,40 @@ times to adjust gamma for several atom types.
|
||||
:doc:`units <units>` options like "real" or "metal" that are not
|
||||
self-consistent.
|
||||
|
||||
In a Brownian dynamics context, gamma = Kb T / D, where Kb =
|
||||
Boltzmann's constant, T = temperature, and D = particle diffusion
|
||||
coefficient. D can be written as Kb T / (3 pi eta d), where eta =
|
||||
dynamic viscosity of the frictional fluid and d = diameter of
|
||||
particle. This means gamma = 3 pi eta d, and thus is proportional to
|
||||
the viscosity of the fluid and the particle diameter.
|
||||
In a Brownian dynamics context, :math:`\gamma = \frac{k_B T}{D}`, where
|
||||
:math:`k_B =` Boltzmann's constant, *T* = temperature, and *D* = particle
|
||||
diffusion coefficient. *D* can be written as :math:`\frac{k_B T}{3 \pi
|
||||
\eta d}`, where :math:`\eta =` dynamic viscosity of the frictional fluid
|
||||
and d = diameter of particle. This means :math:`\gamma = 3 \pi \eta d`,
|
||||
and thus is proportional to the viscosity of the fluid and the particle
|
||||
diameter.
|
||||
|
||||
In the current implementation, rather than have the user specify a
|
||||
viscosity, gamma is specified directly in force/velocity units. If
|
||||
needed, gamma can be adjusted for atoms of different sizes
|
||||
(i.e. sigma) by using the *scale* keyword.
|
||||
viscosity, :math:`\gamma` is specified directly in force/velocity units.
|
||||
If needed, :math:`\gamma` can be adjusted for atoms of different sizes
|
||||
(i.e. :math:`\sigma`) by using the *scale* keyword.
|
||||
|
||||
Note that Brownian dynamics models also typically include a randomized
|
||||
force term to thermostat the system at a chosen temperature. The :doc:`fix langevin <fix_langevin>` command does this. It has the same
|
||||
force term to thermostat the system at a chosen temperature. The
|
||||
:doc:`fix langevin <fix_langevin>` command does this. It has the same
|
||||
viscous damping term as fix viscous and adds a random force to each
|
||||
atom. The random force term is proportional to the sqrt of the chosen
|
||||
thermostatting temperature. Thus if you use fix langevin with a
|
||||
target T = 0, its random force term is zero, and you are essentially
|
||||
performing the same operation as fix viscous. Also note that the
|
||||
gamma of fix viscous is related to the damping parameter of :doc:`fix langevin <fix_langevin>`, however the former is specified in units
|
||||
of force/velocity and the latter in units of time, so that it can more
|
||||
easily be used as a thermostat.
|
||||
|
||||
atom. The random force term is proportional to the square root of the
|
||||
chosen thermostatting temperature. Thus if you use fix langevin with a
|
||||
target :math:`T = 0`, its random force term is zero, and you are
|
||||
essentially performing the same operation as fix viscous. Also note
|
||||
that the gamma of fix viscous is related to the damping parameter of
|
||||
:doc:`fix langevin <fix_langevin>`, however the former is specified in
|
||||
units of force/velocity and the latter in units of time, so that it can
|
||||
more easily be used as a thermostat.
|
||||
|
||||
----------
|
||||
|
||||
|
||||
**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
|
||||
are 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 information about this fix is written to :doc:`binary restart files
|
||||
<restart>`. None of the :doc:`fix_modify <fix_modify>` options are
|
||||
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
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
|
||||
@ -158,7 +158,7 @@ For style *wall/morse*\ , the energy E is given by a Morse potential:
|
||||
|
||||
|
||||
In all cases, *r* is the distance from the particle to the wall at
|
||||
position *coord*\ , and Rc is the *cutoff* distance at which the
|
||||
position *coord*\ , and :math:`r_c` is the *cutoff* distance at which the
|
||||
particle and wall no longer interact. The energy of the wall
|
||||
potential is shifted so that the wall-particle interaction energy is
|
||||
0.0 at the cutoff distance.
|
||||
@ -185,10 +185,10 @@ box parameters and timestep and elapsed time. Thus it is easy to
|
||||
specify a time-dependent wall position. See examples below.
|
||||
|
||||
For the *wall/lj93* and *wall/lj126* and *wall/lj1043* styles,
|
||||
*epsilon* and *sigma* are the usual Lennard-Jones parameters, which
|
||||
:math:`\epsilon` and :math:`\sigma` are the usual Lennard-Jones parameters, which
|
||||
determine the strength and size of the particle as it interacts with
|
||||
the wall. Epsilon has energy units. Note that this *epsilon* and
|
||||
*sigma* may be different than any *epsilon* or *sigma* values defined
|
||||
the wall. Epsilon has energy units. Note that this :math:`\epsilon` and
|
||||
:math:`\sigma` may be different than any :math:`\epsilon` or :math:`\sigma` values defined
|
||||
for a pair style that computes particle-particle interactions.
|
||||
|
||||
The *wall/lj93* interaction is derived by integrating over a 3d
|
||||
@ -197,39 +197,39 @@ interaction is effectively a harder, more repulsive wall interaction.
|
||||
The *wall/lj1043* interaction is yet a different form of wall
|
||||
interaction, described in Magda et al in :ref:`(Magda) <Magda>`.
|
||||
|
||||
For the *wall/colloid* style, *R* is the radius of the colloid
|
||||
particle, *D* is the distance from the surface of the colloid particle
|
||||
to the wall (r-R), and *sigma* is the size of a constituent LJ
|
||||
particle inside the colloid particle and wall. Note that the cutoff
|
||||
distance Rc in this case is the distance from the colloid particle
|
||||
center to the wall. The prefactor *epsilon* can be thought of as an
|
||||
effective Hamaker constant with energy units for the strength of the
|
||||
colloid-wall interaction. More specifically, the *epsilon* pre-factor
|
||||
= 4 \* pi\^2 \* rho\_wall \* rho\_colloid \* epsilon \* sigma\^6, where epsilon
|
||||
and sigma are the LJ parameters for the constituent LJ
|
||||
particles. Rho\_wall and rho\_colloid are the number density of the
|
||||
constituent particles, in the wall and colloid respectively, in units
|
||||
of 1/volume.
|
||||
For the *wall/colloid* style, *R* is the radius of the colloid particle,
|
||||
*D* is the distance from the surface of the colloid particle to the wall
|
||||
(r-R), and :math:`\sigma` is the size of a constituent LJ particle
|
||||
inside the colloid particle and wall. Note that the cutoff distance Rc
|
||||
in this case is the distance from the colloid particle center to the
|
||||
wall. The prefactor :math:`\epsilon` can be thought of as an effective
|
||||
Hamaker constant with energy units for the strength of the colloid-wall
|
||||
interaction. More specifically, the :math:`\epsilon` pre-factor is
|
||||
:math:`4\pi^2 \rho_{wall} \rho_{colloid} \epsilon \sigma^6`, where
|
||||
:math:`\epsilon` and :math:`\sigma` are the LJ parameters for the
|
||||
constituent LJ particles. :math:`\rho_{wall}` and :math:`\rho_{colloid}`
|
||||
are the number density of the constituent particles, in the wall and
|
||||
colloid respectively, in units of 1/volume.
|
||||
|
||||
The *wall/colloid* interaction is derived by integrating over
|
||||
constituent LJ particles of size *sigma* within the colloid particle
|
||||
and a 3d half-lattice of Lennard-Jones 12/6 particles of size *sigma*
|
||||
constituent LJ particles of size :math:`\sigma` within the colloid particle
|
||||
and a 3d half-lattice of Lennard-Jones 12/6 particles of size :math:`\sigma`
|
||||
in the wall. As mentioned in the preceding paragraph, the density of
|
||||
particles in the wall and colloid can be different, as specified by
|
||||
the *epsilon* pre-factor.
|
||||
the :math:`\epsilon` pre-factor.
|
||||
|
||||
For the *wall/harmonic* style, *epsilon* is effectively the spring
|
||||
For the *wall/harmonic* style, :math:`\epsilon` is effectively the spring
|
||||
constant K, and has units (energy/distance\^2). The input parameter
|
||||
*sigma* is ignored. The minimum energy position of the harmonic
|
||||
:math:`\sigma` is ignored. The minimum energy position of the harmonic
|
||||
spring is at the *cutoff*\ . This is a repulsive-only spring since the
|
||||
interaction is truncated at the *cutoff*
|
||||
|
||||
For the *wall/morse* style, the three parameters are in this order:
|
||||
*D\_0* the depth of the potential, *alpha* the width parameter, and
|
||||
*r\_0* the location of the minimum. *D\_0* has energy units, *alpha*
|
||||
inverse distance units, and *r\_0* distance units.
|
||||
:math:`D_0` the depth of the potential, :math:`\alpha` the width parameter, and
|
||||
:math:`r_0` the location of the minimum. :math:`D_0` has energy units, :math:`\alpha`
|
||||
inverse distance units, and :math:`r_0` distance units.
|
||||
|
||||
For any wall, the *epsilon* and/or *sigma* and/or *alpha* parameter can
|
||||
For any wall, the :math:`\epsilon` and/or :math:`\sigma` and/or :math:`\alpha` parameter can
|
||||
be specified
|
||||
as an :doc:`equal-style variable <variable>`, in which case it should be
|
||||
specified as v\_name, where name is the variable name. As with a
|
||||
@ -253,7 +253,7 @@ time. Thus it is easy to specify a time-dependent wall interaction.
|
||||
the finite-size particles of radius R must be a distance larger than R
|
||||
from the wall position *coord*\ . The *harmonic* style is a softer
|
||||
potential and does not blow up as r -> 0, but you must use a large
|
||||
enough *epsilon* that particles always reamin on the correct side of
|
||||
enough :math:`\epsilon` that particles always reamin on the correct side of
|
||||
the wall (r > 0).
|
||||
|
||||
The *units* keyword determines the meaning of the distance units used
|
||||
|
||||
@ -229,7 +229,7 @@ parameters and how to choose them is described in
|
||||
|
||||
All of the PPPM styles can be used with single-precision FFTs by
|
||||
using the compiler switch -DFFT\_SINGLE for the FFT\_INC setting in your
|
||||
lo-level Makefile. This setting also changes some of the PPPM
|
||||
low-level Makefile. This setting also changes some of the PPPM
|
||||
operations (e.g. mapping charge to mesh and interpolating electric
|
||||
fields to particles) to be performed in single precision. This option
|
||||
can speed-up long-range calculations, particularly in parallel or on
|
||||
@ -397,7 +397,7 @@ produce the same results, except for round-off and precision issues.
|
||||
More specifically, the *pppm/gpu* style performs charge assignment and
|
||||
force interpolation calculations on the GPU. These processes are
|
||||
performed either in single or double precision, depending on whether
|
||||
the -DFFT\_SINGLE setting was specified in your lo-level Makefile, as
|
||||
the -DFFT\_SINGLE setting was specified in your low-level Makefile, as
|
||||
discussed above. The FFTs themselves are still calculated on the CPU.
|
||||
If *pppm/gpu* is used with a GPU-enabled pair style, part of the PPPM
|
||||
calculation can be performed concurrently on the GPU while other
|
||||
|
||||
@ -87,9 +87,9 @@ is thus evaluated as:
|
||||
|
||||
where C is an energy-conversion constant, :math:`q_i` and :math:`q_j`
|
||||
are the charges on the 2 atoms, epsilon is the dielectric constant which
|
||||
can be set by the :doc:`dielectric <dielectric>` command, alpha is ion
|
||||
pair dependent damping parameter and erf() is the error-function. The
|
||||
cutoff Rc truncates the interaction distance.
|
||||
can be set by the :doc:`dielectric <dielectric>` command, :math:`\alpha`
|
||||
is the ion pair dependent damping parameter and erf() is the
|
||||
error-function. The cutoff :math:`r_c` truncates the interaction distance.
|
||||
|
||||
The style *buck6d/coul/gauss/dsf* computes the Coulomb interaction
|
||||
via the damped shifted force model described in :ref:`(Fennell) <Fennell>`
|
||||
|
||||
@ -45,8 +45,8 @@ Description
|
||||
Style *comb* computes the second-generation variable charge COMB
|
||||
(Charge-Optimized Many-Body) potential. Style *comb3* computes the
|
||||
third-generation COMB potential. These COMB potentials are described
|
||||
in :ref:`(COMB) <COMB>` and :ref:`(COMB3) <COMB3>`. Briefly, the total energy
|
||||
*E<sub>T</sub>* of a system of atoms is given by
|
||||
in :ref:`(COMB) <COMB>` and :ref:`(COMB3) <COMB3>`. Briefly, the
|
||||
total energy :math:`E_T` of a system of atoms is given by
|
||||
|
||||
.. math::
|
||||
|
||||
|
||||
@ -207,7 +207,7 @@ manipulation of adding and subtracting a self term (for i = j) to the
|
||||
first and second term on the right-hand-side, respectively, and a
|
||||
small enough :math:`\alpha` damping parameter, the second term shrinks and
|
||||
the potential becomes a rapidly-converging real-space summation. With
|
||||
a long enough cutoff and small enough alpha parameter, the energy and
|
||||
a long enough cutoff and small enough :math:`\alpha` parameter, the energy and
|
||||
forces calculated by the Wolf summation method approach those of the
|
||||
Ewald sum. So it is a means of getting effective long-range
|
||||
interactions with a short-range potential.
|
||||
|
||||
@ -88,14 +88,14 @@ and three-body coefficients in the formula above:
|
||||
* B (distance units)
|
||||
* cutoffA (distance units)
|
||||
* cutoffC (distance units)
|
||||
* alpha
|
||||
* beta
|
||||
* eta
|
||||
* gamma (distance units)
|
||||
* lambda (energy units)
|
||||
* mu
|
||||
* tho
|
||||
* sigma (distance units)
|
||||
* :math:`\alpha`
|
||||
* :math:`\beta`
|
||||
* :math:`\eta`
|
||||
* :math:`\gamma` (distance units)
|
||||
* :math:`lambda` (energy units)
|
||||
* :math:`\mu`
|
||||
* :math:`\tau`
|
||||
* :math:`\sigma` (distance units)
|
||||
* Q0
|
||||
* u1
|
||||
* u2
|
||||
|
||||
@ -28,13 +28,13 @@ Description
|
||||
"""""""""""
|
||||
|
||||
Style *line/lj* treats particles which are line segments as a set of
|
||||
small spherical particles that tile the line segment length as
|
||||
explained below. Interactions between two line segments, each with N1
|
||||
and N2 spherical particles, are calculated as the pairwise sum of
|
||||
N1\*N2 Lennard-Jones interactions. Interactions between a line segment
|
||||
with N spherical particles and a point particle are treated as the
|
||||
pairwise sum of N Lennard-Jones interactions. See the :doc:`pair_style lj/cut <pair_lj>` doc page for the definition of Lennard-Jones
|
||||
interactions.
|
||||
small spherical particles that tile the line segment length as explained
|
||||
below. Interactions between two line segments, each with N1 and N2
|
||||
spherical particles, are calculated as the pairwise sum of N1\*N2
|
||||
Lennard-Jones interactions. Interactions between a line segment with N
|
||||
spherical particles and a point particle are treated as the pairwise sum
|
||||
of N Lennard-Jones interactions. See the :doc:`pair_style lj/cut
|
||||
<pair_lj>` doc page for the definition of Lennard-Jones interactions.
|
||||
|
||||
The set of non-overlapping spherical sub-particles that represent a
|
||||
line segment are generated in the following manner. Their size is a
|
||||
@ -50,10 +50,10 @@ each pair of points.
|
||||
|
||||
The LJ interaction between 2 spheres on different line segments (or a
|
||||
sphere on a line segment and a point particles) is computed with
|
||||
sub-particle epsilon, sigma, and cutoff values that are set by the
|
||||
pair\_coeff command, as described below. If the distance between the 2
|
||||
spheres is greater than the sub-particle cutoff, there is no
|
||||
interaction. This means that some pairs of sub-particles on 2 line
|
||||
sub-particle :math:`\epsilon`, :math:`\sigma`, and *cutoff* values that
|
||||
are set by the pair\_coeff command, as described below. If the distance
|
||||
between the 2 spheres is greater than the sub-particle cutoff, there is
|
||||
no interaction. This means that some pairs of sub-particles on 2 line
|
||||
segments may interact, but others may not.
|
||||
|
||||
For purposes of creating the neighbor list for pairs of interacting
|
||||
@ -86,8 +86,8 @@ commands:
|
||||
|
||||
* sizeI (distance units)
|
||||
* sizeJ (distance units)
|
||||
* epsilon (energy units)
|
||||
* sigma (distance units)
|
||||
* :math:`\epsilon` (energy units)
|
||||
* :math:`\sigma` (distance units)
|
||||
* subcutoff (distance units)
|
||||
* cutoff (distance units)
|
||||
|
||||
@ -102,11 +102,11 @@ sizeI will apply to all segments of type I. If typeI or typeJ refers
|
||||
to point particles, the corresponding sizeI or sizeJ is ignored; it
|
||||
can be set to 0.0.
|
||||
|
||||
The *epsilon*\ , *sigma*\ , and *subcutoff* coefficients are used to
|
||||
compute an LJ interactions between a pair of sub-particles on 2 line
|
||||
segments (of type I and J), or between a sub particle/point particle
|
||||
pair. As discussed above, the *subcutoff* and *cutoff* params are
|
||||
different. The latter is only used for building the neighbor list
|
||||
The :math:`\epsilon`, :math:`\sigma`, and *subcutoff* coefficients are
|
||||
used to compute an LJ interactions between a pair of sub-particles on 2
|
||||
line segments (of type I and J), or between a sub particle/point
|
||||
particle pair. As discussed above, the *subcutoff* and *cutoff* params
|
||||
are different. The latter is only used for building the neighbor list
|
||||
when the distance between centers of two line segments or one segment
|
||||
and a point particle is calculated.
|
||||
|
||||
|
||||
@ -295,7 +295,7 @@ a self term (for i = j) to the first and second term on the
|
||||
right-hand-side, respectively, and a small enough :math:`\alpha` damping
|
||||
parameter, the second term shrinks and the potential becomes a
|
||||
rapidly-converging real-space summation. With a long enough cutoff and
|
||||
small enough alpha parameter, the energy and forces calculated by the
|
||||
small enough :math:`\alpha` parameter, the energy and forces calculated by the
|
||||
Wolf summation method approach those of the Ewald sum. So it is a means
|
||||
of getting effective long-range interactions with a short-range
|
||||
potential.
|
||||
|
||||
@ -128,7 +128,7 @@ where :math:`\alpha` gives the type of atom *i*\ , :math:`\beta` the
|
||||
type of atom *j*\ , and the coefficients *a* and *b* filter for atom
|
||||
types as specified by the user. *a* is called the central atom filter as
|
||||
it determines to which atoms the potential applies; :math:`a_{\alpha} =
|
||||
1` if the LD potential applies to atom type alpha else zero. On the
|
||||
1` if the LD potential applies to atom type :math:`\alpha` else zero. On the
|
||||
other hand, *b* is called the neighbor atom filter because it specifies
|
||||
which atom types to use in the calculation of the LD; :math:`b_{\beta} =
|
||||
1` if atom type :math:`\beta` contributes to the LD and zero otherwise.
|
||||
@ -210,12 +210,15 @@ and potential. In general, blank lines anywhere are ignored.
|
||||
----------
|
||||
|
||||
**Mixing, shift, table, tail correction, restart, info**\ :
|
||||
This pair style does not support automatic mixing. For atom type pairs alpha,
|
||||
beta and alpha != beta, even if LD potentials of type (alpha, alpha) and
|
||||
(beta, beta) are provided, you will need to explicitly provide LD potential
|
||||
types (alpha, beta) and (beta, alpha) if need be (Here, the notation (alpha,
|
||||
beta) means that alpha is the central atom to which the LD potential is applied
|
||||
and beta is the neighbor atom which contributes to the LD potential on alpha).
|
||||
This pair style does not support automatic mixing. For atom type pairs
|
||||
:math:`\alpha`, :math:`\beta` and :math:`\alpha` != :math:`\beta`, even
|
||||
if LD potentials of type (:math:`\alpha`, :math:`\alpha`) and
|
||||
(:math:`\beta`, :math:`\beta`) are provided, you will need to explicitly
|
||||
provide LD potential types (:math:`\alpha`, :math:`\beta`) and
|
||||
(:math:`\beta`, :math:`\alpha`) if need be (Here, the notation
|
||||
(:math:`\alpha`, :math:`\beta`) means that :math:`\alpha` is the central
|
||||
atom to which the LD potential is applied and :math:`\beta` is the
|
||||
neighbor atom which contributes to the LD potential on :math:`\alpha`).
|
||||
|
||||
This pair style does not support the :doc:`pair_modify <pair_modify>`
|
||||
shift, table, and tail options.
|
||||
|
||||
@ -90,30 +90,29 @@ See the doc page for individual pair styles for those restrictions. Note also t
|
||||
coefficients for a specific I != J pairing, in which case no mixing is
|
||||
performed.
|
||||
|
||||
mix *geometric*
|
||||
- mix *geometric*
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. math::
|
||||
|
||||
epsilon_ij = sqrt(epsilon_i \* epsilon_j)
|
||||
sigma_ij = sqrt(sigma_i \* sigma_j)
|
||||
\epsilon_{ij} = & \sqrt{\epsilon_i \epsilon_j} \\
|
||||
\sigma_{ij} = & \sqrt{\sigma_i \sigma_j}
|
||||
|
||||
mix *arithmetic*
|
||||
- mix *arithmetic*
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. math::
|
||||
|
||||
epsilon_ij = sqrt(epsilon_i \* epsilon_j)
|
||||
sigma_ij = (sigma_i + sigma_j) / 2
|
||||
\epsilon_{ij} = & \sqrt{\epsilon_i \epsilon_j} \\
|
||||
\sigma_{ij} = & \frac{1}{2} (\sigma_i + \sigma_j)
|
||||
|
||||
mix *sixthpower*
|
||||
- mix *sixthpower*
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. math::
|
||||
|
||||
epsilon_ij = (2 \* sqrt(epsilon_i\*epsilon_j) \* sigma_i\^3 \* sigma_j\^3) /
|
||||
(sigma_i\^6 + sigma_j\^6)
|
||||
sigma_ij = ((sigma_i\*\*6 + sigma_j\*\*6) / 2) \^ (1/6)
|
||||
\epsilon_{ij} = & \frac{2 \sqrt{\epsilon_i \epsilon_j} \sigma_i^3 \sigma_j^3}{\sigma_i^6 + \sigma_j^6} \\
|
||||
\sigma_{ij} = & \left(\frac{1}{2} (\sigma_i^6 + \sigma_j^6) \right)^{\frac{1}{6}}
|
||||
|
||||
The *shift* keyword determines whether a Lennard-Jones potential is
|
||||
shifted at its cutoff to 0.0. If so, this adds an energy term to each
|
||||
|
||||
@ -70,9 +70,9 @@ above, or in the data file or restart files read by the
|
||||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands:
|
||||
|
||||
* D0 (energy units)
|
||||
* alpha (1/distance units)
|
||||
* r0 (distance units)
|
||||
* :math:`D_0` (energy units)
|
||||
* :math:`\alpha` (1/distance units)
|
||||
* :math:`r_0` (distance units)
|
||||
* cutoff (distance units)
|
||||
|
||||
The last coefficient is optional. If not specified, the global morse
|
||||
|
||||
@ -91,11 +91,11 @@ For the *peri/pmb* style:
|
||||
* c (energy/distance/volume\^2 units)
|
||||
* horizon (distance units)
|
||||
* s00 (unitless)
|
||||
* alpha (unitless)
|
||||
* :math:`\alpha` (unitless)
|
||||
|
||||
C is the effectively a spring constant for Peridynamic bonds, the
|
||||
horizon is a cutoff distance for truncating interactions, and s00 and
|
||||
alpha are used as a bond breaking criteria. The units of c are such
|
||||
:math:`\alpha` are used as a bond breaking criteria. The units of c are such
|
||||
that c/distance = stiffness/volume\^2, where stiffness is
|
||||
energy/distance\^2 and volume is distance\^3. See the users guide for
|
||||
more details.
|
||||
@ -106,10 +106,10 @@ For the *peri/lps* style:
|
||||
* G (force/area units)
|
||||
* horizon (distance units)
|
||||
* s00 (unitless)
|
||||
* alpha (unitless)
|
||||
* :math:`\alpha` (unitless)
|
||||
|
||||
K is the bulk modulus and G is the shear modulus. The horizon is a
|
||||
cutoff distance for truncating interactions, and s00 and alpha are
|
||||
cutoff distance for truncating interactions, and s00 and :math:`\alpha` are
|
||||
used as a bond breaking criteria. See the users guide for more
|
||||
details.
|
||||
|
||||
@ -119,12 +119,12 @@ For the *peri/ves* style:
|
||||
* G (force/area units)
|
||||
* horizon (distance units)
|
||||
* s00 (unitless)
|
||||
* alpha (unitless)
|
||||
* :math:`\alpha` (unitless)
|
||||
* m\_lambdai (unitless)
|
||||
* m\_taubi (unitless)
|
||||
|
||||
K is the bulk modulus and G is the shear modulus. The horizon is a
|
||||
cutoff distance for truncating interactions, and s00 and alpha are
|
||||
cutoff distance for truncating interactions, and s00 and :math:`\alpha` are
|
||||
used as a bond breaking criteria. m\_lambdai and m\_taubi are the
|
||||
viscoelastic relaxation parameter and time constant,
|
||||
respectively. m\_lambdai varies within zero to one. For very small
|
||||
@ -138,11 +138,11 @@ For the *peri/eps* style:
|
||||
* G (force/area units)
|
||||
* horizon (distance units)
|
||||
* s00 (unitless)
|
||||
* alpha (unitless)
|
||||
* :math:`\alpha` (unitless)
|
||||
* m\_yield\_stress (force/area units)
|
||||
|
||||
K is the bulk modulus and G is the shear modulus. The horizon is a
|
||||
cutoff distance and s00 and alpha are used as a bond breaking
|
||||
cutoff distance and s00 and :math:`\alpha` are used as a bond breaking
|
||||
criteria. m\_yield\_stress is the yield stress of the material. For
|
||||
details please see the description in "(Mtchell2011a)".
|
||||
|
||||
|
||||
@ -47,13 +47,13 @@ smooth convergence to zero interaction.
|
||||
|
||||
The parameters appearing in the upper expressions are set in the
|
||||
ffield.SMTBQ.Syst file where Syst corresponds to the selected system
|
||||
(e.g. field.SMTBQ.Al2O3). Examples for TiO2,
|
||||
Al2O3 are provided. A single pair\_coeff command
|
||||
(e.g. field.SMTBQ.Al2O3). Examples for :math:`\mathrm{TiO_2}`,
|
||||
:math:`\mathrm{Al_2O_3}` are provided. A single pair\_coeff command
|
||||
is used with the SMTBQ styles which provides the path to the potential
|
||||
file with parameters for needed elements. These are mapped to LAMMPS
|
||||
atom types by specifying additional arguments after the potential
|
||||
filename in the pair\_coeff command. Note that atom type 1 must always
|
||||
correspond to oxygen atoms. As an example, to simulate a TiO2 system,
|
||||
correspond to oxygen atoms. As an example, to simulate a :math:`\mathrm{TiO_2}` system,
|
||||
atom type 1 has to be oxygen and atom type 2 Ti. The following
|
||||
pair\_coeff command should then be used:
|
||||
|
||||
@ -76,7 +76,7 @@ Interaction between oxygen, :math:`E_{OO}`, consists of two parts,
|
||||
an attractive and a repulsive part. The attractive part is effective
|
||||
only at short range (< :math:`r_2^{OO}`). The attractive
|
||||
contribution was optimized to study surfaces reconstruction
|
||||
(e.g. :ref:`SMTB-Q\_2 <SMTB-Q_2>` in TiO2) and is not necessary
|
||||
(e.g. :ref:`SMTB-Q\_2 <SMTB-Q_2>` in :math:`\mathrm{TiO_2}`) and is not necessary
|
||||
for oxide bulk modeling. The repulsive part is the Pauli interaction
|
||||
between the electron clouds of oxygen. The Pauli repulsion and the
|
||||
coulombic electrostatic interaction have same cut off value. In the
|
||||
@ -99,7 +99,7 @@ ffield.SMTBQ.Syst. The energy band term is given by:
|
||||
\delta Q_i & = | Q_i^{F} | - | Q_i |
|
||||
|
||||
|
||||
where :math:\eta_i` is the stoichiometry of atom *i*\ ,
|
||||
where :math:`\eta_i` is the stoichiometry of atom *i*\ ,
|
||||
:math:`\delta Q_i` is the charge delocalization of atom *i*\ ,
|
||||
compared to its formal charge
|
||||
:math:`Q^F_i`. :math:`n_0`, the number of hybridized
|
||||
@ -118,7 +118,7 @@ two visions is explained in appendix A of the article in the
|
||||
SrTiO3 :ref:`SMTB-Q\_3 <SMTB-Q_3>` (parameter :math:`\beta` shown in
|
||||
this article is in fact the :math:`\beta_O`). To summarize the
|
||||
relationship between the hopping integral :math:`\xi^O` and the
|
||||
others, we have in an oxide CnOm the following
|
||||
others, we have in an oxide :math:`\mathrm{C_n O_m}` the following
|
||||
relationship:
|
||||
|
||||
.. math::
|
||||
@ -127,7 +127,7 @@ relationship:
|
||||
\frac{\beta_O}{\sqrt{m}} & = \frac{\beta_C}{\sqrt{n}} = \xi^0 \frac{\sqrt{m}+\sqrt{n}}{2}
|
||||
|
||||
|
||||
Thus parameter :math:`\mu`, indicated above, is given by :math:`\mu = (\sqrt{n} + \sqrt{m}) / 2`
|
||||
Thus parameter :math:`\mu`, indicated above, is given by :math:`\mu = \frac{1}{2}(\sqrt{n}+\sqrt{m})`
|
||||
|
||||
The potential offers the possibility to consider the polarizability of
|
||||
the electron clouds of oxygen by changing the slater radius of the
|
||||
@ -158,7 +158,7 @@ quotation marks ('').
|
||||
1) Number of different element in the oxide:
|
||||
|
||||
* N_elem= 2 or 3
|
||||
* Dividing line
|
||||
* Divider line
|
||||
|
||||
2) Atomic parameters
|
||||
|
||||
@ -166,68 +166,111 @@ For the anion (oxygen)
|
||||
|
||||
* Name of element (char) and stoichiometry in oxide
|
||||
* Formal charge and mass of element
|
||||
* Principal quantum number of outer orbital n), electronegativity (:math:`\xi^0_i`) and hardness (:math:`J^0_i`)
|
||||
* Principal quantum number of outer orbital n), electronegativity (:math:`\chi^0_i`) and hardness (:math:`J^0_i`)
|
||||
* Ionic radius parameters : max coordination number (\ *coordBB* = 6 by default), bulk coordination number *(coordB)*\ , surface coordination number *(coordS)* and *rBB, rB and rS* the slater radius for each coordination number. (**note : If you don't want to change the slater radius, use three identical radius values**)
|
||||
* Number of orbital shared by the element in the oxide (:math:`d_i`)
|
||||
* Dividing line
|
||||
* Divider line
|
||||
|
||||
For each cations (metal):
|
||||
|
||||
* Name of element (char) and stoichiometry in oxide
|
||||
* Formal charge and mass of element
|
||||
* Number of electron in outer orbital *(ne)*\ , electronegativity (\ *χ<sup>0</sup><sub>i</simulationub>*\ ), hardness (\ *J<sup>0</sup><sub>i</sub>*\ ) and *r<sub>Salter</sub>* the slater radius for the cation.
|
||||
* Number of orbitals shared by the elements in the oxide (\ *d<sub>i</sub>*\ )
|
||||
* Dividing line
|
||||
* Number of electron in outer orbital *(ne)*\ , electronegativity (:math:`\chi^0_i`), hardness (:math:`J^0_i`) and :math:`r_{Slater}` the slater radius for the cation.
|
||||
* Number of orbitals shared by the elements in the oxide (:math:`d_i`)
|
||||
* Divider line
|
||||
|
||||
3) Potential parameters:
|
||||
|
||||
* Keyword for element1, element2 and interaction potential ('second\_moment' or 'buck' or 'buckPlusAttr') between element 1 and 2. If the potential is 'second\_moment', specify 'oxide' or 'metal' for metal-oxygen or metal-metal interactions respectively.
|
||||
* Potential parameter: <pre><br/> If type of potential is 'second\_moment' : *A (eV)*\ , *p*\ , *ξ<sup>0</sup>* (eV) and *q* <br/> *r<sub>c1</sub>* (Å), *r<sub>c2</sub>* (Å) and *r<sub>0</sub>* (Å) <br/> If type of potential is 'buck' : *C* (eV) and *ρ* (Å) <br/> If type of potential is 'buckPlusAttr' : *C* (eV) and *ρ* (Å) <br/> *D* (eV), *B* (Å<sup>-1</sup>), *r<sub>1</sub><sup>OO</sup>* (Å) and *r<sub>2</sub><sup>OO</sup>* (Å) </pre>
|
||||
* Dividing line
|
||||
* Keyword for element1, element2 and interaction potential
|
||||
('second\_moment' or 'buck' or 'buckPlusAttr') between element 1
|
||||
and 2. If the potential is 'second\_moment', specify 'oxide' or
|
||||
'metal' for metal-oxygen or metal-metal interactions respectively.
|
||||
* Potential parameter:
|
||||
|
||||
- If type of potential is 'second\_moment' : A (eV), *p*,
|
||||
:math:`\zeta^0` (eV) and *q*, :math:`r_{c1} (\mathrm{\mathring{A}})`, :math:`r_{c2}
|
||||
(\mathrm{\mathring{A}})` and :math:`r_0 (\mathrm{\mathring{A}})`
|
||||
- If type of potential is 'buck' : *C* (eV) and :math:`\rho (\mathrm{\mathring{A}})`
|
||||
- If type of potential is 'buckPlusAttr' : *C* (eV) and :math:`\rho
|
||||
(\mathrm{\mathring{A}})` *D* (eV), *B* :math:`(\mathrm{\mathring{A}}^{-1})`, :math:`r^{OO}_1 (\mathrm{\mathring{A}})` and
|
||||
:math:`r^{OO}_2 (\mathrm{\mathring{A}})`
|
||||
* Divider line
|
||||
|
||||
4) Tables parameters:
|
||||
|
||||
* Cutoff radius for the Coulomb interaction (\ *R<sub>coul</sub>*\ )
|
||||
* Starting radius (\ *r<sub>min</sub>* = 1,18845 Å) and increments (\ *dr* = 0,001 Å) for creating the potential table.
|
||||
* Dividing line
|
||||
* Cutoff radius for the Coulomb interaction (:math:`R_{coul}`)
|
||||
* Starting radius (:math:`r_{min} = 1,18845 \mathrm{\mathring{A}}`) and increments
|
||||
(:math:`dr = 0.001 \mathrm{\mathring{A}}`) for creating the potential table.
|
||||
* Divider line
|
||||
|
||||
5) Rick model parameter:
|
||||
|
||||
* *Nevery* : parameter to set the frequency (\ *1/Nevery*\ ) of the charge resolution. The charges are evaluated each *Nevery* time steps.
|
||||
* Max number of iterative loop (\ *loopmax*\ ) and precision criterion (\ *prec*\ ) in eV of the charge resolution
|
||||
* Dividing line
|
||||
* *Nevery* : parameter to set the frequency of the charge
|
||||
resolution. The charges are evaluated each *Nevery* time steps.
|
||||
* Max number of iterative loop (\ *loopmax*\ ) and convergence criterion
|
||||
(\ *prec*\ ) in eV of the charge resolution
|
||||
* Divider line
|
||||
|
||||
6) Coordination parameter:
|
||||
|
||||
* First (\ *r<sub>1n</sub>*\ ) and second (\ *r<sub>2n</sub>*\ ) neighbor distances in Å
|
||||
* Dividing line
|
||||
* First (:math:`r_{1n}`) and second (:math:`r_{2n}`) neighbor distances
|
||||
in angstrom
|
||||
* Divider line
|
||||
|
||||
7) Charge initialization mode:
|
||||
|
||||
* Keyword (\ *QInitMode*\ ) and initial oxygen charge (\ *Q<sub>init</sub>*\ ). If keyword = 'true', all oxygen charges are initially set equal to *Q<sub>init</sub>*\ . The charges on the cations are initially set in order to respect the neutrality of the box. If keyword = 'false', all atom charges are initially set equal to 0 if you use "create\_atom"#create\_atom command or the charge specified in the file structure using :doc:`read_data <read_data>` command.
|
||||
* Dividing line
|
||||
* Keyword (\ *QInitMode*\ ) and initial oxygen charge
|
||||
(:math:`Q_{init}`). If keyword = 'true', all oxygen charges are
|
||||
initially set equal to :math:`Q_{init}`. The charges on the cations
|
||||
are initially set in order to respect the neutrality of the box. If
|
||||
keyword = 'false', all atom charges are initially set equal to 0 if
|
||||
you use the :doc:`create_atoms <create_atoms>` command or the charge
|
||||
specified in the file structure using :doc:`read_data <read_data>`
|
||||
command.
|
||||
* Divider line
|
||||
|
||||
8) Mode for the electronegativity equalization (Qeq)
|
||||
8) Mode for the electronegativity equalization (Qeq)
|
||||
|
||||
* Keyword (\ *mode*\ ) followed by:
|
||||
|
||||
- QEqAll (one QEq group) \| no parameters
|
||||
- QEqAllParallel (several QEq groups) \| no parameters
|
||||
- Surface \| zlim (QEq only for z>zlim)
|
||||
|
||||
* Keyword mode: <pre> <br/> QEqAll (one QEq group) \| no parameters <br/> QEqAllParallel (several QEq groups) \| no parameters <br/> Surface \| zlim (QEq only for z>zlim) </pre>
|
||||
* Parameter if necessary
|
||||
* Dividing line
|
||||
* Divider line
|
||||
|
||||
9) Verbose
|
||||
|
||||
* If you want the code to work in verbose mode or not : 'true' or 'false'
|
||||
* If you want to print or not in file 'Energy\_component.txt' the three main contributions to the energy of the system according to the description presented above : 'true' or 'false' and *N<sub>Energy</sub>*\ . This option writes in file every *N<sub>Energy</sub>* time step. If the value is 'false' then *N<sub>Energy</sub>* = 0. The file take into account the possibility to have several QEq group *g* then it writes: time step, number of atoms in group *g*\ , electrostatic part of energy, *E<sub>ES</sub>*\ , the interaction between oxygen, *E<sub>OO</sub>*\ , and short range metal-oxygen interaction, *E<sub>MO</sub>*\ .
|
||||
* If you want to print in file 'Electroneg\_component.txt' the electronegativity component (\ *∂E<sub>tot</sub> ⁄∂Q<sub>i</sub>*\ ) or not: 'true' or 'false' and *N<sub>Electroneg</sub>*\ .This option writes in file every *N<sub>Electroneg</sub>* time step. If the value is 'false' then *N<sub>Electroneg</sub>* = 0. The file consist in atom number *i*\ , atom type (1 for oxygen and # higher than 1 for metal), atom position: *x*\ , *y* and *z*\ , atomic charge of atom *i*\ , electrostatic part of atom *i* electronegativity, covalent part of atom *i* electronegativity, the hopping integral of atom *i* *(Zβ<sup>2</sup>)<sub>i<sub>* and box electronegativity.
|
||||
* If you want to print or not in the file 'Energy\_component.txt' the
|
||||
three main contributions to the energy of the system according to the
|
||||
description presented above : 'true' or 'false' and
|
||||
:math:`N_{Energy}`. This option writes to the file every
|
||||
:math:`N_{Energy}` time steps. If the value is 'false' then
|
||||
:math:`N_{Energy} = 0`. The file takes into account the possibility to
|
||||
have several QEq groups *g* then it writes: time step, number of atoms
|
||||
in group *g*\ , electrostatic part of energy, :math:`E_{ES}`, the
|
||||
interaction between oxygen, :math:`E_{OO}`, and short range
|
||||
metal-oxygen interaction, :math:`E_{MO}`.
|
||||
* If you want to print to the file 'Electroneg\_component.txt' the
|
||||
electronegativity component (:math:`\frac{\partial E_{tot}}{\partial
|
||||
Q_i}`) or not: 'true' or 'false' and :math:`N_{Electroneg}`. This
|
||||
option writes to the file every :math:`N_{Electroneg}` time steps. If
|
||||
the value is 'false' then :math:`N_{Electroneg} = 0`. The file
|
||||
consist of atom number *i*\ , atom type (1 for oxygen and # higher
|
||||
than 1 for metal), atom position: *x*\ , *y* and *z*\ , atomic charge
|
||||
of atom *i*\ , electrostatic part of atom *i* electronegativity,
|
||||
covalent part of atom *i* electronegativity, the hopping integral of
|
||||
atom *i* :math:`(Z\beta^2)_i` and box electronegativity.
|
||||
|
||||
.. note::
|
||||
|
||||
This last option slows down the calculation dramatically. Use
|
||||
only with a single processor simulation.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
**Mixing, shift, table, tail correction, restart, rRESPA info:**
|
||||
|
||||
This pair style does not support the :doc:`pair_modify <pair_modify>`
|
||||
@ -241,10 +284,8 @@ This pair style can only be used via the *pair* keyword of the
|
||||
:doc:`run_style respa <run_style>` command. It does not support the
|
||||
*inner*\ , *middle*\ , *outer* keywords.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
**Restriction:**
|
||||
|
||||
This pair style is part of the USER-SMTBQ package and is only enabled
|
||||
@ -259,50 +300,36 @@ for pair interactions.
|
||||
The SMTB-Q potential files provided with LAMMPS (see the potentials
|
||||
directory) are parameterized for metal :doc:`units <units>`.
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
**Citing this work:**
|
||||
|
||||
Please cite related publication: N. Salles, O. Politano, E. Amzallag
|
||||
and R. Tetot, Comput. Mater. Sci. 111 (2016) 181-189
|
||||
|
||||
|
||||
----------
|
||||
|
||||
|
||||
.. _SMTB-Q\_1:
|
||||
|
||||
|
||||
|
||||
**(SMTB-Q\_1)** N. Salles, O. Politano, E. Amzallag, R. Tetot,
|
||||
Comput. Mater. Sci. 111 (2016) 181-189
|
||||
|
||||
.. _SMTB-Q\_2:
|
||||
|
||||
|
||||
|
||||
**(SMTB-Q\_2)** E. Maras, N. Salles, R. Tetot, T. Ala-Nissila,
|
||||
H. Jonsson, J. Phys. Chem. C 2015, 119, 10391-10399
|
||||
|
||||
.. _SMTB-Q\_3:
|
||||
|
||||
|
||||
|
||||
**(SMTB-Q\_3)** R. Tetot, N. Salles, S. Landron, E. Amzallag, Surface
|
||||
Science 616, 19-8722 28 (2013)
|
||||
|
||||
.. _Wolf2:
|
||||
|
||||
|
||||
|
||||
**(Wolf)** D. Wolf, P. Keblinski, S. R. Phillpot, J. Eggebrecht, J Chem
|
||||
Phys, 110, 8254 (1999).
|
||||
|
||||
.. _Rick3:
|
||||
|
||||
|
||||
|
||||
**(Rick)** S. W. Rick, S. J. Stuart, B. J. Berne, J Chem Phys 101, 6141
|
||||
(1994).
|
||||
|
||||
@ -113,9 +113,9 @@ by the following commands:
|
||||
variable zblz equal 73
|
||||
pair_style hybrid/overlay &
|
||||
zbl ${zblcutinner} ${zblcutouter} snap
|
||||
pair_coeff \* \* zbl 0.0
|
||||
pair_coeff * * zbl 0.0
|
||||
pair_coeff 1 1 zbl ${zblz}
|
||||
pair_coeff \* \* snap Ta06A.snapcoeff Ta06A.snapparam Ta
|
||||
pair_coeff * * snap Ta06A.snapcoeff Ta06A.snapparam Ta
|
||||
|
||||
It is convenient to keep these commands in a separate file that can
|
||||
be inserted in any LAMMPS input script using the :doc:`include <include>`
|
||||
@ -164,8 +164,7 @@ into two passes.
|
||||
Detailed definitions for all the other keywords
|
||||
are given on the :doc:`compute sna/atom <compute_sna_atom>` doc page.
|
||||
|
||||
If *quadraticflag* is set to 1, then the SNAP energy expression includes the quadratic term,
|
||||
0.5\*B\^t.alpha.B, where alpha is a symmetric *K* by *K* matrix.
|
||||
If *quadraticflag* is set to 1, then the SNAP energy expression includes the quadratic term, 0.5\*B\^t.alpha.B, where alpha is a symmetric *K* by *K* matrix.
|
||||
The SNAP element file should contain *K*\ (\ *K*\ +1)/2 additional coefficients
|
||||
for each element, the upper-triangular elements of alpha.
|
||||
|
||||
|
||||
@ -113,7 +113,7 @@ For pair\_style *thole*\ , the following coefficients must be defined for
|
||||
each pair of atoms types via the :doc:`pair_coeff <pair_coeff>` command
|
||||
as in the example above.
|
||||
|
||||
* alpha (distance units\^3)
|
||||
* :math:`\alpha` (distance units\^3)
|
||||
* damp
|
||||
* cutoff (distance units)
|
||||
|
||||
@ -126,10 +126,10 @@ For pair style *lj/cut/thole/long*\ , the following coefficients must be
|
||||
defined for each pair of atoms types via the :doc:`pair_coeff <pair_coeff>`
|
||||
command.
|
||||
|
||||
* epsilon (energy units)
|
||||
* sigma (length units)
|
||||
* alpha (distance units\^3)
|
||||
* damps
|
||||
* :math:`\epsilon` (energy units)
|
||||
* :math:`\sigma` (length units)
|
||||
* :math:`\alpha` (distance units\^3)
|
||||
* damp
|
||||
* LJ cutoff (distance units)
|
||||
|
||||
The last two coefficients are optional and default to the global values from
|
||||
@ -168,12 +168,9 @@ are defined using
|
||||
|
||||
.. math::
|
||||
|
||||
\alpha_{ij} = \sqrt{\alpha_i\alpha_j}
|
||||
|
||||
|
||||
.. math::
|
||||
|
||||
a_{ij} = \frac 1 2 (a_i + a_j)
|
||||
\alpha_{ij} = & \sqrt{\alpha_i\alpha_j} \\
|
||||
& \\
|
||||
a_{ij} = & \frac 1 2 (a_i + a_j)
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -50,7 +50,7 @@ Syntax
|
||||
ke = kinetic energy
|
||||
etotal = total energy (pe + ke)
|
||||
enthalpy = enthalpy (etotal + press\*vol)
|
||||
evdwl = VanderWaal pairwise energy (includes etail)
|
||||
evdwl = van der Waals pairwise energy (includes etail)
|
||||
ecoul = Coulombic pairwise energy
|
||||
epair = pairwise energy (evdwl + ecoul + elong)
|
||||
ebond = bond energy
|
||||
@ -59,7 +59,7 @@ Syntax
|
||||
eimp = improper energy
|
||||
emol = molecular energy (ebond + eangle + edihed + eimp)
|
||||
elong = long-range kspace energy
|
||||
etail = VanderWaal energy long-range tail correction
|
||||
etail = van der Waals energy long-range tail correction
|
||||
vol = volume
|
||||
density = mass density of system
|
||||
lx,ly,lz = box lengths in x,y,z
|
||||
@ -205,13 +205,13 @@ change the attributes of this potential energy via the
|
||||
|
||||
|
||||
The kinetic energy of the system *ke* is inferred from the temperature
|
||||
of the system with 1/2 Kb T of energy for each degree of freedom.
|
||||
Thus, using different :doc:`compute commands <compute>` for calculating
|
||||
temperature, via the :doc:`thermo_modify temp <thermo_modify>` command,
|
||||
may yield different kinetic energies, since different computes that
|
||||
calculate temperature can subtract out different non-thermal
|
||||
components of velocity and/or include different degrees of freedom
|
||||
(translational, rotational, etc).
|
||||
of the system with :math:`\frac{1}{2} k_B T` of energy for each degree
|
||||
of freedom. Thus, using different :doc:`compute commands <compute>` for
|
||||
calculating temperature, via the :doc:`thermo_modify temp
|
||||
<thermo_modify>` command, may yield different kinetic energies, since
|
||||
different computes that calculate temperature can subtract out different
|
||||
non-thermal components of velocity and/or include different degrees of
|
||||
freedom (translational, rotational, etc).
|
||||
|
||||
The potential energy of the system *pe* will include contributions
|
||||
from fixes if the :doc:`fix_modify thermo <fix_modify>` option is set
|
||||
@ -219,7 +219,7 @@ for a fix that calculates such a contribution. For example, the :doc:`fix wall/
|
||||
interacting with the wall. See the doc pages for "individual fixes"
|
||||
to see which ones contribute.
|
||||
|
||||
A long-range tail correction *etail* for the VanderWaal pairwise
|
||||
A long-range tail correction *etail* for the van der Waals pairwise
|
||||
energy will be non-zero only if the :doc:`pair_modify tail <pair_modify>` option is turned on. The *etail* contribution
|
||||
is included in *evdwl*\ , *epair*\ , *pe*\ , and *etotal*\ , and the
|
||||
corresponding tail correction to the pressure is included in *press*
|
||||
|
||||
@ -17,7 +17,7 @@ Examples
|
||||
""""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
units metal
|
||||
units lj
|
||||
@ -56,28 +56,29 @@ is often not simple to do.
|
||||
|
||||
|
||||
For style *lj*\ , all quantities are unitless. Without loss of
|
||||
generality, LAMMPS sets the fundamental quantities mass, sigma,
|
||||
epsilon, and the Boltzmann constant = 1. The masses, distances,
|
||||
energies you specify are multiples of these fundamental values. The
|
||||
formulas relating the reduced or unitless quantity (with an asterisk)
|
||||
to the same quantity with units is also given. Thus you can use the
|
||||
mass & sigma & epsilon values for a specific material and convert the
|
||||
results from a unitless LJ simulation into physical quantities.
|
||||
generality, LAMMPS sets the fundamental quantities mass, :math:`\sigma`,
|
||||
:math:`\epsilon`, and the Boltzmann constant :math:`k_B = 1`. The
|
||||
masses, distances, energies you specify are multiples of these
|
||||
fundamental values. The formulas relating the reduced or unitless
|
||||
quantity (with an asterisk) to the same quantity with units is also
|
||||
given. Thus you can use the mass & :math:`\sigma` & :math:`\epsilon`
|
||||
values for a specific material and convert the results from a unitless
|
||||
LJ simulation into physical quantities.
|
||||
|
||||
* mass = mass or m
|
||||
* distance = sigma, where x\* = x / sigma
|
||||
* time = tau, where t\* = t (epsilon / m / sigma\^2)\^1/2
|
||||
* energy = epsilon, where E\* = E / epsilon
|
||||
* velocity = sigma/tau, where v\* = v tau / sigma
|
||||
* force = epsilon/sigma, where f\* = f sigma / epsilon
|
||||
* torque = epsilon, where t\* = t / epsilon
|
||||
* temperature = reduced LJ temperature, where T\* = T Kb / epsilon
|
||||
* pressure = reduced LJ pressure, where P\* = P sigma\^3 / epsilon
|
||||
* dynamic viscosity = reduced LJ viscosity, where eta\* = eta sigma\^3 / epsilon / tau
|
||||
* charge = reduced LJ charge, where q\* = q / (4 pi perm0 sigma epsilon)\^1/2
|
||||
* dipole = reduced LJ dipole, moment where \*mu = mu / (4 pi perm0 sigma\^3 epsilon)\^1/2
|
||||
* electric field = force/charge, where E\* = E (4 pi perm0 sigma epsilon)\^1/2 sigma / epsilon
|
||||
* density = mass/volume, where rho\* = rho sigma\^dim
|
||||
* mass = mass or *m*
|
||||
* distance = :math:`\sigma`, where :math:`x^* = \frac{x}{\sigma}`
|
||||
* time = :math:`\tau`, where :math:`\tau^* = \tau \sqrt{\frac{\epsilon}{m \sigma^2}}`
|
||||
* energy = :math:`\epsilon`, where :math:`E^* = \frac{E}{\epsilon}`
|
||||
* velocity = :math:`\frac{\sigma}{\tau}`, where :math:`v^* = v \frac{\tau}{\sigma}`
|
||||
* force = :math:`\frac{\epsilon}{\sigma}`, where :math:`f^* = f \frac{\sigma}{\epsilon}`
|
||||
* torque = :math:`\epsilon`, where :math:`t^* = \frac{t}{\epsilon}`
|
||||
* temperature = reduced LJ temperature, where :math:`T^* = \frac{T k_B}{\epsilon}`
|
||||
* pressure = reduced LJ pressure, where :math:`p^* = p \frac{\sigma^3}{\epsilon}`
|
||||
* dynamic viscosity = reduced LJ viscosity, where :math:`\eta^* = \eta \frac{\sigma^3}{\epsilon\tau}`
|
||||
* charge = reduced LJ charge, where :math:`q^* = q \frac{1}{\sqrt{4 \pi \varepsilon_0 \sigma \epsilon}}`
|
||||
* dipole = reduced LJ dipole, moment where :math:`\mu^* = \mu \frac{1}{\sqrt{4 \pi \varepsilon_0 \sigma^3 \epsilon}}`
|
||||
* electric field = force/charge, where :math:`E^* = E \frac{\sqrt{4 \pi \varepsilon_0 \sigma \epsilon} \sigma}{\epsilon}`
|
||||
* density = mass/volume, where :math:`\rho^* = \rho \sigma^{dim}`
|
||||
|
||||
Note that for LJ units, the default mode of thermodynamic output via
|
||||
the :doc:`thermo_style <thermo_style>` command is to normalize all
|
||||
@ -228,6 +229,6 @@ Default
|
||||
"""""""
|
||||
|
||||
|
||||
.. parsed-literal::
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
units lj
|
||||
|
||||
@ -615,6 +615,7 @@ dipolar
|
||||
dir
|
||||
Direc
|
||||
dirname
|
||||
disarmmd
|
||||
discoverable
|
||||
discretization
|
||||
discretized
|
||||
@ -2017,6 +2018,7 @@ Nrecompute
|
||||
Nrepeat
|
||||
nreset
|
||||
Nrho
|
||||
Nroff
|
||||
nrun
|
||||
Ns
|
||||
Nsample
|
||||
@ -3129,6 +3131,7 @@ webpage
|
||||
Weckner
|
||||
WeinanE
|
||||
Wennberg
|
||||
Westmere
|
||||
Westview
|
||||
wget
|
||||
Whelan
|
||||
|
||||
Binary file not shown.
49
examples/USER/reaction/tiny_epoxy/in.tiny_epoxy.stabilized
Normal file
49
examples/USER/reaction/tiny_epoxy/in.tiny_epoxy.stabilized
Normal file
@ -0,0 +1,49 @@
|
||||
# two molecules DGEBA (diepoxy) and one DETA (linker)
|
||||
# two crosslinking reactions
|
||||
|
||||
units real
|
||||
|
||||
boundary p p p
|
||||
|
||||
atom_style full
|
||||
|
||||
pair_style lj/class2 8
|
||||
|
||||
angle_style class2
|
||||
|
||||
bond_style class2
|
||||
|
||||
dihedral_style class2
|
||||
|
||||
improper_style class2
|
||||
|
||||
read_data tiny_epoxy.data
|
||||
|
||||
velocity all create 300.0 4928459 dist gaussian
|
||||
|
||||
molecule mol1 rxn1_stp1_pre.data_template
|
||||
molecule mol2 rxn1_stp1_post.data_template
|
||||
molecule mol3 rxn1_stp2_post.data_template
|
||||
molecule mol4 rxn2_stp1_pre.data_template
|
||||
molecule mol5 rxn2_stp1_post.data_template
|
||||
molecule mol6 rxn2_stp2_post.data_template
|
||||
|
||||
thermo 50
|
||||
|
||||
# dump 1 all xyz 1 test_vis.xyz
|
||||
|
||||
fix rxns all bond/react stabilization yes statted_grp .03 &
|
||||
react rxn1_stp1 all 1 0.0 5 mol1 mol2 rxn1_stp1.map &
|
||||
react rxn1_stp2 all 1 0.0 5 mol2 mol3 rxn1_stp2.map &
|
||||
react rxn2_stp1 all 1 0.0 5 mol4 mol5 rxn2_stp1.map &
|
||||
react rxn2_stp2 all 1 0.0 5 mol5 mol6 rxn2_stp2.map
|
||||
|
||||
|
||||
fix 1 statted_grp_REACT nvt temp 300 300 100
|
||||
|
||||
thermo_style custom step temp f_rxns[1] f_rxns[2] f_rxns[3] f_rxns[4]
|
||||
|
||||
run 2000
|
||||
|
||||
# write_restart restart_longrun
|
||||
# write_data restart_longrun.data nofix
|
||||
@ -0,0 +1,172 @@
|
||||
LAMMPS (20 Nov 2019)
|
||||
|
||||
WARNING-WARNING-WARNING-WARNING-WARNING
|
||||
This LAMMPS executable was compiled using C++98 compatibility.
|
||||
Please report the compiler info below at https://github.com/lammps/lammps/issues/1659
|
||||
GNU C++ 4.8.5
|
||||
WARNING-WARNING-WARNING-WARNING-WARNING
|
||||
|
||||
Reading data file ...
|
||||
orthogonal box = (10 -10 -15) to (30 20 10)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
118 atoms
|
||||
scanning bonds ...
|
||||
4 = max bonds/atom
|
||||
scanning angles ...
|
||||
6 = max angles/atom
|
||||
scanning dihedrals ...
|
||||
18 = max dihedrals/atom
|
||||
scanning impropers ...
|
||||
4 = max impropers/atom
|
||||
reading bonds ...
|
||||
123 bonds
|
||||
reading angles ...
|
||||
221 angles
|
||||
reading dihedrals ...
|
||||
302 dihedrals
|
||||
reading impropers ...
|
||||
115 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
|
||||
10 = max # of 1-3 neighbors
|
||||
19 = max # of 1-4 neighbors
|
||||
22 = max # of special neighbors
|
||||
special bonds CPU = 0.000286808 secs
|
||||
read_data CPU = 0.00724107 secs
|
||||
Read molecule mol1:
|
||||
31 atoms with max type 10
|
||||
30 bonds with max type 15
|
||||
53 angles with max type 29
|
||||
66 dihedrals with max type 39
|
||||
31 impropers with max type 5
|
||||
Read molecule mol2:
|
||||
31 atoms with max type 10
|
||||
30 bonds with max type 17
|
||||
55 angles with max type 36
|
||||
75 dihedrals with max type 51
|
||||
34 impropers with max type 5
|
||||
Read molecule mol3:
|
||||
31 atoms with max type 11
|
||||
30 bonds with max type 18
|
||||
53 angles with max type 37
|
||||
72 dihedrals with max type 53
|
||||
31 impropers with max type 5
|
||||
Read molecule mol4:
|
||||
42 atoms with max type 11
|
||||
41 bonds with max type 18
|
||||
73 angles with max type 41
|
||||
96 dihedrals with max type 54
|
||||
43 impropers with max type 5
|
||||
Read molecule mol5:
|
||||
42 atoms with max type 11
|
||||
41 bonds with max type 18
|
||||
75 angles with max type 37
|
||||
108 dihedrals with max type 53
|
||||
46 impropers with max type 5
|
||||
Read molecule mol6:
|
||||
42 atoms with max type 11
|
||||
41 bonds with max type 19
|
||||
73 angles with max type 50
|
||||
102 dihedrals with max type 66
|
||||
43 impropers with max type 22
|
||||
dynamic group bond_react_MASTER_group defined
|
||||
dynamic group statted_grp_REACT defined
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 10
|
||||
ghost atom cutoff = 10
|
||||
binsize = 5, bins = 4 6 5
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) pair lj/class2, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
(2) fix bond/react, occasional, copy from (1)
|
||||
attributes: half, newton on
|
||||
pair build: copy
|
||||
stencil: none
|
||||
bin: none
|
||||
Setting up Verlet run ...
|
||||
Unit style : real
|
||||
Current step : 0
|
||||
Time step : 1
|
||||
Per MPI rank memory allocation (min/avg/max) = 17.28 | 17.28 | 17.28 Mbytes
|
||||
Step Temp f_rxns[1] f_rxns[2] f_rxns[3] f_rxns[4]
|
||||
0 300 0 0 0 0
|
||||
50 391.52956 1 0 0 0
|
||||
100 475.26826 1 1 0 0
|
||||
150 605.26215 1 1 1 0
|
||||
200 545.7485 1 1 1 0
|
||||
250 461.64929 1 1 1 1
|
||||
300 452.10611 1 1 1 1
|
||||
350 379.61671 1 1 1 1
|
||||
400 331.22444 1 1 1 1
|
||||
450 275.63969 1 1 1 1
|
||||
500 316.63407 1 1 1 1
|
||||
550 261.39841 1 1 1 1
|
||||
600 313.70928 1 1 1 1
|
||||
650 294.24011 1 1 1 1
|
||||
700 285.81736 1 1 1 1
|
||||
750 340.37496 1 1 1 1
|
||||
800 333.2496 1 1 1 1
|
||||
850 307.40826 1 1 1 1
|
||||
900 304.68718 1 1 1 1
|
||||
950 328.0289 1 1 1 1
|
||||
1000 290.22808 1 1 1 1
|
||||
1050 272.78518 1 1 1 1
|
||||
1100 291.30546 1 1 1 1
|
||||
1150 320.33992 1 1 1 1
|
||||
1200 330.57057 1 1 1 1
|
||||
1250 300.51008 1 1 1 1
|
||||
1300 293.6209 1 1 1 1
|
||||
1350 324.36604 1 1 1 1
|
||||
1400 331.15408 1 1 1 1
|
||||
1450 302.23396 1 1 1 1
|
||||
1500 297.55562 1 1 1 1
|
||||
1550 277.3187 1 1 1 1
|
||||
1600 289.66052 1 1 1 1
|
||||
1650 281.85404 1 1 1 1
|
||||
1700 293.4999 1 1 1 1
|
||||
1750 306.21866 1 1 1 1
|
||||
1800 283.22696 1 1 1 1
|
||||
1850 295.10473 1 1 1 1
|
||||
1900 317.3843 1 1 1 1
|
||||
1950 305.14825 1 1 1 1
|
||||
2000 289.00911 1 1 1 1
|
||||
Loop time of 1.87066 on 1 procs for 2000 steps with 118 atoms
|
||||
|
||||
Performance: 92.374 ns/day, 0.260 hours/ns, 1069.141 timesteps/s
|
||||
98.4% CPU use with 1 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.12832 | 0.12832 | 0.12832 | 0.0 | 6.86
|
||||
Bond | 0.77458 | 0.77458 | 0.77458 | 0.0 | 41.41
|
||||
Neigh | 0.45068 | 0.45068 | 0.45068 | 0.0 | 24.09
|
||||
Comm | 0.029785 | 0.029785 | 0.029785 | 0.0 | 1.59
|
||||
Output | 0.31635 | 0.31635 | 0.31635 | 0.0 | 16.91
|
||||
Modify | 0.16657 | 0.16657 | 0.16657 | 0.0 | 8.90
|
||||
Other | | 0.004368 | | | 0.23
|
||||
|
||||
Nlocal: 118 ave 118 max 118 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 332 ave 332 max 332 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 4338 ave 4338 max 4338 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 4338
|
||||
Ave neighs/atom = 36.7627
|
||||
Ave special neighs/atom = 10.5763
|
||||
Neighbor list builds = 2000
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:02
|
||||
@ -0,0 +1,172 @@
|
||||
LAMMPS (20 Nov 2019)
|
||||
|
||||
WARNING-WARNING-WARNING-WARNING-WARNING
|
||||
This LAMMPS executable was compiled using C++98 compatibility.
|
||||
Please report the compiler info below at https://github.com/lammps/lammps/issues/1659
|
||||
GNU C++ 4.8.5
|
||||
WARNING-WARNING-WARNING-WARNING-WARNING
|
||||
|
||||
Reading data file ...
|
||||
orthogonal box = (10 -10 -15) to (30 20 10)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
reading atoms ...
|
||||
118 atoms
|
||||
scanning bonds ...
|
||||
4 = max bonds/atom
|
||||
scanning angles ...
|
||||
6 = max angles/atom
|
||||
scanning dihedrals ...
|
||||
18 = max dihedrals/atom
|
||||
scanning impropers ...
|
||||
4 = max impropers/atom
|
||||
reading bonds ...
|
||||
123 bonds
|
||||
reading angles ...
|
||||
221 angles
|
||||
reading dihedrals ...
|
||||
302 dihedrals
|
||||
reading impropers ...
|
||||
115 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
|
||||
10 = max # of 1-3 neighbors
|
||||
19 = max # of 1-4 neighbors
|
||||
22 = max # of special neighbors
|
||||
special bonds CPU = 0.000239905 secs
|
||||
read_data CPU = 0.0080783 secs
|
||||
Read molecule mol1:
|
||||
31 atoms with max type 10
|
||||
30 bonds with max type 15
|
||||
53 angles with max type 29
|
||||
66 dihedrals with max type 39
|
||||
31 impropers with max type 5
|
||||
Read molecule mol2:
|
||||
31 atoms with max type 10
|
||||
30 bonds with max type 17
|
||||
55 angles with max type 36
|
||||
75 dihedrals with max type 51
|
||||
34 impropers with max type 5
|
||||
Read molecule mol3:
|
||||
31 atoms with max type 11
|
||||
30 bonds with max type 18
|
||||
53 angles with max type 37
|
||||
72 dihedrals with max type 53
|
||||
31 impropers with max type 5
|
||||
Read molecule mol4:
|
||||
42 atoms with max type 11
|
||||
41 bonds with max type 18
|
||||
73 angles with max type 41
|
||||
96 dihedrals with max type 54
|
||||
43 impropers with max type 5
|
||||
Read molecule mol5:
|
||||
42 atoms with max type 11
|
||||
41 bonds with max type 18
|
||||
75 angles with max type 37
|
||||
108 dihedrals with max type 53
|
||||
46 impropers with max type 5
|
||||
Read molecule mol6:
|
||||
42 atoms with max type 11
|
||||
41 bonds with max type 19
|
||||
73 angles with max type 50
|
||||
102 dihedrals with max type 66
|
||||
43 impropers with max type 22
|
||||
dynamic group bond_react_MASTER_group defined
|
||||
dynamic group statted_grp_REACT defined
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 10
|
||||
ghost atom cutoff = 10
|
||||
binsize = 5, bins = 4 6 5
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) pair lj/class2, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
(2) fix bond/react, occasional, copy from (1)
|
||||
attributes: half, newton on
|
||||
pair build: copy
|
||||
stencil: none
|
||||
bin: none
|
||||
Setting up Verlet run ...
|
||||
Unit style : real
|
||||
Current step : 0
|
||||
Time step : 1
|
||||
Per MPI rank memory allocation (min/avg/max) = 16.26 | 16.45 | 16.63 Mbytes
|
||||
Step Temp f_rxns[1] f_rxns[2] f_rxns[3] f_rxns[4]
|
||||
0 300 0 0 0 0
|
||||
50 391.52956 1 0 0 0
|
||||
100 475.26826 1 1 0 0
|
||||
150 605.26215 1 1 1 0
|
||||
200 545.7485 1 1 1 0
|
||||
250 461.64929 1 1 1 1
|
||||
300 452.10611 1 1 1 1
|
||||
350 379.61671 1 1 1 1
|
||||
400 331.22444 1 1 1 1
|
||||
450 275.63969 1 1 1 1
|
||||
500 316.63407 1 1 1 1
|
||||
550 261.39841 1 1 1 1
|
||||
600 313.70928 1 1 1 1
|
||||
650 294.24011 1 1 1 1
|
||||
700 285.81736 1 1 1 1
|
||||
750 340.37496 1 1 1 1
|
||||
800 333.2496 1 1 1 1
|
||||
850 307.40826 1 1 1 1
|
||||
900 304.68718 1 1 1 1
|
||||
950 328.0289 1 1 1 1
|
||||
1000 290.22808 1 1 1 1
|
||||
1050 272.78518 1 1 1 1
|
||||
1100 291.30546 1 1 1 1
|
||||
1150 320.33992 1 1 1 1
|
||||
1200 330.57057 1 1 1 1
|
||||
1250 300.51008 1 1 1 1
|
||||
1300 293.6209 1 1 1 1
|
||||
1350 324.36604 1 1 1 1
|
||||
1400 331.15408 1 1 1 1
|
||||
1450 302.23396 1 1 1 1
|
||||
1500 297.55562 1 1 1 1
|
||||
1550 277.3187 1 1 1 1
|
||||
1600 289.66052 1 1 1 1
|
||||
1650 281.85404 1 1 1 1
|
||||
1700 293.4999 1 1 1 1
|
||||
1750 306.21866 1 1 1 1
|
||||
1800 283.22695 1 1 1 1
|
||||
1850 295.10472 1 1 1 1
|
||||
1900 317.38431 1 1 1 1
|
||||
1950 305.14824 1 1 1 1
|
||||
2000 289.00909 1 1 1 1
|
||||
Loop time of 0.689125 on 4 procs for 2000 steps with 118 atoms
|
||||
|
||||
Performance: 250.753 ns/day, 0.096 hours/ns, 2902.231 timesteps/s
|
||||
100.0% CPU use with 4 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.02002 | 0.030617 | 0.053133 | 7.7 | 4.44
|
||||
Bond | 0.10356 | 0.18908 | 0.22691 | 11.6 | 27.44
|
||||
Neigh | 0.16721 | 0.17002 | 0.17247 | 0.5 | 24.67
|
||||
Comm | 0.057286 | 0.12002 | 0.21612 | 17.0 | 17.42
|
||||
Output | 0.00028991 | 0.00034121 | 0.00049323 | 0.0 | 0.05
|
||||
Modify | 0.17626 | 0.17675 | 0.17721 | 0.1 | 25.65
|
||||
Other | | 0.002287 | | | 0.33
|
||||
|
||||
Nlocal: 29.5 ave 41 max 18 min
|
||||
Histogram: 1 0 0 1 0 0 1 0 0 1
|
||||
Nghost: 306 ave 349 max 269 min
|
||||
Histogram: 1 1 0 0 0 0 1 0 0 1
|
||||
Neighs: 1084.5 ave 2154 max 397 min
|
||||
Histogram: 1 0 1 1 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 4338
|
||||
Ave neighs/atom = 36.7627
|
||||
Ave special neighs/atom = 10.5763
|
||||
Neighbor list builds = 2000
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:01
|
||||
47
examples/USER/reaction/tiny_epoxy/rxn1_stp1.map
Normal file
47
examples/USER/reaction/tiny_epoxy/rxn1_stp1.map
Normal file
@ -0,0 +1,47 @@
|
||||
this is a map file
|
||||
|
||||
1 edgeIDs
|
||||
31 equivalences
|
||||
|
||||
BondingIDs
|
||||
|
||||
15
|
||||
1
|
||||
|
||||
EdgeIDs
|
||||
|
||||
5
|
||||
|
||||
Equivalences
|
||||
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
5 5
|
||||
6 6
|
||||
7 7
|
||||
8 8
|
||||
9 9
|
||||
10 10
|
||||
11 11
|
||||
12 12
|
||||
13 13
|
||||
14 14
|
||||
15 15
|
||||
16 16
|
||||
17 17
|
||||
18 18
|
||||
19 19
|
||||
20 20
|
||||
21 21
|
||||
22 22
|
||||
23 23
|
||||
24 24
|
||||
25 25
|
||||
26 26
|
||||
27 27
|
||||
28 28
|
||||
29 29
|
||||
30 30
|
||||
31 31
|
||||
315
examples/USER/reaction/tiny_epoxy/rxn1_stp1_post.data_template
Normal file
315
examples/USER/reaction/tiny_epoxy/rxn1_stp1_post.data_template
Normal file
@ -0,0 +1,315 @@
|
||||
rxn1_stp1_post
|
||||
|
||||
31 atoms
|
||||
30 bonds
|
||||
55 angles
|
||||
75 dihedrals
|
||||
34 impropers
|
||||
|
||||
Types
|
||||
|
||||
1 1
|
||||
2 6
|
||||
3 1
|
||||
4 7
|
||||
5 4
|
||||
6 7
|
||||
7 8
|
||||
8 8
|
||||
9 8
|
||||
10 8
|
||||
11 8
|
||||
12 9
|
||||
13 1
|
||||
14 1
|
||||
15 9
|
||||
16 9
|
||||
17 1
|
||||
18 1
|
||||
19 10
|
||||
20 8
|
||||
21 8
|
||||
22 8
|
||||
23 8
|
||||
24 10
|
||||
25 10
|
||||
26 10
|
||||
27 10
|
||||
28 8
|
||||
29 8
|
||||
30 8
|
||||
31 8
|
||||
|
||||
Charges
|
||||
|
||||
1 0.000000
|
||||
2 0.000000
|
||||
3 0.000000
|
||||
4 0.100000
|
||||
5 0.000000
|
||||
6 0.000000
|
||||
7 0.000000
|
||||
8 0.000000
|
||||
9 0.000000
|
||||
10 0.000000
|
||||
11 0.000000
|
||||
12 0.000000
|
||||
13 0.000000
|
||||
14 0.000000
|
||||
15 -0.025000
|
||||
16 -0.025000
|
||||
17 0.000000
|
||||
18 0.000000
|
||||
19 0.000000
|
||||
20 0.000000
|
||||
21 0.000000
|
||||
22 0.000000
|
||||
23 0.000000
|
||||
24 0.000000
|
||||
25 0.000000
|
||||
26 0.000000
|
||||
27 0.000000
|
||||
28 0.000000
|
||||
29 0.000000
|
||||
30 0.000000
|
||||
31 0.000000
|
||||
|
||||
Coords
|
||||
|
||||
1 22.582573 10.988183 -5.014054
|
||||
2 23.904713 10.750493 -4.202215
|
||||
3 23.989172 9.487042 -3.323374
|
||||
4 24.067001 11.723383 -4.037435
|
||||
5 24.627851 7.325302 -3.319944
|
||||
6 24.554632 8.418972 -4.080365
|
||||
7 22.667763 11.445703 -5.999605
|
||||
8 21.787441 10.247643 -4.916974
|
||||
9 24.964962 10.712683 -4.449374
|
||||
10 24.616703 9.689913 -2.456034
|
||||
11 22.989313 9.208153 -2.991455
|
||||
12 18.808882 13.758042 -3.958724
|
||||
13 19.293213 12.549683 -3.196594
|
||||
14 20.810543 12.417832 -3.417504
|
||||
15 21.090193 12.251203 -4.891234
|
||||
16 17.657042 16.437199 -3.985224
|
||||
17 19.126713 16.210239 -4.245154
|
||||
18 19.589151 14.957593 -3.479565
|
||||
19 19.000433 13.609432 -5.041715
|
||||
20 18.761223 11.614392 -3.573184
|
||||
21 19.082903 12.688992 -2.085145
|
||||
22 21.202852 11.511562 -2.848624
|
||||
23 21.328482 13.360252 -3.038924
|
||||
24 19.949852 12.199403 -5.680355
|
||||
25 21.477343 13.247442 -5.445915
|
||||
26 17.080341 15.555528 -4.334374
|
||||
27 17.319832 17.341927 -4.532204
|
||||
28 19.720472 17.115158 -3.887564
|
||||
29 19.298622 16.058659 -5.361685
|
||||
30 19.410772 15.105113 -2.363724
|
||||
31 20.700163 14.782252 -3.666344
|
||||
|
||||
Bonds
|
||||
|
||||
1 1 1 8
|
||||
2 16 1 2
|
||||
3 1 1 7
|
||||
4 13 1 15
|
||||
5 16 3 2
|
||||
6 12 2 9
|
||||
7 17 2 4
|
||||
8 3 3 6
|
||||
9 1 3 10
|
||||
10 1 3 11
|
||||
11 8 6 5
|
||||
12 13 13 12
|
||||
13 13 18 12
|
||||
14 14 12 19
|
||||
15 15 13 14
|
||||
16 1 13 20
|
||||
17 1 13 21
|
||||
18 13 14 15
|
||||
19 1 14 22
|
||||
20 1 14 23
|
||||
21 14 15 24
|
||||
22 14 15 25
|
||||
23 13 17 16
|
||||
24 14 16 26
|
||||
25 14 16 27
|
||||
26 15 17 18
|
||||
27 1 17 28
|
||||
28 1 17 29
|
||||
29 1 18 30
|
||||
30 1 18 31
|
||||
|
||||
Angles
|
||||
|
||||
1 30 2 1 8
|
||||
2 2 8 1 7
|
||||
3 26 8 1 15
|
||||
4 30 2 1 7
|
||||
5 31 2 1 15
|
||||
6 26 7 1 15
|
||||
7 32 1 2 3
|
||||
8 33 1 2 9
|
||||
9 34 1 2 4
|
||||
10 33 3 2 9
|
||||
11 34 3 2 4
|
||||
12 35 4 2 9
|
||||
13 36 2 3 6
|
||||
14 30 2 3 10
|
||||
15 30 2 3 11
|
||||
16 3 6 3 10
|
||||
17 3 6 3 11
|
||||
18 2 10 3 11
|
||||
19 22 3 6 5
|
||||
20 23 13 12 18
|
||||
21 24 13 12 19
|
||||
22 24 18 12 19
|
||||
23 25 14 13 12
|
||||
24 26 20 13 12
|
||||
25 26 21 13 12
|
||||
26 27 14 13 20
|
||||
27 27 14 13 21
|
||||
28 2 20 13 21
|
||||
29 25 13 14 15
|
||||
30 27 13 14 22
|
||||
31 27 13 14 23
|
||||
32 26 22 14 15
|
||||
33 26 23 14 15
|
||||
34 2 22 14 23
|
||||
35 23 1 15 14
|
||||
36 24 1 15 24
|
||||
37 24 1 15 25
|
||||
38 24 14 15 24
|
||||
39 24 14 15 25
|
||||
40 28 24 15 25
|
||||
41 24 17 16 26
|
||||
42 24 17 16 27
|
||||
43 28 26 16 27
|
||||
44 25 18 17 16
|
||||
45 26 28 17 16
|
||||
46 26 29 17 16
|
||||
47 27 18 17 28
|
||||
48 27 18 17 29
|
||||
49 2 28 17 29
|
||||
50 25 17 18 12
|
||||
51 26 30 18 12
|
||||
52 26 31 18 12
|
||||
53 27 17 18 30
|
||||
54 27 17 18 31
|
||||
55 2 30 18 31
|
||||
|
||||
Dihedrals
|
||||
|
||||
1 40 8 1 2 3
|
||||
2 41 8 1 2 9
|
||||
3 42 8 1 2 4
|
||||
4 40 7 1 2 3
|
||||
5 41 7 1 2 9
|
||||
6 42 7 1 2 4
|
||||
7 43 15 1 2 3
|
||||
8 44 15 1 2 9
|
||||
9 45 15 1 2 4
|
||||
10 28 8 1 15 14
|
||||
11 30 8 1 15 24
|
||||
12 30 8 1 15 25
|
||||
13 46 2 1 15 14
|
||||
14 47 2 1 15 24
|
||||
15 47 2 1 15 25
|
||||
16 28 7 1 15 14
|
||||
17 30 7 1 15 24
|
||||
18 30 7 1 15 25
|
||||
19 48 6 3 2 1
|
||||
20 40 10 3 2 1
|
||||
21 40 11 3 2 1
|
||||
22 49 6 3 2 9
|
||||
23 41 10 3 2 9
|
||||
24 41 11 3 2 9
|
||||
25 50 6 3 2 4
|
||||
26 42 10 3 2 4
|
||||
27 42 11 3 2 4
|
||||
28 51 2 3 6 5
|
||||
29 7 10 3 6 5
|
||||
30 7 11 3 6 5
|
||||
31 27 14 13 12 18
|
||||
32 28 20 13 12 18
|
||||
33 28 21 13 12 18
|
||||
34 29 14 13 12 19
|
||||
35 30 20 13 12 19
|
||||
36 30 21 13 12 19
|
||||
37 27 17 18 12 13
|
||||
38 28 30 18 12 13
|
||||
39 28 31 18 12 13
|
||||
40 29 17 18 12 19
|
||||
41 30 30 18 12 19
|
||||
42 30 31 18 12 19
|
||||
43 31 12 13 14 15
|
||||
44 32 22 14 13 12
|
||||
45 32 23 14 13 12
|
||||
46 32 20 13 14 15
|
||||
47 33 20 13 14 22
|
||||
48 33 20 13 14 23
|
||||
49 32 21 13 14 15
|
||||
50 33 21 13 14 22
|
||||
51 33 21 13 14 23
|
||||
52 27 13 14 15 1
|
||||
53 29 13 14 15 24
|
||||
54 29 13 14 15 25
|
||||
55 28 22 14 15 1
|
||||
56 30 22 14 15 24
|
||||
57 30 22 14 15 25
|
||||
58 28 23 14 15 1
|
||||
59 30 23 14 15 24
|
||||
60 30 23 14 15 25
|
||||
61 29 18 17 16 26
|
||||
62 30 28 17 16 26
|
||||
63 30 29 17 16 26
|
||||
64 29 18 17 16 27
|
||||
65 30 28 17 16 27
|
||||
66 30 29 17 16 27
|
||||
67 31 16 17 18 12
|
||||
68 32 30 18 17 16
|
||||
69 32 31 18 17 16
|
||||
70 32 28 17 18 12
|
||||
71 33 28 17 18 30
|
||||
72 33 28 17 18 31
|
||||
73 32 29 17 18 12
|
||||
74 33 29 17 18 30
|
||||
75 33 29 17 18 31
|
||||
|
||||
Impropers
|
||||
|
||||
1 4 13 12 18 19
|
||||
2 5 17 16 26 27
|
||||
3 1 2 1 8 7
|
||||
4 1 2 1 8 15
|
||||
5 1 8 1 7 15
|
||||
6 1 2 1 7 15
|
||||
7 1 1 2 3 9
|
||||
8 1 1 2 3 4
|
||||
9 1 1 2 4 9
|
||||
10 1 3 2 4 9
|
||||
11 1 2 3 6 10
|
||||
12 1 2 3 6 11
|
||||
13 1 2 3 10 11
|
||||
14 1 6 3 10 11
|
||||
15 1 14 13 20 12
|
||||
16 1 14 13 21 12
|
||||
17 1 20 13 21 12
|
||||
18 1 14 13 20 21
|
||||
19 1 13 14 22 15
|
||||
20 1 13 14 23 15
|
||||
21 1 13 14 22 23
|
||||
22 1 22 14 23 15
|
||||
23 1 1 15 14 24
|
||||
24 1 1 15 14 25
|
||||
25 1 1 15 24 25
|
||||
26 1 14 15 24 25
|
||||
27 1 18 17 28 16
|
||||
28 1 18 17 29 16
|
||||
29 1 28 17 29 16
|
||||
30 1 18 17 28 29
|
||||
31 1 17 18 30 12
|
||||
32 1 17 18 31 12
|
||||
33 1 30 18 31 12
|
||||
34 1 17 18 30 31
|
||||
301
examples/USER/reaction/tiny_epoxy/rxn1_stp1_pre.data_template
Normal file
301
examples/USER/reaction/tiny_epoxy/rxn1_stp1_pre.data_template
Normal file
@ -0,0 +1,301 @@
|
||||
rxn1_stp1_pre
|
||||
|
||||
31 atoms
|
||||
30 bonds
|
||||
53 angles
|
||||
66 dihedrals
|
||||
31 impropers
|
||||
|
||||
Types
|
||||
|
||||
1 2
|
||||
2 2
|
||||
3 1
|
||||
4 3
|
||||
5 4
|
||||
6 7
|
||||
7 8
|
||||
8 8
|
||||
9 8
|
||||
10 8
|
||||
11 8
|
||||
12 9
|
||||
13 1
|
||||
14 1
|
||||
15 9
|
||||
16 9
|
||||
17 1
|
||||
18 1
|
||||
19 10
|
||||
20 8
|
||||
21 8
|
||||
22 8
|
||||
23 8
|
||||
24 10
|
||||
25 10
|
||||
26 10
|
||||
27 10
|
||||
28 8
|
||||
29 8
|
||||
30 8
|
||||
31 8
|
||||
|
||||
Charges
|
||||
|
||||
1 0.000000
|
||||
2 0.000000
|
||||
3 0.000000
|
||||
4 0.100000
|
||||
5 0.000000
|
||||
6 0.000000
|
||||
7 0.000000
|
||||
8 0.000000
|
||||
9 0.000000
|
||||
10 0.000000
|
||||
11 0.000000
|
||||
12 0.000000
|
||||
13 0.000000
|
||||
14 0.000000
|
||||
15 -0.025000
|
||||
16 -0.025000
|
||||
17 0.000000
|
||||
18 0.000000
|
||||
19 0.000000
|
||||
20 0.000000
|
||||
21 0.000000
|
||||
22 0.000000
|
||||
23 0.000000
|
||||
24 0.000000
|
||||
25 0.000000
|
||||
26 0.000000
|
||||
27 0.000000
|
||||
28 0.000000
|
||||
29 0.000000
|
||||
30 0.000000
|
||||
31 0.000000
|
||||
|
||||
Coords
|
||||
|
||||
1 19.846882 9.569666 -1.229588
|
||||
2 21.168802 9.331466 -0.418038
|
||||
3 21.253012 8.067936 0.460722
|
||||
4 20.170443 10.460656 0.020692
|
||||
5 21.891691 5.906196 0.464152
|
||||
6 21.818472 6.999866 -0.296268
|
||||
7 19.932211 10.027435 -2.215008
|
||||
8 19.051722 8.829116 -1.132808
|
||||
9 22.229073 9.293536 -0.665088
|
||||
10 21.880442 8.270676 1.328162
|
||||
11 20.253073 7.789126 0.792482
|
||||
12 16.072590 12.338870 -0.174330
|
||||
13 16.557261 11.130320 0.587290
|
||||
14 18.074570 10.998810 0.366080
|
||||
15 18.353970 10.832370 -1.107720
|
||||
16 14.920720 15.017820 -0.200530
|
||||
17 16.390430 14.791100 -0.460440
|
||||
18 16.852980 13.538320 0.304870
|
||||
19 16.263750 12.190560 -1.257430
|
||||
20 16.025360 10.195070 0.210470
|
||||
21 16.347120 11.269210 1.698830
|
||||
22 18.467180 10.092570 0.934800
|
||||
23 18.592390 11.941300 0.744640
|
||||
24 17.843861 9.919930 -1.479780
|
||||
25 19.448191 10.736480 -1.267520
|
||||
26 14.344120 14.136250 -0.550130
|
||||
27 14.583470 15.922760 -0.747140
|
||||
28 16.984060 15.696010 -0.102600
|
||||
29 16.562420 14.639820 -1.577000
|
||||
30 16.674820 13.685670 1.420760
|
||||
31 17.963949 13.362980 0.117850
|
||||
|
||||
Bonds
|
||||
|
||||
1 6 1 8
|
||||
2 4 1 4
|
||||
3 5 1 2
|
||||
4 6 1 7
|
||||
5 4 2 4
|
||||
6 2 2 3
|
||||
7 6 2 9
|
||||
8 3 3 6
|
||||
9 1 3 10
|
||||
10 1 3 11
|
||||
11 8 5 6
|
||||
12 13 13 12
|
||||
13 13 18 12
|
||||
14 14 12 19
|
||||
15 15 13 14
|
||||
16 1 13 20
|
||||
17 1 13 21
|
||||
18 13 14 15
|
||||
19 1 14 22
|
||||
20 1 14 23
|
||||
21 14 15 24
|
||||
22 14 15 25
|
||||
23 13 17 16
|
||||
24 14 16 26
|
||||
25 14 16 27
|
||||
26 15 17 18
|
||||
27 1 17 28
|
||||
28 1 17 29
|
||||
29 1 18 30
|
||||
30 1 18 31
|
||||
|
||||
Angles
|
||||
|
||||
1 9 4 1 8
|
||||
2 10 2 1 8
|
||||
3 11 8 1 7
|
||||
4 8 2 1 4
|
||||
5 9 4 1 7
|
||||
6 10 2 1 7
|
||||
7 8 1 2 4
|
||||
8 29 1 2 3
|
||||
9 10 1 2 9
|
||||
10 5 3 2 4
|
||||
11 9 4 2 9
|
||||
12 7 3 2 9
|
||||
13 4 2 3 6
|
||||
14 1 2 3 10
|
||||
15 1 2 3 11
|
||||
16 3 6 3 10
|
||||
17 3 6 3 11
|
||||
18 2 10 3 11
|
||||
19 12 1 4 2
|
||||
20 22 3 6 5
|
||||
21 23 13 12 18
|
||||
22 24 13 12 19
|
||||
23 24 18 12 19
|
||||
24 25 14 13 12
|
||||
25 26 20 13 12
|
||||
26 26 21 13 12
|
||||
27 27 14 13 20
|
||||
28 27 14 13 21
|
||||
29 2 20 13 21
|
||||
30 25 13 14 15
|
||||
31 27 13 14 22
|
||||
32 27 13 14 23
|
||||
33 26 22 14 15
|
||||
34 26 23 14 15
|
||||
35 2 22 14 23
|
||||
36 24 14 15 24
|
||||
37 24 14 15 25
|
||||
38 28 24 15 25
|
||||
39 24 17 16 26
|
||||
40 24 17 16 27
|
||||
41 28 26 16 27
|
||||
42 25 18 17 16
|
||||
43 26 28 17 16
|
||||
44 26 29 17 16
|
||||
45 27 18 17 28
|
||||
46 27 18 17 29
|
||||
47 2 28 17 29
|
||||
48 25 17 18 12
|
||||
49 26 30 18 12
|
||||
50 26 31 18 12
|
||||
51 27 17 18 30
|
||||
52 27 17 18 31
|
||||
53 2 30 18 31
|
||||
|
||||
Dihedrals
|
||||
|
||||
1 10 8 1 4 2
|
||||
2 10 7 1 4 2
|
||||
3 13 4 2 1 8
|
||||
4 12 3 2 1 8
|
||||
5 14 8 1 2 9
|
||||
6 11 3 2 1 4
|
||||
7 13 4 1 2 9
|
||||
8 13 4 2 1 7
|
||||
9 12 3 2 1 7
|
||||
10 14 7 1 2 9
|
||||
11 9 3 2 4 1
|
||||
12 10 9 2 4 1
|
||||
13 34 1 2 3 6
|
||||
14 35 1 2 3 10
|
||||
15 35 1 2 3 11
|
||||
16 36 4 2 3 6
|
||||
17 37 4 2 3 10
|
||||
18 37 4 2 3 11
|
||||
19 38 9 2 3 6
|
||||
20 39 9 2 3 10
|
||||
21 39 9 2 3 11
|
||||
22 8 2 3 6 5
|
||||
23 7 10 3 6 5
|
||||
24 7 11 3 6 5
|
||||
25 27 14 13 12 18
|
||||
26 28 20 13 12 18
|
||||
27 28 21 13 12 18
|
||||
28 29 14 13 12 19
|
||||
29 30 20 13 12 19
|
||||
30 30 21 13 12 19
|
||||
31 27 17 18 12 13
|
||||
32 28 30 18 12 13
|
||||
33 28 31 18 12 13
|
||||
34 29 17 18 12 19
|
||||
35 30 30 18 12 19
|
||||
36 30 31 18 12 19
|
||||
37 31 12 13 14 15
|
||||
38 32 22 14 13 12
|
||||
39 32 23 14 13 12
|
||||
40 32 20 13 14 15
|
||||
41 33 20 13 14 22
|
||||
42 33 20 13 14 23
|
||||
43 32 21 13 14 15
|
||||
44 33 21 13 14 22
|
||||
45 33 21 13 14 23
|
||||
46 29 13 14 15 24
|
||||
47 29 13 14 15 25
|
||||
48 30 22 14 15 24
|
||||
49 30 22 14 15 25
|
||||
50 30 23 14 15 24
|
||||
51 30 23 14 15 25
|
||||
52 29 18 17 16 26
|
||||
53 30 28 17 16 26
|
||||
54 30 29 17 16 26
|
||||
55 29 18 17 16 27
|
||||
56 30 28 17 16 27
|
||||
57 30 29 17 16 27
|
||||
58 31 16 17 18 12
|
||||
59 32 30 18 17 16
|
||||
60 32 31 18 17 16
|
||||
61 32 28 17 18 12
|
||||
62 33 28 17 18 30
|
||||
63 33 28 17 18 31
|
||||
64 32 29 17 18 12
|
||||
65 33 29 17 18 30
|
||||
66 33 29 17 18 31
|
||||
|
||||
Impropers
|
||||
|
||||
1 4 13 12 18 19
|
||||
2 5 14 15 24 25
|
||||
3 5 17 16 26 27
|
||||
4 1 2 1 4 8
|
||||
5 1 4 1 8 7
|
||||
6 1 2 1 8 7
|
||||
7 1 2 1 4 7
|
||||
8 1 1 2 3 4
|
||||
9 1 1 2 4 9
|
||||
10 1 1 2 3 9
|
||||
11 1 3 2 4 9
|
||||
12 1 2 3 6 10
|
||||
13 1 2 3 6 11
|
||||
14 1 2 3 10 11
|
||||
15 1 6 3 10 11
|
||||
16 1 14 13 20 12
|
||||
17 1 14 13 21 12
|
||||
18 1 20 13 21 12
|
||||
19 1 14 13 20 21
|
||||
20 1 13 14 22 15
|
||||
21 1 13 14 23 15
|
||||
22 1 13 14 22 23
|
||||
23 1 22 14 23 15
|
||||
24 1 18 17 28 16
|
||||
25 1 18 17 29 16
|
||||
26 1 28 17 29 16
|
||||
27 1 18 17 28 29
|
||||
28 1 17 18 30 12
|
||||
29 1 17 18 31 12
|
||||
30 1 30 18 31 12
|
||||
31 1 17 18 30 31
|
||||
47
examples/USER/reaction/tiny_epoxy/rxn1_stp2.map
Normal file
47
examples/USER/reaction/tiny_epoxy/rxn1_stp2.map
Normal file
@ -0,0 +1,47 @@
|
||||
this is a map file
|
||||
|
||||
1 edgeIDs
|
||||
31 equivalences
|
||||
|
||||
BondingIDs
|
||||
|
||||
4
|
||||
25
|
||||
|
||||
EdgeIDs
|
||||
|
||||
5
|
||||
|
||||
Equivalences
|
||||
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
5 5
|
||||
6 6
|
||||
7 7
|
||||
8 8
|
||||
9 9
|
||||
10 10
|
||||
11 11
|
||||
12 12
|
||||
13 13
|
||||
14 14
|
||||
15 15
|
||||
16 16
|
||||
17 17
|
||||
18 18
|
||||
19 19
|
||||
20 20
|
||||
21 21
|
||||
22 22
|
||||
23 23
|
||||
24 24
|
||||
25 25
|
||||
26 26
|
||||
27 27
|
||||
28 28
|
||||
29 29
|
||||
30 30
|
||||
31 31
|
||||
307
examples/USER/reaction/tiny_epoxy/rxn1_stp2_post.data_template
Normal file
307
examples/USER/reaction/tiny_epoxy/rxn1_stp2_post.data_template
Normal file
@ -0,0 +1,307 @@
|
||||
rxn1_stp2_post
|
||||
|
||||
31 atoms
|
||||
30 bonds
|
||||
53 angles
|
||||
72 dihedrals
|
||||
31 impropers
|
||||
|
||||
Types
|
||||
|
||||
1 1
|
||||
2 6
|
||||
3 1
|
||||
4 7
|
||||
5 4
|
||||
6 7
|
||||
7 8
|
||||
8 8
|
||||
9 8
|
||||
10 8
|
||||
11 8
|
||||
12 9
|
||||
13 1
|
||||
14 1
|
||||
15 9
|
||||
16 9
|
||||
17 1
|
||||
18 1
|
||||
19 10
|
||||
20 8
|
||||
21 8
|
||||
22 8
|
||||
23 8
|
||||
24 10
|
||||
25 11
|
||||
26 10
|
||||
27 10
|
||||
28 8
|
||||
29 8
|
||||
30 8
|
||||
31 8
|
||||
|
||||
Charges
|
||||
|
||||
1 0.000000
|
||||
2 0.000000
|
||||
3 0.000000
|
||||
4 0.100000
|
||||
5 0.000000
|
||||
6 0.000000
|
||||
7 0.000000
|
||||
8 0.000000
|
||||
9 0.000000
|
||||
10 0.000000
|
||||
11 0.000000
|
||||
12 0.000000
|
||||
13 0.000000
|
||||
14 0.000000
|
||||
15 -0.025000
|
||||
16 -0.025000
|
||||
17 0.000000
|
||||
18 0.000000
|
||||
19 0.000000
|
||||
20 0.000000
|
||||
21 0.000000
|
||||
22 0.000000
|
||||
23 0.000000
|
||||
24 0.000000
|
||||
25 0.000000
|
||||
26 0.000000
|
||||
27 0.000000
|
||||
28 0.000000
|
||||
29 0.000000
|
||||
30 0.000000
|
||||
31 0.000000
|
||||
|
||||
Coords
|
||||
|
||||
1 19.846411 9.569080 -1.229960
|
||||
2 21.168550 9.331390 -0.418120
|
||||
3 21.253010 8.067940 0.460720
|
||||
4 21.330839 10.304280 -0.253340
|
||||
5 21.891689 5.906200 0.464150
|
||||
6 21.818470 6.999870 -0.296270
|
||||
7 19.931601 10.026600 -2.215510
|
||||
8 19.051279 8.828540 -1.132880
|
||||
9 22.228800 9.293580 -0.665280
|
||||
10 21.880541 8.270810 1.328060
|
||||
11 20.253151 7.789050 0.792640
|
||||
12 16.072720 12.338940 -0.174630
|
||||
13 16.557051 11.130580 0.587500
|
||||
14 18.074381 10.998730 0.366590
|
||||
15 18.354031 10.832100 -1.107140
|
||||
16 14.920880 15.018100 -0.201130
|
||||
17 16.390551 14.791140 -0.461060
|
||||
18 16.852989 13.538490 0.304530
|
||||
19 16.264271 12.190330 -1.257620
|
||||
20 16.025061 10.195290 0.210910
|
||||
21 16.346741 11.269890 1.698950
|
||||
22 18.466690 10.092460 0.935470
|
||||
23 18.592319 11.941150 0.745170
|
||||
24 17.213690 10.780300 -1.896260
|
||||
25 20.881861 11.302060 -0.773030
|
||||
26 14.344180 14.136430 -0.550280
|
||||
27 14.583670 15.922830 -0.748110
|
||||
28 16.984310 15.696060 -0.103470
|
||||
29 16.562460 14.639560 -1.577590
|
||||
30 16.674610 13.686010 1.420370
|
||||
31 17.964001 13.363150 0.117750
|
||||
|
||||
Bonds
|
||||
|
||||
1 1 1 8
|
||||
2 16 1 2
|
||||
3 1 1 7
|
||||
4 13 1 15
|
||||
5 16 3 2
|
||||
6 12 2 9
|
||||
7 17 2 4
|
||||
8 3 3 6
|
||||
9 1 3 10
|
||||
10 1 3 11
|
||||
11 18 4 25
|
||||
12 8 6 5
|
||||
13 13 13 12
|
||||
14 13 18 12
|
||||
15 14 12 19
|
||||
16 15 13 14
|
||||
17 1 13 20
|
||||
18 1 13 21
|
||||
19 13 14 15
|
||||
20 1 14 22
|
||||
21 1 14 23
|
||||
22 14 15 24
|
||||
23 13 17 16
|
||||
24 14 16 26
|
||||
25 14 16 27
|
||||
26 15 17 18
|
||||
27 1 17 28
|
||||
28 1 17 29
|
||||
29 1 18 30
|
||||
30 1 18 31
|
||||
|
||||
Angles
|
||||
|
||||
1 30 2 1 8
|
||||
2 2 8 1 7
|
||||
3 26 8 1 15
|
||||
4 30 2 1 7
|
||||
5 31 2 1 15
|
||||
6 26 7 1 15
|
||||
7 32 1 2 3
|
||||
8 33 1 2 9
|
||||
9 34 1 2 4
|
||||
10 33 3 2 9
|
||||
11 34 3 2 4
|
||||
12 35 4 2 9
|
||||
13 36 2 3 6
|
||||
14 30 2 3 10
|
||||
15 30 2 3 11
|
||||
16 3 6 3 10
|
||||
17 3 6 3 11
|
||||
18 2 10 3 11
|
||||
19 37 2 4 25
|
||||
20 22 3 6 5
|
||||
21 23 13 12 18
|
||||
22 24 13 12 19
|
||||
23 24 18 12 19
|
||||
24 25 14 13 12
|
||||
25 26 20 13 12
|
||||
26 26 21 13 12
|
||||
27 27 14 13 20
|
||||
28 27 14 13 21
|
||||
29 2 20 13 21
|
||||
30 25 13 14 15
|
||||
31 27 13 14 22
|
||||
32 27 13 14 23
|
||||
33 26 22 14 15
|
||||
34 26 23 14 15
|
||||
35 2 22 14 23
|
||||
36 23 1 15 14
|
||||
37 24 1 15 24
|
||||
38 24 14 15 24
|
||||
39 24 17 16 26
|
||||
40 24 17 16 27
|
||||
41 28 26 16 27
|
||||
42 25 18 17 16
|
||||
43 26 28 17 16
|
||||
44 26 29 17 16
|
||||
45 27 18 17 28
|
||||
46 27 18 17 29
|
||||
47 2 28 17 29
|
||||
48 25 17 18 12
|
||||
49 26 30 18 12
|
||||
50 26 31 18 12
|
||||
51 27 17 18 30
|
||||
52 27 17 18 31
|
||||
53 2 30 18 31
|
||||
|
||||
Dihedrals
|
||||
|
||||
1 40 8 1 2 3
|
||||
2 41 8 1 2 9
|
||||
3 42 8 1 2 4
|
||||
4 40 7 1 2 3
|
||||
5 41 7 1 2 9
|
||||
6 42 7 1 2 4
|
||||
7 43 15 1 2 3
|
||||
8 44 15 1 2 9
|
||||
9 45 15 1 2 4
|
||||
10 28 8 1 15 14
|
||||
11 30 8 1 15 24
|
||||
12 46 2 1 15 14
|
||||
13 47 2 1 15 24
|
||||
14 28 7 1 15 14
|
||||
15 30 7 1 15 24
|
||||
16 48 6 3 2 1
|
||||
17 40 10 3 2 1
|
||||
18 40 11 3 2 1
|
||||
19 49 6 3 2 9
|
||||
20 41 10 3 2 9
|
||||
21 41 11 3 2 9
|
||||
22 50 6 3 2 4
|
||||
23 42 10 3 2 4
|
||||
24 42 11 3 2 4
|
||||
25 52 1 2 4 25
|
||||
26 52 3 2 4 25
|
||||
27 53 9 2 4 25
|
||||
28 51 2 3 6 5
|
||||
29 7 10 3 6 5
|
||||
30 7 11 3 6 5
|
||||
31 27 14 13 12 18
|
||||
32 28 20 13 12 18
|
||||
33 28 21 13 12 18
|
||||
34 29 14 13 12 19
|
||||
35 30 20 13 12 19
|
||||
36 30 21 13 12 19
|
||||
37 27 17 18 12 13
|
||||
38 28 30 18 12 13
|
||||
39 28 31 18 12 13
|
||||
40 29 17 18 12 19
|
||||
41 30 30 18 12 19
|
||||
42 30 31 18 12 19
|
||||
43 31 12 13 14 15
|
||||
44 32 22 14 13 12
|
||||
45 32 23 14 13 12
|
||||
46 32 20 13 14 15
|
||||
47 33 20 13 14 22
|
||||
48 33 20 13 14 23
|
||||
49 32 21 13 14 15
|
||||
50 33 21 13 14 22
|
||||
51 33 21 13 14 23
|
||||
52 27 13 14 15 1
|
||||
53 29 13 14 15 24
|
||||
54 28 22 14 15 1
|
||||
55 30 22 14 15 24
|
||||
56 28 23 14 15 1
|
||||
57 30 23 14 15 24
|
||||
58 29 18 17 16 26
|
||||
59 30 28 17 16 26
|
||||
60 30 29 17 16 26
|
||||
61 29 18 17 16 27
|
||||
62 30 28 17 16 27
|
||||
63 30 29 17 16 27
|
||||
64 31 16 17 18 12
|
||||
65 32 30 18 17 16
|
||||
66 32 31 18 17 16
|
||||
67 32 28 17 18 12
|
||||
68 33 28 17 18 30
|
||||
69 33 28 17 18 31
|
||||
70 32 29 17 18 12
|
||||
71 33 29 17 18 30
|
||||
72 33 29 17 18 31
|
||||
|
||||
Impropers
|
||||
|
||||
1 4 13 12 18 19
|
||||
2 4 1 15 14 24
|
||||
3 5 17 16 26 27
|
||||
4 1 2 1 8 7
|
||||
5 1 2 1 8 15
|
||||
6 1 8 1 7 15
|
||||
7 1 2 1 7 15
|
||||
8 1 1 2 3 9
|
||||
9 1 1 2 3 4
|
||||
10 1 1 2 4 9
|
||||
11 1 3 2 4 9
|
||||
12 1 2 3 6 10
|
||||
13 1 2 3 6 11
|
||||
14 1 2 3 10 11
|
||||
15 1 6 3 10 11
|
||||
16 1 14 13 20 12
|
||||
17 1 14 13 21 12
|
||||
18 1 20 13 21 12
|
||||
19 1 14 13 20 21
|
||||
20 1 13 14 22 15
|
||||
21 1 13 14 23 15
|
||||
22 1 13 14 22 23
|
||||
23 1 22 14 23 15
|
||||
24 1 18 17 28 16
|
||||
25 1 18 17 29 16
|
||||
26 1 28 17 29 16
|
||||
27 1 18 17 28 29
|
||||
28 1 17 18 30 12
|
||||
29 1 17 18 31 12
|
||||
30 1 30 18 31 12
|
||||
31 1 17 18 30 31
|
||||
59
examples/USER/reaction/tiny_epoxy/rxn2_stp1.map
Normal file
59
examples/USER/reaction/tiny_epoxy/rxn2_stp1.map
Normal file
@ -0,0 +1,59 @@
|
||||
this is a map file
|
||||
|
||||
2 edgeIDs
|
||||
42 equivalences
|
||||
|
||||
BondingIDs
|
||||
|
||||
15
|
||||
32
|
||||
|
||||
EdgeIDs
|
||||
|
||||
5
|
||||
36
|
||||
|
||||
Equivalences
|
||||
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
5 5
|
||||
6 6
|
||||
7 7
|
||||
8 8
|
||||
9 9
|
||||
10 10
|
||||
11 11
|
||||
12 12
|
||||
13 13
|
||||
14 14
|
||||
15 15
|
||||
16 16
|
||||
17 17
|
||||
18 18
|
||||
19 19
|
||||
20 20
|
||||
21 21
|
||||
22 22
|
||||
23 23
|
||||
24 24
|
||||
25 25
|
||||
26 26
|
||||
27 27
|
||||
28 28
|
||||
29 29
|
||||
30 30
|
||||
31 31
|
||||
32 32
|
||||
33 33
|
||||
34 34
|
||||
35 35
|
||||
36 36
|
||||
37 37
|
||||
38 38
|
||||
39 39
|
||||
40 40
|
||||
41 41
|
||||
42 42
|
||||
424
examples/USER/reaction/tiny_epoxy/rxn2_stp1_post.data_template
Normal file
424
examples/USER/reaction/tiny_epoxy/rxn2_stp1_post.data_template
Normal file
@ -0,0 +1,424 @@
|
||||
rxn2_stp1_post
|
||||
|
||||
42 atoms
|
||||
41 bonds
|
||||
75 angles
|
||||
108 dihedrals
|
||||
46 impropers
|
||||
|
||||
Types
|
||||
|
||||
1 1
|
||||
2 6
|
||||
3 1
|
||||
4 7
|
||||
5 4
|
||||
6 7
|
||||
7 8
|
||||
8 8
|
||||
9 8
|
||||
10 8
|
||||
11 8
|
||||
12 9
|
||||
13 1
|
||||
14 1
|
||||
15 9
|
||||
16 9
|
||||
17 1
|
||||
18 1
|
||||
19 10
|
||||
20 8
|
||||
21 8
|
||||
22 8
|
||||
23 8
|
||||
24 10
|
||||
25 11
|
||||
26 10
|
||||
27 10
|
||||
28 8
|
||||
29 8
|
||||
30 8
|
||||
31 8
|
||||
32 1
|
||||
33 6
|
||||
34 1
|
||||
35 7
|
||||
36 4
|
||||
37 7
|
||||
38 8
|
||||
39 8
|
||||
40 8
|
||||
41 8
|
||||
42 8
|
||||
|
||||
Charges
|
||||
|
||||
1 0.000000
|
||||
2 0.000000
|
||||
3 0.000000
|
||||
4 0.100000
|
||||
5 0.000000
|
||||
6 0.000000
|
||||
7 0.000000
|
||||
8 0.000000
|
||||
9 0.000000
|
||||
10 0.000000
|
||||
11 0.000000
|
||||
12 0.000000
|
||||
13 0.000000
|
||||
14 0.000000
|
||||
15 -0.025000
|
||||
16 -0.025000
|
||||
17 0.000000
|
||||
18 0.000000
|
||||
19 0.000000
|
||||
20 0.000000
|
||||
21 0.000000
|
||||
22 0.000000
|
||||
23 0.000000
|
||||
24 0.000000
|
||||
25 0.000000
|
||||
26 0.000000
|
||||
27 0.000000
|
||||
28 0.000000
|
||||
29 0.000000
|
||||
30 0.000000
|
||||
31 0.000000
|
||||
32 0.000000
|
||||
33 0.000000
|
||||
34 0.000000
|
||||
35 0.100000
|
||||
36 0.000000
|
||||
37 0.000000
|
||||
38 0.000000
|
||||
39 0.000000
|
||||
40 0.000000
|
||||
41 0.000000
|
||||
42 0.000000
|
||||
|
||||
Coords
|
||||
|
||||
1 19.846411 9.569080 -1.229960
|
||||
2 21.168550 9.331390 -0.418120
|
||||
3 21.253010 8.067940 0.460720
|
||||
4 21.330839 10.304280 -0.253340
|
||||
5 21.891689 5.906200 0.464150
|
||||
6 21.818470 6.999870 -0.296270
|
||||
7 19.931601 10.026600 -2.215510
|
||||
8 19.051279 8.828540 -1.132880
|
||||
9 22.228800 9.293580 -0.665280
|
||||
10 21.880541 8.270810 1.328060
|
||||
11 20.253151 7.789050 0.792640
|
||||
12 16.072720 12.338940 -0.174630
|
||||
13 16.557051 11.130580 0.587500
|
||||
14 18.074381 10.998730 0.366590
|
||||
15 18.354031 10.832100 -1.107140
|
||||
16 14.920880 15.018100 -0.201130
|
||||
17 16.390551 14.791140 -0.461060
|
||||
18 16.852989 13.538490 0.304530
|
||||
19 16.264271 12.190330 -1.257620
|
||||
20 16.025061 10.195290 0.210910
|
||||
21 16.346741 11.269890 1.698950
|
||||
22 18.466690 10.092460 0.935470
|
||||
23 18.592319 11.941150 0.745170
|
||||
24 17.213690 10.780300 -1.896260
|
||||
25 20.881861 11.302060 -0.773030
|
||||
26 14.344180 14.136430 -0.550280
|
||||
27 14.583670 15.922830 -0.748110
|
||||
28 16.984310 15.696060 -0.103470
|
||||
29 16.562460 14.639560 -1.577590
|
||||
30 16.674610 13.686010 1.420370
|
||||
31 17.964001 13.363150 0.117750
|
||||
32 18.680189 9.134390 -4.183100
|
||||
33 18.099751 8.263650 -5.343000
|
||||
34 19.081829 7.609610 -6.334180
|
||||
35 17.971729 9.827680 -5.367080
|
||||
36 20.263880 5.733600 -6.736780
|
||||
37 19.414030 6.299980 -5.878960
|
||||
38 18.194740 9.091640 -3.210950
|
||||
39 19.788940 9.208560 -4.119640
|
||||
40 17.399309 7.432220 -5.407800
|
||||
41 18.616249 7.545570 -7.316910
|
||||
42 19.987049 8.212500 -6.399400
|
||||
|
||||
Bonds
|
||||
|
||||
1 1 1 8
|
||||
2 16 1 2
|
||||
3 1 1 7
|
||||
4 13 1 15
|
||||
5 16 3 2
|
||||
6 12 2 9
|
||||
7 17 2 4
|
||||
8 3 3 6
|
||||
9 1 3 10
|
||||
10 1 3 11
|
||||
11 18 4 25
|
||||
12 8 6 5
|
||||
13 13 13 12
|
||||
14 13 18 12
|
||||
15 14 12 19
|
||||
16 15 13 14
|
||||
17 1 13 20
|
||||
18 1 13 21
|
||||
19 13 14 15
|
||||
20 1 14 22
|
||||
21 1 14 23
|
||||
22 14 15 24
|
||||
23 13 32 15
|
||||
24 13 17 16
|
||||
25 14 16 26
|
||||
26 14 16 27
|
||||
27 15 17 18
|
||||
28 1 17 28
|
||||
29 1 17 29
|
||||
30 1 18 30
|
||||
31 1 18 31
|
||||
32 1 32 39
|
||||
33 16 32 33
|
||||
34 1 32 38
|
||||
35 17 33 35
|
||||
36 16 34 33
|
||||
37 12 33 40
|
||||
38 3 34 37
|
||||
39 1 34 41
|
||||
40 1 34 42
|
||||
41 8 37 36
|
||||
|
||||
Angles
|
||||
|
||||
1 30 2 1 8
|
||||
2 2 8 1 7
|
||||
3 26 8 1 15
|
||||
4 30 2 1 7
|
||||
5 31 2 1 15
|
||||
6 26 7 1 15
|
||||
7 32 1 2 3
|
||||
8 33 1 2 9
|
||||
9 34 1 2 4
|
||||
10 33 3 2 9
|
||||
11 34 3 2 4
|
||||
12 35 4 2 9
|
||||
13 36 2 3 6
|
||||
14 30 2 3 10
|
||||
15 30 2 3 11
|
||||
16 3 6 3 10
|
||||
17 3 6 3 11
|
||||
18 2 10 3 11
|
||||
19 37 2 4 25
|
||||
20 22 3 6 5
|
||||
21 23 13 12 18
|
||||
22 24 13 12 19
|
||||
23 24 18 12 19
|
||||
24 25 14 13 12
|
||||
25 26 20 13 12
|
||||
26 26 21 13 12
|
||||
27 27 14 13 20
|
||||
28 27 14 13 21
|
||||
29 2 20 13 21
|
||||
30 25 13 14 15
|
||||
31 27 13 14 22
|
||||
32 27 13 14 23
|
||||
33 26 22 14 15
|
||||
34 26 23 14 15
|
||||
35 2 22 14 23
|
||||
36 23 1 15 14
|
||||
37 24 1 15 24
|
||||
38 23 1 15 32
|
||||
39 24 14 15 24
|
||||
40 23 14 15 32
|
||||
41 24 32 15 24
|
||||
42 24 17 16 26
|
||||
43 24 17 16 27
|
||||
44 28 26 16 27
|
||||
45 25 18 17 16
|
||||
46 26 28 17 16
|
||||
47 26 29 17 16
|
||||
48 27 18 17 28
|
||||
49 27 18 17 29
|
||||
50 2 28 17 29
|
||||
51 25 17 18 12
|
||||
52 26 30 18 12
|
||||
53 26 31 18 12
|
||||
54 27 17 18 30
|
||||
55 27 17 18 31
|
||||
56 2 30 18 31
|
||||
57 26 39 32 15
|
||||
58 31 33 32 15
|
||||
59 26 38 32 15
|
||||
60 30 33 32 39
|
||||
61 2 39 32 38
|
||||
62 30 33 32 38
|
||||
63 34 32 33 35
|
||||
64 32 32 33 34
|
||||
65 33 32 33 40
|
||||
66 34 34 33 35
|
||||
67 35 35 33 40
|
||||
68 33 34 33 40
|
||||
69 36 33 34 37
|
||||
70 30 33 34 41
|
||||
71 30 33 34 42
|
||||
72 3 37 34 41
|
||||
73 3 37 34 42
|
||||
74 2 41 34 42
|
||||
75 22 34 37 36
|
||||
|
||||
Dihedrals
|
||||
|
||||
1 40 8 1 2 3
|
||||
2 41 8 1 2 9
|
||||
3 42 8 1 2 4
|
||||
4 40 7 1 2 3
|
||||
5 41 7 1 2 9
|
||||
6 42 7 1 2 4
|
||||
7 43 15 1 2 3
|
||||
8 44 15 1 2 9
|
||||
9 45 15 1 2 4
|
||||
10 28 8 1 15 14
|
||||
11 30 8 1 15 24
|
||||
12 28 8 1 15 32
|
||||
13 46 2 1 15 14
|
||||
14 47 2 1 15 24
|
||||
15 46 2 1 15 32
|
||||
16 28 7 1 15 14
|
||||
17 30 7 1 15 24
|
||||
18 28 7 1 15 32
|
||||
19 48 6 3 2 1
|
||||
20 40 10 3 2 1
|
||||
21 40 11 3 2 1
|
||||
22 49 6 3 2 9
|
||||
23 41 10 3 2 9
|
||||
24 41 11 3 2 9
|
||||
25 50 6 3 2 4
|
||||
26 42 10 3 2 4
|
||||
27 42 11 3 2 4
|
||||
28 52 1 2 4 25
|
||||
29 52 3 2 4 25
|
||||
30 53 9 2 4 25
|
||||
31 51 2 3 6 5
|
||||
32 7 10 3 6 5
|
||||
33 7 11 3 6 5
|
||||
34 27 14 13 12 18
|
||||
35 28 20 13 12 18
|
||||
36 28 21 13 12 18
|
||||
37 29 14 13 12 19
|
||||
38 30 20 13 12 19
|
||||
39 30 21 13 12 19
|
||||
40 27 17 18 12 13
|
||||
41 28 30 18 12 13
|
||||
42 28 31 18 12 13
|
||||
43 29 17 18 12 19
|
||||
44 30 30 18 12 19
|
||||
45 30 31 18 12 19
|
||||
46 31 12 13 14 15
|
||||
47 32 22 14 13 12
|
||||
48 32 23 14 13 12
|
||||
49 32 20 13 14 15
|
||||
50 33 20 13 14 22
|
||||
51 33 20 13 14 23
|
||||
52 32 21 13 14 15
|
||||
53 33 21 13 14 22
|
||||
54 33 21 13 14 23
|
||||
55 27 13 14 15 1
|
||||
56 29 13 14 15 24
|
||||
57 27 13 14 15 32
|
||||
58 28 22 14 15 1
|
||||
59 30 22 14 15 24
|
||||
60 28 22 14 15 32
|
||||
61 28 23 14 15 1
|
||||
62 30 23 14 15 24
|
||||
63 28 23 14 15 32
|
||||
64 28 39 32 15 1
|
||||
65 46 33 32 15 1
|
||||
66 28 38 32 15 1
|
||||
67 28 39 32 15 14
|
||||
68 46 33 32 15 14
|
||||
69 28 38 32 15 14
|
||||
70 30 39 32 15 24
|
||||
71 47 33 32 15 24
|
||||
72 30 38 32 15 24
|
||||
73 29 18 17 16 26
|
||||
74 30 28 17 16 26
|
||||
75 30 29 17 16 26
|
||||
76 29 18 17 16 27
|
||||
77 30 28 17 16 27
|
||||
78 30 29 17 16 27
|
||||
79 31 16 17 18 12
|
||||
80 32 30 18 17 16
|
||||
81 32 31 18 17 16
|
||||
82 32 28 17 18 12
|
||||
83 33 28 17 18 30
|
||||
84 33 28 17 18 31
|
||||
85 32 29 17 18 12
|
||||
86 33 29 17 18 30
|
||||
87 33 29 17 18 31
|
||||
88 45 15 32 33 35
|
||||
89 43 15 32 33 34
|
||||
90 44 15 32 33 40
|
||||
91 42 39 32 33 35
|
||||
92 40 39 32 33 34
|
||||
93 41 39 32 33 40
|
||||
94 42 38 32 33 35
|
||||
95 40 38 32 33 34
|
||||
96 41 38 32 33 40
|
||||
97 48 37 34 33 32
|
||||
98 40 41 34 33 32
|
||||
99 40 42 34 33 32
|
||||
100 50 37 34 33 35
|
||||
101 42 41 34 33 35
|
||||
102 42 42 34 33 35
|
||||
103 49 37 34 33 40
|
||||
104 41 41 34 33 40
|
||||
105 41 42 34 33 40
|
||||
106 51 33 34 37 36
|
||||
107 7 41 34 37 36
|
||||
108 7 42 34 37 36
|
||||
|
||||
Impropers
|
||||
|
||||
1 4 13 12 18 19
|
||||
2 5 17 16 26 27
|
||||
3 1 2 1 8 7
|
||||
4 1 2 1 8 15
|
||||
5 1 8 1 7 15
|
||||
6 1 2 1 7 15
|
||||
7 1 1 2 3 9
|
||||
8 1 1 2 3 4
|
||||
9 1 1 2 4 9
|
||||
10 1 3 2 4 9
|
||||
11 1 2 3 6 10
|
||||
12 1 2 3 6 11
|
||||
13 1 2 3 10 11
|
||||
14 1 6 3 10 11
|
||||
15 1 14 13 20 12
|
||||
16 1 14 13 21 12
|
||||
17 1 20 13 21 12
|
||||
18 1 14 13 20 21
|
||||
19 1 13 14 22 15
|
||||
20 1 13 14 23 15
|
||||
21 1 13 14 22 23
|
||||
22 1 22 14 23 15
|
||||
23 1 1 15 14 24
|
||||
24 1 1 15 14 32
|
||||
25 1 1 15 32 24
|
||||
26 1 14 15 32 24
|
||||
27 1 18 17 28 16
|
||||
28 1 18 17 29 16
|
||||
29 1 28 17 29 16
|
||||
30 1 18 17 28 29
|
||||
31 1 17 18 30 12
|
||||
32 1 17 18 31 12
|
||||
33 1 30 18 31 12
|
||||
34 1 17 18 30 31
|
||||
35 1 33 32 39 15
|
||||
36 1 39 32 38 15
|
||||
37 1 33 32 38 15
|
||||
38 1 33 32 39 38
|
||||
39 1 32 33 34 35
|
||||
40 1 32 33 35 40
|
||||
41 1 32 33 34 40
|
||||
42 1 34 33 35 40
|
||||
43 1 33 34 37 41
|
||||
44 1 33 34 37 42
|
||||
45 1 33 34 41 42
|
||||
46 1 37 34 41 42
|
||||
407
examples/USER/reaction/tiny_epoxy/rxn2_stp1_pre.data_template
Normal file
407
examples/USER/reaction/tiny_epoxy/rxn2_stp1_pre.data_template
Normal file
@ -0,0 +1,407 @@
|
||||
rxn2_stp1_pre
|
||||
|
||||
42 atoms
|
||||
41 bonds
|
||||
73 angles
|
||||
96 dihedrals
|
||||
43 impropers
|
||||
|
||||
Types
|
||||
|
||||
1 1
|
||||
2 6
|
||||
3 1
|
||||
4 7
|
||||
5 4
|
||||
6 7
|
||||
7 8
|
||||
8 8
|
||||
9 8
|
||||
10 8
|
||||
11 8
|
||||
12 9
|
||||
13 1
|
||||
14 1
|
||||
15 9
|
||||
16 9
|
||||
17 1
|
||||
18 1
|
||||
19 10
|
||||
20 8
|
||||
21 8
|
||||
22 8
|
||||
23 8
|
||||
24 10
|
||||
25 11
|
||||
26 10
|
||||
27 10
|
||||
28 8
|
||||
29 8
|
||||
30 8
|
||||
31 8
|
||||
32 2
|
||||
33 2
|
||||
34 1
|
||||
35 3
|
||||
36 4
|
||||
37 7
|
||||
38 8
|
||||
39 8
|
||||
40 8
|
||||
41 8
|
||||
42 8
|
||||
|
||||
Charges
|
||||
|
||||
1 0.000000
|
||||
2 0.000000
|
||||
3 0.000000
|
||||
4 0.100000
|
||||
5 0.000000
|
||||
6 0.000000
|
||||
7 0.000000
|
||||
8 0.000000
|
||||
9 0.000000
|
||||
10 0.000000
|
||||
11 0.000000
|
||||
12 0.000000
|
||||
13 0.000000
|
||||
14 0.000000
|
||||
15 -0.025000
|
||||
16 -0.025000
|
||||
17 0.000000
|
||||
18 0.000000
|
||||
19 0.000000
|
||||
20 0.000000
|
||||
21 0.000000
|
||||
22 0.000000
|
||||
23 0.000000
|
||||
24 0.000000
|
||||
25 0.000000
|
||||
26 0.000000
|
||||
27 0.000000
|
||||
28 0.000000
|
||||
29 0.000000
|
||||
30 0.000000
|
||||
31 0.000000
|
||||
32 0.000000
|
||||
33 0.000000
|
||||
34 0.000000
|
||||
35 0.100000
|
||||
36 0.000000
|
||||
37 0.000000
|
||||
38 0.000000
|
||||
39 0.000000
|
||||
40 0.000000
|
||||
41 0.000000
|
||||
42 0.000000
|
||||
|
||||
Coords
|
||||
|
||||
1 19.846411 9.569080 -1.229960
|
||||
2 21.168550 9.331390 -0.418120
|
||||
3 21.253010 8.067940 0.460720
|
||||
4 21.330839 10.304280 -0.253340
|
||||
5 21.891689 5.906200 0.464150
|
||||
6 21.818470 6.999870 -0.296270
|
||||
7 19.931601 10.026600 -2.215510
|
||||
8 19.051279 8.828540 -1.132880
|
||||
9 22.228800 9.293580 -0.665280
|
||||
10 21.880541 8.270810 1.328060
|
||||
11 20.253151 7.789050 0.792640
|
||||
12 16.072720 12.338940 -0.174630
|
||||
13 16.557051 11.130580 0.587500
|
||||
14 18.074381 10.998730 0.366590
|
||||
15 18.354031 10.832100 -1.107140
|
||||
16 14.920880 15.018100 -0.201130
|
||||
17 16.390551 14.791140 -0.461060
|
||||
18 16.852989 13.538490 0.304530
|
||||
19 16.264271 12.190330 -1.257620
|
||||
20 16.025061 10.195290 0.210910
|
||||
21 16.346741 11.269890 1.698950
|
||||
22 18.466690 10.092460 0.935470
|
||||
23 18.592319 11.941150 0.745170
|
||||
24 17.213690 10.780300 -1.896260
|
||||
25 20.881861 11.302060 -0.773030
|
||||
26 14.344180 14.136430 -0.550280
|
||||
27 14.583670 15.922830 -0.748110
|
||||
28 16.984310 15.696060 -0.103470
|
||||
29 16.562460 14.639560 -1.577590
|
||||
30 16.674610 13.686010 1.420370
|
||||
31 17.964001 13.363150 0.117750
|
||||
32 18.703360 9.118830 -4.174240
|
||||
33 18.099751 8.263650 -5.343000
|
||||
34 19.081829 7.609610 -6.334180
|
||||
35 17.971729 9.827680 -5.367080
|
||||
36 20.263880 5.733600 -6.736780
|
||||
37 19.414030 6.299980 -5.878960
|
||||
38 18.194740 9.091640 -3.210950
|
||||
39 19.788940 9.208560 -4.119640
|
||||
40 17.399309 7.432220 -5.407800
|
||||
41 18.616249 7.545570 -7.316910
|
||||
42 19.987049 8.212500 -6.399400
|
||||
|
||||
Bonds
|
||||
|
||||
1 1 1 8
|
||||
2 16 1 2
|
||||
3 1 1 7
|
||||
4 13 1 15
|
||||
5 16 3 2
|
||||
6 12 2 9
|
||||
7 17 2 4
|
||||
8 3 3 6
|
||||
9 1 3 10
|
||||
10 1 3 11
|
||||
11 18 4 25
|
||||
12 8 6 5
|
||||
13 13 13 12
|
||||
14 13 18 12
|
||||
15 14 12 19
|
||||
16 15 13 14
|
||||
17 1 13 20
|
||||
18 1 13 21
|
||||
19 13 14 15
|
||||
20 1 14 22
|
||||
21 1 14 23
|
||||
22 14 15 24
|
||||
23 13 17 16
|
||||
24 14 16 26
|
||||
25 14 16 27
|
||||
26 15 17 18
|
||||
27 1 17 28
|
||||
28 1 17 29
|
||||
29 1 18 30
|
||||
30 1 18 31
|
||||
31 6 39 32
|
||||
32 4 32 35
|
||||
33 5 32 33
|
||||
34 6 38 32
|
||||
35 4 33 35
|
||||
36 2 34 33
|
||||
37 6 40 33
|
||||
38 3 34 37
|
||||
39 1 34 41
|
||||
40 1 34 42
|
||||
41 8 37 36
|
||||
|
||||
Angles
|
||||
|
||||
1 30 2 1 8
|
||||
2 2 8 1 7
|
||||
3 26 8 1 15
|
||||
4 30 2 1 7
|
||||
5 31 2 1 15
|
||||
6 26 7 1 15
|
||||
7 32 1 2 3
|
||||
8 33 1 2 9
|
||||
9 34 1 2 4
|
||||
10 33 3 2 9
|
||||
11 34 3 2 4
|
||||
12 35 4 2 9
|
||||
13 36 2 3 6
|
||||
14 30 2 3 10
|
||||
15 30 2 3 11
|
||||
16 3 6 3 10
|
||||
17 3 6 3 11
|
||||
18 2 10 3 11
|
||||
19 37 2 4 25
|
||||
20 22 3 6 5
|
||||
21 23 13 12 18
|
||||
22 24 13 12 19
|
||||
23 24 18 12 19
|
||||
24 25 14 13 12
|
||||
25 26 20 13 12
|
||||
26 26 21 13 12
|
||||
27 27 14 13 20
|
||||
28 27 14 13 21
|
||||
29 2 20 13 21
|
||||
30 25 13 14 15
|
||||
31 27 13 14 22
|
||||
32 27 13 14 23
|
||||
33 26 22 14 15
|
||||
34 26 23 14 15
|
||||
35 2 22 14 23
|
||||
36 23 1 15 14
|
||||
37 24 1 15 24
|
||||
38 24 14 15 24
|
||||
39 24 17 16 26
|
||||
40 24 17 16 27
|
||||
41 28 26 16 27
|
||||
42 25 18 17 16
|
||||
43 26 28 17 16
|
||||
44 26 29 17 16
|
||||
45 27 18 17 28
|
||||
46 27 18 17 29
|
||||
47 2 28 17 29
|
||||
48 25 17 18 12
|
||||
49 26 30 18 12
|
||||
50 26 31 18 12
|
||||
51 27 17 18 30
|
||||
52 27 17 18 31
|
||||
53 2 30 18 31
|
||||
54 38 39 32 35
|
||||
55 39 39 32 33
|
||||
56 11 39 32 38
|
||||
57 8 33 32 35
|
||||
58 38 38 32 35
|
||||
59 39 38 32 33
|
||||
60 8 32 33 35
|
||||
61 6 34 33 32
|
||||
62 39 40 33 32
|
||||
63 5 34 33 35
|
||||
64 38 40 33 35
|
||||
65 7 34 33 40
|
||||
66 40 37 34 33
|
||||
67 41 41 34 33
|
||||
68 41 42 34 33
|
||||
69 3 37 34 41
|
||||
70 3 37 34 42
|
||||
71 2 41 34 42
|
||||
72 12 32 35 33
|
||||
73 22 34 37 36
|
||||
|
||||
Dihedrals
|
||||
|
||||
1 40 8 1 2 3
|
||||
2 41 8 1 2 9
|
||||
3 42 8 1 2 4
|
||||
4 40 7 1 2 3
|
||||
5 41 7 1 2 9
|
||||
6 42 7 1 2 4
|
||||
7 43 15 1 2 3
|
||||
8 44 15 1 2 9
|
||||
9 45 15 1 2 4
|
||||
10 28 8 1 15 14
|
||||
11 30 8 1 15 24
|
||||
12 46 2 1 15 14
|
||||
13 47 2 1 15 24
|
||||
14 28 7 1 15 14
|
||||
15 30 7 1 15 24
|
||||
16 48 6 3 2 1
|
||||
17 40 10 3 2 1
|
||||
18 40 11 3 2 1
|
||||
19 49 6 3 2 9
|
||||
20 41 10 3 2 9
|
||||
21 41 11 3 2 9
|
||||
22 50 6 3 2 4
|
||||
23 42 10 3 2 4
|
||||
24 42 11 3 2 4
|
||||
25 52 1 2 4 25
|
||||
26 52 3 2 4 25
|
||||
27 53 9 2 4 25
|
||||
28 51 2 3 6 5
|
||||
29 7 10 3 6 5
|
||||
30 7 11 3 6 5
|
||||
31 27 14 13 12 18
|
||||
32 28 20 13 12 18
|
||||
33 28 21 13 12 18
|
||||
34 29 14 13 12 19
|
||||
35 30 20 13 12 19
|
||||
36 30 21 13 12 19
|
||||
37 27 17 18 12 13
|
||||
38 28 30 18 12 13
|
||||
39 28 31 18 12 13
|
||||
40 29 17 18 12 19
|
||||
41 30 30 18 12 19
|
||||
42 30 31 18 12 19
|
||||
43 31 12 13 14 15
|
||||
44 32 22 14 13 12
|
||||
45 32 23 14 13 12
|
||||
46 32 20 13 14 15
|
||||
47 33 20 13 14 22
|
||||
48 33 20 13 14 23
|
||||
49 32 21 13 14 15
|
||||
50 33 21 13 14 22
|
||||
51 33 21 13 14 23
|
||||
52 27 13 14 15 1
|
||||
53 29 13 14 15 24
|
||||
54 28 22 14 15 1
|
||||
55 30 22 14 15 24
|
||||
56 28 23 14 15 1
|
||||
57 30 23 14 15 24
|
||||
58 29 18 17 16 26
|
||||
59 30 28 17 16 26
|
||||
60 30 29 17 16 26
|
||||
61 29 18 17 16 27
|
||||
62 30 28 17 16 27
|
||||
63 30 29 17 16 27
|
||||
64 31 16 17 18 12
|
||||
65 32 30 18 17 16
|
||||
66 32 31 18 17 16
|
||||
67 32 28 17 18 12
|
||||
68 33 28 17 18 30
|
||||
69 33 28 17 18 31
|
||||
70 32 29 17 18 12
|
||||
71 33 29 17 18 30
|
||||
72 33 29 17 18 31
|
||||
73 10 39 32 35 33
|
||||
74 10 38 32 35 33
|
||||
75 54 39 32 33 35
|
||||
76 12 34 33 32 39
|
||||
77 14 39 32 33 40
|
||||
78 11 34 33 32 35
|
||||
79 54 40 33 32 35
|
||||
80 54 38 32 33 35
|
||||
81 12 34 33 32 38
|
||||
82 14 38 32 33 40
|
||||
83 9 34 33 35 32
|
||||
84 10 40 33 35 32
|
||||
85 5 37 34 33 32
|
||||
86 2 41 34 33 32
|
||||
87 2 42 34 33 32
|
||||
88 4 37 34 33 35
|
||||
89 1 41 34 33 35
|
||||
90 1 42 34 33 35
|
||||
91 6 37 34 33 40
|
||||
92 3 41 34 33 40
|
||||
93 3 42 34 33 40
|
||||
94 8 33 34 37 36
|
||||
95 7 41 34 37 36
|
||||
96 7 42 34 37 36
|
||||
|
||||
Impropers
|
||||
|
||||
1 4 13 12 18 19
|
||||
2 4 1 15 14 24
|
||||
3 5 17 16 26 27
|
||||
4 1 2 1 8 7
|
||||
5 1 2 1 8 15
|
||||
6 1 8 1 7 15
|
||||
7 1 2 1 7 15
|
||||
8 1 1 2 3 9
|
||||
9 1 1 2 3 4
|
||||
10 1 1 2 4 9
|
||||
11 1 3 2 4 9
|
||||
12 1 2 3 6 10
|
||||
13 1 2 3 6 11
|
||||
14 1 2 3 10 11
|
||||
15 1 6 3 10 11
|
||||
16 1 14 13 20 12
|
||||
17 1 14 13 21 12
|
||||
18 1 20 13 21 12
|
||||
19 1 14 13 20 21
|
||||
20 1 13 14 22 15
|
||||
21 1 13 14 23 15
|
||||
22 1 13 14 22 23
|
||||
23 1 22 14 23 15
|
||||
24 1 18 17 28 16
|
||||
25 1 18 17 29 16
|
||||
26 1 28 17 29 16
|
||||
27 1 18 17 28 29
|
||||
28 1 17 18 30 12
|
||||
29 1 17 18 31 12
|
||||
30 1 30 18 31 12
|
||||
31 1 17 18 30 31
|
||||
32 1 39 32 33 35
|
||||
33 1 39 32 38 35
|
||||
34 1 39 32 38 33
|
||||
35 1 38 32 33 35
|
||||
36 1 34 33 32 35
|
||||
37 1 40 33 32 35
|
||||
38 1 34 33 40 32
|
||||
39 1 34 33 40 35
|
||||
40 1 37 34 41 33
|
||||
41 1 37 34 42 33
|
||||
42 1 41 34 42 33
|
||||
43 1 37 34 41 42
|
||||
59
examples/USER/reaction/tiny_epoxy/rxn2_stp2.map
Normal file
59
examples/USER/reaction/tiny_epoxy/rxn2_stp2.map
Normal file
@ -0,0 +1,59 @@
|
||||
this is a map file
|
||||
|
||||
2 edgeIDs
|
||||
42 equivalences
|
||||
|
||||
BondingIDs
|
||||
|
||||
35
|
||||
24
|
||||
|
||||
EdgeIDs
|
||||
|
||||
5
|
||||
36
|
||||
|
||||
Equivalences
|
||||
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
5 5
|
||||
6 6
|
||||
7 7
|
||||
8 8
|
||||
9 9
|
||||
10 10
|
||||
11 11
|
||||
12 12
|
||||
13 13
|
||||
14 14
|
||||
15 15
|
||||
16 16
|
||||
17 17
|
||||
18 18
|
||||
19 19
|
||||
20 20
|
||||
21 21
|
||||
22 22
|
||||
23 23
|
||||
24 24
|
||||
25 25
|
||||
26 26
|
||||
27 27
|
||||
28 28
|
||||
29 29
|
||||
30 30
|
||||
31 31
|
||||
32 32
|
||||
33 33
|
||||
34 34
|
||||
35 35
|
||||
36 36
|
||||
37 37
|
||||
38 38
|
||||
39 39
|
||||
40 40
|
||||
41 41
|
||||
42 42
|
||||
413
examples/USER/reaction/tiny_epoxy/rxn2_stp2_post.data_template
Normal file
413
examples/USER/reaction/tiny_epoxy/rxn2_stp2_post.data_template
Normal file
@ -0,0 +1,413 @@
|
||||
rxn2_stp2_post
|
||||
|
||||
42 atoms
|
||||
41 bonds
|
||||
73 angles
|
||||
102 dihedrals
|
||||
43 impropers
|
||||
|
||||
Types
|
||||
|
||||
1 1
|
||||
2 2
|
||||
3 1
|
||||
4 7
|
||||
5 4
|
||||
6 7
|
||||
7 8
|
||||
8 8
|
||||
9 8
|
||||
10 8
|
||||
11 8
|
||||
12 9
|
||||
13 1
|
||||
14 1
|
||||
15 9
|
||||
16 9
|
||||
17 1
|
||||
18 1
|
||||
19 10
|
||||
20 8
|
||||
21 8
|
||||
22 8
|
||||
23 8
|
||||
24 11
|
||||
25 11
|
||||
26 10
|
||||
27 10
|
||||
28 8
|
||||
29 8
|
||||
30 8
|
||||
31 8
|
||||
32 1
|
||||
33 6
|
||||
34 1
|
||||
35 7
|
||||
36 4
|
||||
37 7
|
||||
38 8
|
||||
39 8
|
||||
40 8
|
||||
41 8
|
||||
42 8
|
||||
|
||||
Charges
|
||||
|
||||
1 0.000000
|
||||
2 0.000000
|
||||
3 0.000000
|
||||
4 0.100000
|
||||
5 0.000000
|
||||
6 0.000000
|
||||
7 0.000000
|
||||
8 0.000000
|
||||
9 0.000000
|
||||
10 0.000000
|
||||
11 0.000000
|
||||
12 0.000000
|
||||
13 0.000000
|
||||
14 0.000000
|
||||
15 -0.025000
|
||||
16 -0.025000
|
||||
17 0.000000
|
||||
18 0.000000
|
||||
19 0.000000
|
||||
20 0.000000
|
||||
21 0.000000
|
||||
22 0.000000
|
||||
23 0.000000
|
||||
24 0.000000
|
||||
25 0.000000
|
||||
26 0.000000
|
||||
27 0.000000
|
||||
28 0.000000
|
||||
29 0.000000
|
||||
30 0.000000
|
||||
31 0.000000
|
||||
32 0.000000
|
||||
33 0.000000
|
||||
34 0.000000
|
||||
35 0.100000
|
||||
36 0.000000
|
||||
37 0.000000
|
||||
38 0.000000
|
||||
39 0.000000
|
||||
40 0.000000
|
||||
41 0.000000
|
||||
42 0.000000
|
||||
|
||||
Coords
|
||||
|
||||
1 19.846411 9.569080 -1.229960
|
||||
2 21.168550 9.331390 -0.418120
|
||||
3 21.253010 8.067940 0.460720
|
||||
4 21.330839 10.304280 -0.253340
|
||||
5 21.891689 5.906200 0.464150
|
||||
6 21.818470 6.999870 -0.296270
|
||||
7 19.931601 10.026600 -2.215510
|
||||
8 19.051279 8.828540 -1.132880
|
||||
9 22.228800 9.293580 -0.665280
|
||||
10 21.880541 8.270810 1.328060
|
||||
11 20.253151 7.789050 0.792640
|
||||
12 16.072720 12.338940 -0.174630
|
||||
13 16.557051 11.130580 0.587500
|
||||
14 18.074381 10.998730 0.366590
|
||||
15 18.354031 10.832100 -1.107140
|
||||
16 14.920880 15.018100 -0.201130
|
||||
17 16.390551 14.791140 -0.461060
|
||||
18 16.852989 13.538490 0.304530
|
||||
19 16.264271 12.190330 -1.257620
|
||||
20 16.025061 10.195290 0.210910
|
||||
21 16.346741 11.269890 1.698950
|
||||
22 18.466690 10.092460 0.935470
|
||||
23 18.592319 11.941150 0.745170
|
||||
24 16.017490 9.805710 -4.329880
|
||||
25 20.881861 11.302060 -0.773030
|
||||
26 14.344180 14.136430 -0.550280
|
||||
27 14.583670 15.922830 -0.748110
|
||||
28 16.984310 15.696060 -0.103470
|
||||
29 16.562460 14.639560 -1.577590
|
||||
30 16.674610 13.686010 1.420370
|
||||
31 17.964001 13.363150 0.117750
|
||||
32 18.680189 9.134390 -4.183100
|
||||
33 18.099751 8.263650 -5.343000
|
||||
34 19.081829 7.609610 -6.334180
|
||||
35 17.971729 9.827680 -5.367080
|
||||
36 20.263880 5.733600 -6.736780
|
||||
37 19.414030 6.299980 -5.878960
|
||||
38 18.194740 9.091640 -3.210950
|
||||
39 19.788940 9.208560 -4.119640
|
||||
40 17.399309 7.432220 -5.407800
|
||||
41 18.616249 7.545570 -7.316910
|
||||
42 19.987049 8.212500 -6.399400
|
||||
|
||||
Bonds
|
||||
|
||||
1 1 1 8
|
||||
2 2 1 2
|
||||
3 1 1 7
|
||||
4 13 1 15
|
||||
5 2 3 2
|
||||
6 6 2 9
|
||||
7 19 2 4
|
||||
8 3 3 6
|
||||
9 1 3 10
|
||||
10 1 3 11
|
||||
11 18 4 25
|
||||
12 8 6 5
|
||||
13 13 13 12
|
||||
14 13 18 12
|
||||
15 14 12 19
|
||||
16 15 13 14
|
||||
17 1 13 20
|
||||
18 1 13 21
|
||||
19 13 14 15
|
||||
20 1 14 22
|
||||
21 1 14 23
|
||||
22 13 32 15
|
||||
23 13 17 16
|
||||
24 14 16 26
|
||||
25 14 16 27
|
||||
26 15 17 18
|
||||
27 1 17 28
|
||||
28 1 17 29
|
||||
29 1 18 30
|
||||
30 1 18 31
|
||||
31 18 35 24
|
||||
32 1 32 39
|
||||
33 16 32 33
|
||||
34 1 32 38
|
||||
35 17 35 33
|
||||
36 16 34 33
|
||||
37 12 40 33
|
||||
38 3 34 37
|
||||
39 1 34 41
|
||||
40 1 34 42
|
||||
41 8 37 36
|
||||
|
||||
Angles
|
||||
|
||||
1 1 2 1 8
|
||||
2 2 8 1 7
|
||||
3 26 8 1 15
|
||||
4 1 2 1 7
|
||||
5 42 2 1 15
|
||||
6 26 7 1 15
|
||||
7 43 1 2 3
|
||||
8 7 1 2 9
|
||||
9 44 1 2 4
|
||||
10 7 3 2 9
|
||||
11 44 3 2 4
|
||||
12 45 4 2 9
|
||||
13 4 2 3 6
|
||||
14 1 2 3 10
|
||||
15 1 2 3 11
|
||||
16 3 6 3 10
|
||||
17 3 6 3 11
|
||||
18 2 10 3 11
|
||||
19 46 2 4 25
|
||||
20 22 3 6 5
|
||||
21 23 13 12 18
|
||||
22 24 13 12 19
|
||||
23 24 18 12 19
|
||||
24 25 14 13 12
|
||||
25 26 20 13 12
|
||||
26 26 21 13 12
|
||||
27 27 14 13 20
|
||||
28 27 14 13 21
|
||||
29 2 20 13 21
|
||||
30 25 13 14 15
|
||||
31 27 13 14 22
|
||||
32 27 13 14 23
|
||||
33 26 22 14 15
|
||||
34 26 23 14 15
|
||||
35 2 22 14 23
|
||||
36 23 1 15 14
|
||||
37 23 1 15 32
|
||||
38 23 14 15 32
|
||||
39 24 17 16 26
|
||||
40 24 17 16 27
|
||||
41 28 26 16 27
|
||||
42 25 18 17 16
|
||||
43 26 28 17 16
|
||||
44 26 29 17 16
|
||||
45 27 18 17 28
|
||||
46 27 18 17 29
|
||||
47 2 28 17 29
|
||||
48 25 17 18 12
|
||||
49 26 30 18 12
|
||||
50 26 31 18 12
|
||||
51 27 17 18 30
|
||||
52 27 17 18 31
|
||||
53 2 30 18 31
|
||||
54 26 39 32 15
|
||||
55 47 15 32 33
|
||||
56 26 38 32 15
|
||||
57 48 39 32 33
|
||||
58 2 39 32 38
|
||||
59 48 38 32 33
|
||||
60 34 32 33 35
|
||||
61 32 32 33 34
|
||||
62 33 32 33 40
|
||||
63 34 34 33 35
|
||||
64 35 35 33 40
|
||||
65 33 34 33 40
|
||||
66 49 37 34 33
|
||||
67 48 41 34 33
|
||||
68 48 42 34 33
|
||||
69 3 37 34 41
|
||||
70 3 37 34 42
|
||||
71 2 41 34 42
|
||||
72 50 24 35 33
|
||||
73 22 34 37 36
|
||||
|
||||
Dihedrals
|
||||
|
||||
1 55 8 1 2 3
|
||||
2 3 8 1 2 9
|
||||
3 56 8 1 2 4
|
||||
4 55 7 1 2 3
|
||||
5 3 7 1 2 9
|
||||
6 56 7 1 2 4
|
||||
7 57 15 1 2 3
|
||||
8 58 15 1 2 9
|
||||
9 59 15 1 2 4
|
||||
10 28 8 1 15 14
|
||||
11 28 8 1 15 32
|
||||
12 60 2 1 15 14
|
||||
13 60 2 1 15 32
|
||||
14 28 7 1 15 14
|
||||
15 28 7 1 15 32
|
||||
16 61 6 3 2 1
|
||||
17 55 10 3 2 1
|
||||
18 55 11 3 2 1
|
||||
19 6 6 3 2 9
|
||||
20 3 10 3 2 9
|
||||
21 3 11 3 2 9
|
||||
22 62 6 3 2 4
|
||||
23 56 10 3 2 4
|
||||
24 56 11 3 2 4
|
||||
25 63 1 2 4 25
|
||||
26 63 3 2 4 25
|
||||
27 64 9 2 4 25
|
||||
28 8 2 3 6 5
|
||||
29 7 10 3 6 5
|
||||
30 7 11 3 6 5
|
||||
31 27 14 13 12 18
|
||||
32 28 20 13 12 18
|
||||
33 28 21 13 12 18
|
||||
34 29 14 13 12 19
|
||||
35 30 20 13 12 19
|
||||
36 30 21 13 12 19
|
||||
37 27 17 18 12 13
|
||||
38 28 30 18 12 13
|
||||
39 28 31 18 12 13
|
||||
40 29 17 18 12 19
|
||||
41 30 30 18 12 19
|
||||
42 30 31 18 12 19
|
||||
43 31 12 13 14 15
|
||||
44 32 22 14 13 12
|
||||
45 32 23 14 13 12
|
||||
46 32 20 13 14 15
|
||||
47 33 20 13 14 22
|
||||
48 33 20 13 14 23
|
||||
49 32 21 13 14 15
|
||||
50 33 21 13 14 22
|
||||
51 33 21 13 14 23
|
||||
52 27 13 14 15 1
|
||||
53 27 13 14 15 32
|
||||
54 28 22 14 15 1
|
||||
55 28 22 14 15 32
|
||||
56 28 23 14 15 1
|
||||
57 28 23 14 15 32
|
||||
58 28 39 32 15 1
|
||||
59 46 33 32 15 1
|
||||
60 28 38 32 15 1
|
||||
61 28 39 32 15 14
|
||||
62 46 33 32 15 14
|
||||
63 28 38 32 15 14
|
||||
64 29 18 17 16 26
|
||||
65 30 28 17 16 26
|
||||
66 30 29 17 16 26
|
||||
67 29 18 17 16 27
|
||||
68 30 28 17 16 27
|
||||
69 30 29 17 16 27
|
||||
70 31 16 17 18 12
|
||||
71 32 30 18 17 16
|
||||
72 32 31 18 17 16
|
||||
73 32 28 17 18 12
|
||||
74 33 28 17 18 30
|
||||
75 33 28 17 18 31
|
||||
76 32 29 17 18 12
|
||||
77 33 29 17 18 30
|
||||
78 33 29 17 18 31
|
||||
79 45 15 32 33 35
|
||||
80 43 15 32 33 34
|
||||
81 44 15 32 33 40
|
||||
82 42 39 32 33 35
|
||||
83 40 39 32 33 34
|
||||
84 41 39 32 33 40
|
||||
85 42 38 32 33 35
|
||||
86 40 38 32 33 34
|
||||
87 41 38 32 33 40
|
||||
88 65 24 35 33 32
|
||||
89 65 24 35 33 34
|
||||
90 66 24 35 33 40
|
||||
91 48 37 34 33 32
|
||||
92 40 41 34 33 32
|
||||
93 40 42 34 33 32
|
||||
94 50 37 34 33 35
|
||||
95 42 41 34 33 35
|
||||
96 42 42 34 33 35
|
||||
97 49 37 34 33 40
|
||||
98 41 41 34 33 40
|
||||
99 41 42 34 33 40
|
||||
100 51 33 34 37 36
|
||||
101 7 41 34 37 36
|
||||
102 7 42 34 37 36
|
||||
|
||||
Impropers
|
||||
|
||||
1 4 13 12 18 19
|
||||
2 22 1 15 14 32
|
||||
3 5 17 16 26 27
|
||||
4 1 2 1 8 7
|
||||
5 1 2 1 8 15
|
||||
6 1 8 1 7 15
|
||||
7 1 2 1 7 15
|
||||
8 1 1 2 3 9
|
||||
9 1 1 2 3 4
|
||||
10 1 1 2 4 9
|
||||
11 1 3 2 4 9
|
||||
12 1 2 3 6 10
|
||||
13 1 2 3 6 11
|
||||
14 1 2 3 10 11
|
||||
15 1 6 3 10 11
|
||||
16 1 14 13 20 12
|
||||
17 1 14 13 21 12
|
||||
18 1 20 13 21 12
|
||||
19 1 14 13 20 21
|
||||
20 1 13 14 22 15
|
||||
21 1 13 14 23 15
|
||||
22 1 13 14 22 23
|
||||
23 1 22 14 23 15
|
||||
24 1 18 17 28 16
|
||||
25 1 18 17 29 16
|
||||
26 1 28 17 29 16
|
||||
27 1 18 17 28 29
|
||||
28 1 17 18 30 12
|
||||
29 1 17 18 31 12
|
||||
30 1 30 18 31 12
|
||||
31 1 17 18 30 31
|
||||
32 1 39 32 15 33
|
||||
33 1 39 32 38 15
|
||||
34 1 38 32 15 33
|
||||
35 1 39 32 38 33
|
||||
36 1 32 33 34 35
|
||||
37 1 32 33 35 40
|
||||
38 1 32 33 34 40
|
||||
39 1 34 33 35 40
|
||||
40 1 37 34 41 33
|
||||
41 1 37 34 42 33
|
||||
42 1 41 34 42 33
|
||||
43 1 37 34 41 42
|
||||
1582
examples/USER/reaction/tiny_epoxy/tiny_epoxy.data
Normal file
1582
examples/USER/reaction/tiny_epoxy/tiny_epoxy.data
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user