Compare commits

..

165 Commits

Author SHA1 Message Date
dc1e31506e Merge pull request #1480 from akohlmey/next_version
Step version string for next release
2019-05-31 14:40:13 -04:00
68d69955d0 fix off-by-one error 2019-05-31 14:38:12 -04:00
5f657b9184 step version string for next release 2019-05-31 14:37:31 -04:00
3e4fd3dade Merge pull request #1484 from akohlmey/reneighbor-64-bit-restart-fix
Restart updates for fixes atom/swap, deposit, and gcmc
2019-05-31 13:05:53 -04:00
3e05b983c1 Merge pull request #1483 from akohlmey/cmake-workaround-for-gcc-9
Do not enable OpenMP by default for gcc 9.x with CMake
2019-05-31 13:05:37 -04:00
d8a30a9697 Merge pull request #1475 from akohlmey/collected-small-changes
Collected small changes for stable release
2019-05-31 13:05:21 -04:00
8b169d97f5 update documentation for updates to fix restarting 2019-05-31 00:58:10 -04:00
f73c848ee4 detect and error out when timestep was reset when restarting fixes atom/swap, gcmc, or deposit 2019-05-31 00:31:36 -04:00
4243af30d7 properly store 64-bit integers for next_reneighbor into double type buffers for restarts of fixes
also store number of attemps and number of successes in restart and retrieve those from it
2019-05-31 00:23:12 -04:00
9d51ee17b0 change the default for gcc 9.x and beyond to not enable OpenMP by default even if it is found to be supported
this is so that using CMake by default will compile LAMMPS, since gcc 9.x
expects different sharing semantics for constants than previous versions.
2019-05-30 22:23:50 -04:00
c903a110fe fix typo 2019-05-30 18:36:09 -04:00
02e7dd5716 also allow %e in format variables of suffix 2019-05-30 14:52:26 -04:00
1a5c3c6dcb add check that allows only %f and %g conversions in variable format strings 2019-05-30 14:46:07 -04:00
daac3f7102 Merge pull request #1419 from akohlmey/report-uninstalled-pkg-style
Improved error messages when a style is not found
2019-05-30 06:34:56 -04:00
3bf0a4ba63 Merge pull request #1474 from stanmoore1/nl_mem
Don't reallocate views every time in neigh_bond_kokkos
2019-05-30 06:30:54 -04:00
9cc16c4f33 Merge pull request #1479 from akohlmey/fixup_pair_quip
Correctly and fully support pair style hybrid and hybrid/overlay for pair style quip
2019-05-30 06:30:10 -04:00
8dcd6fc48c provide alternative to gettimeofday() for MSVC compilation 2019-05-29 20:13:26 -04:00
a48f1cbf00 fix spelling error 2019-05-29 20:07:00 -04:00
d3cbccff35 whitespace cleanup 2019-05-29 14:42:18 -04:00
29d36ffec0 error out when not using metal units with QUIP 2019-05-29 14:40:09 -04:00
fec2f8f69b update docs for fully supporting hybrid styles 2019-05-29 14:39:45 -04:00
c0cfceb95c fix off-by-one errors 2019-05-29 14:03:00 -04:00
12fcf5f5ef properly set up pair style quip for hybrid and hybrid/overlay 2019-05-29 14:00:33 -04:00
cb8d89855d remove limitation to hybrid/overlay 2019-05-29 13:59:51 -04:00
c8d50c04a4 avoid memory leak and initialize class member pointers 2019-05-29 10:12:24 -04:00
e82e1c695a correct links in package documentation 2019-05-24 19:45:48 -04:00
2ee02cfadd Don't reallocate views every time in neigh_bond_kokkos 2019-05-24 11:27:09 -06:00
cfad0634ac Merge pull request #1465 from akohlmey/collected-minor-changes
Collected small changes and bugfixes
2019-05-21 16:55:19 -04:00
bd05228c71 Merge pull request #1464 from akohlmey/group-group-coord-num
Add option to restrict coordination number by group
2019-05-21 16:55:05 -04:00
0f1e4b0504 Merge pull request #1467 from stanmoore1/eam_kk
Fix bug in pair_style eam/alloy/kk and pair_style eam/fs/kk
2019-05-21 16:54:51 -04:00
d0c6484fb0 add false positive 2019-05-20 15:15:51 -04:00
0349e9fee9 update/correct list of example folders 2019-05-20 15:08:33 -04:00
55116db8fb avoid segfault and print more meaningful error message with empty lines in coeff sections 2019-05-20 14:15:04 -04:00
1041934568 Fix bug in pair_eam_alloy_kokkos and pair_eam_fs_kokkos 2019-05-20 10:01:40 -06:00
50082c287d sphinxcontrib-spelling has been updated for Sphinx 2.x. remove enforcing to use old version 2019-05-18 15:41:38 -04:00
e3823a521c remove leftover references to removed MEAM package 2019-05-18 15:36:13 -04:00
35bb2ac2a3 fix typo 2019-05-18 09:25:20 -04:00
c7eb9a8626 there really isn't a problem with calling this compute multiple times 2019-05-17 15:26:35 -04:00
fb8d31422d fix typo 2019-05-16 09:06:17 -04:00
27a2d0cbd4 add option to restrict coordination number by group 2019-05-16 08:55:03 -04:00
7b264d35fa remove dead code 2019-05-15 14:53:51 -04:00
267782d689 Merge pull request #1459 from akohlmey/next-patch-release
Step version string for next patch release
2019-05-14 21:30:28 -04:00
f2b293d93b Merge pull request #1460 from akohlmey/collected-small-changes
Some more small changes
2019-05-14 17:55:36 -04:00
6e842ba84a fix typo 2019-05-14 17:36:26 -04:00
30dc7f70b5 correct repeated words in docs 2019-05-14 17:13:46 -04:00
98702cc0b9 Merge pull request #1461 from lammps/doc-tweak-hyper
add missing formatting info
2019-05-14 17:10:23 -04:00
67532684f9 add missing formatting info 2019-05-14 14:02:54 -06:00
2c51511325 update logfiles for SPIN package with cubic anisotropy 2019-05-14 15:49:41 -04:00
1d5ada136a should set one_coeff flag to 1 in potentials requiring 'pair_coeff * *' 2019-05-14 15:24:37 -04:00
4a4dcef7b7 whitespace cleanup in pair style e3b 2019-05-14 15:24:37 -04:00
4dc90b367e Merge pull request #1458 from wmbrownIntel/user-intel-bigbig
USER-INTEL: Changes to support LAMMPS_BIGBIG in USER-INTEL + fixed check for per-atom virials + fixed check for exclusion with offload.
2019-05-14 15:09:06 -04:00
091dbfa265 Merge pull request #1457 from julient31/fix_cubic_aniso
Adding a cubic anisotropy in the SPIN package, documentation corrections
2019-05-14 15:08:21 -04:00
a26dc1b356 allow using -DLAMMPS_BIGBIG also with CMake 2019-05-14 14:35:41 -04:00
d8fb17e2cb Step version string for next patch release 2019-05-14 10:01:43 -04:00
322c244bec Merge pull request #1456 from akohlmey/fix-mapping-for-KC-etc
Fix element mapping and a few other issues for interlayer potentials
2019-05-13 21:12:58 -04:00
60f6c3f3dc Merge pull request #1428 from sstrong99/e3b
add E3B water model to USER-MISC package
2019-05-13 21:12:26 -04:00
c911a44298 Merge pull request #1450 from akohlmey/cmake-latte-pass-cmake-settings
Pass more cmake settings to LATTE downloaded library build
2019-05-13 21:11:24 -04:00
52e3aeab33 revert incorrect changes in commands_list.txt 2019-05-13 21:05:26 -04:00
3a8b3a119f Merge pull request #1451 from rbberger/atom_vec_bond_kokkos_fix
Add missing molecule_flag=1 in atom_vec_bond_kokkos
2019-05-13 20:59:51 -04:00
8e18f2bf7e Commit2 JT 051319
- corrected doc issues
2019-05-13 17:32:44 -06:00
11f223416c Commit JT 051319
- added a cubic anisotropy in fix_precession_spin
- added associated doc and examples
- corrected neb/spin commands in doc/src/
- added tools/spin/ description
2019-05-13 16:59:39 -06:00
d3d4b420ba USER-INTEL: Changes to support LAMMPS_BIGBIG in USER-INTEL + fixed check for per-atom virials + fixed check for exclusion with offload. 2019-05-13 05:02:46 -07:00
805cc18b2d Merge branch 'master' into e3b 2019-05-12 22:22:31 -05:00
e228555aed more consistency changes for interlayer potentials 2019-05-11 17:05:27 -04:00
8eeb92b82b restore original coeff() code with one modification. now setflag is only set for pairs of types that both are mapped to elements (and thus not NULL) 2019-05-11 17:04:57 -04:00
c581e9349a update interlayer potential examples for now requiring CH.rebo potential file with rebo pair style 2019-05-11 16:46:21 -04:00
b2942cbafa correctly handle coeff statement for ilp/graphene/hbn 2019-05-10 21:07:54 -04:00
c86359966c error out when offset flag is unset via "pair_modify shift no" 2019-05-10 21:07:05 -04:00
a7c9560dc1 Merge pull request #1453 from mjwen/pair_drip
add pair style drip
2019-05-10 20:44:28 -04:00
03505a6c48 Merge pull request #1455 from lammps/doc-tweak
mis-labeling of some rigid fixes
2019-05-10 20:42:39 -04:00
238382e0ca fix handline of setflag and coeffs to correctly work with system, that have extra atom types. 2019-05-10 10:26:33 -04:00
2bc089db27 mis-labeling of some rigid fixes 2019-05-10 07:42:11 -06:00
799f4061f4 Merge pull request #3 from akohlmey/pair_drip
Update to master with refactored REBO pair style and adjusted examples
2019-05-09 12:18:11 -05:00
2f580380a4 adjust drip potential example for new requirements for pair style rebo. recreate log files 2019-05-09 12:29:38 -04:00
47cf17e5c8 Merge branch 'master' into pair_drip 2019-05-09 12:19:41 -04:00
928600a878 Merge pull request #1452 from akohlmey/github-rebo-bugfix
Resubmission of REBO bugfix for easier review
2019-05-09 12:18:05 -04:00
7b2d526f86 Merge pull request #1448 from akohlmey/collected-small-changes
Collected small changes and bugfixes
2019-05-09 12:17:19 -04:00
0034473e66 update legacy pdf manual input config 2019-05-08 10:19:21 -04:00
da75fc3eaa incorporate compute_pe_e3b into compute_pair 2019-05-08 09:05:09 -05:00
711cd4122f corrections to documentation and implementation of pair styles lj/mdf, buck/mdf, and lennard/mdf 2019-05-07 19:52:00 -04:00
45e6ed018e correct formula for lennard/mdf potential 2019-05-07 19:45:13 -04:00
8c193b8c42 add support for write_data/write_coeff to pair style lj/mdf 2019-05-07 19:28:19 -04:00
12f8834b80 correction of the incomplete implementation warning in write_coeff 2019-05-07 19:26:57 -04:00
6c3cae8823 remove unused vars 2019-05-07 15:37:45 -05:00
1d1611ce44 init del3 to silence valgrind errors 2019-05-07 15:35:37 -05:00
a87d8e124f Merge pull request #1449 from akohlmey/fix-print-w-variable-step
Support using a variable instead of a constant interval for fix print
2019-05-06 12:10:42 -04:00
cc30688137 Merge pull request #1364 from stanmoore1/kk_binsize
Change defaults for KOKKOS package
2019-05-06 12:10:08 -04:00
b3f4e2055e Merge pull request #1438 from giacomofiorin/colvars-update
Update Colvars library to version 2019-04-26
2019-05-06 12:08:50 -04:00
8212dca609 Merge pull request #1447 from ohenrich/user-cgdna
Homogenised label of relative hbond and stk strength to conform with oxDNA literature
2019-05-06 12:07:41 -04:00
319ed5dd48 Merge pull request #2 from akohlmey/pair_drip
Silence warnings about unused variables and parameters, minor tweaks
2019-05-05 09:29:00 -05:00
bac8b267df make sure fix deform related variables are always initialized to avoid issues with the DomainOMP class. 2019-05-05 10:26:27 -04:00
da6e576ffd silence warnings about unused variables and parameters, minor tweaks 2019-05-05 10:17:45 -04:00
f163d7dc9b typo fix 2019-05-05 08:56:15 -05:00
a354b52e3c Merge pull request #1 from akohlmey/pair_drip
Pair drip updates required for merging into LAMMPS upstream
2019-05-05 08:41:51 -05:00
0a4b0cf019 add pair style drip to .gitignore 2019-05-05 09:20:10 -04:00
4d4219ca3e integrate drip pair style more closely into manual 2019-05-05 08:59:03 -04:00
d86a7b95de fix spelling issues 2019-05-05 08:48:27 -04:00
db54b03751 Force line length to 80 2019-05-04 22:55:22 -05:00
24e41bc085 Update doc and examples due to the change of parameters 2019-05-04 22:24:05 -05:00
c28cf9f742 set variant flag in USER-INTEL (AI)REBO(-M) styles 2019-05-04 20:53:43 -04:00
fd3eade6d2 update reference date and examples for changes in REBO 2019-05-04 20:42:36 -04:00
1214e6ea79 align USER-INTEL versions of REBO/AIREBO with MANYBODY implementation 2019-05-04 20:08:34 -04:00
c2b2be5d6f Merge branch 'master' into github-rebo-bugfix 2019-05-04 19:09:52 -04:00
81d3fa77bb Add missing molecule_flag=1 in atom_vec_bond_kokkos 2019-05-04 17:42:21 -04:00
a7226bd93d remove unused variables 2019-05-04 15:12:31 -04:00
66f7f2a5ef pass more cmake settings to LATTE downloaded library build 2019-05-04 15:11:53 -04:00
a70f9c4f95 support using a variable instead of a constant interval for fix print 2019-05-04 13:47:57 -04:00
3baf15ed6f apply bugfix from PR #1446 to allow switching from variable thermo output back to evenly spaced 2019-05-04 11:35:18 -04:00
d7dd78126c Homogenised label of relative hbond and stk strength to conform with oxDNA literature 2019-05-02 16:48:41 +01:00
97ce76e759 Merge pull request #1444 from akohlmey/fix-intel-lrt-bug
CMake update for verlet/lrt/intel
2019-05-01 16:19:37 -04:00
d7da1db745 teach CMake that verlet/lrt/intel depends on KSPACE 2019-05-01 08:20:24 -04:00
7e00acce53 Update Colvars library to version 2019-04-26
The following is list of relevant issues fixed and improvements:

Fix forces and missing output of runtime histogram for histogramRestraint
https://github.com/Colvars/colvars/pull/246

Use fix_modify to add configuration to Colvars:
https://github.com/Colvars/colvars/pull/216

Fix componentCoeff and name not working with orientationAngle components:
https://github.com/Colvars/colvars/issues/213

Fix 1-timestep offset with extendedLagrangian:
https://github.com/Colvars/colvars/pull/210

Changes to improve compiler support:
https://github.com/Colvars/colvars/pull/203

Fix ignored anisotropic cutoff3 for groupCoordNum:
https://github.com/Colvars/colvars/pull/202

New dipoleMagnitude variable:
https://github.com/Colvars/colvars/pull/198

Parser improvements:
https://github.com/Colvars/colvars/pull/196
2019-04-30 13:46:37 -04:00
d3327ffd16 add new optional styles to .gitignore 2019-04-25 19:03:00 -04:00
795cdf456f simplify example and skip the system generation step, so it gives consistent results in serial and parallel 2019-04-25 19:02:35 -04:00
e481c5f35b Merge branch 'e3b' of github.com:sstrong99/lammps into e3b 2019-04-25 17:49:50 -05:00
5df8a42e24 dont set manybody_flag 2019-04-25 17:49:38 -05:00
21d0a16b6f minor tweak 2019-04-25 18:06:09 -04:00
a9388e86e3 add one more false positive 2019-04-25 18:00:27 -04:00
80af0281d1 replace non-ASCII characters 2019-04-25 17:54:27 -04:00
8882436078 add e3b styles to legacy documentation build 2019-04-25 17:49:35 -04:00
47d4aa6803 add new false positives 2019-04-24 17:35:17 -05:00
f548e2717e add new false positives 2019-04-24 17:31:44 -05:00
4c19eab64c Bugfix no 3 nearest neighbors for ghost atoms near boundary 2019-04-23 14:39:47 -05:00
c6d0f7ca87 Update equations 2019-04-19 14:27:03 -05:00
ba7882c1ff Add parameter file and example 2019-04-19 14:17:57 -05:00
d3c5d7e423 Add documentation 2019-04-19 13:56:26 -05:00
dec1ad19b5 added e3b.jpg 2019-04-19 10:33:51 -05:00
941281e9e9 fixed isnan error 2019-04-18 10:11:00 -05:00
e700ccd4df Update header 2019-04-17 22:11:24 -05:00
4621af4b9d Modify to accept NULL for pair_coeff 2019-04-17 21:34:55 -05:00
f27ed871f9 Uncrustify code 2019-04-17 18:11:31 -05:00
16bb8a1439 Clean up comments 2019-04-17 16:58:18 -05:00
d6f3a95599 Remove unused variables and methods 2019-04-17 10:53:45 -05:00
cb30414820 Add contribution to virial and atom virial 2019-04-17 10:05:05 -05:00
82a87322ed Get the same forces as KIM implementation 2019-04-16 16:54:17 -05:00
5fb164d586 Get total energy correct 2019-04-16 15:04:16 -05:00
4c565db9af update contrib authors 2019-04-16 11:50:33 -05:00
0eebb31903 update contact info 2019-04-16 11:48:45 -05:00
69e7a2a237 add e3b water model 2019-04-16 11:32:47 -05:00
835fce7a5e Copy all function from KIM implementation to PairDRIP 2019-04-16 10:51:20 -05:00
fdaa3f48e9 Modify all methods other than compute 2019-04-15 22:38:51 -05:00
2bdd9b7544 Remove single 2019-04-15 20:14:10 -05:00
100f17077c Create pair_drip by copying KC files 2019-04-15 19:27:41 -05:00
c11b1edc1f Avoid spell checker error 2019-04-08 16:35:36 -06:00
db74f14f33 Merge branch 'master' into report-uninstalled-pkg-style
# Conflicts:
#	cmake/CMakeLists.txt
2019-04-08 17:16:30 -04:00
69c1a7954a correct test for leftovers from conventional builds 2019-04-08 17:14:59 -04:00
fbda72891c Fix spelling error 2019-04-08 13:41:33 -06:00
ece46dbfa5 Small tweak to Kokkos docs 2019-04-08 13:12:21 -06:00
2bb69773d3 Update Kokkos docs 2019-04-08 13:07:29 -06:00
77d80c84c9 Change defaults for KOKKOS package 2019-04-08 12:37:49 -06:00
aa336c2bb4 Merge branch 'master' into kk_binsize 2019-04-08 12:07:58 -06:00
f2113ab04a update manual and headers for updated error message 2019-04-08 07:16:22 -04:00
dc40886d23 improve comments and formatting 2019-04-08 06:40:39 -04:00
6ee002d6cf add cmake support for enhanced missing style error reports 2019-04-07 22:32:31 -04:00
d640c712f8 apply new utility function to most places creating new styles 2019-04-07 21:18:20 -04:00
9166001041 add code to allow reporting which styles are part of what package 2019-04-07 20:55:00 -04:00
2fbf86a58d add support for creating packages_*.h files in conventional make 2019-04-07 20:52:15 -04:00
0d73fe99fd Update Kokkos docs 2019-03-12 15:34:12 -06:00
b51d06b3ea Change default binsize for Kokkos if running on GPUs 2019-03-12 15:33:28 -06:00
41ccf832bf update log files 2018-12-30 04:30:58 -05:00
6d5ab3dac1 Merge branch 'github-rebo-bugfix' of https://github.com/CF17/lammps into test-rebo
# Conflicts:
#	examples/airebo/log.23Jun17.airebo-m.g++.1
#	examples/airebo/log.23Jun17.airebo-m.g++.4
#	examples/airebo/log.23Jun17.airebo.g++.1
#	examples/airebo/log.23Jun17.airebo.g++.4
#	examples/airebo/log.27Nov18.airebo-m.g++.1
#	examples/airebo/log.27Nov18.airebo-m.g++.4
#	examples/airebo/log.27Nov18.airebo.g++.1
#	examples/airebo/log.27Nov18.airebo.g++.4
#	examples/airebo/log.29Jun18.airebo-m.g++.1
#	examples/airebo/log.29Jun18.airebo-m.g++.4
#	examples/airebo/log.29Jun18.airebo.g++.1
#	examples/airebo/log.29Jun18.airebo.g++.4
2018-12-30 03:44:38 -05:00
e51720a2de add code to detect inconistent use of AIREBO/REBO potential files 2018-11-20 13:59:14 -05:00
dcffeb546f update AIREBO/REBO examples and provide references for rebo and airebo with LJ and TORSION turned off 2018-11-20 13:56:46 -05:00
1235e77199 implemented recommended change to remove global class member 2018-11-20 13:56:46 -05:00
c59b3439c6 changes the values of some parameters in REBO in accordance to the original Brenner paper 2018-11-20 13:56:46 -05:00
267 changed files with 52239 additions and 4966 deletions

View File

