Compare commits

...

734 Commits

Author SHA1 Message Date
39df9f5d94 patch 23Oct17 2017-10-23 16:07:21 -06:00
68d04119d3 Merge pull request #707 from akohlmey/granular-omp-refactor
Updated neighbor list history processing for USER-OMP
2017-10-23 13:35:43 -06:00
0148c2ac81 updated neighbor list history processing for USER-OMP 2017-10-23 14:12:19 -04:00
a7ad12491f Merge pull request #706 from lammps/doc-cs
update to doc pages for new coreshell pair styles
2017-10-21 16:12:23 -06:00
2137be3219 update to doc pages for new coreshell pair styles 2017-10-21 15:50:27 -06:00
ce78f6943d Merge pull request #705 from akohlmey/fix_rigid_bugfix
fix segfault bug in fix rigid/small found by regression testing
2017-10-20 17:01:50 -06:00
998aedc6c1 Merge pull request #670 from vishalkenchan/pair_style/coul_wolf_cs
add coul/wolf/cs and born/coul/wolf/cs pair styles for CORESHELL package
2017-10-20 16:09:33 -06:00
0a02c3c78c fix segfault bug for in fix rigid/small found by regression testing 2017-10-20 16:56:06 -04:00
aaf5e87c84 Merge pull request #703 from akohlmey/custom-rigid-body-generation
Allow rigid body generation from custom properties
2017-10-20 14:08:15 -06:00
2d0f5e277c Merge pull request #704 from akohlmey/bond-gromos-bugfix
Compute energy correctly for bond style gromos
2017-10-20 14:06:35 -06:00
260bbc6f9f Merge pull request #702 from giacomofiorin/colvars-fix-the-fix
Fix a Colvars error that was hidden by the previous segfault
2017-10-20 14:06:15 -06:00
6b34a30528 compute energy correctly for bond style gromos 2017-10-20 14:53:22 -04:00
83c7d3a1d2 update fix rigid documentation 2017-10-20 14:18:50 -04:00
961b976374 add/correct code to define rigid bodies with atomstyle/atomfile variables and via custom per-atom properties 2017-10-20 13:56:09 -04:00
ac6434e496 add input examples for custom rigid body definition 2017-10-20 13:54:45 -04:00
f479f02589 Fix a Colvars error that was hidden by the previous segfault 2017-10-20 13:41:31 -04:00
e284545c5b added some documentation and reference example 2017-10-20 12:03:22 +02:00
e368acdaeb Merge pull request #700 from giacomofiorin/colvars-fix
Import segfault fix in Colvars module
2017-10-19 11:45:36 -06:00
6e7504f153 Import segfault fix in Colvars module 2017-10-19 08:09:44 -04:00
71c4edda51 add coul/wolf/cs and born/coul/wolf/cs pair styles for CORESHELL package 2017-10-19 13:21:13 +02:00
40147a7a64 Merge pull request #699 from lammps/doc-update2
cross ref fix deform and new fix nvt/uef in doc pages
2017-10-18 16:44:18 -06:00
f709a723cd cross ref fix deform and new fix nvt/uef 2017-10-18 15:26:15 -06:00
6dd55e49cb Merge pull request #698 from lammps/doc-update
small updates to recently added docs and rename of an example dir
2017-10-18 15:24:54 -06:00
281b1dc375 small updates to recently added docs and rename of an example dir 2017-10-18 14:56:47 -06:00
e93f8f8889 Merge pull request #671 from danicholson/user-uef
USER-UEF package for extensional flow
2017-10-18 13:38:56 -06:00
35f2cfa0bf Merge pull request #669 from urpedersen/master
fix rhok - biasing long-range order
2017-10-18 13:31:15 -06:00
e44196c011 Merge pull request #694 from akohlmey/bond-gromos
Add gromos bond style
2017-10-18 13:27:15 -06:00
2fe1d1b904 Merge pull request #697 from andeplane/fix_heat_bug
Avoid checking region when not specified
2017-10-18 13:26:19 -06:00
b1b4a52b14 Merge pull request #695 from timattox/USER-DPD_small_updates
USER-DPD small updates
2017-10-18 13:25:48 -06:00
382de50341 Merge pull request #696 from wmbrownIntel/intel-update-oct17
Bug fix for unexpected case where a Intel bonded style is specified but there are no types
2017-10-18 13:25:07 -06:00
7dfc6b7eab Merge pull request #688 from lammps/history
refactoring of neighbor history
2017-10-18 13:24:36 -06:00
19eb5d3897 Avoid checking region when not specified 2017-10-18 18:05:34 +02:00
17c17ac409 update multi-threaded neighbor list build for neighbor list refactor 2017-10-18 11:25:15 -04:00
39ededd46c update respa/omp integrator style for neighbor list refactor 2017-10-18 11:24:44 -04:00
2c7528811d update several pair styles to be compliant with refactored respa lists data structures 2017-10-18 11:24:12 -04:00
0966e14e73 more changes to rRESPA neighbor lists 2017-10-17 17:33:01 -06:00
bb141aaae0 USER-INTEL: Bug fix for case where a bond/angle/dihedral/improper style is specified, but there are no bond/... types and therefore no allocation. 2017-10-16 22:51:56 -07:00
374d619769 add gromos bond style 2017-10-16 14:57:12 -04:00
59de1a71c8 Merge branch 'history' of github.com:lammps/lammps into history 2017-10-16 14:37:30 -04:00
4c6779cb0d USER-DPD Kokkos: propagate the new neigh_modify options from efaa4c67
Propogate the efaa4c67 changes to npair_ssa_kokkos from npair_kokkos that
support the new neigh_modify exclude molecule/intra and /inter options.
Note: npair_ssa_kokkos could inherit from npair_kokkos to avoid this kind
of missed change. Unfortunately, inheritance from templated classes is
both tricky and messy, and not worth the complexity in this case, IMHO.
2017-10-16 13:37:27 -05:00
5fb5f70ec6 update USER-OMP code for shear history neighbor refactoring 2017-10-16 14:37:20 -04:00
b0bba1976b USER-DPD: remove unused coord2bin() variants, and add ISFINITE checks 2017-10-16 13:36:44 -05:00
f8f13d929f Merge pull request #693 from giacomofiorin/colvars-update
Update Colvars to version 2017-10-11
2017-10-13 17:25:06 -06:00
3e89b270fd Update Colvars to version 2017-10-11
Notable features are the umbrella-integration based free energy estimator for
eABF, and the traditional thermodynamic integration estimator now available
for umbrella sampling, SMD, metadynamics.  Also included are several small fixes.

Below is a list of relevant commits in the Colvars repository since the last update.

321d06a 2017-10-10 Add macros to manage colvarscript commands [Giacomo Fiorin]
26c3bec 2017-10-09 Document coming availability of Lepton in LAMMPS [Giacomo Fiorin]
cc8f249 2017-10-04 Clarify that SMP depends on code build [Giacomo Fiorin]
0b2ffac 2017-10-04 Summarize colvar definition options, clarify some details [Giacomo Fiorin]
28002e0 2017-10-01 Separate writing of restart file from other output (e.g. PMFs) [Giacomo Fiorin]
92f7c1d 2017-10-01 Deprecate colvarsTrajAppend [Giacomo Fiorin]
12a707f 2017-09-26 Accurate Jacobian calculation for RMSD variants [Jérôme Hénin]
fe389c9 2017-09-21 Allow subtractAppliedForce with extended-L again [Jérôme Hénin]
c050ce0 2017-09-18 Silence compiler warnings, remove Tabs [Giacomo Fiorin]
cb41905 2017-01-11 Add base class for TI estimator in other biases than ABF [Giacomo Fiorin]
a1bc676 2017-09-14 Avoid writing to unopened traj file [Jérôme Hénin]
b58d8cd 2017-09-08 Function to check for overlapping groups [Jérôme Hénin]
1e5efec 2017-09-07 Check for overlapping groups in coordNum [Jérôme Hénin]
03a61a4 2017-04-06 Add UI-based estimator [fhh2626]
ae43754 2017-08-17 Fix outputCenters parsing [Josh Vermaas]
1619e0e 2017-08-14 Delete static feature arrays in cvm destructor [Jérôme Hénin]
2017-10-13 13:45:10 -04:00
f6ddc8c7c9 Fix compile errors from neigh history refactor 2017-10-13 10:49:31 -06:00
a973c65d67 Merge pull request #691 from akohlmey/collected-fixes
Collected small changes for next patch
2017-10-13 09:50:03 -06:00
1a200588bd Merge pull request #689 from rbberger/pylammps_autocomplete_fix
Limit IPython autocomplete to known commands and properties
2017-10-13 09:49:03 -06:00
18ca2292c2 Merge pull request #686 from giacomofiorin/lepton-library
Add Lepton library within lib/colvars
2017-10-13 09:48:42 -06:00
d3ef4bd594 Merge pull request #685 from ellio167/kim-api-v1.9.2
Update lib/kim for kim-api-v1.9.2
2017-10-13 09:48:16 -06:00
3df9caf435 drop const qualifier to allow bracketing of lookup index 2017-10-13 10:29:49 -04:00
fa2e5ac2d9 handle lookup exceptions consistently across energy and energy+force lookup in bond/angle style table 2017-10-13 10:13:34 -04:00
b7c7492608 handle invalid lookup for bond/angle tabulation 2017-10-13 09:50:56 -04:00
cee94da85e bugfix. avoiding operating on uninitialize data. closes #690 2017-10-13 00:15:15 -04:00
45aa7de171 Limit IPython autocomplete to known commands and properties 2017-10-12 14:43:17 -04:00
53aa92cfaf add support for neighbor list history refactoring in USER-OMP part 2 2017-10-11 10:30:29 -04:00
7e35042c42 add support for neighbor list history refactoring in USER-OMP part 1 2017-10-11 10:29:41 -04:00
01051e4cb1 refactoring of neighbor history 2017-10-10 16:53:51 -06:00
d90aad887e Add Lepton library within lib/colvars 2017-10-09 15:25:43 -04:00
775a15b9da Update lib/kim for kim-api-v1.9.2 2017-10-09 14:06:30 -05:00
93c9a92743 Merge pull request #684 from irisTa56/bugfix-in-domain.cpp
Bugfix for checking image flags
2017-10-09 08:30:48 -06:00
14dc1c698c Merge pull request #683 from wmbrownIntel/pppm_intel_fix
Fixing bug in pppm/intel for AVX-512 with single precision and ik diff.
2017-10-09 08:29:52 -06:00
a1f5693fe0 Merge pull request #681 from lammps/dump-modify
remove dependence of dump modify 'at' and 'append'
2017-10-09 08:29:12 -06:00
534b7adde4 Bugfix for checking image flags 2017-10-09 21:29:07 +09:00
02646100e9 correct handling of "at" keyword for netcdf dumps as suggested by @pastewka in PR #681 review 2017-10-09 07:49:29 -04:00
7e58f084d2 Fixing bug in pppm/intel for AVX-512 with single precision and ik diff.
This commit simplifies the code by eliminating packing optimizations that were slower
under typical parameters and had some memory bugs.
2017-10-08 08:33:07 -07:00
0f5d7dcc0f cmake: added USER-UEF 2017-10-07 12:38:41 -06:00
b6187173e6 Merge branch 'master' into HEAD 2017-10-07 12:35:51 -06:00
88a33edb50 Merge pull request #680 from lammps/map-yes
add atom_modify map yes, also timers to create_atoms and replicate
2017-10-06 17:43:52 -06:00
6820db99e2 avoid merge conflict 2017-10-06 14:41:38 -04:00
58e1969de2 rename misleading "CPU time" into "Time spent" 2017-10-06 14:34:10 -04:00
e91e505fb3 remove dependence of dump modify 'at' and 'append' 2017-10-06 09:44:29 -06:00
f7cbdcf995 Merge pull request #673 from pastewka/17_dump_nc2
Multi file support for NetCDF dump style
2017-10-06 09:14:12 -06:00
4cfa88b70f Merge pull request #674 from wmbrownIntel/user-intel-update
Mike Brown has added DPD to the USER-INTEL package with speedups over 3X for Xeon Phi and over 1.7X for some Xeon processors.
2017-10-06 09:12:39 -06:00
352a20fc1c DOC: Updated doc to separate description of 'append' and 'at' keywords. 2017-10-06 16:38:15 +02:00
dc0e20947e MAINT: Return error when 'at' keyword is used without 'append yes'. 2017-10-06 16:37:52 +02:00
05847a0e87 Merge branch 'master' into user-intel-update 2017-10-06 10:18:38 -04:00
439c2fd980 Merge pull request #677 from stanmoore1/kk_update
Update to Kokkos r2.04.04 and add workaround for performance regression
2017-10-05 17:10:00 -06:00
15853a0e38 Merge pull request #676 from stanmoore1/kokkos_reverse_comm
Add Kokkos threaded reverse communication
2017-10-05 17:08:49 -06:00
bd17ee5df7 Merge pull request #675 from wesbarnett/master
cmake: Add -restrict for Intel compilers
2017-10-05 17:08:35 -06:00
a9b7ff1154 Merge pull request #679 from stanmoore1/kk_reax_comm
ReaxC optimizations
2017-10-05 17:08:17 -06:00
0dd7ba26c0 Merge pull request #672 from akohlmey/phana-w-tricubic
Streamline compilation of "phana" tool for fix phonon
2017-10-05 17:01:37 -06:00
7a90eef527 Merge pull request #668 from ovilab/modify_deallocation_fix
Fixed proper deletion of fixes if fix is NULL
2017-10-05 17:00:10 -06:00
5d0626e50e Merge pull request #665 from akohlmey/collected-small-fixes
Collected small fixes
2017-10-05 16:58:49 -06:00
4b7ca0383a Merge pull request #664 from timattox/kokkos_atom2bin
Kokkos atom2bin
2017-10-05 16:58:16 -06:00
0ed987dc61 Merge pull request #663 from jdevemy/master
Authorize hybrid/overlay for fix srp
2017-10-05 16:56:20 -06:00
55a3fdca80 Merge pull request #660 from junghans/latte_fix
cmake: fix build with system latte
2017-10-05 16:55:22 -06:00
214c0cfb2b add atom_modify map yes, also timers to create_atoms and replicate 2017-10-05 16:44:24 -06:00
e0efdd50fa Switch to classic comm if ghost_velocity. The check_forward and check_reverse tests aren't necessary because the fix/pair/etc. comm is done in a separate routine. 2017-10-05 15:47:46 -06:00
44d2e8ff74 Add pre_reverse to verlet_kokkos and comment out timer 2017-10-05 15:28:35 -06:00
6bf2c60c07 Fix issues in Kokkos comm 2017-10-05 14:58:05 -06:00
eecd2fbaee Remove hardcoded value in fix_qeq_reax 2017-10-05 11:23:31 -06:00
2b0bfcb10f Fix memory leak in pair_reaxc_kokkos 2017-10-05 10:35:09 -06:00
3653f40120 Reduce unnecessary communication in fix_qeq_reax 2017-10-04 12:10:13 -06:00
bda0ee3aa1 Destroy unneeded fix in pair_reaxc_kokkos 2017-10-04 12:06:03 -06:00
957263431a Ensure consistency with documentation 2017-10-04 09:38:43 +02:00
f12031f84d add support for building rigid bodies from custom atom properties or atom style variables 2017-10-04 01:14:57 -04:00
c522b1b7a9 add call to fftw_cleanup() before exiting to avoid bogus leak reports when compiling with FFTW v3.x 2017-10-04 00:22:56 -04:00
a55adf4a68 Update to Kokkos r2.04.04 and add workaround for performance regression 2017-10-03 11:30:00 -06:00
2876baafd0 Use -restrict whenever Intel is used, no matter the package 2017-10-03 13:08:56 -04:00
ca032f21fb Add Kokkos threaded reverse comm option 2017-10-03 10:14:24 -06:00
197f082784 cmake: Add -restrict for Intel compilers for some packages
Some packages (USER-OMP, OPT, and USER-INTEL) require the -restrict
flag when using the Intel compiler.
2017-10-03 11:28:33 -04:00
1bb7af9ef9 integrate fix rhok into the LAMMPS source code management and documentation system 2017-10-03 10:45:08 -04:00
251f28049a make fix rhok more similar to other LAMMPS sources
- re-indent to 2 blanks
- white space cleanup
- use force->numeric() and force->inumeric() instead of atof() and atoi()
- include system headers before local LAMMPS headers
2017-10-03 10:10:38 -04:00
f07719e924 make fix rhok examples more consistent with LAMMPS conventions:
- move example folder to examples/USER/misc/
- comment out writing of trajectory files
- reduce run length (for easier testing for regressions)
- record example outputs for 1 and 4 MPI processes
- rename readme.md to README.md for visibility
2017-10-03 10:08:38 -04:00
5f527091b8 Update readme.md 2017-10-03 12:02:01 +02:00
30aaa7e47b Update readme.md 2017-10-03 12:00:43 +02:00
74dcf0bf9b Update readme.md 2017-10-03 11:54:46 +02:00
e9b07a7a10 Update readme.md 2017-10-03 11:52:48 +02:00
fd8f5f8f9e Update readme.md 2017-10-03 11:52:08 +02:00
5c59eb637b Update readme.md 2017-10-03 11:49:57 +02:00
250ef9f837 Update readme.md 2017-10-03 11:46:08 +02:00
e44f370d49 Update readme.md 2017-10-03 11:44:52 +02:00
1e790fbafe Update readme.md
Now use the standard namings.
Corrected spelling errors.
2017-10-03 11:44:23 +02:00
35cc795972 Update in.setup 2017-10-03 11:17:43 +02:00
245bf74552 Rename setup.lmp to in.setup 2017-10-03 11:16:54 +02:00
7e8bbe8481 Rename pinning.lmp to in.pinning 2017-10-03 11:16:29 +02:00
e6d687faac Rename crystal.lmp to in.crystal 2017-10-03 11:15:49 +02:00
8a2cf5ce8e reformatting and use citeme class 2017-10-03 11:13:10 +02:00
8f79f5ddb9 add the LAMMPS copyright 2017-10-03 10:59:46 +02:00
40ae6f215b add the usual LAMMPS copyright 2017-10-03 10:58:21 +02:00
4dcc49ebe2 Delete fix_rhok.cpp 2017-10-03 10:56:07 +02:00
fe14eeccac Delete fix_rhok.h 2017-10-03 10:54:22 +02:00
9dc42fd4db intel_simd.h is currently also needed by dihedral/charmm, not just sw. 2017-10-02 23:53:05 -07:00
5e89269631 Minor adjustments to intel makefiles and documentation based on the reversed
preprocessor logic and default memory align. Removing knl_coprocessor makefile.
2017-10-02 23:41:14 -07:00
11eed234f0 include dump cfg/uef in commands toctree 2017-10-03 00:14:34 -04:00
af1fc45db0 added citation to doc 2017-10-03 00:04:52 -04:00
b34109af60 formatting changes 2017-10-02 23:43:31 -04:00
1dffb0cf82 reran npt_biaxial examples 2017-10-02 23:27:10 -04:00
588b2534c9 Minor fix for FixNHUef constructor 2017-10-02 23:26:21 -04:00
d2aa05cb36 update README in USER-INTEL for recent LRT logic reversal 2017-10-02 21:24:51 -04:00
466fde6443 update documentation for the reversal in the INTEL_MKL_RNG define 2017-10-02 21:20:26 -04:00
2a24cbfe0c reverse logic for using MKL pRNG: this way, make serial and make mpi will compile LAMMPS with USER-INTEL installed 2017-10-02 21:13:51 -04:00
00aef0fe00 rerun logfiles for USER-UEF example inputs 2017-10-02 17:40:46 -04:00
92d9b361fc include USER-UEF styles in PDF version of manual 2017-10-02 17:39:59 -04:00
8acdc8020d add USER-UEF classes to .gitignore 2017-10-02 17:24:36 -04:00
cc09a633a2 small code refactor for FixNHUef class
- use forward declaration for UEFBox to avoid having to include custom header
- remove uef_arg_kludge() thanks to changes in 0c7879e902
2017-10-02 17:19:42 -04:00
81be9b37de formatting, whitespace and include file/constants cleanup 2017-10-02 17:15:13 -04:00
0c7879e902 provide compatibility entries in FixNH option parsing for new USER-UEF package 2017-10-02 16:31:41 -04:00
8d384b9149 whitespace cleanup 2017-10-02 15:03:48 -04:00
529eeb6039 Reduce GPU data transfer 2017-10-02 09:31:39 -06:00
cf24dd0265 Adding pair style dpd/intel and dihedral style fourier/intel
Adding raw performance numbers for Skylake xeon server.
Fixes for using older Intel compilers and compiling without OpenMP.
Fix adding in hooks for using USER-INTEL w/ minimization.
2017-10-02 04:53:17 -07:00
a7b0d1f521 DOC: Corrected syntax for appending at certain frame (NetCDF only) 2017-10-01 14:40:19 +02:00
fbe42cda2d MAINT: Only set append flag when not in multifile mode. 2017-10-01 14:31:33 +02:00
da7be99cc4 DOC: Added multi file example. 2017-10-01 14:28:20 +02:00
56d21bfb05 MAINT: Removed obsolete prmtop writer. 2017-10-01 14:22:04 +02:00
100231bba8 ENH: Enable multi file writes. 2017-10-01 14:21:09 +02:00
84378f8ae2 MAINT: Renamed _put_var1_x to _put_var1_bigint 2017-10-01 14:05:12 +02:00
6e342d2e45 MAINT: bigint (int64) maps onto either long or long long, depending on platform. Automatically choose the correct one. 2017-10-01 14:03:52 +02:00
091d058090 Fix typo 2017-09-30 17:44:15 -04:00
4c71beb024 cleanup/simplification of compilation for fix phonon analysis tool "phana"
- include the used tricubic functions directly as static functions
- silence compiler warnings
- define f2c.h imported data types directly or use C equivalents
- since the direct LAPACK API was called and not cLAPACK, declare LAPACK interface and depend only on LAPACK
- add proper dependencies
- disable automatic minor version number generation. step version manually.
- comment out optional spglib functionality by default
2017-09-30 12:12:15 -04:00
a86572f4fc Reduce memory churn in Kokkos package 2017-09-29 16:20:19 -06:00
4524b0fa83 rename arg_kludge to uef_arg_kludge 2017-09-29 16:54:46 -04:00
4ef63feea7 reran examples 2017-09-29 15:50:31 -04:00
9f2740b7f1 Partially revert 01d0a5c, avoid atomics, safe because of the while loop. Worst case is the resize will happen again because max wasn't accurate 2017-09-29 13:41:35 -06:00
2a06b75af8 doc revisions 2017-09-29 15:36:41 -04:00
d7aac2fed5 Add sync/modify to nbin_kokkos 2017-09-29 13:26:02 -06:00
d898afaafb use <> for system includes not "" 2017-09-29 09:19:38 -04:00
c66ddf9ac0 Update fix_rhok.txt 2017-09-29 08:03:02 +02:00
a64040ce2d citeme 2017-09-28 18:33:04 -04:00
480b087c93 doc edits, README, and citeme 2017-09-28 18:31:51 -04:00
0029583463 doc edits i missed in earlier commit 2017-09-28 17:46:39 -04:00
c0f1a32661 fixed namespace issue 2017-09-28 17:43:59 -04:00
80898b8695 first draft of doc done 2017-09-28 17:42:02 -04:00
855b6000ef initial commit. doc is in the works 2017-09-28 16:34:18 -04:00
285a123c90 Update fix_rhok.cpp 2017-09-28 18:42:15 +02:00
0f52dd7c5f Update fix_rhok.h 2017-09-28 18:41:06 +02:00
10d1741e7f Update fix_rhok.txt 2017-09-28 18:38:25 +02:00
d11733d3a0 typo in equation 2017-09-28 18:28:46 +02:00
348c4eb7f3 add .cpp and .h to root src 2017-09-28 18:18:28 +02:00
75b3f34a58 Update documentation 2017-09-28 18:16:06 +02:00
fe80c57bde more documentation 2017-09-28 17:01:12 +02:00
e49f0e396b Create fix_rhok.txt 2017-09-28 16:24:26 +02:00
37e55a825b Create fix_rhok.txt 2017-09-28 16:20:03 +02:00
67e48264d9 Update fix_rhok.cpp 2017-09-28 16:02:20 +02:00
4e1eeca869 Update fix_rhok.cpp 2017-09-28 16:02:00 +02:00
2fda041972 Update fix_rhok.cpp 2017-09-28 16:00:16 +02:00
34c1adb4dd Merge https://github.com/lammps/lammps 2017-09-28 12:28:58 +02:00
23e283f135 Fixed proper deletion of fixes if fix is NULL 2017-09-27 16:20:07 +02:00
de45fa6e71 correct bogus links in LATTE docs 2017-09-26 18:25:37 -04:00
bfdc4acb8b add missing entry for pdf version of manual 2017-09-26 16:53:36 -04:00
fd3ecd0481 fix typo in formatting 2017-09-26 16:52:24 -04:00
8bba6d3e8c correct formatting and broken/colliding link issues with LATTE package related documentation 2017-09-26 16:52:10 -04:00
53e4ee4f2d need to re-init timers after initial setup 2017-09-25 23:20:42 -04:00
b60cff7e77 USER-OMP package depends on USER-DRUDE 2017-09-25 23:15:49 -04:00
38530415c8 -ltbbmalloc is required 2017-09-25 20:03:53 -04:00
0573aaa6da update src/.gitignore for LATTE package 2017-09-25 19:37:55 -04:00
e6969002ce having plain filelink instead of filelink.o confuses KOKKOS linking with nvcc 2017-09-25 19:37:37 -04:00
836a6d292c whitespace fixes, silence compiler warning about too few format specifiers 2017-09-25 16:31:39 -04:00
32e0de7a67 first pass at implementing atom2bin for KOKKOS neighbor lists 2017-09-25 14:06:20 -05:00
789812ec3d KOKKOS: minor typo fix 2017-09-25 14:06:20 -05:00
88a882b457 Added reference to fix rhok implimentation 2017-09-25 18:59:23 +02:00
f1aea57e30 Update readme.md 2017-09-25 18:48:21 +02:00
b35f2ff8b4 Example of Interface Pinning Computation 2017-09-25 18:44:24 +02:00
4beccf508f Move fix to USER-MISH 2017-09-25 18:35:53 +02:00
78a486c0fd Authorize hybrid/overlay for fix srp 2017-09-25 16:18:08 +02:00
f2c1172741 patch 22Sep17 2017-09-22 15:46:34 -06:00
d6316c40d9 cmake: fix build with system latte 2017-09-22 15:36:14 -06:00
bcde318ccb Merge pull request #659 from stanmoore1/kk_border_comm
Enhance Kokkos communication logic
2017-09-22 13:47:44 -06:00
3ed39ca844 Make Kokkos comm give warning and switch to classic comm instead of erroring out 2017-09-22 13:03:24 -06:00
ee487ef4aa Merge pull request #652 from junghans/latte
Add LATTE fix
2017-09-22 10:32:19 -06:00
a8ae886667 update fix latte examples and virial 2017-09-21 10:40:54 -06:00
fe8244c1c2 Rename fix 2017-09-21 16:49:46 +02:00
3381a43378 Added readme.m 2017-09-21 16:20:06 +02:00
73708b091c Added readme file, and removed old files 2017-09-21 16:17:26 +02:00
9a9af2ca5e Delete README 2017-09-21 13:58:51 +02:00
491d5f3410 Added USER-PINNING package 2017-09-21 11:38:59 +02:00
5e35ab251b fixed sucrose 2017-09-20 17:11:49 -06:00
d708e34ba6 cmake: download/build latte if not found 2017-09-20 12:01:26 -06:00
638b91bf74 Merge pull request #657 from lammps/snap-potentials
new SNAP potentials and examples
2017-09-20 09:34:51 -06:00
ad25a95297 whitespace cleanup 2017-09-20 11:13:13 -04:00
e7d042ba1a convert DOS/Windows CR-LF line endings to native format 2017-09-20 11:12:58 -04:00
dd49d54889 new SNAP potentials and examples 2017-09-20 08:54:30 -06:00
fbaa7ab8fa Merge pull request #655 from akohlmey/fixes-for-patch
collected small bugfixes for the next patch release
2017-09-20 08:51:47 -06:00
2e9803efb3 Merge pull request #645 from akohlmey/kokkos-makefile-updates
Some small kokkos makefile updates
2017-09-20 08:40:20 -06:00
59d2e13d48 add .gitignore and add Makefile.lammps.* symlinks to stay consistent with other libraries 2017-09-19 19:06:02 -04:00
76d93f21dd add fix latte command to doc pages 2017-09-19 16:55:08 -06:00
ac897ea645 LATTE package doc update and some small code changes 2017-09-19 16:27:25 -06:00
19f1f3a3e0 correct USER-INTEL installer script for verlet_lrt_intel files 2017-09-19 11:48:27 -04:00
be96486d66 compile all objects in the GPU library with -fPIC for building shared object 2017-09-19 11:24:48 -04:00
48dd824b26 ignore generated header files with OpenCL kernels 2017-09-19 11:24:38 -04:00
cdb6ec7419 reverse the pre-processor logic of the LRT mode define
with this change, the USER-INTEL package can be installed and
compiled without having to alter makefiles for adding -lpthread.
All "intel optimized" makefiles have been updated to have the
LRT feature enabled. This change will allow us to include the
USER-INTEL package in several automated testing configurations
and thus allows to detect incompatibilities and compilation issus faster.
2017-09-19 11:24:05 -04:00
aad8cd10ff allow fix viscous to be used with dynamic groups 2017-09-18 18:08:57 -04:00
1ac90815f3 fix external only needs to collect virial in case it is requested 2017-09-17 23:59:34 -04:00
5f1842829e activate virial contribution in fix lb/rigid/pc/sphere by default and protect virial computation with evflag 2017-09-17 21:10:41 -04:00
66130f5557 whether virial contributions from fixes are included depend on thermo_virial, not virial_flag. 2017-09-17 20:50:22 -04:00
388eab5eeb correctly initialize thermo_virial in fix poems and protect access to vflag_XXX by checking for evflag !=0 2017-09-17 20:49:41 -04:00
a500048c9c remove bogus version of temper/npt command 2017-09-17 19:25:22 -04:00
b4ecad7fbf remove another couple of purge items from long ago 2017-09-17 19:22:43 -04:00
b5894e2190 automatically call 'make purge' before calling 'make package-update' or 'make package-overwrite' 2017-09-17 19:19:45 -04:00
6f1935ea40 correct embarrassing typo
this always happens after too much exposure to fortran codes. :-(
2017-09-15 21:58:47 -04:00
02665e45a4 fix doc in lib/latte/Makefile.lammps.* 2017-09-15 17:52:14 -06:00
cc2a53a8da Merge branch 'exaalt' of gitlab.com:exaalt/lammps into latte 2017-09-15 17:43:48 -06:00
d614d56c34 Merge branch 'exaalt' of gitlab.com:exaalt/lammps into exaalt 2017-09-15 17:41:02 -06:00
39daf3c6f6 added fix_latte.txt 2017-09-15 17:40:34 -06:00
17aeccf19f Merge remote-tracking branch 'origin/master' into latte 2017-09-15 16:18:13 -06:00
d101fe3e79 Merge pull request #649 from akohlmey/fix-virial-aidan
Add support for selected fixes to optionally contribute to the virial
2017-09-15 15:25:09 -06:00
27f99534ec Merge pull request #654 from giacomofiorin/colvars-small-fix
Fix small typo to calculation of accumulated work in Colvars
2017-09-15 15:22:09 -06:00
5f6937dadd Merge pull request #653 from jdevemy/master
Bugfix for the limit keyword
2017-09-15 15:21:53 -06:00
3b39694f23 Merge pull request #628 from lammps/cmake_improvements
CMake improvements
2017-09-15 15:19:46 -06:00
99e5dc7104 add support for fix_modify virial yes to fix smd 2017-09-15 01:21:16 -04:00
ccb67d8dc5 correct cut-n-paste errors in the documentation of fix_modify virial 2017-09-15 01:20:56 -04:00
2cd7cbd964 correct cut-n-paste error, add docs 2017-09-15 00:54:19 -04:00
8776b81033 add virial support to fix addforce 2017-09-15 00:46:18 -04:00
f1fce64ff9 Fix small typo to calculation of accumulated work in Colvars 2017-09-14 12:58:00 -04:00
da7776f818 Bugfix for the limit keyword 2017-09-14 11:00:55 +02:00
66f59f9ec0 FindLATTE.cmake: fixed a typo 2017-09-13 15:51:03 -06:00
d84825fd7f remove useless files 2017-09-13 14:37:24 -06:00
f971cd6e45 Merge pull request #647 from rbberger/gpu_opencl_2
Use OpenCL 2.x API in GPU package when supported
2017-09-12 10:56:13 -06:00
0cb3a3821f Merge pull request #644 from akohlmey/collected-small-fixes
Collected small fixes for next patch
2017-09-12 10:31:51 -06:00
e927794696 Merge pull request #643 from andeplane/gpu_opencl_compile_fix
Fixed OpenCL compilation issues with __global keywords
2017-09-12 10:31:22 -06:00
e196a2b9e5 import changes to various fixes by aidan to include virial contributions 2017-09-11 22:24:06 -04:00
cb19ef547e update src/.gitignore 2017-09-11 22:00:58 -04:00
95d8492853 the original fix qeq went away over 7 years ago, we don't need to purge it 2017-09-11 21:59:22 -04:00
b3547a9eca add infrastructure for enabling fixes to contribute to the virial by aidan 2017-09-11 11:09:59 -04:00
84b84c10db Use OpenCL 2.x API in GPU package when supported 2017-09-09 19:53:56 -04:00
0be7f46750 cmake: added USER-MESO 2017-09-09 08:25:57 -06:00
4738fedca3 Merge remote-tracking branch 'origin/master' into cmake_improvements 2017-09-09 08:22:30 -06:00
1601433ca1 cmake: fix lib suffix 2017-09-09 07:05:51 -06:00
3fdb6f10fa cmake: OpenCL is always found if required 2017-09-09 06:51:24 -06:00
ff18cff46b Merge branch 'cmake_pkg_libs' into cmake_improvements 2017-09-08 23:34:59 -04:00
8a06a7bc6b Add OpenCL support to CMake build 2017-09-08 22:20:47 -04:00
b861ea342e cmake: fix LATTE linkage 2017-09-08 11:54:32 -06:00
fce633aa5f cmake: tweaks for EXAALT superbuild, add latte_fix 2017-09-08 11:33:49 -06:00
2f6be88c4a Merge remote-tracking branch 'origin/master' into exaalt 2017-09-08 07:04:12 -06:00
7b1542a0ba merging stable and exaalt branches into exaaltstable 2017-09-07 16:31:50 -06:00
366d087027 update docs for changes to makefiles 2017-09-06 14:20:24 -04:00
3a5d8362ff have only one common MPI makefile for KOKKOS with CUDA 2017-09-06 14:16:17 -04:00
5089b263b2 make kokkos_cuda_mpi compatible with both MPICH and OpenMPI 2017-09-06 14:15:27 -04:00
de8297ea19 recover ability to compile USER-INTEL without OpenMP enabled 2017-09-06 12:02:14 -04:00
fe557cb882 fix typo in commands table 2017-09-06 11:35:52 -04:00
c80203cb01 Merge pull request #641 from lammps/doc-tweak
small update to docs for new commands
2017-09-06 08:52:51 -06:00
4161868bcf Merge pull request #640 from ohenrich/user-cgdna
USER-CGDNA - sequence-dependent stacking and h-bonding strength
2017-09-06 08:52:05 -06:00
9ca39c89a6 Merge pull request #639 from rbberger/python_interface_improvements
Python interface improvements
2017-09-06 08:51:27 -06:00
99791ce01c Merge pull request #632 from timattox/USER-DPD_kokkos_merge
Add Kokkos version of the USER-DPD package
2017-09-06 08:50:43 -06:00
0248a7b98e remove duplicate listing of deleted USER-DPD files from Purge.list 2017-09-06 09:24:05 -05:00
dbc60d949f Fixed OpenCL compilation issues with __global keywords 2017-09-06 15:08:02 +02:00
d886cc91f3 fix syntax error in fix saed/vtk docs example
This addresses the issue reported on github
by @subhammridha closes thus clodes #642
2017-09-05 17:45:56 -04:00
4c5d901e2b fix stupid typo (too much compiling of fortran codes...) 2017-09-05 16:45:03 -04:00
c8f92c1a61 add a couple deleted files from USER-DPD to Purge.list 2017-09-05 16:42:58 -04:00
dec1d7b2dc re-indent so that gcc no longer complains about inconsistent indentation 2017-09-05 16:41:19 -04:00
45602e58f9 fix another couple of typos 2017-09-05 12:48:28 -04:00
cd72532fb9 fix typo 2017-09-05 12:47:34 -04:00
b170606052 Merge pull request #620 from amilumas/master
Temper_NPT
2017-09-05 10:08:55 -06:00
65b295e826 Merge pull request #638 from jdevemy/master
Mods for extra/special/per/atom and add toluene
2017-09-05 10:05:49 -06:00
89a0bc947f small update to docs for new commands 2017-09-05 10:04:20 -06:00
c8967a335f Included hyperlink to package 2017-09-05 11:45:32 +01:00
2105145f55 More minor changes 2017-09-05 11:40:36 +01:00
f7715ab6ce Added comment about optimised damping coefficient for BD 2017-09-05 11:35:26 +01:00
12fe614ddf Added sequence-dependent stacking and base-pairing strength 2017-09-05 10:48:38 +01:00
0b5a2e199d Add way of getting correct ctypes integer type for bigint, tagint, and imageint 2017-09-04 20:01:31 -04:00
09bb687918 Correct indentation 2017-09-04 20:01:04 -04:00
bb3ee752e5 Added optional numpy access to atom data
The library interface was extended to provide direct access to atom data using
numpy arrays. No data copies are made and numpy operations directly manipulate
memory of the native code.

To keep this numpy dependency optional, all functions are wrapped into the
lammps.numpy sub-object which is only loaded when accessed.
2017-09-04 19:59:50 -04:00
6b2d321d18 Add missing globals in library interface 2017-09-04 19:57:02 -04:00
397bc225b2 add temper/npt to src/USER-MISC/README 2017-08-31 14:56:43 -04:00
d9d9ba8244 update .gitignore 2017-08-31 14:52:56 -04:00
eba4be18c2 adapt formatting and naming conventions to fully match LAMMPS style. allow rigid and accelerated integrators. 2017-08-31 14:48:30 -04:00
4d2ed30b35 add reference outputs to temper/npt example 2017-08-31 14:13:02 -04:00
f3dda30f8e fully integrate temper/npt command into manual 2017-08-31 13:53:40 -04:00
d95a5f219e Remove all thread fences except one in verlet_kokkos 2017-08-31 10:38:36 -06:00
a5b65c1af4 Mods for extra/special/per/atom and add toluene 2017-08-31 15:03:04 +02:00
3e6cdd1400 USER-DPD: finish renaming #ifdef DEBUG_PAIR_CT to DEBUG_SSA_PAIR_CT 2017-08-30 14:58:38 -05:00
dc7f1281b8 USER-DPD: Kokkos version of Const Temperature DPD isn't implemented yet
The Constant Energy DPD (DPDE) was our primary usage case, so only stubs
for the Constant Temperature case were included in Kokkos code so far.
The non-Kokkos version works fine for Constant Temperature DPD.
2017-08-30 11:01:17 -05:00
27c962dc3b link cuda in gpu only, remove duplicated incl. dir 2017-08-30 09:45:01 -06:00
2dd202cc76 USER-DPD: remove some out-of-date FIXME comments in fix_shardlow_kokkos.cpp 2017-08-30 10:34:09 -05:00
f2d8c37f27 Rename SSA specific debug #ifdef to DEBUG_SSA_PAIR_CT 2017-08-30 10:24:29 -05:00
a4a45f1d9c Remove unnecessary check in npair_kokkos 2017-08-29 17:25:13 -06:00
f57d194920 Add files via upload
documentation for temper/npt
2017-08-29 10:40:37 -04:00
34b3fc2157 Fix GPU CMake compilation 2017-08-29 01:20:34 -04:00
098861375b SOVERSION not needed for STATIC libs 2017-08-28 16:18:58 -06:00
19b77857dc fix Fortran flags for MEAM 2017-08-28 14:59:01 -06:00
bd9dc4886d cmake: README is markdown 2017-08-28 14:27:12 -06:00
9207f6540e fix liblammps install 2017-08-28 14:11:21 -06:00
736e063971 Merge branch 'master' (21893539cb Aug 25) into USER-DPD_kokkos_merge
Resolved conflicts in src/KOKKOS/npair_kokkos.cpp
2017-08-28 14:46:50 -05:00
62928a1637 make GPU flags local to libgpu 2017-08-28 13:24:41 -06:00
c8dfe0c3de drop BUILD_SHARED_PKG_LIBS and make all pkglibs static 2017-08-28 13:17:27 -06:00
6a4bbddb3b Add files via upload
data file for example
2017-08-28 14:56:37 -04:00
2add18e013 Create in.temper_npt
example for temper/npt
2017-08-28 14:55:43 -04:00
d0efd3a422 Add files via upload
Updated command to temper/npt instead of temper_npt
2017-08-28 14:48:00 -04:00
f47cc0aab5 simpilfy pkg lib build 2017-08-27 18:55:28 -06:00
57872c8b60 drop INSTALL_LIB option 2017-08-27 18:42:32 -06:00
4bff008777 enable PIC globally 2017-08-27 18:40:55 -06:00
153c771a6d Use PIC in mpi_stubs when BUILD_SHARED_LIBS=on 2017-08-27 17:27:43 -04:00
313b8bc2fa build lib/gpu as a library 2017-08-27 17:00:56 -04:00
5308ee67fa fix shared build and mscg install 2017-08-27 13:45:48 -06:00
c196025ea9 make molfile less special 2017-08-27 12:23:30 -06:00
bc11868986 cmake: fixed a typo 2017-08-27 12:13:35 -06:00
e4415735f2 check for '-fno-second-underscore' 2017-08-27 12:10:46 -06:00
98f27162ba make libmpi_stubs 2017-08-27 11:37:57 -06:00
bdc117bf10 cmake: convert mscg into a lib 2017-08-27 07:15:00 -06:00
b7ec720f91 link QUIP against LAPACK_LIB too 2017-08-27 07:13:55 -06:00
47f16c0d70 cmake: move shared libs install warning in one place 2017-08-27 07:06:08 -06:00
76926b7fcf Compile linalg as library and track link dependencies for correct link order 2017-08-27 03:54:40 -04:00
67ae2719a8 Simplify lib build by using target_include_directories 2017-08-27 03:04:32 -04:00
e52a28f8af Update docs for Kokkos version of USER-DPD package 2017-08-25 16:20:42 -06:00
01dd0e173e Merge branch 'master' into USER-DPD_kokkos_merge 2017-08-25 16:02:27 -06:00
1f8c4f2c62 Remove hardcoded map variables and debug output 2017-08-25 15:31:00 -06:00
b73999ef21 Revert change to read_data.cpp 2017-08-25 15:25:41 -06:00
1e16fed9ab Error out if using pair hybrid with Kokkos, but not pair hybrid/overlay 2017-08-25 15:16:19 -06:00
a062944de9 Fix execution space issues 2017-08-25 14:45:47 -06:00
a641289d5b Must use atomics for GPUs in pair_exp6_rx_kokkos 2017-08-25 12:36:53 -06:00
e55fa9d320 Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks 2017-08-23 15:21:39 -06:00
cbf3646806 Merge branch 'master' into USER-DPD_kokkos 2017-08-23 15:20:56 -06:00
f5a99dece7 Remove unnecessary thread fences 2017-08-23 15:08:44 -06:00
4784506ba9 Remove unused function in rand_pool_wrap_kokkos 2017-08-23 15:02:26 -06:00
270abff2a2 Fix compile error for CUDA in pair_exp6_rx_kokkos 2017-08-23 14:59:19 -06:00
5c985946d5 Merge branch 'master' into USER-DPD_kokkos 2017-08-22 13:50:19 -06:00
c5ccbbeea7 cmake: fix 'make test' 2017-08-22 07:13:04 -06:00
e2a1b666be Merge remote-tracking branch 'junghans/cmake_flags_summary' into cmake_improvements 2017-08-21 20:54:24 -04:00
ad0ecfa507 Merge remote-tracking branch 'junghans/lammps_suffix' into cmake_improvements 2017-08-21 20:53:53 -04:00
cf3f15b0a5 cmake: make h5md includes local 2017-08-21 15:04:03 -06:00
5fcc19777c cmake: fix molfile compile 2017-08-21 14:24:00 -06:00
1f4c550f9f cmake: make awpmd includes local 2017-08-21 13:09:52 -06:00
c8aa06b959 cmake: build libs separate 2017-08-21 11:12:36 -06:00
bdccdbf2c2 cmake: make linker flags more clear 2017-08-21 10:20:56 -06:00
6d86697b3f cmake: move option in user options block 2017-08-21 10:18:20 -06:00
892a3f8609 cmake: make _ in LAMMPS_MACHINE implicit 2017-08-20 09:39:51 -06:00
de5883b7bb cmake: LAMMPS_SUFFIX -> LAMMPS_MACHINE 2017-08-20 09:27:12 -06:00
b1615d1839 cmake: print flag summary 2017-08-20 09:17:49 -06:00
aef2416ece Simplify CMake script 2017-08-20 10:49:30 -04:00
00a78cfa1a cmake: add LAMMPS_SUFFIX 2017-08-20 08:30:09 -06:00
c9d41dbb47 Ignore installed package files when using cmake 2017-08-19 06:33:27 -04:00
1a80d4bc13 Remove style files in src dir while running cmake 2017-08-19 05:55:51 -04:00
822bffdfae Merge pull request #1 from amilumas/temper_npt
Temper_NPT and example
2017-08-18 15:29:59 -04:00
6aa756968d Temper_NPT and example
New function that allows for parallel tempering (replica exchange) in MD in LAMMPS in the isothermal-isobaric ensemble (NPT)
Similar to temper which works in the canonical (NVT) ensemble.
An example is included that uses temper_npt
2017-08-18 15:21:49 -04:00
13b804eeeb Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks as of patch 10Aug17 2017-08-11 14:53:44 -04:00
4041db8d1a Merge branch 'master' into USER-DPD_kokkos as of patch 10Aug17 2017-08-11 13:25:28 -04:00
378989e065 Merge pull request #27 from timattox/USER-DPD_kokkos_update
Merge changes thru July 27, 2017 from master 6d0a2286 into USER-DPD_kokkos

Includes 67a0183b which partially reverted 7f9a331c (from May 16, 2017) in USER-DPD,
since SSA neighbor lists use ghost info, so they can't currently be used as "occasional" lists.
2017-08-10 13:21:53 -04:00
e86b139817 Merge pull request #25 from timattox/USER-DPD_GBhacks_cudafix
Fix CUDA runtime issues for USER-DPD Kokkos code.
2017-08-09 15:32:03 -04:00
9695aa6092 Merge branch 'master' into USER-DPD_kokkos_testing 2017-07-27 15:51:56 -06:00
bc446bb8b0 Merge branch 'master' into USER-DPD_kokkos_testing 2017-07-25 12:12:30 -06:00
60faca2896 added tilt factors 2017-07-14 10:05:38 -06:00
ea4d11fc5e Merge branch 'master' into USER-DPD_kokkos_testing 2017-06-26 09:36:30 -06:00
67a0183b33 Removing atom2bin change since ssa neighlists aren't be used for occasional lists 2017-06-19 15:23:33 -06:00
b96b6b9cd7 Fixing error checks 2017-06-19 14:04:16 -06:00
da0dcbe0bb Updating to master 2017-06-19 10:56:24 -06:00
3c8e75ad59 Add missing sync/modify to fix_shardlow_kokkos 2017-06-09 10:57:35 -06:00
c51cadcc6c Fixing CUDA runtime issues in fix_shardlow_kokkos 2017-06-09 09:31:37 -06:00
86497949f2 Fixing CUDA runtime issues in fix_shardlow_kokkos 2017-06-08 13:40:20 -06:00
b4b7310884 Fixing CUDA runtime issues in pair_exp6_rx_kokkos 2017-06-08 13:33:23 -06:00
046900cd51 Merge pull request #26 from timattox/USER-DPD_GBhacks_optimize
Reduce memory churn in several files
2017-06-08 10:50:36 -06:00
43cfa10ea4 Reduce memory churn in pair_multi_lucy_rx_kokkos 2017-06-08 09:58:10 -06:00
6f24c58c1a Reduce memory churn in fix_rx_kokkos 2017-06-08 09:52:00 -06:00
611bb6f130 Reduce memory churn in pair_table_rx_kokkos 2017-06-08 09:31:51 -06:00
520ab26bd9 Fixing more CUDA runtime issues 2017-06-07 15:07:53 -06:00
efe60bf991 Fixing more CUDA runtime issues 2017-06-06 13:10:04 -06:00
36cbe43978 Fixing some CUDA runtime issues in npair_ssa_kokkos 2017-06-06 10:51:26 -06:00
2cf83d9fca Updating from master to 19May17 2017-05-25 11:21:10 -06:00
6032b8846e Merge branch 'exaalt' of gitlab.com:exaalt/lammps into exaalt 2017-05-17 11:36:50 -06:00
98713680ec added alternative linking line for intel mkl 2017-05-17 11:36:31 -06:00
ca4619e227 Fix format issue in pair_exp6_rx_kokkos 2017-04-11 09:14:21 -06:00
6c0b691882 Removing more memory churn in pair_exp6_rx_kokkos 2017-04-11 09:12:46 -06:00
035d0a80d7 Reducing memory churn in pair_exp6_rx_kokkos 2017-04-10 16:38:58 -06:00
178af2ec9e USER-DPD Kokkos: use a parallel_for() to build the ghosts workplan for SSA 2017-04-06 03:53:57 -04:00
9e272cb393 USER-DPD Kokkos: use a parallel_for() to build the locals workplan for SSA 2017-04-06 02:31:45 -04:00
ad5481831f Merge branch 'USER-DPD_GBhacks' into USER-DPD_GBhacks_ssa_mem as of patch 31March17 2017-04-05 16:38:44 -04:00
456926a321 Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks as of patch 31March17 2017-04-05 16:18:39 -04:00
bceaa57614 Merge branch 'master' into USER-DPD_kokkos as of patch 31Mar17 2017-04-05 15:05:47 -04:00
4d4b6f66b7 Changing default gb/test to on 2017-04-05 11:42:25 -06:00
aedd7c57f3 Reset atom map values from restart file 2017-04-03 16:42:18 -06:00
2b2f3bd57c USER-DPD Kokkos: #ifdef DEBUG_SSA_BUILD_LOCALS the new debug output 2017-04-02 00:07:24 -04:00
c4c3d490c7 USER-DPD Kokkos: preflight storage needed for SSA threaded neigh list build 2017-04-01 23:52:14 -04:00
e0021a3ff5 USER-DPD Kokkos: preflight SSA neigh list workplan to reduce allocated storage 2017-04-01 14:41:52 -04:00
ac4c35ce8d USER-DPD Kokkos: more WIP on preflighting SSA neighbor list build, with debugging 2017-04-01 13:45:29 -04:00
ac64183ecf USER-DPD Kokkos: WIP on preflighting SSA neighbor list build, with debugging 2017-04-01 12:11:55 -04:00
6ba59cb458 fix memory leak in fix_shardlow_kokkos 2017-03-31 17:04:39 -06:00
fe82926c1f fix memory leaks in pair_tabl_rx_kokkos 2017-03-31 17:04:27 -06:00
697b072552 Merge pull request #21 from ibaned/dpd-memleaks
DPD memory leaks: round 2
2017-03-31 16:43:25 -06:00
5edbd63920 fix memory leak in fix_shardlow_kokkos 2017-03-31 16:03:05 -06:00
bf4f0817d4 fix memory leaks in pair_tabl_rx_kokkos 2017-03-31 15:57:00 -06:00
085958f065 Merge remote-tracking branch 'timattox/USER-DPD_GBhacks' into dpd-memleaks 2017-03-31 15:02:02 -06:00
b3d6d9f8cf fix memory leak via NeighListKokkos::clean_copy()
There were several clean_copy() calls in pair
styles *outside device code*.
They seem to have been left over from an abandoned
effort to copy the Kokkos neighbor list as
a member of the pair style, instead of copying
out the individual views needed.
These leftover clean_copy() calls were setting
pointers to NULL that had not been freed,
leading to large memory leaks.
I've removed the clean_copy() function entirely,
and replaced it with the copymode flag system used
in many other Kokkos objects.
The copymode flag is only set to one in
functors that hold copies of the neighbor list.
2017-03-28 13:01:22 -06:00
7041f75fce Merge pull request #20 from ibaned/dpd-memleaks
fix memory leak via NeighListKokkos::clean_copy()
2017-03-28 12:53:34 -06:00
20ae05055d fix memory leak via NeighListKokkos::clean_copy()
There were several clean_copy() calls in pair
styles *outside device code*.
They seem to have been left over from an abandoned
effort to copy the Kokkos neighbor list as
a member of the pair style, instead of copying
out the individual views needed.
These leftover clean_copy() calls were setting
pointers to NULL that had not been freed,
leading to large memory leaks.
I've removed the clean_copy() function entirely,
and replaced it with the copymode flag system used
in many other Kokkos objects.
The copymode flag is only set to one in
functors that hold copies of the neighbor list.
2017-03-28 11:38:26 -06:00
661bd37e15 Make read_restart evenly divide the work of reading when using mpiio.
Currently only affects restart files written without any per-atom fix data.
2017-03-27 15:03:34 -05:00
0463923e33 USER-DPD Kokkos: tighten up the SSA data allocation to what is needed.
A future version was planned to use more space for a ghost work queue.
2017-03-27 11:04:41 -05:00
28784a4ce2 Now with the correct math, make read_restart properly size the atom_vec_* data 2017-03-27 08:38:40 -05:00
5f0823172c Make read_restart properly size the atom_vec_* data when reading via mpiio 2017-03-27 06:56:28 -04:00
b418b46a03 USER-DPD: bugfix for an array that changed length in the non-kokkos version. 2017-03-27 06:56:16 -04:00
df95b2c566 testing simple ci, more complex #1 2017-03-23 22:27:42 -06:00
969325bf44 testing simple ci, attempt 4 2017-03-23 10:08:09 -06:00
e598762857 testing simple ci, attempt 3 2017-03-23 10:04:03 -06:00
8d793d4223 testing simple ci, attempt 2 2017-03-23 10:03:24 -06:00
756c899564 testing simple ci 2017-03-23 10:01:21 -06:00
3533df38d8 Merge branch 'virial1' into 'exaalt'
cleaned fix latte

See merge request !1
2017-03-22 15:48:36 +00:00
f7bdf128ea cleaned fix latte 2017-03-22 09:35:47 -06:00
7ed500e829 added virial 2017-03-21 17:09:42 -06:00
3c91f9734d make RK solver check in fix_rx_kokkos.cpp be as lenient as in fix_rx.cpp
NOTE: the (y < -MY_EPSILON) test was too strict, but don't know by how much
This needs to be revisited before merging back to LAMMPS master.
2017-03-21 17:12:09 -04:00
4ad1c82fcf Merge branch 'USER-DPD_GBhacks' into USER-DPD_GBhacks_cps 2017-03-20 14:37:32 -04:00
ce94d7a4df Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks 2017-03-20 12:16:01 -06:00
2c93065786 Merge branch 'master' of https://github.com/lammps/lammps into USER-DPD_kokkos 2017-03-20 12:13:35 -06:00
20de98e898 Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks, bring in bugfix 2017-03-19 21:22:59 -04:00
a68f3a93e5 USER-DPD Kokkos: bugfix, add a misisng line of code in pair_exp6_rx_kokkos.cpp 2017-03-19 21:12:52 -04:00
b3c46b7269 Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks, bugfix for bonds 2017-03-17 20:15:24 -04:00
fff43a4604 USER-DPD Kokkos: bugfix for npair_ssa_kokkos.cpp corresponding to 0cd3f0cd 2017-03-17 19:33:04 -04:00
0cd3f0cd63 USER-DPD: bugfix for npair_half_bin_newton_ssa when bonds are involved.
Only locals have valid special[] arrays, so when finding neighbors of
ghosts, we have to swap the arguments to find_special().
2017-03-17 19:22:02 -04:00
75670244bb Added ONE-TYPE template capability to vectorized_operator and cleaned up timers. 2017-03-17 17:02:47 -04:00
64fdb1f528 Kokkos/pair_exp6_rx_kokkos optimized for SIMD on the inner j-loop. 2017-03-17 15:52:40 -04:00
eb1a4d11dd Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks, as of patch 17March17 2017-03-17 15:18:24 -04:00
1c749d5cf5 Merge branch 'master' of https://github.com/lammps/lammps into USER-DPD_kokkos 2017-03-17 12:09:25 -06:00
a719f41426 Merge remote-tracking branch 'thunder/USER-DPD_kokkos_gb_test' into USER-DPD_GBhacks_cps 2017-03-17 10:26:44 -04:00
ba069fb755 Merge remote-tracking branch 'thunder/USER-DPD_GBhacks' into USER-DPD_GBhacks_cps 2017-03-17 10:11:00 -04:00
4a7bc115cb Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks, bring in MPI deadlock fix 2017-03-17 03:24:03 -04:00
5ea096d08c Merge branch 'master_bugfix_irregular' into USER-DPD_kokkos 2017-03-17 03:19:29 -04:00
ec192a95cb Cleaned up the non-kokkos part of KOKKOS/pair_exp6_rx_kokkos.cpp 2017-03-16 22:28:19 -04:00
f5b7361ef6 Non-kokkos candidate of PairExp6rxKokkos::getMixingWeights to improve vectorization on the KNL.
- Moved the particle loop inside a replica of getMixingWeights, getMixingWeightsVect,
  and refactored to improve vectorization.
- Added OMP SIMD and OMP threading directly inside that function but will replace with
  kokkos parallel_for and parallel_reduce methods later.
2017-03-16 21:31:30 -04:00
acdb932c4e Fixing index issue in pair_exp6_rx_kokkos 2017-03-16 09:28:27 -06:00
ce9b3f4fcb Merge branch 'USER-DPD_kokkos' into USER-DPD_GBhacks 2017-03-15 18:17:39 -05:00
7ebed717de Adding gb_test 2017-03-15 16:05:51 -06:00
bdee2fa234 Merge branch 'master' of https://github.com/lammps/lammps into USER-DPD_kokkos 2017-03-15 15:59:55 -06:00
bd7f4143e2 Merge pull request #18 from ibaned/pair-table-rx-kokkos-slow
pass Views by reference for pair_table_rx_kokkos
2017-03-15 09:47:42 -06:00
f4a08ba4fc pass Views by reference for pair_table_rx_kokkos
this greatly speeds up pair_table_rx_kokkos,
and should put it on par with pair_table_rx
in the Serial case
2017-03-15 09:25:16 -06:00
5925460a27 Improve the performance of read_data of gzip'ed files using taskset.
Normally, the gzip process would be pinned to the same core as the
MPI rank 0 process, which makes the pipe stay in one core's cache,
but forces the two process to fight for that core, slowing things down.
2017-03-14 14:27:23 -05:00
d2cbfef13b Add CUDA support to atom_vec_hybrid_kokkos 2017-03-13 09:01:35 -06:00
4b4bc7dc3b USER-DPD: specialize PairTableRXKokkos's compute_all_items() on NEWTON_PAIR
No noticable performance change, but it does eliminate a deep conditional.
2017-03-13 03:03:27 -04:00
d5eceebf32 USER-DPD Kokkos: add support for full neighbor lists.
Note: "newton on" still required if using non-kokkos pair styles or fixes.
Non-kokkos pairs/fixes don't expect their half lists with newton off,
which happens if newton is turned off globally by kokkos via commandline.
Note2: Regardless, fix_shardlow* will still use half lists and newton on.
2017-03-13 01:56:00 -04:00
b1b377cb59 USER-DPD: fix_shardlow's neighbor request needs "newton on" override.
Even if other stuff is doing newton off, SSA must have it turned on.
2017-03-12 17:48:51 -04:00
e908b8dbea USER-DPD Kokkos: correct some error messages 2017-03-12 16:20:09 -04:00
d6f6c6faf1 USER-DPD: Make newton-off warning in pair_dpd_fdt* be more selective.
If using fix_shardlow, the pair_dpd_fdt* styles are okay with newton off,
because the stocastic forces are thus only done in fix_shardlow.
2017-03-12 16:05:28 -04:00
17c8e695a4 Merge branch 'master' into USER-DPD_kokkos as of patch 10 Mar 2017 2017-03-10 21:37:52 -05:00
c7eadfdefd Merge branch 'master' into USER-DPD_kokkos 2017-03-10 16:29:09 -05:00
6f71275db3 Add Kokkos version of atom_vec_hybrid_kokkos, without CUDA support 2017-03-09 15:35:07 -07:00
3298c37982 Makefile.lammps.gfortran for latte 2017-03-09 14:30:21 -07:00
35e1cf1d6e Fixing issue with ev_setup in pair_hybrid_kokkos 2017-03-08 20:02:02 -07:00
fc23f9cfe8 Disable allocation of per-atom arrays in ev_setup for USER-DPD Kokkos styles 2017-03-08 13:07:52 -07:00
0ce5dc0234 Merge remote branch 'stanmoore1/ev_setup_kk' into USER-DPD_kokkos_ev_setup_bugfix 2017-03-08 13:05:15 -07:00
d01f09dce2 Turn off use of OpenMP in MPIIO/dump_custom_mpiio.cpp if Kokkos is in use.
The convert_string_omp() method breaks when Kokkos is also using OpenMP.
2017-03-07 15:23:17 -05:00
de27305227 Merge branch 'master' of https://github.com/lammps/lammps into USER-DPD_kokkos 2017-03-07 11:47:18 -07:00
5b3101cb34 Merge pull request #16 from ibaned/cuda-runtime
Many CUDA runtime fixes
2017-03-06 16:02:52 -07:00
b8c72c7bdb don't query device variables from the host 2017-03-06 15:51:09 -07:00
527a573026 don't use device views to measure dimensions 2017-03-06 15:42:26 -07:00
3e3a24da48 consolidate sorting functions
two sort functions with different
names but identical functionality.
making them the same function
until we descide to use a different
algorithm for atoms and ghosts
2017-03-06 15:28:25 -07:00
a7d1b571be don't capture "this" in lambdas
CUDA lambdas can't capture the calling
object very well.
make local shallow copies of variables needed.
2017-03-06 15:07:07 -07:00
4a6f27935d fix lambda syntax for CUDA
KOKKOS_LAMBDA doesn't quite work on CUDA,
you have to use LAMMPS_LAMBDA.
Also, if you do use LAMMPS_LAMBDA, you need
to run on the default device type,
i.e. no using lambdas to run on OpenMP
when LAMMPS has been compiled for CUDA.
2017-03-06 14:58:40 -07:00
a2c80d2cca Merge remote-tracking branch 'fork/cuda-compile' into cuda-runtime 2017-03-06 14:50:43 -07:00
886cc69dfb Merge pull request #15 from ibaned/cuda-compile
add missing KOKKOS_INLINE_FUNCTION to fix_shardlow
2017-03-06 11:05:49 -07:00
3e8cfb8247 The wonders of git commit -a 2017-03-06 11:04:47 -07:00
c2c22fc2ed add missing KOKKOS_INLINE_FUNCTION to fix_shardlow 2017-03-06 10:57:19 -07:00
b35895ca12 USER-DPD Kokkos: Remove the SSA's ALLOW_NON_DETERMINISTIC_DPD option.
There was no measurable performance benefit to turning it on.
2017-03-03 15:21:09 -05:00
635c448b61 USER-DPD: sort bins for deterministic SSA instead of using Kokkos::Serial 2017-03-03 14:57:35 -05:00
c1739cae97 Merge pull request #14 from timattox/USER-DPD_kokkos_ssa
USER-DPD Kokkos: work around CUDA not having max_hardware_threads()
2017-03-03 13:29:20 -05:00
0651ea7f69 USER-DPD Kokkos: work around CUDA not having max_hardware_threads() 2017-03-03 12:50:13 -05:00
c468727db0 Fixing issue in fix_wall_lj93_kokkos 2017-03-03 10:49:15 -07:00
a7e8550962 USER-DPD Kokkos: turn one_type optimization into a template specialization 2017-03-03 10:38:45 -05:00
7e78921c96 USER-DPD Kokkos: propagate 763a00e8 bugfix to pair_multi_lucy_rx_kokkos.cpp 2017-03-03 10:12:44 -05:00
27d6284ebe Merge branch 'USER-DPD_bugfix' into USER-DPD_kokkos, pair_multi_lucy_rx 2017-03-03 09:52:42 -05:00
f11b83ecd2 Merge branch 'USER-DPD_kokkos_ssa' into USER-DPD_kokkos 2017-03-02 16:37:03 -05:00
3820c5881d Adding fix_wall_lj93_kokkos 2017-03-02 14:02:49 -07:00
27d2e9bf56 USER-DPD: add npair_halffull_newton_ssa to Purge.list
With the new SSA neighbor list, half from full can't work,
and will break compiles if the old files are in the src directory
2017-03-02 15:03:33 -05:00
d95fbf3a5e USER-DPD Kokkos: use Random_XorShift64() by default, but allow overrides 2017-03-02 15:01:41 -05:00
5c6b0cc85c removed fix_latte from src folder 2017-03-01 16:34:20 -07:00
03c05537fb Merge branch 'USER-DPD_kokkos' into USER-DPD_kokkos_ssa_debug 2017-03-01 15:49:12 -05:00
8210b25fb8 USER-DPD Kokkos: replicate 9a560b90 bugfix to atom_vec_dpd_kokkos.cpp 2017-03-01 15:34:24 -05:00
8c625a52de Merge branch 'USER-DPD_bugfix' into USER-DPD_kokkos, AtomVecDPD hybrid bugfix 2017-03-01 15:29:44 -05:00
ed089c34cf USER-DPD Kokkos: Now use the deterministic Random_XorShift64() for SSA 2017-03-01 14:18:14 -05:00
268e855a15 USER-DPD Kokkos: bugfix for the rare case were the SSA ghost
processing has more parallelism than for the locals.
2017-03-01 14:14:29 -05:00
48ed963fd2 latte in added 2017-03-01 12:05:00 -07:00
1025c25548 latte.in added 2017-03-01 09:55:33 -07:00
78a8f75a8f params added 2017-03-01 09:53:50 -07:00
641bf72f20 lib kokkos: Enable deterministic use of Random_XorShift*_Pool.
Add support for lock-free and deterministic use of Random_XorShift*_Pool
by giving state_idx selection and lock responsibility up to the
application.  Done by an overload of get_state() to take sate_idx as
an argument that the appplication guarantees is concurrently unique
and within the range of num_states that the application passed to init().
In other words, this allows the RNG state to be associated with some
application specific index, rather than a runtime arbitrary thread ID,
and thus the application can control which work is performed using
which RNG in a deterministic manner, regardless of which thread
performs the work.
2017-03-01 11:52:33 -05:00
6e26358ec3 lib kokkos bugfix: on a CUDA host, the random state wasn't preserved.
Random_XorShift*_Pool<Kokkos::Cuda>::free_state() has two purposes:
1) update the state value kept in the pool
2) unlock the state
For a CUDA host thread, ONLY skip step 2, not both.
2017-03-01 11:46:26 -05:00
bf1794f59a Merge branch 'USER-DPD_kokkos' into USER-DPD_kokkos_ssa_debug 2017-03-01 10:29:33 -05:00
0982331c71 USER-DPD Kokkos: replicate 7a593c2f bugfix to pair_table_rx_kokkos.cpp 2017-03-01 09:49:24 -05:00
3ae77e718a Merge branch 'USER-DPD_bugfix' into USER-DPD_kokkos 2017-03-01 09:45:50 -05:00
b26a434a50 USER-DPD Kokkos: Add "#ifdef ALLOW_NON_DETERMINISTIC_SSA" toggle
SSA atom binning algorithm was adjusted to do as much work in
parallel while preserving deterministic behavior.  The final
step is done serially to preserve deterministic behavior.
An alternative would be to sort the contents of the bins so
that they are always in the same order.
2017-02-28 12:53:56 -05:00
2b78ac2146 USER-DPD Kokkos: Add "#ifdef DPD_USE_RAN_MARS" toggle
Also, initialize the rand_pool with a seed in init_style()
2017-02-28 12:49:11 -05:00
9736fb3be8 added sucrose latte min example 2017-02-28 10:40:46 -07:00
a5507b291d USER-DPD Kokkos: give each workItem index a unique instance of RanMars
Makes fix_shardlow_kokkos deterministic across runs and thread count.
2017-02-26 18:00:20 -05:00
3eba3e5a1b USER-DPD Kokkos: for deterministic results, serialize bin_atoms() for now. 2017-02-26 17:57:13 -05:00
e4b544f934 Make pair_dpd_fdt_energy's random seed public so fix_shardlow can use it. 2017-02-26 17:53:45 -05:00
35ee24cfad use RandWrap in pair_dpd_fdt_energy_kokkos and fix_shardlow_kokkos 2017-02-26 14:50:58 -05:00
e4500859a3 USER-DPD: add "#ifdef DEBUG_PAIR_CT" debugging code to fix_shardlow* 2017-02-24 22:24:29 -05:00
fd1523c756 USER-DPD Kokkos: add missing () in STACKPARAMS check in ssa_update_* 2017-02-24 22:19:53 -05:00
21619b2976 USER-DPD Kokkos: correct the setup of the ghost SSA workplan 2017-02-24 22:16:33 -05:00
b053c367ea USER-DPD Kokkos: remove extranious debugging code 2017-02-24 19:09:07 -05:00
c2e3a76225 USER-DPD Kokkos: rand seed can't be zero, so add some salt. 2017-02-24 19:07:55 -05:00
6ea290a699 DEBUG: make FixShardlowKokkos have it's own rand_pool, plus debug code.
ssa_update_dpde() hangs on first use of rand_gen.normal()
Switching to not using a pointer to PairDPDfdtEnergyKokkos's rand_pool
had no noticble effect.
2017-02-24 17:41:57 -05:00
c56e0692b9 USER-DPD Kokkos: enable install of SSA Kokkos code 2017-02-24 17:38:46 -05:00
71379487ab USER-DPD: variety of fixes for new SSA Kokkos code. Still not functional. 2017-02-24 17:35:58 -05:00
f7a48719ad USER-DPD: first attempt at fix_shardlow_kokkos... It compiles! 2017-02-24 13:35:48 -05:00
a341a6bca9 USER-DPD: make locals & ghosts use similar SSA work plan data structure
Kokkos SSA won't use AIRct_ssa[], but still used for non-Kokkos for now.
2017-02-24 13:27:27 -05:00
2f04e87d07 USER-DPD: make PairDPDfdtEnergyKokkos's rand_pool public so it can be reused 2017-02-24 13:24:18 -05:00
aecafecaa2 USER-DPD: fix missing host prefixes in AtomVecDPDKokkos::pack_comm 2017-02-24 13:21:26 -05:00
1db62a57b5 USER-DPD: pair_dpd_fdt_energy_kokkos: enable STACKPARAMS specialization 2017-02-24 13:17:49 -05:00
2dcbc805ba min latte partially fixed 2017-02-23 18:20:02 -07:00
b27cc8f474 USER-DPD: use LAMBDA instead of functor for ghost binning in nbin_ssa_kokkos 2017-02-22 15:08:24 -05:00
8065d96761 USER-DPD: first attempt at npair_ssa_kokkos... It compiles! 2017-02-22 15:08:24 -05:00
01d0a5c4a2 BUGFIX: use Kokkos::atomic_fetch_max() to avoid a race on new_maxneighs 2017-02-22 15:08:24 -05:00
5c6e7b12c6 BUGFIX: fix a copy-o in build_Item_Ghost(): xbin2, etc. should be an int
xbin2, ybin2, and zbin2 are temporary integer bin coordinates, not floats!
2017-02-22 15:08:24 -05:00
19ffe59315 USER-DPD: fix typo in NPairHalfBinNewtonSSA::build(): sz1 instead of sx1
Luckily, no real change, since sz1 and sx1 are normally identical.
2017-02-22 15:08:23 -05:00
37810bdc53 USER-DPD: move centroid bin of stencil_ssa to the first slot.
Eliminates a special case version of a loop just for Subphase 0.
NOTE: pair evaluation order changes, causing numerical differences!
This changed the order that close neighbors of ghosts are processed.
2017-02-22 15:08:23 -05:00
7feb6c2853 USER-DPD: fix a bug in AtomVecDPDKokkos::unpack_restart() 2017-02-22 15:08:23 -05:00
d1a0a3e1c3 USER-DPD: first attempt at nbin_ssa_kokkos... It compiles! 2017-02-22 15:08:22 -05:00
c2ee3285fc USER-DPD: change nstencil_ssa[] to eliminate a corner case
Saves a conditional inside an NPairHalfBinNewtonSSA::build() inner loop
2017-02-22 15:08:22 -05:00
5289ec0b39 cleanup: remove unused binatomsItem() declaration in npair_kokkos.h 2017-02-22 15:08:22 -05:00
e0bafa499d indentation fixes in npair_kokkos.cpp, plus a comment question 2017-02-22 15:08:22 -05:00
4b3197202b USER-DPD: Rework SSA to use a new neighbor list structure, ready for Kokkos
NOTE: pair evaluation order changes, causing numerical differences!
Atom pair processing order is fully planned out in npair_half_bin_newton_ssa
Makes the SSA neighbor list structure very different. Do not use by others!
Each local is in ilist, numneigh, and firstneigh four times instead of once.

Changes LAMMPS core code that had been previously changed for USER-DPD/SSA:
Removes ssaAIR[] from class Atom as it is now unused.
Removes ndxAIR_ssa[] from class NeighList as it is now unused.
Increases length of ilist[], numneigh[], and firstneigh[] if SSA flag set.
2017-02-22 15:08:21 -05:00
ab32d136b9 USER-DPD: SSA with Kokkos: make stencil's sx, sy, sz variables public 2017-02-22 15:08:21 -05:00
151b3f552b USER-DPD: Save pointer to the NPair used to create the NeighList
Gives a user of NeighList access to data stored in a custom NPair
2017-02-22 15:08:21 -05:00
52aaad907f USER-DPD: SSA with Kokkos: Reorder stencil subphases to make things easier. 2017-02-22 15:08:20 -05:00
be166cb5bf USER-DPD: Use subphases when processing AIR zero (locals) in SSA.
NOTE: pair ordering was NOT changed, but tiny differences could occur.
2017-02-22 15:08:20 -05:00
ee83b755ea USER-DPD: Split the SSA stencil and neighbor list into subphases.
NOTE: pair evaluation order changes, causing numerical differences!
This enables processing neighbors in subphase groups that enforce
a geometrical seperation of pairs, allowing greater parallelism
once fix_shardlow (SSA) is converted to Kokkos.
2017-02-22 15:08:20 -05:00
ce2da5068b USER-DPD: renumber AIRs back to 1-7 for ghosts, and just 0 for locals.
This removes the the distinction between pure and impure locals.
Pure and impure locals messed up the directionality of half neighbor lists,
which turns out is crucial to the approach for SSA with kokkos.
2017-02-22 15:08:19 -05:00
641bb4bb16 USER-DPD: remove use of ssaAIR[], move coord2ssaAIR() to nbin_ssa.cpp
Saves an int per atom and ghost, also simplifies and reduces code size.
2017-02-22 15:08:19 -05:00
f73c9a43ab USER-DPD: remove broken code for building SSA half neighbor list from full 2017-02-22 15:08:19 -05:00
3dddeef365 USER-DPD: remove unneeded gairct_ssa[] & anum vars, and some > 0 guards 2017-02-22 15:08:19 -05:00
fb279a87f5 USER-DPD: properly compute AIRct_ssa values, and use them in fix_shardlow.
Eliminates last use of per-atom ssaAIR values within initial_integrate()
2017-02-22 15:08:18 -05:00
e9d46f4e7a USER-DPD: Correct an error message typo. 2017-02-22 15:08:18 -05:00
e42678ed51 USER-DPD: track & use the extent of the local atoms in the bins 2017-02-22 15:08:18 -05:00
ff2786c86c USER-DPD: Make another version of coord2bin() for nbin_ssa 2017-02-22 15:08:17 -05:00
6384486764 USER-DPD: Copy inline coord2bin() functions from nbin_kokkos into nbin_ssa 2017-02-22 15:08:17 -05:00
0512e78860 USER-DPD: new neighbor list code for SSA that gives neighbors to ghosts.
This simplifies the processing of the neighbor list in fix_shardlow.
NOTE: pair evaluation order changes, causing numerical differences!
2017-02-22 15:08:17 -05:00
2db66e49b4 USER-DPD: make pair_dpd_fdt* check more generically for use of fix_shardlow
Allows easier experimentation of alternative shardlow implementations.
2017-02-22 15:08:17 -05:00
e76cad358b Merge branch 'FixRX_Kokkos_merge' into USER-DPD_kokkos 2017-02-22 14:25:41 -05:00
0a751c5901 KOKKOS: fix a compile-time error caused by merge of patch 21Feb17
Remove the unused PairHybridOverlayKokkos::modify_requests() method
The patch removed the parent PairHybridOverlay::modify_requests()
2017-02-22 11:52:20 -05:00
83988a1026 Merge branch 'master' into USER-DPD_kokkos as of patch 21Feb17 2017-02-22 11:29:01 -05:00
acc5bde0fe Removed printf's from FixRXKokkos and FixRX.
- Commented out the printf's in FixRXKokkos and FixRX used for
  active debugging.
2017-02-13 16:36:30 -05:00
799d55e097 Switched to operator()'s and Tag's for the Kokkos launch objects.
- Switched from using lambda functions to operator()'s with type tags
  in FixRxKokkos. The lambda's were giving big problems in Cuda with
  the memory objects. This required that all referenced views be members
  of the FixRXKokkos class.
- Add copymode controls to solve_reactions() to avoid the destructor
  freeing pointers carried forward from the copy constructor. Added
  the same to FixRX since its called, too.
2017-02-13 16:33:21 -05:00
4e9c8f4962 Update FixRXKokkos for Cuda build. Added inline and other KOKKOS macros.
- Updated the function prototypes to include the necessary KOKKOS
macros for __host__ and __device__ functions and inlined functions.
- Changed several View definitions to match the disjoint memory spaces
that only come up with Cuda builds.
2017-02-13 16:33:21 -05:00
2f32c1a9af Switched to using Kokkos device data for ODE scratch data.
- Finished porting all scratch arrays to using the StridedArrayType
  template.
- Created a single, large Kokkos device array and using that for all
  scratch data passed into the StridedArrayType objects.
2017-02-13 16:33:20 -05:00
4ac7a5d1f2 Added Kokkos-like array datatype into RK4 and RHS in FixRXKokkos.
- Created an Array class that provides stride access for operator[]
  w/o needing Kokkos views. This was designed to avoid the performance
  issues encountered with Views and sub-views throughout the RHS and
  ODE solver functions.
2017-02-13 16:33:20 -05:00
93d99ec8d0 Added ODE diagnostics to FixRxKokkos using Kokkos managed data.
- Added the diagnostics performance analysis routine to FixRxKokkos
  using Kokkos views.
TODO:
  - Switch to using Kokkos data for the per-iteration scratch data.
    How to allocate only enouch for each work-unit and not all
    iterations? Can the shared-memory scratch memory work for this,
    even for large sizes?
2017-02-13 16:33:19 -05:00
4e8351d9c8 Code clean-up for FixRxKokkos.
- Removed dead code and old errors.
TODO:
  - Per-thread scratch data in kokkos.
  - ODE Diagnostics in kokkos.
2017-02-13 16:33:19 -05:00
f2d005fb8d Fixed errors in FixRxKokkos kokkos neighbor lists initialization and
usage and calls to computeLocalTemperature.

- Created request for kokkos neighbor list for fix and switched to
  that neighbor list datatype in computeLocalTemperature.
- Reconfigured pre_force and setup_pre_force to call a common
  solve_reactions() method to avoid duplicate code.
TODO:
  - Clean-up
  - Provide per-problem scratch data within kokkos framework (instead
    of C++ new/delete data).
2017-02-13 16:33:18 -05:00
0d57a1d831 Added setup_pre_force, pack/unpack methods to FixRxKokkos.
- Added a kokkos version of setup_pre_force that only sets dvector
  and then communicates that.
- Converted all for loops to parallel_for's in computeLocalTemperator()
  and setup_pre_force.
- Added pack/unpack forward/reverse methods with Kokkos host views.

TODO:
 - The Kokkos neighbor list is not working. Need to request a Kokkos
   neighbor list in ::init(). Then, replace objects like list->ilist[]
   with k_list->d_ilist().
2017-02-13 16:33:18 -05:00
acba25c383 Added kokkos datatypes to FixRxKokkos::computeLocalTemperature(...)
Added kokkos dual-view datatypes used in computeLocalTemperature and
pre_force (e.g., dpdThetaLocal) but still using the original host
pointers for the pack/unpack operations.

TODO:
- The Kokkos neighbor list is not working. Need to request a Kokkos
  neighbor list in ::init(). Then, replace objects like list->ilist[]
  with k_list->d_ilist().
- Add another template parameter for HALFTHREAD and create (automatic)
  atomic view of dpdThetaLocal and sumWeights.
- Add modify/sync comments and replace the host-only pointers in the
  pack/unpack methods.
2017-02-13 16:33:17 -05:00
843f3a9192 Updates to FixRxKokkos ...
- Added templated computeLocalTemp<>() to FixRxKokkos but still
  using the original host data pointers.
- Updated the copy-back to dvector operation to be the same with
  RK4 and RKF45 per discussion with J. Larentzos.
TODO:
  - Add kokkos data for computeLocalTemp and parallel_for loop.
2017-02-13 16:33:15 -05:00
2ea900df00 Updated FixRxKokkos to use kokkos-managed data objects.
- Switched to use kokkos dvector, mask, and dpdTheta views
  from atomKK.
2017-02-13 16:33:13 -05:00
70fa9189a8 Updated KOKKOS installer and updated USER-DPD FixRx to match KOKKOS version.
- Updated the KOKKOS installer to include the fix_rx_kokkos.[cpp,h].
- Updated the USER-DPD version of fix_rx.[cpp,h] to sync with the Kokkos
  version. Solves child->parent class dependencies.
2017-02-13 16:33:09 -05:00
41d3903f5a Added kokkos-managed parameters for FixRxKokkos.
- Added kokkos-managed parameter data for the kinetics equations.
- Removed dependencies in rhs() on atom and domain objects.

TODO:
  1. Switch to using KOKKOS data for dvector.
  2. Port ComputeLocalTemp(...) to Kokkos (needs pairing algorithm).
2017-02-13 16:33:05 -05:00
43d61f313f Initial bare-bones port of FixRX to Kokkos.
Initial port of USER-DPD/fix_rx.cpp to KOKKOS/fix_rx_kokkos.cpp.
Using parallel_reduce(...) but still using host-only data.
TODO:
  1. Switch to KOKKOS datatypes for sparse-kinetics data; dense
     is finished.
  2. Switch to using KOKKOS data for dvector.
  3. Remove dependencies in rhs(...) on atom. Store those consts
     in UserData{} or as member constants.
  4. Port ComputeLocalTemp(...) to Kokkos (needs pairing algorithm).
2017-02-13 16:33:02 -05:00
dc16228a60 Merge branch 'USER-DPD_ssa_update' into USER-DPD_kokkos 2017-02-13 15:03:14 -05:00
96a43e8ef1 Merge branch 'master' into USER-DPD_kokkos as of patch 13Feb17 2017-02-13 12:29:41 -05:00
dc9c2399b2 Merge branch 'master' into USER-DPD_kokkos
Fixed trivial merge conflict in src/KOKKOS/Install.sh
2017-02-06 15:45:26 -05:00
b3e9006aef Merge branch 'master' into USER-DPD_kokkos 2017-01-30 12:04:30 -05:00
a1f4551ac2 Adding missing sync/modified in atom_vec_dpd_kokkos 2017-01-27 10:18:41 -07:00
f3c5919606 Merge remote branch 'upstream/master' into USER-DPD_kokkos 2017-01-27 08:08:05 -07:00
ebe27c65e1 Removing duplicate code in pair_exp6_rx_kokkos 2017-01-26 10:33:03 -07:00
85c8db5f86 Fixing warning in pair_dpd_fdt_energy_kokkos 2017-01-26 10:10:52 -07:00
be13ecfa17 Fixing Kokkos warnings 2017-01-26 10:10:42 -07:00
6cc969db92 Fixing warnings in Kokkos 2017-01-26 09:24:13 -07:00
8050eb3aa8 Another tweak to sync/modify in pair_multi_lucy_rx_kokkos 2017-01-26 09:17:59 -07:00
c617bc180a Adding sync/modify to pair_multi_lucy_rx_kokkos 2017-01-26 08:52:17 -07:00
8e808f6c6b Zeroing variables in pair_exp6_rx_kokkos to match pull request 2017-01-24 11:45:27 -07:00
5897955e2e Fixing GPU memory issue in fix_eos_table_rx_kokkos 2017-01-24 11:24:47 -07:00
f9bc81b924 Merge branch 'master' into USER-DPD_kokkos as of patch 20 Jan 2017. 2017-01-20 16:43:13 -05:00
0887ff1273 Merge pull request #13 from timattox/master
simplified neighbor list copying, merge from Master branch, merged #13.
2017-01-20 09:37:07 -07:00
521f3df3d5 Initialize variables in pair_exp6_rx_kokkos 2017-01-19 16:54:50 -07:00
6d47cf350c Makefile for latte_dev 2017-01-19 15:42:09 -07:00
de6442d845 Fixing GPU memory issues in Kokkos 2017-01-19 11:55:22 -07:00
917ca19b34 Fixing GPU memory issue in modify_kokkos, need to cherry pick back to Master 2017-01-19 09:54:15 -07:00
cf83ce4543 Adding zero compute to pair_dpd_fdt_energy_kokkos 2017-01-19 08:44:30 -07:00
116ae9d0c4 Fixing copy bug in pair_exp6_rx_kokkos 2017-01-18 14:51:35 -07:00
e05b132289 Fixing error check in fix_eos_table_rx_kokkos 2017-01-18 14:18:35 -07:00
4f2fcee6df Merge branch 'master' into USER-DPD_kokkos as of 3af4b3c28 on 18 Jan. 2017
Includes a critical bugfix for using USER-DPD and MOLECULE together.
2017-01-18 15:08:32 -05:00
2d32fa8ccb Fixing GPU memory issues in atom_vec_dpd_kokkos 2017-01-18 12:53:40 -07:00
b38733e5a2 Fixing GPU memory issue in pair_exp6_rx_kokkos 2017-01-18 10:15:06 -07:00
96636c7514 Fixing warnings in pair_exp6_rx_kokkos 2017-01-17 16:43:55 -07:00
5569c4c130 Fixing GPU memory issue with fix_property_atom_kokkos 2017-01-17 16:19:25 -07:00
8b4130c0cb Fixing issue with pressure in pair_hybrid_kokkos 2017-01-17 13:28:55 -07:00
91d68e26ef Prevent overlapping host/device computation in pair_hybrid_kokkos 2017-01-17 12:26:00 -07:00
883385c8e4 Merge branch 'master' into USER-DPD_kokkos as of patch 17Jan17 2017-01-17 13:19:06 -05:00
e3153e0b30 Merge pull request #12 from ibaned/pair-table-rx-kokkos
fix CUDA type issues in pair_table_rx_kokkos
2017-01-13 14:43:48 -07:00
688df1c254 fix CUDA type issues in pair_table_rx_kokkos
stop using the global DAT, use the pair's
DeviceType for all the relevant types.
2017-01-13 14:40:36 -07:00
2b2998052c Fixing inheritance issue in pair_hybrid_overlay_kokkos 2017-01-13 13:50:21 -07:00
dc1b94cdd2 Merge pull request #11 from ibaned/pair-table-rx-kokkos
support for eatom and vatom in pair_table_rx_kokkos
2017-01-13 13:27:48 -07:00
a42a666142 support for eatom and vatom in pair_table_rx_kokkos 2017-01-13 13:23:26 -07:00
f16f9393ef Merge branch 'master' into USER-DPD_kokkos 2017-01-13 10:51:28 -07:00
2a35fa7a4e Adding initial versions of pair_hybrid_kokkos and pair_hybrid_overlay_kokkos 2017-01-13 10:37:31 -07:00
c15d6580da Fixing issue in pair_multi_lucy_rx_kokkos found by ibaned 2017-01-13 10:01:22 -07:00
1ae53d59fa Merge pull request #9 from ibaned/pair-table-rx-kokkos
pair_table_rx_kokkos from @ibaned
2017-01-13 09:26:30 -07:00
aaa7dca21b Makefile.lammps.gfortran 2017-01-12 17:13:02 -07:00
6bd17be454 Makefile.lammps.gfortran 2017-01-12 16:58:27 -07:00
5b7ab135dd Fixing Kokkos neighbor bug 2017-01-12 16:36:27 -07:00
0635151e2d Fixing neighbor bug 2017-01-12 16:36:04 -07:00
cce10f6dff remove more leftover code 2017-01-12 14:19:10 -07:00
4dab6737ba remove leftover code 2017-01-12 14:15:42 -07:00
0c3b942686 cleanup changes to Install.sh 2017-01-12 13:50:30 -07:00
f51ddf8450 Makefile.lammps.gfortran 2017-01-12 13:50:02 -07:00
3580e5409d Fixing Kokkos CUDA compile error 2017-01-12 09:00:07 -07:00
b7d0dc8440 Merge branch 'debug' into pair-table-rx-kokkos 2017-01-12 08:32:51 -07:00
52761aee0d it compiles. 2017-01-11 13:18:13 -07:00
5dcbbba4ce lots of work towards compiling 2017-01-11 13:15:01 -07:00
fdb6b91e29 near trying to compile 2017-01-11 12:50:32 -07:00
41804ff524 progress converting compute_style 2017-01-11 12:42:05 -07:00
c2bb20e60f made compute_fpair a free function as well 2017-01-11 11:54:01 -07:00
cb9fdf7801 starting to separate compute_item from the class 2017-01-11 11:44:54 -07:00
b5ff41f5ef made MixingWeights code non-member
CUDA was simply giving too many
errors dealing with captures of
member variables.
2017-01-11 11:10:33 -07:00
6a9a0e8c33 tracking down some invalid reads... 2017-01-11 09:25:13 -07:00
d65676e981 make everything public to appease NVCC 2017-01-10 16:08:55 -07:00
55aa91be6b copy uCG and uCGnew correctly 2017-01-10 15:28:19 -07:00
5d5751be19 fix class name in PAIR_CLASS setup 2017-01-10 15:28:19 -07:00
e4673d7fa8 fix compilation 2017-01-10 15:28:19 -07:00
c877c07491 progress towards custom compute functor
which is needed to handle uCG contributions.
2017-01-10 15:28:19 -07:00
4d5abe64d5 draft compute_fpair for PairTableRXKokkos 2017-01-10 15:28:19 -07:00
afbc6fc628 added coeff, settings, single, fix compile 2017-01-10 15:28:19 -07:00
21cde6261a add member variables from PairTableRX 2017-01-10 15:28:19 -07:00
f995bb4335 starting to add getMixingWeights
some compile errors to work out
2017-01-10 15:28:19 -07:00
6abefe7ef9 restarting PairTableRXKokkos
as an exact copy of PairTableKokkos,
now that it derives from PairTable
2017-01-10 15:28:19 -07:00
98c66089a9 Merge pull request #8 from ibaned/pair-multi-lucy-rx-kokkos-rho
fix race condition on rho, thanks @ibaned
2017-01-10 15:25:21 -07:00
d26f1403cd fix race condition on rho
the main bug here is the use of a local
rho_i accumulator which later gets assigned
back to rho[i].
in parallel, atomic additions can happen to
rho[i] while the local accumulator is held;
those atomic additions are lost when
the accumulator is atomically assigned.
we instead initialize the accumulator to zero
and atomically add it back to rho[i].
2017-01-10 15:22:52 -07:00
1f6cfb1b31 Makefile.lammps.gfortran changed 2017-01-10 10:56:31 -07:00
001964ecd8 Merge branch 'ibaned-pair-table-rx-inherit' into USER-DPD_kokkos 2017-01-09 14:04:31 -05:00
9807062594 Merge branch 'pair-table-rx-inherit' of https://github.com/ibaned/lammps into ibaned-pair-table-rx-inherit 2017-01-09 13:39:44 -05:00
26d50853e9 Merge branch 'master' as of patch 6Jan17 into USER-DPD_kokkos 2017-01-09 13:12:02 -05:00
7201f003e5 move another enum back
see lammps/lammps#325
2017-01-05 21:00:39 -07:00
d8ddef37ed put enum back in .cpp file
see lammps/lammps#325
2017-01-05 20:56:37 -07:00
ad1402562d Revert "move enum to pair.h"
This reverts commit a1ac2ae9b7.
2017-01-05 20:54:24 -07:00
70927d08e7 remove duplicate enum 2017-01-05 20:53:45 -07:00
a1ac2ae9b7 move enum to pair.h
to avoid having it be replicated
in several different locations
2017-01-05 20:53:45 -07:00
3941fe9ab7 fix compilation 2017-01-05 20:53:45 -07:00
318ab9a185 trying PairTableRX : public PairTable
saves a lot of duplicate code
2017-01-05 20:53:45 -07:00
49d644ec3a Merge pull request #7 from ibaned/pair-dpd-energy-kokkos-warnings
fix many warnings in pair_dpd_fdt_energy_kokkos
2017-01-05 16:46:04 -07:00
e5906dfba0 Merge branch 'exaalt' of gitlab.com:exaalt/lammps into exaalt 2017-01-05 15:37:21 -07:00
967cdd947e cleanup 2017-01-05 15:37:01 -07:00
19f2d2d1ec fix many warnings in pair_dpd_fdt_energy_kokkos
one Kokkos kernel was not annotated consistently,
STACKPARAMS was essentially uninitialized and
confused with a local variable,
plus lots of variables were unused in some
of the Kokkos kernels.
2017-01-05 15:34:05 -07:00
332372dec2 Renamed Makefile.afrl_thunder to Makefile.icex to be more general. 2017-01-05 14:03:16 -05:00
8503ac22a8 Fixed error->all instead of error->one bug in USER-DPD/fix_shardlow.cpp.
During dynamic load balancing, the subdomains will not be uniform so the
bbox size test in USER-DPD/fix_shardlow.cpp may only be called by one rank.
Using error->one allows any rank to stop the simulation in this scenario.
Added rcut and bbox information to help in diagnostics.
2017-01-05 13:58:11 -05:00
cc4040de10 Merge remote-tracking branch 'origin/USER-DPD_kokkos' into USER-DPD_kokkos 2017-01-05 12:25:45 -05:00
a4271ae8c5 Added a Makefile for AFRL Thunder. 2017-01-04 15:13:46 -05:00
79ed1b5258 Merge branch 'USER-DPD_updates' into USER-DPD_kokkos, bring over history. 2017-01-03 17:04:12 -05:00
b5c7d44299 Merge branch 'USER-DPD_kokkos_updates' into USER-DPD_kokkos 2017-01-03 12:35:24 -07:00
fe3c98cdbb Merge pull request #4 from ibaned/dpd-fixes
some warning fixes
2017-01-03 14:29:11 -05:00
50df3da343 Merge pull request #3 from ibaned/fix-dpd-energy-kokkos-pr
Implement a Kokkos version of fix_dpd_energy
2017-01-03 14:27:49 -05:00
ae0e882cde Updating pair_multi_lucy_rx_kokkos to USER-DPD changes 2017-01-03 11:51:28 -07:00
6d7607a6ad member function containing lambdas must be public 2017-01-03 11:50:44 -07:00
e3ebd8e7f1 remove syncs that shouldn't be needed 2017-01-03 11:50:44 -07:00
dae132c770 place newline at end of file 2017-01-03 11:42:40 -07:00
e632f8597a fix warning about enum comparisons 2017-01-03 11:42:39 -07:00
89795b3653 got fix_dpd_energy_kokkos to compile 2017-01-03 11:41:40 -07:00
04e2f170a3 first draft fix_dpd_energy_kokkos
had to make k_duCond and k_duMech
in pair_dpd_fdt_energy_kokkos
public so they could be accessed
and sync'ed
2017-01-03 11:41:40 -07:00
53e07996c6 save draft of fix_dpd_energy_kokkos.cpp 2017-01-03 11:41:39 -07:00
66cdd3a708 draft fix_dpd_energy_kokkos.h 2017-01-03 11:41:39 -07:00
ccaa0506cb LAMMPS_LAMBDA from ibaned/lammps@7559bc9 2017-01-03 11:41:39 -07:00
f220b07625 Updating pair_exp6_rx_kokkos to USER-DPD changes 2017-01-03 10:36:55 -07:00
2af10cb8da Updating fix_eos_table_rx_kokkos to USER-DPD changes 2017-01-03 10:09:44 -07:00
cc1b55e031 Merging USER-DPD updates 2016-12-23 12:36:05 -07:00
a36e563aa5 Temporarily reverting change to pair_table_kokkos to allow runtime testing 2016-12-22 14:37:42 -07:00
a4ab877c46 Change to allow pair_dpd_fdt_energy_kokkos 2016-12-22 13:16:57 -07:00
f6fe61196d CPU runtime tested version of pair_multi_lucy_rx_kokkos 2016-12-22 11:34:17 -07:00
163b61a32e Removing pair_table_rx_kokkos from Kokkos Install.sh since it isn't ready for runtime testing 2016-12-21 15:37:00 -07:00
26c21da45b Merge branch 'master' into USER-DPD_kokkos as of 21Dec16 patch 2016-12-21 16:50:42 -05:00
807d9529da Fixing issues found during GPU runtime testing 2016-12-21 10:41:29 -07:00
73326922d6 Fixing Kokkos issue in fix_eos_table_rx_kokkos 2016-12-21 08:56:48 -07:00
35803c75c9 Fixing issues found during GPU runtime testing 2016-12-20 17:03:46 -07:00
07bee39002 Merge branch 'USER-DPD_whitespace' into USER-DPD_kokkos 2016-12-20 12:23:02 -05:00
889ee78f8b Change necessary for pair_exp6_rx_kokkos to compile on GPU 2016-12-19 17:15:02 -07:00
f62a6fe5a5 Renaming rand_pool_wrap to rand_pool_wrap_kokkos 2016-12-19 16:50:22 -07:00
6f51c3b75c Fixing issues in pair_multi_lucy_rx_kokkos 2016-12-19 16:25:31 -07:00
99910fc432 Adding CPU runtime tested version of pair_dpd_fdt_energy_kokkos 2016-12-19 15:27:16 -07:00
000df6e1cf Fixing what seems to be a Kokkos bug, I will submit to Kokkos lib developers too 2016-12-19 15:20:10 -07:00
3f1f51c1c7 Changes necessary for runtime testing of Kokkos styles 2016-12-19 13:31:09 -07:00
21bb603b93 Porting recent changes from USER-DPD package to KOKKOS package 2016-12-19 13:30:00 -07:00
ac57f4721c Small whitespace tweak to pair_dpd_fdt_energy 2016-12-16 17:14:27 -07:00
5cae3eca8c Whitespace cleanup to pair_dpd_fdt_energy, should be cherry-picked to Master 2016-12-16 17:09:19 -07:00
8474453efd Merge branch 'master' into USER-DPD_kokkos: as of 17Dec16 patch 2016-12-16 15:02:41 -05:00
cfa61b98ae Fixing runtime issues in fix_eos_table_rx_kokkos 2016-12-16 12:37:41 -07:00
d93e3d1cee Fixing runtime issues with pair_exp6_rx_kokkos 2016-12-16 10:06:12 -07:00
f47a40b2e4 Fixing Kokkos memory deallocation issue 2016-12-16 10:02:01 -07:00
a3c1d385e8 Adding Kokkos version of fix_property_atom 2016-12-15 15:50:30 -07:00
d5f8f36442 Change to fix_property_atom to allow virtual override of grow_arrays() function 2016-12-15 15:48:09 -07:00
c0d6cbbdd3 Updates to Kokkos files 2016-12-15 11:18:50 -07:00
a58f7631c0 fix_latte unpdated 2016-12-15 10:57:02 -07:00
a9d26b3f4a Updates to Kokkos files 2016-12-14 12:58:02 -07:00
cf4010474d Merge branch 'exaalt' of gitlab.com:exaalt/lammps into exaalt 2016-12-14 12:50:52 -07:00
766b3fa457 Merge branch 'exaalt' of gitlab.com:exaalt/lammps into exaalt
Sync all changes made in lammps master branch with exaalt branch
2016-12-14 11:49:49 -07:00
ee4d1b340b test push 2016-12-14 11:48:06 -07:00
07d9f9d66e updated version of fix latte from SJP 2016-12-14 11:48:06 -07:00
f209c8c129 changes in fix_latte 2016-12-14 11:48:06 -07:00
ef8d507338 changes in latte makefile for lattelib and README 2016-12-14 11:48:06 -07:00
e59552c2ec changes for lattelib 2016-12-14 11:48:06 -07:00
7eb05b33fb initial dummy version of fix_latte.cpp 2016-12-14 11:48:06 -07:00
3e2cd6d265 Merging from master to 13Dec16 version 2016-12-14 11:46:04 -07:00
544e23f971 test push 2016-12-14 11:38:39 -07:00
16b15a636c updated version of fix latte from SJP 2016-12-14 11:38:39 -07:00
d43bd57a40 changes in fix_latte 2016-12-14 11:38:39 -07:00
b912db5c73 changes in latte makefile for lattelib and README 2016-12-14 11:38:39 -07:00
765fe3cdfe changes for lattelib 2016-12-14 11:38:39 -07:00
031d4acde8 initial dummy version of fix_latte.cpp 2016-12-14 11:38:39 -07:00
d47c6b2761 Merge branch 'master' into USER-DPD_kokkos 2016-12-14 11:25:11 -07:00
f93c62d3e2 Reverting accidental change 2016-12-13 16:54:00 -07:00
1dbf6d443f Adding Kokkos files 2016-12-13 16:43:40 -07:00
5f78c2b6a5 test push 2016-12-01 15:14:47 -07:00
45b85b1686 updated version of fix latte from SJP 2016-12-01 14:50:11 -07:00
3f68d370b5 Merge branch 'master' into USER-DPD_kokkos: up to date to 30Nov16 patch 2016-11-30 16:57:48 -05:00
6e6776f396 Finish moving/integrating atom_vec_dpd_kokkos into the Kokkos package 2016-11-30 16:25:07 -05:00
fe99fc287d changes in fix_latte 2016-11-28 15:29:37 -07:00
6d94439cfe Integrating pair_dpd_fdt_energy_kokkos files 2016-11-28 14:42:47 -07:00
91e38720d5 Adding pair_exp6_rx_kokkos files 2016-11-28 14:25:02 -07:00
7590791604 Integrating atom_vec_dpd into the Kokkos package 2016-11-21 13:54:14 -07:00
8f78157202 USER-DPD: aplly unpack_comm_hybrid bugfix d31121b to atom_vec_dpd_kokkos.cpp 2016-11-21 12:32:48 -05:00
1d939231a4 USER-DPD: initial Kokkos port, first steps from Aug 24th ARL Kokkos hackathon
atom_vec_dpd_kokkos
pair_dpd_fdt_energy_kokkos without the Oct 7th VV support from e27ed6c
2016-11-21 12:21:01 -05:00
f040f15218 changes in latte makefile for lattelib and README 2016-11-14 16:11:12 -07:00
f3d6ecf07b changes for lattelib 2016-11-14 07:58:47 -07:00
6f23f6535c initial dummy version of fix_latte.cpp 2016-11-09 13:48:11 -07:00
596 changed files with 85260 additions and 8395 deletions

View File

@ -6,8 +6,8 @@ cmake_minimum_required(VERSION 3.1)
project(lammps)
set(SOVERSION 0)
set(LAMMPS_SOURCE_DIR ${CMAKE_SOURCE_DIR}/../src)
set(LAMMPS_LIB_SOURCE_DIR ${CMAKE_SOURCE_DIR}/../lib)
set(LAMMPS_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../src)
set(LAMMPS_LIB_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../lib)
set(LAMMPS_LIB_BINARY_DIR ${CMAKE_BINARY_DIR}/lib)
#To not conflict with old Makefile build system, we build everything here
@ -16,20 +16,18 @@ file(GLOB LMP_SOURCES ${LAMMPS_SOURCE_DIR}/main.cpp)
list(REMOVE_ITEM LIB_SOURCES ${LMP_SOURCES})
# Cmake modules/macros are in a subdirectory to keep this file cleaner
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/Modules)
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/Modules)
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CXX_FLAGS)
#release comes with -O3 by default
set(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE)
endif(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CXX_FLAGS)
foreach(STYLE_FILE style_angle.h style_atom.h style_body.h style_bond.h style_command.h style_compute.h style_dihedral.h style_dump.h
style_fix.h style_improper.h style_integrate.h style_kspace.h style_minimize.h style_nbin.h style_npair.h style_nstencil.h
style_ntopo.h style_pair.h style_reader.h style_region.h)
if(EXISTS ${LAMMPS_SOURCE_DIR}/${STYLE_FILE})
message(FATAL_ERROR "There is a ${STYLE_FILE} in ${LAMMPS_SOURCE_DIR}, please clean up the source directory first")
endif()
endforeach()
# remove any style headers in the src dir
file(GLOB SRC_STYLE_FILES ${LAMMPS_SOURCE_DIR}/style_*.h)
if(SRC_STYLE_FILES)
file(REMOVE ${SRC_STYLE_FILES})
endif()
enable_language(CXX)
@ -39,14 +37,22 @@ enable_language(CXX)
#####################################################################
include(CheckCCompilerFlag)
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -restrict")
endif()
########################################################################
# User input options #
########################################################################
option(BUILD_SHARED_LIBS "Build shared libs" OFF)
option(INSTALL_LIB "Install lammps library and header" ON)
if(BUILD_SHARED_LIBS) # for all pkg libs, mpi_stubs and linalg
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
endif()
include(GNUInstallDirs)
set(LAMMPS_LINK_LIBS)
set(LAMMPS_DEPS)
set(LAMMPS_API_DEFINES)
option(ENABLE_MPI "Build MPI version" OFF)
if(ENABLE_MPI)
find_package(MPI REQUIRED)
@ -58,13 +64,15 @@ if(ENABLE_MPI)
endif()
else()
file(GLOB MPI_SOURCES ${LAMMPS_SOURCE_DIR}/STUBS/mpi.c)
list(APPEND LIB_SOURCES ${MPI_SOURCES})
add_library(mpi_stubs STATIC ${MPI_SOURCES})
include_directories(${LAMMPS_SOURCE_DIR}/STUBS)
list(APPEND LAMMPS_LINK_LIBS mpi_stubs)
endif()
set(LAMMPS_SIZE_LIMIT "LAMMPS_SMALLBIG" CACHE STRING "Lammps size limit")
set_property(CACHE LAMMPS_SIZE_LIMIT PROPERTY STRINGS LAMMPS_SMALLBIG LAMMPS_BIGBIG LAMMPS_SMALLSMALL)
add_definitions(-D${LAMMPS_SIZE_LIMIT})
set(LAMMPS_API_DEFINES "${LAMMPS_API_DEFINES} -D${LAMMPS_SIZE_LIMIT}")
set(LAMMPS_MEMALIGN "64" CACHE STRING "enables the use of the posix_memalign() call instead of malloc() when large chunks or memory are allocated by LAMMPS")
add_definitions(-DLAMMPS_MEMALIGN=${LAMMPS_MEMALIGN})
@ -72,6 +80,13 @@ add_definitions(-DLAMMPS_MEMALIGN=${LAMMPS_MEMALIGN})
option(LAMMPS_EXCEPTIONS "enable the use of C++ exceptions for error messages (useful for library interface)" OFF)
if(LAMMPS_EXCEPTIONS)
add_definitions(-DLAMMPS_EXCEPTIONS)
set(LAMMPS_API_DEFINES "${LAMMPS_API_DEFINES} -DLAMMPS_EXCEPTIONS")
endif()
set(LAMMPS_MACHINE "" CACHE STRING "Suffix to append to lmp binary and liblammps (WON'T enable any features automatically")
mark_as_advanced(LAMMPS_MACHINE)
if(LAMMPS_MACHINE)
set(LAMMPS_MACHINE "_${LAMMPS_MACHINE}")
endif()
option(CMAKE_VERBOSE_MAKEFILE "Verbose makefile" OFF)
@ -85,12 +100,12 @@ option(ENABLE_ALL "Build all default packages" OFF)
set(DEFAULT_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GRANULAR
KSPACE MANYBODY MC MEAM MISC MOLECULE PERI QEQ
REAX REPLICA RIGID SHOCK SNAP SRD)
set(OTHER_PACKAGES KIM PYTHON MSCG MPIIO VORONOI POEMS
USER-ATC USER-AWPMD USER-CGDNA
set(OTHER_PACKAGES KIM PYTHON MSCG MPIIO VORONOI POEMS LATTE
USER-ATC USER-AWPMD USER-CGDNA USER-MESO
USER-CGSDK USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF
USER-FEP USER-H5MD USER-LB USER-MANIFOLD USER-MEAMC USER-MGPT USER-MISC
USER-MOLFILE USER-NETCDF USER-PHONON USER-QTB USER-REAXC USER-SMD
USER-SMTBQ USER-SPH USER-TALLY USER-VTK USER-QUIP USER-QMMM)
USER-MOLFILE USER-NETCDF USER-PHONON USER-QTB USER-REAXC USER-SMD
USER-SMTBQ USER-SPH USER-TALLY USER-UEF USER-VTK USER-QUIP USER-QMMM)
set(ACCEL_PACKAGES USER-OMP KOKKOS OPT USER-INTEL GPU)
foreach(PKG ${DEFAULT_PACKAGES})
option(ENABLE_${PKG} "Build ${PKG} Package" ${ENABLE_ALL})
@ -120,8 +135,10 @@ endif()
######################################################
# packages with special compiler needs or external libs
######################################################
if(ENABLE_REAX OR ENABLE_MEAM OR ENABLE_USER-QUIP OR ENABLE_USER-QMMM)
if(ENABLE_REAX OR ENABLE_MEAM OR ENABLE_USER-QUIP OR ENABLE_USER-QMMM OR ENABLE_LATTE)
enable_language(Fortran)
include(CheckFortranCompilerFlag)
check_Fortran_compiler_flag("-fno-second-underscore" FC_HAS_NO_SECOND_UNDERSCORE)
endif()
if(ENABLE_KOKKOS OR ENABLE_MSCG)
@ -156,18 +173,22 @@ endif()
if(ENABLE_MISC)
option(LAMMPS_XDR "include XDR compatibility files for doing particle dumps in XTC format" OFF)
if(LAMMPS_XDR)
add_definitions(-DLAMMPS_XDR)
add_definitions(-DLAMMPS_XDR) # for liblammps
endif()
endif()
if(ENABLE_MSCG OR ENABLE_USER-ATC OR ENABLE_USER-AWPMD OR ENABLE_USER-QUIP)
if(ENABLE_MSCG OR ENABLE_USER-ATC OR ENABLE_USER-AWPMD OR ENABLE_USER-QUIP OR ENABLE_LATTE)
find_package(LAPACK)
if(LAPACK_FOUND)
list(APPEND LAMMPS_LINK_LIBS ${LAPACK_LIBRARIES})
else()
if(NOT LAPACK_FOUND)
enable_language(Fortran)
file(GLOB LAPACK_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/linalg/*.f)
list(APPEND LIB_SOURCES ${LAPACK_SOURCES})
add_library(linalg STATIC ${LAPACK_SOURCES})
include(CheckFortranCompilerFlag)
check_Fortran_compiler_flag("-fno-second-underscore" FC_HAS_NO_SECOND_UNDERSCORE)
if(FC_HAS_NO_SECOND_UNDERSCORE)
target_compile_options(linalg PRIVATE -fno-second-underscore)
endif()
set(LAPACK_LIBRARIES linalg)
endif()
endif()
@ -182,7 +203,7 @@ if(ENABLE_PYTHON)
-c "import distutils.sysconfig as cg; print(cg.get_python_lib(1,0,prefix='${CMAKE_INSTALL_PREFIX}'))"
OUTPUT_VARIABLE PYTHON_INSTDIR OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()
install(FILES ${CMAKE_SOURCE_DIR}/../python/lammps.py DESTINATION ${PYTHON_INSTDIR})
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../python/lammps.py DESTINATION ${PYTHON_INSTDIR})
if(NOT BUILD_SHARED_LIBS)
message(FATAL_ERROR "Python package need lammps to be build shared, use -DBUILD_SHARED_LIBS=ON")
endif()
@ -221,8 +242,29 @@ if(ENABLE_VORONOI)
list(APPEND LAMMPS_LINK_LIBS ${VORO_LIBRARIES})
endif()
if(ENABLE_LATTE)
find_package(LATTE QUIET)
if(NOT LATTE_FOUND)
message(STATUS "LATTE not found - we will build our own")
include(ExternalProject)
ExternalProject_Add(latte_build
URL https://github.com/lanl/LATTE/archive/v1.0.1.tar.gz
URL_MD5 5137e28cb1a64444bd571c98c98a6eee
SOURCE_SUBDIR cmake
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> -DCMAKE_POSITION_INDEPENDENT_CODE=${CMAKE_POSITION_INDEPENDENT_CODE}
)
ExternalProject_get_property(latte_build INSTALL_DIR)
set(LATTE_LIBRARIES ${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/liblatte.a)
list(APPEND LAMMPS_DEPS latte_build)
endif()
list(APPEND LAMMPS_LINK_LIBS ${LATTE_LIBRARIES} ${LAPACK_LIBRARIES} ${CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES})
endif()
if(ENABLE_USER-MOLFILE)
list(APPEND LAMMPS_LINK_LIBS ${CMAKE_DL_LIBS})
add_library(molfile INTERFACE)
target_include_directories(molfile INTERFACE ${LAMMPS_LIB_SOURCE_DIR}/molfile)
target_link_libraries(molfile INTERFACE ${CMAKE_DL_LIBS})
list(APPEND LAMMPS_LINK_LIBS molfile)
endif()
if(ENABLE_USER-NETCDF)
@ -239,7 +281,7 @@ endif()
if(ENABLE_USER-QUIP)
find_package(QUIP REQUIRED)
list(APPEND LAMMPS_LINK_LIBS ${QUIP_LIBRARIES} ${CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES})
list(APPEND LAMMPS_LINK_LIBS ${QUIP_LIBRARIES} ${LAPACK_LIBRARIES} ${CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES})
endif()
if(ENABLE_USER-QMMM)
@ -248,17 +290,6 @@ if(ENABLE_USER-QMMM)
list(APPEND LAMMPS_LINK_LIBS ${QE_LIBRARIES} ${CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES})
endif()
if(ENABLE_USER-AWPMD)
include_directories(${LAMMPS_LIB_SOURCE_DIR}/awpmd/systems/interact
${LAMMPS_LIB_SOURCE_DIR}/awpmd/ivutils/include)
endif()
if(ENABLE_USER-H5MD)
find_package(HDF5 REQUIRED)
list(APPEND LAMMPS_LINK_LIBS ${HDF5_LIBRARIES})
include_directories(${HDF5_INCLUDE_DIRS} ${LAMMPS_LIB_SOURCE_DIR}/h5md/include)
endif()
if(ENABLE_USER-VTK)
find_package(VTK REQUIRED NO_MODULE)
include(${VTK_USE_FILE})
@ -289,13 +320,11 @@ if(ENABLE_MSCG)
WORKING_DIRECTORY ${LAMMPS_LIB_BINARY_DIR}/mscg)
endif()
file(GLOB MSCG_SOURCES ${LAMMPS_LIB_MSCG_BIN_DIR}/*.cpp)
list(APPEND LIB_SOURCES ${MSCG_SOURCES})
foreach(MSCG_SOURCE ${MSCG_SOURCES})
set_property(SOURCE ${MSCG_SOURCE} APPEND PROPERTY COMPILE_DEFINITIONS
DIMENSION=3 _exclude_gromacs=1)
endforeach()
include_directories(${LAMMPS_LIB_MSCG_BIN_DIR} ${GSL_INCLUDE_DIRS})
list(APPEND LAMMPS_LINK_LIBS ${GSL_LIBRARIES})
add_library(mscg STATIC ${MSCG_SOURCES})
list(APPEND LAMMPS_LINK_LIBS mscg)
target_compile_options(mscg PRIVATE -DDIMENSION=3 -D_exclude_gromacs=1)
target_include_directories(mscg PUBLIC ${LAMMPS_LIB_MSCG_BIN_DIR})
target_link_libraries(mscg ${GSL_LIBRARIES} ${LAPACK_LIBRARIES})
endif()
########################################################################
@ -321,7 +350,7 @@ endforeach(FUNC)
list(APPEND LAMMPS_LINK_LIBS ${MATH_LIBRARIES})
######################################
# Generate Basic Style files
# Generate Basic Style files
######################################
include(StyleHeaderUtils)
RegisterStyles(${LAMMPS_SOURCE_DIR})
@ -330,13 +359,27 @@ RegisterStyles(${LAMMPS_SOURCE_DIR})
# add sources of enabled packages
############################################
foreach(PKG ${DEFAULT_PACKAGES} ${OTHER_PACKAGES})
if(ENABLE_${PKG})
set(${PKG}_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/${PKG})
set(${PKG}_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/${PKG})
# ignore PKG files which were manually installed in src folder
# headers are ignored during RegisterStyles
file(GLOB ${PKG}_SOURCES ${${PKG}_SOURCES_DIR}/*.cpp)
file(GLOB ${PKG}_HEADERS ${${PKG}_SOURCES_DIR}/*.h)
foreach(PKG_FILE in ${${PKG}_SOURCES})
get_filename_component(FNAME ${PKG_FILE} NAME)
list(REMOVE_ITEM LIB_SOURCES ${LAMMPS_SOURCE_DIR}/${FNAME})
endforeach()
foreach(PKG_FILE in ${${PKG}_HEADERS})
get_filename_component(FNAME ${PKG_FILE} NAME)
DetectAndRemovePackageHeader(${LAMMPS_SOURCE_DIR}/${FNAME})
endforeach()
if(ENABLE_${PKG})
# detects styles in package and adds them to global list
RegisterStyles(${${PKG}_SOURCES_DIR})
file(GLOB ${PKG}_SOURCES ${${PKG}_SOURCES_DIR}/*.cpp)
list(APPEND LIB_SOURCES ${${PKG}_SOURCES})
include_directories(${${PKG}_SOURCES_DIR})
endif()
@ -346,17 +389,53 @@ endforeach()
# add lib sources of (simple) enabled packages
############################################
foreach(SIMPLE_LIB REAX MEAM POEMS USER-ATC USER-AWPMD USER-COLVARS USER-H5MD
USER-MOLFILE USER-QMMM)
USER-QMMM)
if(ENABLE_${SIMPLE_LIB})
string(REGEX REPLACE "^USER-" "" SIMPLE_LIB "${SIMPLE_LIB}")
string(TOLOWER "${SIMPLE_LIB}" INC_DIR)
file(GLOB_RECURSE ${SIMPLE_LIB}_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/${INC_DIR}/*.F
${LAMMPS_LIB_SOURCE_DIR}/${INC_DIR}/*.c ${LAMMPS_LIB_SOURCE_DIR}/${INC_DIR}/*.cpp)
list(APPEND LIB_SOURCES ${${SIMPLE_LIB}_SOURCES})
include_directories(${LAMMPS_LIB_SOURCE_DIR}/${INC_DIR})
string(REGEX REPLACE "^USER-" "" PKG_LIB "${SIMPLE_LIB}")
string(TOLOWER "${PKG_LIB}" PKG_LIB)
file(GLOB_RECURSE ${PKG_LIB}_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/${PKG_LIB}/*.F
${LAMMPS_LIB_SOURCE_DIR}/${PKG_LIB}/*.c ${LAMMPS_LIB_SOURCE_DIR}/${PKG_LIB}/*.cpp)
add_library(${PKG_LIB} STATIC ${${PKG_LIB}_SOURCES})
list(APPEND LAMMPS_LINK_LIBS ${PKG_LIB})
if(PKG_LIB STREQUAL awpmd)
target_include_directories(awpmd PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/awpmd/systems/interact ${LAMMPS_LIB_SOURCE_DIR}/awpmd/ivutils/include)
elseif(PKG_LIB STREQUAL h5md)
target_include_directories(h5md PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/h5md/include)
else()
target_include_directories(${PKG_LIB} PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/${PKG_LIB})
endif()
endif()
endforeach()
if(ENABLE_USER-AWPMD)
target_link_libraries(awpmd ${LAPACK_LIBRARIES})
endif()
if(ENABLE_USER-ATC)
target_link_libraries(atc ${LAPACK_LIBRARIES})
endif()
if(ENABLE_USER-H5MD)
find_package(HDF5 REQUIRED)
target_link_libraries(h5md ${HDF5_LIBRARIES})
target_include_directories(h5md PRIVATE ${HDF5_INCLUDE_DIRS})
endif()
if(ENABLE_MEAM AND FC_HAS_NO_SECOND_UNDERSCORE)
foreach(FSRC ${meam_SOURCES})
string(REGEX REPLACE "^.*\\." "" FEXT "${FSRC}")
list(FIND CMAKE_Fortran_SOURCE_FILE_EXTENSIONS "${FEXT}" FINDEX)
if(FINDEX GREATER -1)
set_property(SOURCE ${FSRC} APPEND PROPERTY COMPILE_FLAGS "-fno-second-underscore")
endif()
endforeach()
endif()
if(ENABLE_REAX AND FC_HAS_NO_SECOND_UNDERSCORE)
target_compile_options(reax PRIVATE -fno-second-underscore)
endif()
######################################################################
# packages which selectively include variants based on enabled styles
# e.g. accelerator packages
@ -453,62 +532,130 @@ if(ENABLE_USER-INTEL)
endif()
if(ENABLE_GPU)
find_package(CUDA REQUIRED)
find_program(BIN2C bin2c)
if(NOT BIN2C)
message(FATAL_ERROR "Couldn't find bin2c, use -DBIN2C helping cmake to find it.")
endif()
include_directories(${CUDA_INCLUDE_DIRS})
list(APPEND LAMMPS_LINK_LIBS ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
set(GPU_PREC "SINGLE_DOUBLE" CACHE STRING "Lammps gpu precision size")
set_property(CACHE GPU_PREC PROPERTY STRINGS SINGLE_DOUBLE SINGLE_SINGLE DOUBLE_DOUBLE)
add_definitions(-D_${GPU_PREC})
add_definitions(-DNV_KERNEL -DUCL_CUDADR)
option(CUDPP_OPT "Enable CUDPP_OPT" ON)
set(GPU_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/GPU)
set(GPU_SOURCES ${GPU_SOURCES_DIR}/gpu_extra.h)
set(GPU_SOURCES ${GPU_SOURCES_DIR}/gpu_extra.h
${GPU_SOURCES_DIR}/fix_gpu.h
${GPU_SOURCES_DIR}/fix_gpu.cpp)
set(GPU_API "OpenCL" CACHE STRING "API used by GPU package")
set_property(CACHE GPU_API PROPERTY STRINGS OpenCL CUDA)
set(GPU_PREC "SINGLE_DOUBLE" CACHE STRING "LAMMPS GPU precision size")
set_property(CACHE GPU_PREC PROPERTY STRINGS SINGLE_DOUBLE SINGLE_SINGLE DOUBLE_DOUBLE)
file(GLOB GPU_LIB_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/*.cpp)
file(MAKE_DIRECTORY ${LAMMPS_LIB_BINARY_DIR}/gpu)
if(GPU_API STREQUAL "CUDA")
find_package(CUDA REQUIRED)
find_program(BIN2C bin2c)
if(NOT BIN2C)
message(FATAL_ERROR "Couldn't find bin2c, use -DBIN2C helping cmake to find it.")
endif()
option(CUDPP_OPT "Enable CUDPP_OPT" ON)
set(GPU_ARCH "sm_30" CACHE STRING "LAMMPS GPU CUDA SM architecture")
set_property(CACHE GPU_ARCH PROPERTY STRINGS sm_10 sm_20 sm_30 sm_60)
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/*.cu ${CMAKE_CURRENT_SOURCE_DIR}/gpu/*.cu)
list(REMOVE_ITEM GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_pppm.cu)
cuda_include_directories(${LAMMPS_LIB_SOURCE_DIR}/gpu ${LAMMPS_LIB_BINARY_DIR}/gpu)
if(CUDPP_OPT)
cuda_include_directories(${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini)
file(GLOB GPU_LIB_CUDPP_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/*.cpp)
file(GLOB GPU_LIB_CUDPP_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/*.cu)
endif()
cuda_compile_cubin(GPU_GEN_OBJS ${GPU_LIB_CU} OPTIONS
-DUNIX -O3 -Xptxas -v --use_fast_math -DNV_KERNEL -DUCL_CUDADR -arch=${GPU_ARCH} -D_${GPU_PREC})
cuda_compile(GPU_OBJS ${GPU_LIB_CUDPP_CU} OPTIONS $<$<BOOL:${BUILD_SHARED_LIBS}>:-Xcompiler=-fPIC>
-DUNIX -O3 -Xptxas -v --use_fast_math -DUCL_CUDADR -arch=${GPU_ARCH} -D_${GPU_PREC})
foreach(CU_OBJ ${GPU_GEN_OBJS})
get_filename_component(CU_NAME ${CU_OBJ} NAME_WE)
string(REGEX REPLACE "^.*_lal_" "" CU_NAME "${CU_NAME}")
add_custom_command(OUTPUT ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
COMMAND ${BIN2C} -c -n ${CU_NAME} ${CU_OBJ} > ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
DEPENDS ${CU_OBJ}
COMMENT "Generating ${CU_NAME}_cubin.h")
list(APPEND GPU_LIB_SOURCES ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h)
endforeach()
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${LAMMPS_LIB_BINARY_DIR}/gpu/*_cubin.h")
add_library(gpu STATIC ${GPU_LIB_SOURCES} ${GPU_LIB_CUDPP_SOURCES} ${GPU_OBJS})
target_link_libraries(gpu ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
target_include_directories(gpu PRIVATE ${LAMMPS_LIB_BINARY_DIR}/gpu ${CUDA_INCLUDE_DIRS})
target_compile_definitions(gpu PRIVATE -D_${GPU_PREC} -DMPI_GERYON -DUCL_NO_EXIT)
if(CUDPP_OPT)
target_include_directories(gpu PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini)
target_compile_definitions(gpu PRIVATE -DUSE_CUDPP)
endif()
list(APPEND LAMMPS_LINK_LIBS gpu)
add_executable(nvc_get_devices ${LAMMPS_LIB_SOURCE_DIR}/gpu/geryon/ucl_get_devices.cpp)
target_compile_definitions(nvc_get_devices PRIVATE -DUCL_CUDADR)
target_link_libraries(nvc_get_devices PRIVATE ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
target_include_directories(nvc_get_devices PRIVATE ${CUDA_INCLUDE_DIRS})
elseif(GPU_API STREQUAL "OpenCL")
find_package(OpenCL REQUIRED)
set(OCL_TUNE "GENERIC" CACHE STRING "OpenCL Device Tuning")
set_property(CACHE OCL_TUNE PROPERTY STRINGS INTEL FERMI KEPLER CYPRESS GENERIC)
include(OpenCLUtils)
set(OCL_COMMON_HEADERS ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_preprocessor.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_aux_fun1.h)
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/*.cu)
list(REMOVE_ITEM GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne.cu ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne_lj.cu)
foreach(GPU_KERNEL ${GPU_LIB_CU})
get_filename_component(basename ${GPU_KERNEL} NAME_WE)
string(SUBSTRING ${basename} 4 -1 KERNEL_NAME)
GenerateOpenCLHeader(${KERNEL_NAME} ${CMAKE_CURRENT_BINARY_DIR}/gpu/${KERNEL_NAME}_cl.h ${OCL_COMMON_HEADERS} ${GPU_KERNEL})
list(APPEND GPU_LIB_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/gpu/${KERNEL_NAME}_cl.h)
endforeach()
GenerateOpenCLHeader(gayberne ${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne.cu)
GenerateOpenCLHeader(gayberne_lj ${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_lj_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne_lj.cu)
list(APPEND GPU_LIB_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_cl.h ${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_lj_cl.h)
add_library(gpu STATIC ${GPU_LIB_SOURCES})
target_link_libraries(gpu ${OpenCL_LIBRARIES})
target_include_directories(gpu PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/gpu ${OpenCL_INCLUDE_DIRS})
target_compile_definitions(gpu PRIVATE -D_${GPU_PREC} -DMPI_GERYON -DUCL_NO_EXIT)
target_compile_definitions(gpu PRIVATE -DUSE_OPENCL)
list(APPEND LAMMPS_LINK_LIBS gpu)
add_executable(ocl_get_devices ${LAMMPS_LIB_SOURCE_DIR}/gpu/geryon/ucl_get_devices.cpp)
target_compile_definitions(ocl_get_devices PRIVATE -DUCL_OPENCL)
target_link_libraries(ocl_get_devices PRIVATE ${OpenCL_LIBRARIES})
target_include_directories(ocl_get_devices PRIVATE ${OpenCL_INCLUDE_DIRS})
endif()
# GPU package
FindStyleHeaders(${GPU_SOURCES_DIR} FIX_CLASS fix_ FIX)
set_property(GLOBAL PROPERTY "GPU_SOURCES" "${GPU_SOURCES}")
# detects styles which have GPU version
RegisterStylesExt(${GPU_SOURCES_DIR} opt GPU_SOURCES)
RegisterStylesExt(${GPU_SOURCES_DIR} gpu GPU_SOURCES)
get_property(GPU_SOURCES GLOBAL PROPERTY GPU_SOURCES)
file(GLOB GPU_LIB_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/*.cpp)
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/*.cu ${CMAKE_SOURCE_DIR}/gpu/*.cu)
file(GLOB_RECURSE GPU_NOT_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_pppm.cu)
list(REMOVE_ITEM GPU_LIB_CU ${GPU_NOT_LIB_CU})
include_directories(${GPU_SOURCES_DIR} ${LAMMPS_LIB_SOURCE_DIR}/gpu ${LAMMPS_LIB_BINARY_DIR}/gpu)
if(CUDPP_OPT)
include_directories(${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini)
add_definitions(-DCUDPP_OPT)
file(GLOB GPU_LIB_CUDPP_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/*.cpp)
file(GLOB GPU_LIB_CUDPP_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/*.cu)
endif()
cuda_compile(GPU_OBJS ${GPU_LIB_CU} ${GPU_LIB_CUDPP_CU} OPTIONS $<$<BOOL:${BUILD_SHARED_LIBS}>:-Xcompiler=-fPIC>)
file(MAKE_DIRECTORY ${LAMMPS_LIB_BINARY_DIR}/gpu)
foreach(CU_OBJ ${GPU_OBJS})
get_filename_component(CU_NAME ${CU_OBJ} NAME_WE)
string(REGEX REPLACE "^.*_lal_" "" CU_NAME "${CU_NAME}")
add_custom_command(OUTPUT ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
COMMAND ${BIN2C} -c -n ${CU_NAME} ${CU_OBJ} > ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
DEPENDS ${CU_OBJ}
COMMENT "Generating ${CU_NAME}_cubin.h")
list(APPEND LIB_SOURCES ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h)
if(${CU_NAME} STREQUAL "pppm_d") #pppm_d doesn't get linked into the lib
set(CU_FORBIDDEN_OBJ "${CU_OBJ}")
endif()
endforeach()
list(REMOVE_ITEM GPU_OBJS "${CU_FORBIDDEN_OBJ}")
list(APPEND LIB_SOURCES ${GPU_SOURCES} ${GPU_LIB_SOURCES} ${GPU_LIB_CUDPP_SOURCES} ${GPU_OBJS})
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${LAMMPS_LIB_BINARY_DIR}/gpu/*_cubin.h")
list(APPEND LIB_SOURCES ${GPU_SOURCES})
include_directories(${GPU_SOURCES_DIR})
endif()
######################################################
# Generate style headers based on global list of
# styles registered during package selection
# styles registered during package selection
######################################################
set(LAMMPS_STYLE_HEADERS_DIR ${CMAKE_CURRENT_BINARY_DIR}/styles)
@ -522,19 +669,24 @@ include_directories(${LAMMPS_STYLE_HEADERS_DIR})
############################################
add_library(lammps ${LIB_SOURCES})
target_link_libraries(lammps ${LAMMPS_LINK_LIBS})
set_target_properties(lammps PROPERTIES SOVERSION ${SOVERSION})
if(INSTALL_LIB)
if(LAMMPS_DEPS)
add_dependencies(lammps ${LAMMPS_DEPS})
endif()
set_target_properties(lammps PROPERTIES OUTPUT_NAME lammps${LAMMPS_MACHINE})
if(BUILD_SHARED_LIBS)
set_target_properties(lammps PROPERTIES SOVERSION ${SOVERSION})
install(TARGETS lammps LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(FILES ${LAMMPS_SOURCE_DIR}/lammps.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
elseif(BUILD_SHARED_LIBS)
message(FATAL_ERROR "Shared library has to be installed, use -DINSTALL_LIB=ON to install lammps with a library")
install(FILES ${LAMMPS_SOURCE_DIR}/library.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/lammps)
configure_file(pkgconfig/liblammps.pc.in ${CMAKE_CURRENT_BINARY_DIR}/liblammps${LAMMPS_MACHINE}.pc @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/liblammps${LAMMPS_MACHINE}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
endif()
add_executable(lmp ${LMP_SOURCES})
target_link_libraries(lmp lammps)
set_target_properties(lmp PROPERTIES OUTPUT_NAME lmp${LAMMPS_MACHINE})
install(TARGETS lmp DESTINATION ${CMAKE_INSTALL_BINDIR})
if(ENABLE_TESTING)
add_test(ShowHelp ${CMAKE_CURRENT_BINARY_DIR}/lmp -help)
add_test(ShowHelp lmp${LAMMPS_MACHINE} -help)
endif()
##################################
@ -545,3 +697,27 @@ foreach(PKG ${DEFAULT_PACKAGES} ${OTHER_PACKAGES} ${ACCEL_PACKAGES})
message(STATUS "Building package: ${PKG}")
endif()
endforeach()
string(TOUPPER "${CMAKE_BUILD_TYPE}" BTYPE)
message(STATUS "<<< Build configuration >>>
Build type ${CMAKE_BUILD_TYPE}
Install path ${CMAKE_INSTALL_PREFIX}
Compilers and Flags:
C++ Compiler ${CMAKE_CXX_COMPILER}
Type ${CMAKE_CXX_COMPILER_ID}
C++ Flags ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${BTYPE}}")
get_property(LANGUAGES GLOBAL PROPERTY ENABLED_LANGUAGES)
if(LANGUAGES MATCHES ".*Fortran.*")
message(STATUS "Fortran Compiler ${CMAKE_Fortran_COMPILER}
Type ${CMAKE_Fortran_COMPILER_ID}
Fortran Flags ${CMAKE_Fortran_FLAGS} ${CMAKE_Fortran_FLAGS_${BTYPE}}")
endif()
message(STATUS "Linker flags:
Executable ${CMAKE_EXE_LINKER_FLAGS}")
if(BUILD_SHARED_LIBS)
message(STATUS "Shared libries ${CMAKE_SHARED_LINKER_FLAGS}")
else()
message(STATUS "Static libries ${CMAKE_STATIC_LINKER_FLAGS}")
endif()
message(STATUS "Link libraries: ${LAMMPS_LINK_LIBS}")

View File

@ -0,0 +1,18 @@
# - Find latte
# Find the native LATTE libraries.
#
# LATTE_LIBRARIES - List of libraries when using latte.
# LATTE_FOUND - True if latte found.
#
find_library(LATTE_LIBRARY NAMES latte)
set(LATTE_LIBRARIES ${LATTE_LIBRARY})
include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set LATTE_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(LATTE DEFAULT_MSG LATTE_LIBRARY)
mark_as_advanced(LATTE_LIBRARY)

View File

@ -0,0 +1,18 @@
function(GenerateOpenCLHeader varname outfile files)
message("Creating ${outfile}...")
file(WRITE ${outfile} "const char * ${varname} = \n")
math(EXPR ARG_END "${ARGC}-1")
foreach(IDX RANGE 2 ${ARG_END})
list(GET ARGV ${IDX} filename)
file(READ ${filename} content)
string(REGEX REPLACE "\\s*//[^\n]*\n" "" content "${content}")
string(REGEX REPLACE "\\\\" "\\\\\\\\" content "${content}")
string(REGEX REPLACE "\"" "\\\\\"" content "${content}")
string(REGEX REPLACE "([^\n]+)\n" "\"\\1\\\\n\"\n" content "${content}")
string(REGEX REPLACE "\n+" "\n" content "${content}")
file(APPEND ${outfile} "${content}")
endforeach()
file(APPEND ${outfile} ";\n")
endfunction(GenerateOpenCLHeader)

View File

@ -85,6 +85,35 @@ function(RegisterStyles search_path)
FindStyleHeaders(${search_path} REGION_CLASS region_ REGION ) # region ) # domain
endfunction(RegisterStyles)
function(RemovePackageHeader headers pkg_header)
get_property(hlist GLOBAL PROPERTY ${headers})
list(REMOVE_ITEM hlist ${pkg_header})
set_property(GLOBAL PROPERTY ${headers} "${hlist}")
endfunction(RemovePackageHeader)
function(DetectAndRemovePackageHeader fname)
RemovePackageHeader(ANGLE ${fname})
RemovePackageHeader(ATOM_VEC ${fname})
RemovePackageHeader(BODY ${fname})
RemovePackageHeader(BOND ${fname})
RemovePackageHeader(COMMAND ${fname})
RemovePackageHeader(COMPUTE ${fname})
RemovePackageHeader(DIHEDRAL ${fname})
RemovePackageHeader(DUMP ${fname})
RemovePackageHeader(FIX ${fname})
RemovePackageHeader(IMPROPER ${fname})
RemovePackageHeader(INTEGRATE ${fname})
RemovePackageHeader(KSPACE ${fname})
RemovePackageHeader(MINIMIZE ${fname})
RemovePackageHeader(NBIN ${fname})
RemovePackageHeader(NPAIR ${fname})
RemovePackageHeader(NSTENCIL ${fname})
RemovePackageHeader(NTOPO ${fname})
RemovePackageHeader(PAIR ${fname})
RemovePackageHeader(READER ${fname})
RemovePackageHeader(REGION ${fname})
endfunction(DetectAndRemovePackageHeader)
function(RegisterStylesExt search_path extension sources)
FindStyleHeadersExt(${search_path} ANGLE_CLASS ${extension} ANGLE ${sources})
FindStyleHeadersExt(${search_path} ATOM_CLASS ${extension} ATOM_VEC ${sources})

View File

@ -0,0 +1,18 @@
# pkg-config file for lammps
# https://people.freedesktop.org/~dbn/pkg-config-guide.html
# Usage: cc `pkg-config --cflags --libs liblammps` -o myapp myapp.c
# after you added @CMAKE_INSTALL_FULL_LIBDIR@/pkg-config to PKG_CONFIG_PATH,
# e.g. export PKG_CONFIG_PATH=@CMAKE_INSTALL_FULL_LIBDIR@/pkgconfig
prefix=@CMAKE_INSTALL_FULL_PREFIX@
libdir=@CMAKE_INSTALL_FULL_LIBDIR@
includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
Name: liblammps@LAMMPS_MACHINE@
Description: Large-scale Atomic/Molecular Massively Parallel Simulator Library
URL: http://lammps.sandia.gov
Version:
Requires:
Libs: -L${libdir} -llammps@LAMMPS_MACHINE@
Libs.private: -lm
Cflags: -I${includedir} @LAMMPS_API_DEFINES@

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,10 @@
\documentclass[12pt]{article}
\pagestyle{empty}
\begin{document}
$$
E = K (r^2 - r_0^2)^2
$$
\end{document}

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

11
doc/src/Eqs/fix_rhok.tex Normal file
View File

@ -0,0 +1,11 @@
\documentclass[12pt]{article}
\begin{document}
\begin{eqnarray*}
U &=& \frac{1}{2} K (|\rho_{\vec{k}}| - a)^2 \\
\rho_{\vec{k}} &=& \sum_j^N \exp(-i\vec{k} \cdot \vec{r}_j )/\sqrt{N} \\
\vec{k} &=& (2\pi n_x /L_x , 2\pi n_y /L_y , 2\pi n_z/L_z )
\end{eqnarray*}
\end{document}

BIN
doc/src/JPG/uef_frames.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -1,7 +1,7 @@
<!-- HTML_ONLY -->
<HEAD>
<TITLE>LAMMPS Users Manual</TITLE>
<META NAME="docnumber" CONTENT="1 Sep 2017 version">
<META NAME="docnumber" CONTENT="23 Oct 2017 version">
<META NAME="author" CONTENT="http://lammps.sandia.gov - Sandia National Laboratories">
<META NAME="copyright" CONTENT="Copyright (2003) Sandia Corporation. This software and manual is distributed under the GNU General Public License.">
</HEAD>
@ -21,7 +21,7 @@
<H1></H1>
LAMMPS Documentation :c,h3
1 Sep 2017 version :c,h4
23 Oct 2017 version :c,h4
Version info: :h4

Binary file not shown.

View File

@ -532,7 +532,8 @@ package"_Section_start.html#start_3.
"dump vtk"_dump_vtk.html,
"group2ndx"_group2ndx.html,
"ndx2group"_group2ndx.html,
"temper/grem"_temper_grem.html :tb(c=3,ea=c)
"temper/grem"_temper_grem.html,
"temper/npt"_temper_npt.html :tb(c=3,ea=c)
:line
@ -579,6 +580,7 @@ USER-INTEL, k = KOKKOS, o = USER-OMP, t = OPT.
"halt"_fix_halt.html,
"heat"_fix_heat.html,
"indent"_fix_indent.html,
"latte"_fix_latte.html,
"langevin (k)"_fix_langevin.html,
"lineforce"_fix_lineforce.html,
"momentum (k)"_fix_momentum.html,
@ -718,6 +720,8 @@ package"_Section_start.html#start_3.
"nve/eff"_fix_nve_eff.html,
"nvt/eff"_fix_nh_eff.html,
"nvt/sllod/eff"_fix_nvt_sllod_eff.html,
"npt/uef"_fix_nh_uef.html,
"nvt/uef"_fix_nh_uef.html,
"phonon"_fix_phonon.html,
"pimd"_fix_pimd.html,
"qbmsst"_fix_qbmsst.html,
@ -726,6 +730,7 @@ package"_Section_start.html#start_3.
"qtb"_fix_qtb.html,
"reax/c/bonds"_fix_reax_bonds.html,
"reax/c/species"_fix_reaxc_species.html,
"rhok"_fix_rhok.html,
"rx"_fix_rx.html,
"saed/vtk"_fix_saed_vtk.html,
"shardlow"_fix_shardlow.html,
@ -755,6 +760,7 @@ package"_Section_accelerate.html. This is indicated by additional
letters in parenthesis: g = GPU, i = USER-INTEL, k =
KOKKOS, o = USER-OMP, t = OPT.
"aggregate/atom"_compute_cluster_atom.html,
"angle"_compute_angle.html,
"angle/local"_compute_angle_local.html,
"angmom/chunk"_compute_angmom_chunk.html,
@ -853,6 +859,7 @@ package"_Section_start.html#start_3.
"meso/t/atom"_compute_meso_t_atom.html,
"pe/tally"_compute_tally.html,
"pe/mol/tally"_compute_tally.html,
"pressure/uef"_compute_pressure_uef.html,
"saed"_compute_saed.html,
"smd/contact/radius"_compute_smd_contact_radius.html,
"smd/damage"_compute_smd_damage.html,
@ -881,6 +888,7 @@ package"_Section_start.html#start_3.
"temp/deform/eff"_compute_temp_deform_eff.html,
"temp/region/eff"_compute_temp_region_eff.html,
"temp/rotate"_compute_temp_rotate.html,
"temp/uef"_compute_temp_uef.html,
"xrd"_compute_xrd.html :tb(c=6,ea=c)
:line
@ -912,11 +920,12 @@ KOKKOS, o = USER-OMP, t = OPT.
"born/coul/long/cs"_pair_born.html,
"born/coul/msm (o)"_pair_born.html,
"born/coul/wolf (go)"_pair_born.html,
"born/coul/wolf/cs"_pair_born.html,
"brownian (o)"_pair_brownian.html,
"brownian/poly (o)"_pair_brownian.html,
"buck (gkio)"_pair_buck.html,
"buck/coul/cut (gkio)"_pair_buck.html,
"buck/coul/long (gkio)"_pair_buck.html,
"buck (giko)"_pair_buck.html,
"buck/coul/cut (giko)"_pair_buck.html,
"buck/coul/long (giko)"_pair_buck.html,
"buck/coul/long/cs"_pair_buck.html,
"buck/coul/msm (o)"_pair_buck.html,
"buck/long/coul/long (o)"_pair_buck_long.html,
@ -931,12 +940,13 @@ KOKKOS, o = USER-OMP, t = OPT.
"coul/msm"_pair_coul.html,
"coul/streitz"_pair_coul.html,
"coul/wolf (ko)"_pair_coul.html,
"dpd (go)"_pair_dpd.html,
"coul/wolf/cs"_pair_coul.html,
"dpd (gio)"_pair_dpd.html,
"dpd/tstat (go)"_pair_dpd.html,
"dsmc"_pair_dsmc.html,
"eam (gkiot)"_pair_eam.html,
"eam/alloy (gkiot)"_pair_eam.html,
"eam/fs (gkiot)"_pair_eam.html,
"eam (gikot)"_pair_eam.html,
"eam/alloy (gikot)"_pair_eam.html,
"eam/fs (gikot)"_pair_eam.html,
"eim (o)"_pair_eim.html,
"gauss (go)"_pair_gauss.html,
"gayberne (gio)"_pair_gayberne.html,
@ -950,9 +960,9 @@ KOKKOS, o = USER-OMP, t = OPT.
"kim"_pair_kim.html,
"lcbop"_pair_lcbop.html,
"line/lj"_pair_line_lj.html,
"lj/charmm/coul/charmm (kio)"_pair_charmm.html,
"lj/charmm/coul/charmm (iko)"_pair_charmm.html,
"lj/charmm/coul/charmm/implicit (ko)"_pair_charmm.html,
"lj/charmm/coul/long (gkio)"_pair_charmm.html,
"lj/charmm/coul/long (giko)"_pair_charmm.html,
"lj/charmm/coul/msm"_pair_charmm.html,
"lj/charmmfsw/coul/charmmfsh"_pair_charmm.html,
"lj/charmmfsw/coul/long"_pair_charmm.html,
@ -1002,9 +1012,9 @@ KOKKOS, o = USER-OMP, t = OPT.
"resquared (go)"_pair_resquared.html,
"snap"_pair_snap.html,
"soft (go)"_pair_soft.html,
"sw (gkio)"_pair_sw.html,
"sw (giko)"_pair_sw.html,
"table (gko)"_pair_table.html,
"tersoff (gkio)"_pair_tersoff.html,
"tersoff (giko)"_pair_tersoff.html,
"tersoff/mod (gko)"_pair_tersoff_mod.html,
"tersoff/mod/c (o)"_pair_tersoff_mod.html,
"tersoff/zbl (gko)"_pair_tersoff_zbl.html,
@ -1108,6 +1118,7 @@ KOKKOS, o = USER-OMP, t = OPT.
"class2 (ko)"_bond_class2.html,
"fene (iko)"_bond_fene.html,
"fene/expand (o)"_bond_fene_expand.html,
"gromos (o)"_bond_gromos.html,
"harmonic (ko)"_bond_harmonic.html,
"morse (o)"_bond_morse.html,
"nonlinear (o)"_bond_nonlinear.html,
@ -1174,7 +1185,7 @@ USER-OMP, t = OPT.
"none"_dihedral_none.html,
"zero"_dihedral_zero.html,
"hybrid"_dihedral_hybrid.html,
"charmm (ko)"_dihedral_charmm.html,
"charmm (iko)"_dihedral_charmm.html,
"charmmfsw"_dihedral_charmm.html,
"class2 (ko)"_dihedral_class2.html,
"harmonic (io)"_dihedral_harmonic.html,
@ -1187,7 +1198,7 @@ used if "LAMMPS is built with the appropriate
package"_Section_start.html#start_3.
"cosine/shift/exp (o)"_dihedral_cosine_shift_exp.html,
"fourier (o)"_dihedral_fourier.html,
"fourier (io)"_dihedral_fourier.html,
"nharmonic (o)"_dihedral_nharmonic.html,
"quadratic (o)"_dihedral_quadratic.html,
"spherical (o)"_dihedral_spherical.html,
@ -1210,7 +1221,7 @@ USER-OMP, t = OPT.
"hybrid"_improper_hybrid.html,
"class2 (ko)"_improper_class2.html,
"cvff (io)"_improper_cvff.html,
"harmonic (ko)"_improper_harmonic.html,
"harmonic (iko)"_improper_harmonic.html,
"umbrella (o)"_improper_umbrella.html :tb(c=4,ea=c)
These are additional improper styles in USER packages, which can be

View File

@ -2859,8 +2859,8 @@ The nature of the atoms (core, Drude particle or non-polarizable) is
specified via the "fix drude"_fix_drude.html command. The special
list of neighbors is automatically refactored to account for the
equivalence of core and Drude particles as regards special 1-2 to 1-4
screening. It may be necessary to use the {extra} keyword of the
"special_bonds"_special_bonds.html command. If using "fix
screening. It may be necessary to use the {extra/special/per/atom}
keyword of the "read_data"_read_data.html command. If using "fix
shake"_fix_shake.html, make sure no Drude particle is in this fix
group.

View File

@ -96,6 +96,7 @@ Package, Description, Doc page, Example, Library
"KIM"_#KIM, OpenKIM wrapper, "pair_style kim"_pair_kim.html, kim, ext
"KOKKOS"_#KOKKOS, Kokkos-enabled styles, "Section 5.3.3"_accelerate_kokkos.html, "Benchmarks"_http://lammps.sandia.gov/bench.html, -
"KSPACE"_#KSPACE, long-range Coulombic solvers, "kspace_style"_kspace_style.html, peptide, -
"LATTE"_#LATTE, quantum DFTB forces via LATTE, "fix latte"_fix_latte.html, latte, ext
"MANYBODY"_#MANYBODY, many-body potentials, "pair_style tersoff"_pair_tersoff.html, shear, -
"MC"_#MC, Monte Carlo options, "fix gcmc"_fix_gcmc.html, -, -
"MEAM"_#MEAM, modified EAM potential, "pair_style meam"_pair_meam.html, meam, int
@ -149,6 +150,7 @@ Package, Description, Doc page, Example, Library
"USER-SMTBQ"_#USER-SMTBQ, second moment tight binding QEq potential,"pair_style smtbq"_pair_smtbq.html, USER/smtbq, -
"USER-SPH"_#USER-SPH, smoothed particle hydrodynamics,"SPH User Guide"_PDF/SPH_LAMMPS_userguide.pdf, USER/sph, -
"USER-TALLY"_#USER-TALLY, pairwise tally computes,"compute XXX/tally"_compute_tally.html, USER/tally, -
"USER-UEF"_#USER-UEF, extensional flow,"fix nvt/uef"_fix_nh_uef.html, USER/uef, -
"USER-VTK"_#USER-VTK, dump output via VTK, "compute vtk"_dump_vtk.html, -, ext :tb(ea=c,ca1=l)
:line
@ -695,6 +697,66 @@ bench/in.rhodo :ul
:line
LATTE package :link(LATTE),h4
[Contents:]
A fix command which wraps the LATTE DFTB code, so that molecular
dynamics can be run with LAMMPS using density-functional tight-binding
quantum forces calculated by LATTE.
More information on LATTE can be found at this web site:
"https://github.com/lanl/LATTE"_latte_home. A brief technical
description is given with the "fix latte"_fix_latte.html command.
:link(latte_home,https://github.com/lanl/LATTE)
[Authors:] Christian Negre (LANL) and Steve Plimpton (Sandia). LATTE
itself is developed at Los Alamos National Laboratory by Marc
Cawkwell, Anders Niklasson, and Christian Negre.
[Install or un-install:]
Before building LAMMPS with this package, you must first download and
build the LATTE library. You can do this manually if you prefer;
follow the instructions in lib/latte/README. You can also do it in
one step from the lammps/src dir, using a command like these, which
simply invokes the lib/latte/Install.py script with the specified
args:
make lib-latte # print help message
make lib-latte args="-b" # download and build in lib/latte/LATTE-master
make lib-latte args="-p $HOME/latte" # use existing LATTE installation in $HOME/latte
make lib-latte args="-b -m gfortran" # download and build in lib/latte and
# copy Makefile.lammps.gfortran to Makefile.lammps
:pre
Note that 3 symbolic (soft) links, "includelink" and "liblink" and
"filelink", are created in lib/latte to point into the LATTE home dir.
When LAMMPS builds in src it will use these links. You should
also check that the Makefile.lammps file you create is apporpriate
for the compiler you use on your system to build LATTE.
You can then install/un-install the package and build LAMMPS in the
usual manner:
make yes-latte
make machine :pre
make no-latte
make machine :pre
[Supporting info:]
src/LATTE: filenames -> commands
src/LATTE/README
lib/latte/README
"fix latte"_fix_latte.html
examples/latte
"LAMMPS-LATTE tutorial"_https://github.com/lanl/LATTE/wiki/Using-LATTE-through-LAMMPS :ul
:line
MANYBODY package :link(MANYBODY),h4
[Contents:]
@ -2191,7 +2253,7 @@ src/USER-MESO/README
"pair_style edpd"_pair_meso.html
"pair_style mdpd"_pair_meso.html
"pair_style tdpd"_pair_meso.html
"fix mvv/dpd"_fix_mvv.html
"fix mvv/dpd"_fix_mvv_dpd.html
examples/USER/meso
http://lammps.sandia.gov/movies.html#mesodpd :ul
@ -2710,13 +2772,44 @@ examples/USER/tally :ul
:line
USER-UEF package :link(USER-UEF),h4
[Contents:]
A fix style for the integration of the equations of motion under
extensional flow with proper boundary conditions, as well as several
supporting compute styles and an output option.
[Author:] David Nicholson (MIT).
[Install or un-install:]
make yes-user-uef
make machine :pre
make no-user-uef
make machine :pre
[Supporting info:]
src/USER-UEF: filenames -> commands
src/USER-UEF/README
"fix nvt/uef"_fix_nh_uef.html
"fix npt/uef"_fix_nh_uef.html
"compute pressure/uef"_compute_pressure_uef.html
"compute temp/uef"_compute_temp_uef.html
"dump cfg/uef"_dump_cfg_uef.html
examples/uef :ul
:line
USER-VTK package :link(USER-VTK),h4
[Contents:]
A "dump vtk"_dump_vtk.html command which outputs
snapshot info in the "VTK format"_vtk, enabling visualization by
"Paraview"_paraview or other visuzlization packages.
A "dump vtk"_dump_vtk.html command which outputs snapshot info in the
"VTK format"_vtk, enabling visualization by "Paraview"_paraview or
other visuzlization packages.
:link(vtk,http://www.vtk.org)
:link(paraview,http://www.paraview.org)

View File

@ -920,7 +920,7 @@ CPUs and KNLs; the KOKKOS package builds for CPUs (OpenMP), GPUs
Makefile.intel_cpu
Makefile.intel_phi
Makefile.kokkos_omp
Makefile.kokkos_cuda
Makefile.kokkos_cuda_mpi
Makefile.kokkos_phi
Makefile.omp
Makefile.opt :ul

View File

@ -25,14 +25,14 @@ LAMMPS to run on the CPU cores and coprocessor cores simultaneously.
[Currently Available USER-INTEL Styles:]
Angle Styles: charmm, harmonic :ulb,l
Bond Styles: fene, harmonic :l
Bond Styles: fene, fourier, harmonic :l
Dihedral Styles: charmm, harmonic, opls :l
Fixes: nve, npt, nvt, nvt/sllod :l
Fixes: nve, npt, nvt, nvt/sllod, nve/asphere :l
Improper Styles: cvff, harmonic :l
Pair Styles: airebo, airebo/morse, buck/coul/cut, buck/coul/long,
buck, eam, eam/alloy, eam/fs, gayberne, lj/charmm/coul/charmm,
lj/charmm/coul/long, lj/cut, lj/cut/coul/long, lj/long/coul/long, rebo,
sw, tersoff :l
buck, dpd, eam, eam/alloy, eam/fs, gayberne, lj/charmm/coul/charmm,
lj/charmm/coul/long, lj/cut, lj/cut/coul/long, lj/long/coul/long,
rebo, sw, tersoff :l
K-Space Styles: pppm, pppm/disp :l
:ule
@ -54,11 +54,12 @@ warmup run (for use with offload benchmarks).
:c,image(JPG/user_intel.png)
Results are speedups obtained on Intel Xeon E5-2697v4 processors
(code-named Broadwell) and Intel Xeon Phi 7250 processors
(code-named Knights Landing) with "June 2017" LAMMPS built with
Intel Parallel Studio 2017 update 2. Results are with 1 MPI task
per physical core. See {src/USER-INTEL/TEST/README} for the raw
simulation rates and instructions to reproduce.
(code-named Broadwell), Intel Xeon Phi 7250 processors (code-named
Knights Landing), and Intel Xeon Gold 6148 processors (code-named
Skylake) with "June 2017" LAMMPS built with Intel Parallel Studio
2017 update 2. Results are with 1 MPI task per physical core. See
{src/USER-INTEL/TEST/README} for the raw simulation rates and
instructions to reproduce.
:line
@ -82,6 +83,11 @@ this order :l
The {newton} setting applies to all atoms, not just atoms shared
between MPI tasks :l
Vectorization can change the order for adding pairwise forces :l
When using the -DLMP_USE_MKL_RNG define (all included intel optimized
makefiles do) at build time, the random number generator for
dissipative particle dynamics (pair style dpd/intel) uses the Mersenne
Twister generator included in the Intel MKL library (that should be
more robust than the default Masaglia random number generator) :l
:ule
The precision mode (described below) used with the USER-INTEL
@ -108,7 +114,7 @@ $t should be 2 for Intel Xeon CPUs and 2 or 4 for Intel Xeon Phi :l
For some of the simple 2-body potentials without long-range
electrostatics, performance and scalability can be better with
the "newton off" setting added to the input script :l
For simulations on higher node counts, add "processors * * * grid
For simulations on higher node counts, add "processors * * * grid
numa" to the beginning of the input script for better scalability :l
If using {kspace_style pppm} in the input script, add
"kspace_modify diff ad" for better performance :l
@ -119,8 +125,8 @@ For Intel Xeon Phi CPUs:
Runs should be performed using MCDRAM. :ulb,l
:ule
For simulations using {kspace_style pppm} on Intel CPUs
supporting AVX-512:
For simulations using {kspace_style pppm} on Intel CPUs supporting
AVX-512:
Add "kspace_modify diff ad" to the input script :ulb,l
The command-line option should be changed to
@ -237,14 +243,17 @@ However, if you do not have coprocessors on your system, building
without offload support will produce a smaller binary.
The general requirements for Makefiles with the USER-INTEL package
are as follows. "-DLAMMPS_MEMALIGN=64" is required for CCFLAGS. When
using Intel compilers, "-restrict" is required and "-qopenmp" is
highly recommended for CCFLAGS and LINKFLAGS. LIB should include
"-ltbbmalloc". For builds supporting offload, "-DLMP_INTEL_OFFLOAD"
is required for CCFLAGS and "-qoffload" is required for LINKFLAGS.
Other recommended CCFLAG options for best performance are
"-O2 -fno-alias -ansi-alias -qoverride-limits fp-model fast=2
-no-prec-div".
are as follows. When using Intel compilers, "-restrict" is required
and "-qopenmp" is highly recommended for CCFLAGS and LINKFLAGS.
CCFLAGS should include "-DLMP_INTEL_USELRT" (unless POSIX Threads
are not supported in the build environment) and "-DLMP_USE_MKL_RNG"
(unless Intel Math Kernel Library (MKL) is not available in the build
environment). For Intel compilers, LIB should include "-ltbbmalloc"
or if the library is not available, "-DLMP_INTEL_NO_TBB" can be added
to CCFLAGS. For builds supporting offload, "-DLMP_INTEL_OFFLOAD" is
required for CCFLAGS and "-qoffload" is required for LINKFLAGS. Other
recommended CCFLAG options for best performance are "-O2 -fno-alias
-ansi-alias -qoverride-limits fp-model fast=2 -no-prec-div".
NOTE: The vectorization and math capabilities can differ depending on
the CPU. For Intel compilers, the "-x" flag specifies the type of
@ -361,10 +370,14 @@ intel"_package.html command that can improve performance when using
"PPPM"_kspace_style.html for long-range electrostatics on processors
with SMT. It generates an extra pthread for each MPI task. The thread
is dedicated to performing some of the PPPM calculations and MPI
communications. On Intel Xeon Phi x200 series CPUs, this will likely
always improve performance, even on a single node. On Intel Xeon
processors, using this mode might result in better performance when
using multiple nodes, depending on the machine. To use this mode,
communications. This feature requires setting the preprocessor flag
-DLMP_INTEL_USELRT in the makefile when compiling LAMMPS. It is unset
in the default makefiles ({Makefile.mpi} and {Makefile.serial}) but
it is set in all makefiles tuned for the USER-INTEL package. On Intel
Xeon Phi x200 series CPUs, the LRT feature will likely improve
performance, even on a single node. On Intel Xeon processors, using
this mode might result in better performance when using multiple nodes,
depending on the specific machine configuration. To enable LRT mode,
specify that the number of OpenMP threads is one less than would
normally be used for the run and add the "lrt yes" option to the "-pk"
command-line suffix or "package intel" command. For example, if a run

View File

@ -135,10 +135,10 @@ GPUs, or Phi.
You can do any of these in one line, using the suitable make command
line flags as described in "Section 4"_Section_packages.html of the
manual. If run from the src directory, these
commands will create src/lmp_kokkos_omp, lmp_kokkos_cuda, and
commands will create src/lmp_kokkos_omp, lmp_kokkos_cuda_mpi, and
lmp_kokkos_phi. Note that the OMP and PHI options use
src/MAKE/Makefile.mpi as the starting Makefile.machine. The CUDA
option uses src/MAKE/OPTIONS/Makefile.kokkos_cuda.
option uses src/MAKE/OPTIONS/Makefile.kokkos_cuda_mpi.
The latter two steps can be done using the "-k on", "-pk kokkos" and
"-sf kk" "command-line switches"_Section_start.html#start_6
@ -159,7 +159,7 @@ CPU-only (only MPI, no threading):
cd lammps/src
make yes-kokkos
make kokkos_mpi :pre
make kokkos_mpi_only :pre
Intel Xeon Phi (Intel Compiler, Intel MPI):
@ -167,11 +167,11 @@ cd lammps/src
make yes-kokkos
make kokkos_phi :pre
CPUs and GPUs (with MPICH):
CPUs and GPUs (with MPICH or OpenMPI):
cd lammps/src
make yes-kokkos
make kokkos_cuda_mpich :pre
make kokkos_cuda_mpi :pre
These examples set the KOKKOS-specific OMP, MIC, CUDA variables on the
make command line which requires a GNU-compatible make command. Try

View File

@ -16,7 +16,7 @@ atom_modify keyword values ... :pre
one or more keyword/value pairs may be appended :ulb,l
keyword = {id} or {map} or {first} or {sort} :l
{id} value = {yes} or {no}
{map} value = {array} or {hash}
{map} value = {yes} or {array} or {hash}
{first} value = group-ID = group whose atoms will appear first in internal atom lists
{sort} values = Nfreq binsize
Nfreq = sort atoms spatially every this many time steps
@ -25,8 +25,8 @@ keyword = {id} or {map} or {first} or {sort} :l
[Examples:]
atom_modify map hash
atom_modify map array sort 10000 2.0
atom_modify map yes
atom_modify map hash sort 10000 2.0
atom_modify first colloid :pre
[Description:]
@ -62,29 +62,33 @@ switch. This is described in "Section 2.2"_Section_start.html#start_2
of the manual. If atom IDs are not used, they must be specified as 0
for all atoms, e.g. in a data or restart file.
The {map} keyword determines how atom ID lookup is done for molecular
atom styles. Lookups are performed by bond (angle, etc) routines in
LAMMPS to find the local atom index associated with a global atom ID.
The {map} keyword determines how atoms with specific IDs are found
when required. An example are the bond (angle, etc) methods which
need to find the local index of an atom with a specific global ID
which is a bond (angle, etc) partner. LAMMPS performs this operation
efficiently by creating a "map", which is either an {array} or {hash}
table, as descibed below.
When the {array} value is used, each processor stores a lookup table
of length N, where N is the largest atom ID in the system. This is a
When the {map} keyword is not specified in your input script, LAMMPS
only creates a map for "atom_styles"_atom_style.html for molecular
systems which have permanent bonds (angles, etc). No map is created
for atomic systems, since it is normally not needed. However some
LAMMPS commands require a map, even for atomic systems, and will
generate an error if one does not exist. The {map} keyword thus
allows you to force the creation of a map. The {yes} value will
create either an {array} or {hash} style map, as explained in the next
paragraph. The {array} and {hash} values create an atom-style or
hash-style map respectively.
For an {array}-style map, each processor stores a lookup table of
length N, where N is the largest atom ID in the system. This is a
fast, simple method for many simulations, but requires too much memory
for large simulations. The {hash} value uses a hash table to perform
the lookups. This can be slightly slower than the {array} method, but
its memory cost is proportional to the number of atoms owned by a
processor, i.e. N/P when N is the total number of atoms in the system
and P is the number of processors.
When this setting is not specified in your input script, LAMMPS
creates a map, if one is needed, as an array or hash. See the
discussion of default values below for how LAMMPS chooses which kind
of map to build. Note that atomic systems do not normally need to
create a map. However, even in this case some LAMMPS commands will
create a map to find atoms (and then destroy it), or require a
permanent map. An example of the former is the "velocity loop
all"_velocity.html command, which uses a map when looping over all
atoms and insuring the same velocity values are assigned to an atom
ID, no matter which processor owns it.
for large simulations. For a {hash}-style map, a hash table is
created on each processor, which finds an atom ID in constant time
(independent of the global number of atom IDs). It can be slightly
slower than the {array} map, but its memory cost is proportional to
the number of atoms owned by a processor, i.e. N/P when N is the total
number of atoms in the system and P is the number of processors.
The {first} keyword allows a "group"_group.html to be specified whose
atoms will be maintained as the first atoms in each processor's list

73
doc/src/bond_gromos.txt Normal file
View File

@ -0,0 +1,73 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
bond_style gromos command :h3
bond_style gromos/omp command :h3
[Syntax:]
bond_style gromos :pre
[Examples:]
bond_style gromos
bond_coeff 5 80.0 1.2 :pre
[Description:]
The {gromos} bond style uses the potential
:c,image(Eqs/bond_gromos.jpg)
where r0 is the equilibrium bond distance. Note that the usual 1/4
factor is included in K.
The following coefficients must be defined for each bond type via the
"bond_coeff"_bond_coeff.html command as in the example above, or in
the data file or restart files read by the "read_data"_read_data.html
or "read_restart"_read_restart.html commands:
K (energy/distance^4)
r0 (distance) :ul
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
This bond style can only be used if LAMMPS was built with the
MOLECULE package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info on packages.
[Related commands:]
"bond_coeff"_bond_coeff.html, "delete_bonds"_delete_bonds.html
[Default:] none

View File

@ -8,6 +8,7 @@ Bond Styles :h1
bond_class2
bond_fene
bond_fene_expand
bond_gromos
bond_harmonic
bond_harmonic_shift
bond_harmonic_shift_cut

View File

@ -32,6 +32,7 @@ Commands :h1
dimension
displace_atoms
dump
dump_cfg_uef
dump_h5md
dump_image
dump_modify
@ -92,6 +93,7 @@ Commands :h1
tad
temper
temper_grem
temper_npt
thermo
thermo_modify
thermo_style

View File

@ -169,6 +169,7 @@ by users which are included in the LAMMPS distribution. The list of
these with links to the individual styles are given in the compute
section of "this page"_Section_commands.html#cmd_5.
"aggregate/atom"_compute_cluster_atom.html - aggregate ID for each atom
"angle/local"_compute_bond_local.html - theta and energy of each angle
"angmom/chunk"_compute_angmom_chunk.html - angular momentum for each chunk
"body/local"_compute_body_local.html - attributes of body sub-particles
@ -191,6 +192,7 @@ section of "this page"_Section_commands.html#cmd_5.
"erotate/sphere"_compute_erotate_sphere.html - rotational energy of spherical particles
"erotate/sphere/atom"_compute_erotate_sphere.html - rotational energy for each spherical particle
"event/displace"_compute_event_displace.html - detect event on atom displacement
"fragment/atom"_compute_cluster_atom.html - fragment ID for each atom
"group/group"_compute_group_group.html - energy/force between two groups of atoms
"gyration"_compute_gyration.html - radius of gyration of group of atoms
"gyration/chunk"_compute_gyration_chunk.html - radius of gyration for each chunk

View File

@ -0,0 +1,61 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
compute pressure/uef command :h3
[Syntax:]
compute ID group-ID pressure/uef temp-ID keyword ... :pre
ID, group-ID are documented in "compute"_compute.html command
pressure/uef = style name of this compute command
temp-ID = ID of compute that calculates temperature, can be NULL if not needed
zero or more keywords may be appended
keyword = {ke} or {pair} or {bond} or {angle} or {dihedral} or {improper} or {kspace} or {fix} or {virial} :ul
[Examples:]
compute 1 all pressure/uef my_temp_uef
compute 2 all pressure/uef my_temp_uef virial :pre
[Description:]
This command is used to compute the pressure tensor in
the reference frame of the applied flow field when
"fix nvt/uef"_fix_nh_uef.html" or
"fix npt/uef"_fix_nh_uef.html" is used.
It is not necessary to use this command to compute the scalar
value of the pressure. A "compute pressure"_compute_pressure.html
may be used for that purpose.
The keywords and output information are documented in
"compute_pressure"_compute_pressure.html.
[Restrictions:]
This fix is part of the USER-UEF package. It is only enabled if
LAMMPS was built with that package. See the
"Making LAMMPS"_Section_start.html#start_3 section for more info.
This command can only be used when "fix nvt/uef"_fix_nh_uef.html
or "fix npt/uef"_fix_nh_uef.html is active.
The kinetic contribution to the pressure tensor
will be accurate only when
the compute specificed by {temp-ID} is a
"compute temp/uef"_compute_temp_uef.html.
[Related commands:]
"compute pressure"_compute_pressure.html,
"fix nvt/uef"_fix_nh_uef.html,
"compute temp/uef"_compute_temp_uef.html
[Default:] none

View File

@ -0,0 +1,52 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
compute temp/uef command :h3
[Syntax:]
compute ID group-ID temp/uef :pre
ID, group-ID are documented in "compute"_compute.html command
temp/uef = style name of this compute command :ul
[Examples:]
compute 1 all temp/uef
compute 2 sel temp/uef :pre
[Description:]
This command is used to compute the kinetic energy tensor in
the reference frame of the applied flow field when
"fix nvt/uef"_fix_nh_uef.html" or
"fix npt/uef"_fix_nh_uef.html" is used.
It is not necessary to use this command to compute the scalar
value of the temperature. A "compute temp"_compute_temp.html
may be used for that purpose.
Output information for this command can be found in the
documentation for "compute temp"_compute_temp.html.
[Restrictions:]
This fix is part of the USER-UEF package. It is only enabled if
LAMMPS was built with that package. See the
"Making LAMMPS"_Section_start.html#start_3 section for more info.
This command can only be used when "fix nvt/uef"_fix_nh_uef.html
or "fix npt/uef"_fix_nh_uef.html is active.
[Related commands:]
"compute temp"_compute_temp.html,
"fix nvt/uef"_fix_nh_uef.html,
"compute pressure/uef"_compute_pressure_uef.html
[Default:] none

View File

@ -65,6 +65,7 @@ Computes :h1
compute_pe_atom
compute_plasticity_atom
compute_pressure
compute_pressure_uef
compute_property_atom
compute_property_chunk
compute_property_local
@ -114,6 +115,7 @@ Computes :h1
compute_temp_region_eff
compute_temp_rotate
compute_temp_sphere
compute_temp_uef
compute_ti
compute_torque_chunk
compute_vacf

View File

@ -7,6 +7,7 @@
:line
dihedral_style fourier command :h3
dihedral_style fourier/intel command :h3
dihedral_style fourier/omp command :h3
[Syntax:]

53
doc/src/dump_cfg_uef.txt Normal file
View File

@ -0,0 +1,53 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
dump cfg/uef command :h3
[Syntax:]
dump ID group-ID cfg/uef N file mass type xs ys zs args :pre
ID = user-assigned name for the dump :ulb,l
group-ID = ID of the group of atoms to be dumped :l
N = dump every this many timesteps :l
file = name of file to write dump info to :l
args = same as args for "dump custom"_dump.html :pre
:ule
[Examples:]
dump 1 all cfg/uef 10 dump.*.cfg mass type xs ys zs
dump 2 all cfg/uef 100 dump.*.cfg mass type xs ys zs id c_stress :pre
[Description:]
This command is used to dump atomic coordinates in the
reference frame of the applied flow field when
"fix nvt/uef"_fix_nh_uef.html or
"fix npt/uef"_fix_nh_uef.html or is used. Only the atomic
coordinates and frame-invariant scalar quantities
will be in the flow frame. If velocities are selected
as output, for example, they will not be in the same
reference frame as the atomic positions.
[Restrictions:]
This fix is part of the USER-UEF package. It is only enabled if
LAMMPS was built with that package. See the
"Making LAMMPS"_Section_start.html#start_3 section for more info.
This command can only be used when "fix nvt/uef"_fix_nh_uef.html
or "fix npt/uef"_fix_nh_uef.html is active.
[Related commands:]
"dump"_dump.html,
"fix nvt/uef"_fix_nh_uef.html
[Default:] none

View File

@ -15,8 +15,9 @@ dump_modify dump-ID keyword values ... :pre
dump-ID = ID of dump to modify :ulb,l
one or more keyword/value pairs may be appended :l
these keywords apply to various dump styles :l
keyword = {append} or {buffer} or {element} or {every} or {fileper} or {first} or {flush} or {format} or {image} or {label} or {nfile} or {pad} or {precision} or {region} or {scale} or {sort} or {thresh} or {unwrap} :l
{append} arg = {yes} or {no} or {at} N
keyword = {append} or {at} or {buffer} or {element} or {every} or {fileper} or {first} or {flush} or {format} or {image} or {label} or {nfile} or {pad} or {precision} or {region} or {scale} or {sort} or {thresh} or {unwrap} :l
{append} arg = {yes} or {no}
{at} arg = N
N = index of frame written upon first dump
{buffer} arg = {yes} or {no}
{element} args = E1 E2 ... EN, where N = # of atom types
@ -141,13 +142,18 @@ and {dcd}. It also applies only to text output files, not to binary
or gzipped or image/movie files. If specified as {yes}, then dump
snapshots are appended to the end of an existing dump file. If
specified as {no}, then a new dump file will be created which will
overwrite an existing file with the same name. If the {at} option is present
({netcdf} only), then the frame to append to can be specified. Negative values
are counted from the end of the file. This keyword can only take effect if the
dump_modify command is used after the "dump"_dump.html command, but before the
first command that causes dump snapshots to be output, e.g. a "run"_run.html or
"minimize"_minimize.html command. Once the dump file has been opened, this
keyword has no further effect.
overwrite an existing file with the same name.
:line
The {at} keyword only applies to the {netcdf} dump style. It can only
be used if the {append yes} keyword is also used. The {N} argument is
the index of which frame to append to. A negative value can be
specified for {N}, which means a frame counted from the end of the
file. The {at} keyword can only be used if the dump_modify command is
before the first command that causes dump snapshots to be output,
e.g. a "run"_run.html or "minimize"_minimize.html command. Once the
dump file has been opened, this keyword has no further effect.
:line

View File

@ -25,7 +25,8 @@ args = list of atom attributes, same as for "dump_style custom"_dump.html :l,ule
dump 1 all netcdf 100 traj.nc type x y z vx vy vz
dump_modify 1 append yes at -1 thermo yes
dump 1 all netcdf/mpiio 1000 traj.nc id type x y z :pre
dump 1 all netcdf/mpiio 1000 traj.nc id type x y z
dump 1 all netcdf 1000 traj.*.nc id type x y z :pre
[Description:]
@ -73,4 +74,3 @@ section for more info.
[Related commands:]
"dump"_dump.html, "dump_modify"_dump_modify.html, "undump"_undump.html

View File

@ -193,6 +193,7 @@ of "this page"_Section_commands.html#cmd_5.
"halt"_fix_halt.html - terminate a dynamics run or minimization
"heat"_fix_heat.html - add/subtract momentum-conserving heat
"indent"_fix_indent.html - impose force due to an indenter
"latte"_fix_latte.html - wrapper on LATTE density-functional tight-binding code
"langevin"_fix_langevin.html - Langevin temperature control
"lineforce"_fix_lineforce.html - constrain atoms to move in a line
"momentum"_fix_momentum.html - zero the linear and/or angular momentum of a group of atoms

View File

@ -139,6 +139,11 @@ forces added by this fix in a consistent manner. I.e. there is a
decrease in potential energy when atoms move in the direction of the
added force.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to the added forces on atoms to the
system's virial as part of "thermodynamic output"_thermo_style.html.
The default is {virial no}
The "fix_modify"_fix_modify.html {respa} option is supported by this
fix. This allows to set at which level of the "r-RESPA"_run_style.html
integrator the fix is adding its forces. Default is the outermost

View File

@ -97,6 +97,11 @@ The "fix_modify"_fix_modify.html {energy} option is supported by this
fix to add the potential "energy" of the CMAP interactions system's
potential energy as part of "thermodynamic output"_thermo_style.html.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to the interaction between atoms to
the system's virial as part of "thermodynamic output"_thermo_style.html.
The default is {virial yes}
This fix computes a global scalar which can be accessed by various
"output commands"_Section_howto.html#howto_15. The scalar is the
potential energy discussed above. The scalar value calculated by this

View File

@ -86,11 +86,16 @@ Change the volume and/or shape of the simulation box during a dynamics
run. Orthogonal simulation boxes have 3 adjustable parameters
(x,y,z). Triclinic (non-orthogonal) simulation boxes have 6
adjustable parameters (x,y,z,xy,xz,yz). Any or all of them can be
adjusted independently and simultaneously by this command. This fix
can be used to perform non-equilibrium MD (NEMD) simulations of a
continuously strained system. See the "fix
adjusted independently and simultaneously by this command.
This fix can be used to perform non-equilibrium MD (NEMD) simulations
of a continuously strained system. See the "fix
nvt/sllod"_fix_nvt_sllod.html and "compute
temp/deform"_compute_temp_deform.html commands for more details.
temp/deform"_compute_temp_deform.html commands for more details. Note
that simulation of a continuously extended system (extensional flow)
can be modeled using the "USER-UEF
package"_Section_packages.html#USER-UEF and its "fix
commands"_fix_nh_uef.html.
For the {x}, {y}, {z} parameters, the associated dimension cannot be
shrink-wrapped. For the {xy}, {yz}, {xz} parameters, the associated

View File

@ -7,6 +7,7 @@
:line
fix dpd/energy command :h3
fix dpd/energy/kk command :h3
[Syntax:]
@ -46,6 +47,29 @@ examples/USER/dpd directory.
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
This command is part of the USER-DPD package. It is only enabled if

View File

@ -124,6 +124,11 @@ can include the forces added by this fix in a consistent manner.
I.e. there is a decrease in potential energy when atoms move in the
direction of the added force due to the electric field.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to the added forces on atoms to the
system's virial as part of "thermodynamic output"_thermo_style.html.
The default is {virial no}
The "fix_modify"_fix_modify.html {respa} option is supported by this
fix. This allows to set at which level of the "r-RESPA"_run_style.html
integrator the fix adding its forces. Default is the outermost level.

View File

@ -7,6 +7,7 @@
:line
fix eos/table/rx command :h3
fix eos/table/rx/kk command :h3
[Syntax:]
@ -152,6 +153,29 @@ no 0.93 0.00 0.000 -1.76 :pre
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
This command is part of the USER-DPD package. It is only enabled if

View File

@ -131,6 +131,11 @@ forces added by this fix in a consistent manner. I.e. there is a
decrease in potential energy when atoms move in the direction of the
added force.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to the interactions computed by the
external program to the system's virial as part of "thermodynamic
output"_thermo_style.html. The default is {virial yes}
This fix computes a global scalar which can be accessed by various
"output commands"_Section_howto.html#howto_15. The scalar is the
potential energy discussed above. The scalar stored by this fix

210
doc/src/fix_latte.txt Normal file
View File

@ -0,0 +1,210 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
fix latte command :h3
[Syntax:]
fix ID group-ID latte peID :pre
ID, group-ID are documented in "fix"_fix.html command
latte = style name of this fix command
peID = NULL or ID of compute used to calculate per-atom energy :ul
[Examples:]
fix dftb all latte NULL :pre
[Description:]
This fix style is a wrapper on the self-consistent charge transfer
density functional based tight binding (DFTB) code LATTE. If you
download and build LATTE, it can be called as a library by LAMMPS via
this fix to run dynamics or perform energy minimization using DFTB
forces and energies computed by LATTE.
LATTE is principally developed and supported by Marc Cawkwell and
co-workers at Los Alamos National Laboratory (LANL). See the full
list of contributors in the src/LATTE/README file.
To use this fix, the LATTE program needs to be compiled as a library
and linked with LAMMPS. LATTE can be downloaded (or cloned) from
"https://github.com/lanl/LATTE"_https://github.com/lanl/LATTE.
Instructions on how to download and build LATTE on your system can be
found in the lib/latte/README. Note that you can also use the "make
lib-latte" command from the LAMMPS src directory to automate this
process.
Once LAMMPS is built with the LATTE package, you can run the example
input scripts for molecular dynamics or energy minimization that are
found in examples/latte.
A step-by-step tutorial can be follwed at: "LAMMPS-LATTE
tutorial"_https://github.com/lanl/LATTE/wiki/Using-LATTE-through-LAMMPS
The {peID} argument is not yet supported by fix latte, so it must be
specified as NULL. Eventually it will be used to enable LAMMPS to
calculate a Coulomb potential as an alternative to LATTE performing
the calculation.
:line
LATTE is a code for performing self-consistent charge transfer
tight-binding (SC-TB) calculations of total energies and the forces
acting on atoms in molecules and solids. This tight-binding method is
becoming more and more popular and widely used in chemistry,
biochemistry, material science, etc.
The SC-TB formalism is derived from an expansion of the Kohn-Sham
density functional to second order in charge fluctuations about a
reference charge of overlapping atom-centered densities and bond
integrals are parameterized using a Slater-Koster tight-binding
approach. This procedure, which usually is referred to as the DFTB
method has been described in detail by ("Elstner"_#Elstner) and
("Finnis"_#Finnis2) and coworkers.
The work of the LATTE developers follows that of Elstner closely with
respect to the physical model. However, the development of LATTE is
geared principally toward large-scale, long duration, microcanonical
quantum-based Born-Oppenheimer molecular dynamics (QMD) simulations.
One of the main bottlenecks of an electronic structure calculation is
the solution of the generalized eigenvalue problem which scales with
the cube of the system size O(N^3).
The Theoretical and Computer sciences divisions at Los Alamos National
Laboratory have accumulated large experience addressing this issue by
calculating the density matrix directly instead of using
diagonalization. We typically use a recursive sparse Fermi-operator
expansion using second-order spectral projection functions
(SP2-algorithm), which was introduced by Niklasson in 2002
("Niklasson2002"_#Niklasson2002), ("Rubensson"_#Rubensson),
("Mniszewski"_#Mniszewski). When the matrices involved in the
recursive expansion are sufficiently sparse, the calculation of the
density matrix scales linearly as a function of the system size O(N).
Another important feature is the extended Lagrangian framework for
Born-Oppenheimer molecular dynamics (XL-BOMD)
("Niklasson2008"_#Niklasson2008) ("Niklasson2014"_#Niklasson2014),
("Niklasson2017"_#Niklasson2017) that allows for a drastic reduction
or even a complete removal of the iterative self-consistent field
optimization. Often only a single density matrix calculation per
molecular dynamics time step is required, yet total energy stability
is well maintained. The SP2 and XL-BOMD techniques enables stable
linear scaling MD simulations with a very small computational
overhead. This opens a number of opportunities in many different
areas of chemistry and materials science, as we now can simulate
larger system sizes and longer time scales
("Cawkwell2012"_#Cawkwell2012), ("Negre2016"_#Negre2016).
:line
[Restart, fix_modify, output, run start/stop, minimize info:]
No information about this fix is written to "binary restart
files"_restart.html.
The "fix_modify"_fix_modify.html {energy} option is supported by this
fix to add the potential energy computed by LATTE to the system's
potential energy as part of "thermodynamic output"_thermo_style.html.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the LATTE DFTB contribution to the system's virial as part
of "thermodynamic output"_thermo_style.html. The default is {virial
yes}
This fix computes a global scalar which can be accessed by various
"output commands"_Section_howto.html#howto_15. The scalar is the
potential energy discussed above. The scalar value calculated by this
fix is "extensive".
No parameter of this fix can be used with the {start/stop} keywords of
the "run"_run.html command.
The DFTB forces computed by LATTE via this fix are imposed during an
energy minimization, invoked by the "minimize"_minimize.html command.
NOTE: If you want the potential energy associated with the DFTB
forces to be included in the total potential energy of the system (the
quantity being minimized), you MUST enable the
"fix_modify"_fix_modify.html {energy} option for this fix.
[Restrictions:]
This fix is part of the LATTE package. It is only enabled if LAMMPS
was built with that package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You must use metal units, as set by the "units"_units command to use
this fix.
LATTE does not currently compute per-atom energy or per-atom virial
contributions. So they will not show up as part of the calculations
performed by the "compute pe/atom"_compute_pe_atom.html or "compute
stress/atom"_compute_stress_atom.html commands.
Currently, LAMMPS must be run in serial or as a single MPI task, to
use this fix. This is typically not a bottleneck, since LATTE will be
doing 99% or more of the work to compute quantum-accurate forces.
NOTE: NEB calculations can be done using this fix using multiple
replicas and running LAMMPS in parallel. However, each replica must
be run on a single MPI task. For details, see the "neb"_neb.html
command and -partition command-line explained in "Section
2.6"_Section_start.html#start_6 of the manual.
[Related commands:] none
[Default:] none
:line
:link(Elstner)
[(Elstner)] M. Elstner, D. Poresag, G. Jungnickel, J. Elsner,
M. Haugk, T. Frauenheim, S. Suhai, and G. Seifert, Phys. Rev. B, 58,
7260 (1998).
:link(Elstner1)
[(Elstner)] M. Elstner, D. Poresag, G. Jungnickel, J. Elsner,
M. Haugk, T. Frauenheim, S. Suhai, and G. Seifert, Phys. Rev. B, 58,
7260 (1998).
:link(Finnis2)
[(Finnis)] M. W. Finnis, A. T. Paxton, M. Methfessel, and M. van
Schilfgarde, Phys. Rev. Lett., 81, 5149 (1998).
:link(Mniszewski)
[(Mniszewski)] S. M. Mniszewski, M. J. Cawkwell, M. E. Wall,
J. Mohd-Yusof, N. Bock, T. C. Germann, and A. M. N. Niklasson,
J. Chem. Theory Comput., 11, 4644 (2015).
:link(Niklasson2002)
[(Niklasson2002)] A. M. N. Niklasson, Phys. Rev. B, 66, 155115 (2002).
:link(Rubensson)
[(Rubensson)] E. H. Rubensson, A. M. N. Niklasson, SIAM
J. Sci. Comput. 36 (2), 147-170, (2014).
:link(Niklasson2008)
[(Niklasson2008)] A. M. N. Niklasson, Phys. Rev. Lett., 100, 123004
(2008).
:link(Niklasson2014)
[(Niklasson2014)] A. M. N. Niklasson and M. Cawkwell, J. Chem. Phys.,
141, 164123, (2014).
:link(Niklasson2017)
[(Niklasson2017)] A. M. N. Niklasson, J. Chem. Phys., 147, 054103 (2017).
:link(Cawkwell2012)
[(Cawkwell2012)] A. M. N. Niklasson, M. J. Cawkwell, Phys. Rev. B, 86
(17), 174308 (2012).
:link(Negre2016)
[(Negre2016)] C. F. A. Negre, S. M. Mniszewski, M. J. Cawkwell,
N. Bock, M. E. Wall, and A. M. N. Niklasson, J. Chem. Theory Comp.,
12, 3063 (2016).

View File

@ -14,10 +14,11 @@ fix_modify fix-ID keyword value ... :pre
fix-ID = ID of the fix to modify :ulb,l
one or more keyword/value pairs may be appended :l
keyword = {temp} or {press} or {energy} or {respa} or {dynamic/dof} :l
keyword = {temp} or {press} or {energy} or {virial} or {respa} or {dynamic/dof} :l
{temp} value = compute ID that calculates a temperature
{press} value = compute ID that calculates a pressure
{energy} value = {yes} or {no}
{virial} value = {yes} or {no}
{respa} value = {1} to {max respa level} or {0} (for outermost level)
{dynamic/dof} value = {yes} or {no}
yes/no = do or do not recompute the number of degrees of freedom (DOF) contributing to the temperature :pre
@ -52,11 +53,10 @@ define their own compute by default, as described in their
documentation. Thus this option allows the user to override the
default method for computing P.
For fixes that calculate a contribution to the potential energy of the
system, the {energy} keyword will include that contribution in
thermodynamic output of potential energy. This is because the {energy
yes} setting must be specified to include the fix's global or per-atom
energy in the calculation performed by the "compute
The {energy} keyword can be used with fixes that support it.
{energy yes} adds a contribution to the potential energy of the
system. The fix's global and per-atom
energy is included in the calculation performed by the "compute
pe"_compute_pe.html or "compute pe/atom"_compute_pe_atom.html
commands. See the "thermo_style"_thermo_style.html command for info
on how potential energy is output. For fixes that tally a global
@ -69,6 +69,25 @@ are using it when performing an "energy minimization"_minimize.html
and if you want the energy and forces it produces to be part of the
optimization criteria.
The {virial} keyword can be used with fixes that support it.
{virial yes} adds a contribution to the virial of the
system. The fix's global and per-atom
virial is included in the calculation performed by the "compute
pressure"_compute_pressure.html or
"compute stress/atom"_compute_stress_atom.html
commands. See the "thermo_style"_thermo_style.html command for info
on how pressure is output.
NOTE: You must specify the {virial yes} setting for a fix if you
are doing "box relaxation"_fix_box_relax.html and
if you want virial contribution of the fix to be part of the
relaxation criteria, although this seems unlikely.
NOTE: This option is only supported by fixes that explicitly say
so. For some of these (e.g. the
"fix shake"_fix_shake.html command) the default setting is
{virial yes}, for others it is {virial no}.
For fixes that set or modify forces, it may be possible to select at
which "r-RESPA"_run_style.html level the fix operates via the {respa}
keyword. The RESPA level at which the fix is active can be selected.
@ -111,4 +130,4 @@ pressure"_compute_pressure.html, "thermo_style"_thermo_style.html
[Default:]
The option defaults are temp = ID defined by fix, press = ID defined
by fix, energy = no, respa = 0.
by fix, energy = no, virial = different for each fix style, respa = 0.

View File

@ -93,7 +93,7 @@ intermediate replica with the previous and the next image:
Fnudge_parallel = {Kspring} * (|Ri+1 - Ri| - |Ri - Ri-1|) :pre
Note that in this case the specified {Kspring) is in force/distance
Note that in this case the specified {Kspring} is in force/distance
units.
With a value of {ideal}, the spring force is computed as suggested in
@ -105,7 +105,7 @@ where RD is the "reaction coordinate" see "neb"_neb.html section, and
RDideal is the ideal RD for which all the images are equally spaced.
I.e. RDideal = (I-1)*meanDist when the climbing replica is off, where
I is the replica number). The meanDist is the average distance
between replicas. Note that in this case the specified {Kspring) is
between replicas. Note that in this case the specified {Kspring} is
in force units.
Note that the {ideal} form of nudging can often be more effective at

View File

@ -393,32 +393,36 @@ thermostatting and barostatting.
:line
These fixes compute a temperature and pressure each timestep. To do
this, the fix creates its own computes of style "temp" and "pressure",
as if one of these two sets of commands had been issued:
this, the thermostat and barostat fixes create their own computes of
style "temp" and "pressure", as if one of these sets of commands had
been issued:
For fix nvt:
compute fix-ID_temp group-ID temp
compute fix-ID_press group-ID pressure fix-ID_temp :pre
For fix npt and fix nph:
compute fix-ID_temp all temp
compute fix-ID_press all pressure fix-ID_temp :pre
See the "compute temp"_compute_temp.html and "compute
pressure"_compute_pressure.html commands for details. Note that the
IDs of the new computes are the fix-ID + underscore + "temp" or fix_ID
+ underscore + "press". For fix nvt, the group for the new computes
is the same as the fix group. For fix nph and fix npt, the group for
the new computes is "all" since pressure is computed for the entire
system.
For fix nvt, the group for the new temperature compute is the same as
the fix group. For fix npt and fix nph, the group for both the new
temperature and pressure compute is "all" since pressure is computed
for the entire system. In the case of fix nph, the temperature
compute is not used for thermostatting, but just for a kinetic-energy
contribution to the pressure. See the "compute
temp"_compute_temp.html and "compute pressure"_compute_pressure.html
commands for details. Note that the IDs of the new computes are the
fix-ID + underscore + "temp" or fix_ID + underscore + "press".
Note that these are NOT the computes used by thermodynamic output (see
the "thermo_style"_thermo_style.html command) with ID = {thermo_temp}
and {thermo_press}. This means you can change the attributes of this
and {thermo_press}. This means you can change the attributes of these
fix's temperature or pressure via the
"compute_modify"_compute_modify.html command or print this temperature
or pressure during thermodynamic output via the "thermo_style
custom"_thermo_style.html command using the appropriate compute-ID.
It also means that changing attributes of {thermo_temp} or
{thermo_press} will have no effect on this fix.
"compute_modify"_compute_modify.html command. Or you can print this
temperature or pressure during thermodynamic output via the
"thermo_style custom"_thermo_style.html command using the appropriate
compute-ID. It also means that changing attributes of {thermo_temp}
or {thermo_press} will have no effect on this fix.
Like other fixes that perform thermostatting, fix nvt and fix npt can
be used with "compute commands"_compute.html that calculate a

228
doc/src/fix_nh_uef.txt Normal file
View File

@ -0,0 +1,228 @@
<"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
fix nvt/uef command :h3
fix npt/uef command :h3
[Syntax:]
fix ID group-ID style_name erate edot_x edot_y temp Tstart Tstop Tdamp keyword value ... :pre
ID, group-ID are documented in "fix"_fix.html command :ulb,l
style_name = {nvt/uef} or {npt/uef} :l
{Tstart}, {Tstop}, and {Tdamp} are documented in the "fix npt"_fix_nh.html command :l
{edot_x} and {edot_y} are the strain rates in the x and y directions (1/(time units)) :l
one or more keyword/value pairs may be appended :l
keyword = {ext} or {strain} or {iso} or {x} or {y} or {z} or {tchain} or {pchain} or {tloop} or {ploop} or {mtk}
{ext} value = {x} or {y} or {z} or {xy} or {yz} or {xz} = external dimensions
sets the external dimensions used to calculate the scalar pressure
{strain} values = e_x e_y = initial strain
usually not needed, but may be needed to resume a run with a data file.
{iso}, {x}, {y}, {z}, {tchain}, {pchain}, {tloop}, {ploop}, {mtk} keywords
documented by the "fix npt"_fix_nh.html command :pre
:ule
[Examples:]
fix uniax_nvt all nvt/uef temp 400 400 100 erate 0.00001 -0.000005
fix biax_nvt all nvt/uef temp 400 400 100 erate 0.000005 0.000005
fix uniax_npt all npt/uef temp 400 400 300 iso 1 1 3000 erate 0.00001 -0.000005 ext yz
fix biax_npt all npt/uef temp 400 400 100 erate -0.00001 0.000005 x 1 1 3000 :pre
[Description:]
This fix can be used to simulate non-equilibrium molecular dynamics
(NEMD) under diagonal flow fields, including uniaxial and biaxial
flow. Simulations under continuous extensional flow may be carried
out for an indefinite amount of time. It is an implementation of the
boundary conditions from "(Dobson)"_#Dobson, and also uses numerical
lattice reduction as was proposed by "(Hunt)"_#Hunt. The lattice
reduction algorithm is from "(Semaev)"_Semaev. The fix is intended for
simulations of homogeneous flows, and integrates the SLLOD equations
of motion, originally proposed by Hoover and Ladd (see "(Evans and
Morriss)"_#Sllod). Additional detail about this implementation can be
found in "(Nicholson and Rutledge)"_#Nicholson.
Note that NEMD simulations of a continuously strained system can be
performed using the "fix deform"_fix_deform.html, "fix
nvt/sllod"_fix_nvt_sllod.html, and "compute
temp/deform"_compute_temp_deform.html commands.
The applied flow field is set by the {eps} keyword. The values
{edot_x} and {edot_y} correspond to the strain rates in the xx and yy
directions. It is implicitly assumed that the flow field is
traceless, and therefore the strain rate in the zz direction is eqal
to -({edot_x} + {edot_y}).
NOTE: Due to an instability in the SLLOD equations under extension,
"fix momentum"_fix_momentum.html should be used to regularly reset the
linear momentum.
The boundary conditions require a simulation box that does not have a
consistent alignment relative to the applied flow field. Since LAMMPS
utilizes an upper-triangular simulation box, it is not possible to
express the evolving simulation box in the same coordinate system as
the flow field. This fix keeps track of two coordinate systems: the
flow frame, and the upper triangular LAMMPS frame. The coordinate
systems are related to each other through the QR decomposition, as is
illustrated in the image below.
:c,image(JPG/uef_frames.jpg)
During most molecular dynamics operations, the system is represented
in the LAMMPS frame. Only when the positions and velocities are
updated is the system rotated to the flow frame, and it is rotated
back to the LAMMPS frame immediately afterwards. For this reason, all
vector-valued quantities (except for the tensors from
"compute_pressure/uef"_compute_pressure_uef.html and
"compute_temp/uef"_compute_temp_uef.html) will be computed in the
LAMMPS frame. Rotationally invariant scalar quantities like the
temperature and hydrostatic pressure are frame-invariant and will be
computed correctly. Additionally, the system is in the LAMMPS frame
during all of the output steps, and therefore trajectory files made
using the dump command will be in the LAMMPS frame unless the
"dump_cfg/uef"_dump_cfg_uef.html command is used.
:line
Temperature control is achieved with the default Nose-Hoover style
thermostat documented in "fix npt"_fix_nh.html. When this fix is
active, only the peculiar velocity of each atom is stored, defined as
the velocity relative to the streaming velocity. This is in contrast
to "fix nvt/sllod"_fix_nvt_sllod.html, which uses a lab-frame
velocity, and removes the contribution from the streaming velocity in
order to compute the temperature.
Pressure control is achieved using the default Nose-Hoover barostat
documented in "fix npt"_fix_nh.html. There are two ways to control the
pressure using this fix. The first method involves using the {ext}
keyword along with the {iso} pressure style. With this method, the
pressure is controlled by scaling the simulation box isotropically to
achieve the average pressure only in the directions specified by
{ext}. For example, if the {ext} value is set to {xy}, the average
pressure (Pxx+Pyy)/2 will be controlled.
This example command will control the total hydrostatic pressure under
uniaxial tension:
fix f1 all npt/uef temp 0.7 0.7 0.5 iso 1 1 5 erate -0.5 -0.5 ext xyz :pre
This example command will control the average stress in compression
directions, which would typically correspond to free surfaces under
drawing with uniaxial tension:
fix f2 all npt/uef temp 0.7 0.7 0.5 iso 1 1 5 erate -0.5 -0.5 ext xy :pre
The second method for pressure control involves setting the normal
stresses using the {x}, {y} , and/or {z} keywords. When using this
method, the same pressure must be specified via {Pstart} and {Pstop}
for all dimensions controlled. Any choice of pressure conditions that
would cause LAMMPS to compute a deviatoric stress are not permissible
and will result in an error. Additionally, all dimensions with
controlled stress must have the same applied strain rate. The {ext}
keyword must be set to the default value ({xyz}) when using this
method.
For example, the following commands will work:
fix f3 all npt/uef temp 0.7 0.7 0.5 x 1 1 5 y 1 1 5 erate -0.5 -0.5
fix f4 all npt/uef temp 0.7 0.7 0.5 z 1 1 5 erate 0.5 0.5 :pre
The following commands will not work:
fix f5 all npt/uef temp 0.7 0.7 0.5 x 1 1 5 z 1 1 5 erate -0.5 -0.5
fix f6 all npt/uef temp 0.7 0.7 0.5 x 1 1 5 z 2 2 5 erate 0.5 0.5 :pre
:line
These fix computes a temperature and pressure each timestep. To do
this, it creates its own computes of style "temp/uef" and
"pressure/uef", as if one of these two sets of commands had been
issued:
compute fix-ID_temp group-ID temp/uef
compute fix-ID_press group-ID pressure/uef fix-ID_temp :pre
compute fix-ID_temp all temp/uef
compute fix-ID_press all pressure/uef fix-ID_temp :pre
See the "compute temp/uef"_compute_temp_uef.html and "compute
pressure/uef"_compute_pressure_uef.html commands for details. Note
that the IDs of the new computes are the fix-ID + underscore + "temp"
or fix_ID + underscore + "press".
[Restart, fix_modify, output, run start/stop, minimize info:]
The fix writes the state of all the thermostat and barostat variables,
as well as the cumulative strain applied, to "binary restart
files"_restart.html. See the "read_restart"_read_restart.html command
for info on how to re-specify a fix in an input script that reads a
restart file, so that the operation of the fix continues in an
uninterrupted fashion.
NOTE: It is not necessary to set the {strain} keyword when resuming a
run from a restart file. Only for resuming from data files, which do
not contain the cumulative applied strain, will this keyword be
necessary.
This fix can be used with the "fix_modify"_fix_modify.html {temp} and
{press} options. The temperature and pressure computes used must be of
type {temp/uef} and {pressure/uef}.
This fix computes the same global scalar and vecor quantities as "fix
npt"_fix_nh.html.
The fix is not invoked during "energy minimization"_minimize.html.
[Restrictions:]
This fix is part of the USER-UEF package. It is only enabled if LAMMPS
was built with that package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
Due to requirements of the boundary conditions, when the {strain}
keyword is set to zero (or unset), the initial simulation box must be
cubic and have style triclinic. If the box is initially of type ortho,
use "change_box"_change_box.html before invoking the fix.
NOTE: When resuming from restart files, you may need to use "box tilt
large"_box.html since lammps has internal criteria from lattice
reduction that are not the same as the criteria in the numerical
lattice reduction algorithm.
[Related commands:]
"fix nvt"_fix_nh.html, "fix nvt/sllod"_fix_nvt_sllod.html, "compute
temp/uef"_compute_temp_uef.html, "compute
pressure/uef"_compute_pressure_uef.html, "dump
cfg/uef"_dump_cfg_uef.html
[Default:]
The default keyword values specific to this fix are exy = xyz, strain
= 0 0. The remaining defaults are the same as for {fix
npt}_fix_nh.html except tchain = 1. The reason for this change is
given in "fix nvt/sllod"_fix_nvt_sllod.html.
:line
:link(Dobson)
[(Dobson)] Dobson, J Chem Phys, 141, 184103 (2014).
:link(Hunt)
[(Hunt)] Hunt, Mol Simul, 42, 347 (2016).
:link(Semaev)
[(Semaev)] Semaev, Cryptography and Lattices, 181 (2001).
:link(Sllod)
[(Evans and Morriss)] Evans and Morriss, Phys Rev A, 30, 1528 (1984).
:link(Nicholson)
[(Nicholson and Rutledge)] Nicholson and Rutledge, J Chem Phys, 145,
244903 (2016).

View File

@ -44,7 +44,7 @@ A technical report with more information on this integrator can be found
[Restrictions:]
These pair styles can only be used if LAMMPS was built with the
USER-CGDNA package and the MOLECULE and ASPHERE package. See the "Making
"USER-CGDNA"_#USER-CGDNA package and the MOLECULE and ASPHERE package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info on packages.
[Related commands:]

View File

@ -24,7 +24,8 @@ keyword = {angmom} :l
[Examples:]
fix 1 all nve/dotc/langevin 1.0 1.0 0.03 457145 angmom 10 :pre
fix 1 all nve/dotc/langevin 1.0 1.0 0.03 457145 angmom 10
fix 1 all nve/dotc/langevin 0.1 0.1 78.9375 457145 angmom 10 :pre
[Description:]
@ -78,7 +79,9 @@ a Gaussian random number) for speed.
:line
{Tstart} and {Tstop} have to be constant values, i.e. they cannot
be variables.
be variables. If used together with the oxDNA force field for
coarse-grained simulation of DNA please note that T = 0.1 in oxDNA units
corresponds to T = 300 K.
The {damp} parameter is specified in time units and determines how
rapidly the temperature is relaxed. For example, a value of 0.03
@ -89,6 +92,10 @@ viscosity of the solvent, i.e. a small relaxation time implies a
hi-viscosity solvent and vice versa. See the discussion about gamma
and viscosity in the documentation for the "fix
viscous"_fix_viscous.html command for more details.
Note that the value 78.9375 in the second example above corresponds
to a diffusion constant, which is about an order of magnitude larger
than realistic ones. This has been used to sample configurations faster
in Brownian dynamics simulations.
The random # {seed} must be a positive integer. A Marsaglia random
number generator is used. Each processor uses the input seed to
@ -115,12 +122,12 @@ A technical report with more information on this integrator can be found
[Restrictions:]
These pair styles can only be used if LAMMPS was built with the
USER-CGDNA package and the MOLECULE and ASPHERE package. See the "Making
"USER-CGDNA"_#USER-CGDNA package and the MOLECULE and ASPHERE package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info on packages.
[Related commands:]
"fix nve"_fix_nve.html, "fix langevin"_fix_langevin.html, "fix nve/dot"_fix_nve_dot.html,
"fix nve"_fix_nve.html, "fix langevin"_fix_langevin.html, "fix nve/dot"_fix_nve_dot.html, "bond_style oxdna/fene"_bond_oxdna.html, "bond_style oxdna2/fene"_bond_oxdna.html, "pair_style oxdna/excv"_pair_oxdna.html, "pair_style oxdna2/excv"_pair_oxdna2.html
[Default:] none

56
doc/src/fix_rhok.txt Normal file
View File

@ -0,0 +1,56 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
fix rhok command :h3
fix ID group-ID rhok nx ny nz K a :pre
ID, group-ID are documented in "fix"_fix.html command
nx, ny, nz = k-vektor of collective density field
K = spring constant of bias potential
a = anchor point of bias potential :ul
[Examples:]
fix bias all rhok 16 0 0 4.0 16.0
fix 1 all npt temp 0.8 0.8 4.0 z 2.2 2.2 8.0
# output of 4 values from fix rhok: U_bias rho_k_RE rho_k_IM |rho_k|
thermo_style custom step temp pzz lz f_bias f_bias\[1\] f_bias\[2\] f_bias\[3\] :pre
[Description:]
The fix applies a force to atoms given by the potential
:c,image(Eqs/fix_rhok.jpg)
as described in "(Pedersen)"_#Pedersen.
This field, which biases configurations with long-range order, can be
used to study crystal-liquid interfaces and determine melting
temperatures "(Pedersen)"_#Pedersen.
An example of using the interface pinning method is located in the
{examples/USER/misc/rhok} directory.
[Restrictions:]
This fix is part of the MISC package. It is only enabled if LAMMPS
was built with that package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
[Related commands:]
"thermo_style"_thermo_style.html
[Default:] none
:line
:link(Pedersen)
[(Pedersen)] Pedersen, J. Chem. Phys., 139, 104102 (2013).

View File

@ -26,6 +26,9 @@ style = {rigid} or {rigid/nve} or {rigid/nvt} or {rigid/npt} or {rigid/nph} or {
bodystyle = {single} or {molecule} or {group} :l
{single} args = none
{molecule} args = none
{custom} args = {i_propname} or {v_varname}
i_propname = an integer property defined via fix property/atom
v_varname = an atom-style or atomfile-style variable
{group} args = N groupID1 groupID2 ...
N = # of groups
groupID1, groupID2, ... = list of N group IDs :pre
@ -80,6 +83,16 @@ fix 1 rods rigid/npt molecule temp 300.0 300.0 100.0 iso 0.5 0.5 10.0
fix 1 particles rigid/npt molecule temp 1.0 1.0 5.0 x 0.5 0.5 1.0 z 0.5 0.5 1.0 couple xz
fix 1 water rigid/nph molecule iso 0.5 0.5 1.0
fix 1 particles rigid/npt/small molecule temp 1.0 1.0 1.0 iso 0.5 0.5 1.0 :pre
variable bodyid atom 1.0*gmask(clump1)+2.0*gmask(clump2)+3.0*gmask(clump3)
fix 1 clump rigid custom v_bodyid :pre
variable bodyid atomfile bodies.txt
fix 1 clump rigid custom v_bodyid :pre
fix 0 all property/atom i_bodyid
read_restart data.rigid fix 0 NULL Bodies
fix 1 clump rigid/small custom i_bodyid :pre
[Description:]
@ -100,7 +113,7 @@ of a biomolecule such as a protein.
Example of small rigid bodies are patchy nanoparticles, such as those
modeled in "this paper"_#Zhang1 by Sharon Glotzer's group, clumps of
granular particles, lipid molecules consiting of one or more point
granular particles, lipid molecules consisting of one or more point
dipoles connected to other spheroids or ellipsoids, irregular
particles built from line segments (2d) or triangles (3d), and
coarse-grain models of nano or colloidal particles consisting of a
@ -203,11 +216,11 @@ most one rigid body. Which atoms are in which bodies can be defined
via several options.
NOTE: With the {rigid/small} styles, which require that {bodystyle} be
specified as {molecule}, you can define a system that has no rigid
bodies initially. This is useful when you are using the {mol} keyword
in conjunction with another fix that is adding rigid bodies on-the-fly
as molecules, such as "fix deposit"_fix_deposit.html or "fix
pour"_fix_pour.html.
specified as {molecule} or {custom}, you can define a system that has
no rigid bodies initially. This is useful when you are using the {mol}
keyword in conjunction with another fix that is adding rigid bodies
on-the-fly as molecules, such as "fix deposit"_fix_deposit.html or
"fix pour"_fix_pour.html.
For bodystyle {single} the entire fix group of atoms is treated as one
rigid body. This option is only allowed for the {rigid} styles.
@ -222,6 +235,15 @@ molecule ID = 0) surrounding rigid bodies, this may not be what you
want. Thus you should be careful to use a fix group that only
includes atoms you want to be part of rigid bodies.
Bodystyle {custom} is similar to bodystyle {molecule}, however some
custom properties are used to group atoms into rigid bodies. The
special case for molecule/body ID = 0 is not available. Possible
custom properties are an integer property associated with atoms through
"fix property/atom"_fix_property_atom.html or an atom style variable
or an atomfile style variable. For the latter two, the variable value
will be rounded to an integer and then rigid bodies defined from
those values.
For bodystyle {group}, each of the listed groups is treated as a
separate rigid body. Only atoms that are also in the fix group are
included in each rigid body. This option is only allowed for the
@ -703,6 +725,11 @@ NVT, NPT, NPH rigid styles to add the energy change induced by the
thermostatting to the system's potential energy as part of
"thermodynamic output"_thermo_style.html.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to keeping the objects rigid to the
system's virial as part of "thermodynamic output"_thermo_style.html.
The default is {virial yes}
The "fix_modify"_fix_modify.html {temp} and {press} options are
supported by the 4 NPT and NPH rigid styles to change the computes
used to calculate the instantaneous pressure tensor. Note that the 2

View File

@ -7,6 +7,7 @@
:line
fix rx command :h3
fix rx/kk command :h3
[Syntax:]
@ -182,6 +183,29 @@ read_data data.dpd fix foo_SPECIES NULL Species
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
This command is part of the USER-DPD package. It is only enabled if

View File

@ -37,8 +37,8 @@ keyword = {file} or {ave} or {start} or {file} or {overwrite}:l
compute 1 all saed 0.0251 Al O Kmax 1.70 Zone 0 0 1 dR_Ewald 0.01 c 0.5 0.5 0.5
compute 2 all saed 0.0251 Ni Kmax 1.70 Zone 0 0 0 c 0.05 0.05 0.05 manual echo :pre
fix saed/vtk 1 1 1 c_1 file Al2O3_001.saed
fix saed/vtk 1 1 1 c_2 file Ni_000.saed :pre
fix 1 all saed/vtk 1 1 1 c_1 file Al2O3_001.saed
fix 2 all saed/vtk 1 1 1 c_2 file Ni_000.saed :pre
[Description:]

View File

@ -186,6 +186,11 @@ to 1 and recompiling LAMMPS.
[Restart, fix_modify, output, run start/stop, minimize info:]
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to keeping the constraints to the
system's virial as part of "thermodynamic output"_thermo_style.html.
The default is {virial yes}
No information about these fixes is written to "binary restart
files"_restart.html. None of the "fix_modify"_fix_modify.html options
are relevant to these fixes. No global or per-atom quantities are

View File

@ -7,6 +7,7 @@
:line
fix shardlow command :h3
fix shardlow/kk command :h3
[Syntax:]
@ -52,6 +53,29 @@ examples/USER/dpd directory.
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
This command is part of the USER-DPD package. It is only enabled if

View File

@ -101,6 +101,11 @@ See the "read_restart"_read_restart.html command for info on how to
re-specify a fix in an input script that reads a restart file, so that
the operation of the fix continues in an uninterrupted fashion.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to the added forces on atoms to the
system's virial as part of "thermodynamic output"_thermo_style.html.
The default is {virial no}
The "fix_modify"_fix_modify.html {respa} option is supported by
this fix. This allows to set at which level of the "r-RESPA"_run_style.html
integrator the fix is adding its forces. Default is the outermost level.

View File

@ -7,6 +7,7 @@
:line
fix wall/lj93 command :h3
fix wall/lj93/kk command :h3
fix wall/lj126 command :h3
fix wall/lj1043 command :h3
fix wall/colloid command :h3
@ -251,6 +252,11 @@ fix to add the energy of interaction between atoms and each wall to
the system's potential energy as part of "thermodynamic
output"_thermo_style.html.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to the interaction between
atoms and each wall to the system's virial as part of "thermodynamic
output"_thermo_style.html. The default is {virial no}
The "fix_modify"_fix_modify.html {respa} option is supported by this
fix. This allows to set at which level of the "r-RESPA"_run_style.html
integrator the fix is adding its forces. Default is the outermost level.
@ -277,6 +283,31 @@ the total potential energy of the system (the quantity being
minimized), you MUST enable the "fix_modify"_fix_modify.html {energy}
option for this fix.
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:] none
[Related commands:]

View File

@ -15,7 +15,7 @@ fix ID group-ID wall/region region-ID style epsilon sigma cutoff :pre
ID, group-ID are documented in "fix"_fix.html command
wall/region = style name of this fix command
region-ID = region whose boundary will act as wall
style = {lj93} or {lj126} or {colloid} or {harmonic}
style = {lj93} or {lj126} or {lj1043} or {colloid} or {harmonic}
epsilon = strength factor for wall-particle interaction (energy or energy/distance^2 units)
sigma = size factor for wall-particle interaction (distance units)
cutoff = distance from wall at which wall-particle interaction is cut off (distance units) :ul
@ -112,6 +112,10 @@ For style {lj126}, the energy E is given by the 12/6 potential:
:c,image(Eqs/pair_lj.jpg)
For style {wall/lj1043}, the energy E is given by the 10/4/3 potential:
:c,image(Eqs/fix_wall_lj1043.jpg)
For style {colloid}, the energy E is given by an integrated form of
the "pair_style colloid"_pair_colloid.html potential:
@ -128,49 +132,8 @@ surface no longer interact. The energy of the wall potential is
shifted so that the wall-particle interaction energy is 0.0 at the
cutoff distance.
For the {lj93} and {lj126} styles, {epsilon} and {sigma} are the usual
Lennard-Jones parameters, which determine the strength and size of the
particle as it interacts with the wall. Epsilon has energy units.
Note that this {epsilon} and {sigma} may be different than any
{epsilon} or {sigma} values defined for a pair style that computes
particle-particle interactions.
The {lj93} interaction is derived by integrating over a 3d
half-lattice of Lennard-Jones 12/6 particles. The {lj126} interaction
is effectively a harder, more repulsive wall interaction.
For the {colloid} style, {epsilon} is effectively a Hamaker constant
with energy units for the colloid-wall interaction, {R} is the radius
of the colloid particle, {D} is the distance from the surface of the
colloid particle to the wall (r-R), and {sigma} is the size of a
constituent LJ particle inside the colloid particle. Note that the
cutoff distance Rc in this case is the distance from the colloid
particle center to the wall.
The {colloid} interaction is derived by integrating over constituent
LJ particles of size {sigma} within the colloid particle and a 3d
half-lattice of Lennard-Jones 12/6 particles of size {sigma} in the
wall.
For the {wall/harmonic} style, {epsilon} is effectively the spring
constant K, and has units (energy/distance^2). The input parameter
{sigma} is ignored. The minimum energy position of the harmonic
spring is at the {cutoff}. This is a repulsive-only spring since the
interaction is truncated at the {cutoff}
NOTE: For all of the styles, you must insure that r is always > 0 for
all particles in the group, or LAMMPS will generate an error. This
means you cannot start your simulation with particles on the region
surface (r = 0) or with particles on the wrong side of the region
surface (r < 0). For the {wall/lj93} and {wall/lj126} styles, the
energy of the wall/particle interaction (and hence the force on the
particle) blows up as r -> 0. The {wall/colloid} style is even more
restrictive, since the energy blows up as D = r-R -> 0. This means
the finite-size particles of radius R must be a distance larger than R
from the region surface. The {harmonic} style is a softer potential
and does not blow up as r -> 0, but you must use a large enough
{epsilon} that particles always reamin on the correct side of the
region surface (r > 0).
For a full description of these wall styles, see fix_style
"wall"_fix_wall.html
[Restart, fix_modify, output, run start/stop, minimize info:]
@ -182,6 +145,11 @@ fix to add the energy of interaction between atoms and the wall to the
system's potential energy as part of "thermodynamic
output"_thermo_style.html.
The "fix_modify"_fix_modify.html {virial} option is supported by this
fix to add the contribution due to the interaction between
atoms and each wall to the system's virial as part of "thermodynamic
output"_thermo_style.html. The default is {virial no}
The "fix_modify"_fix_modify.html {respa} option is supported by this
fix. This allows to set at which level of the "r-RESPA"_run_style.html
integrator the fix is adding its forces. Default is the outermost level.

View File

@ -59,6 +59,7 @@ Fixes :h1
fix_langevin
fix_langevin_drude
fix_langevin_eff
fix_latte
fix_lb_fluid
fix_lb_momentum
fix_lb_pc
@ -76,6 +77,7 @@ Fixes :h1
fix_neb
fix_nh
fix_nh_eff
fix_nh_uef
fix_nph_asphere
fix_nph_body
fix_nph_sphere
@ -124,6 +126,7 @@ Fixes :h1
fix_reaxc_species
fix_recenter
fix_restrain
fix_rhok
fix_rigid
fix_rx
fix_saed_vtk

View File

@ -62,6 +62,7 @@ dump_modify.html
dump_molfile.html
dump_netcdf.html
dump_vtk.html
dump_cfg_uef.html
echo.html
fix.html
fix_modify.html
@ -116,6 +117,7 @@ suffix.html
tad.html
temper.html
temper_grem.html
temper_npt.html
thermo.html
thermo_modify.html
thermo_style.html
@ -186,6 +188,7 @@ fix_ipi.html
fix_langevin.html
fix_langevin_drude.html
fix_langevin_eff.html
fix_latte.html
fix_lb_fluid.html
fix_lb_momentum.html
fix_lb_pc.html
@ -230,6 +233,7 @@ fix_nvt_manifold_rattle.html
fix_nvt_sllod.html
fix_nvt_sllod_eff.html
fix_nvt_sphere.html
fix_nh_uef.html
fix_oneway.html
fix_orient.html
fix_phonon.html
@ -252,6 +256,7 @@ fix_reaxc_species.html
fix_recenter.html
fix_restrain.html
fix_rigid.html
fix_rhok.html
fix_rx.html
fix_saed_vtk.html
fix_setforce.html
@ -353,6 +358,7 @@ compute_pe.html
compute_pe_atom.html
compute_plasticity_atom.html
compute_pressure.html
compute_pressure_uef.html
compute_property_atom.html
compute_property_chunk.html
compute_property_local.html
@ -402,6 +408,7 @@ compute_temp_region.html
compute_temp_region_eff.html
compute_temp_rotate.html
compute_temp_sphere.html
compute_temp_uef.html
compute_ti.html
compute_torque_chunk.html
compute_vacf.html
@ -513,7 +520,7 @@ pair_zero.html
bond_class2.html
bond_fene.html
bond_fene_expand.html
bond_oxdna.html
bond_gromos.html
bond_harmonic.html
bond_harmonic_shift.html
bond_harmonic_shift_cut.html
@ -521,6 +528,7 @@ bond_hybrid.html
bond_morse.html
bond_none.html
bond_nonlinear.html
bond_oxdna.html
bond_quartic.html
bond_table.html
bond_zero.html

View File

@ -62,7 +62,7 @@ args = arguments specific to the style :l
{no_affinity} values = none
{kokkos} args = keyword value ...
zero or more keyword/value pairs may be appended
keywords = {neigh} or {neigh/qeq} or {newton} or {binsize} or {comm} or {comm/exchange} or {comm/forward}
keywords = {neigh} or {neigh/qeq} or {newton} or {binsize} or {comm} or {comm/exchange} or {comm/forward} or {comm/reverse}
{neigh} value = {full} or {half}
full = full neighbor list
half = half neighbor list built in thread-safe manner
@ -75,9 +75,10 @@ args = arguments specific to the style :l
{binsize} value = size
size = bin size for neighbor list construction (distance units)
{comm} value = {no} or {host} or {device}
use value for both comm/exchange and comm/forward
use value for comm/exchange and comm/forward and comm/reverse
{comm/exchange} value = {no} or {host} or {device}
{comm/forward} value = {no} or {host} or {device}
{comm/reverse} value = {no} or {host} or {device}
no = perform communication pack/unpack in non-KOKKOS mode
host = perform pack/unpack on host (e.g. with OpenMP threading)
device = perform pack/unpack on device (e.g. on GPU)
@ -335,7 +336,8 @@ from the USER-INTEL package is not used, then the LRT setting is
ignored and no extra threads are generated. Enabling LRT will replace
the "run_style"_run_style.html with the {verlet/lrt/intel} style that
is identical to the default {verlet} style aside from supporting the
LRT feature.
LRT feature. This feature requires setting the preprocessor flag
-DLMP_INTEL_USELRT in the makefile when compiling LAMMPS.
The {balance} keyword sets the fraction of "pair
style"_pair_style.html work offloaded to the coprocessor for split
@ -428,17 +430,18 @@ Coulombic solver"_kspace_style.html because the GPU is faster at
performing pairwise interactions, then this rule of thumb may give too
large a binsize.
The {comm} and {comm/exchange} and {comm/forward} keywords determine
The {comm} and {comm/exchange} and {comm/forward} and {comm/reverse} keywords determine
whether the host or device performs the packing and unpacking of data
when communicating per-atom data between processors. "Exchange"
communication happens only on timesteps that neighbor lists are
rebuilt. The data is only for atoms that migrate to new processors.
"Forward" communication happens every timestep. The data is for atom
"Forward" communication happens every timestep. "Reverse" communication
happens every timestep if the {newton} option is on. The data is for atom
coordinates and any other atom properties that needs to be updated for
ghost atoms owned by each processor.
The {comm} keyword is simply a short-cut to set the same value
for both the {comm/exchange} and {comm/forward} keywords.
for both the {comm/exchange} and {comm/forward} and {comm/reverse} keywords.
The value options for all 3 keywords are {no} or {host} or {device}.
A value of {no} means to use the standard non-KOKKOS method of

View File

@ -17,6 +17,7 @@ pair_style born/coul/long/omp command :h3
pair_style born/coul/msm command :h3
pair_style born/coul/msm/omp command :h3
pair_style born/coul/wolf command :h3
pair_style born/coul/wolf/cs command :h3
pair_style born/coul/wolf/gpu command :h3
pair_style born/coul/wolf/omp command :h3
pair_style born/coul/dsf command :h3
@ -36,7 +37,7 @@ args = list of arguments for a particular style :ul
{born/coul/msm} args = cutoff (cutoff2)
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
cutoff2 = global cutoff for Coulombic (optional) (distance units)
{born/coul/wolf} args = alpha cutoff (cutoff2)
{born/coul/wolf} or {born/coul/wolf/cs} args = alpha cutoff (cutoff2)
alpha = damping parameter (inverse distance units)
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
cutoff2 = global cutoff for Coulombic (optional) (distance units)
@ -65,6 +66,7 @@ pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
pair_style born/coul/wolf 0.25 10.0
pair_style born/coul/wolf 0.25 10.0 9.0
pair_style born/coul/wolf/cs 0.25 10.0 9.0
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
@ -106,8 +108,9 @@ damped shifted force model as in the "coul/dsf"_pair_coul.html style.
Style {born/coul/long/cs} is identical to {born/coul/long} except that
a term is added for the "core/shell model"_Section_howto.html#howto_25
to allow charges on core and shell particles to be separated by r =
0.0. The same correction is introduced for {born/coul/dsf/cs} style
which is identical to {born/coul/dsf}.
0.0. The same correction is introduced for the {born/coul/dsf/cs}
style which is identical to {born/coul/dsf}. And likewise for
{born/coul/wolf/cs} style which is identical to {born/coul/wolf}.
Note that these potentials are related to the "Buckingham
potential"_pair_buck.html.

View File

@ -29,6 +29,7 @@ pair_style coul/streitz command :h3
pair_style coul/wolf command :h3
pair_style coul/wolf/kk command :h3
pair_style coul/wolf/omp command :h3
pair_style coul/wolf/cs command :h3
pair_style tip4p/cut command :h3
pair_style tip4p/long command :h3
pair_style tip4p/cut/omp command :h3
@ -43,6 +44,7 @@ pair_style coul/long cutoff
pair_style coul/long/cs cutoff
pair_style coul/long/gpu cutoff
pair_style coul/wolf alpha cutoff
pair_style coul/wolf/cs alpha cutoff
pair_style coul/streitz cutoff keyword alpha
pair_style tip4p/cut otype htype btype atype qdist cutoff
pair_style tip4p/long otype htype btype atype qdist cutoff :pre
@ -72,6 +74,7 @@ pair_style coul/msm 10.0
pair_coeff * * :pre
pair_style coul/wolf 0.2 9.0
pair_style coul/wolf/cs 0.2 9.0
pair_coeff * * :pre
pair_style coul/streitz 12.0 ewald
@ -202,7 +205,9 @@ interactions outside that distance are computed in reciprocal space.
Style {coul/long/cs} is identical to {coul/long} except that a term is
added for the "core/shell model"_Section_howto.html#howto_25 to allow
charges on core and shell particles to be separated by r = 0.0.
charges on core and shell particles to be separated by r = 0.0. The
same correction is introduced for the {coul/wolf/cs} style which is
identical to {coul/wolf}.
Styles {tip4p/cut} and {tip4p/long} implement the coulomb part of
the TIP4P water model of "(Jorgensen)"_#Jorgensen3, which introduces

View File

@ -9,12 +9,13 @@
pair_style born/coul/long/cs command :h3
pair_style buck/coul/long/cs command :h3
pair_style born/coul/dsf/cs command :h3
pair_style born/coul/wolf/cs command :h3
[Syntax:]
pair_style style args :pre
style = {born/coul/long/cs} or {buck/coul/long/cs} or {born/coul/dsf/cs}
style = {born/coul/long/cs} or {buck/coul/long/cs} or {born/coul/dsf/cs} or {born/coul/wolf/cs}
args = list of arguments for a particular style :ul
{born/coul/long/cs} args = cutoff (cutoff2)
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
@ -26,6 +27,10 @@ args = list of arguments for a particular style :ul
alpha = damping parameter (inverse distance units)
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
cutoff2 = global cutoff for Coulombic (distance units) :pre
{born/coul/wolf/cs} args = alpha cutoff (cutoff2)
alpha = damping parameter (inverse distance units)
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
cutoff2 = global cutoff for Coulombic (optional) (distance units)
[Examples:]
@ -41,6 +46,10 @@ pair_style born/coul/dsf/cs 0.1 10.0 12.0
pair_coeff * * 0.0 1.00 0.00 0.00 0.00
pair_coeff 1 1 480.0 0.25 0.00 1.05 0.50 :pre
pair_style born/coul/wolf/cs 0.25 10.0 12.0
pair_coeff * * 0.0 1.00 0.00 0.00 0.00
pair_coeff 1 1 480.0 0.25 0.00 1.05 0.50 :pre
[Description:]
These pair styles are designed to be used with the adiabatic
@ -73,13 +82,21 @@ the core and shell, epsilon is the dielectric constant and r_min is the
minimal distance.
The pair style {born/coul/dsf/cs} is identical to the
"pair_style born/coul/dsf"_pair_born.html style, which uses the
"pair_style born/coul/dsf"_pair_born.html style, which uses
the damped shifted force model as in "coul/dsf"_pair_coul.html
to compute the Coulomb contribution. This approach does not require
a long-range solver, thus the only correction is the addition of a
minimal distance to avoid the possible r = 0.0 case for a
core/shell pair.
The pair style {born/coul/wolf/cs} is identical to the
"pair_style born/coul/wolf"_pair_born.html style, which uses
the Wolf summation as in "coul/wolf"_pair_coul.html to compute
the Coulomb contribution. This approach does not require
a long-range solver, thus the only correction is the addition of a
minimal distance to avoid the possible r = 0.0 case for a
core/shell pair.
[Restrictions:]
These pair styles are part of the CORESHELL package. They are only

View File

@ -8,6 +8,7 @@
pair_style dpd command :h3
pair_style dpd/gpu command :h3
pair_style dpd/intel command :h3
pair_style dpd/omp command :h3
pair_style dpd/tstat command :h3
pair_style dpd/tstat/gpu command :h3

View File

@ -8,6 +8,7 @@
pair_style dpd/fdt command :h3
pair_style dpd/fdt/energy command :h3
pair_style dpd/fdt/energy/kk command :h3
[Syntax:]
@ -125,6 +126,29 @@ significantly larger timesteps to be taken.
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
These commands are part of the USER-DPD package. They are only

View File

@ -294,7 +294,7 @@ distribution have a ".cdeam" suffix.
Style {eam/fs} computes pairwise interactions for metals and metal
alloys using a generalized form of EAM potentials due to Finnis and
Sinclair "(Finnis)"_#Finnis. The total energy Ei of an atom I is
Sinclair "(Finnis)"_#Finnis1. The total energy Ei of an atom I is
given by
:c,image(Eqs/pair_eam_fs.jpg)
@ -442,7 +442,7 @@ of Physics: Condensed Matter, 16, S2629 (2004).
[(Daw)] Daw, Baskes, Phys Rev Lett, 50, 1285 (1983).
Daw, Baskes, Phys Rev B, 29, 6443 (1984).
:link(Finnis)
:link(Finnis1)
[(Finnis)] Finnis, Sinclair, Philosophical Magazine A, 50, 45 (1984).
:link(Stukowski)

View File

@ -7,6 +7,7 @@
:line
pair_style exp6/rx command :h3
pair_style exp6/rx/kk command :h3
[Syntax:]
@ -147,6 +148,31 @@ This style does not support the pair_modify tail option for adding long-range
tail corrections to energy and pressure for the A,C terms in the
pair interaction.
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
This command is part of the USER-DPD package. It is only enabled if

View File

@ -10,6 +10,7 @@ pair_style hybrid command :h3
pair_style hybrid/omp command :h3
pair_style hybrid/overlay command :h3
pair_style hybrid/overlay/omp command :h3
pair_style hybrid/overlay/kk command :h3
[Syntax:]

View File

@ -7,6 +7,7 @@
:line
pair_style multi/lucy/rx command :h3
pair_style multi/lucy/rx/kk command :h3
[Syntax:]
@ -200,6 +201,29 @@ This pair style can only be used via the {pair} keyword of the
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
This command is part of the USER-DPD package. It is only enabled if

View File

@ -20,20 +20,24 @@ pair_coeff * * style2 args :pre
style1 = {hybrid/overlay oxdna/excv oxdna/stk oxdna/hbond oxdna/xstk oxdna/coaxstk} :ul
style2 = {oxdna/stk}
args = list of arguments for these two particular styles :ul
style2 = {oxdna/excv} or {oxdna/stk} or {oxdna/hbond} or {oxdna/xstk} or {oxdna/coaxstk}
args = list of arguments for these particular styles :ul
{oxdna2/stk} args = T 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
T = temperature (oxDNA units, 0.1 = 300 K) :pre
{oxdna/stk} args = seq T 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
seq = seqav (for average sequence stacking strength) or seqdep (for sequence-dependent stacking strength)
T = temperature (oxDNA units, 0.1 = 300 K)
{oxdna/hbond} args = seq eps 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
seq = seqav (for average sequence base-pairing strength) or seqdep (for sequence-dependent base-pairing strength)
eps = 1.077 (between base pairs A-T and C-G) or 0 (all other pairs) :pre
[Examples:]
pair_style hybrid/overlay oxdna/excv oxdna/stk oxdna/hbond oxdna/xstk oxdna/coaxstk
pair_coeff * * oxdna/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/stk seqdep 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond seqdep 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond seqdep 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond seqdep 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna/coaxstk 46.0 0.4 0.6 0.22 0.58 2.0 2.541592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 -0.65 2.0 -0.65 :pre
@ -44,10 +48,11 @@ for coarse-grained modelling of DNA. The effective interaction between the nucle
excluded volume interaction {oxdna/excv}, the stacking {oxdna/stk}, cross-stacking {oxdna/xstk}
and coaxial stacking interaction {oxdna/coaxstk} as well
as the hydrogen-bonding interaction {oxdna/hbond} between complementary pairs of nucleotides on
opposite strands.
opposite strands. Average sequence or sequence-dependent stacking and base-pairing strengths
are supported "(Sulc)"_#Sulc1.
The exact functional form of the pair styles is rather complex, which manifests itself in the 144 coefficients
in the above example. The individual potentials consist of products of modulation factors,
The exact functional form of the pair styles is rather complex.
The individual potentials consist of products of modulation factors,
which themselves are constructed from a number of more basic potentials
(Morse, Lennard-Jones, harmonic angle and distance) as well as quadratic smoothing and modulation terms.
We refer to "(Ouldridge-DPhil)"_#Ouldridge-DPhil1 and "(Ouldridge)"_#Ouldridge1
@ -55,9 +60,10 @@ for a detailed description of the oxDNA force field.
NOTE: These pair styles have to be used together with the related oxDNA bond style
{oxdna/fene} for the connectivity of the phosphate backbone (see also documentation of
"bond_style oxdna/fene"_bond_oxdna.html). With one exception the coefficients
"bond_style oxdna/fene"_bond_oxdna.html). Most of the coefficients
in the above example have to be kept fixed and cannot be changed without reparametrizing the entire model.
The exception is the first coefficient after {oxdna/stk} (T=0.1 in the above example).
Exceptions are the first and second coefficient after {oxdna/stk} (seq=seqdep and T=0.1 in the above example)
and the first coefficient after {oxdna/hbond} (seq=seqdep in the above example).
When using a Langevin thermostat, e.g. through "fix langevin"_fix_langevin.html
or "fix nve/dotc/langevin"_fix_nve_dotc_langevin.html
the temperature coefficients have to be matched to the one used in the fix.
@ -86,7 +92,11 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages.
:line
:link(Sulc1)
[(Sulc)] P. Sulc, F. Romano, T.E. Ouldridge, L. Rovigatti, J.P.K. Doye, A.A. Louis, J. Chem. Phys. 137, 135101 (2012).
:link(Ouldridge-DPhil1)
[(Ouldrigde-DPhil)] T.E. Ouldridge, Coarse-grained modelling of DNA and DNA self-assembly, DPhil. University of Oxford (2011).
:link(Ouldridge1)
[(Ouldridge)] T.E. Ouldridge, A.A. Louis, J.P.K. Doye, J. Chem. Phys. 134, 085101 (2011).

View File

@ -21,11 +21,15 @@ pair_coeff * * style2 args :pre
style1 = {hybrid/overlay oxdna2/excv oxdna2/stk oxdna2/hbond oxdna2/xstk oxdna2/coaxstk oxdna2/dh} :ul
style2 = {oxdna2/stk} or {oxdna2/dh}
args = list of arguments for these two particular styles :ul
style2 = {oxdna2/excv} or {oxdna2/stk} or {oxdna2/hbond} or {oxdna2/xstk} or {oxdna2/coaxstk} or {oxdna2/dh}
args = list of arguments for these particular styles :ul
{oxdna2/stk} args = T 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
{oxdna2/stk} args = seq T 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
seq = seqav (for average sequence stacking strength) or seqdep (for sequence-dependent stacking strength)
T = temperature (oxDNA units, 0.1 = 300 K)
{oxdna/hbond} args = seq eps 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
seq = seqav (for average sequence base-pairing strength) or seqdep (for sequence-dependent base-pairing strength)
eps = 1.0678 (between base pairs A-T and C-G) or 0 (all other pairs)
{oxdna2/dh} args = T rhos qeff
T = temperature (oxDNA units, 0.1 = 300 K)
rhos = salt concentration (mole per litre)
@ -35,10 +39,10 @@ args = list of arguments for these two particular styles :ul
pair_style hybrid/overlay oxdna2/excv oxdna2/stk oxdna2/hbond oxdna2/xstk oxdna2/coaxstk oxdna2/dh
pair_coeff * * oxdna2/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna2/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/stk seqdep 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond seqdep 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond seqdep 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond seqdep 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna2/coaxstk 58.5 0.4 0.6 0.22 0.58 2.0 2.891592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 40.0 3.116592653589793
pair_coeff * * oxdna2/dh 0.1 1.0 0.815 :pre
@ -50,7 +54,8 @@ for coarse-grained modelling of DNA. The effective interaction between the nucle
excluded volume interaction {oxdna2/excv}, the stacking {oxdna2/stk}, cross-stacking {oxdna2/xstk}
and coaxial stacking interaction {oxdna2/coaxstk}, electrostatic Debye-Hueckel interaction {oxdna2/dh}
as well as the hydrogen-bonding interaction {oxdna2/hbond} between complementary pairs of nucleotides on
opposite strands.
opposite strands. Average sequence or sequence-dependent stacking and base-pairing strengths
are supported "(Sulc)"_#Sulc2.
The exact functional form of the pair styles is rather complex.
The individual potentials consist of products of modulation factors,
@ -61,9 +66,10 @@ and "(Ouldridge)"_#Ouldridge2 for a detailed description of the oxDNA2 force fi
NOTE: These pair styles have to be used together with the related oxDNA2 bond style
{oxdna2/fene} for the connectivity of the phosphate backbone (see also documentation of
"bond_style oxdna2/fene"_bond_oxdna.html). Almost all coefficients
"bond_style oxdna2/fene"_bond_oxdna.html). Most of the coefficients
in the above example have to be kept fixed and cannot be changed without reparametrizing the entire model.
Exceptions are the first coefficient after {oxdna2/stk} (T=0.1 in the above example) and the coefficients
Exceptions are the first and the second coefficient after {oxdna2/stk} (seq=seqdep and T=0.1 in the above example),
the first coefficient after {oxdna/hbond} (seq=seqdep in the above example) and the three coefficients
after {oxdna2/dh} (T=0.1, rhos=1.0, qeff=0.815 in the above example). When using a Langevin thermostat
e.g. through "fix langevin"_fix_langevin.html or "fix nve/dotc/langevin"_fix_nve_dotc_langevin.html
the temperature coefficients have to be matched to the one used in the fix.
@ -92,6 +98,9 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages.
:line
:link(Sulc2)
[(Sulc)] P. Sulc, F. Romano, T.E. Ouldridge, L. Rovigatti, J.P.K. Doye, A.A. Louis, J. Chem. Phys. 137, 135101 (2012).
:link(Snodin)
[(Snodin)] B.E. Snodin, F. Randisi, M. Mosayebi, et al., J. Chem. Phys. 142, 234901 (2015).

View File

@ -7,6 +7,7 @@
:line
pair_style table/rx command :h3
pair_style table/rx/kk command :h3
[Syntax:]
@ -223,6 +224,29 @@ This pair style can only be used via the {pair} keyword of the
:line
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in "Section 5"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
USER-OMP and OPT packages, respectively. They are only enabled if
LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section 5"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
:line
[Restrictions:]
This command is part of the USER-DPD package. It is only enabled if

View File

@ -178,7 +178,7 @@ not the same and the current value is not the default.
Note that some force field styles (pair, bond, angle, etc) do not
store their coefficient info in restart files. Typically these are
many-body or tabulated potentials which read their parameters from
separate files. In these cases you will need to re-specify the "pair
separate files. In these cases you will need to re-specify the
"pair_coeff"_pair_coeff.html, "bond_coeff"_bond_coeff.html, etc
commands in your restart input script. The doc pages for individual
force field styles mention if this is the case. This is also true of

67
doc/src/temper_npt.txt Normal file
View File

@ -0,0 +1,67 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
temper/npt command :h3
[Syntax:]
temper/npt N M temp fix-ID seed1 seed2 pressure index :pre
N = total # of timesteps to run
M = attempt a tempering swap every this many steps
temp = initial temperature for this ensemble
fix-ID = ID of the fix that will control temperature and pressure during the run
seed1 = random # seed used to decide on adjacent temperature to partner with
seed2 = random # seed for Boltzmann factor in Metropolis swap
pressure = setpoint pressure for the ensemble
index = which temperature (0 to N-1) I am simulating (optional) :ul
[Examples:]
temper/npt 100000 100 $t nptfix 0 58728 1
temper/npt 2500000 1000 300 nptfix 0 32285 $p
temper/npt 5000000 2000 $t nptfix 0 12523 1 $w :pre
[Description:]
Run a parallel tempering or replica exchange simulation using multiple
replicas (ensembles) of a system in the isothermal-isobaric (NPT)
ensemble. The command temper/npt works like "temper"_temper.html but
requires running replicas in the NPT ensemble instead of the canonical
(NVT) ensemble and allows for pressure to be set in the ensembles.
These multiple ensembles can run in parallel at different temperatures
or different pressures. The acceptance criteria for temper/npt is
specific to the NPT ensemble and can be found in references
"(Okabe)"_#Okabe2 and "(Mori)"_#Mori2.
Apart from the difference in acceptance criteria and the specification
of pressure, this command works much like the "temper"_temper.html
command. See the documentation on "temper"_temper.html for information
on how the parallel tempering is handled in general.
:line
[Restrictions:]
This command can only be used if LAMMPS was built with the USER-MISC
package. See the "Making LAMMPS"_Section_start.html#start_3 section
for more info on packages.
This command should be used with a fix that maintains the
isothermal-isobaric (NPT) ensemble.
[Related commands:]
"temper"_temper.html, "variable"_variable.html, "fix_npt"_fix_nh.html
[Default:] none
:link(Okabe2)
[(Okabe)] T. Okabe, M. Kawata, Y. Okamoto, M. Masuhiro, Chem. Phys. Lett., 335, 435-439 (2001).
:link(Mori2)
[(Mori)] Y. Mori, Y. Okamoto, J. Phys. Soc. Jpn., 7, 074003 (2010).

View File

@ -79,6 +79,7 @@ granregion: use of fix wall/region/gran as boundary on granular particles
hugoniostat: Hugoniostat shock dynamics
indent: spherical indenter into a 2d solid
kim: use of potentials in Knowledge Base for Interatomic Models (KIM)
latte: use of LATTE density-functional tight-binding quantum code
meam: MEAM test for SiC and shear (same as shear examples)
melt: rapid melt of 3d LJ system
micelle: self-assembly of small lipid-like molecules into 2d bilayers

View File

@ -30,10 +30,10 @@ bond_coeff * 2.0 0.25 0.7525
# oxDNA pair interactions
pair_style hybrid/overlay oxdna/excv oxdna/stk oxdna/hbond oxdna/xstk oxdna/coaxstk
pair_coeff * * oxdna/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna/coaxstk 46.0 0.4 0.6 0.22 0.58 2.0 2.541592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 -0.65 2.0 -0.65

View File

@ -48,10 +48,10 @@ bond_coeff * 2.0 0.25 0.7525
# oxDNA pair interactions
pair_style hybrid/overlay oxdna/excv oxdna/stk oxdna/hbond oxdna/xstk oxdna/coaxstk
pair_coeff * * oxdna/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna/coaxstk 46.0 0.4 0.6 0.22 0.58 2.0 2.541592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 -0.65 2.0 -0.65

View File

@ -48,10 +48,10 @@ bond_coeff * 2.0 0.25 0.7525
# oxDNA pair interactions
pair_style hybrid/overlay oxdna/excv oxdna/stk oxdna/hbond oxdna/xstk oxdna/coaxstk
pair_coeff * * oxdna/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna/coaxstk 46.0 0.4 0.6 0.22 0.58 2.0 2.541592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 -0.65 2.0 -0.65

View File

@ -30,10 +30,10 @@ bond_coeff * 2.0 0.25 0.7525
# oxDNA pair interactions
pair_style hybrid/overlay oxdna/excv oxdna/stk oxdna/hbond oxdna/xstk oxdna/coaxstk
pair_coeff * * oxdna/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna/coaxstk 46.0 0.4 0.6 0.22 0.58 2.0 2.541592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 -0.65 2.0 -0.65

View File

@ -48,10 +48,10 @@ bond_coeff * 2.0 0.25 0.7525
# oxDNA pair interactions
pair_style hybrid/overlay oxdna/excv oxdna/stk oxdna/hbond oxdna/xstk oxdna/coaxstk
pair_coeff * * oxdna/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna/coaxstk 46.0 0.4 0.6 0.22 0.58 2.0 2.541592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 -0.65 2.0 -0.65

View File

@ -48,10 +48,10 @@ bond_coeff * 2.0 0.25 0.7525
# oxDNA pair interactions
pair_style hybrid/overlay oxdna/excv oxdna/stk oxdna/hbond oxdna/xstk oxdna/coaxstk
pair_coeff * * oxdna/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna/hbond seqav 1.077 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna/coaxstk 46.0 0.4 0.6 0.22 0.58 2.0 2.541592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 -0.65 2.0 -0.65

View File

@ -30,10 +30,10 @@ bond_coeff * 2.0 0.25 0.7564
# oxDNA pair interactions
pair_style hybrid/overlay oxdna2/excv oxdna2/stk oxdna2/hbond oxdna2/xstk oxdna2/coaxstk oxdna2/dh
pair_coeff * * oxdna2/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna2/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna2/coaxstk 58.5 0.4 0.6 0.22 0.58 2.0 2.891592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 40.0 3.116592653589793
pair_coeff * * oxdna2/dh 0.1 1.0 0.815

View File

@ -48,10 +48,10 @@ bond_coeff * 2.0 0.25 0.7564
# oxDNA pair interactions
pair_style hybrid/overlay oxdna2/excv oxdna2/stk oxdna2/hbond oxdna2/xstk oxdna2/coaxstk oxdna2/dh
pair_coeff * * oxdna2/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna2/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna2/coaxstk 58.5 0.4 0.6 0.22 0.58 2.0 2.891592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 40.0 3.116592653589793
pair_coeff * * oxdna2/dh 0.1 1.0 0.815

View File

@ -48,10 +48,10 @@ bond_coeff * 2.0 0.25 0.7564
# oxDNA pair interactions
pair_style hybrid/overlay oxdna2/excv oxdna2/stk oxdna2/hbond oxdna2/xstk oxdna2/coaxstk oxdna2/dh
pair_coeff * * oxdna2/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna2/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna2/coaxstk 58.5 0.4 0.6 0.22 0.58 2.0 2.891592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 40.0 3.116592653589793
pair_coeff * * oxdna2/dh 0.1 1.0 0.815

View File

@ -30,10 +30,10 @@ bond_coeff * 2.0 0.25 0.7564
# oxDNA pair interactions
pair_style hybrid/overlay oxdna2/excv oxdna2/stk oxdna2/hbond oxdna2/xstk oxdna2/coaxstk oxdna2/dh
pair_coeff * * oxdna2/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna2/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna2/coaxstk 58.5 0.4 0.6 0.22 0.58 2.0 2.891592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 40.0 3.116592653589793
pair_coeff * * oxdna2/dh 0.1 1.0 0.815

View File

@ -48,10 +48,10 @@ bond_coeff * 2.0 0.25 0.7564
# oxDNA pair interactions
pair_style hybrid/overlay oxdna2/excv oxdna2/stk oxdna2/hbond oxdna2/xstk oxdna2/coaxstk oxdna2/dh
pair_coeff * * oxdna2/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna2/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna2/coaxstk 58.5 0.4 0.6 0.22 0.58 2.0 2.891592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 40.0 3.116592653589793
pair_coeff * * oxdna2/dh 0.1 1.0 0.815

View File

@ -48,10 +48,10 @@ bond_coeff * 2.0 0.25 0.7564
# oxDNA pair interactions
pair_style hybrid/overlay oxdna2/excv oxdna2/stk oxdna2/hbond oxdna2/xstk oxdna2/coaxstk oxdna2/dh
pair_coeff * * oxdna2/excv 2.0 0.7 0.675 2.0 0.515 0.5 2.0 0.33 0.32
pair_coeff * * oxdna2/stk 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/stk seqav 0.1 6.0 0.4 0.9 0.32 0.6 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 2.0 0.65 2.0 0.65
pair_coeff * * oxdna2/hbond seqav 0.0 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 1 4 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff 2 3 oxdna2/hbond seqav 1.0678 8.0 0.4 0.75 0.34 0.7 1.5 0 0.7 1.5 0 0.7 1.5 0 0.7 0.46 3.141592653589793 0.7 4.0 1.5707963267948966 0.45 4.0 1.5707963267948966 0.45
pair_coeff * * oxdna2/xstk 47.5 0.575 0.675 0.495 0.655 2.25 0.791592653589793 0.58 1.7 1.0 0.68 1.7 1.0 0.68 1.5 0 0.65 1.7 0.875 0.68 1.7 0.875 0.68
pair_coeff * * oxdna2/coaxstk 58.5 0.4 0.6 0.22 0.58 2.0 2.891592653589793 0.65 1.3 0 0.8 0.9 0 0.95 0.9 0 0.95 40.0 3.116592653589793
pair_coeff * * oxdna2/dh 0.1 1.0 0.815

View File

@ -6,8 +6,11 @@ Nosé-Hoover or Langevin thermostats.
* `butane` -- simulation in NVT ensemble with Thole damping
* `toluene` -- simulation in NVT ensemble with Thole damping and
use of the `extra/special/per/atom` keyword
* `ethanol` -- simulation in NpT ensemble with Thole damping
* `swm4-ndp` -- 4-site rigid water model in NpT ensemble (no Thole
* `swm4-ndp` -- 4-site rigid water model in NpT ensemble (no Thole
damping)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,116 @@
# 250 toluene system for drude polarizability example (Langevin)
units real
boundary p p p
atom_style full
bond_style harmonic
angle_style harmonic
dihedral_style opls
improper_style opls
special_bonds lj/coul 0.0 0.0 0.5
pair_style lj/cut/thole/long 2.600 8.0 8.0
pair_modify mix geometric tail yes
kspace_style pppm 1.0e-4
read_data data.toluene extra/special/per/atom 1
comm_modify vel yes
group gTOLUENE molecule 1:250
group gCORES type 1 2 3 4 5 6 7
group gDRUDES type 8 9 10 11 12
pair_coeff 1 1 0.069998 3.550000 1.620000 # CAT CAT
pair_coeff 1 2 0.069998 3.550000 1.620000 # CAT CAO
pair_coeff 1 3 0.069998 3.550000 1.620000 # CAT CAM
pair_coeff 1 4 0.069998 3.550000 1.620000 # CAT CAP
pair_coeff 1 5 0.067968 3.524911 1.620000 # CAT CTT
pair_coeff 1 6 0.045825 2.931041 0.000000 # CAT HAT
pair_coeff 1 7 0.045825 2.931041 0.000000 # CAT HT
pair_coeff 2 2 0.069998 3.550000 1.620000 # CAO CAO
pair_coeff 2 3 0.069998 3.550000 1.620000 # CAO CAM
pair_coeff 2 4 0.069998 3.550000 1.620000 # CAO CAP
pair_coeff 2 5 0.067968 3.524911 1.620000 # CAO CTT
pair_coeff 2 6 0.045825 2.931041 0.000000 # CAO HAT
pair_coeff 2 7 0.045825 2.931041 0.000000 # CAO HT
pair_coeff 3 3 0.069998 3.550000 1.620000 # CAM CAM
pair_coeff 3 4 0.069998 3.550000 1.620000 # CAM CAP
pair_coeff 3 5 0.067968 3.524911 1.620000 # CAM CTT
pair_coeff 3 6 0.045825 2.931041 0.000000 # CAM HAT
pair_coeff 3 7 0.045825 2.931041 0.000000 # CAM HT
pair_coeff 4 4 0.069998 3.550000 1.620000 # CAP CAP
pair_coeff 4 5 0.067968 3.524911 1.620000 # CAP CTT
pair_coeff 4 6 0.045825 2.931041 0.000000 # CAP HAT
pair_coeff 4 7 0.045825 2.931041 0.000000 # CAP HT
pair_coeff 5 5 0.065997 3.500000 1.620000 # CTT CTT
pair_coeff 5 6 0.044496 2.910326 0.000000 # CTT HAT
pair_coeff 5 7 0.044496 2.910326 0.000000 # CTT HT
pair_coeff 6 6 0.029999 2.420000 0.000000 # HAT HAT
pair_coeff 6 7 0.029999 2.420000 0.000000 # HAT HT
pair_coeff 7 7 0.029999 2.420000 0.000000 # HT HT
pair_coeff 1 8 0.000000 0.000000 1.620000 # CAT D_CAT
pair_coeff 1 9 0.000000 0.000000 1.620000 # CAT D_CAO
pair_coeff 1 10 0.000000 0.000000 1.620000 # CAT D_CAM
pair_coeff 1 11 0.000000 0.000000 1.620000 # CAT D_CAP
pair_coeff 1 12 0.000000 0.000000 1.620000 # CAT D_CTT
pair_coeff 2 8 0.000000 0.000000 1.620000 # CAO D_CAT
pair_coeff 2 9 0.000000 0.000000 1.620000 # CAO D_CAO
pair_coeff 2 10 0.000000 0.000000 1.620000 # CAO D_CAM
pair_coeff 2 11 0.000000 0.000000 1.620000 # CAO D_CAP
pair_coeff 2 12 0.000000 0.000000 1.620000 # CAO D_CTT
pair_coeff 3 8 0.000000 0.000000 1.620000 # CAM D_CAT
pair_coeff 3 9 0.000000 0.000000 1.620000 # CAM D_CAO
pair_coeff 3 10 0.000000 0.000000 1.620000 # CAM D_CAM
pair_coeff 3 11 0.000000 0.000000 1.620000 # CAM D_CAP
pair_coeff 3 12 0.000000 0.000000 1.620000 # CAM D_CTT
pair_coeff 4 8 0.000000 0.000000 1.620000 # CAP D_CAT
pair_coeff 4 9 0.000000 0.000000 1.620000 # CAP D_CAO
pair_coeff 4 10 0.000000 0.000000 1.620000 # CAP D_CAM
pair_coeff 4 11 0.000000 0.000000 1.620000 # CAP D_CAP
pair_coeff 4 12 0.000000 0.000000 1.620000 # CAP D_CTT
pair_coeff 5 8 0.000000 0.000000 1.620000 # CTT D_CAT
pair_coeff 5 9 0.000000 0.000000 1.620000 # CTT D_CAO
pair_coeff 5 10 0.000000 0.000000 1.620000 # CTT D_CAM
pair_coeff 5 11 0.000000 0.000000 1.620000 # CTT D_CAP
pair_coeff 5 12 0.000000 0.000000 1.620000 # CTT D_CTT
pair_coeff 8 8 0.000000 0.000000 1.620000 # D_CAT D_CAT
pair_coeff 8 9 0.000000 0.000000 1.620000 # D_CAT D_CAO
pair_coeff 8 10 0.000000 0.000000 1.620000 # D_CAT D_CAM
pair_coeff 8 11 0.000000 0.000000 1.620000 # D_CAT D_CAP
pair_coeff 8 12 0.000000 0.000000 1.620000 # D_CAT D_CTT
pair_coeff 9 9 0.000000 0.000000 1.620000 # D_CAO D_CAO
pair_coeff 9 10 0.000000 0.000000 1.620000 # D_CAO D_CAM
pair_coeff 9 11 0.000000 0.000000 1.620000 # D_CAO D_CAP
pair_coeff 9 12 0.000000 0.000000 1.620000 # D_CAO D_CTT
pair_coeff 10 10 0.000000 0.000000 1.620000 # D_CAM D_CAM
pair_coeff 10 11 0.000000 0.000000 1.620000 # D_CAM D_CAP
pair_coeff 10 12 0.000000 0.000000 1.620000 # D_CAM D_CTT
pair_coeff 11 11 0.000000 0.000000 1.620000 # D_CAP D_CAP
pair_coeff 11 12 0.000000 0.000000 1.620000 # D_CAP D_CTT
pair_coeff 12 12 0.000000 0.000000 1.620000 # D_CTT D_CTT
neighbor 2.0 bin
variable vTEMP equal 260.0
variable vTEMP_D equal 1.0
variable vPRESS equal 1.0
velocity gCORES create ${vTEMP} 12345
velocity gDRUDES create ${vTEMP_D} 12345
fix fDRUDE all drude C C C C C N N D D D D D
fix fSHAKE gCORES shake 0.0001 20 0 b 4 6 7 8
fix fLANG all langevin/drude ${vTEMP} 100.0 200611 ${vTEMP_D} 20.0 260514 zero yes
fix fNPH all nve
compute cTEMP all temp/drude
thermo_style custom step cpu etotal ke temp pe ebond eangle edihed eimp evdwl ecoul elong press vol c_cTEMP[1] c_cTEMP[2]
thermo 50
timestep 0.5
run 2000

View File

@ -0,0 +1,122 @@
# 250 toluene system for drude polarizability example (Nose-Hoover)
units real
boundary p p p
atom_style full
bond_style harmonic
angle_style harmonic
dihedral_style opls
improper_style opls
special_bonds lj/coul 0.0 0.0 0.5
pair_style lj/cut/thole/long 2.600 8.0 8.0
pair_modify mix geometric tail yes
kspace_style pppm 1.0e-4
read_data data.toluene extra/special/per/atom 1
comm_modify vel yes
group gTOLUENE molecule 1:250
group gCORES type 1 2 3 4 5 6 7
group gDRUDES type 8 9 10 11 12
pair_coeff 1 1 0.069998 3.550000 1.620000 # CAT CAT
pair_coeff 1 2 0.069998 3.550000 1.620000 # CAT CAO
pair_coeff 1 3 0.069998 3.550000 1.620000 # CAT CAM
pair_coeff 1 4 0.069998 3.550000 1.620000 # CAT CAP
pair_coeff 1 5 0.067968 3.524911 1.620000 # CAT CTT
pair_coeff 1 6 0.045825 2.931041 0.000000 # CAT HAT
pair_coeff 1 7 0.045825 2.931041 0.000000 # CAT HT
pair_coeff 2 2 0.069998 3.550000 1.620000 # CAO CAO
pair_coeff 2 3 0.069998 3.550000 1.620000 # CAO CAM
pair_coeff 2 4 0.069998 3.550000 1.620000 # CAO CAP
pair_coeff 2 5 0.067968 3.524911 1.620000 # CAO CTT
pair_coeff 2 6 0.045825 2.931041 0.000000 # CAO HAT
pair_coeff 2 7 0.045825 2.931041 0.000000 # CAO HT
pair_coeff 3 3 0.069998 3.550000 1.620000 # CAM CAM
pair_coeff 3 4 0.069998 3.550000 1.620000 # CAM CAP
pair_coeff 3 5 0.067968 3.524911 1.620000 # CAM CTT
pair_coeff 3 6 0.045825 2.931041 0.000000 # CAM HAT
pair_coeff 3 7 0.045825 2.931041 0.000000 # CAM HT
pair_coeff 4 4 0.069998 3.550000 1.620000 # CAP CAP
pair_coeff 4 5 0.067968 3.524911 1.620000 # CAP CTT
pair_coeff 4 6 0.045825 2.931041 0.000000 # CAP HAT
pair_coeff 4 7 0.045825 2.931041 0.000000 # CAP HT
pair_coeff 5 5 0.065997 3.500000 1.620000 # CTT CTT
pair_coeff 5 6 0.044496 2.910326 0.000000 # CTT HAT
pair_coeff 5 7 0.044496 2.910326 0.000000 # CTT HT
pair_coeff 6 6 0.029999 2.420000 0.000000 # HAT HAT
pair_coeff 6 7 0.029999 2.420000 0.000000 # HAT HT
pair_coeff 7 7 0.029999 2.420000 0.000000 # HT HT
pair_coeff 1 8 0.000000 0.000000 1.620000 # CAT D_CAT
pair_coeff 1 9 0.000000 0.000000 1.620000 # CAT D_CAO
pair_coeff 1 10 0.000000 0.000000 1.620000 # CAT D_CAM
pair_coeff 1 11 0.000000 0.000000 1.620000 # CAT D_CAP
pair_coeff 1 12 0.000000 0.000000 1.620000 # CAT D_CTT
pair_coeff 2 8 0.000000 0.000000 1.620000 # CAO D_CAT
pair_coeff 2 9 0.000000 0.000000 1.620000 # CAO D_CAO
pair_coeff 2 10 0.000000 0.000000 1.620000 # CAO D_CAM
pair_coeff 2 11 0.000000 0.000000 1.620000 # CAO D_CAP
pair_coeff 2 12 0.000000 0.000000 1.620000 # CAO D_CTT
pair_coeff 3 8 0.000000 0.000000 1.620000 # CAM D_CAT
pair_coeff 3 9 0.000000 0.000000 1.620000 # CAM D_CAO
pair_coeff 3 10 0.000000 0.000000 1.620000 # CAM D_CAM
pair_coeff 3 11 0.000000 0.000000 1.620000 # CAM D_CAP
pair_coeff 3 12 0.000000 0.000000 1.620000 # CAM D_CTT
pair_coeff 4 8 0.000000 0.000000 1.620000 # CAP D_CAT
pair_coeff 4 9 0.000000 0.000000 1.620000 # CAP D_CAO
pair_coeff 4 10 0.000000 0.000000 1.620000 # CAP D_CAM
pair_coeff 4 11 0.000000 0.000000 1.620000 # CAP D_CAP
pair_coeff 4 12 0.000000 0.000000 1.620000 # CAP D_CTT
pair_coeff 5 8 0.000000 0.000000 1.620000 # CTT D_CAT
pair_coeff 5 9 0.000000 0.000000 1.620000 # CTT D_CAO
pair_coeff 5 10 0.000000 0.000000 1.620000 # CTT D_CAM
pair_coeff 5 11 0.000000 0.000000 1.620000 # CTT D_CAP
pair_coeff 5 12 0.000000 0.000000 1.620000 # CTT D_CTT
pair_coeff 8 8 0.000000 0.000000 1.620000 # D_CAT D_CAT
pair_coeff 8 9 0.000000 0.000000 1.620000 # D_CAT D_CAO
pair_coeff 8 10 0.000000 0.000000 1.620000 # D_CAT D_CAM
pair_coeff 8 11 0.000000 0.000000 1.620000 # D_CAT D_CAP
pair_coeff 8 12 0.000000 0.000000 1.620000 # D_CAT D_CTT
pair_coeff 9 9 0.000000 0.000000 1.620000 # D_CAO D_CAO
pair_coeff 9 10 0.000000 0.000000 1.620000 # D_CAO D_CAM
pair_coeff 9 11 0.000000 0.000000 1.620000 # D_CAO D_CAP
pair_coeff 9 12 0.000000 0.000000 1.620000 # D_CAO D_CTT
pair_coeff 10 10 0.000000 0.000000 1.620000 # D_CAM D_CAM
pair_coeff 10 11 0.000000 0.000000 1.620000 # D_CAM D_CAP
pair_coeff 10 12 0.000000 0.000000 1.620000 # D_CAM D_CTT
pair_coeff 11 11 0.000000 0.000000 1.620000 # D_CAP D_CAP
pair_coeff 11 12 0.000000 0.000000 1.620000 # D_CAP D_CTT
pair_coeff 12 12 0.000000 0.000000 1.620000 # D_CTT D_CTT
neighbor 2.0 bin
variable vTEMP equal 260.0
variable vTEMP_D equal 1.0
variable vPRESS equal 1.0
velocity gCORES create ${vTEMP} 12345
velocity gDRUDES create ${vTEMP_D} 12345
fix fDRUDE all drude C C C C C N N D D D D D
fix fSHAKE gCORES shake 0.0001 20 0 b 4 6 7 8
compute cTEMP_CORE gCORES temp/com
compute cTEMP all temp/drude
fix fDIRECT all drude/transform/direct
fix fNVT1 gCORES nvt temp ${vTEMP} ${vTEMP} 100.0
fix fNVT2 gDRUDES nvt temp ${vTEMP_D} ${vTEMP_D} 20.0
fix fINVERSE all drude/transform/inverse
fix fMOMENTUM all momentum 100 linear 1 1 1
thermo_style custom step cpu etotal ke temp pe ebond eangle edihed eimp evdwl ecoul elong press vol c_cTEMP[1] c_cTEMP[2]
thermo 50
timestep 0.5
run 2000

View File

@ -0,0 +1,251 @@
LAMMPS (11 Aug 2017)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
using 1 OpenMP thread(s) per MPI task
# 250 toluene system for drude polarizability example (Langevin)
units real
boundary p p p
atom_style full
bond_style harmonic
angle_style harmonic
dihedral_style opls
improper_style opls
special_bonds lj/coul 0.0 0.0 0.5
pair_style lj/cut/thole/long 2.600 8.0 8.0
pair_modify mix geometric tail yes
kspace_style pppm 1.0e-4
read_data data.toluene extra/special/per/atom 1
orthogonal box = (-18.2908 -18.1636 -18.223) to (18.3357 18.1621 18.3287)
1 by 1 by 1 MPI processor grid
reading atoms ...
5500 atoms
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
8 = max dihedrals/atom
scanning impropers ...
2 = max impropers/atom
reading bonds ...
5500 bonds
reading angles ...
6000 angles
reading dihedrals ...
6000 dihedrals
reading impropers ...
1500 impropers
5 = max # of 1-2 neighbors
10 = max # of 1-3 neighbors
16 = max # of 1-4 neighbors
20 = max # of special neighbors
comm_modify vel yes
group gTOLUENE molecule 1:250
5500 atoms in group gTOLUENE
group gCORES type 1 2 3 4 5 6 7
3750 atoms in group gCORES
group gDRUDES type 8 9 10 11 12
1750 atoms in group gDRUDES
pair_coeff 1 1 0.069998 3.550000 1.620000 # CAT CAT
pair_coeff 1 2 0.069998 3.550000 1.620000 # CAT CAO
pair_coeff 1 3 0.069998 3.550000 1.620000 # CAT CAM
pair_coeff 1 4 0.069998 3.550000 1.620000 # CAT CAP
pair_coeff 1 5 0.067968 3.524911 1.620000 # CAT CTT
pair_coeff 1 6 0.045825 2.931041 0.000000 # CAT HAT
pair_coeff 1 7 0.045825 2.931041 0.000000 # CAT HT
pair_coeff 2 2 0.069998 3.550000 1.620000 # CAO CAO
pair_coeff 2 3 0.069998 3.550000 1.620000 # CAO CAM
pair_coeff 2 4 0.069998 3.550000 1.620000 # CAO CAP
pair_coeff 2 5 0.067968 3.524911 1.620000 # CAO CTT
pair_coeff 2 6 0.045825 2.931041 0.000000 # CAO HAT
pair_coeff 2 7 0.045825 2.931041 0.000000 # CAO HT
pair_coeff 3 3 0.069998 3.550000 1.620000 # CAM CAM
pair_coeff 3 4 0.069998 3.550000 1.620000 # CAM CAP
pair_coeff 3 5 0.067968 3.524911 1.620000 # CAM CTT
pair_coeff 3 6 0.045825 2.931041 0.000000 # CAM HAT
pair_coeff 3 7 0.045825 2.931041 0.000000 # CAM HT
pair_coeff 4 4 0.069998 3.550000 1.620000 # CAP CAP
pair_coeff 4 5 0.067968 3.524911 1.620000 # CAP CTT
pair_coeff 4 6 0.045825 2.931041 0.000000 # CAP HAT
pair_coeff 4 7 0.045825 2.931041 0.000000 # CAP HT
pair_coeff 5 5 0.065997 3.500000 1.620000 # CTT CTT
pair_coeff 5 6 0.044496 2.910326 0.000000 # CTT HAT
pair_coeff 5 7 0.044496 2.910326 0.000000 # CTT HT
pair_coeff 6 6 0.029999 2.420000 0.000000 # HAT HAT
pair_coeff 6 7 0.029999 2.420000 0.000000 # HAT HT
pair_coeff 7 7 0.029999 2.420000 0.000000 # HT HT
pair_coeff 1 8 0.000000 0.000000 1.620000 # CAT D_CAT
pair_coeff 1 9 0.000000 0.000000 1.620000 # CAT D_CAO
pair_coeff 1 10 0.000000 0.000000 1.620000 # CAT D_CAM
pair_coeff 1 11 0.000000 0.000000 1.620000 # CAT D_CAP
pair_coeff 1 12 0.000000 0.000000 1.620000 # CAT D_CTT
pair_coeff 2 8 0.000000 0.000000 1.620000 # CAO D_CAT
pair_coeff 2 9 0.000000 0.000000 1.620000 # CAO D_CAO
pair_coeff 2 10 0.000000 0.000000 1.620000 # CAO D_CAM
pair_coeff 2 11 0.000000 0.000000 1.620000 # CAO D_CAP
pair_coeff 2 12 0.000000 0.000000 1.620000 # CAO D_CTT
pair_coeff 3 8 0.000000 0.000000 1.620000 # CAM D_CAT
pair_coeff 3 9 0.000000 0.000000 1.620000 # CAM D_CAO
pair_coeff 3 10 0.000000 0.000000 1.620000 # CAM D_CAM
pair_coeff 3 11 0.000000 0.000000 1.620000 # CAM D_CAP
pair_coeff 3 12 0.000000 0.000000 1.620000 # CAM D_CTT
pair_coeff 4 8 0.000000 0.000000 1.620000 # CAP D_CAT
pair_coeff 4 9 0.000000 0.000000 1.620000 # CAP D_CAO
pair_coeff 4 10 0.000000 0.000000 1.620000 # CAP D_CAM
pair_coeff 4 11 0.000000 0.000000 1.620000 # CAP D_CAP
pair_coeff 4 12 0.000000 0.000000 1.620000 # CAP D_CTT
pair_coeff 5 8 0.000000 0.000000 1.620000 # CTT D_CAT
pair_coeff 5 9 0.000000 0.000000 1.620000 # CTT D_CAO
pair_coeff 5 10 0.000000 0.000000 1.620000 # CTT D_CAM
pair_coeff 5 11 0.000000 0.000000 1.620000 # CTT D_CAP
pair_coeff 5 12 0.000000 0.000000 1.620000 # CTT D_CTT
pair_coeff 8 8 0.000000 0.000000 1.620000 # D_CAT D_CAT
pair_coeff 8 9 0.000000 0.000000 1.620000 # D_CAT D_CAO
pair_coeff 8 10 0.000000 0.000000 1.620000 # D_CAT D_CAM
pair_coeff 8 11 0.000000 0.000000 1.620000 # D_CAT D_CAP
pair_coeff 8 12 0.000000 0.000000 1.620000 # D_CAT D_CTT
pair_coeff 9 9 0.000000 0.000000 1.620000 # D_CAO D_CAO
pair_coeff 9 10 0.000000 0.000000 1.620000 # D_CAO D_CAM
pair_coeff 9 11 0.000000 0.000000 1.620000 # D_CAO D_CAP
pair_coeff 9 12 0.000000 0.000000 1.620000 # D_CAO D_CTT
pair_coeff 10 10 0.000000 0.000000 1.620000 # D_CAM D_CAM
pair_coeff 10 11 0.000000 0.000000 1.620000 # D_CAM D_CAP
pair_coeff 10 12 0.000000 0.000000 1.620000 # D_CAM D_CTT
pair_coeff 11 11 0.000000 0.000000 1.620000 # D_CAP D_CAP
pair_coeff 11 12 0.000000 0.000000 1.620000 # D_CAP D_CTT
pair_coeff 12 12 0.000000 0.000000 1.620000 # D_CTT D_CTT
neighbor 2.0 bin
variable vTEMP equal 260.0
variable vTEMP_D equal 1.0
variable vPRESS equal 1.0
velocity gCORES create ${vTEMP} 12345
velocity gCORES create 260 12345
velocity gDRUDES create ${vTEMP_D} 12345
velocity gDRUDES create 1 12345
fix fDRUDE all drude C C C C C N N D D D D D
fix fSHAKE gCORES shake 0.0001 20 0 b 4 6 7 8
1250 = # of size 2 clusters
0 = # of size 3 clusters
250 = # of size 4 clusters
0 = # of frozen angles
fix fLANG all langevin/drude ${vTEMP} 100.0 200611 ${vTEMP_D} 20.0 260514 zero yes
fix fLANG all langevin/drude 260 100.0 200611 ${vTEMP_D} 20.0 260514 zero yes
fix fLANG all langevin/drude 260 100.0 200611 1 20.0 260514 zero yes
fix fNPH all nve
compute cTEMP all temp/drude
thermo_style custom step cpu etotal ke temp pe ebond eangle edihed eimp evdwl ecoul elong press vol c_cTEMP[1] c_cTEMP[2]
thermo 50
timestep 0.5
run 2000
PPPM initialization ...
WARNING: Using 12-bit tables for long-range coulomb (../kspace.cpp:321)
G vector (1/distance) = 0.382011
grid = 40 40 40
stencil order = 5
estimated absolute RMS force accuracy = 0.0325934
estimated relative force accuracy = 9.8154e-05
using double precision FFTs
3d grid and FFT values/proc = 103823 64000
Rebuild special list taking Drude particles into account
Old max number of 1-2 to 1-4 neighbors: 19
New max number of 1-2 to 1-4 neighbors: 20 (+1)
Neighbor list info ...
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10
ghost atom cutoff = 10
binsize = 5, bins = 8 8 8
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/cut/thole/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 42.06 | 42.06 | 42.06 Mbytes
Step CPU TotEng KinEng Temp PotEng E_bond E_angle E_dihed E_impro E_vdwl E_coul E_long Press Volume c_cTEMP[1] c_cTEMP[2]
0 0 14386.197 2910.7282 202.07402 11475.469 6565.4851 20.333365 1.0706727e-06 1.3894617e-07 4972.8631 1306116.6 -1306199.8 40273.68 48631.318 314.89553 3.1777821
50 4.311986 8083.3901 4729.9995 328.37487 3353.3906 1812.5186 685.40417 646.10358 50.083281 804.80656 1305984.8 -1306630.3 16960.287 48631.318 448.67988 116.22125
100 8.756623 6206.7865 3683.944 255.75365 2522.8425 977.52675 777.45439 838.58809 68.086914 471.97862 1306097.1 -1306707.9 15657.142 48631.318 380.53159 35.760643
150 13.134938 5386.0219 3582.482 248.70976 1803.5399 752.25928 803.04832 643.43249 49.76684 131.97853 1306139.2 -1306716.2 15140.102 48631.318 383.61303 10.880935
200 17.508189 4846.4097 3254.3932 225.93257 1592.0166 700.43329 812.26722 657.52279 51.044716 -64.045174 1306160.5 -1306725.7 13844.277 48631.318 351.90677 3.8489009
250 21.871676 4473.215 3091.5333 214.6262 1381.6817 688.24707 842.63267 590.45999 48.22798 -214.02425 1306156.6 -1306730.5 8808.7402 48631.318 335.32872 1.8372171
300 26.226064 4191.8834 2883.8468 200.2078 1308.0367 734.36657 856.15482 584.87904 47.590787 -343.44615 1306163.4 -1306734.9 3389.3777 48631.318 313.03581 1.3011826
350 30.568716 3972.0739 2756.8392 191.39044 1215.2347 664.4688 866.06348 580.13632 48.515297 -378.8729 1306173.3 -1306738.3 8458.1149 48631.318 299.31146 1.1345329
400 34.845648 3838.3528 2731.3975 189.62419 1106.9552 684.0318 870.67752 548.93014 44.038787 -460.1537 1306160.4 -1306741 6697.9188 48631.318 296.54405 1.1332149
450 39.17477 3731.18 2607.8585 181.04762 1123.3216 719.57572 894.99915 571.99504 47.625227 -537.60494 1306171.9 -1306745.2 2450.4224 48631.318 283.13713 1.0721818
500 43.497489 3607.0055 2565.9469 178.13796 1041.0586 717.36452 841.34375 551.39834 45.985413 -542.47313 1306170.9 -1306743.4 3077.1849 48631.318 278.59462 1.0410963
550 47.812038 3513.8132 2548.7259 176.94241 965.08736 673.81272 852.38161 522.99297 44.276434 -552.27379 1306171.2 -1306747.4 4659.7275 48631.318 276.70124 1.0757459
600 52.124423 3386.9627 2471.0692 171.55118 915.89348 689.99732 833.61298 517.49343 43.023588 -594.96363 1306170.6 -1306743.8 2159.7328 48631.318 268.27854 1.0287605
650 56.370068 3374.3191 2413.6719 167.56644 960.64717 703.32428 874.12028 535.41271 43.256032 -617.25815 1306168.6 -1306746.8 1262.4757 48631.318 261.99584 1.0950976
700 60.667476 3342.9467 2412.9563 167.51676 929.99042 683.70355 882.22521 527.03932 43.661355 -616.70117 1306161 -1306751 2950.9009 48631.318 261.92814 1.0771869
750 64.964696 3327.7938 2414.3547 167.61385 913.43902 695.12778 863.48248 542.99202 46.408369 -639.60076 1306160.7 -1306755.6 1583.0277 48631.318 262.09771 1.0464936
800 69.256916 3391.689 2452.2049 170.24155 939.48407 694.2176 892.61592 557.53726 45.495129 -654.56675 1306155.2 -1306751 1232.1671 48631.318 266.20601 1.0640309
850 73.527972 3386.8618 2486.6928 172.63584 900.16902 696.7684 880.27643 545.11446 46.474227 -665.90464 1306154.7 -1306757.3 1129.2062 48631.318 269.97945 1.027015
900 77.775993 3368.0724 2416.7145 167.77767 951.35789 718.66654 893.18396 537.79136 46.404626 -641.29596 1306152.9 -1306756.3 1673.0743 48631.318 262.34697 1.0597091
950 82.028341 3300.4793 2409.5613 167.28107 890.918 728.06888 890.51193 515.08456 44.36547 -671.13741 1306142.3 -1306758.2 1038.6579 48631.318 261.57036 1.0567234
1000 86.189789 3333.2955 2452.2486 170.24458 881.04692 699.8414 915.33862 506.83261 41.77374 -665.68264 1306141.6 -1306758.7 467.42142 48631.318 266.19104 1.0987814
1050 90.384168 3303.87 2376.9713 165.01854 926.89875 706.12941 930.65844 524.73304 42.644613 -657.19573 1306139.3 -1306759.4 1737.6624 48631.318 258.00246 1.0954432
1100 94.549452 3367.668 2454.9154 170.42973 912.75259 715.68494 935.8363 516.52205 43.261761 -671.86101 1306137.9 -1306764.6 961.79199 48631.318 266.492 1.0797548
1150 98.65493 3350.0898 2485.3993 172.54604 864.69051 699.23072 933.76405 510.60424 42.381362 -684.53513 1306127.1 -1306763.8 -272.48178 48631.318 269.82496 1.0512421
1200 102.82045 3309.6871 2398.9577 166.54492 910.72944 705.58979 934.53183 531.90967 45.872142 -664.58495 1306126.9 -1306769.5 627.31931 48631.318 260.41866 1.0531639
1250 106.9899 3304.504 2491.6998 172.98344 812.80426 710.83366 881.33764 494.90045 41.71618 -672.49264 1306123.8 -1306767.3 136.11723 48631.318 270.51026 1.0516137
1300 111.16224 3318.9543 2462.0621 170.92588 856.89219 709.17314 932.87209 503.80373 43.426006 -680.2474 1306121.2 -1306773.3 1276.2503 48631.318 267.28591 1.0510113
1350 115.27184 3314.8515 2434.8483 169.03659 880.00316 710.91641 922.28347 540.40795 44.753548 -686.09335 1306124.5 -1306776.7 -438.87694 48631.318 264.31236 1.0731666
1400 119.44228 3349.0785 2457.7697 170.62788 891.30875 711.28064 936.58607 516.63511 42.396287 -653.09763 1306113.8 -1306776.3 350.79618 48631.318 266.80555 1.0745043
1450 123.61267 3364.1486 2459.8741 170.77397 904.27455 696.57265 946.32098 538.55368 44.69075 -652.75091 1306111 -1306780.1 502.47466 48631.318 267.03201 1.0789056
1500 127.72962 3341.9369 2454.3302 170.3891 887.60672 726.46979 903.40815 557.73064 47.536125 -667.65025 1306100.7 -1306780.6 -248.0975 48631.318 266.44821 1.044725
1550 131.91041 3270.4282 2437.7916 169.24093 832.63655 691.49462 910.83807 523.17366 44.83093 -654.48655 1306100.5 -1306783.7 490.32965 48631.318 264.63652 1.0662604
1600 136.0834 3252.0725 2429.6805 168.67782 822.39196 689.68155 898.22828 535.31963 43.84399 -660.93277 1306100.1 -1306783.9 1729.5956 48631.318 263.74523 1.0817172
1650 140.26444 3239.748 2442.6258 169.57653 797.12222 671.1832 907.1659 507.03947 43.048028 -648.14001 1306103.3 -1306786.5 970.43988 48631.318 265.15987 1.0708872
1700 144.3855 3202.9157 2410.267 167.33006 792.64869 686.40974 882.40791 527.02899 43.819792 -656.82001 1306096 -1306786.2 -107.50166 48631.318 261.64368 1.062837
1750 148.56592 3214.6107 2366.3264 164.27953 848.28434 696.38228 915.58636 538.2236 47.852688 -652.7697 1306093.6 -1306790.6 -164.14366 48631.318 256.84519 1.0937744
1800 152.74611 3209.5771 2421.4089 168.10357 788.16819 683.61816 869.45802 532.77927 45.708374 -658.39221 1306103.1 -1306788.1 277.61781 48631.318 262.83282 1.1036154
1850 156.86567 3146.3973 2362.3333 164.00232 784.064 697.87032 875.8451 523.54452 43.851379 -665.83106 1306101.5 -1306792.7 497.88657 48631.318 256.42683 1.0654271
1900 161.0419 3141.5496 2367.1077 164.33378 774.44186 693.39945 878.97447 515.65653 44.619392 -668.11692 1306103.8 -1306793.9 -1427.3998 48631.318 256.94212 1.0727903
1950 165.22235 3134.6473 2295.577 159.36784 839.07025 699.62719 905.76937 519.32307 46.109334 -645.08933 1306104.9 -1306791.6 1744.2846 48631.318 249.19694 1.0064565
2000 169.4 3146.866 2361.3821 163.93628 785.48386 682.24124 889.6864 534.94877 46.855983 -678.1614 1306104 -1306794.1 699.8735 48631.318 256.32873 1.0559143
Loop time of 169.4 on 1 procs for 2000 steps with 5500 atoms
Performance: 0.510 ns/day, 47.056 hours/ns, 11.806 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 | 107.93 | 107.93 | 107.93 | 0.0 | 63.71
Bond | 19.76 | 19.76 | 19.76 | 0.0 | 11.66
Kspace | 34.926 | 34.926 | 34.926 | 0.0 | 20.62
Neigh | 1.9932 | 1.9932 | 1.9932 | 0.0 | 1.18
Comm | 0.73555 | 0.73555 | 0.73555 | 0.0 | 0.43
Output | 0.0065863 | 0.0065863 | 0.0065863 | 0.0 | 0.00
Modify | 3.9135 | 3.9135 | 3.9135 | 0.0 | 2.31
Other | | 0.133 | | | 0.08
Nlocal: 5500 ave 5500 max 5500 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 13219 ave 13219 max 13219 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 1.33739e+06 ave 1.33739e+06 max 1.33739e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 1337388
Ave neighs/atom = 243.161
Ave special neighs/atom = 15.6364
Neighbor list builds = 32
Dangerous builds = 0
Total wall time: 0:02:49

View File

@ -0,0 +1,251 @@
LAMMPS (11 Aug 2017)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
using 1 OpenMP thread(s) per MPI task
# 250 toluene system for drude polarizability example (Langevin)
units real
boundary p p p
atom_style full
bond_style harmonic
angle_style harmonic
dihedral_style opls
improper_style opls
special_bonds lj/coul 0.0 0.0 0.5
pair_style lj/cut/thole/long 2.600 8.0 8.0
pair_modify mix geometric tail yes
kspace_style pppm 1.0e-4
read_data data.toluene extra/special/per/atom 1
orthogonal box = (-18.2908 -18.1636 -18.223) to (18.3357 18.1621 18.3287)
2 by 1 by 2 MPI processor grid
reading atoms ...
5500 atoms
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
8 = max dihedrals/atom
scanning impropers ...
2 = max impropers/atom
reading bonds ...
5500 bonds
reading angles ...
6000 angles
reading dihedrals ...
6000 dihedrals
reading impropers ...
1500 impropers
5 = max # of 1-2 neighbors
10 = max # of 1-3 neighbors
16 = max # of 1-4 neighbors
20 = max # of special neighbors
comm_modify vel yes
group gTOLUENE molecule 1:250
5500 atoms in group gTOLUENE
group gCORES type 1 2 3 4 5 6 7
3750 atoms in group gCORES
group gDRUDES type 8 9 10 11 12
1750 atoms in group gDRUDES
pair_coeff 1 1 0.069998 3.550000 1.620000 # CAT CAT
pair_coeff 1 2 0.069998 3.550000 1.620000 # CAT CAO
pair_coeff 1 3 0.069998 3.550000 1.620000 # CAT CAM
pair_coeff 1 4 0.069998 3.550000 1.620000 # CAT CAP
pair_coeff 1 5 0.067968 3.524911 1.620000 # CAT CTT
pair_coeff 1 6 0.045825 2.931041 0.000000 # CAT HAT
pair_coeff 1 7 0.045825 2.931041 0.000000 # CAT HT
pair_coeff 2 2 0.069998 3.550000 1.620000 # CAO CAO
pair_coeff 2 3 0.069998 3.550000 1.620000 # CAO CAM
pair_coeff 2 4 0.069998 3.550000 1.620000 # CAO CAP
pair_coeff 2 5 0.067968 3.524911 1.620000 # CAO CTT
pair_coeff 2 6 0.045825 2.931041 0.000000 # CAO HAT
pair_coeff 2 7 0.045825 2.931041 0.000000 # CAO HT
pair_coeff 3 3 0.069998 3.550000 1.620000 # CAM CAM
pair_coeff 3 4 0.069998 3.550000 1.620000 # CAM CAP
pair_coeff 3 5 0.067968 3.524911 1.620000 # CAM CTT
pair_coeff 3 6 0.045825 2.931041 0.000000 # CAM HAT
pair_coeff 3 7 0.045825 2.931041 0.000000 # CAM HT
pair_coeff 4 4 0.069998 3.550000 1.620000 # CAP CAP
pair_coeff 4 5 0.067968 3.524911 1.620000 # CAP CTT
pair_coeff 4 6 0.045825 2.931041 0.000000 # CAP HAT
pair_coeff 4 7 0.045825 2.931041 0.000000 # CAP HT
pair_coeff 5 5 0.065997 3.500000 1.620000 # CTT CTT
pair_coeff 5 6 0.044496 2.910326 0.000000 # CTT HAT
pair_coeff 5 7 0.044496 2.910326 0.000000 # CTT HT
pair_coeff 6 6 0.029999 2.420000 0.000000 # HAT HAT
pair_coeff 6 7 0.029999 2.420000 0.000000 # HAT HT
pair_coeff 7 7 0.029999 2.420000 0.000000 # HT HT
pair_coeff 1 8 0.000000 0.000000 1.620000 # CAT D_CAT
pair_coeff 1 9 0.000000 0.000000 1.620000 # CAT D_CAO
pair_coeff 1 10 0.000000 0.000000 1.620000 # CAT D_CAM
pair_coeff 1 11 0.000000 0.000000 1.620000 # CAT D_CAP
pair_coeff 1 12 0.000000 0.000000 1.620000 # CAT D_CTT
pair_coeff 2 8 0.000000 0.000000 1.620000 # CAO D_CAT
pair_coeff 2 9 0.000000 0.000000 1.620000 # CAO D_CAO
pair_coeff 2 10 0.000000 0.000000 1.620000 # CAO D_CAM
pair_coeff 2 11 0.000000 0.000000 1.620000 # CAO D_CAP
pair_coeff 2 12 0.000000 0.000000 1.620000 # CAO D_CTT
pair_coeff 3 8 0.000000 0.000000 1.620000 # CAM D_CAT
pair_coeff 3 9 0.000000 0.000000 1.620000 # CAM D_CAO
pair_coeff 3 10 0.000000 0.000000 1.620000 # CAM D_CAM
pair_coeff 3 11 0.000000 0.000000 1.620000 # CAM D_CAP
pair_coeff 3 12 0.000000 0.000000 1.620000 # CAM D_CTT
pair_coeff 4 8 0.000000 0.000000 1.620000 # CAP D_CAT
pair_coeff 4 9 0.000000 0.000000 1.620000 # CAP D_CAO
pair_coeff 4 10 0.000000 0.000000 1.620000 # CAP D_CAM
pair_coeff 4 11 0.000000 0.000000 1.620000 # CAP D_CAP
pair_coeff 4 12 0.000000 0.000000 1.620000 # CAP D_CTT
pair_coeff 5 8 0.000000 0.000000 1.620000 # CTT D_CAT
pair_coeff 5 9 0.000000 0.000000 1.620000 # CTT D_CAO
pair_coeff 5 10 0.000000 0.000000 1.620000 # CTT D_CAM
pair_coeff 5 11 0.000000 0.000000 1.620000 # CTT D_CAP
pair_coeff 5 12 0.000000 0.000000 1.620000 # CTT D_CTT
pair_coeff 8 8 0.000000 0.000000 1.620000 # D_CAT D_CAT
pair_coeff 8 9 0.000000 0.000000 1.620000 # D_CAT D_CAO
pair_coeff 8 10 0.000000 0.000000 1.620000 # D_CAT D_CAM
pair_coeff 8 11 0.000000 0.000000 1.620000 # D_CAT D_CAP
pair_coeff 8 12 0.000000 0.000000 1.620000 # D_CAT D_CTT
pair_coeff 9 9 0.000000 0.000000 1.620000 # D_CAO D_CAO
pair_coeff 9 10 0.000000 0.000000 1.620000 # D_CAO D_CAM
pair_coeff 9 11 0.000000 0.000000 1.620000 # D_CAO D_CAP
pair_coeff 9 12 0.000000 0.000000 1.620000 # D_CAO D_CTT
pair_coeff 10 10 0.000000 0.000000 1.620000 # D_CAM D_CAM
pair_coeff 10 11 0.000000 0.000000 1.620000 # D_CAM D_CAP
pair_coeff 10 12 0.000000 0.000000 1.620000 # D_CAM D_CTT
pair_coeff 11 11 0.000000 0.000000 1.620000 # D_CAP D_CAP
pair_coeff 11 12 0.000000 0.000000 1.620000 # D_CAP D_CTT
pair_coeff 12 12 0.000000 0.000000 1.620000 # D_CTT D_CTT
neighbor 2.0 bin
variable vTEMP equal 260.0
variable vTEMP_D equal 1.0
variable vPRESS equal 1.0
velocity gCORES create ${vTEMP} 12345
velocity gCORES create 260 12345
velocity gDRUDES create ${vTEMP_D} 12345
velocity gDRUDES create 1 12345
fix fDRUDE all drude C C C C C N N D D D D D
fix fSHAKE gCORES shake 0.0001 20 0 b 4 6 7 8
1250 = # of size 2 clusters
0 = # of size 3 clusters
250 = # of size 4 clusters
0 = # of frozen angles
fix fLANG all langevin/drude ${vTEMP} 100.0 200611 ${vTEMP_D} 20.0 260514 zero yes
fix fLANG all langevin/drude 260 100.0 200611 ${vTEMP_D} 20.0 260514 zero yes
fix fLANG all langevin/drude 260 100.0 200611 1 20.0 260514 zero yes
fix fNPH all nve
compute cTEMP all temp/drude
thermo_style custom step cpu etotal ke temp pe ebond eangle edihed eimp evdwl ecoul elong press vol c_cTEMP[1] c_cTEMP[2]
thermo 50
timestep 0.5
run 2000
PPPM initialization ...
WARNING: Using 12-bit tables for long-range coulomb (../kspace.cpp:321)
G vector (1/distance) = 0.382011
grid = 40 40 40
stencil order = 5
estimated absolute RMS force accuracy = 0.0325934
estimated relative force accuracy = 9.8154e-05
using double precision FFTs
3d grid and FFT values/proc = 34263 16000
Rebuild special list taking Drude particles into account
Old max number of 1-2 to 1-4 neighbors: 19
New max number of 1-2 to 1-4 neighbors: 20 (+1)
Neighbor list info ...
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10
ghost atom cutoff = 10
binsize = 5, bins = 8 8 8
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/cut/thole/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 18 | 18 | 18 Mbytes
Step CPU TotEng KinEng Temp PotEng E_bond E_angle E_dihed E_impro E_vdwl E_coul E_long Press Volume c_cTEMP[1] c_cTEMP[2]
0 0 14386.197 2910.7282 202.07402 11475.469 6565.4851 20.333365 1.0706727e-06 1.3894617e-07 4972.8631 1306116.6 -1306199.8 40273.68 48631.318 314.89553 3.1777821
50 1.0658228 8014.6879 4671.7498 324.33095 3342.9381 1798.7991 670.22837 651.99307 50.352024 819.34616 1305984.9 -1306632.7 17255.952 48631.318 442.52888 116.12397
100 2.136163 6185.5007 3697.0414 256.66292 2488.4593 974.42931 774.88353 840.46625 66.896007 427.27085 1306105.5 -1306701 15044.739 48631.318 381.93582 35.802658
150 3.202647 5418.0644 3628.2714 251.88864 1789.7929 764.02696 804.61034 641.14915 47.995428 108.05084 1306138.9 -1306714.9 15258.194 48631.318 388.65363 10.777816
200 4.2728949 4838.4235 3303.8964 229.36927 1534.5271 702.10438 772.85348 625.99718 52.299187 -63.792745 1306166.5 -1306721.4 13487.722 48631.318 357.35337 3.7423617
250 5.3275268 4461.2438 3084.8973 214.16551 1376.3465 693.85145 823.23815 599.85313 48.280277 -230.56822 1306167.8 -1306726.1 8779.0061 48631.318 334.59262 1.8620294
300 6.3794398 4179.6462 2885.0738 200.29299 1294.5724 739.337 868.84011 555.04912 44.838819 -354.73738 1306171.3 -1306730 4410.8735 48631.318 313.17473 1.2892347
350 7.427706 3934.3968 2756.2421 191.34899 1178.1546 666.16877 877.32996 548.99846 45.087026 -404.32209 1306179 -1306734.1 8477.8828 48631.318 299.22663 1.1698531
400 8.4820418 3800.4769 2674.8317 185.69716 1125.6452 693.29433 841.29833 579.61438 48.325361 -470.18802 1306170.5 -1306737.2 6265.7532 48631.318 290.39105 1.1303952
450 9.528651 3685.28 2616.9074 181.67583 1068.3726 702.68328 886.66644 555.74511 46.160811 -557.70651 1306176.6 -1306741.7 2701.7737 48631.318 284.11064 1.091646
500 10.579133 3582.6591 2517.6443 174.78461 1065.0148 701.82101 894.9429 554.06012 46.074357 -570.49878 1306181.8 -1306743.2 3643.7426 48631.318 273.31525 1.0831346
550 11.629649 3542.0402 2527.0386 175.4368 1015.0016 688.73877 916.2381 521.69932 44.014375 -580.05437 1306171 -1306746.6 2928.6632 48631.318 274.34257 1.0740018
600 12.684143 3507.0443 2519.9749 174.94641 987.06936 711.58734 894.63276 525.57884 42.944226 -603.24423 1306161.2 -1306745.7 2082.9907 48631.318 273.57124 1.0784841
650 13.737965 3416.2001 2445.9361 169.80635 970.26394 706.95207 891.76446 540.90369 45.970985 -626.32832 1306160.2 -1306749.2 1912.8783 48631.318 265.5023 1.1021764
700 14.777375 3419.7572 2446.117 169.81891 973.64019 664.17579 936.51992 551.67148 45.696531 -634.70926 1306159.6 -1306749.4 2215.7085 48631.318 265.53614 1.0774684
750 15.795347 3418.6537 2449.343 170.04287 969.31069 706.12432 899.61553 553.21874 45.793213 -642.75298 1306158.1 -1306750.8 1022.2516 48631.318 265.89304 1.0681488
800 16.835794 3385.2449 2465.4963 171.16429 919.74864 692.34918 888.91243 530.24204 45.132243 -638.54787 1306154.6 -1306753 1601.1391 48631.318 267.64361 1.0797553
850 17.87536 3397.1124 2426.3129 168.44403 970.79951 717.48898 878.71057 580.26487 46.675101 -646.96926 1306150.9 -1306756.3 1048.7905 48631.318 263.38063 1.0785255
900 18.899639 3324.2064 2447.5004 169.91495 876.70599 683.62339 881.77789 531.98758 43.646731 -648.59248 1306144.4 -1306760.2 2221.5859 48631.318 265.69596 1.0608373
950 19.938468 3316.6329 2398.6988 166.52695 917.93405 702.84237 885.96473 540.35376 45.671318 -638.80334 1306144.4 -1306762.5 1955.2237 48631.318 260.38167 1.0687233
1000 20.973543 3287.4205 2384.191 165.51976 903.22949 705.56988 889.96387 535.23674 44.902139 -661.28175 1306150.4 -1306761.6 90.200683 48631.318 258.81506 1.0477545
1050 21.990961 3297.7806 2392.0372 166.06448 905.74339 697.33157 889.75086 537.2395 46.319713 -636.03286 1306135.9 -1306764.8 1893.8234 48631.318 259.67633 1.0344207
1100 23.006456 3240.651 2370.2217 164.54996 870.42931 693.87289 897.0846 526.89184 43.778979 -657.83716 1306132.1 -1306765.5 799.62979 48631.318 257.28711 1.0618941
1150 24.014558 3232.457 2377.9797 165.08855 854.47728 692.51558 897.77048 520.3269 43.903959 -657.38369 1306126.9 -1306769.6 178.21408 48631.318 258.13876 1.0479172
1200 25.010178 3238.4266 2392.0623 166.06622 846.36427 695.98996 887.237 522.01974 42.355716 -660.92843 1306124.7 -1306765 1006.1877 48631.318 259.66037 1.0698925
1250 26.01949 3198.3364 2332.7551 161.94888 865.58134 690.81786 897.35028 524.47996 44.421121 -640.92419 1306116.3 -1306766.8 2073.9672 48631.318 253.227 1.0326937
1300 27.026911 3237.6809 2386.3739 165.67131 851.30706 672.11785 901.04813 530.2964 44.020263 -655.33033 1306125.7 -1306766.5 579.46013 48631.318 259.05838 1.0374113
1350 28.033721 3285.9536 2371.155 164.61476 914.79862 718.12968 928.41764 524.02349 43.89896 -657.10221 1306127.3 -1306769.9 518.88041 48631.318 257.36737 1.0993197
1400 29.026742 3272.2173 2391.4158 166.02134 880.80147 712.59883 896.13616 532.95785 45.989768 -658.37495 1306125.6 -1306774.1 961.2067 48631.318 259.5968 1.0557033
1450 30.032566 3244.2627 2356.0955 163.56926 888.16727 714.72692 901.18382 534.59787 45.517573 -655.58258 1306124.5 -1306776.8 596.10558 48631.318 255.75173 1.058657
1500 31.03878 3244.8598 2408.5382 167.21004 836.32161 695.63105 867.27743 527.37333 44.496971 -648.96393 1306125.2 -1306774.7 443.71088 48631.318 261.45495 1.0648973
1550 32.041435 3239.3658 2367.1336 164.33557 872.23223 704.16965 884.5938 544.41685 46.110791 -654.61963 1306124.1 -1306776.5 -446.5562 48631.318 256.96289 1.0409003
1600 33.058977 3221.4258 2334.2656 162.05375 887.1602 713.8296 885.80472 533.86753 45.413663 -633.58824 1306119.6 -1306777.8 1527.9489 48631.318 253.36367 1.0817678
1650 34.080875 3224.4472 2385.9055 165.63879 838.54168 681.01628 879.88017 536.75983 43.884394 -643.24788 1306114 -1306773.8 1314.2208 48631.318 258.97106 1.1033457
1700 35.095047 3178.6575 2352.4294 163.31475 826.2281 700.79494 854.06687 549.39826 46.155483 -662.57181 1306115.2 -1306776.9 -187.36898 48631.318 255.35015 1.0638209
1750 36.093828 3219.473 2371.9421 164.6694 847.53093 699.44953 891.26068 541.91687 45.714235 -679.13432 1306120.3 -1306771.9 -618.32924 48631.318 257.48034 1.0512601
1800 37.110101 3202.0094 2371.8909 164.66585 830.11842 698.44522 858.38216 550.82008 46.315893 -667.77838 1306119.2 -1306775.3 -9.4963278 48631.318 257.46873 1.0619052
1850 38.121337 3202.0111 2366.6984 164.30536 835.31277 714.69988 849.6778 553.24258 46.502994 -667.44162 1306114.9 -1306776.3 131.11108 48631.318 256.90165 1.0656162
1900 39.132607 3228.7805 2365.934 164.25229 862.84648 720.68418 890.65533 554.75943 45.736726 -685.52803 1306115.1 -1306778.5 -82.525994 48631.318 256.81451 1.0726218
1950 40.127507 3218.4068 2443.0023 169.60267 775.40452 673.40001 874.63022 529.69964 43.166847 -680.57322 1306115.4 -1306780.3 622.76654 48631.318 265.20173 1.0693092
2000 41.138176 3257.463 2375.6246 164.92505 881.83842 677.60747 933.47776 547.01076 46.507189 -665.56273 1306123.7 -1306780.9 1829.3477 48631.318 257.88171 1.0500311
Loop time of 41.1383 on 4 procs for 2000 steps with 5500 atoms
Performance: 2.100 ns/day, 11.427 hours/ns, 48.617 timesteps/s
99.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 | 21.082 | 22.483 | 24.145 | 26.6 | 54.65
Bond | 4.9992 | 5.0781 | 5.1544 | 2.7 | 12.34
Kspace | 9.1202 | 10.806 | 12.272 | 39.7 | 26.27
Neigh | 0.45045 | 0.45076 | 0.45094 | 0.0 | 1.10
Comm | 0.85982 | 0.87287 | 0.88725 | 1.2 | 2.12
Output | 0.0036495 | 0.004005 | 0.0049655 | 0.9 | 0.01
Modify | 1.4009 | 1.401 | 1.4013 | 0.0 | 3.41
Other | | 0.04245 | | | 0.10
Nlocal: 1375 ave 1398 max 1361 min
Histogram: 1 0 2 0 0 0 0 0 0 1
Nghost: 7745.75 ave 7788 max 7697 min
Histogram: 1 0 0 1 0 0 0 0 1 1
Neighs: 334374 ave 348629 max 319495 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Total # of neighbors = 1337494
Ave neighs/atom = 243.181
Ave special neighs/atom = 15.6364
Neighbor list builds = 31
Dangerous builds = 0
Total wall time: 0:00:41

View File

@ -0,0 +1,259 @@
LAMMPS (11 Aug 2017)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
using 1 OpenMP thread(s) per MPI task
# 250 toluene system for drude polarizability example (Nose-Hoover)
units real
boundary p p p
atom_style full
bond_style harmonic
angle_style harmonic
dihedral_style opls
improper_style opls
special_bonds lj/coul 0.0 0.0 0.5
pair_style lj/cut/thole/long 2.600 8.0 8.0
pair_modify mix geometric tail yes
kspace_style pppm 1.0e-4
read_data data.toluene extra/special/per/atom 1
orthogonal box = (-18.2908 -18.1636 -18.223) to (18.3357 18.1621 18.3287)
1 by 1 by 1 MPI processor grid
reading atoms ...
5500 atoms
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
8 = max dihedrals/atom
scanning impropers ...
2 = max impropers/atom
reading bonds ...
5500 bonds
reading angles ...
6000 angles
reading dihedrals ...
6000 dihedrals
reading impropers ...
1500 impropers
5 = max # of 1-2 neighbors
10 = max # of 1-3 neighbors
16 = max # of 1-4 neighbors
20 = max # of special neighbors
comm_modify vel yes
group gTOLUENE molecule 1:250
5500 atoms in group gTOLUENE
group gCORES type 1 2 3 4 5 6 7
3750 atoms in group gCORES
group gDRUDES type 8 9 10 11 12
1750 atoms in group gDRUDES
pair_coeff 1 1 0.069998 3.550000 1.620000 # CAT CAT
pair_coeff 1 2 0.069998 3.550000 1.620000 # CAT CAO
pair_coeff 1 3 0.069998 3.550000 1.620000 # CAT CAM
pair_coeff 1 4 0.069998 3.550000 1.620000 # CAT CAP
pair_coeff 1 5 0.067968 3.524911 1.620000 # CAT CTT
pair_coeff 1 6 0.045825 2.931041 0.000000 # CAT HAT
pair_coeff 1 7 0.045825 2.931041 0.000000 # CAT HT
pair_coeff 2 2 0.069998 3.550000 1.620000 # CAO CAO
pair_coeff 2 3 0.069998 3.550000 1.620000 # CAO CAM
pair_coeff 2 4 0.069998 3.550000 1.620000 # CAO CAP
pair_coeff 2 5 0.067968 3.524911 1.620000 # CAO CTT
pair_coeff 2 6 0.045825 2.931041 0.000000 # CAO HAT
pair_coeff 2 7 0.045825 2.931041 0.000000 # CAO HT
pair_coeff 3 3 0.069998 3.550000 1.620000 # CAM CAM
pair_coeff 3 4 0.069998 3.550000 1.620000 # CAM CAP
pair_coeff 3 5 0.067968 3.524911 1.620000 # CAM CTT
pair_coeff 3 6 0.045825 2.931041 0.000000 # CAM HAT
pair_coeff 3 7 0.045825 2.931041 0.000000 # CAM HT
pair_coeff 4 4 0.069998 3.550000 1.620000 # CAP CAP
pair_coeff 4 5 0.067968 3.524911 1.620000 # CAP CTT
pair_coeff 4 6 0.045825 2.931041 0.000000 # CAP HAT
pair_coeff 4 7 0.045825 2.931041 0.000000 # CAP HT
pair_coeff 5 5 0.065997 3.500000 1.620000 # CTT CTT
pair_coeff 5 6 0.044496 2.910326 0.000000 # CTT HAT
pair_coeff 5 7 0.044496 2.910326 0.000000 # CTT HT
pair_coeff 6 6 0.029999 2.420000 0.000000 # HAT HAT
pair_coeff 6 7 0.029999 2.420000 0.000000 # HAT HT
pair_coeff 7 7 0.029999 2.420000 0.000000 # HT HT
pair_coeff 1 8 0.000000 0.000000 1.620000 # CAT D_CAT
pair_coeff 1 9 0.000000 0.000000 1.620000 # CAT D_CAO
pair_coeff 1 10 0.000000 0.000000 1.620000 # CAT D_CAM
pair_coeff 1 11 0.000000 0.000000 1.620000 # CAT D_CAP
pair_coeff 1 12 0.000000 0.000000 1.620000 # CAT D_CTT
pair_coeff 2 8 0.000000 0.000000 1.620000 # CAO D_CAT
pair_coeff 2 9 0.000000 0.000000 1.620000 # CAO D_CAO
pair_coeff 2 10 0.000000 0.000000 1.620000 # CAO D_CAM
pair_coeff 2 11 0.000000 0.000000 1.620000 # CAO D_CAP
pair_coeff 2 12 0.000000 0.000000 1.620000 # CAO D_CTT
pair_coeff 3 8 0.000000 0.000000 1.620000 # CAM D_CAT
pair_coeff 3 9 0.000000 0.000000 1.620000 # CAM D_CAO
pair_coeff 3 10 0.000000 0.000000 1.620000 # CAM D_CAM
pair_coeff 3 11 0.000000 0.000000 1.620000 # CAM D_CAP
pair_coeff 3 12 0.000000 0.000000 1.620000 # CAM D_CTT
pair_coeff 4 8 0.000000 0.000000 1.620000 # CAP D_CAT
pair_coeff 4 9 0.000000 0.000000 1.620000 # CAP D_CAO
pair_coeff 4 10 0.000000 0.000000 1.620000 # CAP D_CAM
pair_coeff 4 11 0.000000 0.000000 1.620000 # CAP D_CAP
pair_coeff 4 12 0.000000 0.000000 1.620000 # CAP D_CTT
pair_coeff 5 8 0.000000 0.000000 1.620000 # CTT D_CAT
pair_coeff 5 9 0.000000 0.000000 1.620000 # CTT D_CAO
pair_coeff 5 10 0.000000 0.000000 1.620000 # CTT D_CAM
pair_coeff 5 11 0.000000 0.000000 1.620000 # CTT D_CAP
pair_coeff 5 12 0.000000 0.000000 1.620000 # CTT D_CTT
pair_coeff 8 8 0.000000 0.000000 1.620000 # D_CAT D_CAT
pair_coeff 8 9 0.000000 0.000000 1.620000 # D_CAT D_CAO
pair_coeff 8 10 0.000000 0.000000 1.620000 # D_CAT D_CAM
pair_coeff 8 11 0.000000 0.000000 1.620000 # D_CAT D_CAP
pair_coeff 8 12 0.000000 0.000000 1.620000 # D_CAT D_CTT
pair_coeff 9 9 0.000000 0.000000 1.620000 # D_CAO D_CAO
pair_coeff 9 10 0.000000 0.000000 1.620000 # D_CAO D_CAM
pair_coeff 9 11 0.000000 0.000000 1.620000 # D_CAO D_CAP
pair_coeff 9 12 0.000000 0.000000 1.620000 # D_CAO D_CTT
pair_coeff 10 10 0.000000 0.000000 1.620000 # D_CAM D_CAM
pair_coeff 10 11 0.000000 0.000000 1.620000 # D_CAM D_CAP
pair_coeff 10 12 0.000000 0.000000 1.620000 # D_CAM D_CTT
pair_coeff 11 11 0.000000 0.000000 1.620000 # D_CAP D_CAP
pair_coeff 11 12 0.000000 0.000000 1.620000 # D_CAP D_CTT
pair_coeff 12 12 0.000000 0.000000 1.620000 # D_CTT D_CTT
neighbor 2.0 bin
variable vTEMP equal 260.0
variable vTEMP_D equal 1.0
variable vPRESS equal 1.0
velocity gCORES create ${vTEMP} 12345
velocity gCORES create 260 12345
velocity gDRUDES create ${vTEMP_D} 12345
velocity gDRUDES create 1 12345
fix fDRUDE all drude C C C C C N N D D D D D
fix fSHAKE gCORES shake 0.0001 20 0 b 4 6 7 8
1250 = # of size 2 clusters
0 = # of size 3 clusters
250 = # of size 4 clusters
0 = # of frozen angles
compute cTEMP_CORE gCORES temp/com
compute cTEMP all temp/drude
fix fDIRECT all drude/transform/direct
fix fNVT1 gCORES nvt temp ${vTEMP} ${vTEMP} 100.0
fix fNVT1 gCORES nvt temp 260 ${vTEMP} 100.0
fix fNVT1 gCORES nvt temp 260 260 100.0
fix fNVT2 gDRUDES nvt temp ${vTEMP_D} ${vTEMP_D} 20.0
fix fNVT2 gDRUDES nvt temp 1 ${vTEMP_D} 20.0
fix fNVT2 gDRUDES nvt temp 1 1 20.0
fix fINVERSE all drude/transform/inverse
fix fMOMENTUM all momentum 100 linear 1 1 1
thermo_style custom step cpu etotal ke temp pe ebond eangle edihed eimp evdwl ecoul elong press vol c_cTEMP[1] c_cTEMP[2]
thermo 50
timestep 0.5
run 2000
PPPM initialization ...
WARNING: Using 12-bit tables for long-range coulomb (../kspace.cpp:321)
G vector (1/distance) = 0.382011
grid = 40 40 40
stencil order = 5
estimated absolute RMS force accuracy = 0.0325934
estimated relative force accuracy = 9.8154e-05
using double precision FFTs
3d grid and FFT values/proc = 103823 64000
Rebuild special list taking Drude particles into account
Old max number of 1-2 to 1-4 neighbors: 19
New max number of 1-2 to 1-4 neighbors: 20 (+1)
Neighbor list info ...
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10
ghost atom cutoff = 10
binsize = 5, bins = 8 8 8
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/cut/thole/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 42.06 | 42.06 | 42.06 Mbytes
Step CPU TotEng KinEng Temp PotEng E_bond E_angle E_dihed E_impro E_vdwl E_coul E_long Press Volume c_cTEMP[1] c_cTEMP[2]
0 0 14386.197 2910.7282 202.07402 11475.469 6565.4851 20.333365 1.0706727e-06 1.3894617e-07 4972.8631 1306116.6 -1306199.8 40273.68 48631.318 314.89553 3.1777821
50 4.462481 6863.642 4633.9267 321.70512 2229.7153 735.2547 604.6946 648.35773 49.039129 824.06033 1306091.3 -1306722.9 17914.827 48631.318 504.18525 0.0086839843
100 8.8666639 6628.0722 4376.1868 303.81182 2251.8853 598.11249 651.43051 919.41359 74.216826 589.6504 1306135.1 -1306716 17450.721 48631.318 476.14276 0.0075129702
150 13.323556 6336.1884 4726.0692 328.10201 1610.1192 560.01225 621.30109 640.32475 45.531175 288.99128 1306173.9 -1306720 18303.624 48631.318 514.21215 0.0061921467
200 17.710109 5997.6194 4565.6288 316.96362 1431.9906 524.2765 591.79843 718.11015 56.374558 88.660843 1306183 -1306730.3 17986.182 48631.318 496.75522 0.00681205
250 22.154451 5648.1758 4433.1558 307.76682 1215.02 502.13687 578.85369 665.27326 49.096119 -19.019967 1306179.2 -1306740.5 11771.328 48631.318 482.34141 0.0071619539
300 26.524393 5317.8584 4075.2077 282.91669 1242.6506 602.55113 637.40817 647.27074 44.769726 -123.22347 1306183.3 -1306749.5 3571.1867 48631.318 443.3952 0.0071733829
350 30.881443 4996.709 3935.7988 273.23838 1060.9102 455.75196 634.36552 638.77826 45.831053 -157.6304 1306198.1 -1306754.3 13525.264 48631.318 428.22739 0.0063722044
400 35.218285 4695.9297 3742.6585 259.82983 953.27122 457.49584 620.73047 591.94411 42.495713 -183.91838 1306186.7 -1306762.2 10901.217 48631.318 407.21326 0.005787501
450 39.545502 4417.8027 3513.6374 243.9303 904.16528 519.61263 580.76003 624.06933 45.631271 -286.60025 1306184.3 -1306763.6 2956.9012 48631.318 382.29486 0.0057536613
500 43.868895 4165.0012 3333.7203 231.43976 831.28089 465.5234 579.36085 580.60005 42.34515 -254.82269 1306183.9 -1306765.6 5818.5565 48631.318 362.71904 0.0059224891
550 48.242395 3934.5209 3211.9362 222.98504 722.58462 431.14864 581.46511 517.2025 39.188196 -265.47041 1306182.7 -1306763.6 8537.9404 48631.318 349.46863 0.0055762504
600 52.542171 3714.8655 3121.0494 216.67532 593.81611 425.12998 539.89496 490.30508 34.564566 -305.82069 1306175.2 -1306765.5 7402.7677 48631.318 339.57967 0.0057486673
650 56.830079 3516.2452 2930.7498 203.46399 585.49537 511.91461 512.48859 521.40636 37.766801 -391.65392 1306163.5 -1306770 381.72879 48631.318 318.87447 0.0054629243
700 61.119511 3342.7694 2864.1576 198.8409 478.6118 451.54683 498.82407 489.17207 35.23127 -375.78886 1306153.8 -1306774.2 3691.2716 48631.318 311.62801 0.0071278731
750 65.401576 3181.7673 2786.7104 193.46422 395.05691 409.83192 508.19542 454.56182 32.890716 -379.80692 1306149 -1306779.6 7428.3698 48631.318 303.20195 0.006233194
800 69.680899 3032.4158 2699.8707 187.43547 332.54509 453.40673 486.16575 441.1235 32.847786 -437.39338 1306144.4 -1306788 1701.7652 48631.318 293.75377 0.0056528223
850 73.96463 2898.4928 2563.6959 177.98169 334.7969 463.66637 486.19929 453.38803 34.062233 -455.86062 1306144.2 -1306790.9 -285.03665 48631.318 278.9376 0.0052777781
900 78.229548 2780.3555 2528.3241 175.52604 252.03136 396.92692 451.76463 435.59744 33.035257 -413.46176 1306142.9 -1306794.7 3836.4341 48631.318 275.08801 0.0070306435
950 82.482848 2679.3417 2456.8817 170.56624 222.45998 385.66656 434.6516 418.37977 32.156722 -387.2201 1306136.9 -1306798.1 5510.2309 48631.318 267.31515 0.0064042654
1000 86.722726 2593.4365 2367.4477 164.35738 225.98882 427.8524 453.27435 415.48809 31.097577 -436.62051 1306131.8 -1306796.9 1166.3909 48631.318 257.58464 0.0059160543
1050 90.888482 2524.7788 2305.0253 160.02377 219.75349 432.90807 438.86657 412.79356 30.892593 -414.29436 1306119.4 -1306800.8 1698.2687 48631.318 250.79245 0.0065593259
1100 95.024656 2471.8176 2311.0953 160.44518 160.72227 378.43572 453.3435 392.48525 29.012472 -409.64374 1306119.6 -1306802.5 4190.91 48631.318 251.45323 0.0059713432
1150 99.165724 2433.9279 2279.0766 158.22231 154.8513 395.30434 436.87933 414.39389 31.118973 -428.90902 1306110.2 -1306804.2 3274.8924 48631.318 247.96893 0.0069039065
1200 103.31062 2411.3777 2238.4638 155.40282 172.91381 453.61551 460.27693 408.59237 31.237062 -482.78549 1306110.2 -1306808.2 -523.10179 48631.318 243.55012 0.0068754631
1250 107.40149 2402.1932 2286.0576 158.70696 116.13565 416.44979 462.75875 391.75373 29.446705 -477.67214 1306102.2 -1306808.8 484.04837 48631.318 248.72579 0.011679749
1300 111.55448 2406.5029 2261.2729 156.98631 145.23005 408.68043 437.74725 400.4567 30.448106 -418.44274 1306096.8 -1306810.5 4490.4165 48631.318 245.99228 0.076574936
1350 115.71244 2459.1398 2317.5855 160.89575 141.55434 651.84862 447.40877 400.66793 29.060967 -461.45124 1305884.3 -1306810.3 693.59782 48631.318 250.14098 3.5622064
1400 119.88515 2479.5991 2285.6701 158.68006 193.929 582.54021 457.54475 430.29254 30.183876 -449.49979 1305955.6 -1306812.8 930.31169 48631.318 247.21826 2.5935077
1450 124.05689 2498.3537 2286.4924 158.73715 211.86128 434.79588 477.9598 402.79356 31.070492 -406.60813 1306086.4 -1306814.5 2933.4418 48631.318 248.74646 0.058608522
1500 128.29115 2546.66 2423.6257 168.25747 123.03432 392.07474 456.01536 385.97457 29.255586 -417.92459 1306089.9 -1306812.3 3333.3497 48631.318 263.694 0.011243575
1550 132.46344 2596.5481 2325.2227 161.42596 271.32542 462.52464 469.53612 461.20308 34.616094 -423.51186 1306080.4 -1306813.4 2155.0566 48631.318 252.98739 0.011191115
1600 136.64497 2646.7844 2387.8797 165.77585 258.90469 424.6071 484.95314 449.56642 33.318144 -395.67454 1306077 -1306814.8 1291.5449 48631.318 259.80403 0.012426122
1650 140.83234 2700.2847 2387.3033 165.73584 312.98138 431.00741 496.39504 455.52303 32.724808 -357.63815 1306070.3 -1306815.3 5007.2365 48631.318 259.70198 0.081729799
1700 145.02103 2777.9556 2386.7756 165.6992 391.18003 636.61544 523.12627 482.84847 35.186128 -391.10505 1305919.7 -1306815.2 2192.7076 48631.318 258.14043 2.7318649
1750 149.22218 2829.5998 2559.2796 177.67509 270.32019 684.587 479.93609 446.30457 31.888933 -385.84966 1305832.5 -1306819.1 1683.1471 48631.318 276.95798 2.6465587
1800 153.41978 2835.768 2465.6959 171.17815 370.07208 470.05934 508.38934 479.71489 37.826868 -369.0767 1306062.8 -1306819.6 3023.0762 48631.318 268.22249 0.097440318
1850 157.62632 2857.7601 2504.3893 173.86439 353.37083 436.06841 516.10132 487.71301 36.514956 -385.43181 1306078.9 -1306816.5 2950.5189 48631.318 272.47825 0.016816883
1900 161.8372 2867.791 2528.8957 175.56572 338.89527 446.38065 509.27013 485.03036 37.283587 -402.68445 1306076.6 -1306812.9 3161.5045 48631.318 275.1476 0.011615474
1950 166.10858 2861.34 2513.9103 174.52538 347.4297 470.9855 536.84666 467.9604 36.049051 -430.05716 1306079.3 -1306813.6 738.77866 48631.318 273.51233 0.020075246
2000 170.32286 2838.0367 2530.4481 175.6735 307.58858 423.18694 516.91384 454.72628 35.048394 -387.67176 1306074.6 -1306809.3 4321.7103 48631.318 275.24492 0.13775419
Loop time of 170.323 on 1 procs for 2000 steps with 5500 atoms
Performance: 0.507 ns/day, 47.312 hours/ns, 11.742 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 | 105.66 | 105.66 | 105.66 | 0.0 | 62.04
Bond | 19.802 | 19.802 | 19.802 | 0.0 | 11.63
Kspace | 35.029 | 35.029 | 35.029 | 0.0 | 20.57
Neigh | 2.7502 | 2.7502 | 2.7502 | 0.0 | 1.61
Comm | 0.62654 | 0.62654 | 0.62654 | 0.0 | 0.37
Output | 0.006705 | 0.006705 | 0.006705 | 0.0 | 0.00
Modify | 6.3072 | 6.3072 | 6.3072 | 0.0 | 3.70
Other | | 0.1366 | | | 0.08
Nlocal: 5500 ave 5500 max 5500 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 15407 ave 15407 max 15407 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 1.30509e+06 ave 1.30509e+06 max 1.30509e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 1305088
Ave neighs/atom = 237.289
Ave special neighs/atom = 15.6364
Neighbor list builds = 44
Dangerous builds = 0
Total wall time: 0:02:50

View File

@ -0,0 +1,259 @@
LAMMPS (11 Aug 2017)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
using 1 OpenMP thread(s) per MPI task
# 250 toluene system for drude polarizability example (Nose-Hoover)
units real
boundary p p p
atom_style full
bond_style harmonic
angle_style harmonic
dihedral_style opls
improper_style opls
special_bonds lj/coul 0.0 0.0 0.5
pair_style lj/cut/thole/long 2.600 8.0 8.0
pair_modify mix geometric tail yes
kspace_style pppm 1.0e-4
read_data data.toluene extra/special/per/atom 1
orthogonal box = (-18.2908 -18.1636 -18.223) to (18.3357 18.1621 18.3287)
2 by 1 by 2 MPI processor grid
reading atoms ...
5500 atoms
scanning bonds ...
4 = max bonds/atom
scanning angles ...
6 = max angles/atom
scanning dihedrals ...
8 = max dihedrals/atom
scanning impropers ...
2 = max impropers/atom
reading bonds ...
5500 bonds
reading angles ...
6000 angles
reading dihedrals ...
6000 dihedrals
reading impropers ...
1500 impropers
5 = max # of 1-2 neighbors
10 = max # of 1-3 neighbors
16 = max # of 1-4 neighbors
20 = max # of special neighbors
comm_modify vel yes
group gTOLUENE molecule 1:250
5500 atoms in group gTOLUENE
group gCORES type 1 2 3 4 5 6 7
3750 atoms in group gCORES
group gDRUDES type 8 9 10 11 12
1750 atoms in group gDRUDES
pair_coeff 1 1 0.069998 3.550000 1.620000 # CAT CAT
pair_coeff 1 2 0.069998 3.550000 1.620000 # CAT CAO
pair_coeff 1 3 0.069998 3.550000 1.620000 # CAT CAM
pair_coeff 1 4 0.069998 3.550000 1.620000 # CAT CAP
pair_coeff 1 5 0.067968 3.524911 1.620000 # CAT CTT
pair_coeff 1 6 0.045825 2.931041 0.000000 # CAT HAT
pair_coeff 1 7 0.045825 2.931041 0.000000 # CAT HT
pair_coeff 2 2 0.069998 3.550000 1.620000 # CAO CAO
pair_coeff 2 3 0.069998 3.550000 1.620000 # CAO CAM
pair_coeff 2 4 0.069998 3.550000 1.620000 # CAO CAP
pair_coeff 2 5 0.067968 3.524911 1.620000 # CAO CTT
pair_coeff 2 6 0.045825 2.931041 0.000000 # CAO HAT
pair_coeff 2 7 0.045825 2.931041 0.000000 # CAO HT
pair_coeff 3 3 0.069998 3.550000 1.620000 # CAM CAM
pair_coeff 3 4 0.069998 3.550000 1.620000 # CAM CAP
pair_coeff 3 5 0.067968 3.524911 1.620000 # CAM CTT
pair_coeff 3 6 0.045825 2.931041 0.000000 # CAM HAT
pair_coeff 3 7 0.045825 2.931041 0.000000 # CAM HT
pair_coeff 4 4 0.069998 3.550000 1.620000 # CAP CAP
pair_coeff 4 5 0.067968 3.524911 1.620000 # CAP CTT
pair_coeff 4 6 0.045825 2.931041 0.000000 # CAP HAT
pair_coeff 4 7 0.045825 2.931041 0.000000 # CAP HT
pair_coeff 5 5 0.065997 3.500000 1.620000 # CTT CTT
pair_coeff 5 6 0.044496 2.910326 0.000000 # CTT HAT
pair_coeff 5 7 0.044496 2.910326 0.000000 # CTT HT
pair_coeff 6 6 0.029999 2.420000 0.000000 # HAT HAT
pair_coeff 6 7 0.029999 2.420000 0.000000 # HAT HT
pair_coeff 7 7 0.029999 2.420000 0.000000 # HT HT
pair_coeff 1 8 0.000000 0.000000 1.620000 # CAT D_CAT
pair_coeff 1 9 0.000000 0.000000 1.620000 # CAT D_CAO
pair_coeff 1 10 0.000000 0.000000 1.620000 # CAT D_CAM
pair_coeff 1 11 0.000000 0.000000 1.620000 # CAT D_CAP
pair_coeff 1 12 0.000000 0.000000 1.620000 # CAT D_CTT
pair_coeff 2 8 0.000000 0.000000 1.620000 # CAO D_CAT
pair_coeff 2 9 0.000000 0.000000 1.620000 # CAO D_CAO
pair_coeff 2 10 0.000000 0.000000 1.620000 # CAO D_CAM
pair_coeff 2 11 0.000000 0.000000 1.620000 # CAO D_CAP
pair_coeff 2 12 0.000000 0.000000 1.620000 # CAO D_CTT
pair_coeff 3 8 0.000000 0.000000 1.620000 # CAM D_CAT
pair_coeff 3 9 0.000000 0.000000 1.620000 # CAM D_CAO
pair_coeff 3 10 0.000000 0.000000 1.620000 # CAM D_CAM
pair_coeff 3 11 0.000000 0.000000 1.620000 # CAM D_CAP
pair_coeff 3 12 0.000000 0.000000 1.620000 # CAM D_CTT
pair_coeff 4 8 0.000000 0.000000 1.620000 # CAP D_CAT
pair_coeff 4 9 0.000000 0.000000 1.620000 # CAP D_CAO
pair_coeff 4 10 0.000000 0.000000 1.620000 # CAP D_CAM
pair_coeff 4 11 0.000000 0.000000 1.620000 # CAP D_CAP
pair_coeff 4 12 0.000000 0.000000 1.620000 # CAP D_CTT
pair_coeff 5 8 0.000000 0.000000 1.620000 # CTT D_CAT
pair_coeff 5 9 0.000000 0.000000 1.620000 # CTT D_CAO
pair_coeff 5 10 0.000000 0.000000 1.620000 # CTT D_CAM
pair_coeff 5 11 0.000000 0.000000 1.620000 # CTT D_CAP
pair_coeff 5 12 0.000000 0.000000 1.620000 # CTT D_CTT
pair_coeff 8 8 0.000000 0.000000 1.620000 # D_CAT D_CAT
pair_coeff 8 9 0.000000 0.000000 1.620000 # D_CAT D_CAO
pair_coeff 8 10 0.000000 0.000000 1.620000 # D_CAT D_CAM
pair_coeff 8 11 0.000000 0.000000 1.620000 # D_CAT D_CAP
pair_coeff 8 12 0.000000 0.000000 1.620000 # D_CAT D_CTT
pair_coeff 9 9 0.000000 0.000000 1.620000 # D_CAO D_CAO
pair_coeff 9 10 0.000000 0.000000 1.620000 # D_CAO D_CAM
pair_coeff 9 11 0.000000 0.000000 1.620000 # D_CAO D_CAP
pair_coeff 9 12 0.000000 0.000000 1.620000 # D_CAO D_CTT
pair_coeff 10 10 0.000000 0.000000 1.620000 # D_CAM D_CAM
pair_coeff 10 11 0.000000 0.000000 1.620000 # D_CAM D_CAP
pair_coeff 10 12 0.000000 0.000000 1.620000 # D_CAM D_CTT
pair_coeff 11 11 0.000000 0.000000 1.620000 # D_CAP D_CAP
pair_coeff 11 12 0.000000 0.000000 1.620000 # D_CAP D_CTT
pair_coeff 12 12 0.000000 0.000000 1.620000 # D_CTT D_CTT
neighbor 2.0 bin
variable vTEMP equal 260.0
variable vTEMP_D equal 1.0
variable vPRESS equal 1.0
velocity gCORES create ${vTEMP} 12345
velocity gCORES create 260 12345
velocity gDRUDES create ${vTEMP_D} 12345
velocity gDRUDES create 1 12345
fix fDRUDE all drude C C C C C N N D D D D D
fix fSHAKE gCORES shake 0.0001 20 0 b 4 6 7 8
1250 = # of size 2 clusters
0 = # of size 3 clusters
250 = # of size 4 clusters
0 = # of frozen angles
compute cTEMP_CORE gCORES temp/com
compute cTEMP all temp/drude
fix fDIRECT all drude/transform/direct
fix fNVT1 gCORES nvt temp ${vTEMP} ${vTEMP} 100.0
fix fNVT1 gCORES nvt temp 260 ${vTEMP} 100.0
fix fNVT1 gCORES nvt temp 260 260 100.0
fix fNVT2 gDRUDES nvt temp ${vTEMP_D} ${vTEMP_D} 20.0
fix fNVT2 gDRUDES nvt temp 1 ${vTEMP_D} 20.0
fix fNVT2 gDRUDES nvt temp 1 1 20.0
fix fINVERSE all drude/transform/inverse
fix fMOMENTUM all momentum 100 linear 1 1 1
thermo_style custom step cpu etotal ke temp pe ebond eangle edihed eimp evdwl ecoul elong press vol c_cTEMP[1] c_cTEMP[2]
thermo 50
timestep 0.5
run 2000
PPPM initialization ...
WARNING: Using 12-bit tables for long-range coulomb (../kspace.cpp:321)
G vector (1/distance) = 0.382011
grid = 40 40 40
stencil order = 5
estimated absolute RMS force accuracy = 0.0325934
estimated relative force accuracy = 9.8154e-05
using double precision FFTs
3d grid and FFT values/proc = 34263 16000
Rebuild special list taking Drude particles into account
Old max number of 1-2 to 1-4 neighbors: 19
New max number of 1-2 to 1-4 neighbors: 20 (+1)
Neighbor list info ...
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 10
ghost atom cutoff = 10
binsize = 5, bins = 8 8 8
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/cut/thole/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d/newton
bin: standard
Per MPI rank memory allocation (min/avg/max) = 18 | 18 | 18 Mbytes
Step CPU TotEng KinEng Temp PotEng E_bond E_angle E_dihed E_impro E_vdwl E_coul E_long Press Volume c_cTEMP[1] c_cTEMP[2]
0 0 14386.197 2910.7282 202.07402 11475.469 6565.4851 20.333365 1.0706727e-06 1.3894617e-07 4972.8631 1306116.6 -1306199.8 40273.68 48631.318 314.89553 3.1777821
50 1.1419601 6863.6417 4633.9267 321.70512 2229.715 735.2547 604.69459 648.35773 49.039129 824.06033 1306091.3 -1306722.9 17914.827 48631.318 504.18525 0.0086839775
100 2.3001912 6628.0719 4376.1868 303.81182 2251.8851 598.11248 651.43051 919.41359 74.216825 589.6504 1306135.1 -1306716 17450.721 48631.318 476.14276 0.0075129701
150 3.473469 6336.1884 4726.0692 328.10201 1610.1192 560.01225 621.30109 640.32474 45.531174 288.99129 1306173.9 -1306720 18303.624 48631.318 514.21215 0.006192153
200 4.6296241 5997.6192 4565.6288 316.96362 1431.9903 524.27651 591.79844 718.11014 56.374557 88.66084 1306183 -1306730.3 17986.183 48631.318 496.75522 0.0068120542
250 5.7982912 5648.1756 4433.1557 307.76682 1215.0199 502.13686 578.8537 665.27326 49.096119 -19.019961 1306179.2 -1306740.5 11771.328 48631.318 482.34141 0.0071619522
300 6.9468622 5317.8583 4075.2077 282.91669 1242.6505 602.55113 637.40818 647.27073 44.769725 -123.22347 1306183.3 -1306749.5 3571.1872 48631.318 443.3952 0.0071733908
350 8.0925181 4996.7094 3935.7988 273.23838 1060.9106 455.75195 634.3655 638.77824 45.831051 -157.63039 1306198.1 -1306754.3 13525.265 48631.318 428.22739 0.0063722017
400 9.2309761 4695.9294 3742.6584 259.82983 953.27093 457.49585 620.73048 591.94413 42.495714 -183.91838 1306186.7 -1306762.2 10901.217 48631.318 407.21326 0.0057875
450 10.363872 4417.8018 3513.6374 243.9303 904.1644 519.61261 580.76003 624.06933 45.631272 -286.60025 1306184.3 -1306763.6 2956.9021 48631.318 382.29485 0.0057536673
500 11.493601 4165.0005 3333.7203 231.43976 831.28022 465.52341 579.36085 580.60004 42.345149 -254.82269 1306183.9 -1306765.6 5818.5549 48631.318 362.71904 0.0059224858
550 12.636785 3934.5207 3211.9362 222.98504 722.58446 431.14864 581.46511 517.20249 39.188194 -265.4704 1306182.7 -1306763.6 8537.9415 48631.318 349.46863 0.0055762027
600 13.759642 3714.8658 3121.0493 216.67532 593.81649 425.12998 539.89497 490.30506 34.564567 -305.82067 1306175.2 -1306765.5 7402.7688 48631.318 339.57967 0.005748668
650 14.880794 3516.2453 2930.7499 203.464 585.49542 511.91457 512.48857 521.40634 37.766798 -391.65394 1306163.5 -1306770 381.72898 48631.318 318.87448 0.0054629381
700 15.99791 3342.7693 2864.1576 198.8409 478.61174 451.54685 498.82406 489.17206 35.231269 -375.78888 1306153.8 -1306774.2 3691.2706 48631.318 311.62801 0.0071278792
750 17.111346 3181.7665 2786.7104 193.46422 395.05608 409.83191 508.19537 454.56183 32.890719 -379.80694 1306149 -1306779.6 7428.3698 48631.318 303.20196 0.0062331873
800 18.219225 3032.4162 2699.8707 187.43547 332.54543 453.40674 486.16573 441.12346 32.847783 -437.39291 1306144.4 -1306788 1701.7675 48631.318 293.75377 0.0056528077
850 19.320825 2898.4936 2563.6961 177.9817 334.79757 463.66634 486.19928 453.38802 34.062236 -455.86081 1306144.2 -1306790.9 -285.04073 48631.318 278.93762 0.0052778244
900 20.41979 2780.3551 2528.3241 175.52604 252.03099 396.92693 451.7645 435.59756 33.035261 -413.46181 1306142.9 -1306794.7 3836.4347 48631.318 275.08801 0.0070307677
950 21.517533 2679.3418 2456.8821 170.56626 222.45967 385.66649 434.6516 418.37957 32.156706 -387.22039 1306136.9 -1306798.1 5510.2277 48631.318 267.31518 0.0064041284
1000 22.614275 2593.435 2367.4471 164.35734 225.98798 427.85237 453.27432 415.48822 31.097611 -436.61808 1306131.8 -1306796.9 1166.3709 48631.318 257.58457 0.0059160188
1050 23.688642 2524.7784 2305.0257 160.0238 219.75264 432.90797 438.8666 412.79338 30.892595 -414.29467 1306119.4 -1306800.8 1698.2602 48631.318 250.7925 0.0065595368
1100 24.750163 2471.818 2311.095 160.44516 160.72297 378.43554 453.3434 392.485 29.012487 -409.64322 1306119.6 -1306802.5 4190.9174 48631.318 251.4532 0.0059713928
1150 25.813605 2433.9311 2279.0768 158.22233 154.85433 395.30409 436.87935 414.39367 31.118959 -428.90913 1306110.2 -1306804.2 3274.9237 48631.318 247.96895 0.0069037916
1200 26.876952 2411.3772 2238.4639 155.40283 172.91329 453.61525 460.27658 408.59192 31.237007 -482.78468 1306110.2 -1306808.2 -523.10237 48631.318 243.55013 0.0068752641
1250 27.929701 2402.1937 2286.0559 158.70685 116.13778 416.44884 462.75935 391.75448 29.446777 -477.6718 1306102.2 -1306808.8 484.0561 48631.318 248.72561 0.011679662
1300 29.000999 2406.5014 2261.274 156.98639 145.22737 408.678 437.74824 400.45662 30.448139 -418.44472 1306096.8 -1306810.5 4490.4105 48631.318 245.9924 0.076575975
1350 30.07322 2459.141 2317.5852 160.89573 141.55579 651.85736 447.40791 400.66662 29.060882 -461.45016 1305884.3 -1306810.3 693.5247 48631.318 250.14112 3.5619231
1400 31.14859 2479.6103 2285.6714 158.68015 193.93893 582.54135 457.54445 430.29301 30.184026 -449.49877 1305955.6 -1306812.8 930.44669 48631.318 247.21806 2.5941109
1450 32.226914 2498.357 2286.4857 158.73668 211.87137 434.79636 477.95951 402.79572 31.070593 -406.60139 1306086.4 -1306814.5 2933.5045 48631.318 248.74572 0.058613153
1500 33.410717 2546.6608 2423.6247 168.25741 123.03609 392.07322 456.01243 385.97344 29.255562 -417.91413 1306089.9 -1306812.3 3333.391 48631.318 263.6939 0.011242005
1550 34.466176 2596.5534 2325.2208 161.42583 271.33259 462.52172 469.54241 461.20405 34.616224 -423.51068 1306080.4 -1306813.4 2155.1194 48631.318 252.98718 0.011190963
1600 35.524206 2646.7837 2387.8846 165.77619 258.8991 424.60563 484.95051 449.57767 33.318683 -395.68293 1306077 -1306814.8 1291.42 48631.318 259.80456 0.01242131
1650 36.582854 2700.2921 2387.3119 165.73643 312.98026 431.01369 496.39909 455.52591 32.725057 -357.65832 1306070.3 -1306815.3 5006.9348 48631.318 259.70291 0.081728845
1700 37.641527 2777.9572 2386.7777 165.69934 391.1795 636.55763 523.11512 482.8483 35.185863 -391.0955 1305919.8 -1306815.2 2192.6733 48631.318 258.1403 2.7324891
1750 38.722299 2829.6167 2559.2488 177.67295 270.36793 684.60746 479.95058 446.29664 31.887359 -385.83616 1305832.5 -1306819 1683.6061 48631.318 276.955 2.6459088
1800 39.800548 2835.7772 2465.7031 171.17865 370.07414 470.05306 508.38361 479.70121 37.826988 -369.0694 1306062.8 -1306819.6 3022.9801 48631.318 268.22328 0.097437593
1850 40.878327 2857.76 2504.4099 173.86582 353.35016 436.05857 516.10495 487.70907 36.514477 -385.43957 1306078.9 -1306816.5 2950.6415 48631.318 272.48049 0.016822774
1900 41.9583 2867.7843 2528.8424 175.56202 338.94193 446.38058 509.30719 485.04661 37.284135 -402.67104 1306076.5 -1306812.9 3161.5835 48631.318 275.1418 0.011620333
1950 43.058281 2861.3388 2513.8846 174.5236 347.45414 470.99292 536.81741 467.97736 36.047648 -430.00695 1306079.3 -1306813.6 739.25154 48631.318 273.50953 0.020089235
2000 44.142059 2838.068 2530.3189 175.66453 307.74914 423.19157 516.85371 454.76945 35.048253 -387.49234 1306074.6 -1306809.3 4324.0966 48631.318 275.23081 0.13784772
Loop time of 44.1421 on 4 procs for 2000 steps with 5500 atoms
Performance: 1.957 ns/day, 12.262 hours/ns, 45.308 timesteps/s
99.7% CPU use with 4 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 21.008 | 22.592 | 23.892 | 21.7 | 51.18
Bond | 4.8951 | 5.1338 | 5.2542 | 6.4 | 11.63
Kspace | 9.1158 | 10.514 | 12.296 | 35.3 | 23.82
Neigh | 0.63826 | 0.63849 | 0.63875 | 0.0 | 1.45
Comm | 0.78008 | 0.80146 | 0.84186 | 2.7 | 1.82
Output | 0.0036852 | 0.0040929 | 0.0052037 | 1.0 | 0.01
Modify | 4.3966 | 4.4074 | 4.4147 | 0.3 | 9.98
Other | | 0.05088 | | | 0.12
Nlocal: 1375 ave 1415 max 1340 min
Histogram: 2 0 0 0 0 0 0 0 1 1
Nghost: 8101 ave 8147 max 8056 min
Histogram: 2 0 0 0 0 0 0 0 1 1
Neighs: 326274 ave 342552 max 306832 min
Histogram: 1 0 0 0 1 0 1 0 0 1
Total # of neighbors = 1305095
Ave neighs/atom = 237.29
Ave special neighs/atom = 15.6364
Neighbor list builds = 44
Dangerous builds = 0
Total wall time: 0:00:44

0
examples/USER/lb/polymer/data.polymer Executable file → Normal file
View File

0
examples/USER/lb/polymer/in.polymer_default_gamma Executable file → Normal file
View File

0
examples/USER/lb/polymer/in.polymer_setgamma Executable file → Normal file
View File

View File

@ -0,0 +1,74 @@
# The Interface Pinning method for studying solid-liquid transitions
In this example we will use the interface pinnig method to study a solid-liquid transition.
This is done by adding a harmonic potential to the Hamiltonian
that bias the system towards two-phase configurations:
U_bias = 0.5*K*(Q-a)^2
The bias field couple to an order-parameter of crystallinity Q. The implementation use long-range order:
Q=|rho_k|,
where rho_k is the collective density field of the wave-vector k.
For future reference we note that the structure factor S(k) is given by the variance of the collective density field:
S(k)=|rho_k|^2.
### About the method
It is recommended to get familiar with the interface pinning method by reading:
[Ulf R. Pedersen, JCP 139, 104102 (2013)](http://dx.doi.org/10.1063/1.4818747)
A detailed bibliography is provided at
<http://urp.dk/interface_pinning.htm>
and a brief introduction can be found at YouTube:
[![Interface Pinning](http://img.youtube.com/vi/F_79JZNdyoQ/0.jpg)](http://www.youtube.com/watch?v=F_79JZNdyoQ)
### Implimentation in LAMMPS
For this example we will be using the rhok fix.
fix [name] [groupID] rhok [nx] [ny] [nz] [K] [a]
This fix include a harmonic bias potential U_bias=0.5*K*(|rho_k|-a)^2 to the force calculation.
The elements of the wave-vector k is given by the nx, ny and nz input:
k_x = (2 pi / L_x) * n_x, k_y = (2 pi / L_y) * n_y and k_z = (2 pi / L_z) * n_z.
We will use a k vector that correspond to a Bragg peak.
## Example: the Lennard-Jones (LJ) model
We will use the interface pinning method to study melting of the LJ model
at temperature 0.8 and pressure 2.185. This is a coexistence state-point, and the method
can be used to show this. The present directory contains the input files that we will use:
in.crystal
in.setup
in.pinning
1. First we will determine the density of the crystal with the LAMMPS input file in.crystal.
From the output we get that the average density after equilibration is 0.9731.
We need this density to ensure hydrostatic pressure when in a two-phase simulation.
2. Next, we setup a two-phase configuration using in.setup.
3. Finally, we run a two-phase simulation with the bias-field applied using in.pinning.
The last column in the output show |rho_k|. We note that after a equilibration period
the value fluctuates around the anchor point (a) -- showing that this is indeed a coexistence
state point.
The reference [JCP 139, 104102 (2013)](http://dx.doi.org/10.1063/1.4818747) gives details on using the method to find coexistence state points,
and the reference [JCP 142, 044104 (2015)](http://dx.doi.org/10.1063/1.4818747) show how the crystal growth rate can be computed from fluctuations.
That method have been experienced to be most effective in the slightly super-heated regime above the melting temperature.
## Contact
Ulf R. Pedersen;
<http://www.urp.dk>;
ulf AT urp.dk

View File

@ -0,0 +1,36 @@
units lj
dimension 3
boundary p p p
atom_style atomic
# truncated and shifted LJ potential
pair_style lj/cut 2.5
pair_modify shift yes
lattice fcc 0.9731
region my_box block 0 8.0 0 8.0 0 20.0
create_box 1 my_box
region particles block 0 8.0 0 8.0 0 20.0
create_atoms 1 region particles
pair_coeff 1 1 1.0 1.0 2.5
pair_modify tail no
pair_modify shift yes
mass 1 1.0
velocity all create 1.6 1 mom yes rot yes
# simulation parameters
neighbor 0.6 bin
timestep 0.004
run_style verlet
fix ensemble all npt temp 0.8 0.8 4.0 aniso 2.185 2.185 8.0 pchain 32
# computing long-range order (no bias is added since k=0)
fix bias all rhok 16 0 0 0.0 0.0
# output
thermo 50
thermo_style custom step temp press density f_bias[3]
# dump dumpXYZ all xyz 2000 traj.xyz
# NOTE: this is cut short to 5000 steps for demonstration purposes
# run 100000
run 5000

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