Compare commits

..

311 Commits

Author SHA1 Message Date
a73f1d4f03 Merge pull request #2200 from akohlmey/next_lammps_version
Update version strings for next patch release
2020-06-29 14:24:02 -04:00
88a574ff8c Merge pull request #2201 from akohlmey/more-fmtlib-use
Make more use of fmtlib and utils::logmesg()
2020-06-29 13:45:43 -04:00
5c08ce0818 nb3b/harmonic parameters are in real units 2020-06-29 13:28:32 -04:00
3eda735d29 Merge branch 'master' into more-fmtlib-use 2020-06-29 13:04:22 -04:00
6ace98b64e simplifications in REPLICA 2020-06-29 12:35:20 -04:00
5263e457cb Merge pull request #2199 from akohlmey/more-internal-convenience
More application of fix/compute simplification
2020-06-29 12:33:51 -04:00
1e6e237883 avoid bogus error exit when openting potential files without units 2020-06-29 11:58:26 -04:00
e6c4036a62 Merge branch 'master' into more-internal-convenience
# Conflicts:
#	src/group.cpp
2020-06-29 11:50:43 -04:00
96d943513e more output cleanup in MISC, MLIAP, MOLECULE, and POEMS 2020-06-29 11:48:54 -04:00
d84a47707b Merge pull request #2198 from akohlmey/more-unit-convert-support
Add metal2real or real2metal unit conversion support to a few more pair styles
2020-06-29 11:19:37 -04:00
9c762b96a6 Merge pull request #2188 from stanmoore1/kk_snap_ice
Add workaround in Kokkos PairSnap for gcc compiler bug
2020-06-29 10:56:06 -04:00
f46ba32627 Merge pull request #2195 from jrgissing/bond/react-reformat
Bond/react reformat
2020-06-29 10:12:29 -04:00
6de33bc676 Merge pull request #7 from charlessievers/kk_snap_ice
remove jalloy
2020-06-29 08:04:05 -06:00
5e183ecb33 simplify in MANYBODY and MC package 2020-06-29 08:32:51 -04:00
7de4655e69 simplify output in KSPACE package 2020-06-29 08:17:27 -04:00
b1d4ca2b03 simplify class2 dihedral and improper 2020-06-29 01:09:43 -04:00
5e8a877f55 simplify pppm init output 2020-06-29 00:59:33 -04:00
385d239b9e small tweak for passing r-RESPA tests with coulomb table 2020-06-29 00:59:01 -04:00
ab04416bfd fix typo 2020-06-29 00:10:34 -04:00
3a0ae83c96 apply simplifications to standard packages 2020-06-29 00:06:28 -04:00
a1c0b78a3a final set of styles in the src folder to be simplified 2020-06-28 23:25:37 -04:00
5585e3187f step version strings for next patch release 2020-06-28 19:30:24 -04:00
f94eeece72 Update group.h 2020-06-28 19:22:45 -04:00
3cd1341e64 make more use of convenience functions for adding fixes and computes 2020-06-28 18:57:22 -04:00
df29364be8 simplify find/delete fix/compute functions in modify.cpp 2020-06-28 18:39:19 -04:00
f670464a3e use simplified group->assign 2020-06-28 18:02:35 -04:00
f0a983b465 add group::assign convenience version 2020-06-28 17:46:08 -04:00
5911ad49ba use symlink instead of copy of the potential file 2020-06-28 16:50:39 -04:00
435ac9078b add unit conversion to pair styles eim, gw, gw/zbl, and nb3b/harmonic 2020-06-28 16:49:23 -04:00
3044d83c5e Update fix_bond_react.cpp 2020-06-27 14:00:53 -06:00
9afbc71802 only check for consistent cutoff and return it when flagged as kspace compatible 2020-06-27 10:19:57 -04:00
5be366bfae Update group.h 2020-06-26 23:15:54 -06:00
ac05bb7786 Update fix_bond_react.cpp 2020-06-26 22:48:49 -06:00
62a7cd0693 more accurate dummy variable name 2020-06-26 22:15:31 -06:00
e7f147a27b bond/react:group->assign convenient version 2020-06-26 21:37:46 -06:00
7f05c578f5 add group::assign convenience version 2020-06-26 21:36:12 -06:00
77a6c7b7dc bond/react:new add_fix format 2020-06-26 20:50:30 -06:00
51174d4ad1 Merge pull request #2192 from rbberger/permission_check_update
Simplify permission check tool: git only stores executable bit
2020-06-26 19:34:17 -04:00
ec58267a71 update code owners 2020-06-26 19:16:35 -04:00
fd66f32a83 Merge pull request #2191 from akohlmey/simpler-add-fix-compute
Simplify adding fixes and computes from inside LAMMPS
2020-06-26 17:29:23 -04:00
21462ede4b Simplify tool: git only stores executable bit 2020-06-26 17:03:10 -04:00
2c815bf3bb fix formatting bug 2020-06-26 16:22:27 -04:00
91502b8bf6 more simplification 2020-06-26 16:22:19 -04:00
41d62b8b8b update temp and press compute creation in temperature and similar fixes 2020-06-26 16:02:14 -04:00
a5651acb49 must not forget to generate compute ids and store them. 2020-06-26 15:42:37 -04:00
1ea0eca2a5 add convenience functions to modify to simplify creation of fixes and computes 2020-06-26 14:49:53 -04:00
7318dd06d3 simplify 2020-06-26 14:04:38 -04:00
05f310ef35 move misplaced neighbor list print log out output call 2020-06-26 14:04:32 -04:00
66271448ae Merge pull request #2167 from Vsevak/master
Update GPU CMake and Makefile scripts for ROCm v3.5
2020-06-26 13:43:32 -04:00
f9a202288c Add missing kmod package to AMD ROCm container 2020-06-26 13:09:16 -04:00
3c19a49605 Merge pull request #2190 from akohlmey/more-fmtlib-uses
Reduce use of local print buffers, simplify output handling with std::string and fmtlib
2020-06-26 12:08:46 -04:00
40b62e11b1 add comment requested by @sjplimp 2020-06-26 11:14:40 -04:00
bdb4cc561c add update README files 2020-06-26 11:11:59 -04:00
74fc64395f output summary simplifications 2020-06-26 10:54:25 -04:00
f56563c747 simplify output handling in Finish class 2020-06-26 08:04:07 -04:00
c4855d95e7 more use of utils::logmesg() and {fmt} 2020-06-26 07:23:22 -04:00
24c3f1f752 fix logic bug triggering failures to read files without UNITS: tag 2020-06-26 07:21:10 -04:00
d4148b1b80 set real units in cmap files 2020-06-26 07:20:42 -04:00
f2a4d12f7e more output simplification with fmtlib, std::string, and utils::logmesg() 2020-06-25 23:48:17 -04:00
84ec2cc39b simplify more code with std::string and fmtlib 2020-06-25 23:13:28 -04:00
e4a3a518f7 more use of fmtlib and std::string 2020-06-25 22:50:38 -04:00
4816c5c7cc simplify 2020-06-25 21:13:22 -04:00
3c78ad0a70 make more use of std::string and fmtlib where beneficial 2020-06-25 21:13:14 -04:00
8caa3e188c remove debug code 2020-06-25 21:11:39 -04:00
d46a1254e4 remove non-ASCII characters. 2020-06-25 21:11:32 -04:00
79c0dda0d6 Merge pull request #2187 from Vsevak/tip4p_pressure_fix
Fix virial computation in GPU accelerated TIP4P
2020-06-25 20:42:48 -04:00
a02f8f8e6e remove jalloy 2020-06-25 17:26:18 -07:00
d55a061286 Merge pull request #2183 from akohlmey/pair-potential-file-unit-convert
Transparently convert supported potential files from metal to real units
2020-06-25 19:31:52 -04:00
e6b3611c2d Update ROCm container to version 3.5 2020-06-25 19:05:28 -04:00
284efadf9b adjust USER-QTB examples to match more closely with LAMMPS' style. add log files. 2020-06-25 17:22:16 -04:00
d926274911 Merge branch 'qtb_example' of github.com:stanmoore1/lammps into pair-potential-file-unit-convert 2020-06-25 17:06:38 -04:00
0fc87dff1a add conversion support to eam variants for KOKKOS 2020-06-25 17:03:17 -04:00
b665ca3bd9 apply the same clamping of "p" to eam/opt that is used in eam 2020-06-25 16:44:08 -04:00
d9f07cef25 document automatic unit conversion with units and pair_coeff commands 2020-06-25 16:05:20 -04:00
c989db60a7 refactor EAM family of potentials to convert the potential data and leave compute functions alone 2020-06-25 15:48:46 -04:00
cd6de39319 whitespace 2020-06-25 15:35:25 -04:00
a519ff2909 Fix broken QTB examples 2020-06-25 13:02:02 -06:00
15b8f855b4 Add workaround in Kokkos pair_snap for gcc compiler bug 2020-06-25 12:29:24 -06:00
29b0ca8ad9 fix bug in OPT package pair style tester 2020-06-25 14:21:50 -04:00
f9be8b3aa0 add missing factor for EAM in OPT package 2020-06-25 14:21:35 -04:00
9e08a739b5 add unit conversion test files for styles with conversion in the compute function 2020-06-25 12:28:06 -04:00
4824c4608c add unit conversion checking support to Force::open_potential() 2020-06-25 12:22:29 -04:00
3c9b40a31a add transparent unit conversion for most of the EAM family of potentials 2020-06-25 11:13:52 -04:00
ec057e313f add warning message when unit conversion is enabled 2020-06-25 10:46:52 -04:00
6420ccafa2 fix bugs with not properly detecting/selecting unit conversions 2020-06-25 10:31:09 -04:00
496bd55dc9 Fix lj/cut/tip4p/long/gpu virial 2020-06-25 17:30:51 +03:00
22d8d0d0b0 add tests for potential file reader and untils functions 2020-06-25 08:00:04 -04:00
3bb3037b55 fix typo 2020-06-25 07:59:40 -04:00
2acf71c3e2 add unit conversion to table pair style 2020-06-25 04:31:34 -04:00
c6b16577f6 add conversion to pair styles tersoff/zbl and tersoff/zbl/omp 2020-06-25 03:46:15 -04:00
43276c8387 add unit conversion to vashishta pair style 2020-06-24 22:06:24 -04:00
b0319c2e70 fix missing newline in thermo output. 2020-06-24 21:47:27 -04:00
85097df2ba add unit conversion to pair style tersoff/mod and tersoff/mod/c 2020-06-24 21:23:40 -04:00
00332d299b add unit conversion support to pair style tersoff/table 2020-06-24 21:05:00 -04:00
db4cb2cb4f Merge pull request #2097 from jibril-b-coulibaly/patch-1
Correct ghost atoms bug in fix adapt
2020-06-24 20:31:58 -04:00
361f636700 add support for passing arguments via environment variable 2020-06-24 20:29:23 -04:00
aa94d3f723 Merge branch 'master' into pair-potential-file-unit-convert 2020-06-24 20:24:51 -04:00
22c88b80dc Merge pull request #2182 from akohlmey/test-updates
Test program updates and related changes
2020-06-24 20:12:33 -04:00
fdf7282030 simplify output creation 2020-06-24 17:38:39 -04:00
a7d2b792a8 Merge branch 'master' into test-updates 2020-06-24 17:25:55 -04:00
5a2704efc2 ensure that local per-thread storage is completely cleared in hybrid styles. 2020-06-24 17:24:47 -04:00
3e39b8c62d make sure class pointers are initialized to NULL and virial accumulator. 2020-06-24 17:23:20 -04:00
3525d1f104 simplify suppression handling by creating a custom local file 2020-06-24 13:35:36 -04:00
57538fb91c add leak sanitizer option 2020-06-24 13:34:47 -04:00
2af8d7a751 add argument passing via TEST_ARGS environment variable to all tests with an explicit main function 2020-06-24 10:17:23 -04:00
f1532e6545 fix a couple more spelling errors 2020-06-24 10:12:54 -04:00
63eab6e6d8 Merge branch 'master' into patch-1 2020-06-24 10:09:05 -04:00
6824b69ae9 add missing include 2020-06-24 09:38:55 -04:00
5ea9b1b38d simplify detection and application of valgrind suppressions 2020-06-24 09:33:19 -04:00
ee5be42026 avoid having to use external test runner script by parsing environment variables directly 2020-06-24 09:32:59 -04:00
f35d517a15 Merge pull request #2179 from charlessievers/fix_python_dynmat
Update dynamical matrix examples
2020-06-23 21:09:27 -04:00
ee08d222d2 Merge pull request #2174 from athomps/mliap
Add MLIAP package
2020-06-23 20:47:59 -04:00
eab88b98ef Merge branch 'master' into fix_python_dynmat 2020-06-23 14:25:31 -07:00
f812b94e40 Update relative paths to dynamic links 2020-06-23 14:23:41 -07:00
f719803e9a correct typos in fix_adapt documentation 2020-06-23 16:17:59 -05:00
47ebd8a3d9 implement mass keyword to turn off/on change in rmass when diameter is changed 2020-06-23 12:48:57 -05:00
8cec13a038 Add memory checker support in CMake
If ENABLE_TESTING is ON, you can now use memory checking tools to run the test
suite and check for memory leaks. By default CMake will try to find valgrind in
your path and set some default options.

To customize this behavior use the MEMORYCHECK_COMMAND and
MEMORYCHECK_COMMAND_OPTIONS variables. To run tests with the memory checker,
use the MemCheck action in ctest:

Run entire test suite:

ctest -T MemCheck

Run single test:

ctest -T MemCheck -R TESTNAME

Run test in verbose mode:

ctest -V -T MemCheck -R TESTNAME
2020-06-23 13:35:59 -04:00
b923037644 change and restore mass using scaling for floating point accuracy 2020-06-23 11:41:33 -05:00
5d1d406e01 must initialize ngrow in the constructor 2020-06-23 11:02:57 -04:00
a766b6a901 make sure numbers for atoms outside the compute group are zero 2020-06-23 10:24:47 -04:00
9aea4e509e Revert "must also reissue hybrid pair style commands after restarts"
This reverts commit ddcc104df6.
2020-06-23 09:50:17 -04:00
b8866c9acc add tests for MLIAP (same data as SNAP) 2020-06-23 09:35:00 -04:00
fefdd3dd9a move MLIAP potential files to potentials folder and replace with symlinks 2020-06-23 09:34:34 -04:00
06a0b3331a may only flag having restart info if all substyles support it 2020-06-23 09:25:25 -04:00
2ace7ef817 may only flag having restart info if all substyles support it 2020-06-23 09:24:51 -04:00
ddcc104df6 must also reissue hybrid pair style commands after restarts 2020-06-23 09:21:47 -04:00
8285e068da single_enable and respa_enable may only be set if *all* styles support it. 2020-06-23 09:19:08 -04:00
68d5d74fd3 add restart and data file handling to pair style zbl 2020-06-23 08:55:47 -04:00
5e57118a35 Merge branch 'mliap' of github.com:athomps/lammps into mliap 2020-06-23 08:53:41 -04:00
cc6371b00b add restart and data file handling to pair style zbl 2020-06-23 08:51:37 -04:00
1a0095e51b Use utils::logmesg() and fmt::format() 2020-06-23 08:32:17 -04:00
b9d989769d pair style zbl does not have restart support 2020-06-23 08:26:55 -04:00
2e48ea8680 include MLIAP package in cross-compiler builds 2020-06-23 07:11:30 -04:00
66414067c8 add tests for SNAP package 2020-06-23 06:51:42 -04:00
fae96f07d9 single_enable and respa_enable may only be set if *all* styles support it. 2020-06-23 06:51:10 -04:00
3d6095c278 Merge branch 'master' into pair-potential-file-unit-convert 2020-06-23 05:40:32 -04:00
1e8ea3af82 add comparisons for pressure (atm vs. bar) 2020-06-23 00:10:46 -04:00
bfef46539f add unit conversion test for pair style sw 2020-06-22 23:29:33 -04:00
fc197ce2aa add transparent unit conversion to pair style sw 2020-06-22 23:29:15 -04:00
a7436a7b76 adjust lj/cut parameters to produce smaller forces 2020-06-22 23:28:58 -04:00
0d7aed3234 remove debug code 2020-06-22 23:28:18 -04:00
516a31796e need to move destruction of base per-atom properties back to atom.cpp so we don't leak memory in read_restart and don't crash with replicate 2020-06-22 23:12:11 -04:00
a0fdb6af47 silence compiler warning 2020-06-22 22:34:08 -04:00
fc090c22f4 fix typo 2020-06-22 22:24:06 -04:00
ae0957bd61 use atom id instead of local index to test per-atom data 2020-06-22 22:19:55 -04:00
13d56f3cad Merge branch 'master' into test-updates 2020-06-22 21:00:33 -04:00
669e8e6fc9 Merge remote-tracking branch 'github/master' into mliap 2020-06-22 20:58:29 -04:00
5e1187832f Merge pull request #2181 from akohlmey/redo-msm-leak-fix
Redo MSM leak fix with fewer modifications to the code
2020-06-22 20:57:59 -04:00
5291a4611c Merge pull request #2180 from akohlmey/atomvec-deallocate-fix
Deallocate per-atom data less aggressively so replicate command keeps working
2020-06-22 20:53:27 -04:00
132afb32f4 add note about dependency on SNAP in the MLIAP overview page 2020-06-22 19:46:44 -04:00
8d5a9ad4af implement alternate version of MSM leak fix 2020-06-22 19:28:24 -04:00
afe6484c44 Revert "reorganize memory (de-)allocation and fix substantial memory leak in MSM"
This reverts commit f78671c1a4.
2020-06-22 19:15:28 -04:00
198258766d ensure that per-arrays are only freed if the last atom style instance is deleted 2020-06-22 18:59:09 -04:00
6fbcb84819 Update dynamical matrix examples 2020-06-22 15:26:04 -07:00
b29b3d52f6 initial implementation of automated unit conversion.
this includes a tester program and implementation into pair style tersoff
2020-06-22 17:57:05 -04:00
3fffe20463 Merge pull request #2172 from weinbe2/fea-snap-yi-aosoa
SNAP optimizations - AoSoA data layouts, chem snap indexing conventions, misc perf improvements
2020-06-22 13:54:06 -04:00
6e714fec42 fix underline 2020-06-22 13:40:30 -04:00
1f3c3bfb3c snap is listed twice 2020-06-22 13:30:54 -04:00
ac48f2dd67 add a hard dependency of MLIAP on SNAP 2020-06-22 13:30:43 -04:00
b0dd93f06f Whitespace tweak 2020-06-22 10:50:31 -06:00
5a1882e00d Merge branch 'mliap' of github.com:athomps/lammps into mliap 2020-06-22 12:01:34 -04:00
18597a6389 Removed computes 2020-06-22 10:00:19 -06:00
8eb6c2e037 Merge branch 'mliap' of github.com:athomps/lammps into mliap 2020-06-22 11:40:22 -04:00
743a14aea0 Fixed incomplete documentation entries for mliap 2020-06-22 09:35:16 -06:00
233b56105a Merge branch 'master' into mliap 2020-06-22 11:24:49 -04:00
75114afc0e integrate MLIAP package into CMake procedure 2020-06-22 11:24:44 -04:00
bbd9af0d6f Fixed a few minor problems 2020-06-22 09:11:38 -06:00
10ace11c0b Fixed spelling and false positives 2020-06-21 21:10:03 -06:00
9238c2a624 Finished first version of MLIAP package 2020-06-21 19:57:08 -06:00
549c6343f3 Merged MLIAP package into latest LAMMPS created SNAP, quadratic SNAP, and ChemSNAP examples 2020-06-21 18:05:34 -06:00
564974b6a4 Merge remote-tracking branch 'origin/ml_chem_snap' 2020-06-21 16:07:03 -06:00
ab42123005 add test for atom style sphere 2020-06-21 16:56:04 -04:00
a98d03ee0e add missing linefeed 2020-06-21 16:55:55 -04:00
7bb4a2a81a Fix a typo in the GPU Docs 2020-06-21 19:37:59 +03:00
0ba701acd7 Remove trailing space 2020-06-20 17:25:16 +03:00
723b9e6760 Try to keep compatibility with deprecated ROCm hcc compiler 2020-06-20 15:17:54 +03:00
55d6f1a34f Fixed variable name to be more consistent with rest of code. 2020-06-19 19:33:17 -04:00
f5a31fefdc Merge pull request #2171 from athomps/orientorder-components-parity
Switched the sign of spherical harmonics for m odd
2020-06-19 18:46:15 -04:00
9f6b2e97b1 Merge pull request #2169 from lammps/hyper-debug
Tweaks to local hyper dynamics
2020-06-19 17:17:56 -04:00
5148834d23 Merge pull request #2162 from akohlmey/collected-small-changes
Collected small changes
2020-06-19 17:07:07 -04:00
641f924161 Port changes to Kokkos package 2020-06-19 14:44:13 -06:00
b218fc44da Merge branch 'master' of https://github.com/lammps/lammps into orientorder-components-parity 2020-06-19 14:32:00 -06:00
bb40613db3 convert input degrees to internal radians for create_atoms rotate 2020-06-19 15:38:36 -04:00
a862a8c764 use {fmt} 2020-06-19 15:37:53 -04:00
4a2ab6d2f3 mods to fix adapt and doc pages for restarting 2020-06-19 12:48:06 -06:00
c7874fca86 Switched the sign of spherical harmonics for m odd 2020-06-19 12:18:11 -06:00
befd4c8bfd Optimizations to Compute[Yi/Zi/Bi], switching over to an AoSoA data layout on the GPU. CPU vs GPU code paths are now maximally divergent, will include some discussion of that in PR. Small performance tweaks in Compute[UiTot/FusedDeidrj]. 2020-06-19 14:12:29 -04:00
a40f4873fb comment out debug options and make some tallies bigints 2020-06-19 10:35:42 -06:00
3cdf0e286e add comments to explain why 1 item is added to rendezvous buffers. 2020-06-19 12:32:11 -04:00
08cb7664a3 renumber customization comments 2020-06-19 12:31:47 -04:00
4a447f1809 move deleting all array data associated with an atom style to AtomVec base class destructor 2020-06-19 12:31:31 -04:00
4d630904b4 relax a few more test criteria to be compatible with intel compilers 2020-06-19 11:43:59 -04:00
8f4e18ba3a change logic of selecting and allowing sanitizer options to be compatible with unsupported compilers 2020-06-19 11:30:38 -04:00
0249cf7510 better and more general version of the previous commit 2020-06-19 01:10:45 -04:00
a4de04d823 make certain that allocated buffers in Comm::rendezvous_all2all() are not NULL 2020-06-19 00:44:09 -04:00
343241cb63 relax some test epsilons 2020-06-19 00:43:11 -04:00
e934f7bac3 try to work around linker issues with older CMake versions and using coverage or sanitizers 2020-06-19 00:20:20 -04:00
7e2f29bb65 Merge pull request #2168 from charlessievers/chem_snap
Chem snap bugifx
2020-06-18 23:59:25 -04:00
f78671c1a4 reorganize memory (de-)allocation and fix substantial memory leak in MSM 2020-06-18 23:43:16 -04:00
d8e0f553b6 Merge remote-tracking branch 'origin/chem_snap' into chem_snap 2020-06-18 18:21:10 -07:00
9b73b4a6ca Unnecessary loop over zero_yi for non chem snap multielement systems 2020-06-18 18:20:30 -07:00
02ffa46fa7 simplify memory management and plug leaks in pair style bop 2020-06-18 17:12:51 -04:00
8eed1b27ff GPU Makefile cleanup 2020-06-19 00:07:10 +03:00
2ea5d9956a find_package is unnecessary for rocprim 2020-06-19 00:01:03 +03:00
328709513b plug memory leaks in pair style comb and comb3 2020-06-18 16:34:25 -04:00
fcdd2c5026 prevent memory leaks in pair style tersoff/table 2020-06-18 16:13:02 -04:00
b83fab92bf document coding style and sanitizing options 2020-06-18 13:35:07 -04:00
dfe860c4bb update coding style 2020-06-18 13:34:34 -04:00
a42c68892f address memory leak and C versus C++ programming issues in pair style polymorphic 2020-06-18 13:09:58 -04:00
bfe42e3fbe make sure delete gc[n] is safe 2020-06-18 12:40:08 -04:00
5e597e551b avoid false positive 2020-06-18 12:39:40 -04:00
786473a189 allow sanitizers also be active for force style test codes 2020-06-18 12:39:23 -04:00
8816d7fe3e plug small memory leak in pair style eam/cd 2020-06-18 11:52:33 -04:00
b866ea68f6 make sanitizers an explicit cmake option (again) so we can set the flags properly 2020-06-18 11:46:42 -04:00
b0842a3fea tell GNU gcc to not try to optimize the atom style tester tool 2020-06-18 11:45:56 -04:00
41995b4665 avoid false positives about memory leaks in force tester tools 2020-06-18 11:45:26 -04:00
77f6fecc86 Merge pull request #1971 from charlessievers/chem_snap
Chemical specificity for SNAP
2020-06-18 10:11:15 -04:00
547137f737 remove unused code 2020-06-17 23:48:09 -04:00
d6ca98cb44 don't validate compiler flags provided with CMAKE_TUNE_FLAGS anymore
closes #2084
2020-06-17 23:47:55 -04:00
a221f13308 Whitespace tweak 2020-06-17 21:35:04 -06:00
27912754c4 Merge branch 'master' into collected-small-changes 2020-06-17 21:18:29 -04:00
753eb9b76d add tests for atom style charge 2020-06-17 21:17:42 -04:00
586c81b1be Merge pull request #2163 from rbberger/more-whitespace
Coding Standard tool updates
2020-06-17 21:07:01 -04:00
a200756d7b remove a bunch of redundant tests and add checking for restarts and consecutive atom ids 2020-06-17 20:40:04 -04:00
5bb9700124 ensure that a LAMMPS instance could be created and the eim pair style is available 2020-06-17 18:12:12 -04:00
afe874ac5b add test for using write_data/read_data for atom style atomic 2020-06-17 18:11:45 -04:00
f75b8e1688 Fix Makefile for GPU ROCm 3.5 backend 2020-06-18 00:33:46 +03:00
d3baa414d2 Fix cmake for GPU ROCm 3.5 backend 2020-06-17 23:33:16 +03:00
a7967f8b3f Merge remote-tracking branch 'origin/master' 2020-06-17 23:31:06 +03:00
8a93c84e74 make formatting consistent with lj/cut 2020-06-17 15:03:36 -04:00
2d52a09d08 patch the source code to the ScaFaCoS lib with a proper fix instead of working around it with compiler flags 2020-06-17 13:01:29 -04:00
27f1ce71fd now also check all 'xxx_flag' variables 2020-06-17 07:42:50 -04:00
34e46cc336 add workaround to USER-SCAFACOS package CMake script for linker error in FMM with GNU gcc 10.0 2020-06-17 07:41:00 -04:00
73c7ed1e9c start test for atom style charge 2020-06-17 01:42:41 -04:00
e88bb9dd59 call MPI_Finalize() so we don't have spurious memory leaks from MPI reported by valgrind 2020-06-17 01:42:17 -04:00
39b61fbdbe add exit() to one() functions since compilers may not recognize that MPI_Abort() does not return. 2020-06-17 01:30:41 -04:00
61ace42e72 check status of all per-atom fields 2020-06-17 01:25:56 -04:00
d990c1e7c0 simplify through using {fmt} 2020-06-17 01:25:22 -04:00
32c1dcf44f improve match for "id" first checks 2020-06-17 01:25:06 -04:00
db469b5cfd plug memory leak in AtomVec classes 2020-06-17 01:24:36 -04:00
49af2c25ec add tester for atom styles 2020-06-17 00:11:18 -04:00
b97cd78e80 change input and log files for new example to give consistent results in serial and parallel.
the remaining files and logs are updated in PR #2162
2020-06-16 21:11:34 -04:00
1883788725 update SNAP package inputs and reference logs to give consistent results in serial and parallel 2020-06-16 20:59:58 -04:00
47b589bdc6 add [[ noreturn ]] attributes to functions in the Error class that do not return 2020-06-16 18:30:04 -04:00
a2f78e7cda Updated whitespace, implemented low hanging performance boosts 2020-06-16 15:00:35 -07:00
d8fbb5a16b Merge branch 'commands-tests' into collected-small-changes 2020-06-16 16:39:33 -04:00
73a7fb53ff add infrastructure and first example for testing standalone LAMMPS input commands 2020-06-16 12:52:35 -04:00
9d74984144 Fix whitespace 2020-06-16 07:20:09 -04:00
95e79b2347 Keep file permissions while fixing whitespace issues 2020-06-16 07:19:19 -04:00
943d252403 Change regex to detect more whitespace errors 2020-06-16 07:11:31 -04:00
036b2bd82c Add non-zero exit code on whitespace check failure 2020-06-16 07:06:37 -04:00
61235308f1 Add non-zero exit code on permission check failure 2020-06-16 07:05:15 -04:00
093c285475 use GMock initializer instead of GTest 2020-06-16 06:37:35 -04:00
436c7615e0 set metal units and add option to do verbose execution to EIM potential tester 2020-06-16 06:37:09 -04:00
37a0999826 add units metadata check to legacy potential file reading method 2020-06-16 06:36:26 -04:00
b5a809413e set units for potential file reader tests. allow verbose execution. 2020-06-16 06:19:31 -04:00
30d9ffba25 add "UNITS:" tag to new potential files 2020-06-16 05:13:41 -04:00
ae435536f3 use index style variables instead of equal style variable to allow overriding them 2020-06-16 05:13:16 -04:00
5e238b2cf4 Merge branch 'master' into chem_snap 2020-06-16 05:06:11 -04:00
ba26b2f71f Update false positives and fix typos 2020-06-15 17:24:47 -07:00
b55f1829d9 Fixed number of parameters sent to sna kokkos to include bnormflag 2020-06-15 17:09:14 -07:00
39f1fb874f Fixed small merge conflict bug for ylists 2020-06-15 16:53:39 -07:00
ac87f1763c Merge remote-tracking branch 'refs/remotes/origin/chem_snap' into chem_snap 2020-06-15 12:22:11 -07:00
39aee089e7 Merge branch 'master' into chem_snap 2020-06-15 12:20:48 -07:00
622db7053e Merge remote-tracking branch 'origin/master' 2020-06-15 18:38:40 +03:00
5d3f67dff4 Tweaked formulae for K 2020-06-14 13:25:11 -06:00
9dec9314a2 Polished the doc files a bit 2020-06-13 19:20:30 -06:00
6a26094d05 Minor tweaks 2020-06-13 17:57:08 -06:00
30aa4bf454 Added chemsnap keywords and upgraded equations to mathjax 2020-06-13 17:55:45 -06:00
7dd186d0ad Refactored chemsnap input options 2020-06-13 12:50:01 -06:00
7ba731c711 Renamed InP potential files and create standard log files 2020-06-13 10:47:52 -06:00
7ea1e60ec5 Renamed InP potential files and create standard log files 2020-06-13 10:47:29 -06:00
eec9773815 Moved InP files to potentials dir 2020-06-13 10:25:11 -06:00
ebcc68f2cf Renamed InP files and tweaked 2020-06-12 17:58:33 -06:00
574f6307e7 Merge master into chem_snap and update dulist merge conflict 2020-06-12 13:31:43 -07:00
4db9576aac Fixed small multielement and not alloyflag bug 2020-06-10 15:17:45 -07:00
5a200b34fb Updated chem_snap kokkos cuda kernel 2020-06-10 14:27:49 -07:00
62045cfb10 Merge branch 'master' into chem_snap 2020-06-09 14:30:55 -07:00
0143234329 Merge branch 'chem_snap' of https://github.com/charlessievers/lammps into chem_snap 2020-06-09 14:28:03 -07:00
4e5da1c92e Chem SNAP KOKKOS implementation draft 2020-06-09 14:27:01 -07:00
53e3421b6f Merge branch 'master' into chem_snap 2020-06-01 17:22:05 -07:00
37e5df8680 Merge branch 'chem_snap' of https://github.com/charlessievers/lammps into chem_snap 2020-06-01 15:18:41 -07:00
e7e82cfb7c merge master into chemsnap, added chunksize 2020-06-01 14:56:37 -07:00
a6d2ae2ee0 implement restart_reset flag for fixes in restart_global list 2020-05-27 12:44:05 -05:00
6d11515ad0 scale factors in constructor only. Issue with successive fresh runs 2020-05-22 14:35:32 -05:00
1add74b8f7 save diameter and charge scale for restart. Need a switch te default values to 1 during init 2020-05-22 14:04:51 -05:00
03419b398a scale diameter and charge incrementally without using fix store. Corrects bug of fix store array accessed out of bounds 2020-05-19 18:28:18 -05:00
e1362e9a61 Correct ghost atom access out of bounds bug in fix adapt 2020-05-19 16:55:25 -05:00
9a2348ff15 InP example included 2020-04-09 01:18:34 -07:00
a2132f8596 Optimized some bnorm_flags 2020-04-08 13:02:37 -07:00
19f1d0445d Added THIS IS NOT RIGHT note 2020-04-08 10:32:27 -06:00
0443ac2dd4 Created class ComputeSNAP, not completely finished, but compiles 2020-04-07 20:51:39 -06:00
46ee159f14 Added custom tally functions 2020-04-06 17:05:43 -06:00
3cb825c308 Made ev_tally_full() public 2020-04-05 00:28:47 -06:00
47709c4cad Now using mix and match syntax 2020-04-05 00:21:31 -06:00
b5dfdc4fa4 Separated out class hierarchy 2020-04-05 00:17:31 -06:00
b84a2481ed Merge remote-tracking branch 'charlie/chem_snap' into ml_chem_snap 2020-04-04 11:38:56 -06:00
09c2dec71f Fixed small non chemsnap multielement bug 2020-04-01 17:18:31 -07:00
909e6048c4 Added mliap package 2020-04-01 18:09:18 -06:00
3329caa7f1 First pass at general ML pair style 2020-04-01 18:07:33 -06:00
3dd9ad488f Turned on MLIAPModelSNAP 2020-03-31 21:58:43 -06:00
98c89363c6 Merge branch 'master' into chem_snap 2020-03-31 16:50:08 -07:00
d3d67cebe7 Chem Snap 2020-03-31 16:37:09 -07:00
8789ff6553 Merge branch 'master' into chem_snap 2020-03-30 23:39:06 -07:00
a184cb34ee merge master into chem_snap 2020-03-03 10:08:35 -08:00
3298a86bd9 Reduce redundant copying using UCL_H_Vec::view 2020-02-20 18:32:52 +03:00
831c550397 Made if statement block verbose and cleaned it up 2020-01-29 10:51:59 -07:00
0bb0d6f265 Fix snap.cpp to not force more coeff if multielement and not alloy_flag 2020-01-24 15:54:19 -07:00
deb45f4bab Updated dbidrj to fix jjz position update and cleaned up random prints sna.cpp 2020-01-24 13:01:09 -07:00
3dc14a4246 Removed unnecessary ztmp calculations, fixed yi chemsnap multiplicity conditions, added zptr to remove additional idouble * idxz_max calculations. 2020-01-21 17:00:29 -07:00
b50f35edb7 Updated Snap to work with ChemSnap 2020-01-17 19:11:36 -07:00
389 changed files with 17137 additions and 5489 deletions

2
.github/CODEOWNERS vendored
View File

@ -119,6 +119,8 @@ src/utils.* @akohlmey @rbberger
tools/msi2lmp/* @akohlmey
tools/emacs/* @HaoZeke
tools/singularity/* @akohlmey @rbberger
tools/code_standard/* @rbberger
tools/valgrind/* @akohlmey
# tests
unittest/* @akohlmey @rbberger

View File

@ -57,7 +57,6 @@ check_for_autogen_files(${LAMMPS_SOURCE_DIR})
# compiler tests
# these need ot be done early (before further tests).
#####################################################################
include(CheckCCompilerFlag)
include(CheckIncludeFileCXX)
# set required compiler flags and compiler/CPU arch specific optimizations
@ -83,15 +82,6 @@ set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
# GNU compiler specific features for testing
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
option(ENABLE_COVERAGE "Enable collecting code coverage data" OFF)
mark_as_advanced(ENABLE_COVERAGE)
if(ENABLE_COVERAGE)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage")
endif()
endif()
########################################################################
# User input options #
########################################################################
@ -122,8 +112,8 @@ install(TARGETS lmp EXPORT LAMMPS_Targets DESTINATION ${CMAKE_INSTALL_BINDIR})
option(CMAKE_VERBOSE_MAKEFILE "Generate verbose Makefiles" OFF)
set(STANDARD_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS DIPOLE
GRANULAR KSPACE LATTE MANYBODY MC MESSAGE MISC MOLECULE PERI POEMS QEQ
REPLICA RIGID SHOCK SPIN SNAP SRD KIM PYTHON MSCG MPIIO VORONOI
GRANULAR KSPACE LATTE MANYBODY MC MESSAGE MISC MLIAP MOLECULE PERI POEMS
QEQ REPLICA RIGID SHOCK SPIN SNAP SRD KIM PYTHON MSCG MPIIO VORONOI
USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-MESODPD USER-CGSDK USER-COLVARS
USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD USER-LB
USER-MANIFOLD USER-MEAMC USER-MESONT USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE
@ -210,6 +200,7 @@ endif()
# "hard" dependencies between packages resulting
# in an error instead of skipping over files
pkg_depends(MLIAP SNAP)
pkg_depends(MPIIO MPI)
pkg_depends(USER-ATC MANYBODY)
pkg_depends(USER-LB MPI)
@ -248,6 +239,48 @@ if(BUILD_OMP)
target_link_libraries(lammps PRIVATE OpenMP::OpenMP_CXX)
endif()
# Compiler specific features for testing
if(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
option(ENABLE_COVERAGE "Enable collecting code coverage data" OFF)
mark_as_advanced(ENABLE_COVERAGE)
if(ENABLE_COVERAGE)
if(CMAKE_VERSION VERSION_LESS 3.13)
if(CMAKE_CXX_FLAGS)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_${CMAKE_BUILD_TYPE}_FLAGS} --coverage")
endif()
else()
target_compile_options(lammps PUBLIC --coverage)
target_link_options(lammps PUBLIC --coverage)
endif()
endif()
endif()
set(ENABLE_SANITIZER "none" CACHE STRING "Select a code sanitizer option (none (default), address, leak, thread, undefined)")
mark_as_advanced(ENABLE_SANITIZER)
set(ENABLE_SANITIZER_VALUES none address leak thread undefined)
set_property(CACHE ENABLE_SANITIZER PROPERTY STRINGS ${ENABLE_SANITIZER_VALUES})
validate_option(ENABLE_SANITIZER ENABLE_SANITIZER_VALUES)
string(TOLOWER ${ENABLE_SANITIZER} ENABLE_SANITIZER)
if(NOT ENABLE_SANITIZER STREQUAL "none")
if((${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU") OR (${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang"))
if(CMAKE_VERSION VERSION_LESS 3.13)
if(CMAKE_CXX_FLAGS)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=${ENABLE_SANITIZER}")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_${CMAKE_BUILD_TYPE}_FLAGS} -fsanitize=${ENABLE_SANITIZER}")
endif()
else()
target_compile_options(lammps PUBLIC -fsanitize=${ENABLE_SANITIZER})
target_link_options(lammps PUBLIC -fsanitize=${ENABLE_SANITIZER})
endif()
else()
message(WARNING "ENABLE_SANITIZER option not supported by ${CMAKE_CXX_COMPILER_ID} compilers. Ignoring.")
set(ENABLE_SANITIZER "none")
endif()
endif()
if(PKG_MSCG OR PKG_USER-ATC OR PKG_USER-AWPMD OR PKG_USER-QUIP OR PKG_LATTE)
enable_language(C)
find_package(LAPACK)
@ -335,15 +368,8 @@ endforeach()
set(CMAKE_TUNE_FLAGS "${CMAKE_TUNE_DEFAULT}" CACHE STRING "Compiler specific optimization or instrumentation")
separate_arguments(CMAKE_TUNE_FLAGS)
include(CheckCXXCompilerFlag)
foreach(_FLAG ${CMAKE_TUNE_FLAGS})
string(REGEX REPLACE "[=\"]" "" _FLAGX ${_FLAG})
check_cxx_compiler_flag("${_FLAG}" COMPILER_SUPPORTS${_FLAGX})
if(COMPILER_SUPPORTS${_FLAGX})
target_compile_options(lammps PRIVATE ${_FLAG})
else()
message(WARNING "${_FLAG} found in CMAKE_TUNE_FLAGS, but not supported by the compiler, skipping")
endif()
target_compile_options(lammps PRIVATE ${_FLAG})
endforeach()
########################################################################
# Basic system tests (standard libraries, headers, functions, types) #

View File

@ -268,10 +268,17 @@ elseif(GPU_API STREQUAL "HIP")
if(HIP_PLATFORM STREQUAL "hcc")
configure_file(${CU_FILE} ${CU_CPP_FILE} COPYONLY)
add_custom_command(OUTPUT ${CUBIN_FILE}
VERBATIM COMMAND ${HIP_HIPCC_EXECUTABLE} --genco -t="${HIP_ARCH}" -f=\"-O3 -ffast-math -DUSE_HIP -D_${GPU_PREC_SETTING} -I${LAMMPS_LIB_SOURCE_DIR}/gpu\" -o ${CUBIN_FILE} ${CU_CPP_FILE}
DEPENDS ${CU_CPP_FILE}
COMMENT "Generating ${CU_NAME}.cubin")
if(HIP_COMPILER STREQUAL "clang")
add_custom_command(OUTPUT ${CUBIN_FILE}
VERBATIM COMMAND ${HIP_HIPCC_EXECUTABLE} --genco --offload-arch=${HIP_ARCH} -O3 -ffast-math -DUSE_HIP -D_${GPU_PREC_SETTING} -I${LAMMPS_LIB_SOURCE_DIR}/gpu -o ${CUBIN_FILE} ${CU_CPP_FILE}
DEPENDS ${CU_CPP_FILE}
COMMENT "Generating ${CU_NAME}.cubin")
else()
add_custom_command(OUTPUT ${CUBIN_FILE}
VERBATIM COMMAND ${HIP_HIPCC_EXECUTABLE} --genco -t="${HIP_ARCH}" -f=\"-O3 -ffast-math -DUSE_HIP -D_${GPU_PREC_SETTING} -I${LAMMPS_LIB_SOURCE_DIR}/gpu\" -o ${CUBIN_FILE} ${CU_CPP_FILE}
DEPENDS ${CU_CPP_FILE}
COMMENT "Generating ${CU_NAME}.cubin")
endif()
elseif(HIP_PLATFORM STREQUAL "nvcc")
add_custom_command(OUTPUT ${CUBIN_FILE}
VERBATIM COMMAND ${HIP_HIPCC_EXECUTABLE} --fatbin --use_fast_math -DUSE_HIP -D_${GPU_PREC_SETTING} ${HIP_CUDA_GENCODE} -I${LAMMPS_LIB_SOURCE_DIR}/gpu -o ${CUBIN_FILE} ${CU_FILE}

View File

@ -77,7 +77,7 @@ else()
foreach(_FLAG -O2 -fp-model fast=2 -no-prec-div -qoverride-limits -qopt-zmm-usage=high -qno-offload -fno-alias -ansi-alias -restrict)
check_cxx_compiler_flag("${_FLAG}" COMPILER_SUPPORTS${_FLAG})
if(COMPILER_SUPPORTS${_FLAG})
target_compile_options(lammps PRIVATE ${_FLAG})
target_compile_options(lammps PRIVATE ${_FLAG})
endif()
endforeach()
endif()

View File

@ -14,40 +14,23 @@ endif()
option(DOWNLOAD_SCAFACOS "Download ScaFaCoS library instead of using an already installed one" ${DOWNLOAD_SCAFACOS_DEFAULT})
if(DOWNLOAD_SCAFACOS)
message(STATUS "ScaFaCoS download requested - we will build our own")
# create variables to pass our compiler flags along to the subsystem compile
# need to apply -fallow-argument-mismatch, if the fortran compiler supports it
include(CheckFortranCompilerFlag)
check_fortran_compiler_flag("-fallow-argument-mismatch" GNUFortran_ARGUMENT_MISMATCH_FLAG)
if(GNUFortran_ARGUMENT_MISMATCH_FLAG)
set(APPEND_Fortran_FLAG "-fallow-argument-mismatch")
endif()
if(CMAKE_Fortran_FLAGS)
set(SCAFACOS_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} ${APPEND_Fortran_FLAG}")
else()
set(SCAFACOS_Fortran_FLAGS "${CMAKE_Fortran_${CMAKE_BUILD_TYPE}_FLAGS} ${APPEND_Fortran_FLAG}")
endif()
if(CMAKE_CXX_FLAGS)
set(SCAFACOS_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
else()
set(SCAFACOS_CXX_FLAGS "${CMAKE_CXX_${CMAKE_BUILD_TYPE}_FLAGS}")
endif()
if(CMAKE_C_FLAGS)
set(SCAFACOS_C_FLAGS "${CMAKE_C_FLAGS}")
else()
set(SCAFACOS_C_FLAGS "${CMAKE_C_${CMAKE_BUILD_TYPE}_FLAGS}")
endif()
# version 1.0.1 needs a patch to compile and linke cleanly with GCC 10 and later.
file(DOWNLOAD https://download.lammps.org/thirdparty/scafacos-1.0.1-fix.diff ${CMAKE_CURRENT_BINARY_DIR}/scafacos-1.0.1.fix.diff
EXPECTED_HASH MD5=4baa1333bb28fcce102d505e1992d032)
include(ExternalProject)
ExternalProject_Add(scafacos_build
URL https://github.com/scafacos/scafacos/releases/download/v1.0.1/scafacos-1.0.1.tar.gz
URL_MD5 bd46d74e3296bd8a444d731bb10c1738
PATCH_COMMAND patch -p1 < ${CMAKE_CURRENT_BINARY_DIR}/scafacos-1.0.1.fix.diff
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=<INSTALL_DIR> --disable-doc
--enable-fcs-solvers=fmm,p2nfft,direct,ewald,p3m
--with-internal-fftw --with-internal-pfft
--with-internal-pnfft ${CONFIGURE_REQUEST_PIC}
FC=${CMAKE_MPI_Fortran_COMPILER} FCFLAGS=${SCAFACOS_Fortran_FLAGS}
CXX=${CMAKE_MPI_CXX_COMPILER} CXXFLAGS=${SCAFACOS_CXX_FLAGS}
CC=${CMAKE_MPI_C_COMPILER} CFLAGS=${SCAFACOS_C_FLAGS}
FC=${CMAKE_MPI_Fortran_COMPILER}
CXX=${CMAKE_MPI_CXX_COMPILER}
CC=${CMAKE_MPI_C_COMPILER}
F77=
BUILD_BYPRODUCTS
<INSTALL_DIR>/lib/libfcs.a

View File

@ -3,6 +3,21 @@
###############################################################################
option(ENABLE_TESTING "Enable testing" OFF)
if(ENABLE_TESTING)
find_program(VALGRIND_BINARY NAMES valgrind)
# generate custom suppression file
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/lammps.supp "\n")
file(GLOB VALGRIND_SUPPRESSION_FILES ${LAMMPS_TOOLS_DIR}/valgrind/[^.]*.supp)
foreach(SUPP ${VALGRIND_SUPPRESSION_FILES})
file(READ ${SUPP} SUPPRESSIONS)
file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/lammps.supp "${SUPPRESSIONS}")
endforeach()
set(VALGRIND_DEFAULT_OPTIONS "--leak-check=full --show-leak-kinds=all --track-origins=yes --suppressions=${CMAKE_BINARY_DIR}/lammps.supp")
set(MEMORYCHECK_COMMAND "${VALGRIND_BINARY}" CACHE FILEPATH "Memory Check Command")
set(MEMORYCHECK_COMMAND_OPTIONS "${VALGRIND_DEFAULT_OPTIONS}" CACHE STRING "Memory Check Command Options")
include(CTest)
enable_testing()
get_filename_component(LAMMPS_UNITTEST_DIR ${LAMMPS_SOURCE_DIR}/../unittest ABSOLUTE)
get_filename_component(LAMMPS_UNITTEST_BIN ${CMAKE_BINARY_DIR}/unittest ABSOLUTE)

View File

@ -1,6 +1,6 @@
set(WIN_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
GRANULAR KSPACE LATTE MANYBODY MC MISC MOLECULE OPT PERI
POEMS QEQ REPLICA RIGID SHOCK SNAP SPIN SRD VORONOI
GRANULAR KSPACE LATTE MANYBODY MC MISC MLIAP MOLECULE OPT
PERI POEMS QEQ REPLICA RIGID SHOCK SNAP SPIN SRD VORONOI
USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-CGSDK
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF
USER-FEP USER-INTEL USER-MANIFOLD USER-MEAMC USER-MESODPD

View File

@ -2,8 +2,8 @@
# external libraries. Compared to all_on.cmake some more unusual packages
# are removed. The resulting binary should be able to run most inputs.
set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL
DIPOLE GRANULAR KSPACE MANYBODY MC MISC MOLECULE OPT PERI
set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE
GRANULAR KSPACE MANYBODY MC MISC MLIAP MOLECULE OPT PERI
POEMS PYTHON QEQ REPLICA RIGID SHOCK SNAP SPIN SRD VORONOI
USER-BOCS USER-CGDNA USER-CGSDK USER-COLVARS USER-DIFFRACTION
USER-DPD USER-DRUDE USER-EFF USER-FEP USER-MEAMC USER-MESODPD

View File

@ -25,10 +25,10 @@ In the interest of consistency, ONLY ONE of the core LAMMPS developers
should doing the merging itself. This is currently
[@akohlmey](https://github.com/akohlmey) (Axel Kohlmeyer).
If this assignment needs to be changed, it shall be done right after a
stable release. If the currently assigned developer cannot merge outstanding pull
requests in a timely manner, or in other extenuating circumstances,
stable release. If the currently assigned developer cannot merge outstanding pull
requests in a timely manner, or in other extenuating circumstances,
other core LAMMPS developers with merge rights can merge pull requests,
when necessary.
when necessary.
## Pull Requests

View File

@ -65,7 +65,7 @@ Header files will typically contain the definition of a (single) class.
These header files should have as few include statements as possible.
This is particularly important for classes that implement a "style" and
thus use a macro of the kind `SomeStyle(some/name,SomeName)`. These will
all be included in the auto-generated `"some_style.h"` files which
all be included in the auto-generated `"some_style.h"` files which
results in a high potential for direct or indirect symbol name clashes.
In the ideal case, the header would only include one file defining the

View File

@ -1,4 +1,4 @@
.TH LAMMPS "15 June 2020" "2020-06-15"
.TH LAMMPS "30 June 2020" "2020-06-30"
.SH NAME
.B LAMMPS
\- Molecular Dynamics Simulator.

View File

@ -8,8 +8,8 @@ useful during development, testing or debugging.
.. _compilation:
Verify compilation flags
------------------------
Monitor compilation flags
-------------------------
Sometimes it is necessary to verify the complete sequence of compilation flags
generated by the CMake build. To enable a more verbose output during
@ -19,7 +19,8 @@ compilation you can use the following option.
-D CMAKE_VERBOSE_MAKEFILE=value # value = no (default) or yes
Another way of doing this without reconfiguration is calling make with variable VERBOSE set to 1:
Another way of doing this without reconfiguration is calling make with
variable VERBOSE set to 1:
.. code-block:: bash
@ -33,25 +34,27 @@ Address, Undefined Behavior, and Thread Sanitizer Support
---------------------------------------------------------
Compilers such as GCC and Clang support generating instrumented binaries
which use different sanitizer libraries to detect problems in code
which use different sanitizer libraries to detect problems in the code
during run-time. They can detect issues like:
- `memory leaks <https://clang.llvm.org/docs/AddressSanitizer.html>`_
- `undefined behavior <https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html>`_
- `data races <https://clang.llvm.org/docs/ThreadSanitizer.html>`_
Please note that this kind of instrumentation usually comes with a small
performance hit (much less than using tools like `Valgrind
<https://valgrind.org>`_). The to enable these features additional
compiler flags need to be added to the compilation and linking stages.
This is most easily done through setting the ``CMAKE_TUNE_FLAGS``
variable during configuration. Examples:
Please note that this kind of instrumentation usually comes with a
performance hit (but much less than using tools like `Valgrind
<https://valgrind.org>`_ with a more low level approach). The to enable
these features additional compiler flags need to be added to the
compilation and linking stages. This is done through setting the
``ENABLE_SANITIZER`` variable during configuration. Examples:
.. code-block:: bash
-D CMAKE_TUNE_FLAGS=-fsanitize=address # enable address sanitizer / memory leak checker
-D CMAKE_TUNE_FLAGS=-fsanitize=undefined # enable undefined behavior sanitizer
-D CMAKE_TUNE_FLAGS=-fsanitize=thread # enable thread sanitizer
-D ENABLE_SANITIZER=none # no sanitizer active (default)
-D ENABLE_SANITIZER=address # enable address sanitizer / memory leak checker
-D ENABLE_SANITIZER=leak # enable memory leak checker (only)
-D ENABLE_SANITIZER=undefined # enable undefined behavior sanitizer
-D ENABLE_SANITIZER=thread # enable thread sanitizer
----------
@ -86,19 +89,21 @@ The output of this command will be looking something like this::
[...]$ ctest
Test project /home/akohlmey/compile/lammps/build-testing
Start 1: MolPairStyle:hybrid-overlay
1/26 Test #1: MolPairStyle:hybrid-overlay ......... Passed 0.02 sec
1/109 Test #1: MolPairStyle:hybrid-overlay ......... Passed 0.02 sec
Start 2: MolPairStyle:hybrid
2/26 Test #2: MolPairStyle:hybrid ................. Passed 0.01 sec
2/109 Test #2: MolPairStyle:hybrid ................. Passed 0.01 sec
Start 3: MolPairStyle:lj_class2
[...]
Start 25: AngleStyle:harmonic
25/26 Test #25: AngleStyle:harmonic ................. Passed 0.01 sec
Start 26: AngleStyle:zero
26/26 Test #26: AngleStyle:zero ..................... Passed 0.01 sec
Start 107: PotentialFileReader
107/109 Test #107: PotentialFileReader ................ Passed 0.04 sec
Start 108: EIMPotentialFileReader
108/109 Test #108: EIMPotentialFileReader ............. Passed 0.03 sec
Start 109: TestSimpleCommands
109/109 Test #109: TestSimpleCommands ................. Passed 0.02 sec
100% tests passed, 0 tests failed out of 26
Total Test time (real) = 0.27 sec
Total Test time (real) = 25.57 sec
The ``ctest`` command has many options, the most important ones are:
@ -117,6 +122,8 @@ The ``ctest`` command has many options, the most important ones are:
- exclude subset of tests matching the regular expression <regex>
* - -N
- dry-run: display list of tests without running them
* - -T memcheck
- run tests with valgrind memory checker (if available)
In its full implementation, the unit test framework will consist of multiple
kinds of tests implemented in different programming languages (C++, C, Python,
@ -193,8 +200,8 @@ In this particular case, 5 out of 6 sets of tests were conducted, the
tests for the ``lj/cut/opt`` pair style was skipped, since the tests
executable did not include it. To learn what individual tests are performed,
you (currently) need to read the source code. You can use code coverage
recording (see next section) to confirm how well the tests cover the individual
source files.
recording (see next section) to confirm how well the tests cover the code
paths in the individual source files.
The force style test programs have a common set of options:
@ -211,6 +218,14 @@ The force style test programs have a common set of options:
* - -v
- verbose output: also print the executed LAMMPS commands
The ``ctest`` tool has no mechanism to directly pass flags to the individual
test programs, but a workaround has been implemented where these flags can be
set in an environment variable ``TEST_ARGS``. Example:
.. code-block:: bash
env TEST_ARGS=-s ctest -V -R BondStyle
To add a test for a style that is not yet covered, it is usually best
to copy a YAML file for a similar style to a new file, edit the details
of the style (how to call it, how to set its coefficients) and then
@ -244,6 +259,16 @@ and working.
of mis-compiled code (or an undesired large loss of precision due
to significant reordering of operations and thus less error cancellation).
Tests for other components and utility functions
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Additional tests that validate utility functions or specific components
of LAMMPS are implemented as standalone executable which may, or may not
require creating a suitable LAMMPS instance. These tests are more specific
and do not require YAML format input files. To add a test, either an
existing source file needs to be extended or a new file added, which in turn
requires additions to the ``CMakeLists.txt`` file in the source folder.
Collect and visualize code coverage metrics
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@ -306,3 +331,23 @@ The images below illustrate how the data is presented.
:target: JPG/coverage-file-branches.png
Source page with branches
Coding style utilities
----------------------
To aid with enforcing some of the coding style conventions in LAMMPS
some additional build targets have been added. These require Python 3.5
or later and will only work on Unix-like operating and file systems.
The following options are available.
.. code-block:: bash
make check-whitespace # generate coverage report in HTML format
make fix-whitespace # generate coverage report in XML format
make check-permissions # delete folder with HTML format coverage report
make fix-permissions # delete all collected coverage data and HTML output
For the code in the ``unittest`` tree we are using the `clang-format`
tool (Clang version 8.0 or later is required). If available, the source
code files in the ``unittest`` tree can be updated to conform to the
formatting settings using ``make format-tests``.

View File

@ -183,6 +183,7 @@ OPT.
* :doc:`mesont/tpm <pair_mesont_tpm>`
* :doc:`mgpt <pair_mgpt>`
* :doc:`mie/cut (g) <pair_mie>`
* :doc:`mliap <pair_mliap>`
* :doc:`mm3/switch3/coulgauss/long <pair_mm3_switch3_coulgauss_long>`
* :doc:`momb <pair_momb>`
* :doc:`morse (gkot) <pair_morse>`
@ -228,7 +229,6 @@ OPT.
* :doc:`smd/ulsph <pair_smd_ulsph>`
* :doc:`smtbq <pair_smtbq>`
* :doc:`snap (k) <pair_snap>`
* :doc:`snap (k) <pair_snap>`
* :doc:`soft (go) <pair_soft>`
* :doc:`sph/heatconduction <pair_sph_heatconduction>`
* :doc:`sph/idealgas <pair_sph_idealgas>`

View File

@ -44,6 +44,7 @@ page gives those details.
* :ref:`MC <PKG-MC>`
* :ref:`MESSAGE <PKG-MESSAGE>`
* :ref:`MISC <PKG-MISC>`
* :ref:`MLIAP <PKG-MLIAP>`
* :ref:`MOLECULE <PKG-MOLECULE>`
* :ref:`MPIIO <PKG-MPIIO>`
* :ref:`MSCG <PKG-MSCG>`
@ -652,6 +653,29 @@ listing, "ls src/MISC", to see the list of commands.
----------
.. _PKG-MLIAP:
MLIAP package
-------------
**Contents:**
A general interface for machine-learning interatomic potentials.
**Install:**
To use this package, also the :ref:`SNAP package<PKG-SNAP>` needs to be installed.
**Author:** Aidan Thompson (Sandia).
**Supporting info:**
* src/MLIAP: filenames -> commands
* :doc:`pair_style mliap <pair_mliap>`
* examples/mliap
----------
.. _PKG-MOLECULE:
MOLECULE package

View File

@ -59,6 +59,8 @@ package:
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
| :ref:`MISC <PKG-MISC>` | miscellaneous single-file commands | n/a | no | no |
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
| :ref:`MLIAP <PKG-MLIAP>` | multiple machine learning potentials | :doc:`pair_style mliap <pair_mliap>` | mliap | no |
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
| :ref:`MOLECULE <PKG-MOLECULE>` | molecular system force fields | :doc:`Howto bioFF <Howto_bioFF>` | peptide | no |
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
| :ref:`MPIIO <PKG-MPIIO>` | MPI parallel I/O dump and restart | :doc:`dump <dump>` | n/a | no |

View File

@ -88,7 +88,7 @@ GPUs/node to 1.
Using the "-pk" switch explicitly allows for setting of the number of
GPUs/node to use and additional options. Its syntax is the same as
same as the "package gpu" command. See the :doc:`package <package>`
the "package gpu" command. See the :doc:`package <package>`
command doc page for details, including the default values used for
all its options if it is not specified.

View File

@ -26,23 +26,23 @@ Examples
Description
"""""""""""
These computes define computations for the stretching (estretch), bending
(ebend), and intertube (etube) per-node (atom) and total energies. The
evaluated value is selected by a parameter passed to the compute: estretch,
These computes define computations for the stretching (estretch), bending
(ebend), and intertube (etube) per-node (atom) and total energies. The
evaluated value is selected by a parameter passed to the compute: estretch,
ebend, etube.
**Output info:**
These computes calculate per-node (per-atom) vectors, which can be accessed by
any command that uses per-atom values from a compute as input, and global
scalars. See the :doc:`Howto output <Howto_output>` doc page for an overview of
These computes calculate per-node (per-atom) vectors, which can be accessed by
any command that uses per-atom values from a compute as input, and global
scalars. See the :doc:`Howto output <Howto_output>` doc page for an overview of
LAMMPS output options.
The computed values are provided in energy :doc:`units <units>`.
Restrictions
""""""""""""
These computes are part of the USER-MESONT package. They are only enabled if
These computes are part of the USER-MESONT package. They are only enabled if
LAMMPS is built with that package. See the :doc:`Build package <Build_package>`
doc page for more info. In addition, :doc:`mesont pair_style <pair_style>`
must be used.

View File

@ -26,7 +26,7 @@ Syntax
*wl* value = yes or no
*wl/hat* value = yes or no
*components* value = ldegree
*chunksize* value = number of atoms in each pass
*chunksize* value = number of atoms in each pass
Examples
""""""""
@ -52,14 +52,17 @@ For each atom, :math:`Q_l` is a real number defined as follows:
\bar{Y}_{lm} = & \frac{1}{nnn}\sum_{j = 1}^{nnn} Y_{lm}( \theta( {\bf r}_{ij} ), \phi( {\bf r}_{ij} ) ) \\
Q_l = & \sqrt{\frac{4 \pi}{2 l + 1} \sum_{m = -l}^{m = l} \bar{Y}_{lm} \bar{Y}^*_{lm}}
The first equation defines the spherical harmonic order parameters.
The first equation defines the local order parameters as averages
of the spherical harmonics :math:`Y_{lm}` for each neighbor.
These are complex number components of the 3D analog of the 2D order
parameter :math:`q_n`, which is implemented as LAMMPS compute
:doc:`hexorder/atom <compute_hexorder_atom>`.
The summation is over the *nnn* nearest
neighbors of the central atom.
The angles theta and phi are the standard spherical polar angles
The angles :math:`theta` and :math:`phi` are the standard spherical polar angles
defining the direction of the bond vector :math:`r_{ij}`.
The phase and sign of :math:`Y_{lm}` follow the standard conventions,
so that :math:`{\rm sign}(Y_{ll}(0,0)) = (-1)^l`.
The second equation defines :math:`Q_l`, which is a
rotationally invariant non-negative amplitude obtained by summing
over all the components of degree *l*\ .
@ -102,8 +105,8 @@ structures are given in Table I of :ref:`Steinhardt <Steinhardt>`, and these
can be reproduced with this keyword.
The optional keyword *components* will output the components of the
normalized complex vector :math:`\bar{Y}_{lm}` of degree *ldegree*\ , which must be
explicitly included in the keyword *degrees*\ . This option can be used
*normalized* complex vector :math:`\hat{Y}_{lm} = \bar{Y}_{lm}/|\bar{Y}_{lm}|` of degree *ldegree*\,
which must be included in the list of order parameters to be computed. This option can be used
in conjunction with :doc:`compute coord_atom <compute_coord_atom>` to
calculate the ten Wolde's criterion to identify crystal-like
particles, as discussed in :ref:`ten Wolde <tenWolde2>`.
@ -177,11 +180,15 @@ If the keyword *wl/hat* is set to yes, then the :math:`\hat{W}_l`
values for each atom will be added to the output array, which are real numbers.
If the keyword *components* is set, then the real and imaginary parts
of each component of (normalized) :math:`\bar{Y}_{lm}` will be added to the
output array in the following order: :math:`Re(\bar{Y}_{-m}) Im(\bar{Y}_{-m})
Re(\bar{Y}_{-m+1}) Im(\bar{Y}_{-m+1}) ... Re(\bar{Y}_m) Im(\bar{Y}_m)`. This
way, the per-atom array will have a total of *nlvalues*\ +2\*(2\ *l*\ +1)
columns.
of each component of *normalized* :math:`\hat{Y}_{lm}` will be added to the
output array in the following order: :math:`{\rm Re}(\hat{Y}_{-m}), {\rm Im}(\hat{Y}_{-m}),
{\rm Re}(\hat{Y}_{-m+1}), {\rm Im}(\hat{Y}_{-m+1}), \dots , {\rm Re}(\hat{Y}_m), {\rm Im}(\hat{Y}_m)`.
In summary, the per-atom array will contain *nlvalues* columns, followed by
an additional *nlvalues* columns if *wl* is set to yes, followed by
an additional *nlvalues* columns if *wl/hat* is set to yes, followed
by an additional 2\*(2\* *ldegree*\ +1) columns if the *components*
keyword is set.
These values can be accessed by any command that uses per-atom values
from a compute as input. See the :doc:`Howto output <Howto_output>` doc

View File

@ -64,7 +64,7 @@ Syntax
end12x, end12y, end12z = end points of line segment
corner123x, corner123y, corner123z = corner points of triangle
nbonds = number of bonds assigned to an atom
buckling = buckling flag used in mesoscopic simulation of nanotubes
buckling = buckling flag used in mesoscopic simulation of nanotubes
.. parsed-literal::

View File

@ -30,7 +30,7 @@ Syntax
* R_1, R_2,... = list of cutoff radii, one for each type (distance units)
* w_1, w_2,... = list of neighbor weights, one for each type
* zero or more keyword/value pairs may be appended
* keyword = *rmin0* or *switchflag* or *bzeroflag* or *quadraticflag*
* keyword = *rmin0* or *switchflag* or *bzeroflag* or *quadraticflag* or *chem* or *bnormflag* or *wselfallflag*
.. parsed-literal::
@ -44,6 +44,15 @@ Syntax
*quadraticflag* value = *0* or *1*
*0* = do not generate quadratic terms
*1* = generate quadratic terms
*chem* values = *nelements* *elementlist*
*nelements* = number of SNAP elements
*elementlist* = *ntypes* integers in range [0, *nelements*)
*bnormflag* value = *0* or *1*
*0* = do not normalize
*1* = normalize bispectrum components
*wselfallflag* value = *0* or *1*
*0* = self-contribution only for element of central atom
*1* = self-contribution for all elements
Examples
""""""""
@ -54,6 +63,7 @@ Examples
compute db all sna/atom 1.4 0.95 6 2.0 1.0
compute vb all sna/atom 1.4 0.95 6 2.0 1.0
compute snap all snap 1.4 0.95 6 2.0 1.0
compute snap all snap 1.0 0.99363 6 3.81 3.83 1.0 0.93 chem 2 0 1
Description
"""""""""""
@ -71,27 +81,26 @@ mathematical definition is given in the paper by Thompson et
al. :ref:`(Thompson) <Thompson20141>`
The position of a neighbor atom *i'* relative to a central atom *i* is
a point within the 3D ball of radius *R_ii' = rcutfac\*(R_i + R_i')*
a point within the 3D ball of radius :math:`R_{ii'}` = *rcutfac* :math:`(R_i + R_i')`
Bartok et al. :ref:`(Bartok) <Bartok20101>`, proposed mapping this 3D ball
onto the 3-sphere, the surface of the unit ball in a four-dimensional
space. The radial distance *r* within *R_ii'* is mapped on to a third
polar angle *theta0* defined by,
space. The radial distance *r* within *R_ii'* is mapped on to a third
polar angle :math:`\theta_0` defined by,
.. math::
\theta_0 = {\tt rfac0} \frac{r-r_{min0}}{R_{ii'}-r_{min0}} \pi
\theta_0 = {\sf rfac0} \frac{r-r_{min0}}{R_{ii'}-r_{min0}} \pi
In this way, all possible neighbor positions are mapped on to a subset
of the 3-sphere. Points south of the latitude *theta0max=rfac0\*Pi*
of the 3-sphere. Points south of the latitude :math:`\theta_0` = *rfac0* :math:`\pi`
are excluded.
The natural basis for functions on the 3-sphere is formed by the 4D
hyperspherical harmonics *U\^j_m,m'(theta, phi, theta0).* These
functions are better known as *D\^j_m,m',* the elements of the Wigner
The natural basis for functions on the 3-sphere is formed by the
representatives of *SU(2)*, the matrices :math:`U^j_{m,m'}(\theta, \phi, \theta_0)`.
These functions are better known as :math:`D^j_{m,m'}`, the elements of the Wigner
*D*\ -matrices :ref:`(Meremianin <Meremianin2006>`,
:ref:`Varshalovich) <Varshalovich1987>`.
:ref:`Varshalovich <Varshalovich1987>`, :ref:`Mason) <Mason2009>`
The density of neighbors on the 3-sphere can be written as a sum of
Dirac-delta functions, one for each neighbor, weighted by species and
radial distance. Expanding this density function as a generalized
@ -100,20 +109,20 @@ coefficient as
.. math::
u^j_{m,m'} = U^j_{m,m'}(0,0,0) + \sum_{r_{ii'} < R_{ii'}}{f_c(r_{ii'}) w_{i'} U^j_{m,m'}(\theta_0,\theta,\phi)}
u^j_{m,m'} = U^j_{m,m'}(0,0,0) + \sum_{r_{ii'} < R_{ii'}}{f_c(r_{ii'}) w_{\mu_{i'}} U^j_{m,m'}(\theta_0,\theta,\phi)}
The *w_i'* neighbor weights are dimensionless numbers that are chosen
to distinguish atoms of different types, while the central atom is
arbitrarily assigned a unit weight. The function *fc(r)* ensures that
The :math:`w_{\mu_{i'}}` neighbor weights are dimensionless numbers that depend on
:math:`\mu_{i'}`, the SNAP element of atom *i'*, while the central atom is
arbitrarily assigned a unit weight. The function :math:`f_c(r)` ensures that
the contribution of each neighbor atom goes smoothly to zero at
*R_ii'*:
:math:`R_{ii'}`:
.. math::
f_c(r) = & \frac{1}{2}(\cos(\pi \frac{r-r_{min0}}{R_{ii'}-r_{min0}}) + 1), r \leq R_{ii'} \\
= & 0, r > R_{ii'}
The expansion coefficients *u\^j_m,m'* are complex-valued and they are
The expansion coefficients :math:`u^j_{m,m'}` are complex-valued and they are
not directly useful as descriptors, because they are not invariant
under rotation of the polar coordinate frame. However, the following
scalar triple products of expansion coefficients can be shown to be
@ -128,7 +137,8 @@ real-valued and invariant under rotation :ref:`(Bartok) <Bartok20101>`.
{j_2} {m_2} {m'_2} \end{array}}
u^{j_1}_{m_1,m'_1} u^{j_2}_{m_2,m'_2}
The constants *H\^jmm'_j1m1m1'_j2m2m2'* are coupling coefficients,
The constants :math:`H^{jmm'}_{j_1 m_1 m_{1'},j_2 m_ 2m_{2'}}`
are coupling coefficients,
analogous to Clebsch-Gordan coefficients for rotations on the
2-sphere. These invariants are the components of the bispectrum and
these are the quantities calculated by the compute *sna/atom*\ . They
@ -136,13 +146,12 @@ characterize the strength of density correlations at three points on
the 3-sphere. The j2=0 subset form the power spectrum, which
characterizes the correlations of two points. The lowest-order
components describe the coarsest features of the density function,
while higher-order components reflect finer detail. Note that the
central atom is included in the expansion, so three point-correlations
can be either due to three neighbors, or two neighbors and the central
atom.
while higher-order components reflect finer detail. Each bispectrum
component contains terms that depend on the positions of up to 4
atoms (3 neighbors and the central atom).
Compute *snad/atom* calculates the derivative of the bispectrum components
summed separately for each atom type:
summed separately for each LAMMPS atom type:
.. math::
@ -165,7 +174,7 @@ Again, the sum is over all atoms *i'* of atom type *I*\ . For each atom
virial components, each atom type, and each bispectrum component. See
section below on output for a detailed explanation.
Compute *snap* calculates a global array contains information related
Compute *snap* calculates a global array containing information related
to all three of the above per-atom computes *sna/atom*\ , *snad/atom*\ ,
and *snav/atom*\ . The first row of the array contains the summation of
*sna/atom* over all atoms, but broken out by type. The last six rows
@ -201,8 +210,8 @@ The argument *rcutfac* is a scale factor that controls the ratio of
atomic radius to radial cutoff distance.
The argument *rfac0* and the optional keyword *rmin0* define the
linear mapping from radial distance to polar angle *theta0* on the
3-sphere.
linear mapping from radial distance to polar angle :math:`theta_0` on the
3-sphere, given above.
The argument *twojmax* defines which
bispectrum components are generated. See section below on output for a
@ -210,7 +219,7 @@ detailed explanation of the number of bispectrum components and the
ordered in which they are listed.
The keyword *switchflag* can be used to turn off the switching
function.
function :math:`f_c(r)`.
The keyword *bzeroflag* determines whether or not *B0*\ , the bispectrum
components of an atom with no neighbors, are subtracted from
@ -219,13 +228,72 @@ normally only affects compute *sna/atom*\ . However, when
*quadraticflag* is on, it also affects *snad/atom* and *snav/atom*\ .
The keyword *quadraticflag* determines whether or not the
quadratic analogs to the bispectrum quantities are generated.
quadratic combinations of bispectrum quantities are generated.
These are formed by taking the outer product of the vector
of bispectrum components with itself.
See section below on output for a
detailed explanation of the number of quadratic terms and the
ordered in which they are listed.
The keyword *chem* activates the explicit multi-element variant
of the SNAP bispectrum components. The argument *nelements*
specifies the number of SNAP elements that will be handled.
This is followed by *elementlist*, a list of integers of
length *ntypes*, with values in the range [0, *nelements* ),
which maps each LAMMPS type to one of the SNAP elements.
Note that multiple LAMMPS types can be mapped to the same element,
and some elements may be mapped by no LAMMPS type. However, in typical
use cases (training SNAP potentials) the mapping from LAMMPS types
to elements is one-to-one.
The explicit multi-element variant invoked by the *chem* keyword
partitions the density of neighbors into partial densities
for each chemical element. This is described in detail in the
paper by :ref:`Cusentino et al. <Cusentino2020>`
The bispectrum components are indexed on
ordered triplets of elements:
.. math::
B_{j_1,j_2,j}^{\kappa\lambda\mu} =
\sum_{m_1,m'_1=-j_1}^{j_1}\sum_{m_2,m'_2=-j_2}^{j_2}\sum_{m,m'=-j}^{j} (u^{\mu}_{j,m,m'})^*
H {\scriptscriptstyle \begin{array}{l} {j} {m} {m'} \\
{j_1} {m_1} {m'_1} \\
{j_2} {m_2} {m'_2} \end{array}}
u^{\kappa}_{j_1,m_1,m'_1} u^{\lambda}_{j_2,m_2,m'_2}
where :math:`u^{\mu}_{j,m,m'}` is an expansion coefficient for the partial density of neighbors
of element :math:`\mu`
.. math::
u^{\mu}_{j,m,m'} = w^{self}_{\mu_{i}\mu} U^{j,m,m'}(0,0,0) + \sum_{r_{ii'} < R_{ii'}}{\delta_{\mu\mu_{i'}}f_c(r_{ii'}) w_{\mu_{i'}} U^{j,m,m'}(\theta_0,\theta,\phi)}
where :math:`w^{self}_{\mu_{i}\mu}` is the self-contribution, which is either 1 or 0
(see keyword *wselfallflag* below), :math:`\delta_{\mu\mu_{i'}}` indicates
that the sum is only over neighbor atoms of element :math:`\mu`,
and all other quantities are the same as those appearing in the
original equation for :math:`u^j_{m,m'}` given above.
The keyword *wselfallflag* defines the rule used for the self-contribution.
If *wselfallflag* is on, then :math:`w^{self}_{\mu_{i}\mu}` = 1. If it is
off then :math:`w^{self}_{\mu_{i}\mu}` = 0, except in the case
of :math:`{\mu_{i}=\mu}`, when :math:`w^{self}_{\mu_{i}\mu}` = 1.
When the *chem* keyword is not used, this keyword has no effect.
The keyword *bnormflag* determines whether or not the bispectrum
component :math:`B_{j_1,j_2,j}` is divided by a factor of :math:`2j+1`.
This normalization simplifies force calculations because of the
following symmetry relation
.. math::
\frac{B_{j_1,j_2,j}}{2j+1} = \frac{B_{j,j_2,j_1}}{2j_1+1} = \frac{B_{j_1,j,j_2}}{2j_2+1}
This option is typically used in conjunction with the *chem* keyword,
and LAMMPS will generate a warning if both *chem* and *bnormflag*
are not both set or not both unset.
.. note::
If you have a bonded system, then the settings of
@ -257,6 +325,8 @@ described by the following piece of python code:
for j in range(j1-j2,min(twojmax,j1+j2)+1,2):
if (j>=j1): print j1/2.,j2/2.,j/2.
For even twojmax = 2(*m*\ -1), :math:`K = m(m+1)(2m+1)/6`, the *m*\ -th pyramidal number. For odd twojmax = 2 *m*\ -1, :math:`K = m(m+1)(m+2)/3`, twice the *m*\ -th tetrahedral number.
.. note::
the *diagonal* keyword allowing other possible choices
@ -267,16 +337,15 @@ described by the following piece of python code:
Compute *snad/atom* evaluates a per-atom array. The columns are
arranged into *ntypes* blocks, listed in order of atom type *I*\ . Each
block contains three sub-blocks corresponding to the *x*\ , *y*\ , and *z*
components of the atom position. Each of these sub-blocks contains
one column for each bispectrum component, the same as for compute
*sna/atom*
components of the atom position. Each of these sub-blocks contains *K*
columns for the *K* bispectrum components, the same as for compute *sna/atom*
Compute *snav/atom* evaluates a per-atom array. The columns are
arranged into *ntypes* blocks, listed in order of atom type *I*\ . Each
block contains six sub-blocks corresponding to the *xx*\ , *yy*\ , *zz*\ ,
*yz*\ , *xz*\ , and *xy* components of the virial tensor in Voigt
notation. Each of these sub-blocks contains one column for each
bispectrum component, the same as for compute *sna/atom*
notation. Each of these sub-blocks contains *K*
columns for the *K* bispectrum components, the same as for compute *sna/atom*
Compute *snap* evaluates a global array.
The columns are arranged into
@ -312,6 +381,14 @@ of linear terms i.e. linear and quadratic terms are contiguous.
So the nesting order from inside to outside is bispectrum component,
linear then quadratic, vector/tensor component, type.
If the *chem* keyword is used, then the data is arranged into :math:`N_{elem}^3`
sub-blocks, each sub-block corresponding to a particular chemical labeling
:math:`\kappa\lambda\mu` with the last label changing fastest.
Each sub-block contains *K* bispectrum components. For the purposes
of handling contributions to force, virial, and quadratic combinations,
these :math:`N_{elem}^3` sub-blocks are treated as a single block
of :math:`K N_{elem}^3` columns.
These values can be accessed by any command that uses per-atom values
from a compute as input. See the :doc:`Howto output <Howto_output>` doc
page for an overview of LAMMPS output options.
@ -320,7 +397,8 @@ Restrictions
""""""""""""
These computes are part of the SNAP package. They are only enabled if
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
LAMMPS was built with that package. See the :doc:`Build package <Build_package>`
doc page for more info.
Related commands
""""""""""""""""
@ -332,6 +410,7 @@ Default
The optional keyword defaults are *rmin0* = 0,
*switchflag* = 1, *bzeroflag* = 1, *quadraticflag* = 0,
*bnormflag* = 0, *wselfallflag* = 0
----------
@ -352,3 +431,11 @@ available at `arXiv:1409.3880 <http://arxiv.org/abs/1409.3880>`_
**(Varshalovich)** Varshalovich, Moskalev, Khersonskii, Quantum Theory
of Angular Momentum, World Scientific, Singapore (1987).
.. _Mason2009:
**(Mason)** J. K. Mason, Acta Cryst A65, 259 (2009).
.. _Cusentino2020:
**(Cusentino)** Cusentino, Wood, and Thompson, J Phys Chem A, xxx, xxxxx, (2020)

View File

@ -35,7 +35,7 @@ Syntax
v_name = variable with name that calculates value of aparam
* zero or more keyword/value pairs may be appended
* keyword = *scale* or *reset*
* keyword = *scale* or *reset* or *mass*
.. parsed-literal::
@ -45,6 +45,9 @@ Syntax
*reset* value = *no* or *yes*
*no* = values will remain altered at the end of a run
*yes* = reset altered values to their original values at the end of a run
*mass* value = *no* or *yes*
*no* = mass is not altered by changes in diameter
*yes* = mass is altered by changes in diameter
Examples
""""""""
@ -53,7 +56,7 @@ Examples
fix 1 all adapt 1 pair soft a 1 1 v_prefactor
fix 1 all adapt 1 pair soft a 2* 3 v_prefactor
fix 1 all adapt 1 pair lj/cut epsilon * * v_scale1 coul/cut scale 3 3 v_scale2 scale yes reset yes
fix 1 all adapt 1 pair lj/cut epsilon * * v_scale1 pair coul/cut scale 3 3 v_scale2 scale yes reset yes
fix 1 all adapt 10 atom diameter v_size
variable ramp_up equal "ramp(0.01,0.5)"
@ -86,12 +89,13 @@ the end of a simulation. Even if *reset* is specified as *yes*\ , a
restart file written during a simulation will contain the modified
settings.
If the *scale* keyword is set to *no*\ , then the value of the altered
parameter will be whatever the variable generates. If the *scale*
keyword is set to *yes*\ , then the value of the altered parameter will
be the initial value of that parameter multiplied by whatever the
variable generates. I.e. the variable is now a "scale factor" applied
in (presumably) a time-varying fashion to the parameter.
If the *scale* keyword is set to *no*\ , which is the default, then
the value of the altered parameter will be whatever the variable
generates. If the *scale* keyword is set to *yes*\ , then the value
of the altered parameter will be the initial value of that parameter
multiplied by whatever the variable generates. I.e. the variable is
now a "scale factor" applied in (presumably) a time-varying fashion to
the parameter.
Note that whether scale is *no* or *yes*\ , internally, the parameters
themselves are actually altered by this fix. Make sure you use the
@ -107,16 +111,17 @@ style supports it. Note that the :doc:`pair_style <pair_style>` and
to specify these parameters initially; the fix adapt command simply
overrides the parameters.
The *pstyle* argument is the name of the pair style. If :doc:`pair_style hybrid or hybrid/overlay <pair_hybrid>` is used, *pstyle* should be
a sub-style name. If there are multiple sub-styles using the same
pair style, then *pstyle* should be specified as "style:N" where N is
which instance of the pair style you wish to adapt, e.g. the first,
second, etc. For example, *pstyle* could be specified as "soft" or
"lubricate" or "lj/cut:1" or "lj/cut:2". The *pparam* argument is the
name of the parameter to change. This is the current list of pair
styles and parameters that can be varied by this fix. See the doc
pages for individual pair styles and their energy formulas for the
meaning of these parameters:
The *pstyle* argument is the name of the pair style. If
:doc:`pair_style hybrid or hybrid/overlay <pair_hybrid>` is used,
*pstyle* should be a sub-style name. If there are multiple
sub-styles using the same pair style, then *pstyle* should be specified
as "style:N" where N is which instance of the pair style you wish to
adapt, e.g. the first, second, etc. For example, *pstyle* could be
specified as "soft" or "lubricate" or "lj/cut:1" or "lj/cut:2". The
*pparam* argument is the name of the parameter to change. This is the
current list of pair styles and parameters that can be varied by this
fix. See the doc pages for individual pair styles and their energy
formulas for the meaning of these parameters:
+---------------------------------------------------------------------+--------------------------------------------------+-------------+
| :doc:`born <pair_born>` | a,b,c | type pairs |
@ -234,31 +239,32 @@ the coefficients for the symmetric J,I interaction to the same values.
A wild-card asterisk can be used in place of or in conjunction with
the I,J arguments to set the coefficients for multiple pairs of atom
types. This takes the form "\*" or "\*n" or "n\*" or "m\*n". If N = the
number of atom types, then an asterisk with no numeric values means
all types from 1 to N. A leading asterisk means all types from 1 to n
(inclusive). A trailing asterisk means all types from n to N
types. This takes the form "\*" or "\*n" or "n\*" or "m\*n". If N =
the number of atom types, then an asterisk with no numeric values
means all types from 1 to N. A leading asterisk means all types from
1 to n (inclusive). A trailing asterisk means all types from n to N
(inclusive). A middle asterisk means all types from m to n
(inclusive). Note that only type pairs with I <= J are considered; if
asterisks imply type pairs where J < I, they are ignored.
IMPROTANT NOTE: If :doc:`pair_style hybrid or hybrid/overlay <pair_hybrid>` is being used, then the *pstyle* will
be a sub-style name. You must specify I,J arguments that correspond
to type pair values defined (via the :doc:`pair_coeff <pair_coeff>`
command) for that sub-style.
IMPROTANT NOTE: If :doc:`pair_style hybrid or hybrid/overlay
<pair_hybrid>` is being used, then the *pstyle* will be a sub-style
name. You must specify I,J arguments that correspond to type pair
values defined (via the :doc:`pair_coeff <pair_coeff>` command) for
that sub-style.
The *v_name* argument for keyword *pair* is the name of an
:doc:`equal-style variable <variable>` which will be evaluated each time
this fix is invoked to set the parameter to a new value. It should be
specified as v_name, where name is the variable name. Equal-style
variables can specify formulas with various mathematical functions,
and include :doc:`thermo_style <thermo_style>` command keywords for the
simulation box parameters and timestep and elapsed time. Thus it is
easy to specify parameters that change as a function of time or span
consecutive runs in a continuous fashion. For the latter, see the
*start* and *stop* keywords of the :doc:`run <run>` command and the
*elaplong* keyword of :doc:`thermo_style custom <thermo_style>` for
details.
:doc:`equal-style variable <variable>` which will be evaluated each
time this fix is invoked to set the parameter to a new value. It
should be specified as v_name, where name is the variable name.
Equal-style variables can specify formulas with various mathematical
functions, and include :doc:`thermo_style <thermo_style>` command
keywords for the simulation box parameters and timestep and elapsed
time. Thus it is easy to specify parameters that change as a function
of time or span consecutive runs in a continuous fashion. For the
latter, see the *start* and *stop* keywords of the :doc:`run <run>`
command and the *elaplong* keyword of :doc:`thermo_style custom
<thermo_style>` for details.
For example, these commands would change the prefactor coefficient of
the :doc:`pair_style soft <pair_soft>` potential from 10.0 to 30.0 in a
@ -319,23 +325,28 @@ The *atom* keyword enables various atom properties to be changed. The
current list of atom parameters that can be varied by this fix:
* charge = charge on particle
* diameter, or, diameter/disc = diameter of particle
* diameter or diameter/disc = diameter of particle
The *v_name* argument of the *atom* keyword is the name of an
:doc:`equal-style variable <variable>` which will be evaluated each time
this fix is invoked to set, or scale the parameter to a new value.
It should be specified as v_name, where name is the variable name. See the
discussion above describing the formulas associated with equal-style
variables. The new value is assigned to the corresponding attribute
for all atoms in the fix group.
:doc:`equal-style variable <variable>` which will be evaluated each
time this fix is invoked to set, or scale the parameter to a new
value. It should be specified as v_name, where name is the variable
name. See the discussion above describing the formulas associated
with equal-style variables. The new value is assigned to the
corresponding attribute for all atoms in the fix group.
If the atom parameter is *diameter* and per-atom density and per-atom
mass are defined for particles (e.g. :doc:`atom_style granular <atom_style>`), then the mass of each particle is also
changed when the diameter changes. The mass is set from the particle volume
for 3d systems (density is assumed to stay constant). For 2d, the default is
for LAMMPS to model particles with a radius attribute as spheres.
However, if the atom parameter is *diameter/disc*, then the mass is
set from the particle area (the density is assumed to be in mass/distance^2 units).
mass are defined for particles (e.g. :doc:`atom_style granular
<atom_style>`), then the mass of each particle is, by default, also
changed when the diameter changes. The mass is set from the particle
volume for 3d systems (density is assumed to stay constant). For 2d,
the default is for LAMMPS to model particles with a radius attribute
as spheres. However, if the atom parameter is *diameter/disc*, then the
mass is set from the particle area (the density is assumed to be in
mass/distance^2 units). The mass of the particle may also be kept constant
if the *mass* keyword is set to *no*. This can be useful to account for
diameter changes that do not involve mass changes, e.g., thermal expansion.
For example, these commands would shrink the diameter of all granular
particles in the "center" group from 1.0 to 0.1 in a linear fashion
@ -348,13 +359,63 @@ over the course of a 1000-step simulation:
----------
This fix can be used in long simulations which are restarted one or
more times to continuously adapt simulation parameters, but it must be
done carefully. There are two issues to consider. The first is how
to adapt the parameters in a continuous manner from one simulation to
the next. The second is how, if desired, to reset the parameters to
their original values at the end of the last restarted run.
Note that all the parameters changed by this fix are written into a
restart file in their current changed state. A new restarted
simulation does not know their original time=0 values, unless the
input script explicitly resets the parameters (after the restart file
is read), to their original values.
Also note, that the time-dependent variable(s) used in the restart
script should typically be written as a function of time elapsed since
the original simulation began.
With this in mind, if the *scale* keyword is set to *no* (the default)
in a restarted simulation, original parameters are not needed. The
adapted parameters should seamlessly continue their variation relative
to the preceding simulation.
If the *scale* keyword is set to *yes*, then the input script should
typically reset the parameters being adapted to their original values,
so that the scaling formula specified by the variable will operate
correctly. An exception is if the *atom* keyword is being used with
*scale yes*. In this case, information is added to the restart file
so that per-atom properties in the new run will automatically be
scaled relative to their original values. This will only work if the
fix adapt command specified in the restart script has the same ID as
the one used in the original script.
In a restarted run, if the *reset* keyword is set to *yes*, and the
run ends in this script (as opposed to just writing more restart
files, parameters will be restored to the values they were at the
beginning of the run command in the restart script. Which as
explained above, may or may not be the original values of the
parameters. Again, an exception is if the *atom* keyword is being
used with *reset yes* (in all the runs). In that case, the original
per-atom parameters are stored in the restart file, and will be
restored when the restarted run finally completes.
----------
**Restart, fix_modify, output, run start/stop, minimize info:**
No information about this fix is written to :doc:`binary restart files <restart>`. None of the :doc:`fix_modify <fix_modify>` options
are relevant to this fix. No global or per-atom quantities are stored
by this fix for access by various :doc:`output commands <Howto_output>`.
No parameter of this fix can be used with the *start/stop* keywords of
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
If the *atom* keyword is used and the *scale* or *reset* keyword is
set to *yes*, then this fix writes information to a restart file so
that in a restarted run scaling can continue in a seamless manner
and/or the per-atom values can be restored, as explained above.
None of the :doc:`fix_modify <fix_modify>` options are relevant to
this fix. No global or per-atom quantities are stored by this fix for
access by various :doc:`output commands <Howto_output>`. No parameter
of this fix can be used with the *start/stop* keywords of the
:doc:`run <run>` command. This fix is not invoked during :doc:`energy
minimization <minimize>`.
For :doc:`rRESPA time integration <run_style>`, this fix changes
parameters on the outermost rRESPA level.
@ -371,4 +432,4 @@ Related commands
Default
"""""""
The option defaults are scale = no, reset = no.
The option defaults are scale = no, reset = no, mass = yes.

View File

@ -89,14 +89,20 @@ LAMMPS so long as they are in the format LAMMPS expects, as discussed
on the individual doc pages. The first line of potential files may
contain metadata with upper case tags followed their value. These may
be parsed and used by LAMMPS. Currently supported are the "DATE:"
tag and the "UNITS:" tag. For pair styles that have been programmed
tag and the ``UNITS:`` tag. For pair styles that have been programmed
to support the metadata, the value of the "DATE:" tag is printed to
the screen and logfile so that the version of a potential file can be
later identified. The "UNITS:" tag indicates the :doc:`units <units>`
later identified. The ``UNITS:`` tag indicates the :doc:`units <units>`
setting required for this particular potential file. If the potential
file ware created for a different sets of units, LAMMPS will terminate
file was created for a different sets of units, LAMMPS will terminate
with an error. If the potential file does not contain the tag, no
check will be made.
check will be made and it is the responsibility of the user to determine
that the unit style is correct.
In some select cases and for specific combinations of unit styles,
LAMMPS is capable of automatically converting potential parameters
from a file. In those cases, a warning message signaling that an
automatic conversion has happened is printed to the screen.
When a pair_coeff command using a potential file is specified, LAMMPS
looks for the potential file in 2 places. First it looks in the

View File

@ -76,7 +76,7 @@ Examples
pair_style eam
pair_coeff * * cuu3
pair_coeff 1*3 1\*3 niu3.eam
pair_coeff 1*3 1*3 niu3.eam
pair_style eam/alloy
pair_coeff * * ../potentials/NiAlH_jea.eam.alloy Ni Al Ni Ni

View File

@ -48,7 +48,7 @@ and :math:`sigma_i` are calculated as
\sigma_i = & \sum_{j=i_1}^{i_N} q_j \cdot \psi_{ij} \left(r_{ij}\right) \\
E_i\left(q_i,\sigma_i\right) = & \frac{1}{2} \cdot q_i \cdot \sigma_i
where :math:`\eta_{ji} is a pairwise function describing electron flow from atom
where :math:`\eta_{ji}` is a pairwise function describing electron flow from atom
I to atom J, and :math:`\psi_{ij}` is another pairwise function. The multi-body
nature of the EIM potential is a result of the embedding energy term.
A complete list of all the pair functions used in EIM is summarized
@ -63,7 +63,7 @@ below
\right.\\
\eta_{ji} = & A_{\eta,ij}\left(\chi_j-\chi_i\right)f_c\left(r,r_{s,\eta,ij},r_{c,\eta,ij}\right) \\
\psi_{ij}\left(r\right) = & A_{\psi,ij}\exp\left(-\zeta_{ij}r\right)f_c\left(r,r_{s,\psi,ij},r_{c,\psi,ij}\right) \\
f_{c}\left(r,r_p,r_c\right) = & 0.510204 \mathrm{erfc}\left[\frac{1.64498\left(2r-r_p-r_c\right)}{r_c-r_p}\right] - 0.010204
f_{c}\left(r,r_p,r_c\right) = & 0.510204 \cdot \mathrm{erfc}\left[\frac{1.64498\left(2r-r_p-r_c\right)}{r_c-r_p}\right] - 0.010204
Here :math:`E_b, r_e, r_(c,\phi), \alpha, \beta, A_(\psi), \zeta, r_(s,\psi),
r_(c,\psi), A_(\eta), r_(s,\eta), r_(c,\eta), \chi,` and pair function type

View File

@ -85,7 +85,8 @@ standard 12-6 Lennard-Jones written in the epsilon/sigma form:
.. math::
E(r) = 4\epsilon\biggl[\bigl(\frac{\sigma}{r}\bigr)^{12} - \bigl(\frac{\sigma}{r}\bigr)^6\biggr]
E(r) = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right]
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
@ -141,7 +142,7 @@ given or both left out:
**Mixing, shift, table, tail correction, restart, rRESPA info**\ :
For atom type pairs I,J and I != J, the :math:`\epsilon` and
:math:`sigma` coefficients and cutoff distances for the lj/mdf pair
:math:`\sigma` coefficients 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. The other two pair styles buck/mdf
and lennard/mdf do not support mixing, so all I,J pairs of coefficients

View File

@ -9,7 +9,7 @@ Syntax
.. parsed-literal::
pair_style mesont/tpm cut table_path BendingMode TPMType
pair_style mesont/tpm cut table_path BendingMode TPMType
* cut = the cutoff distance
* table_path = the path to the potential table
@ -114,7 +114,7 @@ study the thermal transport properties of carbon nanotube films
The methods for modeling of
the mechanical energy dissipation into heat (energy exchange between the
dynamic degrees of freedom of the mesoscopic model and the energy of atomic
vibrations that are not explicitly represented in the model)
vibrations that are not explicitly represented in the model)
:ref:`(Zhigilei10) <Zhigilei10>` and mesoscopic description of covalent cross-links
between nanotubes :ref:`(Banna) <Banna>` have also been developed but are not
included in this first release of the LAMMPS implementation of the force field.
@ -144,7 +144,7 @@ pair interactions.
The cutoff distance should be set to be at least :math:`max\left[2L,\sqrt{L^2/2+(2R+T_{cut})^2}\right]` ,
where L is the maximum segment length, R is the maximum tube radius, and
:math:`T_{cut}` = 10.2 A is the maximum distance between the surfaces of interacting
segments. Because of the use of extended chain concept at CNT ends, the recommended
segments. Because of the use of extended chain concept at CNT ends, the recommended
cutoff is 3L.
The MESONT-TABTP_10_10.xrs potential file provided with LAMMPS (see the

136
doc/src/pair_mliap.rst Normal file
View File

@ -0,0 +1,136 @@
.. index:: pair_style mliap
pair_style mliap command
========================
Syntax
""""""
.. code-block:: LAMMPS
pair_style mliap
Examples
""""""""
.. code-block:: LAMMPS
pair_style mliap model linear InP.mliap.model descriptor sna InP.mliap.descriptor
pair_style mliap model quadratic W.mliap.model descriptor sna W.mliap.descriptor
pair_coeff * * In P
Description
"""""""""""
Pair style *mliap* provides a general interface to families of
machine-learning interatomic potentials. It provides separate
definitions of the interatomic potential functional form (*model*)
and the geometric quantities that characterize the atomic positions
(*descriptor*). By defining *model* and *descriptor* separately,
it is possible to use many different models with a given descriptor,
or many different descriptors with a given model. Currently, the pair_style
supports just two models, *linear* and *quadratic*,
and one descriptor, *sna*, the SNAP descriptor used by :doc:`pair_style snap <pair_snap>`, including the linear, quadratic,
and chem variants. Work is currently underway to extend
the interface to handle neural network energy models,
and it is also straightforward to add new descriptor styles.
The pair_style *mliap* command must be followed by two keywords
*model* and *descriptor* in either order. A single
*pair_coeff* command is also required. The first 2 arguments
must be \* \* so as to span all LAMMPS atom types.
This is followed by a list of N arguments
that specify the mapping of MLIAP
element names to LAMMPS atom types,
where N is the number of LAMMPS atom types.
The *model* keyword is followed by a model style, currently limited to
either *linear* or *quadratic*. In both cases,
this is followed by a single argument specifying the model filename containing the
linear or quadratic coefficients for a set of elements.
The model filename usually ends in the *.mliap.model* extension.
It may contain coefficients for many elements. The only requirement is that it
contain at least those element names appearing in the
*pair_coeff* command.
The top of the model file can contain any number of blank and comment lines (start with #),
but follows a strict format after that. The first non-blank non-comment
line must contain two integers:
* nelems = Number of elements
* ncoeff = Number of coefficients
This is followed by one block for each of the *nelem* elements.
Each block consists of *ncoeff* coefficients, one per line.
Note that this format is similar, but not identical to that used
for the :doc:`pair_style snap <pair_snap>` coefficient file.
Specifically, the line containing the element weight and radius is omitted,
since these are handled by the *descriptor*.
The *descriptor* keyword is followed by a descriptor style, and additional arguments.
Currently the only descriptor style is *sna*, indicating the bispectrum component
descriptors used by the Spectral Neighbor Analysis Potential (SNAP) potentials of
:doc:`pair_style snap <pair_snap>`.
The \'p\' in SNAP is dropped, because keywords that match pair_styles are silently stripped
out by the LAMMPS command parser. A single additional argument specifies the descriptor filename
containing the parameters and setting used by the SNAP descriptor.
The descriptor filename usually ends in the *.mliap.descriptor* extension.
The SNAP descriptor file closely follows the format of the
:doc:`pair_style snap <pair_snap>` parameter file.
The file can contain blank and comment lines (start
with #) anywhere. Each non-blank non-comment line must contain one
keyword/value pair. The required keywords are *rcutfac* and
*twojmax*\ . There are many optional keywords that are described
on the :doc:`pair_style snap <pair_snap>` doc page.
In addition, the SNAP descriptor file must contain
the *nelems*, *elems*, *radelems*, and *welems* keywords.
The *nelems* keyword specifies the number of elements
provided in the other three keywords.
The *elems* keyword is followed by a list of *nelems*
element names that must include the element
names appearing in the *pair_coeff* command,
but can contain other names too.
Similarly, the *radelems* and *welems* keywords are
followed by lists of *nelems* numbers giving the element radius
and element weight of each element. Obviously, the order
in which the elements are listed must be consistent for all
three keywords.
See the :doc:`pair_coeff <pair_coeff>` doc page for alternate ways
to specify the path for these *model* and *descriptor* files.
**Mixing, shift, table, tail correction, restart, rRESPA info**\ :
For atom type pairs I,J and I != J, where types I and J correspond to
two different element types, mixing is performed by LAMMPS with
user-specifiable parameters as described above. You never need to
specify a pair_coeff command with I != J arguments for this style.
This pair style does not support the :doc:`pair_modify <pair_modify>`
shift, table, and tail options.
This pair style does not write its information to :doc:`binary restart files <restart>`, 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 can only be used via the *pair* keyword of the
:doc:`run_style respa <run_style>` command. It does not support the
*inner*\ , *middle*\ , *outer* keywords.
----------
Restrictions
""""""""""""
This style is part of the MLIAP package. It is only enabled if LAMMPS
was built with that package. In addition, building LAMMPS with the MLIAP package
requires building LAMMPS with the SNAP package.
See the :doc:`Build package <Build_package>` doc page for more info.
Related commands
""""""""""""""""
:doc:`pair_style snap <pair_snap>`,
**Default:** none

View File

@ -24,27 +24,30 @@ Examples
Description
"""""""""""
Pair style *snap* computes interactions using the spectral
neighbor analysis potential (SNAP) :ref:`(Thompson) <Thompson20142>`.
Like the GAP framework of Bartok et al. :ref:`(Bartok2010) <Bartok20102>`,
:ref:`(Bartok2013) <Bartok2013>` which uses bispectrum components
Pair style *snap* defines the spectral
neighbor analysis potential (SNAP), a machine-learning
interatomic potential :ref:`(Thompson) <Thompson20142>`.
Like the GAP framework of Bartok et al. :ref:`(Bartok2010) <Bartok20102>`,
SNAP uses bispectrum components
to characterize the local neighborhood of each atom
in a very general way. The mathematical definition of the
bispectrum calculation used by SNAP is identical
to that used by :doc:`compute sna/atom <compute_sna_atom>`.
bispectrum calculation and its derivatives w.r.t. atom positions
is identical to that used by :doc:`compute snap <compute_sna_atom>`,
which is used to fit SNAP potentials to *ab initio* energy, force,
and stress data.
In SNAP, the total energy is decomposed into a sum over
atom energies. The energy of atom *i* is
expressed as a weighted sum over bispectrum components.
.. math::
E^i_{SNAP}(B_1^i,...,B_K^i) = \beta^{\alpha_i}_0 + \sum_{k=1}^K \beta_k^{\alpha_i} B_k^i
E^i_{SNAP}(B_1^i,...,B_K^i) = \beta^{\mu_i}_0 + \sum_{k=1}^K \beta_k^{\mu_i} B_k^i
where :math:`B_k^i` is the *k*\ -th bispectrum component of atom *i*\ ,
and :math:`\beta_k^{\alpha_i}` is the corresponding linear coefficient
that depends on :math:\alpha_i`, the SNAP element of atom *i*\ . The
and :math:`\beta_k^{\mu_i}` is the corresponding linear coefficient
that depends on :math:`\mu_i`, the SNAP element of atom *i*\ . The
number of bispectrum components used and their definitions
depend on the value of *twojmax*
depend on the value of *twojmax* and other parameters
defined in the SNAP parameter file described below.
The bispectrum calculation is described in more detail
in :doc:`compute sna/atom <compute_sna_atom>`.
@ -136,17 +139,51 @@ The SNAP parameter file can contain blank and comment lines (start
with #) anywhere. Each non-blank non-comment line must contain one
keyword/value pair. The required keywords are *rcutfac* and
*twojmax*\ . Optional keywords are *rfac0*\ , *rmin0*\ ,
*switchflag*\ , *bzeroflag*\, and *chunksize*\.
*switchflag*\ , *bzeroflag*\ , *quadraticflag*\ , *chemflag*\ ,
*bnormflag*\ , *wselfallflag*\ , and *chunksize*\ .
The default values for these keywords are
* *rfac0* = 0.99363
* *rmin0* = 0.0
* *switchflag* = 0
* *switchflag* = 1
* *bzeroflag* = 1
* *quadraticflag* = 1
* *quadraticflag* = 0
* *chemflag* = 0
* *bnormflag* = 0
* *wselfallflag* = 0
* *chunksize* = 2000
If *quadraticflag* is set to 1, then the SNAP energy expression includes additional quadratic terms
that have been shown to increase the overall accuracy of the potential without much increase
in computational cost :ref:`(Wood) <Wood20182>`.
.. math::
E^i_{SNAP}(\mathbf{B}^i) = \beta^{\mu_i}_0 + \boldsymbol{\beta}^{\mu_i} \cdot \mathbf{B}_i + \frac{1}{2}\mathbf{B}^t_i \cdot \boldsymbol{\alpha}^{\mu_i} \cdot \mathbf{B}_i
where :math:`\mathbf{B}_i` is the *K*-vector of bispectrum components,
:math:`\boldsymbol{\beta}^{\mu_i}` is the *K*-vector of linear coefficients
for element :math:`\mu_i`, and :math:`\boldsymbol{\alpha}^{\mu_i}`
is the symmetric *K* by *K* matrix of quadratic coefficients.
The SNAP element file should contain *K*\ (\ *K*\ +1)/2 additional coefficients
for each element, the upper-triangular elements of :math:`\boldsymbol{\alpha}^{\mu_i}`.
If *chemflag* is set to 1, then the energy expression is written in terms of explicit multi-element bispectrum
components indexed on ordered triplets of elements, which has been shown to increase the ability of the SNAP
potential to capture energy differences in chemically complex systems,
at the expense of a significant increase in computational cost :ref:`(Cusentino) <Cusentino20202>`.
.. math::
E^i_{SNAP}(\mathbf{B}^i) = \beta^{\mu_i}_0 + \sum_{\kappa,\lambda,\mu} \boldsymbol{\beta}^{\kappa\lambda\mu}_{\mu_i} \cdot \mathbf{B}^{\kappa\lambda\mu}_i
where :math:`\mathbf{B}^{\kappa\lambda\mu}_i` is the *K*-vector of bispectrum components
for neighbors of elements :math:`\kappa`, :math:`\lambda`, and :math:`\mu` and
:math:`\boldsymbol{\beta}^{\kappa\lambda\mu}_{\mu_i}` is the corresponding *K*-vector
of linear coefficients for element :math:`\mu_i`. The SNAP element file should contain
a total of :math:`K N_{elem}^3` coefficients for each of the :math:`N_{elem}` elements.
The keyword *chunksize* is only applicable when using the
pair style *snap* with the KOKKOS package and is ignored otherwise.
This keyword controls
@ -159,10 +196,6 @@ into two passes.
Detailed definitions for all the other keywords
are given on the :doc:`compute sna/atom <compute_sna_atom>` doc page.
If *quadraticflag* is set to 1, then the SNAP energy expression includes the quadratic term, 0.5\*B\^t.alpha.B, where alpha is a symmetric *K* by *K* matrix.
The SNAP element file should contain *K*\ (\ *K*\ +1)/2 additional coefficients
for each element, the upper-triangular elements of alpha.
.. note::
The previously used *diagonalstyle* keyword was removed in 2019,
@ -221,7 +254,8 @@ Related commands
:doc:`compute sna/atom <compute_sna_atom>`,
:doc:`compute snad/atom <compute_sna_atom>`,
:doc:`compute snav/atom <compute_sna_atom>`
:doc:`compute snav/atom <compute_sna_atom>`,
:doc:`compute snap <compute_sna_atom>`
**Default:** none
@ -235,6 +269,10 @@ Related commands
**(Bartok2010)** Bartok, Payne, Risi, Csanyi, Phys Rev Lett, 104, 136403 (2010).
.. _Bartok2013:
.. _Wood20182:
**(Bartok2013)** Bartok, Gillan, Manby, Csanyi, Phys Rev B 87, 184115 (2013).
**(Wood)** Wood and Thompson, J Chem Phys, 148, 241721, (2018)
.. _Cusentino20202:
**(Cusentino)** Cusentino, Wood, and Thompson, J Phys Chem A, xxx, xxxxx, (2020)

View File

@ -291,6 +291,7 @@ accelerated styles exist.
* :doc:`smd/tri_surface <pair_smd_triangulated_surface>` -
* :doc:`smd/ulsph <pair_smd_ulsph>` -
* :doc:`smtbq <pair_smtbq>` -
* :doc:`mliap <pair_mliap>` - Multiple styles of machine-learning potential
* :doc:`snap <pair_snap>` - SNAP quantum-accurate potential
* :doc:`soft <pair_soft>` - Soft (cosine) potential
* :doc:`sph/heatconduction <pair_sph_heatconduction>` -

View File

@ -74,7 +74,7 @@ formulation of the V_ij term, where it contains an additional c0 term.
.. math::
V_{ij} & = f_C(r_{ij}) \left[ f_R(r_{ij}) + b_{ij} f_A(r_{ij}) + c_0 \right]
V_{ij} = f_C(r_{ij}) \left[ f_R(r_{ij}) + b_{ij} f_A(r_{ij}) + c_0 \right]
The modified cutoff function :math:`f_C` proposed by :ref:`(Murty) <Murty>` and
having a continuous second-order differential is employed. The

View File

@ -49,6 +49,15 @@ new units. And you must correctly convert all output from the new
units to the old units when comparing to the original results. That
is often not simple to do.
Potential or table files may have a ``UNITS:`` tag included in the
first line indicating the unit style those files were created for.
If the tag exists, its value will be compared to the chosen unit style
and LAMMPS will stop with an error message if there is a mismatch.
In some select cases and for specific combinations of unit styles,
LAMMPS is capable of automatically converting potential parameters
from a file. In those cases, a warning message signaling that an
automatic conversion has happened is printed to the screen.
----------
For style *lj*\ , all quantities are unitless. Without loss of

View File

@ -487,6 +487,7 @@ Critchley
crossterm
Crowson
Crozier
Cryst
Crystallogr
Csanyi
csh
@ -510,6 +511,7 @@ CuH
cuFFT
Cummins
Curk
Cusentino
customIDs
cutbond
cuthi
@ -1758,6 +1760,7 @@ mem
memalign
MEMALIGN
membered
memcheck
Mendelev
mer
Meremianin
@ -1824,6 +1827,7 @@ Mj
mK
mkdir
mkv
mliap
mlparks
Mniszewski
mnt
@ -1993,6 +1997,7 @@ Neel
Neelov
Negre
nelem
nelems
Nelement
Nelements
nemd
@ -3296,6 +3301,7 @@ xsu
xtc
xu
Xu
xxxxx
xy
xyz
xz

View File

@ -88,6 +88,7 @@ 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
mliap: examples for using several bundled MLIAP potentials
mscg: parameterize a multi-scale coarse-graining (MSCG) model
msst: MSST shock dynamics
nb3b: use of nonbonded 3-body harmonic pair style

View File

@ -1,66 +0,0 @@
# Tersoff parameters for various elements and mixtures
# multiple entries can be added to this file, LAMMPS reads the ones it needs
# these entries are in LAMMPS "metal" units:
# A,B = eV; lambda1,lambda2,lambda3 = 1/Angstroms; R,D = Angstroms
# other quantities are unitless
# Aidan Thompson (athomps at sandia.gov) takes full blame for this
# file. It specifies various potentials published by J. Tersoff for
# silicon, carbon and germanium. Since Tersoff published several
# different silicon potentials, I refer to them using atom types
# Si(B), Si(C) and Si(D). The last two are almost almost identical but
# refer to two different publications. These names should be used in
# the LAMMPS command when the file is invoked. For example:
# pair_coeff * * SiCGe.tersoff Si(B). The Si(D), C and Ge potentials
# can be used pure silicon, pure carbon, pure germanium, binary SiC,
# and binary SiGe, but not binary GeC or ternary SiGeC. LAMMPS will
# generate an error if this file is used with any combination
# involving C and Ge, since there are no entries for the GeC
# interactions (Tersoff did not publish parameters for this
# cross-interaction.)
# format of a single entry (one or more lines):
# element 1, element 2, element 3,
# m, gamma, lambda3, c, d, costheta0, n, beta, lambda2, B, R, D, lambda1, A
# The original Tersoff potential for Silicon, Si(B)
# J. Tersoff, PRB, 37, 6991 (1988)
Si(B) Si(B) Si(B) 3.0 1.0 1.3258 4.8381 2.0417 0.0000 22.956
0.33675 1.3258 95.373 3.0 0.2 3.2394 3264.7
# The later Tersoff potential for Silicon, Si(C)
# J. Tersoff, PRB, 38, 9902 (1988)
Si(C) Si(C) Si(C) 3.0 1.0 1.7322 1.0039e5 16.218 -0.59826 0.78734
1.0999e-6 1.7322 471.18 2.85 0.15 2.4799 1830.8
# The later Tersoff potential for Carbon, Silicon, and Germanium
# J. Tersoff, PRB, 39, 5566 (1989) + errata (PRB 41, 3248)
# The Si and C parameters are very close to those in SiC.tersoff
C C C 3.0 1.0 0.0 3.8049e4 4.3484 -0.57058 0.72751 1.5724e-7 2.2119 346.74 1.95 0.15 3.4879 1393.6
Si(D) Si(D) Si(D) 3.0 1.0 0.0 1.0039e5 16.217 -0.59825 0.78734 1.1000e-6 1.7322 471.18 2.85 0.15 2.4799 1830.8
Ge Ge Ge 3.0 1.0 0.0 1.0643e5 15.652 -0.43884 0.75627 9.0166e-7 1.7047 419.23 2.95 0.15 2.4451 1769.0
C Si(D) Si(D) 3.0 1.0 0.0 3.8049e4 4.3484 -0.57058 0.72751 1.5724e-7 1.97205 395.1451 2.3573 0.1527 2.9839 1597.3111
C Si(D) C 3.0 1.0 0.0 3.8049e4 4.3484 -0.57058 0.72751 0.0 0.0 0.0 1.95 0.15 0.0 0.0
C C Si(D) 3.0 1.0 0.0 3.8049e4 4.3484 -0.57058 0.72751 0.0 0.0 0.0 2.3573 0.1527 0.0 0.0
Si(D) C C 3.0 1.0 0.0 1.0039e5 16.217 -0.59825 0.78734 1.1000e-6 1.97205 395.1451 2.3573 0.1527 2.9839 1597.3111
Si(D) Si(D) C 3.0 1.0 0.0 1.0039e5 16.217 -0.59825 0.78734 0.0 0.0 0.0 2.3573 0.1527 0.0 0.0
Si(D) C Si(D) 3.0 1.0 0.0 1.0039e5 16.217 -0.59825 0.78734 0.0 0.0 0.0 2.85 0.15 0.0 0.0
Si(D) Ge Ge 3.0 1.0 0.0 1.0039e5 16.217 -0.59825 0.78734 1.1000e-6 1.71845 444.7177 2.8996 0.1500 2.4625 1799.6347
Si(D) Si(D) Ge 3.0 1.0 0.0 1.0039e5 16.217 -0.59825 0.78734 0.0 0.0 0.0 2.8996 0.1500 0.0 0.0
Si(D) Ge Si(D) 3.0 1.0 0.0 1.0039e5 16.217 -0.59825 0.78734 0.0 0.0 0.0 2.85 0.15 0.0 0.0
Ge Si(D) Si(D) 3.0 1.0 0.0 1.0643e5 15.652 -0.43884 0.75627 9.0166e-7 1.71845 444.7177 2.8996 0.1500 2.4625 1799.6347
Ge Si(D) Ge 3.0 1.0 0.0 1.0643e5 15.652 -0.43884 0.75627 0.0 0.0 0.0 2.95 0.15 0.0 0.0
Ge Ge Si(D) 3.0 1.0 0.0 1.0643e5 15.652 -0.43884 0.75627 0.0 0.0 0.0 2.8996 0.1500 0.0 0.0
# Optimized Tersoff for Carbon: Lindsay and Broido PRB 81, 205441 (2010)
# element 1, element 2, element 3,
# m, gamma, lambda3, c, d, costheta0, n, beta, lambda2, B, R, D, lambda1, A
C(O) C(O) C(O) 3.0 1.0 0.0 3.8049e4 4.3484 -0.930 0.72751 1.5724e-7 2.2119 430.0 1.95 0.15 3.4879 1393.6

View File

@ -0,0 +1 @@
../../../../../potentials/SiCGe.tersoff

View File

@ -16,4 +16,4 @@ mass ${Si} 28.08550
###########################
pair_style tersoff
pair_coeff * * Si.opt.tersoff Si(D)
pair_coeff * * SiCGe.tersoff Si(D)

View File

@ -1,192 +1,192 @@
5409.83472486 3.05075234 0.00000214
-1277.48270695 -863.24917964 -862.95613831
-193.14095266 0.11071645 0.00000015
-1277.48270619 -863.24917934 862.95613793
-193.17613831 0.34066975 -0.00000031
-1276.01088244 861.54715125 -861.62537402
83.46959051 -0.09801326 0.00000000
-1276.01088167 861.54715064 861.62537387
3.05073556 5409.83419867 0.00000137
-863.13224993 -1277.34160622 -862.92133430
0.12865796 -193.14095472 -0.00000023
-863.13224825 -1277.34160485 862.92133392
-0.23661028 83.46934214 -0.00000046
861.66402909 -1276.15172701 861.66024333
-0.00634065 -193.17585981 -0.00000015
861.66402909 -1276.15172686 -861.66024394
0.00000031 0.00000031 5410.11037330
-862.89766079 -862.97973912 -1277.71823542
0.00000000 -0.00000008 83.84059083
862.89766018 862.97973851 -1277.71823557
0.00000015 0.00000015 -193.17558390
-861.60900269 861.52691291 -1276.08157137
-0.00000015 -0.00000031 -193.17573821
861.60900330 -861.52691284 -1276.08157236
-1277.48271824 -863.13225435 -862.89768596
5409.83567916 3.04882502 2.82007861
-1277.34161080 -863.24919475 862.97975804
-193.14089260 0.11950100 0.11994134
-1277.52243157 863.24943259 -863.11331046
-193.17597070 0.16713301 -0.02106496
-1274.64156872 859.96385388 860.17328202
83.46945758 -0.16730525 -0.06100253
-863.24919444 -1277.34161103 -862.97975804
3.04882666 5409.83567944 -2.82007731
-863.13225496 -1277.48271916 862.89768688
0.11950094 -193.14089255 -0.11994043
863.24943320 -1277.52243118 863.11331076
-0.16730522 83.46945778 0.06100314
859.96385365 -1274.64156819 -860.17328225
0.16713979 -193.17596607 0.02106008
-862.95611199 -862.92132598 -1277.71824411
2.82004085 -2.82004013 5410.11000835
862.92132743 862.95611344 -1277.71824587
-0.11994722 0.11994786 83.84083834
-862.88110757 862.88110699 -1277.34764097
0.02099713 0.06108924 -193.17561785
860.25587487 -860.25587502 -1274.81548840
-0.06108897 -0.02099687 -193.17561808
-193.14095465 0.12865765 0.00000015
-1277.34160508 -863.13224794 862.92133361
5409.83419867 3.05073968 0.00000092
-1277.34160584 -863.13224924 -862.92133483
83.46934214 -0.23660998 -0.00000076
-1276.15172724 861.66402917 861.66024325
-193.17585988 -0.00634042 -0.00000031
-1276.15172694 861.66402940 -861.66024325
0.11071645 -193.14095243 0.00000046
-863.24917949 -1277.48270718 862.95613831
3.05075524 5409.83472478 -0.00000046
-863.24918117 -1277.48270825 -862.95613923
0.34066922 -193.17613823 0.00000046
861.54715094 -1276.01088228 -861.62537295
-0.09801303 83.46959035 0.00000015
861.54713538 -1276.01088145 861.62537387
-0.00000046 -0.00000023 83.84059068
862.97973867 862.89766010 -1277.71823633
-0.00000214 -0.00000053 5410.11037574
-862.97973943 -862.89766079 -1277.71823633
0.00000015 0.00000008 -193.17558374
861.52691291 -861.60900269 -1276.08157198
-0.00000015 -0.00000015 -193.17573814
-861.52691368 861.60900261 -1276.08157243
-1277.48271855 -863.13225405 -862.89768612
-193.14095469 0.12865732 0.00000061
-1277.48271786 -863.13225450 862.89768520
-193.14089232 0.11950085 -0.11994115
-1277.34161255 -863.24919673 -862.97975957
5409.83568051 3.04882517 -2.82007644
-1277.52243110 863.24943259 863.11330990
83.46945732 -0.16730494 0.06100319
-1274.64156796 859.96385342 -860.17328103
-193.17597041 0.16713331 0.02106477
-863.24919482 -1277.34161057 862.97975774
0.11950077 -193.14089270 0.11994160
-863.13225473 -1277.48271839 -862.89768673
3.04882502 5409.83568081 2.82007903
863.24943084 -1277.52242966 -863.11330868
0.16713324 -193.17597064 -0.02106522
859.96385510 -1274.64156926 860.17328255
-0.16730411 83.46945641 -0.06100350
862.95611161 862.92132537 -1277.71824365
0.11994725 -0.11994740 83.84083859
-862.92132606 -862.95611207 -1277.71824548
-2.82003936 2.82004013 5410.11000806
862.88110509 -862.88110547 -1277.34764015
0.06108893 0.02099703 -193.17561792
-860.25587388 860.25587441 -1274.81548916
-0.02099726 -0.06108878 -193.17561777
-193.17613465 -0.23660693 0.00000015
-1277.52241409 863.24943328 -862.88111478
83.46934549 0.34066334 -0.00000015
-1277.52241425 863.24943335 862.88111508
5404.58897235 -9.71806749 0.00000015
-1273.31333522 -858.38273960 -858.96245956
-193.21062369 -0.11938368 0.00000000
-1273.31333598 -858.38273967 858.96245926
0.34066342 83.46934572 0.00000015
863.24943335 -1277.52241402 862.88111478
-0.23660723 -193.17613480 -0.00000046
863.24943320 -1277.52241425 -862.88111432
-9.71806582 5404.58897135 -0.00000183
-858.38273891 -1273.31333552 -858.96245926
-0.11938338 -193.21062369 0.00000000
-858.38273937 -1273.31333598 858.96245987
-0.00000031 -0.00000008 -193.17559595
-863.11328229 863.11328297 -1277.34763999
0.00000000 -0.00000015 -193.17559595
863.11328305 -863.11328282 -1277.34763984
0.00000122 -0.00000259 5404.30470550
-858.80486827 -858.80486866 -1273.17865241
-0.00000031 0.00000000 83.09905870
858.80486827 858.80486812 -1273.17865272
-193.17613450 -0.23660702 0.00000031
-1276.01089136 861.66402482 -861.60900483
-193.17596134 -0.16730494 0.02099535
-1276.15175745 861.54714988 861.52691337
83.46947097 0.16714109 0.06108436
-1273.31334651 -858.38273311 -858.80488185
5404.58493608 -3.04507687 -2.81778617
-1276.19187193 -861.66399965 861.74280750
-193.21058304 -0.11920641 -0.12012575
861.54714972 -1276.15175730 861.52691337
0.16714140 83.46947120 0.06108451
861.66402345 -1276.01089022 -861.60900330
-0.16730487 -193.17596164 0.02099489
-858.38273281 -1273.31334681 -858.80488063
-3.04507603 5404.58493554 -2.81778617
-861.66400079 -1276.19187270 861.74280887
-0.11920511 -193.21058281 -0.12012498
-861.62536929 861.66025668 -1276.08157121
-0.02106026 0.06099877 -193.17561197
861.66025752 -861.62537051 -1276.08157274
0.06099923 -0.02106049 -193.17561227
-858.96244980 -858.96244965 -1273.17866523
-2.81780608 -2.81780615 5404.30474272
861.58531232 861.58531248 -1275.71087663
0.12013467 0.12013460 83.09915619
83.46958166 -0.00634218 -0.00000023
-1274.64157002 859.96383191 860.25587098
-193.17585332 -0.09802844 0.00000023
-1274.64157155 859.96383290 -860.25587243
-193.21062064 -0.11939070 -0.00000008
-1276.19189573 -861.66398638 861.58531118
5404.58377546 3.62403097 0.00000015
-1276.19189558 -861.66398615 -861.58531103
-0.09802859 -193.17585355 -0.00000015
859.96383206 -1274.64156979 -860.25587113
-0.00634187 83.46958204 -0.00000008
859.96383282 -1274.64157132 860.25587212
-0.11939055 -193.21062041 0.00000000
-861.66398576 -1276.19189528 861.58531087
3.62402982 5404.58377698 -0.00000076
-861.66398927 -1276.19189772 -861.58531331
0.00000000 0.00000000 -193.17573654
860.17327676 -860.17327637 -1274.81551212
0.00000031 0.00000023 -193.17573676
-860.17327615 860.17327645 -1274.81551258
0.00000000 0.00000015 83.09907327
861.74281299 861.74281299 -1275.71086763
-0.00000046 -0.00000015 5404.30514861
-861.74281406 -861.74281421 -1275.71086938
83.46958227 -0.00634221 -0.00000026
-1276.01088968 861.66402284 861.60900330
83.46947136 0.16714109 -0.06108436
-1276.15175722 861.54714957 -861.52691391
-193.17596141 -0.16730510 -0.02099527
-1273.31334666 -858.38273281 858.80488124
-193.21058304 -0.11920641 0.12012636
-1276.19187285 -861.66400087 -861.74280773
5404.58493638 -3.04507565 2.81778602
3.05073556 5409.83419867 0.00000137
-863.24919414 -1277.34161118 -862.97975804
0.11071644 -193.14095221 0.00000015
-863.24919482 -1277.34161057 862.97975774
0.34066372 83.46934579 0.00000015
861.54714972 -1276.15175730 861.52691337
-0.09802844 -193.17585342 -0.00000005
861.54715133 -1276.15175913 -861.52691490
-0.16730502 -193.17596118 -0.02099497
861.66402314 -1276.01088976 861.60900383
0.16714125 83.46947151 -0.06108497
-858.38273296 -1273.31334681 858.80488139
-0.11920686 -193.21058311 0.12012605
-861.66400079 -1276.19187255 -861.74280811
-3.04506703 5404.58493432 2.81779319
0.00000031 0.00000031 5410.11037330
-862.95611222 -862.92132598 -1277.71824426
-0.00000027 -0.00000023 83.84059068
862.95611161 862.92132537 -1277.71824365
-0.00000015 0.00000006 -193.17559671
-861.62536929 861.66025668 -1276.08157121
0.00000031 -0.00000000 -193.17573662
861.62536952 -861.66025637 -1276.08157175
-1277.48270695 -863.24917964 -862.95613831
5409.83567791 3.04882503 2.82007909
-1277.34160500 -863.13224794 862.92133361
-193.14089232 0.11950085 -0.11994115
-1277.52241409 863.24943335 -862.88111478
-193.17596134 -0.16730494 0.02099535
-1274.64156987 859.96383191 860.25587098
83.46947136 0.16714109 -0.06108436
-863.13224993 -1277.34160622 -862.92133430
3.04882664 5409.83567981 -2.82007772
-863.24917934 -1277.48270718 862.95613862
0.11950077 -193.14089270 0.11994160
863.24943366 -1277.52241409 862.88111478
0.16714140 83.46947120 0.06108451
859.96383191 -1274.64156979 -860.25587113
-0.16730502 -193.17596118 -0.02099497
-862.89766079 -862.97973912 -1277.71823542
2.82004053 -2.82003977 5410.11000766
862.97973867 862.89766003 -1277.71823633
0.11994725 -0.11994740 83.84083859
-863.11328229 863.11328297 -1277.34763999
-0.02106026 0.06099877 -193.17561197
860.17327676 -860.17327637 -1274.81551212
-0.06099938 0.02106080 -193.17561235
-861.66025645 861.62536929 -1276.08157213
0.02106049 -0.06099862 -193.17561189
858.96245049 858.96245041 -1273.17866553
-0.12013444 -0.12013475 83.09915550
-193.14095266 0.11071661 0.00000023
-1277.34161164 -863.24919490 862.97975758
5409.83419895 3.05073908 0.00000031
-1277.34161248 -863.24919704 -862.97976018
83.46934641 0.34066377 0.00000031
-1276.15175798 861.54714988 861.52691307
-193.17585317 -0.09802854 0.00000018
-1276.15175745 861.54714957 -861.52691314
0.12865765 -193.14095472 0.00000000
-863.13225527 -1277.48271931 862.89768673
3.05075511 5409.83472469 -0.00000046
-863.13225489 -1277.48271839 -862.89768612
-0.23660723 -193.17613471 0.00000061
861.66402345 -1276.01089068 -861.60900391
-0.00634202 83.46958197 0.00000012
861.66402314 -1276.01088961 861.60900353
-0.00000015 -0.00000015 83.84059098
862.92132797 862.95611360 -1277.71824533
-0.00000145 -0.00000137 5410.11037498
-862.92132598 -862.95611222 -1277.71824426
-0.00000031 -0.00000009 -193.17559671
861.66025660 -861.62536929 -1276.08157182
0.00000015 0.00000014 -193.17573668
-861.66025615 861.62536929 -1276.08157190
-1277.48270619 -863.24917934 862.95613793
-193.14089264 0.11950070 0.11994149
-1277.34160589 -863.13224892 -862.92133438
5409.83568112 3.04882502 -2.82007598
-1277.52241409 863.24943313 862.88111386
83.46947128 0.16714155 0.06108420
-1274.64157216 859.96383297 -860.25587243
-193.17596164 -0.16730510 -0.02099535
-863.13224825 -1277.34160470 862.92133392
0.11950069 -193.14089248 -0.11994088
-863.24918118 -1277.48270824 -862.95613907
3.04882479 5409.83568081 2.82007857
863.24943366 -1277.52241409 -862.88111386
-0.16730494 -193.17596164 0.02099504
859.96383191 -1274.64157155 860.25587228
0.16714109 83.46947120 -0.06108481
862.89766018 862.97973836 -1277.71823542
-0.11994717 0.11994762 83.84083846
-862.97973940 -862.89766100 -1277.71823603
-2.82004089 2.82004165 5410.11001111
863.11328534 -863.11328473 -1277.34764213
0.06099900 -0.02106019 -193.17561197
-860.17327706 860.17327752 -1274.81551319
0.02106049 -0.06099877 -193.17561212
-193.17613831 0.34066975 0.00000000
-1277.52243217 863.24943252 -863.11331043
83.46934255 -0.23660983 0.00000046
-1277.52243126 863.24943229 863.11330975
5404.58897296 -9.71806756 0.00000046
-1273.31334689 -858.38273326 -858.80488185
-193.21062125 -0.11939087 -0.00000018
-1273.31334666 -858.38273265 858.80488124
-0.23661028 83.46934221 -0.00000038
863.24943259 -1277.52243133 863.11331043
0.34066924 -193.17613846 -0.00000015
863.24943168 -1277.52243072 -863.11330883
-9.71806704 5404.58897205 -0.00000107
-858.38273265 -1273.31334697 -858.80488063
-0.11939101 -193.21062043 0.00000006
-858.38273296 -1273.31334681 858.80488139
0.00000015 0.00000000 -193.17558413
-862.88110730 862.88110699 -1277.34764060
-0.00000001 -0.00000001 -193.17558374
862.88110539 -862.88110516 -1277.34764030
0.00000122 -0.00000264 5404.30470473
-858.96244965 -858.96244934 -1273.17866523
-0.00000046 0.00000006 83.09907322
858.96245026 858.96245041 -1273.17866553
-1276.01088335 861.54715186 -861.62537494
-193.17596632 0.16713991 -0.02106865
-1276.15172701 861.66401376 861.66024356
83.46945641 -0.16730418 0.06100182
-1273.31333507 -858.38273911 -858.96245926
5404.58493280 -3.04507046 -2.81778113
-1276.19189558 -861.66398654 861.58531085
-193.21058250 -0.11920503 0.12012704
861.66401292 -1276.15172617 861.66024257
-0.16730418 83.46945627 0.06100192
861.54715110 -1276.01088167 -861.62537387
0.16713972 -193.17596591 -0.02106965
-858.38273891 -1273.31333542 -858.96245910
-3.04506741 5404.58493142 -2.81778205
-861.66398683 -1276.19189578 861.58531200
-0.11920541 -193.21058250 0.12012674
-861.60900269 861.52691291 -1276.08157152
0.02099737 0.06108917 -193.17561785
861.52691246 -861.60900299 -1276.08157243
0.06108909 0.02099718 -193.17561746
-858.80486827 -858.80486867 -1273.17865256
-2.81780745 -2.81780722 5404.30474364
861.74281375 861.74281365 -1275.71086885
-0.12013460 -0.12013475 83.09915550
83.46959035 -0.09801326 0.00000000
-1274.64156874 859.96385402 860.17328225
-193.17585994 -0.00634034 0.00000031
-1274.64156789 859.96385357 -860.17328072
-193.21062369 -0.11938345 0.00000015
-1276.19187300 -861.66400056 861.74280857
5404.58377637 3.62403189 -0.00000071
-1276.19187285 -861.66400087 -861.74280780
-0.00634065 -193.17585981 -0.00000015
859.96385345 -1274.64156845 -860.17328227
-0.09801307 83.46959066 0.00000092
859.96385342 -1274.64156728 860.17328103
-0.11938399 -193.21062370 0.00000031
-861.66399988 -1276.19187163 861.74280780
3.62403013 5404.58377402 0.00000142
-861.66400079 -1276.19187255 -861.74280803
-0.00000031 -0.00000038 -193.17573821
860.25587448 -860.25587441 -1274.81548871
0.00000000 -0.00000026 -193.17573875
-860.25587388 860.25587456 -1274.81548916
0.00000015 -0.00000009 83.09905855
861.58531164 861.58531156 -1275.71087571
0.00000046 0.00000089 5404.30514766
-861.58531232 -861.58531217 -1275.71087655
2.81780737 2.81780753 5404.30474547
-1276.01088198 861.54713523 861.62537356
83.46945674 -0.16730402 -0.06100344
-1276.15172688 861.66402939 -861.66024402
-193.17596584 0.16713972 0.02106034
-1273.31333552 -858.38273940 858.96245956
-193.21058227 -0.11920503 -0.12012498
-1276.19189573 -861.66398605 -861.58531085
5404.58493188 -3.04506924 2.81779059
861.66402925 -1276.15172686 -861.66024394
0.16713982 -193.17596610 0.02106041
861.54713537 -1276.01088130 861.62537448
-0.16730426 83.46945625 -0.06100350
-858.38273967 -1273.31333570 858.96245987
-0.11920511 -193.21058281 -0.12012514
-861.66398958 -1276.19189780 -861.58531314
-3.04506687 5404.58493417 2.81779303
861.60900299 -861.52691253 -1276.08157236
-0.06108885 -0.02099714 -193.17561830
-861.52691343 861.60900260 -1276.08157198
-0.02099726 -0.06108848 -193.17561792
858.80486782 858.80486829 -1273.17865256
0.12013467 0.12013460 83.09915604
-861.74281406 -861.74281426 -1275.71086942
2.81780737 2.81780737 5404.30474524

View File

@ -1,7 +1,7 @@
LAMMPS (16 Jul 2018)
LAMMPS (15 Jun 2020)
Reading data file ...
orthogonal box = (0 0 0) to (5.431 5.431 5.431)
1 by 2 by 2 MPI processor grid
orthogonal box = (0.0 0.0 0.0) to (5.431 5.431 5.431)
1 by 1 by 1 MPI processor grid
reading atoms ...
8 atoms
Finding 1-2 1-3 1-4 neighbors ...
@ -11,6 +11,9 @@ Finding 1-2 1-3 1-4 neighbors ...
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 4.2e-05 secs
read_data CPU = 0.002 secs
Reading potential file ../../../../../potentials/SiCGe.tersoff with DATE: 2009-03-18
Neighbor list info ...
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
@ -23,36 +26,40 @@ Neighbor list info ...
pair build: full/bin
stencil: full/bin/3d
bin: standard
Calculating Dynamical Matrix...
Dynamical Matrix calculation took 0.001183 seconds
Calculating Dynamical Matrix ...
Total # of atoms = 8
Atoms in group = 8
Total dynamical matrix elements = 576
10% 20% 30% 50% 60% 70% 80%
Finished Calculating Dynamical Matrix
Loop time of 1.22396e+06 on 4 procs for 0 steps with 8 atoms
Loop time of 0.000775099 on 1 procs for 48 steps with 8 atoms
0.0% CPU use with 4 MPI tasks x no OpenMP threads
Performance: 5350.544 ns/day, 0.004 hours/ns, 61927.589 timesteps/s
91.3% 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.00016781 | 0.00041345 | 0.00051464 | 0.0 | 0.00
Bond | 1.9255e-06 | 2.1775e-06 | 2.4787e-06 | 0.0 | 0.00
Pair | 0.00074148 | 0.00074148 | 0.00074148 | 0.0 | 95.66
Bond | 3.8147e-06 | 3.8147e-06 | 3.8147e-06 | 0.0 | 0.49
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.00056143 | 0.00066602 | 0.00090865 | 0.0 | 0.00
Comm | 7.8678e-06 | 7.8678e-06 | 7.8678e-06 | 0.0 | 1.02
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 1.224e+06 | | |100.00
Modify | 9.5367e-07 | 9.5367e-07 | 9.5367e-07 | 0.0 | 0.12
Other | | 2.098e-05 | | | 2.71
Nlocal: 2 ave 3 max 1 min
Histogram: 1 0 0 0 0 2 0 0 0 1
Nghost: 56 ave 57 max 55 min
Histogram: 1 0 0 0 0 2 0 0 0 1
Nlocal: 8 ave 8 max 8 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 86 ave 86 max 86 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 0 ave 0 max 0 min
Histogram: 4 0 0 0 0 0 0 0 0 0
FullNghs: 32 ave 48 max 16 min
Histogram: 1 0 0 0 0 2 0 0 0 1
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 128
Ave neighs/atom = 16
Ave special neighs/atom = 0
Neighbor list builds = 0
Neighbor list builds = 1
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -0,0 +1 @@
../../../../../potentials/SiCGe.tersoff

View File

@ -38,5 +38,5 @@ dynmat = dynmat.reshape((dynlen, dynlen))
eigvals, eigvecs = np.linalg.eig(dynmat)
# frequencies in THz
omegas = np.sqrt(np.abs(eigvals))
omegas = np.sqrt(np.abs(eigvals))/2/np.pi
print(omegas)

View File

@ -0,0 +1 @@
../Silicon/ff-silicon.lmp

View File

@ -0,0 +1,192 @@
5409.83472486 3.05075234 0.00000214
-1277.48271855 -863.13225405 -862.89768612
-193.14095469 0.12865732 0.00000061
-1277.48271786 -863.13225450 862.89768520
-193.17613450 -0.23660702 0.00000031
-1276.01089136 861.66402482 -861.60900483
83.46958227 -0.00634221 -0.00000026
-1276.01088968 861.66402284 861.60900330
3.05073556 5409.83419867 0.00000137
-863.24919414 -1277.34161118 -862.97975804
0.11071644 -193.14095221 0.00000015
-863.24919482 -1277.34161057 862.97975774
0.34066372 83.46934579 0.00000015
861.54714972 -1276.15175730 861.52691337
-0.09802844 -193.17585342 -0.00000005
861.54715133 -1276.15175913 -861.52691490
0.00000031 0.00000031 5410.11037330
-862.95611222 -862.92132598 -1277.71824426
-0.00000027 -0.00000023 83.84059068
862.95611161 862.92132537 -1277.71824365
-0.00000015 0.00000006 -193.17559671
-861.62536929 861.66025668 -1276.08157121
0.00000031 -0.00000000 -193.17573662
861.62536952 -861.66025637 -1276.08157175
-1277.48270695 -863.24917964 -862.95613831
5409.83567791 3.04882503 2.82007909
-1277.34160500 -863.13224794 862.92133361
-193.14089232 0.11950085 -0.11994115
-1277.52241409 863.24943335 -862.88111478
-193.17596134 -0.16730494 0.02099535
-1274.64156987 859.96383191 860.25587098
83.46947136 0.16714109 -0.06108436
-863.13224993 -1277.34160622 -862.92133430
3.04882664 5409.83567981 -2.82007772
-863.24917934 -1277.48270718 862.95613862
0.11950077 -193.14089270 0.11994160
863.24943366 -1277.52241409 862.88111478
0.16714140 83.46947120 0.06108451
859.96383191 -1274.64156979 -860.25587113
-0.16730502 -193.17596118 -0.02099497
-862.89766079 -862.97973912 -1277.71823542
2.82004053 -2.82003977 5410.11000766
862.97973867 862.89766003 -1277.71823633
0.11994725 -0.11994740 83.84083859
-863.11328229 863.11328297 -1277.34763999
-0.02106026 0.06099877 -193.17561197
860.17327676 -860.17327637 -1274.81551212
-0.06099938 0.02106080 -193.17561235
-193.14095266 0.11071661 0.00000023
-1277.34161164 -863.24919490 862.97975758
5409.83419895 3.05073908 0.00000031
-1277.34161248 -863.24919704 -862.97976018
83.46934641 0.34066377 0.00000031
-1276.15175798 861.54714988 861.52691307
-193.17585317 -0.09802854 0.00000018
-1276.15175745 861.54714957 -861.52691314
0.12865765 -193.14095472 0.00000000
-863.13225527 -1277.48271931 862.89768673
3.05075511 5409.83472469 -0.00000046
-863.13225489 -1277.48271839 -862.89768612
-0.23660723 -193.17613471 0.00000061
861.66402345 -1276.01089068 -861.60900391
-0.00634202 83.46958197 0.00000012
861.66402314 -1276.01088961 861.60900353
-0.00000015 -0.00000015 83.84059098
862.92132797 862.95611360 -1277.71824533
-0.00000145 -0.00000137 5410.11037498
-862.92132598 -862.95611222 -1277.71824426
-0.00000031 -0.00000009 -193.17559671
861.66025660 -861.62536929 -1276.08157182
0.00000015 0.00000014 -193.17573668
-861.66025615 861.62536929 -1276.08157190
-1277.48270619 -863.24917934 862.95613793
-193.14089264 0.11950070 0.11994149
-1277.34160589 -863.13224892 -862.92133438
5409.83568112 3.04882502 -2.82007598
-1277.52241409 863.24943313 862.88111386
83.46947128 0.16714155 0.06108420
-1274.64157216 859.96383297 -860.25587243
-193.17596164 -0.16730510 -0.02099535
-863.13224825 -1277.34160470 862.92133392
0.11950069 -193.14089248 -0.11994088
-863.24918118 -1277.48270824 -862.95613907
3.04882479 5409.83568081 2.82007857
863.24943366 -1277.52241409 -862.88111386
-0.16730494 -193.17596164 0.02099504
859.96383191 -1274.64157155 860.25587228
0.16714109 83.46947120 -0.06108481
862.89766018 862.97973836 -1277.71823542
-0.11994717 0.11994762 83.84083846
-862.97973940 -862.89766100 -1277.71823603
-2.82004089 2.82004165 5410.11001111
863.11328534 -863.11328473 -1277.34764213
0.06099900 -0.02106019 -193.17561197
-860.17327706 860.17327752 -1274.81551319
0.02106049 -0.06099877 -193.17561212
-193.17613831 0.34066975 0.00000000
-1277.52243217 863.24943252 -863.11331043
83.46934255 -0.23660983 0.00000046
-1277.52243126 863.24943229 863.11330975
5404.58897296 -9.71806756 0.00000046
-1273.31334689 -858.38273326 -858.80488185
-193.21062125 -0.11939087 -0.00000018
-1273.31334666 -858.38273265 858.80488124
-0.23661028 83.46934221 -0.00000038
863.24943259 -1277.52243133 863.11331043
0.34066924 -193.17613846 -0.00000015
863.24943168 -1277.52243072 -863.11330883
-9.71806704 5404.58897205 -0.00000107
-858.38273265 -1273.31334697 -858.80488063
-0.11939101 -193.21062043 0.00000006
-858.38273296 -1273.31334681 858.80488139
0.00000015 0.00000000 -193.17558413
-862.88110730 862.88110699 -1277.34764060
-0.00000001 -0.00000001 -193.17558374
862.88110539 -862.88110516 -1277.34764030
0.00000122 -0.00000264 5404.30470473
-858.96244965 -858.96244934 -1273.17866523
-0.00000046 0.00000006 83.09907322
858.96245026 858.96245041 -1273.17866553
-1276.01088335 861.54715186 -861.62537494
-193.17596632 0.16713991 -0.02106865
-1276.15172701 861.66401376 861.66024356
83.46945641 -0.16730418 0.06100182
-1273.31333507 -858.38273911 -858.96245926
5404.58493280 -3.04507046 -2.81778113
-1276.19189558 -861.66398654 861.58531085
-193.21058250 -0.11920503 0.12012704
861.66401292 -1276.15172617 861.66024257
-0.16730418 83.46945627 0.06100192
861.54715110 -1276.01088167 -861.62537387
0.16713972 -193.17596591 -0.02106965
-858.38273891 -1273.31333542 -858.96245910
-3.04506741 5404.58493142 -2.81778205
-861.66398683 -1276.19189578 861.58531200
-0.11920541 -193.21058250 0.12012674
-861.60900269 861.52691291 -1276.08157152
0.02099737 0.06108917 -193.17561785
861.52691246 -861.60900299 -1276.08157243
0.06108909 0.02099718 -193.17561746
-858.80486827 -858.80486867 -1273.17865256
-2.81780745 -2.81780722 5404.30474364
861.74281375 861.74281365 -1275.71086885
-0.12013460 -0.12013475 83.09915550
83.46959035 -0.09801326 0.00000000
-1274.64156874 859.96385402 860.17328225
-193.17585994 -0.00634034 0.00000031
-1274.64156789 859.96385357 -860.17328072
-193.21062369 -0.11938345 0.00000015
-1276.19187300 -861.66400056 861.74280857
5404.58377637 3.62403189 -0.00000071
-1276.19187285 -861.66400087 -861.74280780
-0.00634065 -193.17585981 -0.00000015
859.96385345 -1274.64156845 -860.17328227
-0.09801307 83.46959066 0.00000092
859.96385342 -1274.64156728 860.17328103
-0.11938399 -193.21062370 0.00000031
-861.66399988 -1276.19187163 861.74280780
3.62403013 5404.58377402 0.00000142
-861.66400079 -1276.19187255 -861.74280803
-0.00000031 -0.00000038 -193.17573821
860.25587448 -860.25587441 -1274.81548871
0.00000000 -0.00000026 -193.17573875
-860.25587388 860.25587456 -1274.81548916
0.00000015 -0.00000009 83.09905855
861.58531164 861.58531156 -1275.71087571
0.00000046 0.00000089 5404.30514766
-861.58531232 -861.58531217 -1275.71087655
-1276.01088198 861.54713523 861.62537356
83.46945674 -0.16730402 -0.06100344
-1276.15172688 861.66402939 -861.66024402
-193.17596584 0.16713972 0.02106034
-1273.31333552 -858.38273940 858.96245956
-193.21058227 -0.11920503 -0.12012498
-1276.19189573 -861.66398605 -861.58531085
5404.58493188 -3.04506924 2.81779059
861.66402925 -1276.15172686 -861.66024394
0.16713982 -193.17596610 0.02106041
861.54713537 -1276.01088130 861.62537448
-0.16730426 83.46945625 -0.06100350
-858.38273967 -1273.31333570 858.96245987
-0.11920511 -193.21058281 -0.12012514
-861.66398958 -1276.19189780 -861.58531314
-3.04506687 5404.58493417 2.81779303
861.60900299 -861.52691253 -1276.08157236
-0.06108885 -0.02099714 -193.17561830
-861.52691343 861.60900260 -1276.08157198
-0.02099726 -0.06108848 -193.17561792
858.80486782 858.80486829 -1273.17865256
0.12013467 0.12013460 83.09915604
-861.74281406 -861.74281426 -1275.71086942
2.81780737 2.81780737 5404.30474524

View File

@ -0,0 +1,71 @@
LAMMPS (15 Jun 2020)
Reading data file ...
orthogonal box = (0.0 0.0 0.0) to (5.431 5.431 5.431)
1 by 1 by 1 MPI processor grid
reading atoms ...
8 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 4.2e-05 secs
read_data CPU = 0.001 secs
Reading potential file ../../../../../potentials/SiCGe.tersoff with DATE: 2009-03-18
Neighbor list info ...
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 4
ghost atom cutoff = 4
binsize = 2, bins = 3 3 3
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair tersoff, perpetual
attributes: full, newton on
pair build: full/bin
stencil: full/bin/3d
bin: standard
Calculating Dynamical Matrix ...
Total # of atoms = 8
Atoms in group = 8
Total dynamical matrix elements = 576
10% 20% 30% 50% 60% 70% 80%[3.34264870e-05 6.09176101e-05 1.72068597e-04 1.60807822e+01
1.60807027e+01 1.60806903e+01 1.48964054e+01 1.49012648e+01
1.49129598e+01 1.49081641e+01 1.48999471e+01 1.49095175e+01
1.21983946e+01 1.21957091e+01 1.22010862e+01 1.22037817e+01
1.22037910e+01 1.22037868e+01 6.89648276e+00 6.89524412e+00
6.89619622e+00 6.89553366e+00 6.89615471e+00 6.89557491e+00]
Finished Calculating Dynamical Matrix
Loop time of 0.000677109 on 1 procs for 48 steps with 8 atoms
Performance: 6124.865 ns/day, 0.004 hours/ns, 70889.645 timesteps/s
91.3% 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.00064349 | 0.00064349 | 0.00064349 | 0.0 | 95.04
Bond | 9.5367e-07 | 9.5367e-07 | 9.5367e-07 | 0.0 | 0.14
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 1.1683e-05 | 1.1683e-05 | 1.1683e-05 | 0.0 | 1.73
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 9.5367e-07 | 9.5367e-07 | 9.5367e-07 | 0.0 | 0.14
Other | | 2.003e-05 | | | 2.96
Nlocal: 8 ave 8 max 8 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 86 ave 86 max 86 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 0 ave 0 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 128
Ave neighs/atom = 16
Ave special neighs/atom = 0
Neighbor list builds = 1
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -0,0 +1 @@
../Silicon/silicon_input_file.lmp

View File

@ -1,15 +1,15 @@
#This script implements the BKS pair potential for various silicon dioxide compounds. Inner part is fixed with a harmonic potential. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style hybrid/overlay buck/coul/long ${cut_off} table linear 39901
pair_coeff 1 1 buck/coul/long 0.0 1.0 0.0 #No interactions between Si atoms
pair_coeff 1 2 buck/coul/long 18003.757200 0.205205 133.538100
pair_coeff 2 2 buck/coul/long 1388.773000 0.362319 175.000000 #BKS interaction in PRL 64 1955 (1990)
pair_modify shift yes
pair_coeff 1 2 table potential_SiO2.TPF Si-O ${cut_off}
pair_coeff 2 2 table potential_SiO2.TPF O-O ${cut_off} #See the potential file for more information
kspace_style pppm 1.0e-4
pair_style hybrid/overlay buck/coul/long ${cut_off} table linear 39901
pair_coeff 1 1 buck/coul/long 0.0 1.0 0.0 #No interactions between Si atoms
pair_coeff 1 2 buck/coul/long 18003.757200 0.205205 133.538100
pair_coeff 2 2 buck/coul/long 1388.773000 0.362319 175.000000 #BKS interaction in PRL 64 1955 (1990)
pair_modify shift yes
pair_coeff 1 2 table potential_SiO2.TPF Si-O ${cut_off}
pair_coeff 2 2 table potential_SiO2.TPF O-O ${cut_off} #See the potential file for more information
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000

View File

@ -1,55 +0,0 @@
## This script first uses fix qtb to equilibrate alpha quartz structure to an initial state with quantum nuclear correction and then simulate shock induced phase transition through the quantum thermal bath multi-scale shock technique
variable x_rep equal 2 #plot is made with x_rep = 8 #x-direction replication number
variable y_rep equal 1 #plot is made with y_rep = 5 #y-direction replication number
variable z_rep equal 4 #plot is made with z_rep = 15 #z-direction replication number
variable cut_off equal 10.0 #Cut-off distance for the Buckingham term (Angstrom in metal units)
variable pressure equal 1.03125 #Initial state pressure (bar in metal units)
variable temperature equal 300.0 #Initial state quantum temperature (K in metal units)
variable delta_t equal 1.0e-3 #MD timestep length (ps in metal units)
variable damp_qtb equal 1 #1/gamma where gamma is the friction coefficient in quantum thermal bath (ps in metal units)
variable v_msst equal 78.0 #Shock velocity (Angstrom/ps in metal units)
variable q_msst equal 40.0 #Box mass-like parameter in the MSST (mass^2/length^4, where mass=grams/mole and length=Angstrom in metal units)
variable tscale_msst equal 0.05 #Temperature reduction parameter in the MSST (unitless)
variable eta_qbmsst equal 1.0 #Coupling constant between the shock and the quantum thermal bath (unitless constant)
## This part uses fix qtb to prepare alpha-quartz with quantum nuclear correction of the initial state
include alpha_quartz_qtb.mod
## This part demonstrates how to retart fix qbmsst during any stage of the shock simulation.
## PPPM may break down when compression ratio becomes extremely large. One can always use this restart technique to resume the shock simulation.
#Compression restart 1
reset_timestep 0
#Beta is the number of time steps between each update of the quantum bath temperature. Setting a larger beta can reduce thermal flactuations.
fix shock all qbmsst z ${v_msst} q ${q_msst} tscale ${tscale_msst} damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix_modify shock energy yes
variable dhug equal f_shock[1]
variable dray equal f_shock[2]
variable lgr_vel equal f_shock[3]
variable lgr_pos equal f_shock[4]
variable T_qm equal f_shock[5] #Temperature with quantum nuclear correction
thermo_style custom step v_T_qm press etotal vol lx ly lz pzz v_dhug v_dray v_lgr_vel v_lgr_pos
thermo 100
timestep ${delta_t}
run 1000
write_restart restart.1000
#Compression restart 2
#Read restart file and load potential again
clear
read_restart restart.1000
include alpha_quartz_potential.mod
#Use the same fix id and add no tscale if the system is already compressed
fix shock all qbmsst z ${v_msst} q ${q_msst} tscale 0.0 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix_modify shock energy yes
variable dhug equal f_shock[1]
variable dray equal f_shock[2]
variable lgr_vel equal f_shock[3]
variable lgr_pos equal f_shock[4]
variable T_qm equal f_shock[5] #Temperature with quantum nuclear correction
thermo_style custom step v_T_qm press etotal vol lx ly lz pzz v_dhug v_dray v_lgr_vel v_lgr_pos
thermo 100
timestep ${delta_t}
restart 1000 restart
run 10000 #10 ps

View File

@ -3,60 +3,60 @@
## This part defines units, alpha-quartz crystal, and atomic information
#General
units metal
dimension 3
boundary p p p
atom_style charge
units metal
dimension 3
boundary p p p
atom_style charge
#Lattice
lattice custom 1.0 &
a1 4.916000 0.000000 0.000000 &
a2 -2.45800 4.257381 0.000000 &
a3 0.000000 0.000000 5.405400 &
&
basis 0.469700 0.000000 0.000000 &
basis 0.000000 0.469700 0.666667 &
basis 0.530300 0.530300 0.333333 &
&
basis 0.413500 0.266900 0.119100 &
basis 0.266900 0.413500 0.547567 &
basis 0.733100 0.146600 0.785767 &
basis 0.586500 0.853400 0.214233 &
basis 0.853400 0.586500 0.452433 &
basis 0.146600 0.733100 0.880900 #American Mineralogist 65 920 1980 (Space Group 154)
lattice custom 1.0 &
a1 4.916000 0.000000 0.000000 &
a2 -2.45800 4.257381 0.000000 &
a3 0.000000 0.000000 5.405400 &
&
basis 0.469700 0.000000 0.000000 &
basis 0.000000 0.469700 0.666667 &
basis 0.530300 0.530300 0.333333 &
&
basis 0.413500 0.266900 0.119100 &
basis 0.266900 0.413500 0.547567 &
basis 0.733100 0.146600 0.785767 &
basis 0.586500 0.853400 0.214233 &
basis 0.853400 0.586500 0.452433 &
basis 0.146600 0.733100 0.880900 #American Mineralogist 65 920 1980 (Space Group 154)
#Computational Cell
region orthorhombic_unit_cell block 0 4.916000 0 8.514762 0 5.405400 units box
create_box 2 orthorhombic_unit_cell
create_atoms 1 box &
basis 1 1 &
basis 2 1 &
basis 3 1 &
basis 4 2 &
basis 5 2 &
basis 6 2 &
basis 7 2 &
basis 8 2 &
basis 9 2
replicate ${x_rep} ${y_rep} ${z_rep}
region orthorhombic_unit_cell block 0 4.916000 0 8.514762 0 5.405400 units box
create_box 2 orthorhombic_unit_cell
create_atoms 1 box &
basis 1 1 &
basis 2 1 &
basis 3 1 &
basis 4 2 &
basis 5 2 &
basis 6 2 &
basis 7 2 &
basis 8 2 &
basis 9 2
replicate ${x_rep} ${y_rep} ${z_rep}
#Atomic Information
mass 1 28.085500
mass 2 15.999400
set type 1 charge +2.4
set type 2 charge -1.2
mass 1 28.085500
mass 2 15.999400
set type 1 charge +2.4
set type 2 charge -1.2
## This part implements the BKS pair potential with a cut-off distance for the Buckingham term. Long range Coulomb interactions are evaluated with the pppm method.
include alpha_quartz_potential.mod
include alpha_quartz_potential.mod
## This part equilibrates your crystal to a pressure of ${pressure}(unit pressure) and a temperature of ${temperature}(unit temperatureture) with quantum nuclear effects
variable p_damp equal ${delta_t}*1000 #Recommended pressure damping parameter in fix nph
fix scapegoat_qtb all nph iso ${pressure} ${pressure} ${p_damp} #NPH does the time integration
fix quartz_qtb all qtb temp ${temperature} damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100 #Change f_max (THz) if your Debye frequency is higher
thermo_style custom step temp press etotal vol lx ly lz pxx pyy pzz pxy pyz pxz
thermo 100
run 2000 # 2 ps
unfix quartz_qtb
unfix scapegoat_qtb
variable p_damp equal ${delta_t}*1000 #Recommended pressure damping parameter in fix nph
fix scapegoat_qtb all nph iso ${pressure} ${pressure} ${p_damp} ptemp ${temperature} #NPH does the time integration
fix quartz_qtb all qtb temp ${temperature} damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100 #Change f_max (THz) if your Debye frequency is higher
thermo_style custom step temp press etotal vol lx ly lz pxx pyy pzz pxy pyz pxz
thermo 200
run 2000 # 2 ps
unfix quartz_qtb
unfix scapegoat_qtb

View File

@ -0,0 +1,55 @@
## This script first uses fix qtb to equilibrate alpha quartz structure to an initial state with quantum nuclear correction and then simulate shock induced phase transition through the quantum thermal bath multi-scale shock technique
variable x_rep equal 2 #plot is made with x_rep = 8 #x-direction replication number
variable y_rep equal 1 #plot is made with y_rep = 5 #y-direction replication number
variable z_rep equal 4 #plot is made with z_rep = 15 #z-direction replication number
variable cut_off equal 10.0 #Cut-off distance for the Buckingham term (Angstrom in metal units)
variable pressure equal 1.03125 #Initial state pressure (bar in metal units)
variable temperature equal 300.0 #Initial state quantum temperature (K in metal units)
variable delta_t equal 1.0e-3 #MD timestep length (ps in metal units)
variable damp_qtb equal 1 #1/gamma where gamma is the friction coefficient in quantum thermal bath (ps in metal units)
variable v_msst equal 78.0 #Shock velocity (Angstrom/ps in metal units)
variable q_msst equal 40.0 #Box mass-like parameter in the MSST (mass^2/length^4, where mass=grams/mole and length=Angstrom in metal units)
variable tscale_msst equal 0.05 #Temperature reduction parameter in the MSST (unitless)
variable eta_qbmsst equal 1.0 #Coupling constant between the shock and the quantum thermal bath (unitless constant)
## This part uses fix qtb to prepare alpha-quartz with quantum nuclear correction of the initial state
include alpha_quartz_qtb.mod
## This part demonstrates how to retart fix qbmsst during any stage of the shock simulation.
## PPPM may break down when compression ratio becomes extremely large. One can always use this restart technique to resume the shock simulation.
#Compression restart 1
reset_timestep 0
#Beta is the number of time steps between each update of the quantum bath temperature. Setting a larger beta can reduce thermal flactuations.
fix shock all qbmsst z ${v_msst} q ${q_msst} tscale ${tscale_msst} damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix_modify shock energy yes
variable dhug equal f_shock[1]
variable dray equal f_shock[2]
variable lgr_vel equal f_shock[3]
variable lgr_pos equal f_shock[4]
variable T_qm equal f_shock[5] #Temperature with quantum nuclear correction
thermo_style custom step v_T_qm press etotal vol lx ly lz pzz v_dhug v_dray v_lgr_vel v_lgr_pos
thermo 200
timestep ${delta_t}
run 1000
write_restart restart.1000
#Compression restart 2
#Read restart file and load potential again
clear
read_restart restart.1000
include alpha_quartz_potential.mod
#Use the same fix id and add no tscale if the system is already compressed
fix shock all qbmsst z ${v_msst} q ${q_msst} tscale 0.0 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix_modify shock energy yes
variable dhug equal f_shock[1]
variable dray equal f_shock[2]
variable lgr_vel equal f_shock[3]
variable lgr_pos equal f_shock[4]
variable T_qm equal f_shock[5] #Temperature with quantum nuclear correction
thermo_style custom step v_T_qm press etotal vol lx ly lz pzz v_dhug v_dray v_lgr_vel v_lgr_pos
thermo 500
timestep ${delta_t}
restart 1000 restart
run 10000 #10 ps

View File

@ -0,0 +1,430 @@
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
## This script first uses fix qtb to equilibrate alpha quartz structure to an initial state with quantum nuclear correction and then simulate shock induced phase transition through the quantum thermal bath multi-scale shock technique
variable x_rep equal 2 #plot is made with x_rep = 8 #x-direction replication number
variable y_rep equal 1 #plot is made with y_rep = 5 #y-direction replication number
variable z_rep equal 4 #plot is made with z_rep = 15 #z-direction replication number
variable cut_off equal 10.0 #Cut-off distance for the Buckingham term (Angstrom in metal units)
variable pressure equal 1.03125 #Initial state pressure (bar in metal units)
variable temperature equal 300.0 #Initial state quantum temperature (K in metal units)
variable delta_t equal 1.0e-3 #MD timestep length (ps in metal units)
variable damp_qtb equal 1 #1/gamma where gamma is the friction coefficient in quantum thermal bath (ps in metal units)
variable v_msst equal 78.0 #Shock velocity (Angstrom/ps in metal units)
variable q_msst equal 40.0 #Box mass-like parameter in the MSST (mass^2/length^4, where mass=grams/mole and length=Angstrom in metal units)
variable tscale_msst equal 0.05 #Temperature reduction parameter in the MSST (unitless)
variable eta_qbmsst equal 1.0 #Coupling constant between the shock and the quantum thermal bath (unitless constant)
## This part uses fix qtb to prepare alpha-quartz with quantum nuclear correction of the initial state
include alpha_quartz_qtb.mod
## This script first constructs an alpha quartz structure of a given size. It then uses fix qtb to equilibrate the computational cell to the specified temperature and pressure.
## This part defines units, alpha-quartz crystal, and atomic information
#General
units metal
dimension 3
boundary p p p
atom_style charge
#Lattice
lattice custom 1.0 a1 4.916000 0.000000 0.000000 a2 -2.45800 4.257381 0.000000 a3 0.000000 0.000000 5.405400 basis 0.469700 0.000000 0.000000 basis 0.000000 0.469700 0.666667 basis 0.530300 0.530300 0.333333 basis 0.413500 0.266900 0.119100 basis 0.266900 0.413500 0.547567 basis 0.733100 0.146600 0.785767 basis 0.586500 0.853400 0.214233 basis 0.853400 0.586500 0.452433 basis 0.146600 0.733100 0.880900 #American Mineralogist 65 920 1980 (Space Group 154)
Lattice spacing in x,y,z = 7.374 4.25738 5.4054
#Computational Cell
region orthorhombic_unit_cell block 0 4.916000 0 8.514762 0 5.405400 units box
create_box 2 orthorhombic_unit_cell
Created orthogonal box = (0.0 0.0 0.0) to (4.916 8.514762 5.4054)
1 by 1 by 1 MPI processor grid
create_atoms 1 box basis 1 1 basis 2 1 basis 3 1 basis 4 2 basis 5 2 basis 6 2 basis 7 2 basis 8 2 basis 9 2
Created 18 atoms
create_atoms CPU = 0.000 seconds
replicate ${x_rep} ${y_rep} ${z_rep}
replicate 2 ${y_rep} ${z_rep}
replicate 2 1 ${z_rep}
replicate 2 1 4
orthogonal box = (0.0 0.0 0.0) to (9.832 8.514762 21.6216)
1 by 1 by 1 MPI processor grid
144 atoms
replicate CPU = 0.000271082 secs
#Atomic Information
mass 1 28.085500
mass 2 15.999400
set type 1 charge +2.4
48 settings made for charge
set type 2 charge -1.2
96 settings made for charge
## This part implements the BKS pair potential with a cut-off distance for the Buckingham term. Long range Coulomb interactions are evaluated with the pppm method.
include alpha_quartz_potential.mod
#This script implements the BKS pair potential for various silicon dioxide compounds. Inner part is fixed with a harmonic potential. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style hybrid/overlay buck/coul/long ${cut_off} table linear 39901
pair_style hybrid/overlay buck/coul/long 10 table linear 39901
pair_coeff 1 1 buck/coul/long 0.0 1.0 0.0 #No interactions between Si atoms
pair_coeff 1 2 buck/coul/long 18003.757200 0.205205 133.538100
pair_coeff 2 2 buck/coul/long 1388.773000 0.362319 175.000000 #BKS interaction in PRL 64 1955 (1990)
pair_modify shift yes
pair_coeff 1 2 table potential_SiO2.TPF Si-O ${cut_off}
pair_coeff 1 2 table potential_SiO2.TPF Si-O 10
pair_coeff 2 2 table potential_SiO2.TPF O-O ${cut_off} #See the potential file for more information
pair_coeff 2 2 table potential_SiO2.TPF O-O 10
WARNING: 1 of 39901 force values in table are inconsistent with -dE/dr.
Should only be flagged at inflection points (src/pair_table.cpp:471)
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
## This part equilibrates your crystal to a pressure of ${pressure}(unit pressure) and a temperature of ${temperature}(unit temperatureture) with quantum nuclear effects
variable p_damp equal ${delta_t}*1000 #Recommended pressure damping parameter in fix nph
variable p_damp equal 0.001*1000
fix scapegoat_qtb all nph iso ${pressure} ${pressure} ${p_damp} ptemp ${temperature} #NPH does the time integration
fix scapegoat_qtb all nph iso 1.03125 ${pressure} ${p_damp} ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 ${p_damp} ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 1 ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 1 ptemp 300
fix quartz_qtb all qtb temp ${temperature} damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100 #Change f_max (THz) if your Debye frequency is higher
fix quartz_qtb all qtb temp 300 damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100
fix quartz_qtb all qtb temp 300 damp 1 seed 35082 f_max 120.00 N_f 100
thermo_style custom step temp press etotal vol lx ly lz pxx pyy pzz pxy pyz pxz
thermo 200
run 2000 # 2 ps
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.301598
grid = 9 8 15
stencil order = 5
estimated absolute RMS force accuracy = 0.00117056
estimated relative force accuracy = 8.12908e-05
using double precision FFTW3
3d grid and FFT values/proc = 5280 1080
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 2 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
(2) pair table, perpetual, skip from (1)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
Per MPI rank memory allocation (min/avg/max) = 80.09 | 80.09 | 80.09 Mbytes
Step Temp Press TotEng Volume Lx Ly Lz Pxx Pyy Pzz Pxy Pyz Pxz
0 0 -34026.791 -2793.6042 1810.0985 9.832 8.514762 21.6216 -37470.578 -37470.432 -27139.363 -6.4345368e-12 0.94245783 4.2212262e-10
200 170.7381 43248.332 -2790.8398 1879.164 9.9554912 8.6217086 21.89317 39337.624 42979.126 47428.246 324.91326 454.85872 -2034.6053
400 258.09921 -28257.8 -2788.3487 1856.1432 9.9146707 8.5863569 21.803402 -19478.873 -29571.375 -35723.152 4633.9026 8487.8103 -626.12005
600 277.77032 -22751.351 -2786.2715 1866.9783 9.9339253 8.6030319 21.845744 -21727.335 -29200.027 -17326.692 -4327.8571 -8218.4965 252.30681
800 349.8665 30508.003 -2784.2204 1873.4953 9.9454706 8.6130304 21.871134 29929.055 33562.672 28032.281 -3188.5605 12329.482 7558.5678
1000 373.67651 -18839.569 -2783.2178 1855.5937 9.9136922 8.5855095 21.80125 -18063.486 -22288.321 -16166.902 -416.09547 -10368.975 9030.4208
1200 423.3474 6846.9905 -2781.9271 1896.2131 9.9855083 8.6477041 21.959181 2147.3938 11765.857 6627.7202 -7627.6782 -1297.6517 -4758.4746
1400 418.54527 -6416.7506 -2781.4358 1834.2719 9.8755745 8.5524986 21.717425 5693.0543 -19487.901 -5455.405 827.66513 -523.1508 -3890.9919
1600 429.42796 3939.8836 -2780.5861 1895.8859 9.984934 8.6472068 21.957918 3755.6959 -1326.4343 9390.3893 1948.1153 4489.8629 1466.0914
1800 447.7623 -8344.6306 -2780.1071 1858.4925 9.9188518 8.5899779 21.812596 -17549.498 3336.8135 -10821.208 1643.4226 -644.56065 -8935.9666
2000 438.1306 -6691.4691 -2780.7407 1871.3547 9.9416812 8.6097487 21.862801 -6959.2196 -8486.8466 -4628.341 -1019.9006 443.03694 -2751.917
Loop time of 2.46815 on 1 procs for 2000 steps with 144 atoms
Performance: 70.012 ns/day, 0.343 hours/ns, 810.323 timesteps/s
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.0003 | 2.0003 | 2.0003 | 0.0 | 81.04
Kspace | 0.20006 | 0.20006 | 0.20006 | 0.0 | 8.11
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.023753 | 0.023753 | 0.023753 | 0.0 | 0.96
Output | 0.0001986 | 0.0001986 | 0.0001986 | 0.0 | 0.01
Modify | 0.23896 | 0.23896 | 0.23896 | 0.0 | 9.68
Other | | 0.004907 | | | 0.20
Nlocal: 144 ave 144 max 144 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 3943 ave 3943 max 3943 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 41952 ave 41952 max 41952 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 41952
Ave neighs/atom = 291.333
Neighbor list builds = 0
Dangerous builds = 0
unfix quartz_qtb
unfix scapegoat_qtb
## This part demonstrates how to retart fix qbmsst during any stage of the shock simulation.
## PPPM may break down when compression ratio becomes extremely large. One can always use this restart technique to resume the shock simulation.
#Compression restart 1
reset_timestep 0
#Beta is the number of time steps between each update of the quantum bath temperature. Setting a larger beta can reduce thermal flactuations.
fix shock all qbmsst z ${v_msst} q ${q_msst} tscale ${tscale_msst} damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q ${q_msst} tscale ${tscale_msst} damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale ${tscale_msst} damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.05 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.05 damp 1 f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.05 damp 1 f_max 120 N_f 100 seed 35082 eta 1 beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.05 damp 1 f_max 120 N_f 100 seed 35082 eta 1 beta 5 T_init 300
QBMSST parameters:
Shock in z direction
Cell mass-like parameter qmass (units of mass^2/length^4) = 4.00000e+01
Shock velocity = 7.80000e+01
Artificial viscosity (units of mass/length/time) = 0.00000e+00
Initial pressure calculated on first step
Initial volume calculated on first step
Initial energy calculated on first step
fix_modify shock energy yes
variable dhug equal f_shock[1]
variable dray equal f_shock[2]
variable lgr_vel equal f_shock[3]
variable lgr_pos equal f_shock[4]
variable T_qm equal f_shock[5] #Temperature with quantum nuclear correction
thermo_style custom step v_T_qm press etotal vol lx ly lz pzz v_dhug v_dray v_lgr_vel v_lgr_pos
thermo 200
timestep ${delta_t}
timestep 0.001
run 1000
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.303132
grid = 9 8 16
stencil order = 5
estimated absolute RMS force accuracy = 0.00104699
estimated relative force accuracy = 7.27093e-05
using double precision FFTW3
3d grid and FFT values/proc = 5520 1152
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 2 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
(2) pair table, perpetual, skip from (1)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
Fix QBMSST v0 = 1.87135e+03
Fix QBMSST p0 = -4.62948e+03
Fix QBMSST e0 = to be -2.78074e+03
Fix QBMSST initial strain rate of -4.01096e-01 established by reducing temperature by factor of 5.00000e-02
Per MPI rank memory allocation (min/avg/max) = 80.1 | 80.1 | 80.1 Mbytes
Step v_T_qm Press TotEng Volume Lx Ly Lz Pzz v_dhug v_dray v_lgr_vel v_lgr_pos
0 300 -6922.9433 -2780.7394 1871.3547 9.9416812 8.6097487 21.862801 -4819.9907 10.953265 -190.51273 0 0
200 294.95797 54876.416 -2779.2988 1723.7621 9.9416812 8.6097487 20.138495 108897.19 -29.773973 -9271.7281 6.1518102 -15.057867
400 288.3711 139521.03 -2778.7321 1628.5574 9.9416812 8.6097487 19.026231 222107.71 8.0682073 24727.575 10.120041 -28.714693
600 280.56521 98070.281 -2779.8934 1687.2434 9.9416812 8.6097487 19.711852 164558.51 2.6076928 16005.656 7.6739491 -42.705007
800 274.94701 106060.26 -2779.2916 1651.0723 9.9416812 8.6097487 19.289269 176842.6 -39.645354 -1804.9466 9.1815975 -56.628078
1000 268.47106 189695.34 -2779.4951 1492.6355 9.9416812 8.6097487 17.438272 277351.5 -84.834482 -33116.996 15.785409 -69.870519
Loop time of 2.05219 on 1 procs for 1000 steps with 144 atoms
Performance: 42.101 ns/day, 0.570 hours/ns, 487.284 timesteps/s
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 1.6815 | 1.6815 | 1.6815 | 0.0 | 81.94
Kspace | 0.10373 | 0.10373 | 0.10373 | 0.0 | 5.05
Neigh | 0.0061183 | 0.0061183 | 0.0061183 | 0.0 | 0.30
Comm | 0.012444 | 0.012444 | 0.012444 | 0.0 | 0.61
Output | 0.00014687 | 0.00014687 | 0.00014687 | 0.0 | 0.01
Modify | 0.24529 | 0.24529 | 0.24529 | 0.0 | 11.95
Other | | 0.002948 | | | 0.14
Nlocal: 144 ave 144 max 144 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 4243 ave 4243 max 4243 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 48210 ave 48210 max 48210 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 48210
Ave neighs/atom = 334.792
Neighbor list builds = 8
Dangerous builds = 0
write_restart restart.1000
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.306435
grid = 9 8 15
stencil order = 5
estimated absolute RMS force accuracy = 0.000955688
estimated relative force accuracy = 6.63689e-05
using double precision FFTW3
3d grid and FFT values/proc = 5280 1080
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 2 3
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
(2) pair table, perpetual, skip from (1)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
#Compression restart 2
#Read restart file and load potential again
clear
using 1 OpenMP thread(s) per MPI task
read_restart restart.1000
restoring atom style charge from restart
orthogonal box = (-0.05484062286382799 -0.04749337384227555 2.0916641327653274) to (9.886840622863804 8.562255373842252 19.52993586723476)
1 by 1 by 1 MPI processor grid
restoring pair style hybrid/overlay from restart
144 atoms
read_restart CPU = 0.0002563 secs
include alpha_quartz_potential.mod
#This script implements the BKS pair potential for various silicon dioxide compounds. Inner part is fixed with a harmonic potential. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style hybrid/overlay buck/coul/long ${cut_off} table linear 39901
pair_style hybrid/overlay buck/coul/long 10 table linear 39901
pair_coeff 1 1 buck/coul/long 0.0 1.0 0.0 #No interactions between Si atoms
pair_coeff 1 2 buck/coul/long 18003.757200 0.205205 133.538100
pair_coeff 2 2 buck/coul/long 1388.773000 0.362319 175.000000 #BKS interaction in PRL 64 1955 (1990)
pair_modify shift yes
pair_coeff 1 2 table potential_SiO2.TPF Si-O ${cut_off}
pair_coeff 1 2 table potential_SiO2.TPF Si-O 10
pair_coeff 2 2 table potential_SiO2.TPF O-O ${cut_off} #See the potential file for more information
pair_coeff 2 2 table potential_SiO2.TPF O-O 10
WARNING: 1 of 39901 force values in table are inconsistent with -dE/dr.
Should only be flagged at inflection points (src/pair_table.cpp:471)
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
#Use the same fix id and add no tscale if the system is already compressed
fix shock all qbmsst z ${v_msst} q ${q_msst} tscale 0.0 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q ${q_msst} tscale 0.0 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.0 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.0 damp 1 f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.0 damp 1 f_max 120 N_f 100 seed 35082 eta 1 beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.0 damp 1 f_max 120 N_f 100 seed 35082 eta 1 beta 5 T_init 300
QBMSST parameters:
Shock in z direction
Cell mass-like parameter qmass (units of mass^2/length^4) = 4.00000e+01
Shock velocity = 7.80000e+01
Artificial viscosity (units of mass/length/time) = 0.00000e+00
Initial pressure calculated on first step
Initial volume calculated on first step
Initial energy calculated on first step
Resetting global fix info from restart file:
fix style: qbmsst, fix ID: shock
fix_modify shock energy yes
variable dhug equal f_shock[1]
variable dray equal f_shock[2]
variable lgr_vel equal f_shock[3]
variable lgr_pos equal f_shock[4]
variable T_qm equal f_shock[5] #Temperature with quantum nuclear correction
thermo_style custom step v_T_qm press etotal vol lx ly lz pzz v_dhug v_dray v_lgr_vel v_lgr_pos
thermo 500
timestep ${delta_t}
timestep 0.001
restart 1000 restart
run 10000 #10 ps
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.306435
grid = 9 8 15
stencil order = 5
estimated absolute RMS force accuracy = 0.000955688
estimated relative force accuracy = 6.63689e-05
using double precision FFTW3
3d grid and FFT values/proc = 5280 1080
All restart file global fix info was re-assigned
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 2 3
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
(2) pair table, perpetual, skip from (1)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
Per MPI rank memory allocation (min/avg/max) = 80.12 | 80.12 | 80.12 Mbytes
Step v_T_qm Press TotEng Volume Lx Ly Lz Pzz v_dhug v_dray v_lgr_vel v_lgr_pos
1000 268.47106 189686.77 -2781.5194 1492.6355 9.9416812 8.6097487 17.438272 277378.37 -84.692548 -33090.129 15.785409 0
1500 362.13476 692245.96 -2800.9352 1011.2037 9.9416812 8.6097487 11.813766 661095.53 188.71833 -49928.712 35.851981 -24.11484
2000 860.78914 714816.8 -2830.893 997.64749 9.9416812 8.6097487 11.65539 653537.64 852.68158 -68765.537 36.41702 -44.978484
2500 1620.8281 709511.19 -2840.8217 1000.3425 9.9416812 8.6097487 11.686875 660030.01 1184.3105 -60030.892 36.304689 -65.69966
3000 2395.6824 649526.84 -2832.6859 995.56591 9.9416812 8.6097487 11.631071 660984.37 939.07209 -63050.693 36.503782 -86.383242
3500 3034.6774 715794.56 -2822.6098 995.8622 9.9416812 8.6097487 11.634532 712849.74 1055.7295 -10938.816 36.491433 -106.99315
4000 3487.9039 736791.25 -2804.1216 994.13867 9.9416812 8.6097487 11.614397 765817.85 943.15747 40595.305 36.563271 -127.76315
4500 3718.6279 813775.8 -2788.1942 995.82514 9.9416812 8.6097487 11.634099 881961.06 1370.5559 158141.68 36.492977 -148.68649
5000 3691.4947 750146.58 -2770.5541 1018.4785 9.9416812 8.6097487 11.898756 770500.36 196.2793 65528.786 35.548762 -169.8589
5500 3585.8602 831522.51 -2766.0198 1005.6834 9.9416812 8.6097487 11.749273 916093.67 1088.1987 200476.48 36.082073 -190.89436
6000 3431.6405 749891.94 -2771.6404 1011.9077 9.9416812 8.6097487 11.82199 781321.11 268.24344 70882.55 35.82264 -212.20913
6500 3350.2876 666113.16 -2780.4124 1028.8353 9.9416812 8.6097487 12.019753 749294.32 371.38231 52939.676 35.117081 -233.59556
7000 3339.2397 675783.2 -2782.7559 1022.6541 9.9416812 8.6097487 11.947539 690109.39 -26.949124 -11388.054 35.374719 -254.95868
7500 3395.582 726601.74 -2784.7652 1018.1439 9.9416812 8.6097487 11.894846 759167.86 506.5811 53917.852 35.56271 -276.24361
8000 3393.2372 625141.93 -2771.6398 1035.4915 9.9416812 8.6097487 12.097517 598674.46 -895.80046 -92142.112 34.839641 -297.61681
8500 3272.9752 659367.77 -2776.608 1031.8188 9.9416812 8.6097487 12.054609 688358.42 -142.30814 -5513.8593 34.992722 -318.94541
9000 3277.8848 724828.76 -2777.6502 1017.6314 9.9416812 8.6097487 11.888859 724452.11 58.574942 18775.738 35.58407 -340.1718
9500 3273.7854 620652.38 -2780.0794 1023.5922 9.9416812 8.6097487 11.958499 747175.42 317.3826 46458.505 35.335617 -361.41643
10000 3329.1766 668606.38 -2786.3493 1022.9534 9.9416812 8.6097487 11.951035 703351.81 168.14538 2103.38 35.362244 -382.64609
10500 3398.9956 642919.16 -2784.2833 1016.2587 9.9416812 8.6097487 11.872822 661298.16 -230.03577 -45520.34 35.641287 -403.78721
11000 3418.7053 675754.06 -2782.6318 1005.7483 9.9416812 8.6097487 11.75003 689789.84 -136.97148 -25773.422 36.079372 -424.97556
Loop time of 32.4277 on 1 procs for 10000 steps with 144 atoms
Performance: 26.644 ns/day, 0.901 hours/ns, 308.378 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 | 28.397 | 28.397 | 28.397 | 0.0 | 87.57
Kspace | 1.0225 | 1.0225 | 1.0225 | 0.0 | 3.15
Neigh | 0.27594 | 0.27594 | 0.27594 | 0.0 | 0.85
Comm | 0.1797 | 0.1797 | 0.1797 | 0.0 | 0.55
Output | 0.10409 | 0.10409 | 0.10409 | 0.0 | 0.32
Modify | 2.4112 | 2.4112 | 2.4112 | 0.0 | 7.44
Other | | 0.03707 | | | 0.11
Nlocal: 144 ave 144 max 144 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 5541 ave 5541 max 5541 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 74662 ave 74662 max 74662 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 74662
Ave neighs/atom = 518.486
Neighbor list builds = 207
Dangerous builds = 0
Total wall time: 0:00:37

View File

@ -0,0 +1,430 @@
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
## This script first uses fix qtb to equilibrate alpha quartz structure to an initial state with quantum nuclear correction and then simulate shock induced phase transition through the quantum thermal bath multi-scale shock technique
variable x_rep equal 2 #plot is made with x_rep = 8 #x-direction replication number
variable y_rep equal 1 #plot is made with y_rep = 5 #y-direction replication number
variable z_rep equal 4 #plot is made with z_rep = 15 #z-direction replication number
variable cut_off equal 10.0 #Cut-off distance for the Buckingham term (Angstrom in metal units)
variable pressure equal 1.03125 #Initial state pressure (bar in metal units)
variable temperature equal 300.0 #Initial state quantum temperature (K in metal units)
variable delta_t equal 1.0e-3 #MD timestep length (ps in metal units)
variable damp_qtb equal 1 #1/gamma where gamma is the friction coefficient in quantum thermal bath (ps in metal units)
variable v_msst equal 78.0 #Shock velocity (Angstrom/ps in metal units)
variable q_msst equal 40.0 #Box mass-like parameter in the MSST (mass^2/length^4, where mass=grams/mole and length=Angstrom in metal units)
variable tscale_msst equal 0.05 #Temperature reduction parameter in the MSST (unitless)
variable eta_qbmsst equal 1.0 #Coupling constant between the shock and the quantum thermal bath (unitless constant)
## This part uses fix qtb to prepare alpha-quartz with quantum nuclear correction of the initial state
include alpha_quartz_qtb.mod
## This script first constructs an alpha quartz structure of a given size. It then uses fix qtb to equilibrate the computational cell to the specified temperature and pressure.
## This part defines units, alpha-quartz crystal, and atomic information
#General
units metal
dimension 3
boundary p p p
atom_style charge
#Lattice
lattice custom 1.0 a1 4.916000 0.000000 0.000000 a2 -2.45800 4.257381 0.000000 a3 0.000000 0.000000 5.405400 basis 0.469700 0.000000 0.000000 basis 0.000000 0.469700 0.666667 basis 0.530300 0.530300 0.333333 basis 0.413500 0.266900 0.119100 basis 0.266900 0.413500 0.547567 basis 0.733100 0.146600 0.785767 basis 0.586500 0.853400 0.214233 basis 0.853400 0.586500 0.452433 basis 0.146600 0.733100 0.880900 #American Mineralogist 65 920 1980 (Space Group 154)
Lattice spacing in x,y,z = 7.374 4.25738 5.4054
#Computational Cell
region orthorhombic_unit_cell block 0 4.916000 0 8.514762 0 5.405400 units box
create_box 2 orthorhombic_unit_cell
Created orthogonal box = (0.0 0.0 0.0) to (4.916 8.514762 5.4054)
1 by 2 by 2 MPI processor grid
create_atoms 1 box basis 1 1 basis 2 1 basis 3 1 basis 4 2 basis 5 2 basis 6 2 basis 7 2 basis 8 2 basis 9 2
Created 18 atoms
create_atoms CPU = 0.000 seconds
replicate ${x_rep} ${y_rep} ${z_rep}
replicate 2 ${y_rep} ${z_rep}
replicate 2 1 ${z_rep}
replicate 2 1 4
orthogonal box = (0.0 0.0 0.0) to (9.832 8.514762 21.6216)
1 by 1 by 4 MPI processor grid
144 atoms
replicate CPU = 0.000225782 secs
#Atomic Information
mass 1 28.085500
mass 2 15.999400
set type 1 charge +2.4
48 settings made for charge
set type 2 charge -1.2
96 settings made for charge
## This part implements the BKS pair potential with a cut-off distance for the Buckingham term. Long range Coulomb interactions are evaluated with the pppm method.
include alpha_quartz_potential.mod
#This script implements the BKS pair potential for various silicon dioxide compounds. Inner part is fixed with a harmonic potential. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style hybrid/overlay buck/coul/long ${cut_off} table linear 39901
pair_style hybrid/overlay buck/coul/long 10 table linear 39901
pair_coeff 1 1 buck/coul/long 0.0 1.0 0.0 #No interactions between Si atoms
pair_coeff 1 2 buck/coul/long 18003.757200 0.205205 133.538100
pair_coeff 2 2 buck/coul/long 1388.773000 0.362319 175.000000 #BKS interaction in PRL 64 1955 (1990)
pair_modify shift yes
pair_coeff 1 2 table potential_SiO2.TPF Si-O ${cut_off}
pair_coeff 1 2 table potential_SiO2.TPF Si-O 10
pair_coeff 2 2 table potential_SiO2.TPF O-O ${cut_off} #See the potential file for more information
pair_coeff 2 2 table potential_SiO2.TPF O-O 10
WARNING: 1 of 39901 force values in table are inconsistent with -dE/dr.
Should only be flagged at inflection points (src/pair_table.cpp:471)
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
## This part equilibrates your crystal to a pressure of ${pressure}(unit pressure) and a temperature of ${temperature}(unit temperatureture) with quantum nuclear effects
variable p_damp equal ${delta_t}*1000 #Recommended pressure damping parameter in fix nph
variable p_damp equal 0.001*1000
fix scapegoat_qtb all nph iso ${pressure} ${pressure} ${p_damp} ptemp ${temperature} #NPH does the time integration
fix scapegoat_qtb all nph iso 1.03125 ${pressure} ${p_damp} ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 ${p_damp} ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 1 ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 1 ptemp 300
fix quartz_qtb all qtb temp ${temperature} damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100 #Change f_max (THz) if your Debye frequency is higher
fix quartz_qtb all qtb temp 300 damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100
fix quartz_qtb all qtb temp 300 damp 1 seed 35082 f_max 120.00 N_f 100
thermo_style custom step temp press etotal vol lx ly lz pxx pyy pzz pxy pyz pxz
thermo 200
run 2000 # 2 ps
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.301598
grid = 9 8 15
stencil order = 5
estimated absolute RMS force accuracy = 0.00117056
estimated relative force accuracy = 8.12908e-05
using double precision FFTW3
3d grid and FFT values/proc = 2400 288
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 2 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
(2) pair table, perpetual, skip from (1)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
Per MPI rank memory allocation (min/avg/max) = 79.7 | 79.7 | 79.7 Mbytes
Step Temp Press TotEng Volume Lx Ly Lz Pxx Pyy Pzz Pxy Pyz Pxz
0 0 -34026.791 -2793.6042 1810.0985 9.832 8.514762 21.6216 -37470.578 -37470.432 -27139.363 1.0530512e-10 0.94245783 4.0087238e-10
200 153.57631 45538.205 -2790.8177 1873.0866 9.9447472 8.612404 21.869543 41721.016 44095.248 50798.351 -3961.4596 1223.325 2871.656
400 234.74785 -34404.175 -2789.0189 1850.2127 9.9041 8.5772024 21.780156 -28329.333 -39376.313 -35506.88 -1154.5043 -5411.1071 2246.6749
600 265.24833 -20905.145 -2786.2727 1874.9981 9.948129 8.6153326 21.87698 -22753.886 -21091.083 -18870.468 -4645.5548 2968.2945 1415.0311
800 297.79035 32990.58 -2784.8247 1853.6946 9.910309 8.5825796 21.79381 30061.364 35359.18 33551.195 -3092.2971 1525.52 -6461.0249
1000 367.71884 -27539.239 -2783.0102 1864.7161 9.9299114 8.5995557 21.836917 -20273.387 -38720.429 -23623.901 7639.0334 -866.35665 543.52723
1200 399.77109 3807.7814 -2781.511 1893.4978 9.9807399 8.6435745 21.948695 1625.8226 7441.2236 2356.298 -4057.1674 3814.9305 1528.4567
1400 466.57962 -4148.235 -2780.1546 1851.5925 9.9065614 8.5793341 21.785568 -10883.19 1816.768 -3378.2828 896.25296 -7208.541 -42.253127
1600 497.86539 14505.31 -2778.9409 1882.2616 9.9609584 8.6264432 21.905193 8268.1103 20614.738 14633.082 -2690.5669 6807.3187 11995.878
1800 557.31182 -108.04462 -2778.1875 1875.514 9.9490413 8.6161228 21.878986 948.68308 -1929.7575 656.94053 -1628.2172 -6594.5909 -4423.4368
2000 480.39449 -8852.2243 -2778.4963 1862.9552 9.9267847 8.596848 21.830042 -18274.307 3038.8369 -11321.203 -5002.1016 12023.282 6845.2769
Loop time of 1.42181 on 4 procs for 2000 steps with 144 atoms
Performance: 121.535 ns/day, 0.197 hours/ns, 1406.656 timesteps/s
87.5% 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.72578 | 0.80093 | 0.87518 | 6.1 | 56.33
Kspace | 0.33737 | 0.41245 | 0.48642 | 8.4 | 29.01
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.066098 | 0.071334 | 0.076039 | 1.6 | 5.02
Output | 0.00021172 | 0.00039291 | 0.00093484 | 0.0 | 0.03
Modify | 0.090105 | 0.1077 | 0.11384 | 3.1 | 7.58
Other | | 0.029 | | | 2.04
Nlocal: 36 ave 36 max 36 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Nghost: 2614 ave 2614 max 2614 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Neighs: 10488 ave 11326 max 9404 min
Histogram: 1 0 0 0 0 0 2 0 0 1
Total # of neighbors = 41952
Ave neighs/atom = 291.333
Neighbor list builds = 0
Dangerous builds = 0
unfix quartz_qtb
unfix scapegoat_qtb
## This part demonstrates how to retart fix qbmsst during any stage of the shock simulation.
## PPPM may break down when compression ratio becomes extremely large. One can always use this restart technique to resume the shock simulation.
#Compression restart 1
reset_timestep 0
#Beta is the number of time steps between each update of the quantum bath temperature. Setting a larger beta can reduce thermal flactuations.
fix shock all qbmsst z ${v_msst} q ${q_msst} tscale ${tscale_msst} damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q ${q_msst} tscale ${tscale_msst} damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale ${tscale_msst} damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.05 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.05 damp 1 f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.05 damp 1 f_max 120 N_f 100 seed 35082 eta 1 beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.05 damp 1 f_max 120 N_f 100 seed 35082 eta 1 beta 5 T_init 300
QBMSST parameters:
Shock in z direction
Cell mass-like parameter qmass (units of mass^2/length^4) = 4.00000e+01
Shock velocity = 7.80000e+01
Artificial viscosity (units of mass/length/time) = 0.00000e+00
Initial pressure calculated on first step
Initial volume calculated on first step
Initial energy calculated on first step
fix_modify shock energy yes
variable dhug equal f_shock[1]
variable dray equal f_shock[2]
variable lgr_vel equal f_shock[3]
variable lgr_pos equal f_shock[4]
variable T_qm equal f_shock[5] #Temperature with quantum nuclear correction
thermo_style custom step v_T_qm press etotal vol lx ly lz pzz v_dhug v_dray v_lgr_vel v_lgr_pos
thermo 200
timestep ${delta_t}
timestep 0.001
run 1000
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.30088
grid = 9 8 15
stencil order = 5
estimated absolute RMS force accuracy = 0.00120534
estimated relative force accuracy = 8.37062e-05
using double precision FFTW3
3d grid and FFT values/proc = 2400 288
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 2 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
(2) pair table, perpetual, skip from (1)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
Fix QBMSST v0 = 1.86296e+03
Fix QBMSST p0 = -1.13219e+04
Fix QBMSST e0 = to be -2.77850e+03
Fix QBMSST initial strain rate of -4.21890e-01 established by reducing temperature by factor of 5.00000e-02
Per MPI rank memory allocation (min/avg/max) = 79.7 | 79.7 | 79.7 Mbytes
Step v_T_qm Press TotEng Volume Lx Ly Lz Pzz v_dhug v_dray v_lgr_vel v_lgr_pos
0 300 -9106.318 -2778.4963 1862.9552 9.9267847 8.596848 21.830042 -11562.002 12.009862 -240.0699 0 0
200 296.47213 25984.111 -2777.5178 1770.2164 9.9267847 8.596848 20.743332 64970.204 -25.305765 -1564.7673 3.8828772 -15.16768
400 291.06707 69977.517 -2777.6325 1684.893 9.9267847 8.596848 19.743515 144833.82 -12.184734 6667.384 7.4552796 -29.607028
600 287.21118 39706.699 -2778.0322 1716.9533 9.9267847 8.596848 20.119196 87971.152 -38.593844 -23279.741 6.1129484 -43.751298
800 284.33611 18833.281 -2778.1637 1792.7576 9.9267847 8.596848 21.007468 43725.433 -8.1267799 -3885.5802 2.9391022 -58.454556
1000 281.98328 -6030.6935 -2778.3314 1881.8369 9.9267847 8.596848 22.051297 -14118.602 1.3183874 13055.078 -0.79055793 -73.780965
Loop time of 1.25215 on 4 procs for 1000 steps with 144 atoms
Performance: 69.001 ns/day, 0.348 hours/ns, 798.628 timesteps/s
90.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 | 0.67979 | 0.73665 | 0.8091 | 5.4 | 58.83
Kspace | 0.18687 | 0.25893 | 0.31544 | 9.1 | 20.68
Neigh | 0.0011306 | 0.0012404 | 0.0013735 | 0.3 | 0.10
Comm | 0.040339 | 0.041345 | 0.042296 | 0.4 | 3.30
Output | 0.00020051 | 0.00035506 | 0.00081801 | 0.0 | 0.03
Modify | 0.19595 | 0.2007 | 0.20253 | 0.6 | 16.03
Other | | 0.01292 | | | 1.03
Nlocal: 36 ave 38 max 34 min
Histogram: 1 0 1 0 0 0 0 1 0 1
Nghost: 2527.75 ave 2547 max 2518 min
Histogram: 2 0 0 1 0 0 0 0 0 1
Neighs: 10194.8 ave 11177 max 9437 min
Histogram: 2 0 0 0 0 0 1 0 0 1
Total # of neighbors = 40779
Ave neighs/atom = 283.188
Neighbor list builds = 6
Dangerous builds = 0
write_restart restart.1000
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.302953
grid = 9 8 16
stencil order = 5
estimated absolute RMS force accuracy = 0.00105569
estimated relative force accuracy = 7.33134e-05
using double precision FFTW3
3d grid and FFT values/proc = 2640 288
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 2 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
(2) pair table, perpetual, skip from (1)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
#Compression restart 2
#Read restart file and load potential again
clear
using 1 OpenMP thread(s) per MPI task
read_restart restart.1000
restoring atom style charge from restart
orthogonal box = (-0.04739235907204603 -0.041042988010289584 -0.21484841641189512) to (9.879392359072014 8.555804988010294 21.83644841641206)
1 by 1 by 4 MPI processor grid
restoring pair style hybrid/overlay from restart
144 atoms
read_restart CPU = 0.000472307 secs
include alpha_quartz_potential.mod
#This script implements the BKS pair potential for various silicon dioxide compounds. Inner part is fixed with a harmonic potential. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style hybrid/overlay buck/coul/long ${cut_off} table linear 39901
pair_style hybrid/overlay buck/coul/long 10 table linear 39901
pair_coeff 1 1 buck/coul/long 0.0 1.0 0.0 #No interactions between Si atoms
pair_coeff 1 2 buck/coul/long 18003.757200 0.205205 133.538100
pair_coeff 2 2 buck/coul/long 1388.773000 0.362319 175.000000 #BKS interaction in PRL 64 1955 (1990)
pair_modify shift yes
pair_coeff 1 2 table potential_SiO2.TPF Si-O ${cut_off}
pair_coeff 1 2 table potential_SiO2.TPF Si-O 10
pair_coeff 2 2 table potential_SiO2.TPF O-O ${cut_off} #See the potential file for more information
pair_coeff 2 2 table potential_SiO2.TPF O-O 10
WARNING: 1 of 39901 force values in table are inconsistent with -dE/dr.
Should only be flagged at inflection points (src/pair_table.cpp:471)
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
#Use the same fix id and add no tscale if the system is already compressed
fix shock all qbmsst z ${v_msst} q ${q_msst} tscale 0.0 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q ${q_msst} tscale 0.0 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.0 damp ${damp_qtb} f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.0 damp 1 f_max 120 N_f 100 seed 35082 eta ${eta_qbmsst} beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.0 damp 1 f_max 120 N_f 100 seed 35082 eta 1 beta 5 T_init ${temperature}
fix shock all qbmsst z 78 q 40 tscale 0.0 damp 1 f_max 120 N_f 100 seed 35082 eta 1 beta 5 T_init 300
QBMSST parameters:
Shock in z direction
Cell mass-like parameter qmass (units of mass^2/length^4) = 4.00000e+01
Shock velocity = 7.80000e+01
Artificial viscosity (units of mass/length/time) = 0.00000e+00
Initial pressure calculated on first step
Initial volume calculated on first step
Initial energy calculated on first step
Resetting global fix info from restart file:
fix style: qbmsst, fix ID: shock
fix_modify shock energy yes
variable dhug equal f_shock[1]
variable dray equal f_shock[2]
variable lgr_vel equal f_shock[3]
variable lgr_pos equal f_shock[4]
variable T_qm equal f_shock[5] #Temperature with quantum nuclear correction
thermo_style custom step v_T_qm press etotal vol lx ly lz pzz v_dhug v_dray v_lgr_vel v_lgr_pos
thermo 500
timestep ${delta_t}
timestep 0.001
restart 1000 restart
run 10000 #10 ps
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.302953
grid = 9 8 16
stencil order = 5
estimated absolute RMS force accuracy = 0.00105569
estimated relative force accuracy = 7.33134e-05
using double precision FFTW3
3d grid and FFT values/proc = 2640 288
All restart file global fix info was re-assigned
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 2 4
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
(2) pair table, perpetual, skip from (1)
attributes: half, newton on
pair build: skip
stencil: none
bin: none
Per MPI rank memory allocation (min/avg/max) = 79.71 | 79.71 | 79.71 Mbytes
Step v_T_qm Press TotEng Volume Lx Ly Lz Pzz v_dhug v_dray v_lgr_vel v_lgr_pos
1000 281.98328 -6031.2395 -2778.6227 1881.8369 9.9267847 8.596848 22.051297 -14113.621 1.3373278 13060.059 -0.79055793 0
1500 266.12746 44405.573 -2777.9815 1739.6543 9.9267847 8.596848 20.385206 92590.239 -12.06041 397.47049 5.1624821 -37.823748
2000 255.79411 17620.408 -2777.9685 1785.7619 9.9267847 8.596848 20.925494 48670.364 -16.082827 -4813.6764 3.2320016 -73.974437
2500 256.8887 40153.833 -2778.4337 1752.9461 9.9267847 8.596848 20.540959 79665.002 7.7413878 -1368.8927 4.6059671 -112.35254
3000 261.55251 5315.4799 -2779.0755 1834.3375 9.9267847 8.596848 21.4947 15896.368 22.588205 3192.882 1.1981949 -148.36068
3500 261.57101 57911.809 -2778.1223 1713.3956 9.9267847 8.596848 20.077507 110996.8 -9.4471543 -3240.9018 6.2619064 -186.41261
4000 254.88665 13952.95 -2778.4816 1818.2782 9.9267847 8.596848 21.306518 26833.588 2.2818412 647.88057 1.8705799 -222.72504
4500 240.08908 73322.997 -2776.7382 1668.6666 9.9267847 8.596848 19.553375 151978.11 -43.917346 189.1572 8.1346613 -260.52885
5000 214.49084 1925.2557 -2777.0657 1890.0985 9.9267847 8.596848 22.148106 -5218.7292 -44.5537 28890.787 -1.1364617 -297.26329
5500 194.6515 71804.842 -2777.3417 1669.7297 9.9267847 8.596848 19.565832 146911.42 -34.911593 -3985.0635 8.0901523 -334.1879
6000 186.23814 10196.007 -2777.1394 1837.3793 9.9267847 8.596848 21.530344 23550.907 -18.381207 13401.096 1.0708382 -371.9208
6500 172.53603 5474.3725 -2777.4502 1818.0038 9.9267847 8.596848 21.303303 18389.825 -22.65951 -8026.2088 1.8820667 -407.83084
7000 160.91186 107908.64 -2777.6746 1621.7378 9.9267847 8.596848 19.003464 196841.27 -8.6606903 5654.1938 10.099523 -444.9925
7500 146.01905 147030.69 -2777.2543 1539.7536 9.9267847 8.596848 18.042777 253089.02 -43.928324 -6926.1018 13.532114 -478.63113
8000 207.17758 837859.1 -2796.8957 989.32874 9.9267847 8.596848 11.592918 811765.11 1172.3778 89652.363 36.577833 -503.41923
8500 725.15657 853732.89 -2832.3144 974.18299 9.9267847 8.596848 11.415441 773926.64 1749.5702 39098.598 37.21197 -524.17835
9000 1554.6089 807867.74 -2843.0063 990.10922 9.9267847 8.596848 11.602064 749697.22 1959.0322 28239.71 36.545155 -544.77354
9500 2440.1194 748145.05 -2839.2364 992.38871 9.9267847 8.596848 11.628775 691503.58 1437.0708 -28040.223 36.449715 -565.41198
10000 3112.1817 823862.43 -2820.0495 982.35471 9.9267847 8.596848 11.511197 754954.89 1330.6807 26987.244 36.869828 -586.12357
10500 3550.0273 868916.79 -2803.7678 983.70386 9.9267847 8.596848 11.527006 867368.45 1727.9058 140533.46 36.813341 -607.00946
11000 3839.7527 830581.55 -2795.3804 995.31485 9.9267847 8.596848 11.663063 811740 1150.0462 94652.768 36.327201 -628.02229
Loop time of 15.1476 on 4 procs for 10000 steps with 144 atoms
Performance: 57.039 ns/day, 0.421 hours/ns, 660.171 timesteps/s
91.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 | 7.7228 | 9.085 | 10.626 | 36.0 | 59.98
Kspace | 1.6343 | 3.1795 | 4.5467 | 61.0 | 20.99
Neigh | 0.02063 | 0.027076 | 0.034395 | 3.1 | 0.18
Comm | 0.54719 | 0.57781 | 0.60468 | 2.8 | 3.81
Output | 0.10128 | 0.1019 | 0.10373 | 0.3 | 0.67
Modify | 2.0819 | 2.1159 | 2.1495 | 1.8 | 13.97
Other | | 0.06035 | | | 0.40
Nlocal: 36 ave 38 max 33 min
Histogram: 1 0 0 0 0 0 1 0 1 1
Nghost: 4267 ave 4304 max 4239 min
Histogram: 1 0 1 0 1 0 0 0 0 1
Neighs: 18859.2 ave 25108 max 12333 min
Histogram: 1 0 0 1 0 0 1 0 0 1
Total # of neighbors = 75437
Ave neighs/atom = 523.868
Neighbor list builds = 95
Dangerous builds = 0
Total wall time: 0:00:17

View File

@ -1,4 +1,4 @@
#Potential between O,Si atoms. r ranges from 0.1 to 20.0. This file+BKS(with no shift)=alpha*(r-rs)^2(0.1<r<rs);BKS(20.0>r>rs). alpha=100, rsOO=1.43869, rsSiO=1.19362. All with metal units.
#Potential between O,Si atoms. UNITS: metal r ranges from 0.1 to 20.0. This file+BKS(with no shift)=alpha*(r-rs)^2(0.1<r<rs);BKS(20.0>r>rs). alpha=100, rsOO=1.43869, rsSiO=1.19362. All with metal units.
Si-O
N 39901

View File

@ -1,79 +0,0 @@
## This script first constructs an alpha quartz structure of a given size. It then uses fix qtb to equilibrate the computational cell to the specified temperature and pressure.
variable x_rep equal 2 #x-direction replication number
variable y_rep equal 2 #y-direction replication number
variable z_rep equal 2 #z-direction replication number
variable cut_off equal 10.0 #Cut-off distance for the Buckingham term (Angstrom in metal units)
variable pressure equal 1.03125 #Initial state pressure (bar in metal units)
variable temperature equal 300.0 #Initial state quantum temperature (K in metal units)
variable delta_t equal 1.0e-3 #MD timestep length (ps in metal units)
variable damp_qtb equal 1 #1/gamma where gamma is the friction coefficient in quantum thermal bath (ps in metal units)
## This part defines units, alpha-quartz crystal, and atomic information
#General
units metal
dimension 3
boundary p p p
atom_style charge
#Lattice
lattice custom 1.0 &
a1 4.916000 0.000000 0.000000 &
a2 -2.45800 4.257381 0.000000 &
a3 0.000000 0.000000 5.405400 &
&
basis 0.469700 0.000000 0.000000 &
basis 0.000000 0.469700 0.666667 &
basis 0.530300 0.530300 0.333333 &
&
basis 0.413500 0.266900 0.119100 &
basis 0.266900 0.413500 0.547567 &
basis 0.733100 0.146600 0.785767 &
basis 0.586500 0.853400 0.214233 &
basis 0.853400 0.586500 0.452433 &
basis 0.146600 0.733100 0.880900 #American Mineralogist 65 920 1980 (Space Group 154)
#Computational Cell
region orthorhombic_unit_cell block 0 4.916000 0 8.514762 0 5.405400 units box
create_box 2 orthorhombic_unit_cell
create_atoms 1 box &
basis 1 1 &
basis 2 1 &
basis 3 1 &
basis 4 2 &
basis 5 2 &
basis 6 2 &
basis 7 2 &
basis 8 2 &
basis 9 2
replicate ${x_rep} ${y_rep} ${z_rep}
#Atomic Information
mass 1 28.085500
mass 2 15.999400
set type 1 charge +2.4
set type 2 charge -1.2
## This part implements the BKS pair potential with a cut-off distance for the Buckingham term. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style buck/coul/long ${cut_off} #BKS interaction, PRL 64 1955 (1990)
pair_coeff 1 1 0.0 1.0 0.0
pair_coeff 1 2 18003.757200 0.205205 133.538100
pair_coeff 2 2 1388.773000 0.362319 175.000000
pair_modify shift yes
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
## This part equilibrates your crystal to a pressure of ${pressure}(unit pressure) and a temperature of ${temperature}(unit temperatureture) with quantum nuclear effects
variable p_damp equal ${delta_t}*1000 #Recommended pressure damping parameter in fix nph
fix scapegoat_qtb all nph iso ${pressure} ${pressure} ${p_damp} #NPH does the time integration
fix quartz_qtb all qtb temp ${temperature} damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100 #Change f_max (THz) if your Debye frequency is higher
thermo_style custom step temp press etotal vol lx ly lz pxx pyy pzz pxy pyz pxz
thermo 100
run 20000 # 20 ps
unfix quartz_qtb
unfix scapegoat_qtb

View File

@ -0,0 +1,79 @@
## This script first constructs an alpha quartz structure of a given size. It then uses fix qtb to equilibrate the computational cell to the specified temperature and pressure.
variable x_rep equal 2 #x-direction replication number
variable y_rep equal 2 #y-direction replication number
variable z_rep equal 2 #z-direction replication number
variable cut_off equal 10.0 #Cut-off distance for the Buckingham term (Angstrom in metal units)
variable pressure equal 1.03125 #Initial state pressure (bar in metal units)
variable temperature equal 300.0 #Initial state quantum temperature (K in metal units)
variable delta_t equal 1.0e-3 #MD timestep length (ps in metal units)
variable damp_qtb equal 1 #1/gamma where gamma is the friction coefficient in quantum thermal bath (ps in metal units)
## This part defines units, alpha-quartz crystal, and atomic information
#General
units metal
dimension 3
boundary p p p
atom_style charge
#Lattice
lattice custom 1.0 &
a1 4.916000 0.000000 0.000000 &
a2 -2.45800 4.257381 0.000000 &
a3 0.000000 0.000000 5.405400 &
&
basis 0.469700 0.000000 0.000000 &
basis 0.000000 0.469700 0.666667 &
basis 0.530300 0.530300 0.333333 &
&
basis 0.413500 0.266900 0.119100 &
basis 0.266900 0.413500 0.547567 &
basis 0.733100 0.146600 0.785767 &
basis 0.586500 0.853400 0.214233 &
basis 0.853400 0.586500 0.452433 &
basis 0.146600 0.733100 0.880900 #American Mineralogist 65 920 1980 (Space Group 154)
#Computational Cell
region orthorhombic_unit_cell block 0 4.916000 0 8.514762 0 5.405400 units box
create_box 2 orthorhombic_unit_cell
create_atoms 1 box &
basis 1 1 &
basis 2 1 &
basis 3 1 &
basis 4 2 &
basis 5 2 &
basis 6 2 &
basis 7 2 &
basis 8 2 &
basis 9 2
replicate ${x_rep} ${y_rep} ${z_rep}
#Atomic Information
mass 1 28.085500
mass 2 15.999400
set type 1 charge +2.4
set type 2 charge -1.2
## This part implements the BKS pair potential with a cut-off distance for the Buckingham term. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style buck/coul/long ${cut_off} #BKS interaction, PRL 64 1955 (1990)
pair_coeff 1 1 0.0 1.0 0.0
pair_coeff 1 2 18003.757200 0.205205 133.538100
pair_coeff 2 2 1388.773000 0.362319 175.000000
pair_modify shift yes
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
## This part equilibrates your crystal to a pressure of ${pressure}(unit pressure) and a temperature of ${temperature}(unit temperatureture) with quantum nuclear effects
variable p_damp equal ${delta_t}*1000 #Recommended pressure damping parameter in fix nph
fix scapegoat_qtb all nph iso ${pressure} ${pressure} ${p_damp} ptemp ${temperature} #NPH does the time integration
fix quartz_qtb all qtb temp ${temperature} damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100 #Change f_max (THz) if your Debye frequency is higher
thermo_style custom step temp press etotal vol lx ly lz pxx pyy pzz pxy pyz pxz
thermo 500
run 10000 # 20 ps
unfix quartz_qtb
unfix scapegoat_qtb

View File

@ -0,0 +1,152 @@
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
## This script first constructs an alpha quartz structure of a given size. It then uses fix qtb to equilibrate the computational cell to the specified temperature and pressure.
variable x_rep equal 2 #x-direction replication number
variable y_rep equal 2 #y-direction replication number
variable z_rep equal 2 #z-direction replication number
variable cut_off equal 10.0 #Cut-off distance for the Buckingham term (Angstrom in metal units)
variable pressure equal 1.03125 #Initial state pressure (bar in metal units)
variable temperature equal 300.0 #Initial state quantum temperature (K in metal units)
variable delta_t equal 1.0e-3 #MD timestep length (ps in metal units)
variable damp_qtb equal 1 #1/gamma where gamma is the friction coefficient in quantum thermal bath (ps in metal units)
## This part defines units, alpha-quartz crystal, and atomic information
#General
units metal
dimension 3
boundary p p p
atom_style charge
#Lattice
lattice custom 1.0 a1 4.916000 0.000000 0.000000 a2 -2.45800 4.257381 0.000000 a3 0.000000 0.000000 5.405400 basis 0.469700 0.000000 0.000000 basis 0.000000 0.469700 0.666667 basis 0.530300 0.530300 0.333333 basis 0.413500 0.266900 0.119100 basis 0.266900 0.413500 0.547567 basis 0.733100 0.146600 0.785767 basis 0.586500 0.853400 0.214233 basis 0.853400 0.586500 0.452433 basis 0.146600 0.733100 0.880900 #American Mineralogist 65 920 1980 (Space Group 154)
Lattice spacing in x,y,z = 7.374 4.25738 5.4054
#Computational Cell
region orthorhombic_unit_cell block 0 4.916000 0 8.514762 0 5.405400 units box
create_box 2 orthorhombic_unit_cell
Created orthogonal box = (0.0 0.0 0.0) to (4.916 8.514762 5.4054)
1 by 1 by 1 MPI processor grid
create_atoms 1 box basis 1 1 basis 2 1 basis 3 1 basis 4 2 basis 5 2 basis 6 2 basis 7 2 basis 8 2 basis 9 2
Created 18 atoms
create_atoms CPU = 0.000 seconds
replicate ${x_rep} ${y_rep} ${z_rep}
replicate 2 ${y_rep} ${z_rep}
replicate 2 2 ${z_rep}
replicate 2 2 2
orthogonal box = (0.0 0.0 0.0) to (9.832 17.029524 10.8108)
1 by 1 by 1 MPI processor grid
144 atoms
replicate CPU = 0.000219584 secs
#Atomic Information
mass 1 28.085500
mass 2 15.999400
set type 1 charge +2.4
48 settings made for charge
set type 2 charge -1.2
96 settings made for charge
## This part implements the BKS pair potential with a cut-off distance for the Buckingham term. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style buck/coul/long ${cut_off} #BKS interaction, PRL 64 1955 (1990)
pair_style buck/coul/long 10
pair_coeff 1 1 0.0 1.0 0.0
pair_coeff 1 2 18003.757200 0.205205 133.538100
pair_coeff 2 2 1388.773000 0.362319 175.000000
pair_modify shift yes
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
## This part equilibrates your crystal to a pressure of ${pressure}(unit pressure) and a temperature of ${temperature}(unit temperatureture) with quantum nuclear effects
variable p_damp equal ${delta_t}*1000 #Recommended pressure damping parameter in fix nph
variable p_damp equal 0.001*1000
fix scapegoat_qtb all nph iso ${pressure} ${pressure} ${p_damp} ptemp ${temperature} #NPH does the time integration
fix scapegoat_qtb all nph iso 1.03125 ${pressure} ${p_damp} ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 ${p_damp} ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 1 ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 1 ptemp 300
fix quartz_qtb all qtb temp ${temperature} damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100 #Change f_max (THz) if your Debye frequency is higher
fix quartz_qtb all qtb temp 300 damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100
fix quartz_qtb all qtb temp 300 damp 1 seed 35082 f_max 120.00 N_f 100
thermo_style custom step temp press etotal vol lx ly lz pxx pyy pzz pxy pyz pxz
thermo 500
run 10000 # 20 ps
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.307414
grid = 9 15 10
stencil order = 5
estimated absolute RMS force accuracy = 0.000822922
estimated relative force accuracy = 5.71487e-05
using double precision FFTW3
3d grid and FFT values/proc = 5984 1350
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 3 2
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 79.54 | 79.54 | 79.54 Mbytes
Step Temp Press TotEng Volume Lx Ly Lz Pxx Pyy Pzz Pxy Pyz Pxz
0 0 -34025.794 -2793.6041 1810.0985 9.832 17.029524 10.8108 -37478.502 -37477.413 -27121.466 -1.3649088e-10 1.3388978 5.8209479e-10
500 281.29079 -40385.348 -2786.6755 1844.5575 9.893999 17.136909 10.878971 -44649.574 -45631.516 -30874.953 -5970.3691 3630.1324 5208.8966
1000 405.39848 -15491.657 -2783.3315 1874.0851 9.9465141 17.227868 10.936714 -7770.4561 -21469.887 -17234.627 -4706.5632 -8313.9522 -5109.7918
1500 428.98568 -12118.951 -2781.3232 1874.1627 9.9466513 17.228106 10.936865 -11239.135 -11740.052 -13377.666 -3778.9317 -6220.1431 12775.412
2000 522.11905 -6687.482 -2779.2181 1855.9626 9.914349 17.172157 10.901347 -8016.0133 -10737.23 -1309.2028 -4980.3805 5270.2674 5848.5479
2500 496.74376 4264.2623 -2778.9979 1849.3244 9.9025147 17.151659 10.888335 -477.1374 3487.19 9782.7343 -4961.2016 2380.6522 4736.0758
3000 456.49628 2320.781 -2779.3844 1853.2925 9.9095923 17.163918 10.896117 5479.6232 -2954.3023 4437.022 3719.9287 4445.0723 -3278.5058
3500 485.20722 -7480.1789 -2778.6062 1859.6305 9.920876 17.183462 10.908524 -9340.6334 -6129.8494 -6970.0541 -7379.3507 1772.8159 334.33057
4000 527.61216 -13499.73 -2777.3433 1889.9405 9.9744857 17.276316 10.96747 -16483.038 -7465.2297 -16550.923 -2517.02 -1863.063 3314.927
4500 519.94117 721.60614 -2777.8506 1879.6562 9.9563603 17.244922 10.947541 -913.2791 -1765.7541 4843.8516 4466.5704 -14141.087 -6439.5669
5000 505.27757 -6278.3805 -2777.3641 1881.2931 9.9592497 17.249927 10.950718 -14254.233 -2653.6233 -1927.2858 1838.1568 5767.9267 597.47761
5500 500.70903 11303.821 -2777.8881 1871.0076 9.9410666 17.218433 10.930724 -6452.7947 24876.967 15487.29 522.01171 10473.257 9780.893
6000 526.65329 7991.2419 -2777.172 1856.9227 9.9160583 17.175117 10.903227 -68.823156 11005.468 13037.081 1253.9214 10039.559 1053.0486
6500 485.30026 12811.546 -2777.5866 1845.31 9.8953442 17.139239 10.88045 10063.921 20215.037 8155.6798 -3886.954 2249.2807 4855.0011
7000 507.85472 2649.7919 -2777.3359 1861.2877 9.923822 17.188564 10.911763 -4214.7779 6995.1472 5169.0064 -2188.489 6157.0955 533.65478
7500 528.5729 3161.4629 -2779.0851 1855.7946 9.9140499 17.171639 10.901018 2935.365 -2873.1363 9422.1601 771.1885 -4360.9131 4939.8209
8000 533.77283 4534.849 -2777.6538 1858.4772 9.9188246 17.179909 10.906268 -1187.9433 15739.396 -946.90551 -5187.8588 2446.5059 8079.2032
8500 518.71765 1108.9877 -2777.7019 1866.6125 9.9332765 17.20494 10.922159 8720.4976 -8234.9325 2841.3979 5148.5004 -2125.3524 -4127.7468
9000 536.71495 -496.88283 -2778.0262 1877.7099 9.9529227 17.238968 10.943761 -3481.5874 -4611.6246 6602.5634 -2788.5111 -13323.148 4338.813
9500 527.06773 -236.09043 -2778.1125 1895.9227 9.9849986 17.294525 10.97903 -12233.409 7578.0514 3947.0863 -6399.0254 995.22838 8590.7109
10000 526.77335 -4480.6866 -2777.7171 1886.8998 9.9691335 17.267046 10.961585 -3139.961 1336.993 -11639.092 13496.371 -11543.676 -6180.9262
Loop time of 8.86837 on 1 procs for 10000 steps with 144 atoms
Performance: 97.425 ns/day, 0.246 hours/ns, 1127.603 timesteps/s
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 6.1503 | 6.1503 | 6.1503 | 0.0 | 69.35
Kspace | 1.1522 | 1.1522 | 1.1522 | 0.0 | 12.99
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.11705 | 0.11705 | 0.11705 | 0.0 | 1.32
Output | 0.00035834 | 0.00035834 | 0.00035834 | 0.0 | 0.00
Modify | 1.4245 | 1.4245 | 1.4245 | 0.0 | 16.06
Other | | 0.02397 | | | 0.27
Nlocal: 144 ave 144 max 144 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 3804 ave 3804 max 3804 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 41952 ave 41952 max 41952 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 41952
Ave neighs/atom = 291.333
Neighbor list builds = 0
Dangerous builds = 0
unfix quartz_qtb
unfix scapegoat_qtb
Total wall time: 0:00:08

View File

@ -0,0 +1,152 @@
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
## This script first constructs an alpha quartz structure of a given size. It then uses fix qtb to equilibrate the computational cell to the specified temperature and pressure.
variable x_rep equal 2 #x-direction replication number
variable y_rep equal 2 #y-direction replication number
variable z_rep equal 2 #z-direction replication number
variable cut_off equal 10.0 #Cut-off distance for the Buckingham term (Angstrom in metal units)
variable pressure equal 1.03125 #Initial state pressure (bar in metal units)
variable temperature equal 300.0 #Initial state quantum temperature (K in metal units)
variable delta_t equal 1.0e-3 #MD timestep length (ps in metal units)
variable damp_qtb equal 1 #1/gamma where gamma is the friction coefficient in quantum thermal bath (ps in metal units)
## This part defines units, alpha-quartz crystal, and atomic information
#General
units metal
dimension 3
boundary p p p
atom_style charge
#Lattice
lattice custom 1.0 a1 4.916000 0.000000 0.000000 a2 -2.45800 4.257381 0.000000 a3 0.000000 0.000000 5.405400 basis 0.469700 0.000000 0.000000 basis 0.000000 0.469700 0.666667 basis 0.530300 0.530300 0.333333 basis 0.413500 0.266900 0.119100 basis 0.266900 0.413500 0.547567 basis 0.733100 0.146600 0.785767 basis 0.586500 0.853400 0.214233 basis 0.853400 0.586500 0.452433 basis 0.146600 0.733100 0.880900 #American Mineralogist 65 920 1980 (Space Group 154)
Lattice spacing in x,y,z = 7.374 4.25738 5.4054
#Computational Cell
region orthorhombic_unit_cell block 0 4.916000 0 8.514762 0 5.405400 units box
create_box 2 orthorhombic_unit_cell
Created orthogonal box = (0.0 0.0 0.0) to (4.916 8.514762 5.4054)
1 by 2 by 2 MPI processor grid
create_atoms 1 box basis 1 1 basis 2 1 basis 3 1 basis 4 2 basis 5 2 basis 6 2 basis 7 2 basis 8 2 basis 9 2
Created 18 atoms
create_atoms CPU = 0.000 seconds
replicate ${x_rep} ${y_rep} ${z_rep}
replicate 2 ${y_rep} ${z_rep}
replicate 2 2 ${z_rep}
replicate 2 2 2
orthogonal box = (0.0 0.0 0.0) to (9.832 17.029524 10.8108)
1 by 2 by 2 MPI processor grid
144 atoms
replicate CPU = 0.000231981 secs
#Atomic Information
mass 1 28.085500
mass 2 15.999400
set type 1 charge +2.4
48 settings made for charge
set type 2 charge -1.2
96 settings made for charge
## This part implements the BKS pair potential with a cut-off distance for the Buckingham term. Long range Coulomb interactions are evaluated with the pppm method.
#Pair Potentials
pair_style buck/coul/long ${cut_off} #BKS interaction, PRL 64 1955 (1990)
pair_style buck/coul/long 10
pair_coeff 1 1 0.0 1.0 0.0
pair_coeff 1 2 18003.757200 0.205205 133.538100
pair_coeff 2 2 1388.773000 0.362319 175.000000
pair_modify shift yes
kspace_style pppm 1.0e-4
#Neighbor style
neighbor 2.0 bin
neigh_modify check yes every 1 delay 0 page 100000 one 2000
## This part equilibrates your crystal to a pressure of ${pressure}(unit pressure) and a temperature of ${temperature}(unit temperatureture) with quantum nuclear effects
variable p_damp equal ${delta_t}*1000 #Recommended pressure damping parameter in fix nph
variable p_damp equal 0.001*1000
fix scapegoat_qtb all nph iso ${pressure} ${pressure} ${p_damp} ptemp ${temperature} #NPH does the time integration
fix scapegoat_qtb all nph iso 1.03125 ${pressure} ${p_damp} ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 ${p_damp} ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 1 ptemp ${temperature}
fix scapegoat_qtb all nph iso 1.03125 1.03125 1 ptemp 300
fix quartz_qtb all qtb temp ${temperature} damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100 #Change f_max (THz) if your Debye frequency is higher
fix quartz_qtb all qtb temp 300 damp ${damp_qtb} seed 35082 f_max 120.00 N_f 100
fix quartz_qtb all qtb temp 300 damp 1 seed 35082 f_max 120.00 N_f 100
thermo_style custom step temp press etotal vol lx ly lz pxx pyy pzz pxy pyz pxz
thermo 500
run 10000 # 20 ps
PPPM initialization ...
using 12-bit tables for long-range coulomb (src/kspace.cpp:332)
G vector (1/distance) = 0.307414
grid = 9 15 10
stencil order = 5
estimated absolute RMS force accuracy = 0.000822922
estimated relative force accuracy = 5.71487e-05
using double precision FFTW3
3d grid and FFT values/proc = 2688 405
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 2 3 2
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair buck/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/atomonly/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 79.08 | 79.08 | 79.09 Mbytes
Step Temp Press TotEng Volume Lx Ly Lz Pxx Pyy Pzz Pxy Pyz Pxz
0 0 -34025.794 -2793.6041 1810.0985 9.832 17.029524 10.8108 -37478.502 -37477.413 -27121.466 -5.9958847e-10 1.3388978 7.2750373e-10
500 222.04947 -50221.579 -2787.6677 1851.5661 9.9065143 17.158586 10.892732 -61493.697 -53512.432 -35658.61 4973.9976 7095.5481 -2041.6341
1000 361.92367 -14345.85 -2783.1509 1861.0579 9.9234137 17.187857 10.911314 -4145.4149 -28701.195 -10190.939 7896.3934 -3901.2874 -490.57107
1500 457.97039 -4934.8727 -2779.8321 1860.2254 9.9219337 17.185294 10.909687 -3680.7192 -3045.0707 -8078.8283 456.70383 -4705.3346 -2175.8144
2000 523.52684 -9516.755 -2778.5181 1866.3577 9.9328244 17.204157 10.921662 -11042.489 -7777.5634 -9730.2127 -2016.3336 6027.001 -4150.3656
2500 489.58881 -4968.5157 -2777.3948 1864.0745 9.9287723 17.197139 10.917206 -13652.344 -2823.514 1570.3111 -7481.9537 -1150.3548 10502.368
3000 559.52782 -2882.7076 -2777.5527 1883.2223 9.9626528 17.255821 10.95446 3061.1755 -10570.656 -1138.642 -12045.354 -856.20951 16292.443
3500 521.67929 9974.5929 -2776.7752 1880.5936 9.9580152 17.247789 10.94936 15358.559 7855.8683 6709.3509 7292.9372 -9848.9204 -523.61056
4000 497.90872 -2012.9259 -2776.5554 1862.1703 9.9253904 17.191281 10.913488 -1154.5123 4270.0275 -9154.2927 971.94826 -10157.618 4694.0509
4500 533.64016 -7218.9278 -2775.8789 1883.3041 9.962797 17.256071 10.954618 -18299.547 -5497.566 2140.3296 -1335.6063 -10353.21 5703.7506
5000 551.61416 1590.9702 -2777.6093 1866.2047 9.9325531 17.203687 10.921363 -4600.02 6535.3 2837.6306 3412.3383 9492.18 1017.5742
5500 499.36075 188.82067 -2777.9872 1863.2925 9.9273838 17.194734 10.91568 -3238.914 1143.013 2662.363 4193.7623 -11565.423 2575.9361
6000 478.563 4064.8319 -2778.946 1867.7185 9.935238 17.208337 10.924316 1947.7246 3346.7411 6900.0301 -6339.9554 4133.6942 -4555.406
6500 512.63865 10227.461 -2778.8476 1855.5323 9.9135828 17.17083 10.900505 7423.8967 7558.2024 15700.285 -621.4585 -2620.4837 -3256.7524
7000 489.9889 13037.303 -2778.8793 1856.2469 9.9148553 17.173034 10.901904 10690.345 16770.786 11650.779 -4056.5527 -5023.8847 469.21909
7500 495.52187 1320.5068 -2778.1189 1871.7467 9.9423755 17.2207 10.932164 1978.2905 738.78041 1244.4496 1826.0923 -7829.3563 1873.2713
8000 474.60945 -4203.2068 -2778.8915 1866.5966 9.9332482 17.204891 10.922128 -1480.6896 -12516.261 1387.3306 2731.4462 -1292.9741 10743.939
8500 473.16225 -6266.1992 -2778.594 1872.9075 9.9444304 17.224259 10.934423 -12680.492 -2832.6603 -3285.4455 7226.9632 3762.6841 -5834.9064
9000 486.6579 2843.7947 -2778.0388 1877.3735 9.9523282 17.237939 10.943107 805.23659 6213.7247 1512.4228 2685.2063 -3517.5266 -17054.035
9500 549.35112 -1028.3899 -2776.8124 1880.7965 9.9583733 17.248409 10.949754 -1817.8413 2754.8459 -4022.1743 -3101.1463 8397.2345 -8608.1342
10000 562.27081 12885.53 -2775.7435 1850.2864 9.9042316 17.154633 10.890222 15758.218 9989.5121 12908.859 -25.724137 -16691.374 267.85371
Loop time of 3.80648 on 4 procs for 10000 steps with 144 atoms
Performance: 226.981 ns/day, 0.106 hours/ns, 2627.100 timesteps/s
94.8% 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.3526 | 1.6581 | 1.9634 | 21.3 | 43.56
Kspace | 0.92143 | 1.2222 | 1.5232 | 24.7 | 32.11
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.31886 | 0.32256 | 0.32604 | 0.5 | 8.47
Output | 0.0003643 | 0.00083923 | 0.0022533 | 0.0 | 0.02
Modify | 0.39166 | 0.45985 | 0.52607 | 8.9 | 12.08
Other | | 0.143 | | | 3.76
Nlocal: 36 ave 36 max 36 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Nghost: 2614 ave 2614 max 2614 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Neighs: 10488 ave 12570 max 8406 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Total # of neighbors = 41952
Ave neighs/atom = 291.333
Neighbor list builds = 0
Dangerous builds = 0
unfix quartz_qtb
unfix scapegoat_qtb
Total wall time: 0:00:03

View File

@ -0,0 +1 @@
../../potentials/InP_JCPA2020.mliap

View File

@ -0,0 +1 @@
../../potentials/InP_JCPA2020.mliap.descriptor

View File

@ -0,0 +1 @@
../../potentials/InP_JCPA2020.mliap.model

1
examples/mliap/Ta06A.mliap Symbolic link
View File

@ -0,0 +1 @@
../../potentials/Ta06A.mliap

View File

@ -0,0 +1 @@
../../potentials/Ta06A.mliap.descriptor

View File

@ -0,0 +1 @@
../../potentials/Ta06A.mliap.model

View File

@ -0,0 +1 @@
../../potentials/W.quadratic.mliap

View File

@ -0,0 +1 @@
../../potentials/W.quadratic.mliap.descriptor

View File

@ -0,0 +1 @@
../../potentials/W.quadratic.mliap.model

View File

@ -0,0 +1 @@
../../potentials/WBe_Wood_PRB2019.mliap

View File

@ -0,0 +1 @@
../../potentials/WBe_Wood_PRB2019.mliap.descriptor

View File

@ -0,0 +1 @@
../../potentials/WBe_Wood_PRB2019.mliap.model

View File

@ -0,0 +1,53 @@
# Demonstrate MLIAP interface to kinear SNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.316
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable ny equal ${nrep}
variable nz equal ${nrep}
boundary p p p
lattice bcc $a
region box block 0 ${nx} 0 ${ny} 0 ${nz}
create_box 1 box
create_atoms 1 box
mass 1 180.88
# choose potential
include Ta06A.mliap
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -0,0 +1,56 @@
# Demonstrate MLIAP interface to SNAP W-Be potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable ny equal ${nrep}
variable nz equal ${nrep}
boundary p p p
lattice bcc $a
region box block 0 ${nx} 0 ${ny} 0 ${nz}
create_box 2 box
create_atoms 1 box
mass 1 183.84
mass 2 9.012182
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
group tungsten type 1
group beryllium type 2
# choose potential
include WBe_Wood_PRB2019.mliap
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -0,0 +1,46 @@
# Demonstrate MLIAP interface to ChemSNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 5.83
units metal
# generate the box and atom positions using a FCC lattice
variable nx equal ${nrep}
variable ny equal ${nrep}
variable nz equal ${nrep}
boundary p p p
lattice diamond $a
region box block 0 ${nx} 0 ${ny} 0 ${nz}
create_box 2 box
create_atoms 1 box basis 5 2 basis 6 2 basis 7 2 basis 8 2
mass 1 114.76
mass 2 30.98
# choose potential
include InP_JCPA2020.mliap
# Setup output
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -0,0 +1,55 @@
# Demonstrate MLIAP interface to quadratic SNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable ny equal ${nrep}
variable nz equal ${nrep}
boundary p p p
lattice bcc $a
region box block 0 ${nx} 0 ${ny} 0 ${nz}
create_box 1 box
create_atoms 1 box
displace_atoms all random 0.01 0.01 0.01 12345
mass 1 183.84
# choose potential
include W.quadratic.mliap
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check no
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -0,0 +1,156 @@
LAMMPS (15 Jun 2020)
# Demonstrate MLIAP interface to kinear SNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.316
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice bcc $a
lattice bcc 3.316
Lattice spacing in x,y,z = 3.316 3.316 3.316
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (13.264 13.264 13.264)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000 seconds
mass 1 180.88
# choose potential
include Ta06A.mliap
# DATE: 2014-09-05 UNITS: metal CONTRIBUTOR: Aidan Thompson athomps@sandia.gov CITATION: Thompson, Swiler, Trott, Foiles and Tucker, arxiv.org, 1409.3880 (2014)
# Definition of SNAP potential Ta_Cand06A
# Assumes 1 LAMMPS atom type
variable zblcutinner equal 4
variable zblcutouter equal 4.8
variable zblz equal 73
# Specify hybrid with SNAP, ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} mliap model linear Ta06A.mliap.model descriptor sna Ta06A.mliap.descriptor
pair_style hybrid/overlay zbl 4 ${zblcutouter} mliap model linear Ta06A.mliap.model descriptor sna Ta06A.mliap.descriptor
pair_style hybrid/overlay zbl 4 4.8 mliap model linear Ta06A.mliap.model descriptor sna Ta06A.mliap.descriptor
Reading potential file Ta06A.mliap.model with DATE: 2014-09-05
Reading potential file Ta06A.mliap.descriptor with DATE: 2014-09-05
SNAP keyword rcutfac 4.67637
SNAP keyword twojmax 6
SNAP keyword nelems 1
SNAP keyword elems Ta
SNAP keyword radelems 0.5
SNAP keyword welems 1
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword bzeroflag 0
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 73 ${zblz}
pair_coeff 1 1 zbl 73 73
pair_coeff * * mliap Ta
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.8
ghost atom cutoff = 5.8
binsize = 2.9, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair mliap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.592 | 6.592 | 6.592 Mbytes
Step Temp E_pair c_energy TotEng Press v_press
0 300 -11.85157 -11.85157 -11.813095 2717.1661 -2717.1661
10 296.01467 -11.851059 -11.851059 -11.813095 2697.4796 -2697.4796
20 284.53666 -11.849587 -11.849587 -11.813095 2289.1527 -2289.1527
30 266.51577 -11.847275 -11.847275 -11.813095 1851.7131 -1851.7131
40 243.05007 -11.844266 -11.844266 -11.813095 1570.684 -1570.684
50 215.51032 -11.840734 -11.840734 -11.813094 1468.1899 -1468.1899
60 185.48331 -11.836883 -11.836883 -11.813094 1524.8757 -1524.8757
70 154.6736 -11.832931 -11.832931 -11.813094 1698.3351 -1698.3351
80 124.79303 -11.829099 -11.829099 -11.813094 1947.0715 -1947.0715
90 97.448054 -11.825592 -11.825592 -11.813094 2231.9563 -2231.9563
100 74.035418 -11.822589 -11.822589 -11.813094 2515.8526 -2515.8526
Loop time of 0.931876 on 1 procs for 100 steps with 128 atoms
Performance: 4.636 ns/day, 5.177 hours/ns, 107.310 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.93067 | 0.93067 | 0.93067 | 0.0 | 99.87
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.000377 | 0.000377 | 0.000377 | 0.0 | 0.04
Output | 0.000467 | 0.000467 | 0.000467 | 0.0 | 0.05
Modify | 0.000162 | 0.000162 | 0.000162 | 0.0 | 0.02
Other | | 0.000196 | | | 0.02
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 727 ave 727 max 727 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 3712 ave 3712 max 3712 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 7424 ave 7424 max 7424 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -0,0 +1,156 @@
LAMMPS (15 Jun 2020)
# Demonstrate MLIAP interface to kinear SNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.316
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice bcc $a
lattice bcc 3.316
Lattice spacing in x,y,z = 3.316 3.316 3.316
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (13.264 13.264 13.264)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000 seconds
mass 1 180.88
# choose potential
include Ta06A.mliap
# DATE: 2014-09-05 UNITS: metal CONTRIBUTOR: Aidan Thompson athomps@sandia.gov CITATION: Thompson, Swiler, Trott, Foiles and Tucker, arxiv.org, 1409.3880 (2014)
# Definition of SNAP potential Ta_Cand06A
# Assumes 1 LAMMPS atom type
variable zblcutinner equal 4
variable zblcutouter equal 4.8
variable zblz equal 73
# Specify hybrid with SNAP, ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} mliap model linear Ta06A.mliap.model descriptor sna Ta06A.mliap.descriptor
pair_style hybrid/overlay zbl 4 ${zblcutouter} mliap model linear Ta06A.mliap.model descriptor sna Ta06A.mliap.descriptor
pair_style hybrid/overlay zbl 4 4.8 mliap model linear Ta06A.mliap.model descriptor sna Ta06A.mliap.descriptor
Reading potential file Ta06A.mliap.model with DATE: 2014-09-05
Reading potential file Ta06A.mliap.descriptor with DATE: 2014-09-05
SNAP keyword rcutfac 4.67637
SNAP keyword twojmax 6
SNAP keyword nelems 1
SNAP keyword elems Ta
SNAP keyword radelems 0.5
SNAP keyword welems 1
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword bzeroflag 0
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 73 ${zblz}
pair_coeff 1 1 zbl 73 73
pair_coeff * * mliap Ta
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.8
ghost atom cutoff = 5.8
binsize = 2.9, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair mliap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.528 | 6.528 | 6.528 Mbytes
Step Temp E_pair c_energy TotEng Press v_press
0 300 -11.85157 -11.85157 -11.813095 2717.1661 -2717.1661
10 296.01467 -11.851059 -11.851059 -11.813095 2697.4796 -2697.4796
20 284.53666 -11.849587 -11.849587 -11.813095 2289.1527 -2289.1527
30 266.51577 -11.847275 -11.847275 -11.813095 1851.7131 -1851.7131
40 243.05007 -11.844266 -11.844266 -11.813095 1570.684 -1570.684
50 215.51032 -11.840734 -11.840734 -11.813094 1468.1899 -1468.1899
60 185.48331 -11.836883 -11.836883 -11.813094 1524.8757 -1524.8757
70 154.6736 -11.832931 -11.832931 -11.813094 1698.3351 -1698.3351
80 124.79303 -11.829099 -11.829099 -11.813094 1947.0715 -1947.0715
90 97.448054 -11.825592 -11.825592 -11.813094 2231.9563 -2231.9563
100 74.035418 -11.822589 -11.822589 -11.813094 2515.8526 -2515.8526
Loop time of 0.256886 on 4 procs for 100 steps with 128 atoms
Performance: 16.817 ns/day, 1.427 hours/ns, 389.278 timesteps/s
99.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.24436 | 0.24636 | 0.25027 | 0.5 | 95.90
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.005652 | 0.0095395 | 0.01154 | 2.4 | 3.71
Output | 0.000472 | 0.0005085 | 0.000617 | 0.0 | 0.20
Modify | 6.2e-05 | 6.75e-05 | 7.3e-05 | 0.0 | 0.03
Other | | 0.0004105 | | | 0.16
Nlocal: 32 ave 32 max 32 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Nghost: 431 ave 431 max 431 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Neighs: 928 ave 928 max 928 min
Histogram: 4 0 0 0 0 0 0 0 0 0
FullNghs: 1856 ave 1856 max 1856 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -0,0 +1,165 @@
LAMMPS (15 Jun 2020)
# Demonstrate MLIAP interface to SNAP W-Be potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000 seconds
mass 1 183.84
mass 2 9.012182
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
5 settings made for type/fractiongroup tungsten type 1
123 atoms in group tungsten
group beryllium type 2
5 atoms in group beryllium
# choose potential
include WBe_Wood_PRB2019.mliap
# DATE: 2019-09-18 UNITS: metal CONTRIBUTOR: Mary Alice Cusentino mcusent@sandia.gov CITATION: M.A. Wood, M.A. Cusentino, B.D. Wirth, and A.P. Thompson, "Data-driven material models for atomistic simulation", Physical Review B 99, 184305 (2019)
# Definition of SNAP+ZBL potential.
variable zblcutinner equal 4
variable zblcutouter equal 4.8
variable zblz1 equal 74
variable zblz2 equal 4
# Specify hybrid with SNAP and ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} mliap model linear WBe_Wood_PRB2019.mliap.model descriptor sna WBe_Wood_PRB2019.mliap.descriptor
pair_style hybrid/overlay zbl 4 ${zblcutouter} mliap model linear WBe_Wood_PRB2019.mliap.model descriptor sna WBe_Wood_PRB2019.mliap.descriptor
pair_style hybrid/overlay zbl 4 4.8 mliap model linear WBe_Wood_PRB2019.mliap.model descriptor sna WBe_Wood_PRB2019.mliap.descriptor
Reading potential file WBe_Wood_PRB2019.mliap.model with DATE: 2019-09-18
Reading potential file WBe_Wood_PRB2019.mliap.descriptor with DATE: 2019-09-18
SNAP keyword rcutfac 4.8123
SNAP keyword twojmax 8
SNAP keyword nelems 2
SNAP keyword elems W
SNAP keyword radelems 0.5
SNAP keyword welems 1
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword bzeroflag 1
pair_coeff 1 1 zbl ${zblz1} ${zblz1}
pair_coeff 1 1 zbl 74 ${zblz1}
pair_coeff 1 1 zbl 74 74
pair_coeff 1 2 zbl ${zblz1} ${zblz2}
pair_coeff 1 2 zbl 74 ${zblz2}
pair_coeff 1 2 zbl 74 4
pair_coeff 2 2 zbl ${zblz2} ${zblz2}
pair_coeff 2 2 zbl 4 ${zblz2}
pair_coeff 2 2 zbl 4 4
pair_coeff * * mliap W Be
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.8123
ghost atom cutoff = 5.8123
binsize = 2.90615, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair mliap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.893 | 6.893 | 6.893 Mbytes
Step Temp E_pair c_energy TotEng Press v_press
0 300 -8.5980876 -8.5980876 -8.5596125 -35284.855 35284.855
10 296.32664 -8.5976164 -8.5976164 -8.5596124 -35188.339 35188.339
20 282.41417 -8.595832 -8.595832 -8.5596123 -34782.293 34782.293
30 259.69014 -8.5929175 -8.5929175 -8.5596121 -34113.316 34113.316
40 230.50415 -8.5891741 -8.5891741 -8.5596119 -33260.777 33260.777
50 197.88816 -8.5849908 -8.5849908 -8.5596116 -32309.975 32309.975
60 165.27259 -8.5808076 -8.5808076 -8.5596113 -31365.766 31365.766
70 136.15697 -8.5770733 -8.5770733 -8.5596111 -30542.657 30542.657
80 113.58947 -8.5741788 -8.5741788 -8.5596109 -29939.23 29939.23
90 99.477916 -8.572369 -8.572369 -8.5596109 -29619.939 29619.939
100 94.121939 -8.5716822 -8.5716822 -8.559611 -29598.002 29598.002
Loop time of 2.95019 on 1 procs for 100 steps with 128 atoms
Performance: 1.464 ns/day, 16.390 hours/ns, 33.896 timesteps/s
99.8% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 2.9486 | 2.9486 | 2.9486 | 0.0 | 99.95
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.000379 | 0.000379 | 0.000379 | 0.0 | 0.01
Output | 0.000633 | 0.000633 | 0.000633 | 0.0 | 0.02
Modify | 0.000207 | 0.000207 | 0.000207 | 0.0 | 0.01
Other | | 0.000341 | | | 0.01
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 727 ave 727 max 727 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 3712 ave 3712 max 3712 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 7424 ave 7424 max 7424 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:03

View File

@ -0,0 +1,165 @@
LAMMPS (15 Jun 2020)
# Demonstrate MLIAP interface to SNAP W-Be potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000 seconds
mass 1 183.84
mass 2 9.012182
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
5 settings made for type/fractiongroup tungsten type 1
123 atoms in group tungsten
group beryllium type 2
5 atoms in group beryllium
# choose potential
include WBe_Wood_PRB2019.mliap
# DATE: 2019-09-18 UNITS: metal CONTRIBUTOR: Mary Alice Cusentino mcusent@sandia.gov CITATION: M.A. Wood, M.A. Cusentino, B.D. Wirth, and A.P. Thompson, "Data-driven material models for atomistic simulation", Physical Review B 99, 184305 (2019)
# Definition of SNAP+ZBL potential.
variable zblcutinner equal 4
variable zblcutouter equal 4.8
variable zblz1 equal 74
variable zblz2 equal 4
# Specify hybrid with SNAP and ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} mliap model linear WBe_Wood_PRB2019.mliap.model descriptor sna WBe_Wood_PRB2019.mliap.descriptor
pair_style hybrid/overlay zbl 4 ${zblcutouter} mliap model linear WBe_Wood_PRB2019.mliap.model descriptor sna WBe_Wood_PRB2019.mliap.descriptor
pair_style hybrid/overlay zbl 4 4.8 mliap model linear WBe_Wood_PRB2019.mliap.model descriptor sna WBe_Wood_PRB2019.mliap.descriptor
Reading potential file WBe_Wood_PRB2019.mliap.model with DATE: 2019-09-18
Reading potential file WBe_Wood_PRB2019.mliap.descriptor with DATE: 2019-09-18
SNAP keyword rcutfac 4.8123
SNAP keyword twojmax 8
SNAP keyword nelems 2
SNAP keyword elems W
SNAP keyword radelems 0.5
SNAP keyword welems 1
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword bzeroflag 1
pair_coeff 1 1 zbl ${zblz1} ${zblz1}
pair_coeff 1 1 zbl 74 ${zblz1}
pair_coeff 1 1 zbl 74 74
pair_coeff 1 2 zbl ${zblz1} ${zblz2}
pair_coeff 1 2 zbl 74 ${zblz2}
pair_coeff 1 2 zbl 74 4
pair_coeff 2 2 zbl ${zblz2} ${zblz2}
pair_coeff 2 2 zbl 4 ${zblz2}
pair_coeff 2 2 zbl 4 4
pair_coeff * * mliap W Be
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.8123
ghost atom cutoff = 5.8123
binsize = 2.90615, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair mliap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.793 | 6.793 | 6.793 Mbytes
Step Temp E_pair c_energy TotEng Press v_press
0 300 -8.5980876 -8.5980876 -8.5596125 -35284.855 35284.855
10 296.32664 -8.5976164 -8.5976164 -8.5596124 -35188.339 35188.339
20 282.41417 -8.595832 -8.595832 -8.5596123 -34782.293 34782.293
30 259.69014 -8.5929175 -8.5929175 -8.5596121 -34113.316 34113.316
40 230.50415 -8.5891741 -8.5891741 -8.5596119 -33260.777 33260.777
50 197.88816 -8.5849908 -8.5849908 -8.5596116 -32309.975 32309.975
60 165.27259 -8.5808076 -8.5808076 -8.5596113 -31365.766 31365.766
70 136.15697 -8.5770733 -8.5770733 -8.5596111 -30542.657 30542.657
80 113.58947 -8.5741788 -8.5741788 -8.5596109 -29939.23 29939.23
90 99.477916 -8.572369 -8.572369 -8.5596109 -29619.939 29619.939
100 94.121939 -8.5716822 -8.5716822 -8.559611 -29598.002 29598.002
Loop time of 0.897476 on 4 procs for 100 steps with 128 atoms
Performance: 4.813 ns/day, 4.986 hours/ns, 111.424 timesteps/s
99.7% 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.84854 | 0.85737 | 0.87512 | 1.1 | 95.53
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.021045 | 0.038782 | 0.047601 | 5.3 | 4.32
Output | 0.00061 | 0.0006525 | 0.000774 | 0.0 | 0.07
Modify | 0.00011 | 0.00011375 | 0.000117 | 0.0 | 0.01
Other | | 0.0005625 | | | 0.06
Nlocal: 32 ave 32 max 32 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Nghost: 431 ave 431 max 431 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Neighs: 928 ave 928 max 928 min
Histogram: 4 0 0 0 0 0 0 0 0 0
FullNghs: 1856 ave 1856 max 1856 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -0,0 +1,158 @@
LAMMPS (15 Jun 2020)
# Demonstrate MLIAP interface to ChemSNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 5.83
units metal
# generate the box and atom positions using a FCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice diamond $a
lattice diamond 5.83
Lattice spacing in x,y,z = 5.83 5.83 5.83
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (23.32 23.32 23.32)
1 by 1 by 1 MPI processor grid
create_atoms 1 box basis 5 2 basis 6 2 basis 7 2 basis 8 2
Created 512 atoms
create_atoms CPU = 0.000 seconds
mass 1 114.76
mass 2 30.98
# choose potential
include InP_JCPA2020.mliap
# DATE: 2020-06-01 UNITS: metal CONTRIBUTOR: Mary Alice Cusentino mcusent@sandia.gov CITATION: M.A. Cusentino, M. A. Wood, and A.P. Thompson, "Explicit Multi-element Extension of the Spectral Neighbor Analysis Potential for Chemically Complex Systems", J. Phys. Chem. A, xxxxxx (2020)
# Definition of SNAP+ZBL potential.
variable zblcutinner index 4
variable zblcutouter index 4.2
variable zblz1 index 49
variable zblz2 index 15
# Specify hybrid with SNAP and ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} mliap model linear InP_JCPA2020.mliap.model descriptor sna InP_JCPA2020.mliap.descriptor
pair_style hybrid/overlay zbl 4 ${zblcutouter} mliap model linear InP_JCPA2020.mliap.model descriptor sna InP_JCPA2020.mliap.descriptor
pair_style hybrid/overlay zbl 4 4.2 mliap model linear InP_JCPA2020.mliap.model descriptor sna InP_JCPA2020.mliap.descriptor
Reading potential file InP_JCPA2020.mliap.model with DATE: 2020-06-01
Reading potential file InP_JCPA2020.mliap.descriptor with DATE: 2020-06-01
SNAP keyword rcutfac 1.0
SNAP keyword twojmax 6
SNAP keyword nelems 2
SNAP keyword elems In
SNAP keyword radelems 3.81205
SNAP keyword welems 1
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0.0
SNAP keyword bzeroflag 1
SNAP keyword wselfallflag 1
SNAP keyword chemflag 1
SNAP keyword bnormflag 1
pair_coeff 1 1 zbl ${zblz1} ${zblz1}
pair_coeff 1 1 zbl 49 ${zblz1}
pair_coeff 1 1 zbl 49 49
pair_coeff 1 2 zbl ${zblz1} ${zblz2}
pair_coeff 1 2 zbl 49 ${zblz2}
pair_coeff 1 2 zbl 49 15
pair_coeff 2 2 zbl ${zblz2} ${zblz2}
pair_coeff 2 2 zbl 15 ${zblz2}
pair_coeff 2 2 zbl 15 15
pair_coeff * * mliap In P
# Setup output
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 8.6589
ghost atom cutoff = 8.6589
binsize = 4.32945, bins = 6 6 6
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair mliap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.03 | 6.03 | 6.03 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -3.4805794 0 -3.4418771 1353.5968
10 285.84677 -3.4787531 0 -3.4418766 1611.7131
20 248.14649 -3.4738884 0 -3.4418756 2312.0308
30 198.94136 -3.4675394 0 -3.4418744 3168.1543
40 152.74831 -3.4615791 0 -3.4418734 3903.5749
50 121.9796 -3.4576091 0 -3.4418728 4387.1254
60 113.27555 -3.4564863 0 -3.4418729 4556.3003
70 125.68089 -3.4580873 0 -3.4418735 4431.2083
80 151.47475 -3.4614159 0 -3.4418745 4107.2369
90 179.18708 -3.4649919 0 -3.4418754 3739.5881
100 197.50662 -3.4673559 0 -3.441876 3492.7778
Loop time of 16.748 on 1 procs for 100 steps with 512 atoms
Performance: 0.258 ns/day, 93.045 hours/ns, 5.971 timesteps/s
99.9% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 16.746 | 16.746 | 16.746 | 0.0 | 99.99
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.001033 | 0.001033 | 0.001033 | 0.0 | 0.01
Output | 0.000235 | 0.000235 | 0.000235 | 0.0 | 0.00
Modify | 0.000688 | 0.000688 | 0.000688 | 0.0 | 0.00
Other | | 0.000497 | | | 0.00
Nlocal: 512 ave 512 max 512 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1959 ave 1959 max 1959 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 31232 ave 31232 max 31232 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 62464 ave 62464 max 62464 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 62464
Ave neighs/atom = 122
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:17

View File

@ -0,0 +1,158 @@
LAMMPS (15 Jun 2020)
# Demonstrate MLIAP interface to ChemSNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 5.83
units metal
# generate the box and atom positions using a FCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice diamond $a
lattice diamond 5.83
Lattice spacing in x,y,z = 5.83 5.83 5.83
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (23.32 23.32 23.32)
1 by 2 by 2 MPI processor grid
create_atoms 1 box basis 5 2 basis 6 2 basis 7 2 basis 8 2
Created 512 atoms
create_atoms CPU = 0.000 seconds
mass 1 114.76
mass 2 30.98
# choose potential
include InP_JCPA2020.mliap
# DATE: 2020-06-01 UNITS: metal CONTRIBUTOR: Mary Alice Cusentino mcusent@sandia.gov CITATION: M.A. Cusentino, M. A. Wood, and A.P. Thompson, "Explicit Multi-element Extension of the Spectral Neighbor Analysis Potential for Chemically Complex Systems", J. Phys. Chem. A, xxxxxx (2020)
# Definition of SNAP+ZBL potential.
variable zblcutinner index 4
variable zblcutouter index 4.2
variable zblz1 index 49
variable zblz2 index 15
# Specify hybrid with SNAP and ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} mliap model linear InP_JCPA2020.mliap.model descriptor sna InP_JCPA2020.mliap.descriptor
pair_style hybrid/overlay zbl 4 ${zblcutouter} mliap model linear InP_JCPA2020.mliap.model descriptor sna InP_JCPA2020.mliap.descriptor
pair_style hybrid/overlay zbl 4 4.2 mliap model linear InP_JCPA2020.mliap.model descriptor sna InP_JCPA2020.mliap.descriptor
Reading potential file InP_JCPA2020.mliap.model with DATE: 2020-06-01
Reading potential file InP_JCPA2020.mliap.descriptor with DATE: 2020-06-01
SNAP keyword rcutfac 1.0
SNAP keyword twojmax 6
SNAP keyword nelems 2
SNAP keyword elems In
SNAP keyword radelems 3.81205
SNAP keyword welems 1
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0.0
SNAP keyword bzeroflag 1
SNAP keyword wselfallflag 1
SNAP keyword chemflag 1
SNAP keyword bnormflag 1
pair_coeff 1 1 zbl ${zblz1} ${zblz1}
pair_coeff 1 1 zbl 49 ${zblz1}
pair_coeff 1 1 zbl 49 49
pair_coeff 1 2 zbl ${zblz1} ${zblz2}
pair_coeff 1 2 zbl 49 ${zblz2}
pair_coeff 1 2 zbl 49 15
pair_coeff 2 2 zbl ${zblz2} ${zblz2}
pair_coeff 2 2 zbl 15 ${zblz2}
pair_coeff 2 2 zbl 15 15
pair_coeff * * mliap In P
# Setup output
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 8.6589
ghost atom cutoff = 8.6589
binsize = 4.32945, bins = 6 6 6
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair mliap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 4.591 | 4.591 | 4.591 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -3.4805794 0 -3.4418771 1353.5968
10 285.84677 -3.4787531 0 -3.4418766 1611.7131
20 248.14649 -3.4738884 0 -3.4418756 2312.0308
30 198.94136 -3.4675394 0 -3.4418744 3168.1543
40 152.74831 -3.4615791 0 -3.4418734 3903.5749
50 121.9796 -3.4576091 0 -3.4418728 4387.1254
60 113.27555 -3.4564863 0 -3.4418729 4556.3003
70 125.68089 -3.4580873 0 -3.4418735 4431.2083
80 151.47475 -3.4614159 0 -3.4418745 4107.2369
90 179.18708 -3.4649919 0 -3.4418754 3739.5881
100 197.50662 -3.4673559 0 -3.441876 3492.7778
Loop time of 5.01913 on 4 procs for 100 steps with 512 atoms
Performance: 0.861 ns/day, 27.884 hours/ns, 19.924 timesteps/s
99.7% CPU use with 4 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 4.9328 | 4.9409 | 4.952 | 0.3 | 98.44
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.065669 | 0.076754 | 0.084728 | 2.5 | 1.53
Output | 0.000173 | 0.00028775 | 0.000617 | 0.0 | 0.01
Modify | 0.000256 | 0.00026675 | 0.000281 | 0.0 | 0.01
Other | | 0.0009633 | | | 0.02
Nlocal: 128 ave 128 max 128 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Nghost: 1099 ave 1099 max 1099 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Neighs: 7808 ave 7808 max 7808 min
Histogram: 4 0 0 0 0 0 0 0 0 0
FullNghs: 15616 ave 15616 max 15616 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Total # of neighbors = 62464
Ave neighs/atom = 122
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:05

View File

@ -0,0 +1,151 @@
LAMMPS (15 Jun 2020)
# Demonstrate MLIAP interface to quadratic SNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000 seconds
displace_atoms all random 0.01 0.01 0.01 12345
mass 1 183.84
# choose potential
include W.quadratic.mliap
# Definition of SNAP+ZBL potential.
variable zblcutinner equal 4
variable zblcutouter equal 4.8
variable zblz equal 74
# Specify hybrid with SNAP and ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} mliap model quadratic W.quadratic.mliap.model descriptor sna W.quadratic.mliap.descriptor
pair_style hybrid/overlay zbl 4 ${zblcutouter} mliap model quadratic W.quadratic.mliap.model descriptor sna W.quadratic.mliap.descriptor
pair_style hybrid/overlay zbl 4 4.8 mliap model quadratic W.quadratic.mliap.model descriptor sna W.quadratic.mliap.descriptor
SNAP keyword rcutfac 4.73442
SNAP keyword twojmax 6
SNAP keyword nelems 1
SNAP keyword elems W
SNAP keyword radelems 0.5
SNAP keyword welems 1
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword bzeroflag 1
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 74 ${zblz}
pair_coeff 1 1 zbl 74 74
pair_coeff * * mliap W
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check no
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.8
ghost atom cutoff = 5.8
binsize = 2.9, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair mliap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.093 | 6.093 | 6.093 Mbytes
Step Temp E_pair c_energy TotEng Press v_press
0 300 -1.1602728 -1.1602728 -1.1217977 600047.3 -600047.3
10 288.46387 -1.1587932 -1.1587932 -1.1217976 600359.75 -600359.75
20 268.69718 -1.1562579 -1.1562579 -1.1217974 600870.22 -600870.22
30 243.19855 -1.1529874 -1.1529874 -1.1217971 601511.5 -601511.5
40 215.13122 -1.1493875 -1.1493875 -1.1217969 602202.36 -602202.36
50 187.82673 -1.1458855 -1.1458855 -1.1217966 602860.26 -602860.26
60 164.26822 -1.1428639 -1.1428639 -1.1217965 603413.25 -603413.25
70 146.65179 -1.1406045 -1.1406045 -1.1217964 603809.35 -603809.35
80 136.10769 -1.1392522 -1.1392522 -1.1217964 604022.32 -604022.32
90 132.62756 -1.138806 -1.138806 -1.1217964 604053.33 -604053.33
100 135.19841 -1.1391358 -1.1391358 -1.1217966 603928.48 -603928.48
Loop time of 1.69996 on 1 procs for 100 steps with 128 atoms
Performance: 2.541 ns/day, 9.444 hours/ns, 58.825 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 | 1.6676 | 1.6676 | 1.6676 | 0.0 | 98.09
Neigh | 0.03029 | 0.03029 | 0.03029 | 0.0 | 1.78
Comm | 0.001238 | 0.001238 | 0.001238 | 0.0 | 0.07
Output | 0.000452 | 0.000452 | 0.000452 | 0.0 | 0.03
Modify | 0.000175 | 0.000175 | 0.000175 | 0.0 | 0.01
Other | | 0.000241 | | | 0.01
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 727 ave 727 max 727 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 3712 ave 3712 max 3712 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 7424 ave 7424 max 7424 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 100
Dangerous builds not checked
Total wall time: 0:00:01

View File

@ -0,0 +1,151 @@
LAMMPS (15 Jun 2020)
# Demonstrate MLIAP interface to quadratic SNAP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000 seconds
displace_atoms all random 0.01 0.01 0.01 12345
mass 1 183.84
# choose potential
include W.quadratic.mliap
# Definition of SNAP+ZBL potential.
variable zblcutinner equal 4
variable zblcutouter equal 4.8
variable zblz equal 74
# Specify hybrid with SNAP and ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} mliap model quadratic W.quadratic.mliap.model descriptor sna W.quadratic.mliap.descriptor
pair_style hybrid/overlay zbl 4 ${zblcutouter} mliap model quadratic W.quadratic.mliap.model descriptor sna W.quadratic.mliap.descriptor
pair_style hybrid/overlay zbl 4 4.8 mliap model quadratic W.quadratic.mliap.model descriptor sna W.quadratic.mliap.descriptor
SNAP keyword rcutfac 4.73442
SNAP keyword twojmax 6
SNAP keyword nelems 1
SNAP keyword elems W
SNAP keyword radelems 0.5
SNAP keyword welems 1
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword bzeroflag 1
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 74 ${zblz}
pair_coeff 1 1 zbl 74 74
pair_coeff * * mliap W
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check no
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check no
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.8
ghost atom cutoff = 5.8
binsize = 2.9, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair mliap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.031 | 6.032 | 6.033 Mbytes
Step Temp E_pair c_energy TotEng Press v_press
0 300 -1.1602728 -1.1602728 -1.1217977 600047.3 -600047.3
10 288.46387 -1.1587932 -1.1587932 -1.1217976 600359.75 -600359.75
20 268.69718 -1.1562579 -1.1562579 -1.1217974 600870.22 -600870.22
30 243.19855 -1.1529874 -1.1529874 -1.1217971 601511.5 -601511.5
40 215.13122 -1.1493875 -1.1493875 -1.1217969 602202.36 -602202.36
50 187.82673 -1.1458855 -1.1458855 -1.1217966 602860.26 -602860.26
60 164.26822 -1.1428639 -1.1428639 -1.1217965 603413.25 -603413.25
70 146.65179 -1.1406045 -1.1406045 -1.1217964 603809.35 -603809.35
80 136.10769 -1.1392522 -1.1392522 -1.1217964 604022.32 -604022.32
90 132.62756 -1.138806 -1.138806 -1.1217964 604053.33 -604053.33
100 135.19841 -1.1391358 -1.1391358 -1.1217966 603928.48 -603928.48
Loop time of 0.520935 on 4 procs for 100 steps with 128 atoms
Performance: 8.293 ns/day, 2.894 hours/ns, 191.963 timesteps/s
99.7% 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.4001 | 0.44784 | 0.49877 | 6.8 | 85.97
Neigh | 0.00728 | 0.0080255 | 0.008793 | 0.8 | 1.54
Comm | 0.012664 | 0.064342 | 0.11287 | 18.2 | 12.35
Output | 0.000511 | 0.00053725 | 0.000613 | 0.0 | 0.10
Modify | 7.3e-05 | 7.925e-05 | 8.3e-05 | 0.0 | 0.02
Other | | 0.0001087 | | | 0.02
Nlocal: 32 ave 35 max 29 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Nghost: 431 ave 434 max 428 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Neighs: 928 ave 1019 max 837 min
Histogram: 2 0 0 0 0 0 0 0 0 2
FullNghs: 1856 ave 2030 max 1682 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 100
Dangerous builds not checked
Total wall time: 0:00:00

View File

@ -0,0 +1,154 @@
LAMMPS (19 Mar 2020)
# Demonstrate SNAP Ta potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.316
units metal
# generate the box and atom positions using a BCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice bcc $a
lattice bcc 3.316
Lattice spacing in x,y,z = 3.316 3.316 3.316
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0 0 0) to (13.264 13.264 13.264)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000254 secs
mass 1 180.88
# choose potential
include Ta06A.snap
# DATE: 2014-09-05 CONTRIBUTOR: Aidan Thompson athomps@sandia.gov CITATION: Thompson, Swiler, Trott, Foiles and Tucker, arxiv.org, 1409.3880 (2014)
# Definition of SNAP potential Ta_Cand06A
# Assumes 1 LAMMPS atom type
variable zblcutinner equal 4
variable zblcutouter equal 4.8
variable zblz equal 73
# Specify hybrid with SNAP, ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} snap
pair_style hybrid/overlay zbl 4 ${zblcutouter} snap
pair_style hybrid/overlay zbl 4 4.8 snap
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 73 ${zblz}
pair_coeff 1 1 zbl 73 73
pair_coeff * * snap Ta06A.snapcoeff Ta06A.snapparam Ta
Reading potential file Ta06A.snapcoeff with DATE: 2014-09-05
SNAP Element = Ta, Radius 0.5, Weight 1
Reading potential file Ta06A.snapparam with DATE: 2014-09-05
SNAP keyword rcutfac 4.67637
SNAP keyword twojmax 6
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword bzeroflag 0
SNAP keyword quadraticflag 0
# Setup output
compute eatom all pe/atom
compute energy all reduce sum c_eatom
compute satom all stress/atom NULL
compute str all reduce sum c_satom[1] c_satom[2] c_satom[3]
variable press equal (c_str[1]+c_str[2]+c_str[3])/(3*vol)
thermo_style custom step temp epair c_energy etotal press v_press
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5.8
ghost atom cutoff = 5.8
binsize = 2.9, bins = 5 5 5
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair snap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.591 | 6.591 | 6.591 Mbytes
Step Temp E_pair c_energy TotEng Press v_press
0 300 -11.85157 -11.85157 -11.813095 2717.1661 -2717.1661
10 295.96579 -11.851053 -11.851053 -11.813095 2696.1559 -2696.1559
20 284.32535 -11.84956 -11.84956 -11.813095 2301.3713 -2301.3713
30 266.04602 -11.847215 -11.847215 -11.813095 1832.1745 -1832.1745
40 242.2862 -11.844168 -11.844168 -11.813095 1492.6765 -1492.6765
50 214.48968 -11.840603 -11.840603 -11.813094 1312.8908 -1312.8908
60 184.32523 -11.836734 -11.836734 -11.813094 1284.582 -1284.582
70 153.58055 -11.832791 -11.832791 -11.813094 1374.4457 -1374.4457
80 124.04276 -11.829003 -11.829003 -11.813094 1537.703 -1537.703
90 97.37622 -11.825582 -11.825582 -11.813094 1734.9662 -1734.9662
100 75.007873 -11.822714 -11.822714 -11.813094 1930.8005 -1930.8005
Loop time of 0.995328 on 1 procs for 100 steps with 128 atoms
Performance: 4.340 ns/day, 5.530 hours/ns, 100.469 timesteps/s
99.5% 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.99426 | 0.99426 | 0.99426 | 0.0 | 99.89
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.000305 | 0.000305 | 0.000305 | 0.0 | 0.03
Output | 0.000413 | 0.000413 | 0.000413 | 0.0 | 0.04
Modify | 0.000159 | 0.000159 | 0.000159 | 0.0 | 0.02
Other | | 0.000191 | | | 0.02
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 727 ave 727 max 727 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 3712 ave 3712 max 3712 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 7424 ave 7424 max 7424 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:01

View File

@ -0,0 +1 @@
../../potentials/InP_JCPA2020.snap

View File

@ -0,0 +1 @@
../../potentials/InP_JCPA2020.snapcoeff

View File

@ -0,0 +1 @@
../../potentials/InP_JCPA2020.snapparam

View File

@ -0,0 +1,46 @@
# Demonstrate SNAP InP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 5.83
units metal
# generate the box and atom positions using a FCC lattice
variable nx equal ${nrep}
variable ny equal ${nrep}
variable nz equal ${nrep}
boundary p p p
lattice diamond $a
region box block 0 ${nx} 0 ${ny} 0 ${nz}
create_box 2 box
create_atoms 1 box basis 5 2 basis 6 2 basis 7 2 basis 8 2
mass 1 114.76
mass 2 30.98
# choose potential
include InP_JCPA2020.snap
# Setup output
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -39,7 +39,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -39,7 +39,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -39,7 +39,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -42,7 +42,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -42,7 +42,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}

View File

@ -0,0 +1,157 @@
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP InP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 5.83
units metal
# generate the box and atom positions using a FCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice diamond $a
lattice diamond 5.83
Lattice spacing in x,y,z = 5.83 5.83 5.83
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (23.32 23.32 23.32)
1 by 1 by 1 MPI processor grid
create_atoms 1 box basis 5 2 basis 6 2 basis 7 2 basis 8 2
Created 512 atoms
create_atoms CPU = 0.000 seconds
mass 1 114.76
mass 2 30.98
# choose potential
include InP_JCPA2020.snap
# DATE: 2020-06-01 CONTRIBUTOR: Mary Alice Cusentino mcusent@sandia.gov CITATION: M.A. Cusentino, M. A. Wood, and A.P. Thompson, "Explicit Multi-element Extension of the Spectral Neighbor Analysis Potential for Chemically Complex Systems", J. Phys. Chem. A, xxxxxx (2020)
# Definition of SNAP+ZBL potential.
variable zblcutinner index 4
variable zblcutouter index 4.2
variable zblz1 index 49
variable zblz2 index 15
# Specify hybrid with SNAP and ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} snap
pair_style hybrid/overlay zbl 4 ${zblcutouter} snap
pair_style hybrid/overlay zbl 4 4.2 snap
pair_coeff 1 1 zbl ${zblz1} ${zblz1}
pair_coeff 1 1 zbl 49 ${zblz1}
pair_coeff 1 1 zbl 49 49
pair_coeff 1 2 zbl ${zblz1} ${zblz2}
pair_coeff 1 2 zbl 49 ${zblz2}
pair_coeff 1 2 zbl 49 15
pair_coeff 2 2 zbl ${zblz2} ${zblz2}
pair_coeff 2 2 zbl 15 ${zblz2}
pair_coeff 2 2 zbl 15 15
pair_coeff * * snap InP_JCPA2020.snapcoeff InP_JCPA2020.snapparam In P
Reading potential file InP_JCPA2020.snapcoeff with DATE: 2020-06-01
SNAP Element = In, Radius 3.81205, Weight 1
SNAP Element = P, Radius 3.82945, Weight 0.929316
Reading potential file InP_JCPA2020.snapparam with DATE: 2020-06-01
SNAP keyword rcutfac 1.0
SNAP keyword twojmax 6
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0.0
SNAP keyword bzeroflag 1
SNAP keyword quadraticflag 0
SNAP keyword wselfallflag 1
SNAP keyword chemflag 1
SNAP keyword bnormflag 1
# Setup output
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 8.6589
ghost atom cutoff = 8.6589
binsize = 4.32945, bins = 6 6 6
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair snap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 6.027 | 6.027 | 6.027 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -3.4805794 0 -3.4418771 1353.5968
10 285.84677 -3.4787531 0 -3.4418766 1611.7131
20 248.14649 -3.4738884 0 -3.4418756 2312.0308
30 198.94136 -3.4675394 0 -3.4418744 3168.1543
40 152.74831 -3.4615791 0 -3.4418734 3903.5749
50 121.9796 -3.4576091 0 -3.4418728 4387.1254
60 113.27555 -3.4564863 0 -3.4418729 4556.3003
70 125.68089 -3.4580873 0 -3.4418735 4431.2083
80 151.47475 -3.4614159 0 -3.4418745 4107.2369
90 179.18708 -3.4649919 0 -3.4418754 3739.5881
100 197.50662 -3.4673559 0 -3.441876 3492.7778
Loop time of 13.3103 on 1 procs for 100 steps with 512 atoms
Performance: 0.325 ns/day, 73.946 hours/ns, 7.513 timesteps/s
99.7% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 13.309 | 13.309 | 13.309 | 0.0 | 99.99
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.00068474 | 0.00068474 | 0.00068474 | 0.0 | 0.01
Output | 0.00020504 | 0.00020504 | 0.00020504 | 0.0 | 0.00
Modify | 0.0003829 | 0.0003829 | 0.0003829 | 0.0 | 0.00
Other | | 0.0004075 | | | 0.00
Nlocal: 512 ave 512 max 512 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1959 ave 1959 max 1959 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 31232 ave 31232 max 31232 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 62464 ave 62464 max 62464 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 62464
Ave neighs/atom = 122
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:13

View File

@ -0,0 +1,157 @@
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP InP potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 5.83
units metal
# generate the box and atom positions using a FCC lattice
variable nx equal ${nrep}
variable nx equal 4
variable ny equal ${nrep}
variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
lattice diamond $a
lattice diamond 5.83
Lattice spacing in x,y,z = 5.83 5.83 5.83
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (23.32 23.32 23.32)
1 by 2 by 2 MPI processor grid
create_atoms 1 box basis 5 2 basis 6 2 basis 7 2 basis 8 2
Created 512 atoms
create_atoms CPU = 0.000 seconds
mass 1 114.76
mass 2 30.98
# choose potential
include InP_JCPA2020.snap
# DATE: 2020-06-01 CONTRIBUTOR: Mary Alice Cusentino mcusent@sandia.gov CITATION: M.A. Cusentino, M. A. Wood, and A.P. Thompson, "Explicit Multi-element Extension of the Spectral Neighbor Analysis Potential for Chemically Complex Systems", J. Phys. Chem. A, xxxxxx (2020)
# Definition of SNAP+ZBL potential.
variable zblcutinner index 4
variable zblcutouter index 4.2
variable zblz1 index 49
variable zblz2 index 15
# Specify hybrid with SNAP and ZBL
pair_style hybrid/overlay zbl ${zblcutinner} ${zblcutouter} snap
pair_style hybrid/overlay zbl 4 ${zblcutouter} snap
pair_style hybrid/overlay zbl 4 4.2 snap
pair_coeff 1 1 zbl ${zblz1} ${zblz1}
pair_coeff 1 1 zbl 49 ${zblz1}
pair_coeff 1 1 zbl 49 49
pair_coeff 1 2 zbl ${zblz1} ${zblz2}
pair_coeff 1 2 zbl 49 ${zblz2}
pair_coeff 1 2 zbl 49 15
pair_coeff 2 2 zbl ${zblz2} ${zblz2}
pair_coeff 2 2 zbl 15 ${zblz2}
pair_coeff 2 2 zbl 15 15
pair_coeff * * snap InP_JCPA2020.snapcoeff InP_JCPA2020.snapparam In P
Reading potential file InP_JCPA2020.snapcoeff with DATE: 2020-06-01
SNAP Element = In, Radius 3.81205, Weight 1
SNAP Element = P, Radius 3.82945, Weight 0.929316
Reading potential file InP_JCPA2020.snapparam with DATE: 2020-06-01
SNAP keyword rcutfac 1.0
SNAP keyword twojmax 6
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0.0
SNAP keyword bzeroflag 1
SNAP keyword quadraticflag 0
SNAP keyword wselfallflag 1
SNAP keyword chemflag 1
SNAP keyword bnormflag 1
# Setup output
thermo 10
thermo_modify norm yes
# Set up NVE run
timestep 0.5e-3
neighbor 1.0 bin
neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 8.6589
ghost atom cutoff = 8.6589
binsize = 4.32945, bins = 6 6 6
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair zbl, perpetual, half/full from (2)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
(2) pair snap, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 4.587 | 4.587 | 4.587 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -3.4805794 0 -3.4418771 1353.5968
10 285.84677 -3.4787531 0 -3.4418766 1611.7131
20 248.14649 -3.4738884 0 -3.4418756 2312.0308
30 198.94136 -3.4675394 0 -3.4418744 3168.1543
40 152.74831 -3.4615791 0 -3.4418734 3903.5749
50 121.9796 -3.4576091 0 -3.4418728 4387.1254
60 113.27555 -3.4564863 0 -3.4418729 4556.3003
70 125.68089 -3.4580873 0 -3.4418735 4431.2083
80 151.47475 -3.4614159 0 -3.4418745 4107.2369
90 179.18708 -3.4649919 0 -3.4418754 3739.5881
100 197.50662 -3.4673559 0 -3.441876 3492.7778
Loop time of 3.73974 on 4 procs for 100 steps with 512 atoms
Performance: 1.155 ns/day, 20.776 hours/ns, 26.740 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 | 3.4687 | 3.5182 | 3.5985 | 2.7 | 94.07
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.13897 | 0.21952 | 0.26888 | 10.7 | 5.87
Output | 0.00018191 | 0.00047094 | 0.0012944 | 0.0 | 0.01
Modify | 0.00013065 | 0.00013524 | 0.00014186 | 0.0 | 0.00
Other | | 0.001456 | | | 0.04
Nlocal: 128 ave 128 max 128 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Nghost: 1099 ave 1099 max 1099 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Neighs: 7808 ave 7808 max 7808 min
Histogram: 4 0 0 0 0 0 0 0 0 0
FullNghs: 15616 ave 15616 max 15616 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Total # of neighbors = 62464
Ave neighs/atom = 122
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:03

View File

@ -1,13 +1,13 @@
LAMMPS (27 Nov 2018)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP Ta potential
# Demonstrate SNAP Mo potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.160
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -18,21 +18,21 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.16
Lattice spacing in x,y,z = 3.16 3.16 3.16
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0 0 0) to (12.64 12.64 12.64)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (12.64 12.64 12.64)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
Time spent = 0.00029707 secs
create_atoms CPU = 0.000 seconds
mass 1 183.84
@ -40,11 +40,11 @@ mass 1 183.84
include Mo_Chen_PRM2017.snap
# DATE: 2017-09-18 CONTRIBUTOR: Chi Chen <chc273@eng.ucsd.edu> CITATION: C. Chen, Z. Deng, R. Tran, H. Tang, I.-H. Chu, S. P. Ong, "Accurate force field for molybdenum by machine learning large materials data" Physical Review Materials 1, 04 3603 (2017)
# DATE: 2017-09-18 UNITS: metal CONTRIBUTOR: Chi Chen <chc273@eng.ucsd.edu> CITATION: C. Chen, Z. Deng, R. Tran, H. Tang, I.-H. Chu, S. P. Ong, "Accurate force field for molybdenum by machine learning large materials data" Physical Review Materials 1, 04 3603 (2017)
# Generated by Materials Virtual Lab
# Definition of SNAP potential.
pair_style snap
pair_coeff * * Mo_Chen_PRM2017.snapcoeff Mo Mo_Chen_PRM2017.snapparam Mo
pair_coeff * * Mo_Chen_PRM2017.snapcoeff Mo_Chen_PRM2017.snapparam Mo
Reading potential file Mo_Chen_PRM2017.snapcoeff with DATE: 2017-09-18
SNAP Element = Mo, Radius 0.5, Weight 1
Reading potential file Mo_Chen_PRM2017.snapparam with DATE: 2017-09-18
@ -54,7 +54,7 @@ SNAP keyword twojmax 6
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -65,7 +65,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -81,33 +81,33 @@ Neighbor list info ...
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 3.507 | 3.507 | 3.507 Mbytes
Per MPI rank memory allocation (min/avg/max) = 3.335 | 3.335 | 3.335 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -22.405975 0 -22.3675 2575.7657
10 294.77555 -22.405305 0 -22.3675 2756.6894
20 279.53011 -22.40335 0 -22.3675 3285.8272
30 255.52174 -22.40027 0 -22.3675 4122.8933
40 224.7299 -22.396321 0 -22.367499 5204.3499
50 189.67529 -22.391825 0 -22.367499 6449.1308
60 153.18862 -22.387145 0 -22.367499 7765.911
70 118.14998 -22.382652 0 -22.367499 9061.1616
80 87.224916 -22.378685 0 -22.367499 10247.68
90 62.623892 -22.37553 0 -22.367498 11250.067
100 45.9103 -22.373386 0 -22.367498 12011.726
Loop time of 7.00873 on 1 procs for 100 steps with 128 atoms
10 294.8148 -22.40531 0 -22.3675 2762.0942
20 279.68628 -22.40337 0 -22.3675 3306.7656
30 255.84798 -22.400312 0 -22.3675 4168.2979
40 225.22346 -22.396384 0 -22.367499 5281.9537
50 190.25143 -22.391899 0 -22.367499 6565.6626
60 153.66642 -22.387207 0 -22.367499 7927.3186
70 118.25575 -22.382665 0 -22.367499 9271.9554
80 86.616338 -22.378607 0 -22.367499 10510.959
90 60.935787 -22.375314 0 -22.367498 11568.261
100 42.815823 -22.37299 0 -22.367498 12385.433
Loop time of 0.897752 on 1 procs for 100 steps with 128 atoms
Performance: 0.616 ns/day, 38.937 hours/ns, 14.268 timesteps/s
99.7% CPU use with 1 MPI tasks x 1 OpenMP threads
Performance: 4.812 ns/day, 4.988 hours/ns, 111.389 timesteps/s
99.9% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 7.0068 | 7.0068 | 7.0068 | 0.0 | 99.97
Pair | 0.89711 | 0.89711 | 0.89711 | 0.0 | 99.93
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.00083661 | 0.00083661 | 0.00083661 | 0.0 | 0.01
Output | 0.00025535 | 0.00025535 | 0.00025535 | 0.0 | 0.00
Modify | 0.00034285 | 0.00034285 | 0.00034285 | 0.0 | 0.00
Other | | 0.0005035 | | | 0.01
Comm | 0.0002501 | 0.0002501 | 0.0002501 | 0.0 | 0.03
Output | 0.00013161 | 0.00013161 | 0.00013161 | 0.0 | 0.01
Modify | 0.00010276 | 0.00010276 | 0.00010276 | 0.0 | 0.01
Other | | 0.0001559 | | | 0.02
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
@ -123,4 +123,4 @@ Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:07
Total wall time: 0:00:00

View File

@ -1,13 +1,13 @@
LAMMPS (27 Nov 2018)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP Ta potential
# Demonstrate SNAP Mo potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.160
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -18,21 +18,21 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.16
Lattice spacing in x,y,z = 3.16 3.16 3.16
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0 0 0) to (12.64 12.64 12.64)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (12.64 12.64 12.64)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
Time spent = 0.000289917 secs
create_atoms CPU = 0.000 seconds
mass 1 183.84
@ -40,11 +40,11 @@ mass 1 183.84
include Mo_Chen_PRM2017.snap
# DATE: 2017-09-18 CONTRIBUTOR: Chi Chen <chc273@eng.ucsd.edu> CITATION: C. Chen, Z. Deng, R. Tran, H. Tang, I.-H. Chu, S. P. Ong, "Accurate force field for molybdenum by machine learning large materials data" Physical Review Materials 1, 04 3603 (2017)
# DATE: 2017-09-18 UNITS: metal CONTRIBUTOR: Chi Chen <chc273@eng.ucsd.edu> CITATION: C. Chen, Z. Deng, R. Tran, H. Tang, I.-H. Chu, S. P. Ong, "Accurate force field for molybdenum by machine learning large materials data" Physical Review Materials 1, 04 3603 (2017)
# Generated by Materials Virtual Lab
# Definition of SNAP potential.
pair_style snap
pair_coeff * * Mo_Chen_PRM2017.snapcoeff Mo Mo_Chen_PRM2017.snapparam Mo
pair_coeff * * Mo_Chen_PRM2017.snapcoeff Mo_Chen_PRM2017.snapparam Mo
Reading potential file Mo_Chen_PRM2017.snapcoeff with DATE: 2017-09-18
SNAP Element = Mo, Radius 0.5, Weight 1
Reading potential file Mo_Chen_PRM2017.snapparam with DATE: 2017-09-18
@ -54,7 +54,7 @@ SNAP keyword twojmax 6
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -65,7 +65,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -81,33 +81,33 @@ Neighbor list info ...
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 3.486 | 3.486 | 3.486 Mbytes
Per MPI rank memory allocation (min/avg/max) = 3.271 | 3.271 | 3.271 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -22.405975 0 -22.3675 2575.7657
10 294.63153 -22.405286 0 -22.3675 2753.4662
20 278.98535 -22.40328 0 -22.3675 3272.416
30 254.38916 -22.400125 0 -22.3675 4091.8933
40 222.91191 -22.396088 0 -22.367499 5148.5505
50 187.16984 -22.391504 0 -22.367499 6362.2454
60 150.08253 -22.386747 0 -22.367499 7643.2732
70 114.60307 -22.382197 0 -22.367499 8900.2448
80 83.449257 -22.378201 0 -22.367499 10047.619
90 58.862643 -22.375048 0 -22.367498 11012.233
100 42.41931 -22.372939 0 -22.367498 11740.641
Loop time of 2.15419 on 4 procs for 100 steps with 128 atoms
10 294.8148 -22.40531 0 -22.3675 2762.0942
20 279.68628 -22.40337 0 -22.3675 3306.7656
30 255.84798 -22.400312 0 -22.3675 4168.2979
40 225.22346 -22.396384 0 -22.367499 5281.9537
50 190.25143 -22.391899 0 -22.367499 6565.6626
60 153.66642 -22.387207 0 -22.367499 7927.3186
70 118.25575 -22.382665 0 -22.367499 9271.9554
80 86.616338 -22.378607 0 -22.367499 10510.959
90 60.935787 -22.375314 0 -22.367498 11568.261
100 42.815823 -22.37299 0 -22.367498 12385.433
Loop time of 0.260783 on 4 procs for 100 steps with 128 atoms
Performance: 2.005 ns/day, 11.968 hours/ns, 46.421 timesteps/s
92.0% CPU use with 4 MPI tasks x 1 OpenMP threads
Performance: 16.566 ns/day, 1.449 hours/ns, 383.461 timesteps/s
97.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.7677 | 1.9028 | 1.9897 | 6.2 | 88.33
Pair | 0.23045 | 0.23744 | 0.24455 | 1.2 | 91.05
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.15367 | 0.24295 | 0.38029 | 17.6 | 11.28
Output | 0.00034404 | 0.0012512 | 0.0017219 | 1.6 | 0.06
Modify | 0.00018859 | 0.00021273 | 0.00023699 | 0.0 | 0.01
Other | | 0.007011 | | | 0.33
Comm | 0.014524 | 0.021267 | 0.027713 | 3.7 | 8.15
Output | 0.00014997 | 0.00040495 | 0.0011623 | 0.0 | 0.16
Modify | 4.2439e-05 | 4.6909e-05 | 5.0068e-05 | 0.0 | 0.02
Other | | 0.00162 | | | 0.62
Nlocal: 32 ave 32 max 32 min
Histogram: 4 0 0 0 0 0 0 0 0 0
@ -123,4 +123,4 @@ Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:02
Total wall time: 0:00:00

View File

@ -1,4 +1,4 @@
LAMMPS (27 Nov 2018)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP Ta potential
@ -7,7 +7,7 @@ LAMMPS (27 Nov 2018)
variable nsteps index 100
variable nrep equal 4
variable a equal 3.316
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -18,28 +18,28 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.316
Lattice spacing in x,y,z = 3.316 3.316 3.316
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0 0 0) to (13.264 13.264 13.264)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (13.264 13.264 13.264)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
Time spent = 0.000350714 secs
create_atoms CPU = 0.000 seconds
mass 1 180.88
# choose potential
include Ta06A.snap
# DATE: 2014-09-05 CONTRIBUTOR: Aidan Thompson athomps@sandia.gov CITATION: Thompson, Swiler, Trott, Foiles and Tucker, arxiv.org, 1409.3880 (2014)
# DATE: 2014-09-05 UNITS: metal CONTRIBUTOR: Aidan Thompson athomps@sandia.gov CITATION: Thompson, Swiler, Trott, Foiles and Tucker, arxiv.org, 1409.3880 (2014)
# Definition of SNAP potential Ta_Cand06A
# Assumes 1 LAMMPS atom type
@ -56,7 +56,7 @@ pair_style hybrid/overlay zbl 4 4.8 snap
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 73 ${zblz}
pair_coeff 1 1 zbl 73 73
pair_coeff * * snap Ta06A.snapcoeff Ta Ta06A.snapparam Ta
pair_coeff * * snap Ta06A.snapcoeff Ta06A.snapparam Ta
Reading potential file Ta06A.snapcoeff with DATE: 2014-09-05
SNAP Element = Ta, Radius 0.5, Weight 1
Reading potential file Ta06A.snapparam with DATE: 2014-09-05
@ -64,14 +64,13 @@ SNAP keyword rcutfac 4.67637
SNAP keyword twojmax 6
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword diagonalstyle 3
SNAP keyword bzeroflag 0
SNAP keyword quadraticflag 0
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -82,7 +81,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -103,33 +102,33 @@ Neighbor list info ...
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 4.138 | 4.138 | 4.138 Mbytes
Per MPI rank memory allocation (min/avg/max) = 3.967 | 3.967 | 3.967 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -11.85157 0 -11.813095 2717.1661
10 295.96579 -11.851053 0 -11.813095 2696.1559
20 284.32535 -11.84956 0 -11.813095 2301.3713
30 266.04602 -11.847215 0 -11.813095 1832.1745
40 242.2862 -11.844168 0 -11.813095 1492.6765
50 214.48968 -11.840603 0 -11.813094 1312.8908
60 184.32523 -11.836734 0 -11.813094 1284.582
70 153.58055 -11.832791 0 -11.813094 1374.4457
80 124.04276 -11.829003 0 -11.813094 1537.703
90 97.37622 -11.825582 0 -11.813094 1734.9662
100 75.007873 -11.822714 0 -11.813094 1930.8005
Loop time of 5.03244 on 1 procs for 100 steps with 128 atoms
10 296.01467 -11.851059 0 -11.813095 2697.4796
20 284.53666 -11.849587 0 -11.813095 2289.1527
30 266.51577 -11.847275 0 -11.813095 1851.7131
40 243.05007 -11.844266 0 -11.813095 1570.684
50 215.51032 -11.840734 0 -11.813094 1468.1899
60 185.48331 -11.836883 0 -11.813094 1524.8757
70 154.6736 -11.832931 0 -11.813094 1698.3351
80 124.79303 -11.829099 0 -11.813094 1947.0715
90 97.448054 -11.825592 0 -11.813094 2231.9563
100 74.035418 -11.822589 0 -11.813094 2515.8526
Loop time of 0.702618 on 1 procs for 100 steps with 128 atoms
Performance: 0.858 ns/day, 27.958 hours/ns, 19.871 timesteps/s
98.9% CPU use with 1 MPI tasks x 1 OpenMP threads
Performance: 6.148 ns/day, 3.903 hours/ns, 142.325 timesteps/s
99.7% 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.0308 | 5.0308 | 5.0308 | 0.0 | 99.97
Pair | 0.70188 | 0.70188 | 0.70188 | 0.0 | 99.90
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.00070858 | 0.00070858 | 0.00070858 | 0.0 | 0.01
Output | 0.00024676 | 0.00024676 | 0.00024676 | 0.0 | 0.00
Modify | 0.0002749 | 0.0002749 | 0.0002749 | 0.0 | 0.01
Other | | 0.0004299 | | | 0.01
Comm | 0.00025487 | 0.00025487 | 0.00025487 | 0.0 | 0.04
Output | 0.00015402 | 0.00015402 | 0.00015402 | 0.0 | 0.02
Modify | 0.00011039 | 0.00011039 | 0.00011039 | 0.0 | 0.02
Other | | 0.000217 | | | 0.03
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
@ -145,4 +144,4 @@ Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:05
Total wall time: 0:00:00

View File

@ -1,4 +1,4 @@
LAMMPS (27 Nov 2018)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP Ta potential
@ -7,7 +7,7 @@ LAMMPS (27 Nov 2018)
variable nsteps index 100
variable nrep equal 4
variable a equal 3.316
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -18,28 +18,28 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.316
Lattice spacing in x,y,z = 3.316 3.316 3.316
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0 0 0) to (13.264 13.264 13.264)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (13.264 13.264 13.264)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
Time spent = 0.000299692 secs
create_atoms CPU = 0.000 seconds
mass 1 180.88
# choose potential
include Ta06A.snap
# DATE: 2014-09-05 CONTRIBUTOR: Aidan Thompson athomps@sandia.gov CITATION: Thompson, Swiler, Trott, Foiles and Tucker, arxiv.org, 1409.3880 (2014)
# DATE: 2014-09-05 UNITS: metal CONTRIBUTOR: Aidan Thompson athomps@sandia.gov CITATION: Thompson, Swiler, Trott, Foiles and Tucker, arxiv.org, 1409.3880 (2014)
# Definition of SNAP potential Ta_Cand06A
# Assumes 1 LAMMPS atom type
@ -56,7 +56,7 @@ pair_style hybrid/overlay zbl 4 4.8 snap
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 73 ${zblz}
pair_coeff 1 1 zbl 73 73
pair_coeff * * snap Ta06A.snapcoeff Ta Ta06A.snapparam Ta
pair_coeff * * snap Ta06A.snapcoeff Ta06A.snapparam Ta
Reading potential file Ta06A.snapcoeff with DATE: 2014-09-05
SNAP Element = Ta, Radius 0.5, Weight 1
Reading potential file Ta06A.snapparam with DATE: 2014-09-05
@ -64,14 +64,13 @@ SNAP keyword rcutfac 4.67637
SNAP keyword twojmax 6
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword diagonalstyle 3
SNAP keyword bzeroflag 0
SNAP keyword quadraticflag 0
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -82,7 +81,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -103,33 +102,33 @@ Neighbor list info ...
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 4.118 | 4.118 | 4.118 Mbytes
Per MPI rank memory allocation (min/avg/max) = 3.903 | 3.903 | 3.903 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -11.85157 0 -11.813095 2717.1661
10 295.8664 -11.85104 0 -11.813095 2702.935
20 283.95868 -11.849513 0 -11.813095 2301.3242
30 265.29535 -11.847119 0 -11.813095 1870.3173
40 241.09337 -11.844015 0 -11.813095 1568.1549
50 212.86732 -11.840395 0 -11.813094 1409.2092
60 182.35256 -11.836481 0 -11.813094 1389.0527
70 151.38968 -11.83251 0 -11.813094 1474.9232
80 121.80051 -11.828715 0 -11.813094 1627.6911
90 95.262635 -11.825311 0 -11.813094 1812.9327
100 73.194645 -11.822481 0 -11.813094 1995.2199
Loop time of 1.4959 on 4 procs for 100 steps with 128 atoms
10 296.01467 -11.851059 0 -11.813095 2697.4796
20 284.53666 -11.849587 0 -11.813095 2289.1527
30 266.51577 -11.847275 0 -11.813095 1851.7131
40 243.05007 -11.844266 0 -11.813095 1570.684
50 215.51032 -11.840734 0 -11.813094 1468.1899
60 185.48331 -11.836883 0 -11.813094 1524.8757
70 154.6736 -11.832931 0 -11.813094 1698.3351
80 124.79303 -11.829099 0 -11.813094 1947.0715
90 97.448054 -11.825592 0 -11.813094 2231.9563
100 74.035418 -11.822589 0 -11.813094 2515.8526
Loop time of 0.230164 on 4 procs for 100 steps with 128 atoms
Performance: 2.888 ns/day, 8.311 hours/ns, 66.850 timesteps/s
94.6% CPU use with 4 MPI tasks x 1 OpenMP threads
Performance: 18.769 ns/day, 1.279 hours/ns, 434.473 timesteps/s
93.5% 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.2973 | 1.3263 | 1.3444 | 1.6 | 88.66
Pair | 0.1824 | 0.19154 | 0.21822 | 3.5 | 83.22
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.14155 | 0.16475 | 0.19518 | 5.0 | 11.01
Output | 0.00055361 | 0.0006234 | 0.00078511 | 0.0 | 0.04
Modify | 0.00016427 | 0.00020635 | 0.00032949 | 0.0 | 0.01
Other | | 0.004009 | | | 0.27
Comm | 0.010843 | 0.037176 | 0.046129 | 7.9 | 16.15
Output | 0.00014973 | 0.00028926 | 0.00070024 | 0.0 | 0.13
Modify | 5.3883e-05 | 5.6803e-05 | 6.1989e-05 | 0.0 | 0.02
Other | | 0.001104 | | | 0.48
Nlocal: 32 ave 32 max 32 min
Histogram: 4 0 0 0 0 0 0 0 0 0
@ -145,4 +144,4 @@ Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:01
Total wall time: 0:00:00

View File

@ -1,13 +1,13 @@
LAMMPS (27 Nov 2018)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP Ta potential
# Demonstrate SNAP W potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -18,28 +18,28 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0 0 0) to (12.7212 12.7212 12.7212)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
Time spent = 0.000316143 secs
create_atoms CPU = 0.000 seconds
mass 1 183.84
# choose potential
include W_2940_2017_2.snap
# DATE: 2017-02-20 CONTRIBUTOR: Mitchell Wood mitwood@sandia.gov CITATION: Wood, M. A. and Thompson, A. P. "Quantum-Accurate Molecular Dynamics Potential for Tungsten" arXiv:1702.07042 [physics.comp-ph]
# DATE: 2017-02-20 UNITS: metal CONTRIBUTOR: Mitchell Wood mitwood@sandia.gov CITATION: Wood, M. A. and Thompson, A. P. "Quantum-Accurate Molecular Dynamics Potential for Tungsten" arXiv:1702.07042 [physics.comp-ph]
#
# Definition of SNAP+ZBL potential.
variable zblcutinner equal 4
@ -54,7 +54,7 @@ pair_style hybrid/overlay zbl 4 4.8 snap
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 74 ${zblz}
pair_coeff 1 1 zbl 74 74
pair_coeff * * snap W_2940_2017_2.snapcoeff W W_2940_2017_2.snapparam W
pair_coeff * * snap W_2940_2017_2.snapcoeff W_2940_2017_2.snapparam W
Reading potential file W_2940_2017_2.snapcoeff with DATE: 2017-02-20
SNAP Element = W, Radius 0.5, Weight 1
Reading potential file W_2940_2017_2.snapparam with DATE: 2017-02-20
@ -62,7 +62,6 @@ SNAP keyword rcutfac 4.73442
SNAP keyword twojmax 8
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword diagonalstyle 3
SNAP keyword bzeroflag 0
SNAP keyword quadraticflag 0
@ -70,7 +69,7 @@ SNAP keyword quadraticflag 0
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -81,7 +80,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -102,33 +101,33 @@ Neighbor list info ...
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 5.15 | 5.15 | 5.15 Mbytes
Per MPI rank memory allocation (min/avg/max) = 4.268 | 4.268 | 4.268 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -11.028325 0 -10.98985 3010.497
10 293.40666 -11.027479 0 -10.989849 3246.0559
20 274.27375 -11.025025 0 -10.989849 3927.9497
30 244.50457 -11.021207 0 -10.989849 4983.5484
40 207.0784 -11.016407 0 -10.989849 6299.9473
50 165.74442 -11.011105 0 -10.989848 7736.5123
60 124.62181 -11.005831 0 -10.989848 9140.8587
70 87.744792 -11.001101 0 -10.989848 10366.489
80 58.605244 -10.997364 0 -10.989848 11289.914
90 39.754503 -10.994946 0 -10.989848 11824.945
100 32.524085 -10.994019 0 -10.989848 11932.118
Loop time of 18.7678 on 1 procs for 100 steps with 128 atoms
10 293.10848 -11.027441 0 -10.989849 3259.9445
20 273.14727 -11.024881 0 -10.989849 3979.8968
30 242.20285 -11.020912 0 -10.989849 5089.0797
40 203.51992 -11.01595 0 -10.989849 6462.9419
50 161.14556 -11.010515 0 -10.989848 7948.1798
60 119.47232 -11.00517 0 -10.989848 9380.8543
70 82.729175 -11.000458 0 -10.989848 10606.025
80 54.483648 -10.996835 0 -10.989848 11496.424
90 37.225263 -10.994622 0 -10.989847 11967.579
100 32.094224 -10.993964 0 -10.989847 11987.181
Loop time of 2.29953 on 1 procs for 100 steps with 128 atoms
Performance: 0.230 ns/day, 104.265 hours/ns, 5.328 timesteps/s
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
Performance: 1.879 ns/day, 12.775 hours/ns, 43.487 timesteps/s
99.7% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 18.766 | 18.766 | 18.766 | 0.0 | 99.99
Pair | 2.2988 | 2.2988 | 2.2988 | 0.0 | 99.97
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.00081968 | 0.00081968 | 0.00081968 | 0.0 | 0.00
Output | 0.00028563 | 0.00028563 | 0.00028563 | 0.0 | 0.00
Modify | 0.0003283 | 0.0003283 | 0.0003283 | 0.0 | 0.00
Other | | 0.0005233 | | | 0.00
Comm | 0.00027108 | 0.00027108 | 0.00027108 | 0.0 | 0.01
Output | 0.00014758 | 0.00014758 | 0.00014758 | 0.0 | 0.01
Modify | 0.00010991 | 0.00010991 | 0.00010991 | 0.0 | 0.00
Other | | 0.0001643 | | | 0.01
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
@ -144,4 +143,4 @@ Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:18
Total wall time: 0:00:02

View File

@ -1,13 +1,13 @@
LAMMPS (27 Nov 2018)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP Ta potential
# Demonstrate SNAP W potential
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -18,28 +18,28 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0 0 0) to (12.7212 12.7212 12.7212)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 1 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
Time spent = 0.000297546 secs
create_atoms CPU = 0.000 seconds
mass 1 183.84
# choose potential
include W_2940_2017_2.snap
# DATE: 2017-02-20 CONTRIBUTOR: Mitchell Wood mitwood@sandia.gov CITATION: Wood, M. A. and Thompson, A. P. "Quantum-Accurate Molecular Dynamics Potential for Tungsten" arXiv:1702.07042 [physics.comp-ph]
# DATE: 2017-02-20 UNITS: metal CONTRIBUTOR: Mitchell Wood mitwood@sandia.gov CITATION: Wood, M. A. and Thompson, A. P. "Quantum-Accurate Molecular Dynamics Potential for Tungsten" arXiv:1702.07042 [physics.comp-ph]
#
# Definition of SNAP+ZBL potential.
variable zblcutinner equal 4
@ -54,7 +54,7 @@ pair_style hybrid/overlay zbl 4 4.8 snap
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 74 ${zblz}
pair_coeff 1 1 zbl 74 74
pair_coeff * * snap W_2940_2017_2.snapcoeff W W_2940_2017_2.snapparam W
pair_coeff * * snap W_2940_2017_2.snapcoeff W_2940_2017_2.snapparam W
Reading potential file W_2940_2017_2.snapcoeff with DATE: 2017-02-20
SNAP Element = W, Radius 0.5, Weight 1
Reading potential file W_2940_2017_2.snapparam with DATE: 2017-02-20
@ -62,7 +62,6 @@ SNAP keyword rcutfac 4.73442
SNAP keyword twojmax 8
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword diagonalstyle 3
SNAP keyword bzeroflag 0
SNAP keyword quadraticflag 0
@ -70,7 +69,7 @@ SNAP keyword quadraticflag 0
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -81,7 +80,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -102,33 +101,33 @@ Neighbor list info ...
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 5.13 | 5.13 | 5.13 Mbytes
Per MPI rank memory allocation (min/avg/max) = 4.167 | 4.167 | 4.167 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -11.028325 0 -10.98985 3010.497
10 293.22504 -11.027456 0 -10.989849 3258.275
20 273.60084 -11.024939 0 -10.989849 3973.9038
30 243.15327 -11.021034 0 -10.989849 5077.9172
40 205.01905 -11.016142 0 -10.989849 6448.4941
50 163.10914 -11.010767 0 -10.989848 7935.6835
60 121.67854 -11.005453 0 -10.989848 9378.9959
70 84.846972 -11.000729 0 -10.989848 10626.301
80 56.127265 -10.997046 0 -10.989848 11551.687
90 38.025013 -10.994724 0 -10.989847 12069.936
100 31.768127 -10.993922 0 -10.989847 12145.648
Loop time of 5.38055 on 4 procs for 100 steps with 128 atoms
10 293.10848 -11.027441 0 -10.989849 3259.9445
20 273.14727 -11.024881 0 -10.989849 3979.8968
30 242.20285 -11.020912 0 -10.989849 5089.0797
40 203.51992 -11.01595 0 -10.989849 6462.9419
50 161.14556 -11.010515 0 -10.989848 7948.1798
60 119.47232 -11.00517 0 -10.989848 9380.8543
70 82.729175 -11.000458 0 -10.989848 10606.025
80 54.483648 -10.996835 0 -10.989848 11496.424
90 37.225263 -10.994622 0 -10.989847 11967.579
100 32.094224 -10.993964 0 -10.989847 11987.181
Loop time of 0.700403 on 4 procs for 100 steps with 128 atoms
Performance: 0.803 ns/day, 29.892 hours/ns, 18.585 timesteps/s
96.1% CPU use with 4 MPI tasks x 1 OpenMP threads
Performance: 6.168 ns/day, 3.891 hours/ns, 142.775 timesteps/s
95.9% CPU use with 4 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 4.8254 | 5.0245 | 5.2817 | 7.7 | 93.38
Pair | 0.59296 | 0.62019 | 0.6504 | 2.8 | 88.55
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.093845 | 0.34915 | 0.5466 | 29.1 | 6.49
Output | 0.00032616 | 0.0011846 | 0.0037167 | 4.2 | 0.02
Modify | 0.00022507 | 0.00025326 | 0.0002687 | 0.0 | 0.00
Other | | 0.005432 | | | 0.10
Comm | 0.048731 | 0.078938 | 0.10647 | 7.8 | 11.27
Output | 0.00015879 | 0.00024194 | 0.00048518 | 0.0 | 0.03
Modify | 6.4373e-05 | 6.9439e-05 | 7.7963e-05 | 0.0 | 0.01
Other | | 0.0009654 | | | 0.14
Nlocal: 32 ave 32 max 32 min
Histogram: 4 0 0 0 0 0 0 0 0 0
@ -144,4 +143,4 @@ Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:05
Total wall time: 0:00:00

View File

@ -1,4 +1,5 @@
LAMMPS (7 Aug 2019)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP W-Be potential
# Initialize simulation
@ -6,7 +7,7 @@ LAMMPS (7 Aug 2019)
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -17,33 +18,33 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0 0 0) to (12.7212 12.7212 12.7212)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000234842 secs
create_atoms CPU = 0.000 seconds
mass 1 183.84
mass 2 9.012182
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
5 settings made for type/fraction
group tungsten type 1
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
5 settings made for type/fractiongroup tungsten type 1
123 atoms in group tungsten
group beryllium type 2
group beryllium type 2
5 atoms in group beryllium
# choose potential
include WBe_Wood_PRB2019.snap
# DATE: 2019-09-18 UNITS: metal CONTRIBUTOR: Mary Alice Cusentino mcusent@sandia.gov CITATION: M.A. Wood, M.A. Cusentino, B.D. Wirth, and A.P. Thompson, "Data-driven material models for atomistic simulation", Physical Review B 99, 184305 (2019)
# Definition of SNAP+ZBL potential.
variable zblcutinner equal 4
variable zblcutouter equal 4.8
@ -77,7 +78,7 @@ SNAP keyword quadraticflag 0
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -88,7 +89,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -112,43 +113,43 @@ Neighbor list info ...
Per MPI rank memory allocation (min/avg/max) = 4.268 | 4.268 | 4.268 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -8.5980876 0 -8.5596125 -35284.855
10 299.29029 -8.5979965 0 -8.5596125 -35299.259
20 288.99334 -8.5966759 0 -8.5596124 -35004.093
30 269.91027 -8.5942284 0 -8.5596123 -34447.077
40 243.57361 -8.5908505 0 -8.5596121 -33687.105
50 212.21385 -8.5868284 0 -8.5596119 -32821.864
60 178.77144 -8.5825391 0 -8.5596116 -31971.17
70 146.71854 -8.578428 0 -8.5596113 -31245.51
80 119.50956 -8.5749383 0 -8.5596111 -30724.137
90 99.872785 -8.5724197 0 -8.559611 -30440.244
100 89.604584 -8.5711027 0 -8.5596109 -30392.805
Loop time of 3.16831 on 1 procs for 100 steps with 128 atoms
10 296.32664 -8.5976164 0 -8.5596124 -35188.339
20 282.41417 -8.595832 0 -8.5596123 -34782.293
30 259.69014 -8.5929175 0 -8.5596121 -34113.316
40 230.50415 -8.5891741 0 -8.5596119 -33260.777
50 197.88816 -8.5849908 0 -8.5596116 -32309.975
60 165.27259 -8.5808076 0 -8.5596113 -31365.766
70 136.15697 -8.5770733 0 -8.5596111 -30542.657
80 113.58947 -8.5741788 0 -8.5596109 -29939.23
90 99.477916 -8.572369 0 -8.5596109 -29619.939
100 94.121939 -8.5716822 0 -8.559611 -29598.002
Loop time of 2.26616 on 1 procs for 100 steps with 128 atoms
Performance: 1.364 ns/day, 17.602 hours/ns, 31.563 timesteps/s
199.5% CPU use with 1 MPI tasks x no OpenMP threads
Performance: 1.906 ns/day, 12.590 hours/ns, 44.128 timesteps/s
99.3% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 3.1672 | 3.1672 | 3.1672 | 0.0 | 99.97
Neigh | 0.00030208 | 0.00030208 | 0.00030208 | 0.0 | 0.01
Comm | 0.00029612 | 0.00029612 | 0.00029612 | 0.0 | 0.01
Output | 0.00019813 | 0.00019813 | 0.00019813 | 0.0 | 0.01
Modify | 0.00014448 | 0.00014448 | 0.00014448 | 0.0 | 0.00
Other | | 0.0001433 | | | 0.00
Pair | 2.2531 | 2.2531 | 2.2531 | 0.0 | 99.42
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.0002594 | 0.0002594 | 0.0002594 | 0.0 | 0.01
Output | 0.012544 | 0.012544 | 0.012544 | 0.0 | 0.55
Modify | 0.00010347 | 0.00010347 | 0.00010347 | 0.0 | 0.00
Other | | 0.0001583 | | | 0.01
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 727 ave 727 max 727 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 3710 ave 3710 max 3710 min
Neighs: 3712 ave 3712 max 3712 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 7420 ave 7420 max 7420 min
FullNghs: 7424 ave 7424 max 7424 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 7420
Ave neighs/atom = 57.9688
Neighbor list builds = 1
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:03
Total wall time: 0:00:02

View File

@ -1,4 +1,5 @@
LAMMPS (7 Aug 2019)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP W-Be potential
# Initialize simulation
@ -6,7 +7,7 @@ LAMMPS (7 Aug 2019)
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -17,33 +18,33 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0 0 0) to (12.7212 12.7212 12.7212)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
create_atoms CPU = 0.000317097 secs
create_atoms CPU = 0.000 seconds
mass 1 183.84
mass 2 9.012182
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
5 settings made for type/fraction
group tungsten type 1
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
5 settings made for type/fractiongroup tungsten type 1
123 atoms in group tungsten
group beryllium type 2
group beryllium type 2
5 atoms in group beryllium
# choose potential
include WBe_Wood_PRB2019.snap
# DATE: 2019-09-18 UNITS: metal CONTRIBUTOR: Mary Alice Cusentino mcusent@sandia.gov CITATION: M.A. Wood, M.A. Cusentino, B.D. Wirth, and A.P. Thompson, "Data-driven material models for atomistic simulation", Physical Review B 99, 184305 (2019)
# Definition of SNAP+ZBL potential.
variable zblcutinner equal 4
variable zblcutouter equal 4.8
@ -77,7 +78,7 @@ SNAP keyword quadraticflag 0
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -88,7 +89,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -112,43 +113,43 @@ Neighbor list info ...
Per MPI rank memory allocation (min/avg/max) = 4.167 | 4.167 | 4.167 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -8.5980876 0 -8.5596125 -35284.855
10 296.24946 -8.5976065 0 -8.5596124 -35140.29
20 282.27904 -8.5958147 0 -8.5596123 -34710.3
30 259.54978 -8.5928995 0 -8.5596121 -34060.43
40 230.41412 -8.5891626 0 -8.5596119 -33258.275
50 197.85135 -8.5849861 0 -8.5596116 -32389.527
60 165.21732 -8.5808005 0 -8.5596113 -31550.426
70 135.94024 -8.5770455 0 -8.5596111 -30839.006
80 113.06617 -8.5741117 0 -8.5596109 -30339.177
90 98.542347 -8.572249 0 -8.5596109 -30094.29
100 92.524343 -8.5714774 0 -8.5596111 -30091.988
Loop time of 0.813674 on 4 procs for 100 steps with 128 atoms
10 296.32664 -8.5976164 0 -8.5596124 -35188.339
20 282.41417 -8.595832 0 -8.5596123 -34782.293
30 259.69014 -8.5929175 0 -8.5596121 -34113.316
40 230.50415 -8.5891741 0 -8.5596119 -33260.777
50 197.88816 -8.5849908 0 -8.5596116 -32309.975
60 165.27259 -8.5808076 0 -8.5596113 -31365.766
70 136.15697 -8.5770733 0 -8.5596111 -30542.657
80 113.58947 -8.5741788 0 -8.5596109 -29939.23
90 99.477916 -8.572369 0 -8.5596109 -29619.939
100 94.121939 -8.5716822 0 -8.559611 -29598.002
Loop time of 0.668977 on 4 procs for 100 steps with 128 atoms
Performance: 5.309 ns/day, 4.520 hours/ns, 122.899 timesteps/s
99.7% CPU use with 4 MPI tasks x no OpenMP threads
Performance: 6.458 ns/day, 3.717 hours/ns, 149.482 timesteps/s
97.2% 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.79079 | 0.79788 | 0.80888 | 0.8 | 98.06
Neigh | 7.1049e-05 | 8.0049e-05 | 9.2983e-05 | 0.0 | 0.01
Comm | 0.0041246 | 0.01515 | 0.022235 | 5.5 | 1.86
Output | 0.000144 | 0.00017095 | 0.00024796 | 0.0 | 0.02
Modify | 4.4823e-05 | 5.8889e-05 | 7.2718e-05 | 0.0 | 0.01
Other | | 0.000338 | | | 0.04
Pair | 0.57811 | 0.60637 | 0.63609 | 2.6 | 90.64
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.031571 | 0.061612 | 0.090021 | 8.3 | 9.21
Output | 0.00015521 | 0.00021636 | 0.00038552 | 0.0 | 0.03
Modify | 5.4836e-05 | 6.1393e-05 | 7.2956e-05 | 0.0 | 0.01
Other | | 0.0007139 | | | 0.11
Nlocal: 32 ave 37 max 28 min
Histogram: 1 0 0 1 1 0 0 0 0 1
Nghost: 431 ave 435 max 426 min
Histogram: 1 0 0 0 0 1 1 0 0 1
Neighs: 927 ave 1071 max 821 min
Histogram: 1 0 1 0 1 0 0 0 0 1
FullNghs: 1854 ave 2144 max 1624 min
Histogram: 1 0 0 1 1 0 0 0 0 1
Nlocal: 32 ave 32 max 32 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Nghost: 431 ave 431 max 431 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Neighs: 928 ave 928 max 928 min
Histogram: 4 0 0 0 0 0 0 0 0 0
FullNghs: 1856 ave 1856 max 1856 min
Histogram: 4 0 0 0 0 0 0 0 0 0
Total # of neighbors = 7416
Ave neighs/atom = 57.9375
Neighbor list builds = 1
Total # of neighbors = 7424
Ave neighs/atom = 58
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:00

View File

@ -1,13 +1,13 @@
LAMMPS (27 Nov 2018)
LAMMPS (15 Jun 2020)
using 1 OpenMP thread(s) per MPI task
# Demonstrate SNAP Ta potential
# Demonstrate SNAP W with tabulated He-He and W-He using hybrid pair style
# Initialize simulation
variable nsteps index 100
variable nrep equal 4
variable a equal 3.1803
units metal
units metal
# generate the box and atom positions using a BCC lattice
@ -18,34 +18,33 @@ variable ny equal 4
variable nz equal ${nrep}
variable nz equal 4
boundary p p p
boundary p p p
lattice bcc $a
lattice bcc 3.1803
Lattice spacing in x,y,z = 3.1803 3.1803 3.1803
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0 0 0) to (12.7212 12.7212 12.7212)
region box block 0 ${nx} 0 ${ny} 0 ${nz}
region box block 0 4 0 ${ny} 0 ${nz}
region box block 0 4 0 4 0 ${nz}
region box block 0 4 0 4 0 4
create_box 2 box
Created orthogonal box = (0.0 0.0 0.0) to (12.7212 12.7212 12.7212)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
create_atoms 1 box
Created 128 atoms
Time spent = 0.000426054 secs
create_atoms CPU = 0.001 seconds
mass 1 183.84
mass 2 4.0026
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
5 settings made for type/fraction
group tungsten type 1
set group all type/fraction 2 0.05 3590153 # Change 5% of W to He
5 settings made for type/fractiongroup tungsten type 1
123 atoms in group tungsten
group helium type 2
group helium type 2
5 atoms in group helium
# choose potential
include W_2940_2017_2_He_JW2013.snap
# DATE: 2017-02-20 CONTRIBUTOR: Mitchell Wood mitwood@sandia.gov CITATION: Wood, M. A. and Thompson, A. P. "Quantum-Accurate Molecular Dynamics Potential for Tungsten" arXiv:1702.07042 [physics.comp-ph]
# DATE: 2017-02-20 UNITS: metal CONTRIBUTOR: Mitchell Wood mitwood@sandia.gov CITATION: Wood, M. A. and Thompson, A. P. "Quantum-Accurate Molecular Dynamics Potential for Tungsten" arXiv:1702.07042 [physics.comp-ph]
#
# Definition of SNAP+ZBL+Tabulated potential.
variable zblcutinner equal 4
@ -60,7 +59,7 @@ pair_style hybrid/overlay zbl 4 4.8 snap table spline 10000 table spline 10000
pair_coeff 1 1 zbl ${zblz} ${zblz}
pair_coeff 1 1 zbl 74 ${zblz}
pair_coeff 1 1 zbl 74 74
pair_coeff * * snap W_2940_2017_2.snapcoeff W W_2940_2017_2.snapparam W NULL
pair_coeff * * snap W_2940_2017_2.snapcoeff W_2940_2017_2.snapparam W NULL
Reading potential file W_2940_2017_2.snapcoeff with DATE: 2017-02-20
SNAP Element = W, Radius 0.5, Weight 1
Reading potential file W_2940_2017_2.snapparam with DATE: 2017-02-20
@ -68,24 +67,23 @@ SNAP keyword rcutfac 4.73442
SNAP keyword twojmax 8
SNAP keyword rfac0 0.99363
SNAP keyword rmin0 0
SNAP keyword diagonalstyle 3
SNAP keyword bzeroflag 0
SNAP keyword quadraticflag 0
pair_coeff 2 2 table 1 He_He_JW2013.table HeHe
Reading potential file He_He_JW2013.table with DATE: 2017-02-20
WARNING: 1 of 4999 force values in table are inconsistent with -dE/dr.
Should only be flagged at inflection points (src/pair_table.cpp:481)
Should only be flagged at inflection points (src/pair_table.cpp:467)
pair_coeff 1 2 table 2 W_He_JW2013.table WHe
Reading potential file W_He_JW2013.table with DATE: 2017-02-20
WARNING: 3 of 325 force values in table are inconsistent with -dE/dr.
Should only be flagged at inflection points (src/pair_table.cpp:481)
Should only be flagged at inflection points (src/pair_table.cpp:467)
#Hybrid/overlay will take all pair styles and add their contributions equally, order of pair_coeff doesnt matter here
#This is not the case for pair_style hybrid ... where only one pair_coeff is read for each type combination, order matters here.
# Setup output
thermo 10
thermo 10
thermo_modify norm yes
# Set up NVE run
@ -96,7 +94,7 @@ neigh_modify once no every 1 delay 0 check yes
# Run MD
velocity all create 300.0 4928459
velocity all create 300.0 4928459 loop geom
fix 1 all nve
run ${nsteps}
run 100
@ -137,33 +135,33 @@ Neighbor list info ...
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 7.676 | 7.676 | 7.676 Mbytes
Per MPI rank memory allocation (min/avg/max) = 6.789 | 6.789 | 6.789 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 -10.438105 0 -10.39963 -5445.2808
10 290.48923 -10.436885 0 -10.399629 -5646.4813
20 271.18868 -10.434409 0 -10.399629 -5654.4646
30 246.2601 -10.431212 0 -10.399629 -5281.8873
40 218.69918 -10.427677 0 -10.399629 -4343.3636
50 189.12519 -10.423885 0 -10.399629 -2903.1138
60 155.55701 -10.419579 0 -10.399629 -1402.2278
70 118.83581 -10.414869 0 -10.399629 -146.36141
80 85.903126 -10.410645 0 -10.399628 857.74986
90 65.223651 -10.407993 0 -10.399628 1494.2746
100 59.833542 -10.407302 0 -10.399628 1938.9164
Loop time of 17.6435 on 1 procs for 100 steps with 128 atoms
10 292.90716 -10.437195 0 -10.39963 -5400.8323
20 275.59696 -10.434975 0 -10.399629 -5055.199
30 250.28699 -10.431729 0 -10.399629 -4317.4619
40 218.58148 -10.427662 0 -10.399629 -3069.0256
50 182.80754 -10.423074 0 -10.399629 -1514.9501
60 144.77789 -10.418197 0 -10.399629 134.6083
70 108.06164 -10.413487 0 -10.399628 1747.8913
80 79.630821 -10.409841 0 -10.399628 2913.2733
90 62.795831 -10.407682 0 -10.399628 3646.2528
100 57.450965 -10.406996 0 -10.399628 4022.2665
Loop time of 2.15336 on 1 procs for 100 steps with 128 atoms
Performance: 0.245 ns/day, 98.019 hours/ns, 5.668 timesteps/s
98.9% CPU use with 1 MPI tasks x 1 OpenMP threads
Performance: 2.006 ns/day, 11.963 hours/ns, 46.439 timesteps/s
99.9% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 17.641 | 17.641 | 17.641 | 0.0 | 99.99
Neigh | 0.00054359 | 0.00054359 | 0.00054359 | 0.0 | 0.00
Comm | 0.00080729 | 0.00080729 | 0.00080729 | 0.0 | 0.00
Output | 0.00026512 | 0.00026512 | 0.00026512 | 0.0 | 0.00
Modify | 0.00033879 | 0.00033879 | 0.00033879 | 0.0 | 0.00
Other | | 0.0005448 | | | 0.00
Pair | 2.1524 | 2.1524 | 2.1524 | 0.0 | 99.96
Neigh | 0.00030732 | 0.00030732 | 0.00030732 | 0.0 | 0.01
Comm | 0.00026202 | 0.00026202 | 0.00026202 | 0.0 | 0.01
Output | 0.00013041 | 0.00013041 | 0.00013041 | 0.0 | 0.01
Modify | 0.00010085 | 0.00010085 | 0.00010085 | 0.0 | 0.00
Other | | 0.0001643 | | | 0.01
Nlocal: 128 ave 128 max 128 min
Histogram: 1 0 0 0 0 0 0 0 0 0
@ -179,4 +177,4 @@ Ave neighs/atom = 53.5156
Neighbor list builds = 1
Dangerous builds = 0
Total wall time: 0:00:17
Total wall time: 0:00:02

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