@ -87,7 +87,8 @@ string(TOUPPER "${CMAKE_BUILD_TYPE}" BTYPE)
# this is fast, so check for it all the time
message(STATUS "Running check for auto-generated files from make-based build system")
file(GLOB SRC_AUTOGEN_FILES ${LAMMPS_SOURCE_DIR}/style_*.h)
list(APPEND SRC_AUTOGEN_FILES ${LAMMPS_SOURCE_DIR}/lmpinstalledpkgs.h ${LAMMPS_SOURCE_DIR}/lmpgitversion.h)
file(GLOB SRC_AUTOGEN_PACKAGES ${LAMMPS_SOURCE_DIR}/packages_*.h)
list(APPEND SRC_AUTOGEN_FILES ${SRC_AUTOGEN_PACKAGES} ${LAMMPS_SOURCE_DIR}/lmpinstalledpkgs.h ${LAMMPS_SOURCE_DIR}/lmpgitversion.h)
foreach(_SRC ${SRC_AUTOGEN_FILES})
get_filename_component(FILENAME "${_SRC}" NAME)
if(EXISTS ${LAMMPS_SOURCE_DIR}/${FILENAME})
@ -172,21 +173,17 @@ set(LAMMPS_LINK_LIBS)
set(LAMMPS_DEPS)
set(LAMMPS_API_DEFINES)
set(DEFAULT_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS DIPOLE GRANULAR
KSPACE MANYBODY MC MESSAGE MISC MOLECULE PERI REPLICA RIGID SHOCK
SPIN SNAP SRD KIM PYTHON MSCG MPIIO VORONOI POEMS LATTE 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)
set(DEFAULT_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE
GRANULAR KSPACE LATTE MANYBODY MC MESSAGE MISC MOLECULE PERI POEMS QEQ
REPLICA RIGID SHOCK SPIN SNAP SRD KIM PYTHON MSCG MPIIO VORONOI
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)
set(ACCEL_PACKAGES USER-OMP KOKKOS OPT USER-INTEL GPU)
set(OTHER_PACKAGES CORESHELL QEQ)
foreach(PKG ${DEFAULT_PACKAGES})
option(PKG_${PKG} "Build ${PKG} Package" OFF)
endforeach()
foreach(PKG ${ACCEL_PACKAGES} ${OTHER_PACKAGES})
foreach(PKG ${DEFAULT_PACKAGES} ${ACCEL_PACKAGES})
option(PKG_${PKG} "Build ${PKG} Package" OFF)
endforeach()
@ -203,7 +200,6 @@ endif()
include_directories(${LAMMPS_SOURCE_DIR})
if(PKG_USER-ADIOS)
# The search for ADIOS2 must come before MPI because
# it includes its own MPI search with the latest FindMPI.cmake
@ -213,7 +209,6 @@ if(PKG_USER-ADIOS)
list(APPEND LAMMPS_LINK_LIBS adios2::adios2)
endif()
# do MPI detection after language activation, if MPI for these language is required
find_package(MPI QUIET)
option(BUILD_MPI "Build MPI version" ${MPI_FOUND})
@ -233,7 +228,6 @@ else()
list(APPEND LAMMPS_LINK_LIBS mpi_stubs)
endif()
set(LAMMPS_SIZES "smallbig" CACHE STRING "LAMMPS integer sizes (smallsmall: all 32-bit, smallbig: 64-bit #atoms #timesteps, bigbig: also 64-bit imageint, 64-bit atom ids)")
set(LAMMPS_SIZES_VALUES smallbig bigbig smallsmall)
set_property(CACHE LAMMPS_SIZES PROPERTY STRINGS ${LAMMPS_SIZES_VALUES})
@ -322,7 +316,18 @@ pkg_depends(USER-SCAFACOS MPI)
include(CheckIncludeFileCXX)
find_package(OpenMP QUIET)
option(BUILD_OMP "Build with OpenMP support" ${OpenMP_FOUND})
# TODO: this is a temporary workaround until a better solution is found. AK 2019-05-30
# GNU GCC 9.x uses settings incompatible with our use of 'default(none)' in OpenMP pragmas
# where we assume older GCC semantics. For the time being, we disable OpenMP by default
# for GCC 9.x and beyond. People may manually turn it on, but need to run the script
# src/USER-OMP/hack_openmp_for_pgi_gcc9.sh on all sources to make it compatible with gcc 9.
if ((${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU") AND (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 9.0.0))
option(BUILD_OMP "Build with OpenMP support" OFF)
else()
option(BUILD_OMP "Build with OpenMP support" ${OpenMP_FOUND})
endif()
if(BUILD_OMP)
find_package(OpenMP REQUIRED)
check_include_file_cxx(omp.h HAVE_OMP_H_INCLUDE)
@ -446,7 +451,6 @@ else()
set(CUDA_REQUEST_PIC)
endif()
if(PKG_VORONOI)
find_package(VORO)
if(VORO_FOUND)
@ -504,7 +508,10 @@ if(PKG_LATTE)
URL https://github.com/lanl/LATTE/archive/v1.2.1.tar.gz
URL_MD5 85ac414fdada2d04619c8f936344df14
SOURCE_SUBDIR cmake
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> ${CMAKE_REQUEST_PIC} -DBLAS_LIBRARIES=${BLAS_LIBRARIES} -DLAPACK_LIBRARIES=${LAPACK_LIBRARIES}
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> ${CMAKE_REQUEST_PIC}
-DBLAS_LIBRARIES=${BLAS_LIBRARIES} -DLAPACK_LIBRARIES=${LAPACK_LIBRARIES}
-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER} -DCMAKE_Fortran_FLAGS=${CMAKE_Fortran_FLAGS}
-DCMAKE_Fortran_FLAGS_${BTYPE}=${CMAKE_Fortran_FLAGS_${BTYPE}} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
)
ExternalProject_get_property(latte_build INSTALL_DIR)
set(LATTE_LIBRARIES ${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/liblatte.a)
@ -892,6 +899,8 @@ foreach(PKG ${DEFAULT_PACKAGES})
list(APPEND LIB_SOURCES ${${PKG}_SOURCES})
include_directories(${${PKG}_SOURCES_DIR})
endif()
RegisterPackages(${${PKG}_SOURCES_DIR})
endforeach()
# packages that need defines set
@ -910,6 +919,8 @@ foreach(PKG ${ACCEL_PACKAGES})
# check for package files in src directory due to old make system
DetectBuildSystemConflict(${LAMMPS_SOURCE_DIR} ${${PKG}_SOURCES} ${${PKG}_HEADERS})
RegisterPackages(${${PKG}_SOURCES_DIR})
endforeach()
##############################################
@ -958,7 +969,6 @@ if(PKG_USER-H5MD)
include_directories(${HDF5_INCLUDE_DIRS})
endif()
######################################################################
# packages which selectively include variants based on enabled styles
# e.g. accelerator packages
@ -1124,9 +1134,6 @@ if(PKG_OPT)
endif()
if(PKG_USER-INTEL)
if(LAMMPS_SIZES STREQUAL BIGBIG)
message(FATAL_ERROR "The USER-INTEL Package is not compatible with -DLAMMPS_BIGBIG")
endif()
add_definitions(-DLMP_USER_INTEL)
set(INTEL_ARCH "cpu" CACHE STRING "Architectures used by USER-INTEL (cpu or knl)")
@ -1220,8 +1227,7 @@ if(PKG_USER-INTEL)
${USER-INTEL_SOURCES_DIR}/fix_nh_intel.cpp
${USER-INTEL_SOURCES_DIR}/intel_buffers.cpp
${USER-INTEL_SOURCES_DIR}/nbin_intel.cpp
${USER-INTEL_SOURCES_DIR}/npair_intel.cpp
${USER-INTEL_SOURCES_DIR}/verlet_lrt_intel.cpp)
${USER-INTEL_SOURCES_DIR}/npair_intel.cpp)
set_property(GLOBAL PROPERTY "USER-INTEL_SOURCES" "${USER-INTEL_SOURCES}")
@ -1230,9 +1236,12 @@ if(PKG_USER-INTEL)
RegisterNBinStyle(${USER-INTEL_SOURCES_DIR}/nbin_intel.h)
RegisterNPairStyle(${USER-INTEL_SOURCES_DIR}/npair_intel.h)
RegisterFixStyle(${USER-INTEL_SOURCES_DIR}/fix_intel.h)
RegisterIntegrateStyle(${USER-INTEL_SOURCES_DIR}/verlet_lrt_intel.h)
get_property(USER-INTEL_SOURCES GLOBAL PROPERTY USER-INTEL_SOURCES)
if(PKG_KSPACE)
list(APPEND USER-INTEL_SOURCES ${USER-INTEL_SOURCES_DIR}/verlet_lrt_intel.cpp)
RegisterIntegrateStyle(${USER-INTEL_SOURCES_DIR}/verlet_lrt_intel.h)
endif()
list(APPEND LIB_SOURCES ${USER-INTEL_SOURCES})
include_directories(${USER-INTEL_SOURCES_DIR})
@ -1436,10 +1445,12 @@ endif()
######################################################
# Generate style headers based on global list of
# styles registered during package selection
# Generate packages headers from all packages
######################################################
set(LAMMPS_STYLE_HEADERS_DIR ${CMAKE_CURRENT_BINARY_DIR}/styles)
GenerateStyleHeaders(${LAMMPS_STYLE_HEADERS_DIR})
GeneratePackagesHeaders(${LAMMPS_STYLE_HEADERS_DIR})
include_directories(${LAMMPS_STYLE_HEADERS_DIR})
@ -1448,7 +1459,7 @@ include_directories(${LAMMPS_STYLE_HEADERS_DIR})
######################################
set(temp "#ifndef LMP_INSTALLED_PKGS_H\n#define LMP_INSTALLED_PKGS_H\n")
set(temp "${temp}const char * LAMMPS_NS::LAMMPS::installed_packages[] = {\n")
set(temp_PKG_LIST ${DEFAULT_PACKAGES} ${ACCEL_PACKAGES} ${OTHER_PACKAGES})
set(temp_PKG_LIST ${DEFAULT_PACKAGES} ${ACCEL_PACKAGES})
list(SORT temp_PKG_LIST)
foreach(PKG ${temp_PKG_LIST})
if(PKG_${PKG})
@ -1527,8 +1538,6 @@ if(BUILD_EXE)
endif()
###############################################################################
# Build documentation
###############################################################################
@ -1681,7 +1690,7 @@ endif()
###############################################################################
# Print package summary
###############################################################################
foreach(PKG ${DEFAULT_PACKAGES} ${ACCEL_PACKAGES} ${OTHER_PACKAGES})
foreach(PKG ${DEFAULT_PACKAGES} ${ACCEL_PACKAGES})
if(PKG_${PKG})
message(STATUS "Building package: ${PKG}")
endif()

View File

@ -181,3 +181,88 @@ function(DetectBuildSystemConflict lammps_src_dir)
endforeach()
endif()
endfunction(DetectBuildSystemConflict)
function(FindPackagesHeaders path style_class file_pattern headers)
file(GLOB files "${path}/${file_pattern}*.h")
get_property(plist GLOBAL PROPERTY ${headers})
foreach(file_name ${files})
file(STRINGS ${file_name} is_style LIMIT_COUNT 1 REGEX ${style_class})
if(is_style)
list(APPEND plist ${file_name})
endif()
endforeach()
set_property(GLOBAL PROPERTY ${headers} "${plist}")
endfunction(FindPackagesHeaders)
function(RegisterPackages search_path)
FindPackagesHeaders(${search_path} ANGLE_CLASS angle_ PKGANGLE ) # angle ) # force
FindPackagesHeaders(${search_path} ATOM_CLASS atom_vec_ PKGATOM_VEC ) # atom ) # atom atom_vec_hybrid
FindPackagesHeaders(${search_path} BODY_CLASS body_ PKGBODY ) # body ) # atom_vec_body
FindPackagesHeaders(${search_path} BOND_CLASS bond_ PKGBOND ) # bond ) # force
FindPackagesHeaders(${search_path} COMMAND_CLASS "[^.]" PKGCOMMAND ) # command ) # input
FindPackagesHeaders(${search_path} COMPUTE_CLASS compute_ PKGCOMPUTE ) # compute ) # modify
FindPackagesHeaders(${search_path} DIHEDRAL_CLASS dihedral_ PKGDIHEDRAL ) # dihedral ) # force
FindPackagesHeaders(${search_path} DUMP_CLASS dump_ PKGDUMP ) # dump ) # output write_dump
FindPackagesHeaders(${search_path} FIX_CLASS fix_ PKGFIX ) # fix ) # modify
FindPackagesHeaders(${search_path} IMPROPER_CLASS improper_ PKGIMPROPER ) # improper ) # force
FindPackagesHeaders(${search_path} INTEGRATE_CLASS "[^.]" PKGINTEGRATE ) # integrate ) # update
FindPackagesHeaders(${search_path} KSPACE_CLASS "[^.]" PKGKSPACE ) # kspace ) # force
FindPackagesHeaders(${search_path} MINIMIZE_CLASS min_ PKGMINIMIZE ) # minimize ) # update
FindPackagesHeaders(${search_path} NBIN_CLASS nbin_ PKGNBIN ) # nbin ) # neighbor
FindPackagesHeaders(${search_path} NPAIR_CLASS npair_ PKGNPAIR ) # npair ) # neighbor
FindPackagesHeaders(${search_path} NSTENCIL_CLASS nstencil_ PKGNSTENCIL ) # nstencil ) # neighbor
FindPackagesHeaders(${search_path} NTOPO_CLASS ntopo_ PKGNTOPO ) # ntopo ) # neighbor
FindPackagesHeaders(${search_path} PAIR_CLASS pair_ PKGPAIR ) # pair ) # force
FindPackagesHeaders(${search_path} READER_CLASS reader_ PKGREADER ) # reader ) # read_dump
FindPackagesHeaders(${search_path} REGION_CLASS region_ PKGREGION ) # region ) # domain
endfunction(RegisterPackages)
function(CreatePackagesHeader path filename)
set(temp "")
if(ARGC GREATER 2)
list(REMOVE_AT ARGV 0 1)
foreach(FNAME ${ARGV})
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS "${FNAME}")
get_filename_component(DNAME ${FNAME} DIRECTORY)
get_filename_component(DNAME ${DNAME} NAME)
get_filename_component(FNAME ${FNAME} NAME)
set(temp "${temp}#undef PACKAGE\n#define PACKAGE \"${DNAME}\"\n")
set(temp "${temp}#include \"${DNAME}/${FNAME}\"\n")
endforeach()
endif()
message(STATUS "Generating ${filename}...")
file(WRITE "${path}/${filename}.tmp" "${temp}" )
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different "${path}/${filename}.tmp" "${path}/${filename}")
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS "${path}/${filename}")
endfunction(CreatePackagesHeader)
function(GeneratePackagesHeader path property style)
get_property(files GLOBAL PROPERTY ${property})
CreatePackagesHeader("${path}" "packages_${style}.h" ${files})
endfunction(GeneratePackagesHeader)
function(GeneratePackagesHeaders output_path)
GeneratePackagesHeader(${output_path} PKGANGLE angle ) # force
GeneratePackagesHeader(${output_path} PKGATOM_VEC atom ) # atom atom_vec_hybrid
GeneratePackagesHeader(${output_path} PKGBODY body ) # atom_vec_body
GeneratePackagesHeader(${output_path} PKGBOND bond ) # force
GeneratePackagesHeader(${output_path} PKGCOMMAND command ) # input
GeneratePackagesHeader(${output_path} PKGCOMPUTE compute ) # modify
GeneratePackagesHeader(${output_path} PKGDIHEDRAL dihedral ) # force
GeneratePackagesHeader(${output_path} PKGDUMP dump ) # output write_dump
GeneratePackagesHeader(${output_path} PKGFIX fix ) # modify
GeneratePackagesHeader(${output_path} PKGIMPROPER improper ) # force
GeneratePackagesHeader(${output_path} PKGINTEGRATE integrate ) # update
GeneratePackagesHeader(${output_path} PKGKSPACE kspace ) # force
GeneratePackagesHeader(${output_path} PKGMINIMIZE minimize ) # update
GeneratePackagesHeader(${output_path} PKGNBIN nbin ) # neighbor
GeneratePackagesHeader(${output_path} PKGNPAIR npair ) # neighbor
GeneratePackagesHeader(${output_path} PKGNSTENCIL nstencil ) # neighbor
GeneratePackagesHeader(${output_path} PKGNTOPO ntopo ) # neighbor
GeneratePackagesHeader(${output_path} PKGPAIR pair ) # force
GeneratePackagesHeader(${output_path} PKGREADER reader ) # read_dump
GeneratePackagesHeader(${output_path} PKGREGION region ) # domain
endfunction(GeneratePackagesHeaders)

View File

@ -211,7 +211,7 @@ $(VENV):
@( \
$(VIRTUALENV) -p $(PYTHON) $(VENV); \
. $(VENV)/bin/activate; \
pip install Sphinx==1.7.6; \
pip install Sphinx; \
deactivate;\
)

View File

@ -1,4 +1,4 @@
.TH LAMMPS "30 April 2019" "2019-04-30"
.TH LAMMPS "31 May 2019" "2019-05-31"
.SH NAME
.B LAMMPS
\- Molecular Dynamics Simulator.

View File

@ -30,7 +30,6 @@ This is the list of packages that may require additional steps.
"KIM"_#kim,
"KOKKOS"_#kokkos,
"LATTE"_#latte,
"MEAM"_#meam,
"MESSAGE"_#message,
"MSCG"_#mscg,
"OPT"_#opt,
@ -247,7 +246,10 @@ Maxwell50 = NVIDIA Maxwell generation CC 5.0
Maxwell52 = NVIDIA Maxwell generation CC 5.2
Maxwell53 = NVIDIA Maxwell generation CC 5.3
Pascal60 = NVIDIA Pascal generation CC 6.0
Pascal61 = NVIDIA Pascal generation CC 6.1 :ul
Pascal61 = NVIDIA Pascal generation CC 6.1
Volta70 = NVIDIA Volta generation CC 7.0
Volta72 = NVIDIA Volta generation CC 7.2
Turing75 = NVIDIA Turing generation CC 7.5 :ul
[CMake build]:
@ -348,49 +350,6 @@ the compiler you use on your system to build LATTE.
:line
MEAM package :h4,link(meam)
NOTE: the use of the MEAM package is discouraged, as it has been
superseded by the USER-MEAMC package, which is a direct translation of
the Fortran code in the MEAM library to C++. The code in USER-MEAMC
should be functionally equivalent to the MEAM package, fully supports
use of "pair_style hybrid"_pair_hybrid.html (the MEAM package does
not), and has optimizations that make it significantly faster than the
MEAM package.
[CMake build]:
No additional settings are needed besides "-D PKG_MEAM=yes".
[Traditional make]:
Before building LAMMPS, you must build the MEAM library in lib/meam.
You can build the MEAM library manually if you prefer; follow the
instructions in lib/meam/README. You can also do it in one step from
the lammps/src dir, using a command like these, which simply invoke
the lib/meam/Install.py script with the specified args:
make lib-meam # print help message
make lib-meam args="-m mpi" # build with default Fortran compiler compatible with your MPI library
make lib-meam args="-m serial" # build with compiler compatible with "make serial" (GNU Fortran)
make lib-meam args="-m ifort" # build with Intel Fortran compiler using Makefile.ifort :pre
NOTE: You should test building the MEAM library with both the Intel
and GNU compilers to see if a simulation runs faster with one versus
the other on your system.
The build should produce two files: lib/meam/libmeam.a and
lib/meam/Makefile.lammps. The latter is copied from an existing
Makefile.lammps.* and has settings needed to link C++ (LAMMPS) with
Fortran (MEAM library). Typically the two compilers used for LAMMPS
and the MEAM library need to be consistent (e.g. both Intel or both
GNU compilers). If necessary, you can edit/create a new
lib/meam/Makefile.machine file for your system, which should define an
EXTRAMAKE variable to specify a corresponding Makefile.lammps.machine
file.
:line
MESSAGE package :h4,link(message)
This package can optionally include support for messaging via sockets,

View File

@ -41,7 +41,6 @@ packages:
"KIM"_Build_extras.html#kim,
"KOKKOS"_Build_extras.html#kokkos,
"LATTE"_Build_extras.html#latte,
"MEAM"_Build_extras.html#meam,
"MESSAGE"_Build_extras.html#message,
"MSCG"_Build_extras.html#mscg,
"OPT"_Build_extras.html#opt,

View File

@ -83,7 +83,7 @@ An alphabetic list of all general LAMMPS commands.
"molecule"_molecule.html,
"ndx2group"_group2ndx.html,
"neb"_neb.html,
"neb_spin"_neb_spin.html,
"neb/spin"_neb_spin.html,
"neigh_modify"_neigh_modify.html,
"neighbor"_neighbor.html,
"newton"_newton.html,

View File

@ -80,6 +80,8 @@ OPT.
"dpd/fdt/energy (k)"_pair_dpd_fdt.html,
"dpd/tstat (go)"_pair_dpd.html,
"dsmc"_pair_dsmc.html,
"e3b"_pair_e3b.html,
"drip"_pair_drip.html,
"eam (gikot)"_pair_eam.html,
"eam/alloy (gikot)"_pair_eam.html,
"eam/cd (o)"_pair_eam.html,

BIN
doc/src/Eqs/e3b.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

15
doc/src/Eqs/e3b.tex Normal file
View File

@ -0,0 +1,15 @@
\documentclass[12pt]{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
E =& E_2 \sum_{i,j}e^{-k_2 r_{ij}} + E_A \sum_{\substack{i,j,k,\ell \\\in \textrm{type A}}} f(r_{ij})f(r_{k\ell}) + E_B \sum_{\substack{i,j,k,\ell \\\in \textrm{type B}}} f(r_{ij})f(r_{k\ell}) + E_C \sum_{\substack{i,j,k,\ell \\\in \textrm{type C}}} f(r_{ij})f(r_{k\ell}) \\
f(r) =& e^{-k_3 r}s(r) \\
s(r) =& \begin{cases}
1 & r<R_s \\
\displaystyle\frac{(R_f-r)^2(R_f-3R_s+2r)}{(R_f-R_s)^3} & R_s\leq r\leq R_f \\
0 & r>R_f\\
\end{cases}
\end{align*}
\end{document}

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -0,0 +1,21 @@
\documentclass[preview]{standalone}
\usepackage{varwidth}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath,amssymb,amsthm,bm}
\begin{document}
\begin{varwidth}{50in}
\begin{equation}
\bm{H}_{cubic} = -\sum_{{ i}=1}^{N} K_{1}
\Big[
\left(\vec{s}_{i} \cdot \vec{n1} \right)^2
\left(\vec{s}_{i} \cdot \vec{n2} \right)^2 +
\left(\vec{s}_{i} \cdot \vec{n2} \right)^2
\left(\vec{s}_{i} \cdot \vec{n3} \right)^2 +
\left(\vec{s}_{i} \cdot \vec{n1} \right)^2
\left(\vec{s}_{i} \cdot \vec{n3} \right)^2 \Big]
+K_{2}^{(c)} \left(\vec{s}_{i} \cdot \vec{n1} \right)^2
\left(\vec{s}_{i} \cdot \vec{n2} \right)^2
\left(\vec{s}_{i} \cdot \vec{n3} \right)^2 \nonumber
\end{equation}
\end{varwidth}
\end{document}

BIN
doc/src/Eqs/pair_drip.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

14
doc/src/Eqs/pair_drip.tex Normal file
View File

@ -0,0 +1,14 @@
\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{bm}
\begin{document}
\begin{eqnarray*}
E &=& \frac{1}{2} \sum_{i} \sum_{j\notin\text{layer}\,i} \phi_{ij} \\\phi_{ij} &=& f_\text{c}(x_r) \left[ e^{-\lambda(r_{ij} - z_0 )} \left[C+f(\rho_{ij})+ g(\rho_{ij}, \{\alpha_{ij}^{(m)}\}) \right]- A\left (\frac{z_0}{r_{ij}} \right)^6 \right] \\
\end{eqnarray*}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -1,9 +1,9 @@
\documentclass[12pt]{article}
\pagestyle{empty}
\begin{document}
$$
E(r) = \frac{A}{r^{12}} - \frac{A}{r^{6}}
E(r) = \frac{A}{r^{12}} - \frac{B}{r^{6}}
$$
\end{document}

View File

@ -5828,6 +5828,12 @@ Must have periodic x,y dimensions and non-periodic z dimension to use
Must have periodic x,y dimensions and non-periodic z dimension to use
2d slab option with pppm/disp. :dd
{Incorrect conversion in format string} :dt
A format style variable was not using either a %f, a %g, or a %e conversion.
Or an immediate variable with format suffix was not using either
a %f, a %g or a %e conversion in the format suffix. :dd
{Incorrect element names in ADP potential file} :dt
The element names in the ADP file do not match those requested. :dd
@ -7448,6 +7454,11 @@ The Atoms section of a data file must come before a Triangles section. :dd
The Atoms section of a data file must come before a Velocities
section. :dd
{Must re-specify non-restarted pair style (xxx) after read_restart} :dt
For pair styles, that do not store their settings in a restart file,
it must be defined with a new 'pair_style' command after read_restart. :dd
{Must set both respa inner and outer} :dt
Cannot use just the inner or outer option with respa without using the
@ -9990,25 +10001,25 @@ quote. :dd
Self-explanatory. :dd
{Unexpected end of AngleCoeffs section} :dt
{Unexpected empty line in AngleCoeffs section} :dt
Read a blank line. :dd
Read a blank line where there should be coefficient data. :dd
{Unexpected end of BondCoeffs section} :dt
{Unexpected empty line in BondCoeffs section} :dt
Read a blank line. :dd
Read a blank line where there should be coefficient data. :dd
{Unexpected end of DihedralCoeffs section} :dt
{Unexpected empty line in DihedralCoeffs section} :dt
Read a blank line. :dd
Read a blank line where there should be coefficient data. :dd
{Unexpected end of ImproperCoeffs section} :dt
{Unexpected empty line in ImproperCoeffs section} :dt
Read a blank line. :dd
Read a blank line where there should be coefficient data. :dd
{Unexpected end of PairCoeffs section} :dt
{Unexpected empty line in PairCoeffs section} :dt
Read a blank line. :dd
Read a blank line where there should be coefficient data. :dd
{Unexpected end of custom file} :dt
@ -10049,19 +10060,19 @@ create_box command. :dd
A universe or uloop style variable must specify a number of values >= to the
number of processor partitions. :dd
{Unknown angle style} :dt
{Unrecognized angle style} :dt
The choice of angle style is unknown. :dd
{Unknown atom style} :dt
{Unrecognized atom style} :dt
The choice of atom style is unknown. :dd
{Unknown body style} :dt
{Unrecognized body style} :dt
The choice of body style is unknown. :dd
{Unknown bond style} :dt
{Unrecognized bond style} :dt
The choice of bond style is unknown. :dd
@ -10077,23 +10088,23 @@ Self-explanatory. :dd
Self-explanatory. :dd
{Unknown command: %s} :dt
{Unrecognized command: %s} :dt
The command is not known to LAMMPS. Check the input script. :dd
{Unknown compute style} :dt
{Unrecognized compute style} :dt
The choice of compute style is unknown. :dd
{Unknown dihedral style} :dt
{Unrecognized dihedral style} :dt
The choice of dihedral style is unknown. :dd
{Unknown dump reader style} :dt
{Unrecognized dump reader style} :dt
The choice of dump reader style via the format keyword is unknown. :dd
{Unknown dump style} :dt
{Unrecognized dump style} :dt
The choice of dump style is unknown. :dd
@ -10101,7 +10112,7 @@ The choice of dump style is unknown. :dd
Self-explanatory. :dd
{Unknown fix style} :dt
{Unrecognized fix style} :dt
The choice of fix style is unknown. :dd
@ -10109,7 +10120,7 @@ The choice of fix style is unknown. :dd
A section of the data file cannot be read by LAMMPS. :dd
{Unknown improper style} :dt
{Unrecognized improper style} :dt
The choice of improper style is unknown. :dd
@ -10117,7 +10128,7 @@ The choice of improper style is unknown. :dd
One or more specified keywords are not recognized. :dd
{Unknown kspace style} :dt
{Unrecognized kspace style} :dt
The choice of kspace style is unknown. :dd
@ -10133,7 +10144,7 @@ Self-explanatory. :dd
Self-explanatory. :dd
{Unknown pair style} :dt
{Unrecognized pair style} :dt
The choice of pair style is unknown. :dd
@ -10141,7 +10152,7 @@ The choice of pair style is unknown. :dd
The choice of sub-style is unknown. :dd
{Unknown region style} :dt
{Unrecognized region style} :dt
The choice of region style is unknown. :dd

View File

@ -11,7 +11,7 @@ Section"_Tools.html :c
Example scripts :h3
The LAMMPS distribution includes an examples sub-directory with many
sample problems. Many are 2d models that run quickly are are
sample problems. Many are 2d models that run quickly and are
straightforward to visualize, requiring at most a couple of minutes to
run on a desktop machine. Each problem has an input script (in.*) and
produces a log file (log.*) when it runs. Some use a data file
@ -52,13 +52,14 @@ Lowercase directories :h4
accelerate: run with various acceleration options (OpenMP, GPU, Phi)
airebo: polyethylene with AIREBO potential
atm: Axilrod-Teller-Muto potential example
balance: dynamic load balancing, 2d system
body: body particles, 2d system
cmap: CMAP 5-body contributions to CHARMM force field
colloid: big colloid particles in a small particle solvent, 2d system
comb: models using the COMB potential
coreshell: core/shell model using CORESHELL package
controller: use of fix controller as a thermostat
coreshell: core/shell model using CORESHELL package
crack: crack propagation in a 2d solid
deposit: deposit atoms and molecules on a surface
dipole: point dipolar particles, 2d system
@ -70,10 +71,13 @@ friction: frictional contact of spherical asperities between 2d surfaces
gcmc: Grand Canonical Monte Carlo (GCMC) via the fix gcmc command
granregion: use of fix wall/region/gran as boundary on granular particles
hugoniostat: Hugoniostat shock dynamics
hyper: global and local hyperdynamics of diffusion on Pt surface
indent: spherical indenter into a 2d solid
kim: use of potentials in Knowledge Base for Interatomic Models (KIM)
latte: examples for using fix latte for DFTB via the LATTE library
meam: MEAM test for SiC and shear (same as shear examples)
melt: rapid melt of 3d LJ system
message: demos for LAMMPS client/server coupling with the MESSAGE package
micelle: self-assembly of small lipid-like molecules into 2d bilayers
min: energy minimization of 2d LJ melt
mscg: parameterize a multi-scale coarse-graining (MSCG) model
@ -88,6 +92,7 @@ pour: pouring of granular particles into a 3d box, then chute flow
prd: parallel replica dynamics of vacancy diffusion in bulk Si
python: using embedded Python in a LAMMPS input script
qeq: use of the QEQ package for charge equilibration
rdf-adf: computing radial and angle distribution functions for water
reax: RDX and TATB models using the ReaxFF
rigid: rigid bodies modeled as independent or coupled
shear: sideways shear applied to 2d solid, with and without a void
@ -95,6 +100,7 @@ snap: NVE dynamics for BCC tantalum crystal using SNAP potential
srd: stochastic rotation dynamics (SRD) particles as solvent
streitz: use of Streitz/Mintmire potential with charge equilibration
tad: temperature-accelerated dynamics of vacancy diffusion in bulk Si
threebody: regression test input for a variety of manybody potentials
vashishta: use of the Vashishta potential
voronoi: Voronoi tesselation via compute voronoi/atom command :tb(s=:)
@ -131,8 +137,10 @@ COUPLE: examples of how to use LAMMPS as a library
DIFFUSE: compute diffusion coefficients via several methods
ELASTIC: compute elastic constants at zero temperature
ELASTIC_T: compute elastic constants at finite temperature
HEAT: compute thermal conductivity for LJ and water via fix ehex
KAPPA: compute thermal conductivity via several methods
MC: using LAMMPS in a Monte Carlo mode to relax the energy of a system
SPIN: examples for features of the SPIN package
USER: examples for USER packages and USER-contributed commands
VISCOSITY: compute viscosity via several methods :tb(s=:)

View File

@ -56,7 +56,7 @@ COMPASS is a general force field for atomistic simulation of common
organic molecules, inorganic small molecules, and polymers which was
developed using ab initio and empirical parameterization techniques.
See the "Tools"_Tools.html doc page for the msi2lmp tool for creating
LAMMPS template input and data files from BIOVIAs Materials Studio
LAMMPS template input and data files from BIOVIA's Materials Studio
files. Please note that the msi2lmp tool is very old and largely
unmaintained, so it does not support all features of Materials Studio
provided force field files, especially additions during the last decade.
@ -129,7 +129,7 @@ Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
Spellmeyer, Fox, Caldwell, Kollman, JACS 117, 5179-5197 (1995).
:link(howto-Sun)
[(Sun)] Sun, J. Phys. Chem. B, 102, 73387364 (1998).
[(Sun)] Sun, J. Phys. Chem. B, 102, 7338-7364 (1998).
:link(howto-Mayo)
[(Mayo)] Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909

View File

@ -29,3 +29,5 @@ diffusion coefficient. The instantaneous VACF values can be
accumulated in a vector via the "fix vector"_fix_vector.html command,
and time integrated via the "variable trap"_variable.html function,
and thus extract D.
:line

View File

@ -274,7 +274,7 @@ crash. Even without reaching this extreme case, the correlation
between nearby dipoles on the same molecule may be exaggerated. Often,
special bond relations prevent bonded neighboring atoms to see the
charge of each other's DP, so that the problem does not always appear.
It is possible to use screened dipole dipole interactions by using the
It is possible to use screened dipole-dipole interactions by using the
"{pair_style thole}"_pair_thole.html. This is implemented as a
correction to the Coulomb pair_styles, which dampens at short distance
the interactions between the charges representing the induced dipoles.

View File

@ -52,7 +52,7 @@ as if you unpacked a current LAMMPS tarball, with the exception, that
the HTML documentation files are not included. They can be fetched
from the LAMMPS website by typing "make fetch" in the doc directory.
Or they can be generated from the content provided in doc/src by
typing "make html" from the the doc directory.
typing "make html" from the doc directory.
After initial cloning, as bug fixes and new features are added to
LAMMPS, as listed on "this page"_Errors_bugs.html, you can stay

View File

@ -40,7 +40,7 @@ as if you unpacked a current LAMMPS tarball, with the exception, that
the HTML documentation files are not included. They can be fetched
from the LAMMPS website by typing "make fetch" in the doc directory.
Or they can be generated from the content provided in doc/src by
typing "make html" from the the doc directory.
typing "make html" from the doc directory.
After initial checkout, as bug fixes and new features are added to
LAMMPS, as listed on "this page"_Errors_bugs.html, you can stay

View File

@ -1,7 +1,7 @@
<!-- HTML_ONLY -->
<HEAD>
<TITLE>LAMMPS Users Manual</TITLE>
<META NAME="docnumber" CONTENT="30 Apr 2019 version">
<META NAME="docnumber" CONTENT="31 May 2019 version">
<META NAME="author" CONTENT="http://lammps.sandia.gov - Sandia National Laboratories">
<META NAME="copyright" CONTENT="Copyright (2003) Sandia Corporation. This software and manual is distributed under the GNU General Public License.">
</HEAD>
@ -21,7 +21,7 @@
:line
LAMMPS Documentation :c,h1
30 Apr 2019 version :c,h2
31 May 2019 version :c,h2
"What is a LAMMPS version?"_Manual_version.html

View File

@ -208,7 +208,7 @@ available on your system.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#compress on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -358,7 +358,7 @@ developed the pair style.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#kim on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -404,7 +404,7 @@ lib/kokkos.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#kokkos on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -477,7 +477,7 @@ Cawkwell, Anders Niklasson, and Christian Negre.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#latte on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -654,7 +654,7 @@ University of Chicago.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#mscg on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -686,7 +686,7 @@ and Vincent Natoli (Stone Ridge Technolgy).
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#opt on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -706,7 +706,7 @@ PERI package :link(PKG-PERI),h4
An atom style, several pair styles which implement different
Peridynamics materials models, and several computes which calculate
diagnostics. Peridynamics is a a particle-based meshless continuum
diagnostics. Peridynamics is a particle-based meshless continuum
model.
[Authors:] The original package was created by Mike Parks (Sandia).
@ -743,7 +743,7 @@ connections at hinge points.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#poems on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -775,7 +775,7 @@ lib/python/README for more details.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#python on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -905,7 +905,7 @@ SPIN package :link(PKG-SPIN),h4
Model atomic magnetic spins classically, coupled to atoms moving in
the usual manner via MD. Various pair, fix, and compute styles.
[Author:] Julian Tranchida (Sandia).
[Author:] Julien Tranchida (Sandia).
[Supporting info:]
@ -965,7 +965,7 @@ and LBNL.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#voronoi on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1017,7 +1017,7 @@ atomic information to continuum fields.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-atc on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1044,7 +1044,7 @@ model.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-awpmd on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1184,7 +1184,7 @@ Tribello.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-plumed on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1229,7 +1229,7 @@ isothermal, isoenergetic, isobaric and isenthalpic conditions are
included. These enable long timesteps via the Shardlow splitting
algorithm.
[Authors:] Jim Larentzos (ARL), Tim Mattox (Engility Corp), and and John
[Authors:] Jim Larentzos (ARL), Tim Mattox (Engility Corp), and John
Brennan (ARL).
[Supporting info:]
@ -1362,7 +1362,7 @@ H5MD format.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-h5md on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1400,7 +1400,7 @@ NOTE: the USER-INTEL package contains styles that require using the
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-intel on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1537,7 +1537,7 @@ USER-MESO package :link(PKG-USER-MESO),h4
[Contents:]
Several extensions of the the dissipative particle dynamics (DPD)
Several extensions of the dissipative particle dynamics (DPD)
method. Specifically, energy-conserving DPD (eDPD) that can model
non-isothermal processes, many-body DPD (mDPD) for simulating
vapor-liquid coexistence, and transport DPD (tDPD) for modeling
@ -1620,7 +1620,7 @@ at
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-molfile on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1660,7 +1660,7 @@ tools:
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-netcdf on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1704,7 +1704,7 @@ install/un-install the package and build LAMMPS in the usual manner:
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-omp on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1788,7 +1788,7 @@ without changes to LAMMPS itself.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-qmmm on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1846,7 +1846,7 @@ on your system.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-quip on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -1964,7 +1964,7 @@ Dynamics, Ernst Mach Institute, Germany).
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-smd on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]
@ -2090,7 +2090,7 @@ system.
[Install:]
This package has "specific installation
instructions"_Build_extras.html#gpu on the "Build
instructions"_Build_extras.html#user-vtk on the "Build
extras"_Build_extras.html doc page.
[Supporting info:]

View File

@ -180,7 +180,7 @@ doubles is returned, one value per atom, which you can use via normal
Python subscripting. The values will be zero for atoms not in the
specified group.
The get_thermo() method returns returns the current value of a thermo
The get_thermo() method returns the current value of a thermo
keyword as a float.
The get_natoms() method returns the total number of atoms in the

View File

@ -242,7 +242,7 @@ processors.
Running with multiple partitions can be useful for running
"multi-replica simulations"_Howto_replica.html, where each replica
runs on on one or a few processors. Note that with MPI installed on a
runs on one or a few processors. Note that with MPI installed on a
machine (e.g. your desktop), you can run on more (virtual) processors
than you have physical processors.

View File

@ -93,7 +93,7 @@ monitor thread utilization and load balance is provided. A new {Thread
timings} section is also added, which lists the time spent in reducing
the per-thread data elements to the storage for non-threaded
computation. These thread timings are measured for the first MPI rank
only and and thus, because the breakdown for MPI tasks can change from
only and thus, because the breakdown for MPI tasks can change from
MPI rank to MPI rank, this breakdown can be very different for
individual ranks. Here is an example output for this section:

View File

@ -111,16 +111,10 @@ Makefile.kokkos_mpi_only) will give better performance than the OpenMP
back end (i.e. Makefile.kokkos_omp) because some of the overhead to make
the code thread-safe is removed.
NOTE: The default for the "package kokkos"_package.html command is to
use "full" neighbor lists and set the Newton flag to "off" for both
pairwise and bonded interactions. However, when running on CPUs, it
will typically be faster to use "half" neighbor lists and set the
Newton flag to "on", just as is the case for non-accelerated pair
styles. It can also be faster to use non-threaded communication. Use
the "-pk kokkos" "command-line switch"_Run_options.html to change the
default "package kokkos"_package.html options. See its doc page for
details and default settings. Experimenting with its options can
provide a speed-up for specific calculations. For example:
NOTE: Use the "-pk kokkos" "command-line switch"_Run_options.html to
change the default "package kokkos"_package.html options. See its doc
page for details and default settings. Experimenting with its options
can provide a speed-up for specific calculations. For example:
mpirun -np 16 lmp_kokkos_mpi_only -k on -sf kk -pk kokkos newton on neigh half comm no -in in.lj # Newton on, Half neighbor list, non-threaded comm :pre
@ -190,19 +184,18 @@ tasks/node. The "-k on t Nt" command-line switch sets the number of
threads/task as Nt. The product of these two values should be N, i.e.
256 or 264.
NOTE: The default for the "package kokkos"_package.html command is to
use "full" neighbor lists and set the Newton flag to "off" for both
pairwise and bonded interactions. When running on KNL, this will
typically be best for pair-wise potentials. For many-body potentials,
using "half" neighbor lists and setting the Newton flag to "on" may be
faster. It can also be faster to use non-threaded communication. Use
the "-pk kokkos" "command-line switch"_Run_options.html to change the
default "package kokkos"_package.html options. See its doc page for
details and default settings. Experimenting with its options can
provide a speed-up for specific calculations. For example:
NOTE: The default for the "package kokkos"_package.html command when
running on KNL is to use "half" neighbor lists and set the Newton flag
to "on" for both pairwise and bonded interactions. This will typically
be best for many-body potentials. For simpler pair-wise potentials, it
may be faster to use a "full" neighbor list with Newton flag to "off".
Use the "-pk kokkos" "command-line switch"_Run_options.html to change
the default "package kokkos"_package.html options. See its doc page for
details and default settings. Experimenting with its options can provide
a speed-up for specific calculations. For example:
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -pk kokkos comm no -in in.lj # Newton off, full neighbor list, non-threaded comm
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -pk kokkos newton on neigh half comm no -in in.reax # Newton on, half neighbor list, non-threaded comm :pre
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -pk kokkos comm host -in in.reax # Newton on, half neighbor list, threaded comm
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -pk kokkos newton off neigh full comm no -in in.lj # Newton off, full neighbor list, non-threaded comm :pre
NOTE: MPI tasks and threads should be bound to cores as described
above for CPUs.
@ -236,19 +229,19 @@ one or more nodes, each with two GPUs:
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -in in.lj # 1 node, 2 MPI tasks/node, 2 GPUs/node
mpirun -np 32 -ppn 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -in in.lj # 16 nodes, 2 MPI tasks/node, 2 GPUs/node (32 GPUs total) :pre
NOTE: The default for the "package kokkos"_package.html command is to
use "full" neighbor lists and set the Newton flag to "off" for both
pairwise and bonded interactions, along with threaded communication.
When running on Maxwell or Kepler GPUs, this will typically be
best. For Pascal GPUs, using "half" neighbor lists and setting the
Newton flag to "on" may be faster. For many pair styles, setting the
neighbor binsize equal to the ghost atom cutoff will give speedup.
Use the "-pk kokkos" "command-line switch"_Run_options.html to change
the default "package kokkos"_package.html options. See its doc page
for details and default settings. Experimenting with its options can
provide a speed-up for specific calculations. For example:
NOTE: The default for the "package kokkos"_package.html command when
running on GPUs is to use "full" neighbor lists and set the Newton flag
to "off" for both pairwise and bonded interactions, along with threaded
communication. When running on Maxwell or Kepler GPUs, this will
typically be best. For Pascal GPUs, using "half" neighbor lists and
setting the Newton flag to "on" may be faster. For many pair styles,
setting the neighbor binsize equal to twice the CPU default value will
give speedup, which is the default when running on GPUs. Use the "-pk
kokkos" "command-line switch"_Run_options.html to change the default
"package kokkos"_package.html options. See its doc page for details and
default settings. Experimenting with its options can provide a speed-up
for specific calculations. For example:
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -pk kokkos binsize 2.8 -in in.lj # Set binsize = neighbor ghost cutoff
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -pk kokkos newton on neigh half binsize 2.8 -in in.lj # Newton on, half neighbor list, set binsize = neighbor ghost cutoff :pre
NOTE: For good performance of the KOKKOS package on GPUs, you must

View File

@ -77,6 +77,7 @@ Post-processing tools :h3
"python"_#pythontools,
"reax"_#reax_tool,
"smd"_#smd,
"spin"_#spin,
"xmgrace"_#xmgrace :tb(c=6,ea=c,a=l)
Miscellaneous tools :h3
@ -511,6 +512,20 @@ Ernst Mach Institute in Germany (georg.ganzenmueller at emi.fhg.de).
:line
spin tool :h4,link(spin)
The spin sub-directory contains a C file interpolate.c which can
be compiled and used to perform a cubic polynomial interpolation of
the MEP following a GNEB calculation.
See the README file in tools/spin/interpolate_gneb for more details.
This tool was written by the SPIN package author, Julien
Tranchida at Sandia National Labs (jtranch at sandia.gov, and by Aleksei
Ivanov, at University of Iceland (ali5 at hi.is).
:line
vim tool :h4,link(vim)
The files in the tools/vim directory are add-ons to the VIM editor

View File

@ -468,7 +468,7 @@ property/chunk"_compute_property_chunk.html command.
NOTE: The compression operation requires global communication across
all processors to share their chunk ID values. It can require large
memory on every processor to store them, even after they are
compressed, if there are are a large number of unique chunk IDs with
compressed, if there are a large number of unique chunk IDs with
atoms assigned to them. It uses a STL map to find unique chunk IDs
and store them in sorted order. Each time an atom is assigned a
compressed chunk ID, it must access the STL map. All of this means

View File

@ -49,7 +49,7 @@ For inputs that are computes, they must be a compute that calculates
per-chunk values. These are computes whose style names end in
"/chunk".
For inputs that are fixes, they should be a a fix that calculates
For inputs that are fixes, they should be a fix that calculates
per-chunk values. For example, "fix ave/chunk"_fix_ave_chunk.html or
"fix ave/time"_fix_ave_time.html (assuming it is time-averaging
per-chunk data).

View File

@ -15,8 +15,9 @@ compute ID group-ID coord/atom cstyle args ... :pre
ID, group-ID are documented in "compute"_compute.html command :ulb,l
coord/atom = style name of this compute command :l
cstyle = {cutoff} or {orientorder} :l
{cutoff} args = cutoff typeN
{cutoff} args = cutoff \[group group2-ID\] typeN
cutoff = distance within which to count coordination neighbors (distance units)
group {group2-ID} = select group-ID to restrict which atoms to consider for coordination number (optional)
typeN = atom type for Nth coordination count (see asterisk form below)
{orientorder} args = orientorderID threshold
orientorderID = ID of an orientorder/atom compute
@ -28,6 +29,7 @@ cstyle = {cutoff} or {orientorder} :l
compute 1 all coord/atom cutoff 2.0
compute 1 all coord/atom cutoff 6.0 1 2
compute 1 all coord/atom cutoff 6.0 2*4 5*8 *
compute 1 solute coord/atom cutoff 2.0 group solvent
compute 1 all coord/atom orientorder 2 0.5 :pre
[Description:]
@ -38,9 +40,14 @@ meaning of the resulting value depend on the {cstyle} keyword used.
The {cutoff} cstyle calculates one or more traditional coordination
numbers for each atom. A coordination number is defined as the number
of neighbor atoms with specified atom type(s) that are within the
specified cutoff distance from the central atom. Atoms not in the
specified group are included in the coordination number tally.
of neighbor atoms with specified atom type(s), and optionally within
the specified group, that are within the specified cutoff distance from
the central atom. The compute group selects only the central atoms; all
neighboring atoms, unless selected by type, type range, or group option,
are included in the coordination number tally.
The optional {group} keyword allows to specify from which group atoms
contribute to the coordination number. Default setting is group 'all'.
The {typeN} keywords allow specification of which atom types
contribute to each coordination number. One coordination number is
@ -122,7 +129,9 @@ explained above.
"compute cluster/atom"_compute_cluster_atom.html
"compute orientorder/atom"_compute_orientorder_atom.html
[Default:] none
[Default:]
group = all
:line

View File

@ -96,7 +96,7 @@ group. The argument {maxedge} of the this keyword is the largest number
of edges on a single Voronoi cell face expected to occur in the
sample. This keyword adds the generation of a global vector with
{maxedge}+1 entries. The last entry in the vector contains the number of
faces with with more than {maxedge} edges. Since the polygon with the
faces with more than {maxedge} edges. Since the polygon with the
smallest amount of edges is a triangle, entries 1 and 2 of the vector
will always be zero.

View File

@ -47,7 +47,7 @@ division by sin(74.4)*sin(48.1) (the minima positions for theta1 and theta2).
The following coefficients must be defined for each dihedral type via the
"dihedral_coeff"_dihedral_coeff.html command as in the example above, or in
the Dihedral Coeffs section of a data file file read by the
the Dihedral Coeffs section of a data file read by the
"read_data"_read_data.html command:
n (integer >= 1)

View File

@ -174,7 +174,7 @@ radians instead of degrees. (Note: This changes the way the forces
are scaled in the 4th column of the data file.)
The optional "CHECKU" keyword is followed by a filename. This allows
the user to save all of the the {Ntable} different entries in the
the user to save all of the {Ntable} different entries in the
interpolated energy table to a file to make sure that the interpolated
function agrees with the user's expectations. (Note: You can
temporarily increase the {Ntable} parameter to a high value for this

View File

@ -21,7 +21,7 @@ dump ID group-ID style N file args :pre
ID = user-assigned name for the dump :ulb,l
group-ID = ID of the group of atoms to be dumped :l
style = {atom} or {atom/gz} or {atom/mpiio} or {cfg} or {cfg/gz} or {cfg/mpiio} or {custom} or {custom/gz} or {custom/mpiio} or {dcd} or {h5md} or {image} or or {local} or {molfile} or {movie} or {netcdf} or {netcdf/mpiio} or {vtk} or {xtc} or {xyz} or {xyz/gz} or {xyz/mpiio} :l
style = {atom} or {atom/gz} or {atom/mpiio} or {cfg} or {cfg/gz} or {cfg/mpiio} or {custom} or {custom/gz} or {custom/mpiio} or {dcd} or {h5md} or {image} or {local} or {molfile} or {movie} or {netcdf} or {netcdf/mpiio} or {vtk} or {xtc} or {xyz} or {xyz/gz} or {xyz/mpiio} :l
N = dump every this many timesteps :l
file = name of file to write dump info to :l
args = list of arguments for a particular style :l
@ -196,7 +196,7 @@ For post-processing purposes the {atom}, {local}, and {custom} text
files are self-describing in the following sense.
The dimensions of the simulation box are included in each snapshot.
For an orthogonal simulation box this information is is formatted as:
For an orthogonal simulation box this information is formatted as:
ITEM: BOX BOUNDS xx yy zz
xlo xhi
@ -619,7 +619,7 @@ should be replaced by the actual name of the variable that has been
defined previously in the input script. Only an atom-style variable
can be referenced, since it is the only style that generates per-atom
values. Variables of style {atom} can reference individual atom
attributes, per-atom atom attributes, thermodynamic keywords, or
attributes, per-atom attributes, thermodynamic keywords, or
invoke other computes, fixes, or variables when they are evaluated, so
this is a very general means of creating quantities to output to a
dump file.

View File

@ -310,7 +310,7 @@ NOTE: Atom and molecule IDs are stored internally as 4-byte or 8-byte
signed integers, depending on how LAMMPS was compiled. When
specifying the {format int} option you can use a "%d"-style format
identifier in the format string and LAMMPS will convert this to the
corresponding 8-byte form it it is needed when outputting those
corresponding 8-byte form if it is needed when outputting those
values. However, when specifying the {line} option or {format M
string} option for those values, you should specify a format string
appropriate for an 8-byte signed integer, e.g. one with "%ld", if

View File

@ -321,20 +321,16 @@ accelerated styles exist.
"restrain"_fix_restrain.html - constrain a bond, angle, dihedral
"rhok"_fix_rhok.html -
"rigid"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with NVE integration
"rigid/nph"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with NPH integration
"rigid/nph/small"_fix_rigid.html -
"rigid/npt"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with NPT integration
"rigid/npt/small"_fix_rigid.html -
"rigid/nve"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with alternate NVE integration
"rigid/nve/small"_fix_rigid.html -
"rigid/nvt"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with NVT integration
"rigid/nvt/small"_fix_rigid.html -
"rigid/small"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with NVE integration
"rigid/small/nph"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with NPH integration
"rigid/small/npt"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with NPT integration
"rigid/small/nve"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with alternate NVE integration
"rigid/small/nvt"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with NVT integration
"rigid/meso"_fix_rigid_meso.html - constrain clusters of mesoscopic SPH/SDPD particles to move as a rigid body
"rigid/nph"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with NPH integration
"rigid/nph/small"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with NPH integration
"rigid/npt"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with NPT integration
"rigid/npt/small"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with NPT integration
"rigid/nve"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with alternate NVE integration
"rigid/nve/small"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with alternate NVE integration
"rigid/nvt"_fix_rigid.html - constrain one or more clusters of atoms to move as a rigid body with NVT integration
"rigid/nvt/small"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with NVT integration
"rigid/small"_fix_rigid.html - constrain many small clusters of atoms to move as a rigid body with NVE integration
"rx"_fix_rx.html -
"saed/vtk"_fix_saed_vtk.html -
"setforce"_fix_setforce.html - set the force on each atom

View File

@ -141,11 +141,16 @@ specify if this should be done.
This fix writes the state of the fix to "binary restart
files"_restart.html. This includes information about the random
number generator seed, the next timestep for MC exchanges, etc. See
number generator seed, the next timestep for MC exchanges, the number
of exchange attempts and successes etc. See
the "read_restart"_read_restart.html 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.
NOTE: For this to work correctly, the timestep must [not] be changed
after reading the restart with "reset_timestep"_reset_timestep.html.
The fix will try to detect it and stop with an error.
None of the "fix_modify"_fix_modify.html options are relevant to this
fix.

View File

@ -361,7 +361,7 @@ computes that calculate a temperature to see which ones implement a
bias.
The {adof} and {cdof} keywords define the values used in the degree of
freedom (DOF) formula described above for for temperature calculation
freedom (DOF) formula described above for temperature calculation
for each chunk. They are only used when the {temp} value is
calculated. They can be used to calculate a more appropriate
temperature for some kinds of chunks. Here are 3 examples:

View File

@ -98,6 +98,16 @@ fix to add the energy change from the biasing force added by the fix
to the system's potential energy as part of "thermodynamic
output"_thermo_style.html.
The {fix_modify configfile <config file>} option allows to add settings
from an additional config file to the colvars module. This option can
only be used, after the system has been initialized with a "run"_run.html
command.
The {fix_modify config <quoted string>} option allows to add settings
from inline strings. Those have to fit on a single line when enclosed
in a pair of double quotes ("), or can span multiple lines when bracketed
by a pair of triple double quotes (""", like python embedded documentation).
This fix computes a global scalar which can be accessed by various
"output commands"_Howto_output.html. The scalar is the cumulative
energy change due to this fix. The scalar value calculated by this

View File

@ -261,6 +261,10 @@ next timestep for deposition, etc. See the
a fix in an input script that reads a restart file, so that the
operation of the fix continues in an uninterrupted fashion.
NOTE: For this to work correctly, the timestep must [not] be changed
after reading the restart with "reset_timestep"_reset_timestep.html.
The fix will try to detect it and stop with an error.
None of the "fix_modify"_fix_modify.html options are relevant to this
fix. No global or per-atom quantities are stored by this fix for
access by various "output commands"_Howto_output.html. No parameter

View File

@ -373,11 +373,16 @@ adds all inserted atoms of the specified type to the
This fix writes the state of the fix to "binary restart
files"_restart.html. This includes information about the random
number generator seed, the next timestep for MC exchanges, etc. See
number generator seed, the next timestep for MC exchanges, the number
of MC step attempts and successes etc. See
the "read_restart"_read_restart.html 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.
NOTE: For this to work correctly, the timestep must [not] be changed
after reading the restart with "reset_timestep"_reset_timestep.html.
The fix will try to detect it and stop with an error.
None of the "fix_modify"_fix_modify.html options are relevant to this
fix.

View File

@ -113,12 +113,11 @@ state of the system, e.g. via a "write_dump"_write_dump.html or
"write_restart"_write_restart.html command.
If its value is {continue}, the behavior is the same as for {soft},
except subsequent subsequent "run"_run.html or
"minimize"_minimize.html commands are executed. This allows your
script to remedy the condition that triggered the halt, if necessary.
Note that you may wish use the "unfix"_unfix.html command on the fix
halt ID, so that the same condition is not immediately triggered in a
subsequent run.
except subsequent "run"_run.html or "minimize"_minimize.html commands
are executed. This allows your script to remedy the condition that
triggered the halt, if necessary. Note that you may wish use the
"unfix"_unfix.html command on the fix halt ID, so that the same
condition is not immediately triggered in a subsequent run.
The optional {message} keyword determines whether a message is printed
to the screen and logfile when the halt condition is triggered. If

View File

@ -188,7 +188,7 @@ No information about this fix is written to "binary restart
files"_restart.html.
The "fix_modify"_fix_modify.html {energy} option is supported by this
fix to add the energy of the bias potential to the the system's
fix to add the energy of the bias potential to the system's
potential energy as part of "thermodynamic output"_thermo_style.html.
This fix computes a global scalar and global vector of length 12, which

View File

@ -301,7 +301,7 @@ No information about this fix is written to "binary restart
files"_restart.html.
The "fix_modify"_fix_modify.html {energy} option is supported by this
fix to add the energy of the bias potential to the the system's
fix to add the energy of the bias potential to the system's
potential energy as part of "thermodynamic output"_thermo_style.html.
This fix computes a global scalar and global vector of length 21,
@ -322,13 +322,13 @@ vector stores the following quantities:
9 = fraction of biased bonds with negative strain during this run
10 = average bias coeff for all bonds during this run (unitless)
11 = min bias coeff for any bond during this run (unitless)
12 = max bias coeff for any bond during this run (unitless)
12 = max bias coeff for any bond during this run (unitless) :ul
13 = max drift distance of any bond atom during this run (distance units)
14 = max distance from proc subbox of any ghost atom with maxstrain < qfactor during this run (distance units)
15 = max distance outside my box of any ghost atom with any maxstrain during this run (distance units)
16 = count of ghost atoms that could not be found on reneighbor steps during this run
17 = count of bias overlaps (< Dcut) found during this run
17 = count of bias overlaps (< Dcut) found during this run :ul
18 = cumulative hyper time since fix created (time units)
19 = cumulative count of event timesteps since fix created

View File

@ -14,19 +14,23 @@ fix ID group precession/spin style args :pre
ID, group are documented in "fix"_fix.html command :ulb,l
precession/spin = style name of this fix command :l
style = {zeeman} or {anisotropy} :l
style = {zeeman} or {anisotropy} or {cubic} :l
{zeeman} args = H x y z
H = intensity of the magnetic field (in Tesla)
x y z = vector direction of the field
{anisotropy} args = K x y z
K = intensity of the magnetic anisotropy (in eV)
x y z = vector direction of the anisotropy :pre
{cubic} args = K1 K2c n1x n1y n1x n2x n2y n2z n3x n3y n3z
K1 and K2c = intensity of the magnetic anisotropy (in eV)
n1x to n3z = three direction vectors of the cubic anisotropy :pre
:ule
[Examples:]
fix 1 all precession/spin zeeman 0.1 0.0 0.0 1.0
fix 1 all precession/spin anisotropy 0.001 0.0 0.0 1.0
fix 1 3 precession/spin anisotropy 0.001 0.0 0.0 1.0
fix 1 iron precession/spin cubic 0.001 0.0005 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0
fix 1 all precession/spin zeeman 0.1 0.0 0.0 1.0 anisotropy 0.001 0.0 0.0 1.0 :pre
[Description:]
@ -50,10 +54,29 @@ for the magnetic spins in the defined group:
with n defining the direction of the anisotropy, and K (in eV) its intensity.
If K>0, an easy axis is defined, and if K<0, an easy plane is defined.
In both cases, the choice of (x y z) imposes the vector direction for the force.
Only the direction of the vector is important; it's length is ignored.
Style {cubic} is used to simulate a cubic anisotropy, with three
possible easy axis for the magnetic spins in the defined group:
Both styles can be combined within one single command line.
:c,image(Eqs/fix_spin_cubic.jpg)
with K1 and K2c (in eV) the intensity coefficients and
n1, n2 and n3 defining the three anisotropic directions
defined by the command (from n1x to n3z).
For n1 = (100), n2 = (010), and n3 = (001), K1 < 0 defines an
iron type anisotropy (easy axis along the (001)-type cube
edges), and K1 > 0 defines a nickel type anisotropy (easy axis
along the (111)-type cube diagonals).
K2^c > 0 also defines easy axis along the (111)-type cube
diagonals.
See chapter 2 of "(Skomski)"_#Skomski1 for more details on cubic
anisotropies.
In all cases, the choice of (x y z) only imposes the vector
directions for the forces. Only the direction of the vector is
important; it's length is ignored (the entered vectors are
normalized).
Those styles can be combined within one single command line.
:line
@ -85,3 +108,9 @@ package"_Build_package.html doc page for more info.
"atom_style spin"_atom_style.html
[Default:] none
:line
:link(Skomski1)
[(Skomski)] Skomski, R. (2008). Simple models of magnetism.
Oxford University Press.

View File

@ -14,7 +14,7 @@ fix ID group-ID print N string keyword value ... :pre
ID, group-ID are documented in "fix"_fix.html command :ulb,l
print = style name of this fix command :l
N = print every N steps :l
N = print every N steps; N can be a variable (see below) :l
string = text string to print with optional variable names :l
zero or more keyword/value pairs may be appended :l
keyword = {file} or {append} or {screen} or {title} :l
@ -40,6 +40,21 @@ If it contains variables it must be enclosed in double quotes to
insure they are not evaluated when the input script line is read, but
will instead be evaluated each time the string is printed.
Instead of a numeric value, N can be specified as an "equal-style
variable"_variable.html, which should be specified as v_name, where
name is the variable name. In this case, the variable is evaluated at
the beginning of a run to determine the [next] timestep at which the
string will be written out. On that timestep, the variable will be
evaluated again to determine the next timestep, etc.
Thus the variable should return timestep values. See the stagger()
and logfreq() and stride() math functions for "equal-style
variables"_variable.html, as examples of useful functions to use in
this context. For example, the following commands will print output at
timesteps 10,20,30,100,200,300,1000,2000,etc:
variable s equal logfreq(10,3,10)
fix extra all print v_s "Coords of marker atom = $x $y $z" :pre
The specified group-ID is ignored by this fix.
See the "variable"_variable.html command for a description of {equal}

View File

@ -574,6 +574,8 @@ pair_dipole.html
pair_dpd.html
pair_dpd_fdt.html
pair_dsmc.html
pair_e3b.html
pair_drip.html
pair_eam.html
pair_edip.html
pair_eff.html

View File

@ -124,7 +124,7 @@ so that they describe a tilted parallelepiped. Via the {basis}
keyword you add atoms, one at a time, to the unit cell. Its arguments
are fractional coordinates (0.0 <= x,y,z < 1.0). The position vector
x of a basis atom within the unit cell is thus a linear combination of
the the unit cell's 3 edge vectors, i.e. x = bx a1 + by a2 + bz a3,
the unit cell's 3 edge vectors, i.e. x = bx a1 + by a2 + bz a3,
where bx,by,bz are the 3 values specified for the {basis} keyword.
:line

View File

@ -396,7 +396,7 @@ If flag = 0, no a,b,c,d values are listed on the line, just the
If flag = 1, a,b,c are listed, where a = ID of central atom in the
angle, and b,c the other two atoms in the angle.
If flag = 2, a,b are listed, where a = ID of atom in bond with the the
If flag = 2, a,b are listed, where a = ID of atom in bond with the
lowest ID, and b = ID of atom in bond with the highest ID.
If flag = 3, a,b,c are listed, where a = ID of central atom,

View File

@ -6,7 +6,7 @@
:line
neb command :h3
neb/spin command :h3
[Syntax:]

View File

@ -187,9 +187,9 @@ used in neighbor list construction to sort and find neighboring atoms.
By default, for "neighbor style bin"_neighbor.html, LAMMPS uses bins
that are 1/2 the size of the maximum pair cutoff. For "neighbor style
multi"_neighbor.html, the bins are 1/2 the size of the minimum pair
cutoff. Typically these are good values values for minimizing the
time for neighbor list construction. This setting overrides the
default. If you make it too big, there is little overhead due to
cutoff. Typically these are good values for minimizing the time for
neighbor list construction. This setting overrides the default.
If you make it too big, there is little overhead due to
looping over bins, but more atoms are checked. If you make it too
small, the optimal number of atoms is checked, but bin overhead goes
up. If you set the binsize to 0.0, LAMMPS will use the default

View File

@ -56,7 +56,7 @@ bin size is set to 1/2 of the shortest cutoff distance and multiple
sets of bins are defined to search over for different atom types.
This imposes some extra setup overhead, but the searches themselves
may be much faster for the short-cutoff cases. See the "comm_modify
mode multi"_comm_modify.html command for a communication option option
mode multi"_comm_modify.html command for a communication option
that may also be beneficial for simulations of this kind.
The "neigh_modify"_neigh_modify.html command has additional options

View File

@ -64,7 +64,7 @@ args = arguments specific to the style :l
{no_affinity} values = none
{kokkos} args = keyword value ...
zero or more keyword/value pairs may be appended
keywords = {neigh} or {neigh/qeq} or {newton} or {binsize} or {comm} or {comm/exchange} or {comm/forward} or {comm/reverse}
keywords = {neigh} or {neigh/qeq} or {newton} or {binsize} or {comm} or {comm/exchange} or {comm/forward} or {comm/reverse} or {gpu/direct}
{neigh} value = {full} or {half}
full = full neighbor list
half = half neighbor list built in thread-safe manner
@ -72,7 +72,7 @@ args = arguments specific to the style :l
full = full neighbor list
half = half neighbor list built in thread-safe manner
{newton} = {off} or {on}
off = set Newton pairwise and bonded flags off (default)
off = set Newton pairwise and bonded flags off
on = set Newton pairwise and bonded flags on
{binsize} value = size
size = bin size for neighbor list construction (distance units)
@ -422,101 +422,103 @@ processes/threads used for LAMMPS.
:line
The {kokkos} style invokes settings associated with the use of the
KOKKOS package.
The {kokkos} style invokes settings associated with the use of the
KOKKOS package.
All of the settings are optional keyword/value pairs. Each has a
default value as listed below.
All of the settings are optional keyword/value pairs. Each has a default
value as listed below.
The {neigh} keyword determines how neighbor lists are built. A value
of {half} uses a thread-safe variant of half-neighbor lists,
the same as used by most pair styles in LAMMPS.
The {neigh} keyword determines how neighbor lists are built. A value of
{half} uses a thread-safe variant of half-neighbor lists, the same as
used by most pair styles in LAMMPS, which is the default when running on
CPUs (i.e. the Kokkos CUDA back end is not enabled).
A value of {full} uses a full neighbor lists and is the default. This
performs twice as much computation as the {half} option, however that
is often a win because it is thread-safe and doesn't require atomic
operations in the calculation of pair forces. For that reason, {full}
is the default setting. However, when running in MPI-only mode with 1
thread per MPI task, {half} neighbor lists will typically be faster,
just as it is for non-accelerated pair styles. Similarly, the {neigh/qeq}
keyword determines how neighbor lists are built for "fix qeq/reax/kk"_fix_qeq_reax.html.
If not explicitly set, the value of {neigh/qeq} will match {neigh}.
A value of {full} uses a full neighbor lists and is the default when
running on GPUs. This performs twice as much computation as the {half}
option, however that is often a win because it is thread-safe and
doesn't require atomic operations in the calculation of pair forces. For
that reason, {full} is the default setting for GPUs. However, when
running on CPUs, a {half} neighbor list is the default because it are
often faster, just as it is for non-accelerated pair styles. Similarly,
the {neigh/qeq} keyword determines how neighbor lists are built for "fix
qeq/reax/kk"_fix_qeq_reax.html. If not explicitly set, the value of
{neigh/qeq} will match {neigh}.
The {newton} keyword sets the Newton flags for pairwise and bonded
interactions to {off} or {on}, the same as the "newton"_newton.html
command allows. The default is {off} because this will almost always
give better performance for the KOKKOS package. This means more
computation is done, but less communication. However, when running in
MPI-only mode with 1 thread per MPI task, a value of {on} will
typically be faster, just as it is for non-accelerated pair styles.
The {newton} keyword sets the Newton flags for pairwise and bonded
interactions to {off} or {on}, the same as the "newton"_newton.html
command allows. The default for GPUs is {off} because this will almost
always give better performance for the KOKKOS package. This means more
computation is done, but less communication. However, when running on
CPUs a value of {on} is the default since it can often be faster, just
as it is for non-accelerated pair styles
The {binsize} keyword sets the size of bins used to bin atoms in
neighbor list builds. The same value can be set by the "neigh_modify
binsize"_neigh_modify.html command. Making it an option in the
package kokkos command allows it to be set from the command line. The
default value is 0.0, which means the LAMMPS default will be used,
which is bins = 1/2 the size of the pairwise cutoff + neighbor skin
distance. This is fine when neighbor lists are built on the CPU. For
GPU builds, a 2x larger binsize equal to the pairwise cutoff +
neighbor skin, is often faster, which can be set by this keyword.
Note that if you use a longer-than-usual pairwise cutoff, e.g. to
allow for a smaller fraction of KSpace work with a "long-range
Coulombic solver"_kspace_style.html because the GPU is faster at
performing pairwise interactions, then this rule of thumb may give too
large a binsize.
The {binsize} keyword sets the size of bins used to bin atoms in
neighbor list builds. The same value can be set by the "neigh_modify
binsize"_neigh_modify.html command. Making it an option in the package
kokkos command allows it to be set from the command line. The default
value for CPUs is 0.0, which means the LAMMPS default will be used,
which is bins = 1/2 the size of the pairwise cutoff + neighbor skin
distance. This is fine when neighbor lists are built on the CPU. For GPU
builds, a 2x larger binsize equal to the pairwise cutoff + neighbor skin
is often faster, which is the default. Note that if you use a
longer-than-usual pairwise cutoff, e.g. to allow for a smaller fraction
of KSpace work with a "long-range Coulombic solver"_kspace_style.html
because the GPU is faster at performing pairwise interactions, then this
rule of thumb may give too large a binsize and the default should be
overridden with a smaller value.
The {comm} and {comm/exchange} and {comm/forward} and {comm/reverse} keywords determine
whether the host or device performs the packing and unpacking of data
when communicating per-atom data between processors. "Exchange"
communication happens only on timesteps that neighbor lists are
rebuilt. The data is only for atoms that migrate to new processors.
"Forward" communication happens every timestep. "Reverse" communication
happens every timestep if the {newton} option is on. The data is for atom
coordinates and any other atom properties that needs to be updated for
ghost atoms owned by each processor.
The {comm} and {comm/exchange} and {comm/forward} and {comm/reverse}
keywords determine whether the host or device performs the packing and
unpacking of data when communicating per-atom data between processors.
"Exchange" communication happens only on timesteps that neighbor lists
are rebuilt. The data is only for atoms that migrate to new processors.
"Forward" communication happens every timestep. "Reverse" communication
happens every timestep if the {newton} option is on. The data is for
atom coordinates and any other atom properties that needs to be updated
for ghost atoms owned by each processor.
The {comm} keyword is simply a short-cut to set the same value
for both the {comm/exchange} and {comm/forward} and {comm/reverse} keywords.
The {comm} keyword is simply a short-cut to set the same value for both
the {comm/exchange} and {comm/forward} and {comm/reverse} keywords.
The value options for all 3 keywords are {no} or {host} or {device}.
A value of {no} means to use the standard non-KOKKOS method of
packing/unpacking data for the communication. A value of {host} means
to use the host, typically a multi-core CPU, and perform the
packing/unpacking in parallel with threads. A value of {device}
means to use the device, typically a GPU, to perform the
packing/unpacking operation.
The value options for all 3 keywords are {no} or {host} or {device}. A
value of {no} means to use the standard non-KOKKOS method of
packing/unpacking data for the communication. A value of {host} means to
use the host, typically a multi-core CPU, and perform the
packing/unpacking in parallel with threads. A value of {device} means to
use the device, typically a GPU, to perform the packing/unpacking
operation.
The optimal choice for these keywords depends on the input script and
the hardware used. The {no} value is useful for verifying that the
Kokkos-based {host} and {device} values are working correctly.
It may also be the fastest choice when using Kokkos styles in
MPI-only mode (i.e. with a thread count of 1).
The optimal choice for these keywords depends on the input script and
the hardware used. The {no} value is useful for verifying that the
Kokkos-based {host} and {device} values are working correctly. It is the
default when running on CPUs since it is usually the fastest.
When running on CPUs or Xeon Phi, the {host} and {device} values work
identically. When using GPUs, the {device} value will typically be
optimal if all of your styles used in your input script are supported
by the KOKKOS package. In this case data can stay on the GPU for many
timesteps without being moved between the host and GPU, if you use the
{device} value. This requires that your MPI is able to access GPU
memory directly. Currently that is true for OpenMPI 1.8 (or later
versions), Mvapich2 1.9 (or later), and CrayMPI. If your script uses
styles (e.g. fixes) which are not yet supported by the KOKKOS package,
then data has to be move between the host and device anyway, so it is
typically faster to let the host handle communication, by using the
{host} value. Using {host} instead of {no} will enable use of
multiple threads to pack/unpack communicated data.
When running on CPUs or Xeon Phi, the {host} and {device} values work
identically. When using GPUs, the {device} value is the default since it
will typically be optimal if all of your styles used in your input
script are supported by the KOKKOS package. In this case data can stay
on the GPU for many timesteps without being moved between the host and
GPU, if you use the {device} value. This requires that your MPI is able
to access GPU memory directly. Currently that is true for OpenMPI 1.8
(or later versions), Mvapich2 1.9 (or later), and CrayMPI. If your
script uses styles (e.g. fixes) which are not yet supported by the
KOKKOS package, then data has to be move between the host and device
anyway, so it is typically faster to let the host handle communication,
by using the {host} value. Using {host} instead of {no} will enable use
of multiple threads to pack/unpack communicated data.
The {gpu/direct} keyword chooses whether GPU-direct will be used. When
this keyword is set to {on}, buffers in GPU memory are passed directly
through MPI send/receive calls. This reduces overhead of first copying
the data to the host CPU. However GPU-direct is not supported on all
systems, which can lead to segmentation faults and would require
using a value of {off}. If LAMMPS can safely detect that GPU-direct is
not available (currently only possible with OpenMPI v2.0.0 or later),
then the {gpu/direct} keyword is automatically set to {off} by default.
When the {gpu/direct} keyword is set to {off} while any of the {comm}
keywords are set to {device}, the value for these {comm} keywords will
be automatically changed to {host}.
The {gpu/direct} keyword chooses whether GPU-direct will be used. When
this keyword is set to {on}, buffers in GPU memory are passed directly
through MPI send/receive calls. This reduces overhead of first copying
the data to the host CPU. However GPU-direct is not supported on all
systems, which can lead to segmentation faults and would require using a
value of {off}. If LAMMPS can safely detect that GPU-direct is not
available (currently only possible with OpenMPI v2.0.0 or later), then
the {gpu/direct} keyword is automatically set to {off} by default. When
the {gpu/direct} keyword is set to {off} while any of the {comm}
keywords are set to {device}, the value for these {comm} keywords will
be automatically changed to {host}. This setting has no effect if not
running on GPUs.
:line
@ -620,17 +622,19 @@ except "omp" and "mode", are ignored if LAMMPS was not built with Xeon
Phi co-processor support. These settings are made automatically if the
"-sf intel" "command-line switch"_Run_options.html is used. If it is
not used, you must invoke the package intel command in your input
script or or via the "-pk intel" "command-line
script or via the "-pk intel" "command-line
switch"_Run_options.html.
For the KOKKOS package, the option defaults neigh = full, neigh/qeq =
full, newton = off, binsize = 0.0, and comm = device, gpu/direct = on.
When LAMMPS can safely detect, that GPU-direct is not available, the
default value of gpu/direct becomes "off".
These settings are made automatically by the required "-k on"
"command-line switch"_Run_options.html. You can change them by
using the package kokkos command in your input script or via the
"-pk kokkos command-line switch"_Run_options.html.
For the KOKKOS package, the option defaults for GPUs are neigh = full,
neigh/qeq = full, newton = off, binsize for GPUs = 2x LAMMPS default
value, comm = device, gpu/direct = on. When LAMMPS can safely detect
that GPU-direct is not available, the default value of gpu/direct
becomes "off". For CPUs or Xeon Phis, the option defaults are neigh =
half, neigh/qeq = half, newton = on, binsize = 0.0, and comm = no. These
settings are made automatically by the required "-k on" "command-line
switch"_Run_options.html. You can change them by using the package
kokkos command in your input script or via the "-pk kokkos command-line
switch"_Run_options.html.
For the OMP package, the default is Nthreads = 0 and the option
defaults are neigh = yes. These settings are made automatically if

View File

@ -36,7 +36,7 @@ pair_style airebo/morse 3.0
pair_coeff * * ../potentials/CH.airebo-m H C :pre
pair_style rebo
pair_coeff * * ../potentials/CH.airebo H C :pre
pair_coeff * * ../potentials/CH.rebo H C :pre
[Description:]
@ -57,7 +57,8 @@ The {rebo} pair style computes the Reactive Empirical Bond Order (REBO)
Potential of "(Brenner)"_#Brenner. Note that this is the so-called
2nd generation REBO from 2002, not the original REBO from 1990.
As discussed below, 2nd generation REBO is closely related to the
initial AIREBO; it is just a subset of the potential energy terms.
initial AIREBO; it is just a subset of the potential energy terms
with a few slightly different parameters
The AIREBO potential consists of three terms:
@ -113,12 +114,12 @@ various dihedral angle preferences in hydrocarbon configurations.
:line
Only a single pair_coeff command is used with the {airebo}, {airebo}
or {rebo} style which specifies an AIREBO or AIREBO-M potential file
with parameters for C and H. Note that the {rebo} style in LAMMPS
uses the same AIREBO-formatted potential file. These are mapped to
LAMMPS atom types by specifying N additional arguments after the
filename in the pair_coeff command, where N is the number of LAMMPS
atom types:
or {rebo} style which specifies an AIREBO, REBO, or AIREBO-M potential
file with parameters for C and H. Note that as of LAMMPS version
15 May 2019 the {rebo} style in LAMMPS uses its own potential
file (CH.rebo). These are mapped to LAMMPS atom types by specifying
N additional arguments after the filename in the pair_coeff command,
where N is the number of LAMMPS atom types:
filename
N element names = mapping of AIREBO elements to atom types :ul

141
doc/src/pair_drip.txt Normal file
View File

@ -0,0 +1,141 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Commands_all.html)
:line
pair_style drip command :h3
[Syntax:]
pair_style hybrid/overlay drip \[styles ...\] :pre
styles = other styles to be overlayed with drip (optional) :ul
[Examples:]
pair_style hybrid/overlay drip
pair_coeff * * none
pair_coeff * * drip C.drip C :pre
pair_style hybrid/overlay drip rebo
pair_coeff * * drip C.drip C
pair_coeff * * rebo CH.airebo C :pre
pair_style hybrid/overlay drip rebo
pair_coeff * * drip C.drip C NULL
pair_coeff * * rebo CH.airebo C H :pre
[Description:]
Style {drip} computes the interlayer interactions of layered materials using
the dihedral-angle-corrected registry-dependent (DRIP) potential as described
in "(Wen)"_#Wen2018, which is based on the "(Kolmogorov)"_#Kolmogorov2005
potential and provides an improved prediction for forces.
The total potential energy of a system is
:c,image(Eqs/pair_drip.jpg)
where the {r^-6} term models the attractive London dispersion,
the exponential term is designed to capture the registry effect due to
overlapping {pi} bonds, and {fc} is a cutoff function.
This potential (DRIP) only provides the interlayer interactions between
graphene layers. So, to perform a realistic simulation, it should be used in
combination with an intralayer potential such as "REBO"_pair_airebo.html and
"Tersoff"_pair_tersoff.html.
To keep the intralayer interactions unaffected, we should avoid applying DRIP
to contribute energy to intralayer interactions. This can be achieved by
assigning different molecular IDs to atoms in different layers, and DRIP is
implemented such that only atoms with different molecular ID can interact with
each other. For this purpose, "atom style"_atom_style.html "molecular" or
"full" has to be used.
On the other way around, "REBO"_pair_airebo.html ("Tersoff"_pair_tersoff.html
or any other potential used to provide the intralayer interactions) should not
interfere with the interlayer interactions described by DRIP. This is typically
automatically achieved using the commands provided in the {Examples} section
above, since the cutoff distance for carbon-carbon interaction in the intralayer
potentials (e.g. 2 Angstrom for "REBO"_pair_airebo.html) is much smaller than
the equilibrium layer distance of graphene layers (about 3.4 Angstrom).
If you want, you can enforce this by assigning different atom types to atoms in
different layers, and apply an intralayer potential to one atom type.
See "pair_hybrid"_pair_hybrid.html for details.
:line
The "pair_coeff"_pair_coeff.html command for DRIP takes {4+N} arguments, where
{N} is the number of LAMMPS atom types. The fist three arguments must be fixed
to be {* * drip}, the fourth argument is the path to the DRIP parameter file,
and the remaining N arguments specifying the mapping between element in the
parameter file and atom types. For example, if your LAMMPS simulation has 3 atom
types and you want all of them to be C, you would use the following pair_coeff
command:
pair_coeff * * drip C.drip C C C :pre
If a mapping value is specified as NULL, the mapping is not performed. This
could be useful when DRIP is used to model part of the system where other
element exists. Suppose you have a hydrocarbon system, with C of atom type 1
and H of atom type 2, you can use the following command to inform DRIP not to
model H atoms:
pair_style hybrid/overlay drip rebo
pair_coeff * * drip C.drip C NULL
pair_coeff * * rebo CH.airebo C H :pre
NOTE: The potential parameters developed in "(Wen)"_#Wen2018 are provided with
LAMMPS (see the "potentials" directory). Besides those in "Wen"_#Wen2018, an
additional parameter "normal_cutoff", specific to the LAMMPS implementation, is
used to find the three nearest neighbors of an atom to construct the normal.
:line
[Mixing, shift, table, tail correction, and restart info]:
This pair style does not support the pair_modify mix, shift, table,
and tail options.
This pair style does not write their information to binary restart files, since
it is stored in potential files. Thus, you need to re-specify the pair_style and
pair_coeff commands in an input script that reads a restart file.
[Restrictions:]
This pair style is part of the USER-MISC package. It is only enabled if LAMMPS
was built with that package. See the "Build package"_Build_package.html doc
page for more info.
This pair potential requires the "newton"_newton.html setting to be "on" for
pair interactions.
The {C.drip} parameter file provided with LAMMPS (see the "potentials"
directory) is parameterized for metal "units"_units.html. You can use the DRIP
potential with any LAMMPS units, but you would need to create your own custom
parameter file with coefficients listed in the appropriate units, if your
simulation doesn't use "metal" units.
[Related commands:]
"pair_style lebedeva_z"_pair_lebedeva_z.html,
"pair_style kolmogorov/crespi/z"_pair_kolmogorov_crespi_z.html,
"pair_style kolmogorov/crespi/full"_pair_kolmogorov_crespi_full.html,
"pair_style ilp/graphene/hbn"_pair_ilp_graphene_hbn.html.
:line
:link(Wen2018)
[(Wen)] M. Wen, S. Carr, S. Fang, E. Kaxiras, and E. B. Tadmor, Phys. Rev. B,
98, 235404 (2018)
:link(Kolmogorov2005)
[(Kolmogorov)] A. N. Kolmogorov, V. H. Crespi, Phys. Rev. B 71, 235415 (2005)

140
doc/src/pair_e3b.txt Normal file
View File

@ -0,0 +1,140 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Commands_all.html)
:line
pair_style e3b command :h3
[Syntax:]
pair_style e3b Otype :pre
Otype = atom type for oxygen :l
pair_coeff * * keyword :pre
one or more keyword/value pairs must be appended. :l
keyword = {preset} or {Ea} or {Eb} or {Ec} or {E2} or {K3} or {K2} or {Rs} or {Rc3} or {Rc2} or {bondL} or {neigh} :l
If the {preset} keyword is given, no others are needed.
Otherwise, all are mandatory except for {neigh}.
The {neigh} keyword is always optional. :l
{preset} arg = {2011} or {2015} = which set of predefined parameters to use
2011 = use the potential parameters from "(Tainter 2011)"_#Tainter2011
2015 = use the potential parameters from "(Tainter 2015)"_#Tainter2015
{Ea} arg = three-body energy for type A hydrogen bonding interactions (energy units)
{Eb} arg = three-body energy for type B hydrogen bonding interactions (energy units)
{Ec} arg = three-body energy for type C hydrogen bonding interactions (energy units)
{E2} arg = two-body energy correction (energy units)
{K3} arg = three-body exponential constant (inverse distance units)
{K2} arg = two-body exponential constant (inverse distance units)
{Rc3} arg = three-body cutoff (distance units)
{Rc2} arg = two-body cutoff (distance units)
{Rs} arg = three-body switching function cutoff (distance units)
{bondL} arg = intramolecular OH bond length (distance units)
{neigh} arg = approximate integer number of molecules within Rc3 of an oxygen atom :pre
[Examples:]
pair_style e3b 1
pair_coeff * * Ea 35.85 Eb -240.2 Ec 449.3 E2 108269.9 K3 1.907 K2 4.872 Rc3 5.2 Rc2 5.2 Rs 5.0 bondL 0.9572 :pre
pair_style hybrid/overlay e3b 1 lj/cut/tip4p/long 1 2 1 1 0.15 8.5
pair_coeff * * e3b preset 2011 :pre
[Description:]
The {e3b} style computes an \"explicit three-body\" (E3B) potential for water "(Kumar 2008)"_#Kumar.
:c,image(Eqs/e3b.jpg)
This potential was developed as a water model that includes the three-body cooperativity of hydrogen bonding explicitly.
To use it in this way, it must be applied in conjunction with a conventional two-body water model, through {pair_style hybrid/overlay}.
The three body interactions are split into three types: A, B, and C.
Type A corresponds to anti-cooperative double hydrogen bond donor interactions.
Type B corresponds to the cooperative interaction of molecules that both donate and accept a hydrogen bond.
Type C corresponds to anti-cooperative double hydrogen bond acceptor interactions.
The three-body interactions are smoothly cutoff by the switching function s(r) between Rs and Rc3.
The two-body interactions are designed to correct for the effective many-body interactions implicitly included in the conventional two-body potential.
The two-body interactions are cut off sharply at Rc2, because K3 is typically significantly smaller than K2.
See "(Kumar 2008)"_#Kumar for more details.
Only a single {pair_coeff} command is used with the {e3b} style.
The 1st two arguments must be * *.
The oxygen atom type for the pair style is passed as the only argument to the {pair_style} command, not in the {pair_coeff} command.
The hydrogen atom type is inferred by the ordering of the atoms.
NOTE: Every atom of type Otype must be part of a water molecule.
Each water molecule must have consecutive IDs with the oxygen first.
This pair style does not test that this criteria is met.
The {pair_coeff} command must have at least one keyword/value pair, as described above.
The {preset} keyword sets the potential parameters to the values used in "(Tainter 2011)"_#Tainter2011 or "(Tainter 2015)"_#Tainter2015.
To use the water models defined in those references, the {e3b} style should always be used in conjunction with an {lj/cut/tip4p/long} style through {pair_style hybrid/overlay}, as demonstrated in the second example above.
The {preset 2011} option should be used with the "TIP4P water model"_Howto_tip4p.html.
The {preset 2015} option should be used with the "TIP4P/2005 water model"_Howto_tip4p.html.
If the {preset} keyword is used, no other keyword is needed.
Changes to the preset parameters can be made by specifying the {preset} keyword followed by the specific parameter to change, like {Ea}.
Note that the other keywords must come after {preset} in the pair_style command.
The {e3b} style can also be used to implement any three-body potential of the same form by specifying all the keywords except {neigh}: {Ea}, {Eb}, {Ec}, {E2}, {K3}, {K2}, {Rc3}, {Rc2}, {Rs}, and {bondL}.
The keyword {bondL} specifies the intramolecular OH bond length of the water model being used.
This is needed to include H atoms that are within the cutoff even when the attached oxygen atom is not.
This pair style allocates arrays sized according to the number of pairwise interactions within Rc3.
To do this it needs an estimate for the number of water molecules within Rc3 of an oxygen atom.
This estimate defaults to 10 and can be changed using the {neigh} keyword, which takes an integer as an argument.
If the neigh setting is too small, the simulation will fail with the error "neigh is too small".
If the neigh setting is too large, the pair style will use more memory than necessary.
This pair style tallies a breakdown of the total E3B potential energy into sub-categories, which can be accessed via the "compute pair"_compute_pair.html command as a vector of values of length 4.
The 4 values correspond to the terms in the first equation above: the E2 term, the Ea term, the Eb term, and the Ec term.
See the examples/USER/e3b directory for a complete example script.
:line
[Mixing, shift, table, tail correction, restart, rRESPA info]:
This pair style does not support the "pair_modify"_pair_modify.html
shift, table, and tail options.
This pair style does not write its information to "binary restart
files"_restart.html, since it is stored in potential files. Thus, you
need to re-specify the pair_style and pair_coeff commands in an input
script that reads a restart file.
This pair style is incompatible with "respa"_run_style.html.
:line
[Restrictions:]
This pair style is part of the USER-MISC package. It is only enabled
if LAMMPS was built with that package. See the "Build
package"_Build_package.html doc page for more info.
This pair style requires the "newton"_newton.html setting to be "on"
for pair interactions.
This pair style requires a fixed number of atoms in the simulation, so it is incompatible with fixes like "fix deposit"_fix_deposit.html.
If the number of atoms changes between runs, this pair style must be re-initialized by calling the {pair_style} and {pair_coeffs} commands.
This is not a fundamental limitation of the pair style, but the code currently does not support a variable number of atoms.
The {preset} keyword currently only works with real, metal, si, and cgs "units"_units.html.
[Related commands:]
"pair_coeff"_pair_coeff.html, "compute pair"_compute_pair.html
[Default:]
The option default for the {neigh} keyword is 10.
:line
:link(Kumar)
[(Kumar)] Kumar and Skinner, J. Phys. Chem. B, 112, 8311 (2008)
:link(Tainter2011)
[(Tainter 2011)] Tainter, Pieniazek, Lin, and Skinner, J. Chem. Phys., 134, 184501 (2011)
:link(Tainter2015)
[(Tainter 2015)] Tainter, Shi, and Skinner, 11, 2268 (2015)

View File

@ -201,7 +201,7 @@ model. The usage of the TIP4P pair style is documented in the
"pair_lj"_pair_lj.html styles. In the soft version the parameters n, alpha_LJ
and alpha_C are set in the "pair_style"_pair_style.html command, after the
specific parameters of the TIP4P water model and before the cutoffs. The
activation parameter lambda is supplied as an argument of the the
activation parameter lambda is supplied as an argument of the
"pair_coeff"_pair_coeff.html command, after epsilon and sigma and before the
optional cutoffs.
@ -210,7 +210,7 @@ Style {lj/charmm/coul/long/soft} implements a soft-core version of the modified
"pair_lj_charmm"_pair_charmm.html style. In the soft version the parameters n,
alpha_LJ and alpha_C are set in the "pair_style"_pair_style.html command, before
the global cutoffs. The activation parameter lambda is introduced as an argument
of the the "pair_coeff"_pair_coeff.html command, after epsilon and sigma and
of the "pair_coeff"_pair_coeff.html command, after epsilon and sigma and
before the optional eps14 and sigma14.
Style {lj/class2/soft} implements a soft-core version of the 9-6 potential in

View File

@ -21,7 +21,7 @@ pair_style hybrid/overlay ilp/graphene/hbn 16.0 1
pair_coeff * * ilp/graphene/hbn BNCH.ILP B N C :pre
pair_style hybrid/overlay rebo tersoff ilp/graphene/hbn 16.0 coul/shield 16.0
pair_coeff * * rebo CH.airebo NULL NULL C
pair_coeff * * rebo CH.rebo NULL NULL C
pair_coeff * * tersoff BNC.tersoff B N NULL
pair_coeff * * ilp/graphene/hbn BNCH.ILP B N C
pair_coeff 1 1 coul/shield 0.70
@ -50,11 +50,11 @@ calculating the normals.
NOTE: This potential (ILP) is intended for interlayer interactions between two
different layers of graphene, hexagonal boron nitride (h-BN) and their hetero-junction.
To perform a realistic simulation, this potential must be used in combination with
intra-layer potential, such as "AIREBO"_pair_airebo.html or "Tersoff"_pair_tersoff.html potential.
To keep the intra-layer properties unaffected, the interlayer interaction
intralayer potential, such as "AIREBO"_pair_airebo.html or "Tersoff"_pair_tersoff.html potential.
To keep the intralayer properties unaffected, the interlayer interaction
within the same layers should be avoided. Hence, each atom has to have a layer
identifier such that atoms residing on the same layer interact via the
appropriate intra-layer potential and atoms residing on different layers
appropriate intralayer potential and atoms residing on different layers
interact via the ILP. Here, the molecule id is chosen as the layer identifier,
thus a data file with the "full" atom style is required to use this potential.
@ -117,6 +117,7 @@ units, if your simulation does not use {metal} units.
"pair_coeff"_pair_coeff.html,
"pair_none"_pair_none.html,
"pair_style hybrid/overlay"_pair_hybrid.html,
"pair_style drip"_pair_drip.html,
"pair_style pair_kolmogorov_crespi_z"_pair_kolmogorov_crespi_z.html,
"pair_style pair_kolmogorov_crespi_full"_pair_kolmogorov_crespi_full.html,
"pair_style pair_lebedeva_z"_pair_lebedeva_z.html,

View File

@ -22,7 +22,7 @@ pair_coeff * * none
pair_coeff * * kolmogorov/crespi/full CH.KC C C :pre
pair_style hybrid/overlay rebo kolmogorov/crespi/full 16.0 1
pair_coeff * * rebo CH.airebo C H
pair_coeff * * rebo CH.rebo C H
pair_coeff * * kolmogorov/crespi/full CH_taper.KC C H :pre
[Description:]
@ -44,12 +44,12 @@ can be found in pair style "ilp/graphene/hbn"_pair_ilp_graphene_hbn.html.
NOTE: This potential (ILP) is intended for interlayer interactions between two
different layers of graphene. To perform a realistic simulation, this potential
must be used in combination with intra-layer potential, such as
must be used in combination with intralayer potential, such as
"AIREBO"_pair_airebo.html or "Tersoff"_pair_tersoff.html potential.
To keep the intra-layer properties unaffected, the interlayer interaction
To keep the intralayer properties unaffected, the interlayer interaction
within the same layers should be avoided. Hence, each atom has to have a layer
identifier such that atoms residing on the same layer interact via the
appropriate intra-layer potential and atoms residing on different layers
appropriate intralayer potential and atoms residing on different layers
interact via the ILP. Here, the molecule id is chosen as the layer identifier,
thus a data file with the "full" atom style is required to use this potential.
@ -106,6 +106,7 @@ units.
"pair_coeff"_pair_coeff.html,
"pair_none"_pair_none.html,
"pair_style hybrid/overlay"_pair_hybrid.html,
"pair_style drip"_pair_drip.html,
"pair_style pair_lebedeva_z"_pair_lebedeva_z.html,
"pair_style kolmogorov/crespi/z"_pair_kolmogorov_crespi_z.html,
"pair_style ilp/graphene/hbn"_pair_ilp_graphene_hbn.html.

View File

@ -19,7 +19,7 @@ pair_coeff * * none
pair_coeff 1 2 kolmogorov/crespi/z CC.KC C C :pre
pair_style hybrid/overlay rebo kolmogorov/crespi/z 14.0
pair_coeff * * rebo CH.airebo C C
pair_coeff * * rebo CH.rebo C C
pair_coeff 1 2 kolmogorov/crespi/z CC.KC C C :pre
[Description:]
@ -59,6 +59,7 @@ package"_Build_package.html doc page for more info.
"pair_coeff"_pair_coeff.html,
"pair_none"_pair_none.html,
"pair_style hybrid/overlay"_pair_hybrid.html,
"pair_style drip"_pair_drip.html,
"pair_style ilp/graphene/hbn"_pair_ilp_graphene_hbn.html.
"pair_style kolmogorov/crespi/full"_pair_kolmogorov_crespi_full.html,
"pair_style lebedeva/z"_pair_lebedeva_z.html

View File

@ -19,8 +19,8 @@ pair_coeff * * none
pair_coeff 1 2 lebedeva/z CC.Lebedeva C C :pre
pair_style hybrid/overlay rebo lebedeva/z 14.0
pair_coeff * * rebo CH.airebo C C
pair_coeff 1 2 lebedeva/z CC.Lebedeva C C :pre
pair_coeff * * rebo CH.rebo C C
pair_coeff 1 2 lebedeva/z CC.Lebedeva C C :pre
[Description:]
@ -53,6 +53,7 @@ package"_Build_package.html doc page for more info.
"pair_coeff"_pair_coeff.html,
"pair_style none"_pair_none.html,
"pair_style hybrid/overlay"_pair_hybrid.html,
"pair_style drip"_pair_drip.html,
"pair_style ilp/graphene/hbd"_pair_ilp_graphene_hbn.html,
"pair_style kolmogorov/crespi/z"_pair_kolmogorov_crespi_z.html,
"pair_style kolmogorov/crespi/full"_pair_kolmogorov_crespi_full.html.

View File

@ -91,7 +91,7 @@ is to enable LAMMPS to "find" the 2 H atoms associated with each O
atom. For example, if the atom ID of an O atom in a TIP4P water
molecule is 500, then its 2 H atoms must have IDs 501 and 502.
See the the "Howto tip4p"_Howto_tip4p.html doc page for more
See the "Howto tip4p"_Howto_tip4p.html doc page for more
information on how to use the TIP4P pair style. Note that the
neighbor list cutoff for Coulomb interactions is effectively extended
by a distance 2*qdist when using the TIP4P pair style, to account for

View File

@ -30,16 +30,16 @@ args = list of arguments for a particular style :l
[Examples:]
pair_style lj/mdf 2.5 3.0
pair_coeff * * 1 1
pair_coeff 1 1 1 1.1 2.8 3.0 3.2 :pre
pair_coeff * * 1.0 1.0
pair_coeff 1 1 1.1 2.8 3.0 3.2 :pre
pair_style buck 2.5 3.0
pair_coeff * * 100.0 1.5 200.0
pair_coeff * * 100.0 1.5 200.0 3.0 3.5 :pre
pair_style lennard/mdf 2.5 3.0
pair_coeff * * 1 1
pair_coeff 1 1 1 1.1 2.8 3.0 3.2 :pre
pair_coeff * * 1.0 1.0
pair_coeff 1 1 1021760.3664 2120.317338 3.0 3.2 :pre
[Description:]
@ -69,11 +69,12 @@ standard 12-6 Lennard-Jones written in the epsilon/sigma form:
:c,image(Eqs/pair_mdf-4.jpg)
The following coefficients must be defined for each pair of atoms
types via the pair_coeff command as in the examples above, or in the
data file or restart files read by the "read_data"_read_data.html or
"read_restart commands"_read_restart.html, or by mixing as described
below:
Either the first two or all of the following coefficients must be
defined for each pair of atoms types via the pair_coeff command as
in the examples above, or in the data file read by the
"read_data"_read_data.html. The two cutoffs default to the global
values and epsilon and sigma can also be determined by mixing as
described below:
epsilon (energy units)
sigma (distance units)
@ -83,7 +84,9 @@ r_{cut} (distance units) :ul
:line
For the {buck/mdf} pair_style, the potential energy, {E(r)}, is the
standard Buckingham potential:
standard Buckingham potential with three required coefficients.
The two cutoffs can be omitted and default to the corresponding
global values:
:c,image(Eqs/pair_mdf-5.jpg)
@ -91,19 +94,20 @@ A (energy units)
\rho (distance units)
C (energy-distance^6 units)
r_m (distance units)
r_{cut}$ (distance units) :ul
r_{cut} (distance units) :ul
:line
For the {lennard/mdf} pair_style, the potential energy, {E(r)}, is the
standard 12-6 Lennard-Jones written in the $A/B$ form:
standard 12-6 Lennard-Jones written in the A/B form:
:c,image(Eqs/pair_mdf-6.jpg)
The following coefficients must be defined for each pair of atoms
types via the pair_coeff command as in the examples above, or in the
data file or restart files read by the read_data or read_restart
commands, or by mixing as described below:
data file read by the read_data commands, or by mixing as described below.
The two cutoffs default to their global values and must be either both
given or both left out:
A (energy-distance^12 units)
B (energy-distance^6 units)
@ -115,33 +119,23 @@ r_{cut} (distance units) :ul
[Mixing, shift, table, tail correction, restart, rRESPA info]:
For atom type pairs I,J and I != J, the epsilon and sigma coefficients
and cutoff distance for all of the lj/cut pair styles can be mixed.
and cutoff distances for the lj/mdf pair style can be mixed.
The default mix value is {geometric}. See the "pair_modify" command
for details.
for details. The other two pair styles buck/mdf and lennard/mdf do not
support mixing, so all I,J pairs of coefficients must be specified
explicitly.
All of the {lj/cut} pair styles support the
"pair_modify"_pair_modify.html shift option for the energy of the
Lennard-Jones portion of the pair interaction.
None of the lj/mdf, buck/mdf, or lennard/mdf pair styles supports
the "pair_modify"_pair_modify.html shift option or long-range
tail corrections to pressure and energy.
The {lj/cut/coul/long} and {lj/cut/tip4p/long} pair styles support the
"pair_modify"_pair_modify.html table option since they can tabulate
the short-range portion of the long-range Coulombic interaction.
These styles write their information to "binary restart
files"_restart.html, so pair_style and pair_coeff commands do not need
to be specified in an input script that reads a restart file.
All of the {lj/cut} pair styles support the
"pair_modify"_pair_modify.html tail option for adding a long-range
tail correction to the energy and pressure for the Lennard-Jones
portion of the pair interaction.
All of the {lj/cut} pair styles write their information to "binary
restart files"_restart.html, so pair_style and pair_coeff commands do
not need to be specified in an input script that reads a restart file.
The {lj/cut} and {lj/cut/coul/long} pair styles support the use of the
{inner}, {middle}, and {outer} keywords of the "run_style
respa"_run_style.html command, meaning the pairwise forces can be
partitioned by distance at different levels of the rRESPA hierarchy.
The other styles only support the {pair} keyword of run_style respa.
See the "run_style"_run_style.html command for details.
These styles can only be used via the {pair} keyword of the "run_style
respa"_run_style.html command. They do not support the {inner},
{middle}, {outer} keywords.
:line

View File

@ -92,10 +92,6 @@ pairs from the neighbor list. This needs to be very carefully tested,
because it may remove pairs from the neighbor list that are still
required.
Pair style {quip} cannot be used with pair style {hybrid}, only
with {hybrid/overlay} and only the {quip} sub-style is applied to
all atom types.
[Related commands:]
"pair_coeff"_pair_coeff.html

View File

@ -147,6 +147,8 @@ accelerated styles exist.
"dpd/fdt/energy"_pair_dpd_fdt.html - DPD for constant energy and enthalpy
"dpd/tstat"_pair_dpd.html - pair-wise DPD thermostatting
"dsmc"_pair_dsmc.html - Direct Simulation Monte Carlo (DSMC)
"e3b"_pair_e3b.html - Explicit-three body (E3B) water model
"drip"_pair_drip.html - Dihedral-angle-corrected registry-dependent interlayer potential (DRIP)
"eam"_pair_eam.html - embedded atom method (EAM)
"eam/alloy"_pair_eam.html - alloy EAM
"eam/cd"_pair_eam.html - concentration-dependent EAM
@ -174,7 +176,7 @@ accelerated styles exist.
"kolmogorov/crespi/full"_pair_kolmogorov_crespi_full.html - Kolmogorov-Crespi (KC) potential with no simplifications
"kolmogorov/crespi/z"_pair_kolmogorov_crespi_z.html - Kolmogorov-Crespi (KC) potential with normals along z-axis
"lcbop"_pair_lcbop.html - long-range bond-order potential (LCBOP)
"lebedeva/z"_pair_lebedeva_z.html - Lebedeva inter-layer potential for graphene with normals along z-axis
"lebedeva/z"_pair_lebedeva_z.html - Lebedeva interlayer potential for graphene with normals along z-axis
"lennard/mdf"_pair_mdf.html - LJ potential in A/B form with a taper function
"line/lj"_pair_line_lj.html - LJ potential between line segments
"list"_pair_list.html - potential between pairs of atoms explicitly listed in an input file

View File

@ -63,7 +63,7 @@ equally spaced in R^2 space from cutinner^2 to cutoff^2. For the
two-body term in the above equation, a linear interpolation for each
pairwise distance between adjacent points in the table. In practice
the tabulated version can run 3-5x faster than the analytic version
with with moderate to little loss of accuracy for Ntable values
with moderate to little loss of accuracy for Ntable values
between 10000 and 1000000. It is not recommended to use less than
5000 tabulation points.

View File

@ -31,7 +31,9 @@ Pair Styles :h1
pair_dipole
pair_dpd
pair_dpd_fdt
pair_drip
pair_dsmc
pair_e3b
pair_eam
pair_edip
pair_eff

View File

@ -480,7 +480,7 @@ information on those settings.
If you use Python code which calls back to LAMMPS, via the SELF input
argument explained above, there is an extra step required when
building LAMMPS. LAMMPS must also be built as a shared library and
your Python function must be able to to load the Python module in
your Python function must be able to load the Python module in
python/lammps.py that wraps the LAMMPS library interface. These are
the same steps required to use Python by itself to wrap LAMMPS.
Details on these steps are explained on the "Python"_Python_head.html

View File

@ -701,7 +701,7 @@ of 0 means the atom is still inside the box when unwrapped. A value
of 2 means add 2 box lengths to get the unwrapped coordinate. A value
of -1 means subtract 1 box length to get the unwrapped coordinate.
LAMMPS updates these flags as atoms cross periodic boundaries during
the simulation. The "dump"_dump.html command can output atom atom
the simulation. The "dump"_dump.html command can output atom
coordinates in wrapped or unwrapped form, as well as the 3 image
flags.

View File

@ -65,7 +65,7 @@ in this pseudo code is a pointer to an instance of the CSlib.
See the src/MESSAGE/server_md.cpp and src/MESSAGE/fix_client_md.cpp
files for details on how LAMMPS uses these messages. See the
examples/COUPLE/lammps_vasp/vasp_wrapper.py file for an example of how
a quantum code (VASP) can use use these messages.
a quantum code (VASP) can use these messages.
The following pseudo-code uses these values, defined as enums.

View File

@ -62,7 +62,7 @@ results at a specified lower temperature. A good overview of
accelerated dynamics methods for such systems is given in "this review
paper"_#Voter2002 from the same group. In general, these methods assume
that the long-time dynamics is dominated by infrequent events i.e. the
system is is confined to low energy basins for long periods,
system is confined to low energy basins for long periods,
punctuated by brief, randomly-occurring transitions to adjacent
basins. TAD is suitable for infrequent-event systems, where in
addition, the transition kinetics are well-approximated by harmonic

View File

@ -293,7 +293,7 @@ list of runs (e.g. 1000) without having to list N strings in the input
script.
For the {string} style, a single string is assigned to the variable.
Two differences between this this and using the {index} style exist:
Two differences between this style and using the {index} style exist:
a variable with {string} style can be redefined, e.g. by another command later
in the input script, or if the script is read again in a loop. The other
difference is that {string} performs variable substitution even if the
@ -359,7 +359,7 @@ per-atom values is read, a non-blank line is searched for in the file.
A comment character "#" can be used anywhere on a line; text starting
with the comment character is stripped. Blank lines are skipped. The
first "word" of a non-blank line, delimited by white-space, is read as
the count N of per-atom lines to immediately follow. N can be be the
the count N of per-atom lines to immediately follow. N can be the
total number of atoms in the system, or only a subset. The next N
lines have the following format
@ -931,7 +931,7 @@ with ID = 243. Or they can take a variable name, specified as v_name,
where name is the name of the variable, like x\[v_myIndex\]. The
variable can be of any style except {vector} or {atom} or {atomfile}
variables. The variable is evaluated and the result is expected to be
numeric and is cast to an integer (i.e. 3.4 becomes 3), to use an an
numeric and is cast to an integer (i.e. 3.4 becomes 3), to use an
index, which must be a value from 1 to N. Note that a "formula"
cannot be used as the argument between the brackets, e.g. x\[243+10\]
or x\[v_myIndex+1\] are not allowed. To do this a single variable can

View File

@ -157,7 +157,7 @@ is issued.
The {bias} keyword with a {yes} setting is used by {create} and
{scale}, but only if the {temp} keyword is also used to specify a
"compute"_compute.html that calculates temperature in a desired way.
If the temperature compute also calculates a velocity bias, the the
If the temperature compute also calculates a velocity bias, the
bias is subtracted from atom velocities before the {create} and
{scale} operations are performed. After the operations, the bias is
added back to the atom velocities. See the "Howto

View File

@ -26,11 +26,9 @@ coefficients in a way, that it can be read by LAMMPS with the
option of "write_data"_write_data.html this can be used to move
the Coeffs sections from a data file into a separate file.
NOTE: The write_coeff command is not yet fully implemented in two
respects. First, some pair styles do not yet write their coefficient
information into the coeff file. This means you will need to specify
that information in your input script that reads the data file, via
the "pair_coeff"_pair_coeff.html command.
NOTE: The write_coeff command is not yet fully implemented as
some pair styles do not output their coefficient information.
This means you will need to add/copy this information manually.
:line

View File

@ -106,7 +106,7 @@ written for all I,J pairs where I <= J. These coefficients will
include any specific settings made in the input script up to that
point. The presence of these I != J coefficients in the data file
will effectively turn off the default mixing rule for the pair style.
Again, the coefficient values in the data file can can be overridden
Again, the coefficient values in the data file can be overridden
in the input script after reading the data file, by specifying
additional "pair_coeff"_pair_coeff.html commands for any desired I,J
pairs.

View File

@ -57,8 +57,10 @@ alchemical
AlCu
Alderton
Alejandre
Aleksei
alessandro
Alessandro
ali
aliceblue
Allinger
allocaters
@ -87,6 +89,7 @@ anharmonic
anharmonicity
aniso
anisotropic
anisotropies
anisotropy
ansi
antiquewhite
@ -406,6 +409,7 @@ configfile
configurational
conformational
Contrib
cooperativity
coord
Coord
CoordN
@ -652,6 +656,7 @@ Eacn
eam
eangle
eatom
Eb
Eba
ebond
ebook
@ -1134,6 +1139,7 @@ incrementing
indenter
indenters
indianred
indices
inertiax
inertiay
inertiaz
@ -1160,6 +1166,7 @@ Interparticle
interstitials
Intr
intra
intralayer
intramolecular
ints
inv
@ -1192,6 +1199,7 @@ Itsets
itype
itypeN
iva
Ivanov
Ivector
Iw
ixcm
@ -1248,6 +1256,7 @@ jpg
JPG
jpl
Jth
jtranch
jtype
jtypeN
Juelich
@ -1276,6 +1285,7 @@ Katsnelson
Katsura
Kaufmann
Kawata
Kaxiras
Kayser
kb
kB
@ -2006,6 +2016,7 @@ ortho
orthonormal
orthorhombic
ot
Otype
Ouldridge
outfile
outmost
@ -2102,6 +2113,7 @@ picograms
picosecond
picoseconds
pid
Pieniazek
Pieter
pimd
Pisarev
@ -2471,6 +2483,7 @@ Shardlow
shawn
Shen
Shenderova
Shi
Shiga
Shinoda
shockvel
@ -2497,6 +2510,7 @@ sizex
sj
sjplimp
sjtu
Skomski
skyblue
Skylake
slateblue
@ -2634,6 +2648,7 @@ Tadmor
Tafipolsky
tagID
tagint
Tainter
Tait
taitwater
Tajkhorshid
@ -2693,6 +2708,7 @@ Thiaville
Thibaudeau
Thijsse
Thirumalai
threebody
thrid
ThunderX
thylakoid

View File

@ -1,6 +1,6 @@
This directory contains 4 input scripts for carrying out NEMD
simulations of thermal gradients for a Lennard-Jones fluid and SPC/E
water using the HEX/a (fix heat) and eHEX/a (fix ehex) algorithms.
water using the HEX/a (fix ehex w/ hex option) and eHEX/a (fix ehex) algorithms.
All input scripts are part of the supplementary (open access) material
supporting the publication of Wirnsberger et al. [J. Chem. Phys. 143,

View File

@ -64,37 +64,37 @@ balance: dynamic load balancing, 2d system
body: body particles, 2d system
cmap: CMAP 5-body contributions to CHARMM force field
colloid: big colloid particles in a small particle solvent, 2d system
comb: models using the COMB potential
comb: models using the COMB potential
coreshell: adiabatic core/shell model
controller: use of fix controller as a thermostat
crack: crack propagation in a 2d solid
crack: crack propagation in a 2d solid
deposit: deposition of atoms and molecules onto a 3d substrate
dipole: point dipolar particles, 2d system
dreiding: methanol via Dreiding FF
eim: NaCl using the EIM potential
ellipse: ellipsoidal particles in spherical solvent, 2d system
flow: Couette and Poiseuille flow in a 2d channel
flow: Couette and Poiseuille flow in a 2d channel
friction: frictional contact of spherical asperities between 2d surfaces
gcmc: Grand Canonical Monte Carlo (GCMC) via the fix gcmc command
granregion: use of fix wall/region/gran as boundary on granular particles
hugoniostat: Hugoniostat shock dynamics
hyper: global and local hyperdynamics of diffusion on Pt surface
indent: spherical indenter into a 2d solid
indent: spherical indenter into a 2d solid
kim: use of potentials in Knowledge Base for Interatomic Models (KIM)
latte: use of LATTE density-functional tight-binding quantum code
meam: MEAM test for SiC and shear (same as shear examples)
melt: rapid melt of 3d LJ system
meam: MEAM test for SiC and shear (same as shear examples)
melt: rapid melt of 3d LJ system
message: client/server coupling of 2 codes
micelle: self-assembly of small lipid-like molecules into 2d bilayers
min: energy minimization of 2d LJ melt
min: energy minimization of 2d LJ melt
mscg: parameterize a multi-scale coarse-graining (MSCG) model
msst: MSST shock dynamics
msst: MSST shock dynamics
nb3b: use of nonbonded 3-body harmonic pair style
neb: nudged elastic band (NEB) calculation for barrier finding
nemd: non-equilibrium MD of 2d sheared system
neb: nudged elastic band (NEB) calculation for barrier finding
nemd: non-equilibrium MD of 2d sheared system
obstacle: flow around two voids in a 2d channel
peptide: dynamics of a small solvated peptide chain (5-mer)
peri: Peridynamic model of cylinder impacted by indenter
peri: Peridynamic model of cylinder impacted by indenter
pour: pouring of granular particles into a 3d box, then chute flow
prd: parallel replica dynamics of vacancy diffusion in bulk Si
python: use of PYTHON package to invoke Python code from input script
@ -107,6 +107,7 @@ srd: stochastic rotation dynamics (SRD) particles as solvent
snap: NVE dynamics for BCC tantalum crystal using SNAP potential
streitz: Streitz-Mintmire potential for Al2O3
tad: temperature-accelerated dynamics of vacancy diffusion in bulk Si
threebody: regression test input for a variety of manybody potentials
vashishta: models using the Vashishta potential
voronoi: Voronoi tesselation via compute voronoi/atom command
@ -117,9 +118,7 @@ cp ../../src/lmp_mpi . # copy LAMMPS executable to this dir
lmp_mpi -in in.indent # run the problem
Running the simulation produces the files {dump.indent} and
{log.lammps}. You can visualize the dump file as follows:
../../tools/xmovie/xmovie -scale dump.indent
{log.lammps}.
If you uncomment the dump image line(s) in the input script a series
of JPG images will be produced by the run. These can be viewed

View File

@ -0,0 +1,60 @@
# bcc iron in a 3d periodic box
clear
units metal
atom_style spin
dimension 3
boundary p p p
# necessary for the serial algorithm (sametag)
atom_modify map array
lattice bcc 2.8665
region box block 0.0 5.0 0.0 5.0 0.0 5.0
create_box 1 box
create_atoms 1 box
# setting mass, mag. moments, and interactions for bcc iron
mass 1 55.845
set group all spin 2.2 -1.0 0.0 0.0
velocity all create 100 4928459 rot yes dist gaussian
pair_style hybrid/overlay eam/alloy spin/exchange 3.5
pair_coeff * * eam/alloy Fe_Mishin2006.eam.alloy Fe
pair_coeff * * spin/exchange exchange 3.4 0.02726 0.2171 1.841
neighbor 0.1 bin
neigh_modify every 10 check yes delay 20
fix 1 all precession/spin cubic 0.001 0.0005 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0
fix_modify 1 energy yes
fix 2 all langevin/spin 0.0 0.0 21
fix 3 all nve/spin lattice yes
timestep 0.0001
# compute and output options
compute out_mag all spin
compute out_pe all pe
compute out_ke all ke
compute out_temp all temp
variable magx equal c_out_mag[1]
variable magy equal c_out_mag[2]
variable magz equal c_out_mag[3]
variable magnorm equal c_out_mag[4]
variable emag equal c_out_mag[5]
variable tmag equal c_out_mag[6]
thermo_style custom step time v_magx v_magy v_magz v_magnorm v_tmag v_emag pe etotal
thermo 50
compute outsp all property/atom spx spy spz sp fmx fmy fmz
dump 100 all custom 1 dump_iron.lammpstrj type x y z c_outsp[1] c_outsp[2] c_outsp[3]
run 2000
# min_style spin
# min_modify alpha_damp 1.0 discrete_factor 10
# minimize 1.0e-16 1.0e-16 10000 10000

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,161 @@
LAMMPS (30 Apr 2019)
using 1 OpenMP thread(s) per MPI task
# bcc iron in a 3d periodic box
clear
using 1 OpenMP thread(s) per MPI task
units metal
atom_style spin
dimension 3
boundary p p p
# necessary for the serial algorithm (sametag)
atom_modify map array
lattice bcc 2.8665
Lattice spacing in x,y,z = 2.8665 2.8665 2.8665
region box block 0.0 5.0 0.0 5.0 0.0 5.0
create_box 1 box
Created orthogonal box = (0 0 0) to (14.3325 14.3325 14.3325)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 250 atoms
create_atoms CPU = 0.0527296 secs
# setting mass, mag. moments, and interactions for bcc iron
mass 1 55.845
set group all spin 2.2 -1.0 0.0 0.0
250 settings made for spin
velocity all create 100 4928459 rot yes dist gaussian
pair_style hybrid/overlay eam/alloy spin/exchange 3.5
pair_coeff * * eam/alloy Fe_Mishin2006.eam.alloy Fe
pair_coeff * * spin/exchange exchange 3.4 0.02726 0.2171 1.841
neighbor 0.1 bin
neigh_modify every 10 check yes delay 20
fix 1 all precession/spin cubic 0.001 0.0005 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0
fix_modify 1 energy yes
fix 2 all langevin/spin 0.0 0.0 21
fix 3 all nve/spin lattice yes
timestep 0.0001
# compute and output options
compute out_mag all spin
compute out_pe all pe
compute out_ke all ke
compute out_temp all temp
variable magx equal c_out_mag[1]
variable magy equal c_out_mag[2]
variable magz equal c_out_mag[3]
variable magnorm equal c_out_mag[4]
variable emag equal c_out_mag[5]
variable tmag equal c_out_mag[6]
thermo_style custom step time v_magx v_magy v_magz v_magnorm v_tmag v_emag pe etotal
thermo 50
compute outsp all property/atom spx spy spz sp fmx fmy fmz
dump 100 all custom 1 dump_iron.lammpstrj type x y z c_outsp[1] c_outsp[2] c_outsp[3]
run 2000
Neighbor list info ...
update every 10 steps, delay 20 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.77337
ghost atom cutoff = 5.77337
binsize = 2.88668, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair eam/alloy, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair spin/exchange, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 7.319 | 7.319 | 7.319 Mbytes
Step Time v_magx v_magy v_magz v_magnorm v_tmag v_emag PotEng TotEng
0 0 -1 0 0 1 0 -55.58269 -1125.5827 -1122.364
50 0.005 -1 0 0 1 0 -55.581417 -1125.4672 -1122.364
100 0.01 -1 0 0 1 0 -55.577759 -1125.1389 -1122.364
150 0.015 -1 0 0 1 0 -55.57219 -1124.6538 -1122.364
200 0.02 -1 0 0 1 0 -55.565438 -1124.099 -1122.364
250 0.025 -1 0 0 1 0 -55.558379 -1123.5779 -1122.364
300 0.03 -1 0 0 1 0 -55.551886 -1123.1862 -1122.364
350 0.035 -1 0 0 1 0 -55.546675 -1122.9858 -1122.364
400 0.04 -1 0 0 1 0 -55.543187 -1122.9869 -1122.364
450 0.045 -1 0 0 1 0 -55.54154 -1123.1498 -1122.364
500 0.05 -1 0 0 1 0 -55.541574 -1123.4037 -1122.364
550 0.055 -1 0 0 1 0 -55.542941 -1123.672 -1122.364
600 0.06 -1 0 0 1 0 -55.545209 -1123.8931 -1122.364
650 0.065 -1 0 0 1 0 -55.547951 -1124.0315 -1122.364
700 0.07 -1 0 0 1 0 -55.550801 -1124.0798 -1122.364
750 0.075 -1 0 0 1 0 -55.553483 -1124.0546 -1122.364
800 0.08 -1 0 0 1 0 -55.555816 -1123.9877 -1122.364
850 0.085 -1 0 0 1 0 -55.557706 -1123.916 -1122.364
900 0.09 -1 0 0 1 0 -55.55913 -1123.8714 -1122.364
950 0.095 -1 0 0 1 0 -55.560111 -1123.8726 -1122.364
1000 0.1 -1 0 0 1 0 -55.560705 -1123.9215 -1122.364
1050 0.105 -1 0 0 1 0 -55.560979 -1124.0049 -1122.364
1100 0.11 -1 0 0 1 0 -55.561005 -1124.0998 -1122.364
1150 0.115 -1 0 0 1 0 -55.560847 -1124.1802 -1122.364
1200 0.12 -1 0 0 1 0 -55.560562 -1124.2247 -1122.364
1250 0.125 -1 0 0 1 0 -55.560199 -1124.2224 -1122.364
1300 0.13 -1 0 0 1 0 -55.559804 -1124.1752 -1122.364
1350 0.135 -1 0 0 1 0 -55.559416 -1124.0977 -1122.364
1400 0.14 -1 0 0 1 0 -55.559073 -1124.0124 -1122.364
1450 0.145 -1 0 0 1 0 -55.558803 -1123.9437 -1122.364
1500 0.15 -1 0 0 1 0 -55.558617 -1123.9107 -1122.364
1550 0.155 -1 0 0 1 0 -55.558503 -1123.9224 -1122.364
1600 0.16 -1 0 0 1 0 -55.558425 -1123.9749 -1122.364
1650 0.165 -1 0 0 1 0 -55.558323 -1124.0529 -1122.364
1700 0.17 -1 0 0 1 0 -55.558122 -1124.1331 -1122.364
1750 0.175 -1 0 0 1 0 -55.557751 -1124.1899 -1122.364
1800 0.18 -1 0 0 1 0 -55.557157 -1124.2023 -1122.364
1850 0.185 -1 0 0 1 0 -55.556326 -1124.1592 -1122.364
1900 0.19 -1 0 0 1 0 -55.555301 -1124.0633 -1122.364
1950 0.195 -1 0 0 1 0 -55.554178 -1123.9313 -1122.364
2000 0.2 -1 0 0 1 0 -55.553099 -1123.7904 -1122.364
Loop time of 254.052 on 1 procs for 2000 steps with 250 atoms
Performance: 0.068 ns/day, 352.850 hours/ns, 7.872 timesteps/s
99.5% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 60.584 | 60.584 | 60.584 | 0.0 | 23.85
Neigh | 0.34793 | 0.34793 | 0.34793 | 0.0 | 0.14
Comm | 1.9994 | 1.9994 | 1.9994 | 0.0 | 0.79
Output | 126.24 | 126.24 | 126.24 | 0.0 | 49.69
Modify | 64.475 | 64.475 | 64.475 | 0.0 | 25.38
Other | | 0.4024 | | | 0.16
Nlocal: 250 ave 250 max 250 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1419 ave 1419 max 1419 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 7878 ave 7878 max 7878 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 15756 ave 15756 max 15756 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 15756
Ave neighs/atom = 63.024
Neighbor list builds = 12
Dangerous builds = 0
# min_style spin
# min_modify alpha_damp 1.0 discrete_factor 10
# minimize 1.0e-16 1.0e-16 10000 10000
Please see the log.cite file for references relevant to this simulation
Total wall time: 0:04:16

View File

@ -0,0 +1,161 @@
LAMMPS (30 Apr 2019)
using 1 OpenMP thread(s) per MPI task
# bcc iron in a 3d periodic box
clear
using 1 OpenMP thread(s) per MPI task
units metal
atom_style spin
dimension 3
boundary p p p
# necessary for the serial algorithm (sametag)
atom_modify map array
lattice bcc 2.8665
Lattice spacing in x,y,z = 2.8665 2.8665 2.8665
region box block 0.0 5.0 0.0 5.0 0.0 5.0
create_box 1 box
Created orthogonal box = (0 0 0) to (14.3325 14.3325 14.3325)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
Created 250 atoms
create_atoms CPU = 0.000627756 secs
# setting mass, mag. moments, and interactions for bcc iron
mass 1 55.845
set group all spin 2.2 -1.0 0.0 0.0
250 settings made for spin
velocity all create 100 4928459 rot yes dist gaussian
pair_style hybrid/overlay eam/alloy spin/exchange 3.5
pair_coeff * * eam/alloy Fe_Mishin2006.eam.alloy Fe
pair_coeff * * spin/exchange exchange 3.4 0.02726 0.2171 1.841
neighbor 0.1 bin
neigh_modify every 10 check yes delay 20
fix 1 all precession/spin cubic 0.001 0.0005 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0
fix_modify 1 energy yes
fix 2 all langevin/spin 0.0 0.0 21
fix 3 all nve/spin lattice yes
timestep 0.0001
# compute and output options
compute out_mag all spin
compute out_pe all pe
compute out_ke all ke
compute out_temp all temp
variable magx equal c_out_mag[1]
variable magy equal c_out_mag[2]
variable magz equal c_out_mag[3]
variable magnorm equal c_out_mag[4]
variable emag equal c_out_mag[5]
variable tmag equal c_out_mag[6]
thermo_style custom step time v_magx v_magy v_magz v_magnorm v_tmag v_emag pe etotal
thermo 50
compute outsp all property/atom spx spy spz sp fmx fmy fmz
dump 100 all custom 1 dump_iron.lammpstrj type x y z c_outsp[1] c_outsp[2] c_outsp[3]
run 2000
Neighbor list info ...
update every 10 steps, delay 20 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.77337
ghost atom cutoff = 5.77337
binsize = 2.88668, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair eam/alloy, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair spin/exchange, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 7.265 | 7.265 | 7.265 Mbytes
Step Time v_magx v_magy v_magz v_magnorm v_tmag v_emag PotEng TotEng
0 0 -1 0 0 1 0 -55.58269 -1125.5827 -1122.364
50 0.005 -1 0 0 1 0 -55.581457 -1125.4635 -1122.364
100 0.01 -1 0 0 1 0 -55.577922 -1125.1262 -1122.364
150 0.015 -1 0 0 1 0 -55.572562 -1124.6305 -1122.364
200 0.02 -1 0 0 1 0 -55.566098 -1124.067 -1122.364
250 0.025 -1 0 0 1 0 -55.559384 -1123.5412 -1122.364
300 0.03 -1 0 0 1 0 -55.553261 -1123.1491 -1122.364
350 0.035 -1 0 0 1 0 -55.548413 -1122.9526 -1122.364
400 0.04 -1 0 0 1 0 -55.545248 -1122.9623 -1122.364
450 0.045 -1 0 0 1 0 -55.54387 -1123.1395 -1122.364
500 0.05 -1 0 0 1 0 -55.544101 -1123.4126 -1122.364
550 0.055 -1 0 0 1 0 -55.54558 -1123.7021 -1122.364
600 0.06 -1 0 0 1 0 -55.547857 -1123.9414 -1122.364
650 0.065 -1 0 0 1 0 -55.550495 -1124.0897 -1122.364
700 0.07 -1 0 0 1 0 -55.553127 -1124.136 -1122.364
750 0.075 -1 0 0 1 0 -55.555497 -1124.0961 -1122.364
800 0.08 -1 0 0 1 0 -55.557466 -1124.0053 -1122.364
850 0.085 -1 0 0 1 0 -55.559001 -1123.9069 -1122.364
900 0.09 -1 0 0 1 0 -55.560147 -1123.8404 -1122.364
950 0.095 -1 0 0 1 0 -55.560992 -1123.8312 -1122.364
1000 0.1 -1 0 0 1 0 -55.561635 -1123.8853 -1122.364
1050 0.105 -1 0 0 1 0 -55.562156 -1123.9898 -1122.364
1100 0.11 -1 0 0 1 0 -55.562594 -1124.1174 -1122.364
1150 0.115 -1 0 0 1 0 -55.562944 -1124.2349 -1122.364
1200 0.12 -1 0 0 1 0 -55.563163 -1124.3115 -1122.364
1250 0.125 -1 0 0 1 0 -55.563193 -1124.3273 -1122.364
1300 0.13 -1 0 0 1 0 -55.562982 -1124.2776 -1122.364
1350 0.135 -1 0 0 1 0 -55.562513 -1124.1744 -1122.364
1400 0.14 -1 0 0 1 0 -55.561812 -1124.0433 -1122.364
1450 0.145 -1 0 0 1 0 -55.560956 -1123.9169 -1122.364
1500 0.15 -1 0 0 1 0 -55.560057 -1123.8268 -1122.364
1550 0.155 -1 0 0 1 0 -55.559235 -1123.7951 -1122.364
1600 0.16 -1 0 0 1 0 -55.55859 -1123.8282 -1122.364
1650 0.165 -1 0 0 1 0 -55.558174 -1123.9155 -1122.364
1700 0.17 -1 0 0 1 0 -55.557974 -1124.0311 -1122.364
1750 0.175 -1 0 0 1 0 -55.557913 -1124.1409 -1122.364
1800 0.18 -1 0 0 1 0 -55.55788 -1124.212 -1122.364
1850 0.185 -1 0 0 1 0 -55.557753 -1124.2208 -1122.364
1900 0.19 -1 0 0 1 0 -55.557448 -1124.1596 -1122.364
1950 0.195 -1 0 0 1 0 -55.556942 -1124.0384 -1122.364
2000 0.2 -1 0 0 1 0 -55.556288 -1123.883 -1122.364
Loop time of 4.39485 on 4 procs for 2000 steps with 250 atoms
Performance: 3.932 ns/day, 6.104 hours/ns, 455.078 timesteps/s
98.3% CPU use with 4 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.64527 | 0.6695 | 0.71114 | 3.3 | 15.23
Neigh | 0.0032711 | 0.0034365 | 0.0036387 | 0.3 | 0.08
Comm | 0.14872 | 0.19108 | 0.21485 | 6.1 | 4.35
Output | 0.40622 | 0.43119 | 0.45149 | 2.5 | 9.81
Modify | 3.0688 | 3.0921 | 3.1179 | 1.0 | 70.36
Other | | 0.007548 | | | 0.17
Nlocal: 62.5 ave 67 max 57 min
Histogram: 1 0 0 0 0 1 0 1 0 1
Nghost: 850.5 ave 856 max 847 min
Histogram: 1 0 1 1 0 0 0 0 0 1
Neighs: 1968.75 ave 2101 max 1792 min
Histogram: 1 0 0 0 0 1 0 1 0 1
FullNghs: 3937.5 ave 4217 max 3583 min
Histogram: 1 0 0 0 0 1 0 1 0 1
Total # of neighbors = 15750
Ave neighs/atom = 63
Neighbor list builds = 12
Dangerous builds = 0
# min_style spin
# min_modify alpha_damp 1.0 discrete_factor 10
# minimize 1.0e-16 1.0e-16 10000 10000
Please see the log.cite file for references relevant to this simulation
Total wall time: 0:00:04

View File

@ -0,0 +1,60 @@
# fcc nickel in a 3d periodic box
clear
units metal
atom_style spin
dimension 3
boundary p p p
# necessary for the serial algorithm (sametag)
atom_modify map array
lattice fcc 3.524
region box block 0.0 5.0 0.0 5.0 0.0 5.0
create_box 1 box
create_atoms 1 box
# setting mass, mag. moments, and interactions for cobalt
mass 1 58.69
set group all spin/random 31 0.63
#set group all spin 0.63 0.0 0.0 1.0
velocity all create 100 4928459 rot yes dist gaussian
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
pair_coeff * * eam/alloy Ni99.eam.alloy Ni
pair_coeff * * spin/exchange exchange 4.0 0.50 0.2280246862 1.229983475
neighbor 0.1 bin
neigh_modify every 10 check yes delay 20
fix 1 all precession/spin cubic -0.0001 0.0 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 &
zeeman 0.0 0.0 0.0 1.0
fix_modify 1 energy yes
fix 2 all langevin/spin 0.0 0.0 21
fix 3 all nve/spin lattice yes
timestep 0.0001
# compute and output options
compute out_mag all spin
compute out_pe all pe
compute out_ke all ke
compute out_temp all temp
variable magz equal c_out_mag[3]
variable magnorm equal c_out_mag[4]
variable emag equal c_out_mag[5]
variable tmag equal c_out_mag[6]
thermo_style custom step time v_magnorm v_emag temp v_tmag etotal
thermo 50
compute outsp all property/atom spx spy spz sp fmx fmy fmz
dump 50 all custom 1 dump.lammpstrj type x y z c_outsp[1] c_outsp[2] c_outsp[3] c_outsp[4] c_outsp[5] c_outsp[6] c_outsp[7]
run 2000

View File

@ -1,7 +1,9 @@
LAMMPS (11 May 2018)
LAMMPS (30 Apr 2019)
using 1 OpenMP thread(s) per MPI task
# fcc nickel in a 3d periodic box
clear
using 1 OpenMP thread(s) per MPI task
units metal
atom_style spin
@ -19,7 +21,7 @@ Created orthogonal box = (0 0 0) to (17.62 17.62 17.62)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 500 atoms
Time spent = 0.000804186 secs
create_atoms CPU = 0.000835896 secs
# setting mass, mag. moments, and interactions for cobalt
@ -45,7 +47,7 @@ timestep 0.0001
# compute and output options
compute out_mag all compute/spin
compute out_mag all spin
compute out_pe all pe
compute out_ke all ke
compute out_temp all temp
@ -122,20 +124,20 @@ Step Time v_magnorm v_emag Temp v_tmag TotEng
1900 0.19 0.028733796 -28.785208 228.39889 316.9972 -2218.1018
1950 0.195 0.028733826 -28.9724 228.84666 309.8027 -2218.1018
2000 0.2 0.02873386 -29.175039 228.918 297.88519 -2218.1018
Loop time of 10.033 on 1 procs for 2000 steps with 500 atoms
Loop time of 15.9256 on 1 procs for 2000 steps with 500 atoms
Performance: 1.722 ns/day, 13.935 hours/ns, 199.342 timesteps/s
99.4% CPU use with 1 MPI tasks x no OpenMP threads
Performance: 1.085 ns/day, 22.119 hours/ns, 125.584 timesteps/s
99.2% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 3.909 | 3.909 | 3.909 | 0.0 | 38.96
Neigh | 0.031031 | 0.031031 | 0.031031 | 0.0 | 0.31
Comm | 0.046559 | 0.046559 | 0.046559 | 0.0 | 0.46
Output | 2.4087 | 2.4087 | 2.4087 | 0.0 | 24.01
Modify | 3.625 | 3.625 | 3.625 | 0.0 | 36.13
Other | | 0.01268 | | | 0.13
Pair | 5.8677 | 5.8677 | 5.8677 | 0.0 | 36.84
Neigh | 0.051965 | 0.051965 | 0.051965 | 0.0 | 0.33
Comm | 0.088829 | 0.088829 | 0.088829 | 0.0 | 0.56
Output | 4.7019 | 4.7019 | 4.7019 | 0.0 | 29.52
Modify | 5.199 | 5.199 | 5.199 | 0.0 | 32.65
Other | | 0.01632 | | | 0.10
Nlocal: 500 ave 500 max 500 min
Histogram: 1 0 0 0 0 0 0 0 0 0
@ -154,4 +156,4 @@ Dangerous builds = 0
Please see the log.cite file for references relevant to this simulation
Total wall time: 0:00:10
Total wall time: 0:00:16

View File

@ -1,7 +1,9 @@
LAMMPS (11 May 2018)
LAMMPS (30 Apr 2019)
using 1 OpenMP thread(s) per MPI task
# fcc nickel in a 3d periodic box
clear
using 1 OpenMP thread(s) per MPI task
units metal
atom_style spin
@ -19,7 +21,7 @@ Created orthogonal box = (0 0 0) to (17.62 17.62 17.62)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
Created 500 atoms
Time spent = 0.000523567 secs
create_atoms CPU = 0.000492096 secs
# setting mass, mag. moments, and interactions for cobalt
@ -45,7 +47,7 @@ timestep 0.0001
# compute and output options
compute out_mag all compute/spin
compute out_mag all spin
compute out_pe all pe
compute out_ke all ke
compute out_temp all temp
@ -122,20 +124,20 @@ Step Time v_magnorm v_emag Temp v_tmag TotEng
1900 0.19 0.028733864 -27.967999 220.53947 322.9504 -2218.1018
1950 0.195 0.028733863 -28.173041 221.61407 318.63401 -2218.1018
2000 0.2 0.028733853 -28.362177 224.22281 310.55185 -2218.1018
Loop time of 3.95094 on 4 procs for 2000 steps with 500 atoms
Loop time of 7.69012 on 4 procs for 2000 steps with 500 atoms
Performance: 4.374 ns/day, 5.487 hours/ns, 506.208 timesteps/s
98.1% CPU use with 4 MPI tasks x no OpenMP threads
Performance: 2.247 ns/day, 10.681 hours/ns, 260.074 timesteps/s
98.6% CPU use with 4 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.0289 | 1.0467 | 1.0811 | 2.0 | 26.49
Neigh | 0.0079527 | 0.0081946 | 0.0084369 | 0.2 | 0.21
Comm | 0.094456 | 0.13311 | 0.15138 | 6.2 | 3.37
Output | 0.69702 | 0.71998 | 0.74483 | 2.1 | 18.22
Modify | 2.0107 | 2.0383 | 2.0598 | 1.3 | 51.59
Other | | 0.004668 | | | 0.12
Pair | 1.5623 | 1.5999 | 1.6541 | 2.7 | 20.80
Neigh | 0.012559 | 0.013043 | 0.013682 | 0.4 | 0.17
Comm | 0.1843 | 0.24254 | 0.27935 | 7.2 | 3.15
Output | 1.4749 | 1.5228 | 1.5694 | 2.9 | 19.80
Modify | 4.2492 | 4.3019 | 4.3507 | 1.8 | 55.94
Other | | 0.009925 | | | 0.13
Nlocal: 125 ave 132 max 120 min
Histogram: 2 0 0 0 0 1 0 0 0 1
@ -154,4 +156,4 @@ Dangerous builds = 0
Please see the log.cite file for references relevant to this simulation
Total wall time: 0:00:04
Total wall time: 0:00:07

View File

@ -0,0 +1,160 @@
LAMMPS (30 Apr 2019)
using 1 OpenMP thread(s) per MPI task
# fcc nickel in a 3d periodic box
clear
using 1 OpenMP thread(s) per MPI task
units metal
atom_style spin
dimension 3
boundary p p p
# necessary for the serial algorithm (sametag)
atom_modify map array
lattice fcc 3.524
Lattice spacing in x,y,z = 3.524 3.524 3.524
region box block 0.0 5.0 0.0 5.0 0.0 5.0
create_box 1 box
Created orthogonal box = (0 0 0) to (17.62 17.62 17.62)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 500 atoms
create_atoms CPU = 0.00068903 secs
# setting mass, mag. moments, and interactions for cobalt
mass 1 58.69
set group all spin/random 31 0.63
500 settings made for spin/random
#set group all spin 0.63 0.0 0.0 1.0
velocity all create 100 4928459 rot yes dist gaussian
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
pair_coeff * * eam/alloy Ni99.eam.alloy Ni
pair_coeff * * spin/exchange exchange 4.0 0.50 0.2280246862 1.229983475
neighbor 0.1 bin
neigh_modify every 10 check yes delay 20
fix 1 all precession/spin cubic -0.0001 0.0 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 zeeman 0.0 0.0 0.0 1.0
fix_modify 1 energy yes
fix 2 all langevin/spin 0.0 0.0 21
fix 3 all nve/spin lattice yes
timestep 0.0001
# compute and output options
compute out_mag all spin
compute out_pe all pe
compute out_ke all ke
compute out_temp all temp
variable magz equal c_out_mag[3]
variable magnorm equal c_out_mag[4]
variable emag equal c_out_mag[5]
variable tmag equal c_out_mag[6]
thermo_style custom step time v_magnorm v_emag temp v_tmag etotal
thermo 50
compute outsp all property/atom spx spy spz sp fmx fmy fmz
dump 50 all custom 1 dump.lammpstrj type x y z c_outsp[1] c_outsp[2] c_outsp[3] c_outsp[4] c_outsp[5] c_outsp[6] c_outsp[7]
run 2000
Neighbor list info ...
update every 10 steps, delay 20 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.90375
ghost atom cutoff = 5.90375
binsize = 2.95187, bins = 6 6 6
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair eam/alloy, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair spin/exchange, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 7.384 | 7.384 | 7.384 Mbytes
Step Time v_magnorm v_emag Temp v_tmag TotEng
0 0 0.028733803 0.455085 100.03408 -8603.706 -2218.0905
50 0.005 0.028732021 0.11535308 101.47887 -34407.888 -2218.0904
100 0.01 0.0287304 -0.665283 101.73105 6238.4535 -2218.09
150 0.015 0.028729403 -1.8105707 99.629794 2452.7607 -2218.0896
200 0.02 0.028731067 -3.224763 94.849715 1501.8625 -2218.0895
250 0.025 0.028732765 -4.8207784 88.447019 1110.3291 -2218.0895
300 0.03 0.028728169 -6.5331538 82.697813 905.2202 -2218.0896
350 0.035 0.02871707 -8.3059526 80.122838 772.40218 -2218.0896
400 0.04 0.028706605 -10.077613 82.389555 672.72236 -2218.0895
450 0.045 0.028701727 -11.78634 89.823176 595.82956 -2218.0894
500 0.05 0.028706691 -13.380919 101.39804 536.65866 -2218.0894
550 0.055 0.028714065 -14.824128 115.07511 491.25787 -2218.0893
600 0.06 0.028713691 -16.093505 128.58093 459.82107 -2218.089
650 0.065 0.028713232 -17.181217 140.22137 441.15183 -2218.089
700 0.07 0.02871245 -18.113035 149.60156 426.80154 -2218.0889
750 0.075 0.028712431 -18.954952 157.56849 413.61924 -2218.0891
800 0.08 0.02872489 -19.762756 164.91833 408.49483 -2218.0892
850 0.085 0.028733709 -20.538757 171.69348 407.47868 -2218.0894
900 0.09 0.028737031 -21.256095 177.71981 400.24086 -2218.0894
950 0.095 0.028743446 -21.908156 183.31613 390.46773 -2218.089
1000 0.1 0.028751809 -22.516179 189.01672 383.80802 -2218.0888
1050 0.105 0.028761625 -23.084057 194.48882 376.54433 -2218.089
1100 0.11 0.028768138 -23.565036 198.12295 366.13309 -2218.0891
1150 0.115 0.028770301 -23.937136 198.95102 354.82763 -2218.089
1200 0.12 0.028771334 -24.273509 198.31348 347.20512 -2218.0891
1250 0.125 0.028769662 -24.672789 198.26173 344.02095 -2218.0889
1300 0.13 0.028774175 -25.13917 199.48259 337.81596 -2218.0889
1350 0.135 0.028795936 -25.594094 201.33509 329.891 -2218.0889
1400 0.14 0.028824328 -25.978285 203.4984 328.81092 -2218.0886
1450 0.145 0.028846467 -26.299501 206.52931 328.61151 -2218.0886
1500 0.15 0.028858261 -26.605847 211.09044 324.29045 -2218.0888
1550 0.155 0.028852825 -26.92321 216.70656 317.24339 -2218.0888
1600 0.16 0.02885238 -27.232535 221.73117 312.50182 -2218.0888
1650 0.165 0.028857985 -27.513725 224.82466 312.32346 -2218.0887
1700 0.17 0.028863985 -27.764471 225.85697 312.80779 -2218.0887
1750 0.175 0.028868714 -27.983273 225.71411 315.37238 -2218.0888
1800 0.18 0.028871144 -28.187572 225.78979 319.44034 -2218.0888
1850 0.185 0.028865191 -28.395615 226.7477 321.25107 -2218.0889
1900 0.19 0.028855316 -28.597095 227.90237 319.98739 -2218.0889
1950 0.195 0.028853072 -28.79277 228.54008 313.04557 -2218.0886
2000 0.2 0.028855814 -29.015073 228.8643 300.40018 -2218.0885
Loop time of 16.5858 on 1 procs for 2000 steps with 500 atoms
Performance: 1.042 ns/day, 23.036 hours/ns, 120.585 timesteps/s
99.1% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 5.8835 | 5.8835 | 5.8835 | 0.0 | 35.47
Neigh | 0.05244 | 0.05244 | 0.05244 | 0.0 | 0.32
Comm | 0.092997 | 0.092997 | 0.092997 | 0.0 | 0.56
Output | 5.213 | 5.213 | 5.213 | 0.0 | 31.43
Modify | 5.3275 | 5.3275 | 5.3275 | 0.0 | 32.12
Other | | 0.01636 | | | 0.10
Nlocal: 500 ave 500 max 500 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1956 ave 1956 max 1956 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 19507 ave 19507 max 19507 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 39014 ave 39014 max 39014 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 39014
Ave neighs/atom = 78.028
Neighbor list builds = 21
Dangerous builds = 0
Please see the log.cite file for references relevant to this simulation
Total wall time: 0:00:16

View File

@ -0,0 +1,160 @@
LAMMPS (30 Apr 2019)
using 1 OpenMP thread(s) per MPI task
# fcc nickel in a 3d periodic box
clear
using 1 OpenMP thread(s) per MPI task
units metal
atom_style spin
dimension 3
boundary p p p
# necessary for the serial algorithm (sametag)
atom_modify map array
lattice fcc 3.524
Lattice spacing in x,y,z = 3.524 3.524 3.524
region box block 0.0 5.0 0.0 5.0 0.0 5.0
create_box 1 box
Created orthogonal box = (0 0 0) to (17.62 17.62 17.62)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
Created 500 atoms
create_atoms CPU = 0.000639439 secs
# setting mass, mag. moments, and interactions for cobalt
mass 1 58.69
set group all spin/random 31 0.63
500 settings made for spin/random
#set group all spin 0.63 0.0 0.0 1.0
velocity all create 100 4928459 rot yes dist gaussian
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
pair_coeff * * eam/alloy Ni99.eam.alloy Ni
pair_coeff * * spin/exchange exchange 4.0 0.50 0.2280246862 1.229983475
neighbor 0.1 bin
neigh_modify every 10 check yes delay 20
fix 1 all precession/spin cubic -0.0001 0.0 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 zeeman 0.0 0.0 0.0 1.0
fix_modify 1 energy yes
fix 2 all langevin/spin 0.0 0.0 21
fix 3 all nve/spin lattice yes
timestep 0.0001
# compute and output options
compute out_mag all spin
compute out_pe all pe
compute out_ke all ke
compute out_temp all temp
variable magz equal c_out_mag[3]
variable magnorm equal c_out_mag[4]
variable emag equal c_out_mag[5]
variable tmag equal c_out_mag[6]
thermo_style custom step time v_magnorm v_emag temp v_tmag etotal
thermo 50
compute outsp all property/atom spx spy spz sp fmx fmy fmz
dump 50 all custom 1 dump.lammpstrj type x y z c_outsp[1] c_outsp[2] c_outsp[3] c_outsp[4] c_outsp[5] c_outsp[6] c_outsp[7]
run 2000
Neighbor list info ...
update every 10 steps, delay 20 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.90375
ghost atom cutoff = 5.90375
binsize = 2.95187, bins = 6 6 6
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair eam/alloy, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair spin/exchange, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 7.298 | 7.298 | 7.298 Mbytes
Step Time v_magnorm v_emag Temp v_tmag TotEng
0 0 0.028733803 0.455085 100.03408 -8603.706 -2218.0905
50 0.005 0.028732088 0.2980989 98.74184 -13360.862 -2218.0904
100 0.01 0.02873076 -0.32911738 97.074246 12749.405 -2218.09
150 0.015 0.028730298 -1.3537059 94.073558 3353.8731 -2218.0897
200 0.02 0.028733079 -2.6807428 89.419616 1868.0661 -2218.0895
250 0.025 0.028735725 -4.2256641 84.074249 1317.4563 -2218.0893
300 0.03 0.028728939 -5.9209085 80.063263 1033.1632 -2218.0893
350 0.035 0.028716731 -7.6957087 79.36782 849.1925 -2218.0893
400 0.04 0.02871114 -9.4720832 83.055773 718.36408 -2218.0893
450 0.045 0.02870879 -11.19254 91.28713 624.04151 -2218.0891
500 0.05 0.028708873 -12.832707 103.50343 551.85983 -2218.0892
550 0.055 0.028710315 -14.370603 118.16778 497.19527 -2218.0893
600 0.06 0.028707016 -15.769641 132.83264 462.57721 -2218.089
650 0.065 0.028706727 -17.018362 145.39247 445.40608 -2218.0888
700 0.07 0.028710482 -18.137792 154.80131 439.71677 -2218.0889
750 0.075 0.028705169 -19.130471 160.53663 437.67621 -2218.0892
800 0.08 0.028695336 -19.988452 162.95918 430.42912 -2218.089
850 0.085 0.028688393 -20.758389 164.33238 420.42991 -2218.0889
900 0.09 0.028684101 -21.521505 167.76167 412.29955 -2218.089
950 0.095 0.028684705 -22.314351 174.918 403.31757 -2218.0891
1000 0.1 0.028691284 -23.080026 184.60192 391.677 -2218.0893
1050 0.105 0.028687846 -23.714845 193.76312 379.81345 -2218.0893
1100 0.11 0.028682371 -24.191738 200.43041 372.65414 -2218.0893
1150 0.115 0.028684765 -24.569816 204.39323 368.53291 -2218.0891
1200 0.12 0.028678139 -24.892093 205.879 364.46365 -2218.0892
1250 0.125 0.028669738 -25.160227 205.09197 361.98015 -2218.0893
1300 0.13 0.028666626 -25.367813 202.69136 360.10649 -2218.0891
1350 0.135 0.028665511 -25.520784 199.79027 359.68033 -2218.0892
1400 0.14 0.02866749 -25.655936 197.91217 361.218 -2218.0892
1450 0.145 0.028666916 -25.80086 198.1933 361.5167 -2218.0889
1500 0.15 0.028660248 -25.953194 200.8243 356.0167 -2218.089
1550 0.155 0.028641778 -26.137444 205.80307 349.94961 -2218.0887
1600 0.16 0.028626894 -26.393372 212.6879 347.30341 -2218.0888
1650 0.165 0.028619835 -26.707923 219.63834 340.80511 -2218.0885
1700 0.17 0.028615681 -27.023214 224.25635 329.60947 -2218.0882
1750 0.175 0.02861597 -27.301445 225.47908 321.35253 -2218.0884
1800 0.18 0.028614544 -27.53764 224.03527 320.92639 -2218.0884
1850 0.185 0.02860894 -27.741581 221.74286 323.07034 -2218.0884
1900 0.19 0.028604135 -27.943034 220.659 322.60989 -2218.0884
1950 0.195 0.028602672 -28.160901 221.85908 318.8957 -2218.0885
2000 0.2 0.028597155 -28.365986 224.55298 311.53587 -2218.0886
Loop time of 7.21663 on 4 procs for 2000 steps with 500 atoms
Performance: 2.394 ns/day, 10.023 hours/ns, 277.138 timesteps/s
98.1% CPU use with 4 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.6337 | 1.6726 | 1.7259 | 2.7 | 23.18
Neigh | 0.013023 | 0.01361 | 0.014188 | 0.4 | 0.19
Comm | 0.19005 | 0.24933 | 0.2905 | 7.5 | 3.45
Output | 1.4595 | 1.5171 | 1.5725 | 3.4 | 21.02
Modify | 3.6943 | 3.7537 | 3.8093 | 2.3 | 52.01
Other | | 0.01025 | | | 0.14
Nlocal: 125 ave 132 max 121 min
Histogram: 2 0 0 0 1 0 0 0 0 1
Nghost: 1099 ave 1103 max 1092 min
Histogram: 1 0 0 0 0 1 0 0 0 2
Neighs: 4877 ave 5097 max 4747 min
Histogram: 2 0 0 0 1 0 0 0 0 1
FullNghs: 9754 ave 10298 max 9440 min
Histogram: 2 0 0 0 1 0 0 0 0 1
Total # of neighbors = 39016
Ave neighs/atom = 78.032
Neighbor list builds = 21
Dangerous builds = 0
Please see the log.cite file for references relevant to this simulation
Total wall time: 0:00:07

6
examples/USER/e3b/README Normal file
View File

@ -0,0 +1,6 @@
The input script in.lammps simulates bulk water using the 2015 E3B potential.
This script also demonstrates the use of compute pair to calculate the
potential energy contribution of the e3b pair style. These potential energy
contributions can be found in the output file e3b.txt. See the LAMMPS
documentation for more details.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,95 @@
#LAMMPS input file
#to simulate bulk E3B3 water model
#####################################################################
variable samp_rate equal 10
variable thermo_rate equal 10
variable Wlat equal 3.10744 #for water density 0.997g/mL
variable L equal 3 #(L*2)^3 = Nmolec, L=3 -> N=216
variable equil equal 100
variable run equal 100
variable ts equal 2.0
variable Tdamp equal 100*${ts}
variable Pdamp equal 1000*${ts}
variable myT equal 298.0
variable myP equal 1.0
units real
atom_style full
dimension 3
boundary p p p
#############################################################################
#setup box
read_data e3b_box.data
#############################################################################
#set up potential
pair_style hybrid/overlay e3b 1 lj/cut/tip4p/long 1 2 1 1 0.1546 8.5
pair_modify table 0 table/disp 0 shift yes
bond_style harmonic
angle_style harmonic
kspace_style pppm/tip4p 1.0e-6
pair_coeff * * lj/cut/tip4p/long 0.0 0.0
pair_coeff 1 1 lj/cut/tip4p/long 0.1852 3.1589
pair_coeff * * e3b preset 2015
#potential coeffs aren't too important since will be rigid anyways
bond_coeff 1 554.13 0.9572
angle_coeff 1 45.769 104.52
#############################################################################
#setup for run
thermo ${thermo_rate}
thermo_style custom step vol temp epair pe etotal press density
timestep ${ts}
run_style verlet
neighbor 2.0 bin
neigh_modify every 1 delay 3 check yes
#############################################################################
#dump positions only in first batch run
#dump 7 all custom ${samp_rate} dump.lammpstrj id x y z
#dump_modify 7 sort id
#############################################################################
#initialize velocity and rigid constraint
fix rigid all shake 1.0e-8 100 0 b 1 a 1 t 1 2
velocity all create ${myT} 15856 dist gaussian rot yes mom yes
#scale velocity
run 0
velocity all scale ${myT}
compute e3b all pair e3b
fix e3b all ave/time 1 1 ${thermo_rate} c_e3b c_e3b[*] &
file e3b.txt title2 "step pe_e3b pe_e2 pe_ea pe_eb pe_ec"
#############################################################################
#equilibrate bulk water at NVT
fix 1 all nvt temp ${myT} ${myT} ${Tdamp}
run ${equil}
#############################################################################
#run at NVT
#dump 1 all custom ${samp_rate} dump.lammpstrj id x y z type
#dump_modify 1 sort id
run ${run}
# write_restart lammps.restart

View File

@ -0,0 +1,332 @@
LAMMPS (29 Mar 2019)
#LAMMPS input file
#to simulate bulk E3B3 water model
#####################################################################
variable samp_rate equal 10
variable thermo_rate equal 10
variable Wlat equal 3.10744 #for water density 0.997g/mL
variable L equal 3 #(L*2)^3 = Nmolec, L=3 -> N=216
variable equil equal 100
variable run equal 100
variable ts equal 2.0
variable Tdamp equal 100*${ts}
variable Tdamp equal 100*2
variable Pdamp equal 1000*${ts}
variable Pdamp equal 1000*2
variable myT equal 298.0
variable myP equal 1.0
units real
atom_style full
dimension 3
boundary p p p
#############################################################################
#setup box
read_data e3b_box.data
orthogonal box = (-9.32232 -9.32232 -9.32232) to (9.32232 9.32232 9.32232)
1 by 1 by 1 MPI processor grid
reading atoms ...
648 atoms
reading velocities ...
648 velocities
scanning bonds ...
2 = max bonds/atom
scanning angles ...
1 = max angles/atom
reading bonds ...
432 bonds
reading angles ...
216 angles
2 = max # of 1-2 neighbors
1 = max # of 1-3 neighbors
1 = max # of 1-4 neighbors
2 = max # of special neighbors
special bonds CPU = 0.000257254 secs
read_data CPU = 0.00286555 secs
#############################################################################
#set up potential
pair_style hybrid/overlay e3b 1 lj/cut/tip4p/long 1 2 1 1 0.1546 8.5
pair_modify table 0 table/disp 0 shift yes
bond_style harmonic
angle_style harmonic
kspace_style pppm/tip4p 1.0e-6
pair_coeff * * lj/cut/tip4p/long 0.0 0.0
pair_coeff 1 1 lj/cut/tip4p/long 0.1852 3.1589
pair_coeff * * e3b preset 2015
#potential coeffs aren't too important since will be rigid anyways
bond_coeff 1 554.13 0.9572
angle_coeff 1 45.769 104.52
#############################################################################
#setup for run
thermo ${thermo_rate}
thermo 10
thermo_style custom step vol temp epair pe etotal press density
timestep ${ts}
timestep 2
run_style verlet
neighbor 2.0 bin
neigh_modify every 1 delay 3 check yes
#############################################################################
#dump positions only in first batch run
#dump 7 all custom ${samp_rate} dump.lammpstrj id x y z
#dump_modify 7 sort id
#############################################################################
#initialize velocity and rigid constraint
fix rigid all shake 1.0e-8 100 0 b 1 a 1 t 1 2
0 = # of size 2 clusters
0 = # of size 3 clusters
0 = # of size 4 clusters
216 = # of frozen angles
find clusters CPU = 0.000185728 secs
velocity all create ${myT} 15856 dist gaussian rot yes mom yes
velocity all create 298 15856 dist gaussian rot yes mom yes
#scale velocity
run 0
PPPM initialization ...
extracting TIP4P info from pair style
using polynomial approximation for long-range coulomb (../kspace.cpp:319)
G vector (1/distance) = 0.409658
grid = 36 36 36
stencil order = 5
estimated absolute RMS force accuracy = 0.000341883
estimated relative force accuracy = 1.02957e-06
using double precision FFTs
3d grid and FFT values/proc = 91125 46656
Neighbor list info ...
update every 1 steps, delay 3 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10.8092
ghost atom cutoff = 10.8092
binsize = 5.4046, bins = 4 4 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair e3b, perpetual, skip from (2)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
(2) pair lj/cut/tip4p/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 16.4 | 16.4 | 16.4 Mbytes
Step Volume Temp E_pair PotEng TotEng Press Density
0 6481.2982 298 -512.62432 -512.62432 -129.77504 14088.322 0.99697602
Loop time of 1.19209e-06 on 1 procs for 0 steps with 648 atoms
251.7% 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 | 0 | 0 | 0.0 | 0.00
Bond | 0 | 0 | 0 | 0.0 | 0.00
Kspace | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0 | 0 | 0 | 0.0 | 0.00
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 1.192e-06 | | |100.00
Nlocal: 648 ave 648 max 648 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 5943 ave 5943 max 5943 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 18984 ave 18984 max 18984 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 18984
Ave neighs/atom = 29.2963
Ave special neighs/atom = 2
Neighbor list builds = 0
Dangerous builds = 0
velocity all scale ${myT}
velocity all scale 298
compute e3b all pe/e3b
fix e3b all ave/time 1 1 ${thermo_rate} c_e3b c_e3b[*] file e3b.txt title2 "step pe_e3b pe_ea pe_eb pe_ec pe_e2"
fix e3b all ave/time 1 1 10 c_e3b c_e3b[*] file e3b.txt title2 "step pe_e3b pe_ea pe_eb pe_ec pe_e2"
#############################################################################
#equilibrate bulk water at NVT
fix 1 all nvt temp ${myT} ${myT} ${Tdamp}
fix 1 all nvt temp 298 ${myT} ${Tdamp}
fix 1 all nvt temp 298 298 ${Tdamp}
fix 1 all nvt temp 298 298 200
run ${equil}
run 100
PPPM initialization ...
extracting TIP4P info from pair style
using polynomial approximation for long-range coulomb (../kspace.cpp:319)
G vector (1/distance) = 0.409658
grid = 36 36 36
stencil order = 5
estimated absolute RMS force accuracy = 0.000341883
estimated relative force accuracy = 1.02957e-06
using double precision FFTs
3d grid and FFT values/proc = 91125 46656
Neighbor list info ...
update every 1 steps, delay 3 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10.8092
ghost atom cutoff = 10.8092
binsize = 5.4046, bins = 4 4 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair e3b, perpetual, skip from (2)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
(2) pair lj/cut/tip4p/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 16.88 | 16.88 | 16.88 Mbytes
Step Volume Temp E_pair PotEng TotEng Press Density
0 6481.2982 298 -512.33264 -512.33264 -129.48336 14091.383 0.99697602
10 6481.2982 905.58028 -1442.0378 -1442.0378 -278.61245 -798.38952 0.99697602
20 6481.2982 816.39844 -1363.5999 -1363.5999 -314.74903 3023.9064 0.99697602
30 6481.2982 783.3897 -1370.6594 -1370.6594 -364.21587 7095.4765 0.99697602
40 6481.2982 793.12519 -1425.8404 -1425.8404 -406.88933 7030.242 0.99697602
50 6481.2982 810.90264 -1495.4822 -1495.4822 -453.69195 6944.2325 0.99697602
60 6481.2982 766.64937 -1491.2317 -1491.2317 -506.29493 9062.0151 0.99697602
70 6481.2982 761.77292 -1538.7368 -1538.7368 -560.06492 7693.2197 0.99697602
80 6481.2982 730.44938 -1554.1818 -1554.1818 -615.75215 7345.9601 0.99697602
90 6481.2982 695.46244 -1563.9869 -1563.9869 -670.50605 7809.0685 0.99697602
100 6481.2982 691.5674 -1613.2754 -1613.2754 -724.79866 7143.062 0.99697602
Loop time of 1.94577 on 1 procs for 100 steps with 648 atoms
Performance: 8.881 ns/day, 2.702 hours/ns, 51.393 timesteps/s
99.7% 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.91572 | 0.91572 | 0.91572 | 0.0 | 47.06
Bond | 6.7234e-05 | 6.7234e-05 | 6.7234e-05 | 0.0 | 0.00
Kspace | 0.92654 | 0.92654 | 0.92654 | 0.0 | 47.62
Neigh | 0.087331 | 0.087331 | 0.087331 | 0.0 | 4.49
Comm | 0.0054724 | 0.0054724 | 0.0054724 | 0.0 | 0.28
Output | 0.0003047 | 0.0003047 | 0.0003047 | 0.0 | 0.02
Modify | 0.0093319 | 0.0093319 | 0.0093319 | 0.0 | 0.48
Other | | 0.001007 | | | 0.05
Nlocal: 648 ave 648 max 648 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 5911 ave 5911 max 5911 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 19136 ave 19136 max 19136 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 19136
Ave neighs/atom = 29.5309
Ave special neighs/atom = 2
Neighbor list builds = 15
Dangerous builds = 0
#############################################################################
#run at NVT
#dump 1 all custom ${samp_rate} dump.lammpstrj id x y z type
#dump_modify 1 sort id
run ${run}
run 100
PPPM initialization ...
extracting TIP4P info from pair style
using polynomial approximation for long-range coulomb (../kspace.cpp:319)
G vector (1/distance) = 0.409658
grid = 36 36 36
stencil order = 5
estimated absolute RMS force accuracy = 0.000341883
estimated relative force accuracy = 1.02957e-06
using double precision FFTs
3d grid and FFT values/proc = 91125 46656
Neighbor list info ...
update every 1 steps, delay 3 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10.8092
ghost atom cutoff = 10.8092
binsize = 5.4046, bins = 4 4 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair e3b, perpetual, skip from (2)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
(2) pair lj/cut/tip4p/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 16.88 | 16.88 | 16.88 Mbytes
Step Volume Temp E_pair PotEng TotEng Press Density
100 6481.2982 691.5674 -1613.2754 -1613.2754 -724.79866 7131.3961 0.99697602
110 6481.2982 668.27004 -1635.5867 -1635.5867 -777.04068 6965.8705 0.99697602
120 6481.2982 646.18686 -1659.5025 -1659.5025 -829.32738 6196.7432 0.99697602
130 6481.2982 650.7802 -1716.9557 -1716.9557 -880.87943 5626.5466 0.99697602
140 6481.2982 586.262 -1681.8052 -1681.8052 -928.61728 6103.747 0.99697602
150 6481.2982 615.88299 -1767.8614 -1767.8614 -976.61859 3897.648 0.99697602
160 6481.2982 585.23516 -1773.2038 -1773.2038 -1021.3352 4821.7742 0.99697602
170 6481.2982 558.77885 -1782.2817 -1782.2817 -1064.4022 5092.7248 0.99697602
180 6481.2982 564.01576 -1830.0301 -1830.0301 -1105.4226 4316.1636 0.99697602
190 6481.2982 526.53776 -1821.3122 -1821.3122 -1144.8538 4529.5062 0.99697602
200 6481.2982 537.81273 -1873.6662 -1873.6662 -1182.7226 4244.313 0.99697602
Loop time of 1.9157 on 1 procs for 100 steps with 648 atoms
Performance: 9.020 ns/day, 2.661 hours/ns, 52.200 timesteps/s
99.6% 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.90464 | 0.90464 | 0.90464 | 0.0 | 47.22
Bond | 6.9141e-05 | 6.9141e-05 | 6.9141e-05 | 0.0 | 0.00
Kspace | 0.92769 | 0.92769 | 0.92769 | 0.0 | 48.43
Neigh | 0.067551 | 0.067551 | 0.067551 | 0.0 | 3.53
Comm | 0.0051386 | 0.0051386 | 0.0051386 | 0.0 | 0.27
Output | 0.00029993 | 0.00029993 | 0.00029993 | 0.0 | 0.02
Modify | 0.0092504 | 0.0092504 | 0.0092504 | 0.0 | 0.48
Other | | 0.001062 | | | 0.06
Nlocal: 648 ave 648 max 648 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 5901 ave 5901 max 5901 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 18971 ave 18971 max 18971 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 18971
Ave neighs/atom = 29.2762
Ave special neighs/atom = 2
Neighbor list builds = 12
Dangerous builds = 0
# write_restart lammps.restart
Please see the log.cite file for references relevant to this simulation
Total wall time: 0:00:03

View File

@ -0,0 +1,332 @@
LAMMPS (29 Mar 2019)
#LAMMPS input file
#to simulate bulk E3B3 water model
#####################################################################
variable samp_rate equal 10
variable thermo_rate equal 10
variable Wlat equal 3.10744 #for water density 0.997g/mL
variable L equal 3 #(L*2)^3 = Nmolec, L=3 -> N=216
variable equil equal 100
variable run equal 100
variable ts equal 2.0
variable Tdamp equal 100*${ts}
variable Tdamp equal 100*2
variable Pdamp equal 1000*${ts}
variable Pdamp equal 1000*2
variable myT equal 298.0
variable myP equal 1.0
units real
atom_style full
dimension 3
boundary p p p
#############################################################################
#setup box
read_data e3b_box.data
orthogonal box = (-9.32232 -9.32232 -9.32232) to (9.32232 9.32232 9.32232)
1 by 2 by 2 MPI processor grid
reading atoms ...
648 atoms
reading velocities ...
648 velocities
scanning bonds ...
2 = max bonds/atom
scanning angles ...
1 = max angles/atom
reading bonds ...
432 bonds
reading angles ...
216 angles
2 = max # of 1-2 neighbors
1 = max # of 1-3 neighbors
1 = max # of 1-4 neighbors
2 = max # of special neighbors
special bonds CPU = 0.00029397 secs
read_data CPU = 0.00397325 secs
#############################################################################
#set up potential
pair_style hybrid/overlay e3b 1 lj/cut/tip4p/long 1 2 1 1 0.1546 8.5
pair_modify table 0 table/disp 0 shift yes
bond_style harmonic
angle_style harmonic
kspace_style pppm/tip4p 1.0e-6
pair_coeff * * lj/cut/tip4p/long 0.0 0.0
pair_coeff 1 1 lj/cut/tip4p/long 0.1852 3.1589
pair_coeff * * e3b preset 2015
#potential coeffs aren't too important since will be rigid anyways
bond_coeff 1 554.13 0.9572
angle_coeff 1 45.769 104.52
#############################################################################
#setup for run
thermo ${thermo_rate}
thermo 10
thermo_style custom step vol temp epair pe etotal press density
timestep ${ts}
timestep 2
run_style verlet
neighbor 2.0 bin
neigh_modify every 1 delay 3 check yes
#############################################################################
#dump positions only in first batch run
#dump 7 all custom ${samp_rate} dump.lammpstrj id x y z
#dump_modify 7 sort id
#############################################################################
#initialize velocity and rigid constraint
fix rigid all shake 1.0e-8 100 0 b 1 a 1 t 1 2
0 = # of size 2 clusters
0 = # of size 3 clusters
0 = # of size 4 clusters
216 = # of frozen angles
find clusters CPU = 0.000289917 secs
velocity all create ${myT} 15856 dist gaussian rot yes mom yes
velocity all create 298 15856 dist gaussian rot yes mom yes
#scale velocity
run 0
PPPM initialization ...
extracting TIP4P info from pair style
using polynomial approximation for long-range coulomb (../kspace.cpp:319)
G vector (1/distance) = 0.409658
grid = 36 36 36
stencil order = 5
estimated absolute RMS force accuracy = 0.000341883
estimated relative force accuracy = 1.02957e-06
using double precision FFTs
3d grid and FFT values/proc = 32805 11664
Neighbor list info ...
update every 1 steps, delay 3 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10.8092
ghost atom cutoff = 10.8092
binsize = 5.4046, bins = 4 4 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair e3b, perpetual, skip from (2)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
(2) pair lj/cut/tip4p/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 10.69 | 10.69 | 10.69 Mbytes
Step Volume Temp E_pair PotEng TotEng Press Density
0 6481.2982 298 -512.62432 -512.62432 -129.77504 14088.322 0.99697602
Loop time of 3.30806e-05 on 4 procs for 0 steps with 648 atoms
77.1% 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 | 0 | 0 | 0.0 | 0.00
Bond | 0 | 0 | 0 | 0.0 | 0.00
Kspace | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0 | 0 | 0 | 0.0 | 0.00
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 3.308e-05 | | |100.00
Nlocal: 162 ave 168 max 157 min
Histogram: 2 0 0 0 0 0 0 1 0 1
Nghost: 3738 ave 3743 max 3732 min
Histogram: 1 0 1 0 0 0 0 0 0 2
Neighs: 4746 ave 5380 max 4318 min
Histogram: 1 1 0 0 1 0 0 0 0 1
Total # of neighbors = 18984
Ave neighs/atom = 29.2963
Ave special neighs/atom = 2
Neighbor list builds = 0
Dangerous builds = 0
velocity all scale ${myT}
velocity all scale 298
compute e3b all pe/e3b
fix e3b all ave/time 1 1 ${thermo_rate} c_e3b c_e3b[*] file e3b.txt title2 "step pe_e3b pe_ea pe_eb pe_ec pe_e2"
fix e3b all ave/time 1 1 10 c_e3b c_e3b[*] file e3b.txt title2 "step pe_e3b pe_ea pe_eb pe_ec pe_e2"
#############################################################################
#equilibrate bulk water at NVT
fix 1 all nvt temp ${myT} ${myT} ${Tdamp}
fix 1 all nvt temp 298 ${myT} ${Tdamp}
fix 1 all nvt temp 298 298 ${Tdamp}
fix 1 all nvt temp 298 298 200
run ${equil}
run 100
PPPM initialization ...
extracting TIP4P info from pair style
using polynomial approximation for long-range coulomb (../kspace.cpp:319)
G vector (1/distance) = 0.409658
grid = 36 36 36
stencil order = 5
estimated absolute RMS force accuracy = 0.000341883
estimated relative force accuracy = 1.02957e-06
using double precision FFTs
3d grid and FFT values/proc = 32805 11664
Neighbor list info ...
update every 1 steps, delay 3 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10.8092
ghost atom cutoff = 10.8092
binsize = 5.4046, bins = 4 4 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair e3b, perpetual, skip from (2)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
(2) pair lj/cut/tip4p/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.18 | 11.18 | 11.18 Mbytes
Step Volume Temp E_pair PotEng TotEng Press Density
0 6481.2982 298 -512.33264 -512.33264 -129.48336 14091.383 0.99697602
10 6481.2982 905.58028 -1442.0378 -1442.0378 -278.61245 -798.38952 0.99697602
20 6481.2982 816.39844 -1363.5999 -1363.5999 -314.74903 3023.9064 0.99697602
30 6481.2982 783.3897 -1370.6594 -1370.6594 -364.21587 7095.4765 0.99697602
40 6481.2982 793.12519 -1425.8404 -1425.8404 -406.88933 7030.242 0.99697602
50 6481.2982 810.90264 -1495.4822 -1495.4822 -453.69195 6944.2325 0.99697602
60 6481.2982 766.64937 -1491.2317 -1491.2317 -506.29493 9062.0151 0.99697602
70 6481.2982 761.77292 -1538.7368 -1538.7368 -560.06492 7693.2197 0.99697602
80 6481.2982 730.44938 -1554.1818 -1554.1818 -615.75215 7345.9601 0.99697602
90 6481.2982 695.46244 -1563.9869 -1563.9869 -670.50605 7809.0685 0.99697602
100 6481.2982 691.5674 -1613.2754 -1613.2754 -724.79866 7143.062 0.99697602
Loop time of 1.20724 on 4 procs for 100 steps with 648 atoms
Performance: 14.314 ns/day, 1.677 hours/ns, 82.834 timesteps/s
97.6% 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.37421 | 0.39416 | 0.42739 | 3.2 | 32.65
Bond | 5.8651e-05 | 7.1406e-05 | 8.2016e-05 | 0.0 | 0.01
Kspace | 0.67929 | 0.71762 | 0.74038 | 2.8 | 59.44
Neigh | 0.042206 | 0.042236 | 0.042263 | 0.0 | 3.50
Comm | 0.0248 | 0.031467 | 0.035969 | 2.7 | 2.61
Output | 0.00064564 | 0.0008018 | 0.0012648 | 0.0 | 0.07
Modify | 0.018263 | 0.01869 | 0.019076 | 0.2 | 1.55
Other | | 0.002194 | | | 0.18
Nlocal: 162 ave 170 max 151 min
Histogram: 1 0 0 0 0 1 0 1 0 1
Nghost: 3726.75 ave 3737 max 3720 min
Histogram: 1 0 1 1 0 0 0 0 0 1
Neighs: 4784 ave 5474 max 4389 min
Histogram: 1 1 1 0 0 0 0 0 0 1
Total # of neighbors = 19136
Ave neighs/atom = 29.5309
Ave special neighs/atom = 2
Neighbor list builds = 15
Dangerous builds = 0
#############################################################################
#run at NVT
#dump 1 all custom ${samp_rate} dump.lammpstrj id x y z type
#dump_modify 1 sort id
run ${run}
run 100
PPPM initialization ...
extracting TIP4P info from pair style
using polynomial approximation for long-range coulomb (../kspace.cpp:319)
G vector (1/distance) = 0.409658
grid = 36 36 36
stencil order = 5
estimated absolute RMS force accuracy = 0.000341883
estimated relative force accuracy = 1.02957e-06
using double precision FFTs
3d grid and FFT values/proc = 32805 11664
Neighbor list info ...
update every 1 steps, delay 3 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10.8092
ghost atom cutoff = 10.8092
binsize = 5.4046, bins = 4 4 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair e3b, perpetual, skip from (2)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
(2) pair lj/cut/tip4p/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 11.18 | 11.18 | 11.18 Mbytes
Step Volume Temp E_pair PotEng TotEng Press Density
100 6481.2982 691.5674 -1613.2754 -1613.2754 -724.79866 7131.3961 0.99697602
110 6481.2982 668.27004 -1635.5867 -1635.5867 -777.04068 6965.8705 0.99697602
120 6481.2982 646.18686 -1659.5025 -1659.5025 -829.32738 6196.7432 0.99697602
130 6481.2982 650.7802 -1716.9557 -1716.9557 -880.87943 5626.5466 0.99697602
140 6481.2982 586.262 -1681.8052 -1681.8052 -928.61728 6103.747 0.99697602
150 6481.2982 615.88299 -1767.8614 -1767.8614 -976.61859 3897.648 0.99697602
160 6481.2982 585.23516 -1773.2038 -1773.2038 -1021.3352 4821.7742 0.99697602
170 6481.2982 558.77885 -1782.2817 -1782.2817 -1064.4022 5092.7248 0.99697602
180 6481.2982 564.01576 -1830.0301 -1830.0301 -1105.4226 4316.1636 0.99697602
190 6481.2982 526.53776 -1821.3122 -1821.3122 -1144.8538 4529.5062 0.99697602
200 6481.2982 537.81273 -1873.6662 -1873.6662 -1182.7226 4244.313 0.99697602
Loop time of 1.21286 on 4 procs for 100 steps with 648 atoms
Performance: 14.247 ns/day, 1.685 hours/ns, 82.450 timesteps/s
97.6% 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.37664 | 0.39663 | 0.4367 | 3.8 | 32.70
Bond | 6.175e-05 | 6.7353e-05 | 7.4148e-05 | 0.0 | 0.01
Kspace | 0.6969 | 0.73237 | 0.75103 | 2.5 | 60.38
Neigh | 0.033138 | 0.03317 | 0.033202 | 0.0 | 2.73
Comm | 0.022651 | 0.02763 | 0.034947 | 3.0 | 2.28
Output | 0.00065303 | 0.00096697 | 0.0018971 | 0.0 | 0.08
Modify | 0.017379 | 0.018252 | 0.018955 | 0.4 | 1.50
Other | | 0.003775 | | | 0.31
Nlocal: 162 ave 175 max 156 min
Histogram: 1 2 0 0 0 0 0 0 0 1
Nghost: 3689.5 ave 3721 max 3651 min
Histogram: 1 0 0 0 0 1 1 0 0 1
Neighs: 4742.75 ave 5159 max 4485 min
Histogram: 2 0 0 0 1 0 0 0 0 1
Total # of neighbors = 18971
Ave neighs/atom = 29.2762
Ave special neighs/atom = 2
Neighbor list builds = 12
Dangerous builds = 0
# write_restart lammps.restart
Please see the log.cite file for references relevant to this simulation
Total wall time: 0:00:02

View File

@ -0,0 +1 @@
../../../../potentials/C.drip

Some files were not shown because too many files have changed in this diff Show More