Compare commits

...

2328 Commits

Author SHA1 Message Date
e410a2816a Merge branch 'stable' into maintenance 2024-10-01 08:35:18 -04:00
f489ff1699 flag as update 1 version 2024-10-01 08:34:24 -04:00
ec839d494c Merge pull request #4327 from lammps/maintenance
First Set of Collected Bug Fixes and Maintenance Updates for 29 August 2024 Stable Release
2024-10-01 08:09:12 -04:00
346d1de4dd backport refactoring and bugfixes from PR #4190 2024-09-30 17:24:28 -04:00
29819b29ae fix cut-n-paste error 2024-09-27 19:55:16 -04:00
076c711dba Backport MS-MEAM bugfix from upstream for L12 lattice 2024-09-27 14:59:34 -04:00
c4a822a4cf fix typo 2024-09-26 22:14:53 -04:00
84b2b1c231 backport fix wall/gran bugfix by @jtclemm from PR #4339 2024-09-26 21:42:21 -04:00
4c47ff284c backport fixes to fix pour from PR #4339 be @jtclemm 2024-09-26 20:17:27 -04:00
503d7230a6 update and correct description of running LAMMPS on Windows 2024-09-25 12:31:09 -04:00
e46d511885 fix cut-n-paste bug 2024-09-24 10:57:00 -04:00
7c6ec1409f Fix deadlock by always deallocating views of views in serial 2024-09-23 21:37:10 -04:00
dcfdbef0a0 improve error message and labelmap detection 2024-09-21 22:20:37 -04:00
6b02db9e21 support typelabels for parsing xyz file with non-numeric types 2024-09-21 15:56:36 -04:00
001c1cd938 relax epsilon or mark unstable based on test results on non-x86 architectures 2024-09-16 00:36:36 -04:00
d74fd195a3 fix comparison for missing arguments when using wildcards 2024-09-14 05:12:18 -04:00
eb2b5aa0ac correct indexing when filling lmp_firstneigh array 2024-09-14 02:25:33 -04:00
89d3c0b0a6 fix indexing error 2024-09-13 05:47:35 -04:00
f0abbc80be enforce that Pair::map is always initialized 2024-09-13 05:47:24 -04:00
3cb951e729 Add error check for fix acks2/reaxff/kk, tweak other error checks to print correct style 2024-09-09 17:24:40 -06:00
bea24c70a6 must call Error::all() from all MPI ranks. 2024-09-05 23:22:18 -04:00
87f022576d bugfix from upstream that affected fix shake/kk 2024-09-05 17:01:05 -04:00
20d10ec751 small corrections in the DIFFRACTION package, mostly cosmetic 2024-09-02 06:28:51 -04:00
2e502b59bb make certain that the mass and mass_setflag arrays are fully initialized (to zero) 2024-08-31 07:08:54 -04:00
0ed1b85d6f fix logic bug 2024-08-31 07:08:38 -04:00
8b665764cc Fix typo in CMakeLists.txt 2024-08-31 01:45:58 -04:00
77da90df2a remove double delete[] 2024-08-30 23:22:00 -04:00
69693750ce Merge branch 'maintenance' of github.com:lammps/lammps into maintenance 2024-08-30 23:21:10 -04:00
b41e3c9939 replace bogus allocation 2024-08-30 23:20:28 -04:00
1208f3dd5e replace bogus allocation 2024-08-30 22:52:20 -04:00
04a5fe06e7 make compatible with comm_modify vel yes 2024-08-30 22:52:09 -04:00
dc94ff97de fix bug where custom property dimension was not reported 2024-08-30 10:41:31 -04:00
31b5ffbeca flag as maintenance version 2024-08-29 22:07:07 -04:00
570c9d190f sync to release version 2024-08-29 20:47:52 -04:00
b5e21701ee Merge branch 'release' into stable
# Conflicts:
#	src/OPENMP/npair_halffull_newton_trim_omp.cpp
#	tools/lammps-shell/lammps-shell.cpp
2024-08-29 20:35:00 -04:00
05e836f50e Merge pull request #4297 from akohlmey/next_release
Update version strings for release
2024-08-29 20:26:41 -04:00
317fb8d537 Merge pull request #4301 from stanmoore1/reaxff_overflow_errors
Gracefully error out if integer overflow in ReaxFF or QEq
2024-08-29 20:19:29 -04:00
4aca808da6 Casts need to be bigint 2024-08-29 17:40:38 -06:00
7a9f0cd60d Fix potential overflow in Kokkos neighbor counting 2024-08-29 14:40:50 -06:00
6fd022695a Tweak error message 2024-08-29 14:23:49 -06:00
571076a5a7 Gracefully error out if integer overflow in ReaxFF or QEq 2024-08-29 14:18:08 -06:00
2581b1abfe update change log info for flatpak 2024-08-28 22:13:04 -04:00
a2138b79d6 Merge branch 'develop' into next_release 2024-08-28 22:12:31 -04:00
d48ca258fa Merge pull request #4209 from akohlmey/plumed-plugin
Add support to build the PLUMED package as a plugin
2024-08-28 19:10:46 -04:00
0cb72423b8 Merge pull request #4177 from lammps/maintenance
Fourth Set of Collected Bug Fixes and Maintenance Updates for 2 August 2023 Stable release
2024-08-28 17:22:37 -04:00
8fc48ad374 backport support for building PLUMED as plugin 2024-08-28 16:14:22 -04:00
af5f437aeb update list of dependencies 2024-08-28 15:30:44 -04:00
acfed12684 avoid recursion. there is only one executable. 2024-08-28 15:12:46 -04:00
4e8c1f3284 Merge branch 'develop' into plumed-plugin 2024-08-28 14:28:05 -04:00
0ad64045f5 Merge pull request #4298 from akohlmey/collected-small-fixes
Collected small fixes for LAMMPS and LAMMPS-GUI for the stable release
2024-08-28 11:54:27 -04:00
f2102b76f2 cosmetic 2024-08-28 11:09:47 -04:00
78310bddcf update docs for LAMMPS-GUI plugin changes and document flatpak build 2024-08-27 21:43:00 -04:00
932eaf864a must register variant for QList<QString> before using QSettings 2024-08-27 21:19:09 -04:00
99e5b06279 make plugin path canonical 2024-08-27 17:18:11 -04:00
98b4771ed6 sanity check 2024-08-27 17:18:01 -04:00
c01585e8b2 revise plugin loading logic 2024-08-27 17:02:17 -04:00
49d664583a correct define 2024-08-27 17:00:42 -04:00
4060de6a9c make handling of plugin path and recent files more consistent 2024-08-27 14:27:39 -04:00
83aab0f425 add option to set plugin path from the command line 2024-08-27 10:40:24 -04:00
d8b9679b87 fix cut-n-paste issue 2024-08-27 10:10:29 -04:00
5fbdf155e5 remove unused variables 2024-08-27 08:57:42 -04:00
2ebe1f019f avoid uninitialized data access in case there are no atoms owned by a process 2024-08-26 21:14:44 -04:00
6e791034f9 Merge pull request #4295 from akohlmey/collected-small-fixes
Updates for LAMMPS-GUI
2024-08-26 14:03:41 -04:00
ac90dca5a1 whitespace 2024-08-26 11:38:26 -04:00
4e590507f0 Merge remote-tracking branch 'github/develop' into collected-small-fixes 2024-08-26 11:37:56 -04:00
121195d19d Merge pull request #4290 from lammps/doc-page-ke-tensors
Amend doc page explanations of vector outputs from the various compute temp commands
2024-08-26 11:18:19 -04:00
d9a2fd9f36 kokkos: move #endif to correct location 2024-08-26 10:54:14 -04:00
dc66929e65 Merge pull request #4293 from jrgissing/bond_react_fixes_summ24
Bond/react: fixes and error checking
2024-08-26 10:45:32 -04:00
d1f141c962 Merge branch 'develop' into plumed-plugin 2024-08-26 04:17:04 -04:00
99153f20be refactor how reactions are skipped
better treatment of allowing all possible reactions when using 'overlap' keyword of 'create_atoms' feature
2024-08-25 21:55:19 -04:00
fa373eb685 update pending version tags with planned release date 2024-08-25 16:39:13 -04:00
c68981c7fc build LAMMPS-GUI flatpack from release branch of the official repo 2024-08-25 16:37:49 -04:00
b8b103df28 update version strings 2024-08-25 16:37:25 -04:00
9e5e1af125 update TODO list for LAMMPS-GUI 2024-08-25 16:25:42 -04:00
d59d31b445 remove accidental commit 2024-08-25 16:14:36 -04:00
cfcbad9e38 back to 5 sigma 2024-08-25 16:07:22 -04:00
586e5db757 completely hide inactive atom size field instead of only disabling them 2024-08-25 15:49:42 -04:00
a1a72f741a update docs with recent paper 2024-08-25 14:54:51 -04:00
e94d32e7d3 clean up tiny_nylon example 2024-08-25 14:19:17 -04:00
6514dbb4b6 refactor how to insert atoms 2024-08-25 13:42:51 -04:00
86975151b2 step LAMMPS-GUI version 2024-08-25 07:27:37 -04:00
e3773cad83 workaround for Qt 5.12 which is lacking some color constants 2024-08-25 02:50:47 -04:00
765212eae2 LAMMPS-GUI doc update 2024-08-25 01:18:29 -04:00
97c5bcc00c update 2024-08-25 00:55:56 -04:00
180593e53c add missing picture 2024-08-25 00:51:43 -04:00
67bba08b3d add unit tests for extracting lattice spacings 2024-08-25 00:41:58 -04:00
6c13e8d053 tweak docs for better formatting 2024-08-25 00:41:26 -04:00
ac91b4fbb3 add field to set atom size if not determined otherwise. seed by lattice spacing 2024-08-25 00:21:07 -04:00
3c2fba1112 add support for extracting the current lattice spacing to library interface 2024-08-25 00:17:17 -04:00
4507101ec3 show dark mode screenshot 2024-08-24 22:51:50 -04:00
e19556263c provide syntax highlighting color schemes for light and dark themes 2024-08-24 19:28:11 -04:00
baf1511f23 add light/dark mode detection 2024-08-24 19:21:03 -04:00
217546ed3b tweak LAMMPS-GUI howto typesetting 2024-08-24 15:11:43 -04:00
2a84aa8063 document find and replace dialog 2024-08-24 14:39:33 -04:00
be029a9122 tweak layout of keyboard shortcut table 2024-08-24 14:39:19 -04:00
35d8a3d68e Document 'Find and Replace' dialog 2024-08-24 14:32:01 -04:00
d98a3d61da reduce outlier margin from 5 sigma to 4 sigma 2024-08-24 11:58:26 -04:00
1b3652583b implement text search and replace functionality 2024-08-24 11:58:14 -04:00
72873b0dca line number area attempts to be dark mode compatible 2024-08-24 02:56:47 -04:00
ec0cdb8bdc tweak background color settings 2024-08-24 02:11:18 -04:00
c0770715dd Merge pull request #4292 from akohlmey/collected-small-fixes
Collected small fixes and changes
2024-08-23 14:49:40 -04:00
bc701c20f7 cleaning clipboard has no effect 2024-08-23 03:30:56 -04:00
2beda14b23 clear clipboard before exiting 2024-08-23 03:26:46 -04:00
a20997b7cd regularize application startup. use Qt's command line parser support 2024-08-23 03:16:48 -04:00
1b339b84e1 forgot to store chart update preference 2024-08-23 02:24:18 -04:00
4f3004fc40 we use PNG version of logo 2024-08-23 00:22:14 -04:00
d8329b30e1 force initialization 2024-08-23 00:09:41 -04:00
f6d0d91e2b make certain local virial storage is initialized 2024-08-23 00:02:59 -04:00
b28f18106c try to make coverity happy 2024-08-22 23:55:59 -04:00
51a78a8a7f make else branches only for fixes 2024-08-22 23:55:42 -04:00
b300ef29ee simplify; make certain nmax is always initialized 2024-08-22 23:39:29 -04:00
42dec6fe6e modernize and remove dead code 2024-08-22 21:03:29 -04:00
6fbb96140f avoid INTEL package compilation failure with upcoming Intel compiler releases 2024-08-22 17:42:14 -04:00
01bbd60568 avoid INTEL package compilation failure with upcoming Intel compiler releases 2024-08-22 17:41:47 -04:00
1494d12b88 step LAMMPS-GUI version number. update TODO list 2024-08-22 08:31:35 -04:00
5c48a120dd add versionadded entry for smooth plots 2024-08-22 01:54:05 -04:00
5f58650d2c update LAMMPS-GUI documentation for recent changes 2024-08-22 01:23:34 -04:00
f24b7c02ed add label for plots selection 2024-08-22 01:23:09 -04:00
4a291f8bed spelling 2024-08-22 01:04:05 -04:00
4d6b998a75 flang may be called flang-new 2024-08-22 00:00:27 -04:00
c00326debc backport grid fixes from upstream 2024-08-21 23:53:13 -04:00
446b9ed7b3 make compatible with -DLAMMPS_BIGBIG 2024-08-21 22:32:29 -04:00
9cd83a9513 remove dead code 2024-08-21 22:29:54 -04:00
79fd385239 whitespace 2024-08-21 20:22:01 -04:00
97f8a62f59 Merge remote-tracking branch 'github/develop' into collected-small-fixes 2024-08-21 20:21:43 -04:00
827bc6361b fix spelling and formatting issues 2024-08-21 20:18:28 -04:00
9e314b6a06 Merge pull request #4291 from lammps/extend-verlet-split
Add error checks to verlet/split for unsupported KSpace methods
2024-08-21 20:07:42 -04:00
0ca7bd9aaa Merge branch 'develop' into collected-small-fixes 2024-08-21 18:04:38 -04:00
f36e09720a Merge pull request #4287 from akohlmey/collected-small-fixes
Collected small fixes and updates for LAMMPS and LAMMPS-GUI
2024-08-21 17:51:58 -04:00
c8b485a2df improve error message 2024-08-21 17:48:01 -04:00
9b46cd9a3a add error checks to verlet/split 2024-08-21 15:23:27 -06:00
b4eb027851 Merge pull request #4289 from lammps/grid-debug
Fix 2 bugs with distributed grids
2024-08-21 17:21:35 -04:00
466927b0df update code owners list 2024-08-21 16:45:28 -04:00
92abea3372 Merge pull request #4273 from jtclemm/small-patches
Few small patches to BPM, RHEO, and GRANULAR packages
2024-08-21 16:33:28 -04:00
e142e4fe23 Merge pull request #4228 from ndtrung81/regression-tests
Adding support for doing regression tests
2024-08-21 16:07:42 -04:00
d1fb321eae Merge branch 'develop' into small-patches 2024-08-21 16:04:40 -04:00
aca36d1e6a apply clang-format 2024-08-21 15:17:28 -04:00
7eb105adbe tweak 2024-08-21 13:09:00 -06:00
32a6db151f clarify compute pressure doc page as well 2024-08-21 13:07:51 -06:00
7de2073e8e better explanations of vector outputs for compute temp commands 2024-08-21 12:46:45 -06:00
a541873b41 2 bug fixes 2024-08-21 10:28:24 -06:00
26a0501e67 use large logo version with rounded corners and drop shadow 2024-08-21 12:07:37 -04:00
112f311591 throw error when trying to use neigh_modify exclude with dynamic groups 2024-08-21 10:34:46 -04:00
47b5b2dfa3 throw error when trying to use neigh_modify exclude with dynamic groups 2024-08-21 10:34:20 -04:00
cdbec96e07 enable and apply clang-format 2024-08-21 09:00:11 -04:00
e3333bc19d tweak no-git version output 2024-08-21 00:01:04 -04:00
2746ec609f remove unused argument 2024-08-20 23:55:35 -04:00
b65c92e2bb fix syntax error 2024-08-20 23:40:02 -04:00
64e7e7234e work around unavailable git info for PDF title 2024-08-20 23:32:18 -04:00
355b62a788 Merge remote-tracking branch 'github/develop' into collected-small-fixes 2024-08-20 22:38:12 -04:00
adc5adf799 Merge pull request #4256 from rbberger/docs_authors
docs: expand author list
2024-08-20 22:37:53 -04:00
6db454a5e2 tweak title page some more 2024-08-20 22:37:25 -04:00
77f19f1dc9 small tweak to license text 2024-08-20 21:12:14 -04:00
28cd3bdb73 reorder and group author list and improve formatting in PDF file 2024-08-20 21:11:37 -04:00
4e947a9003 debugging 2024-08-20 17:28:36 -06:00
0a77c2fe35 Merge branch 'develop' into docs_authors 2024-08-20 18:12:48 -04:00
72a7634dec use custom title page 2024-08-20 16:31:32 -04:00
047d1010a0 Merge branch 'develop' into plumed-plugin 2024-08-20 11:09:18 -04:00
5665f29e03 move to proper place 2024-08-20 09:31:57 -04:00
f3be84a22b fix issues spotted by valgrind 2024-08-20 09:31:03 -04:00
19d6227220 plug memory leaks in testers 2024-08-20 09:19:58 -04:00
2b485a3f62 be more paranoid about cleaning up 2024-08-20 04:10:15 -04:00
80ea7ac120 plug another memory leak 2024-08-20 01:26:48 -04:00
02752ddf6a don't leak memory when throwing an exception 2024-08-20 01:15:53 -04:00
8cfd856296 plug small memory leak 2024-08-20 00:50:24 -04:00
1809115c64 avoid uninitialized access to next_thermo and next_restart from reset_dt() 2024-08-20 00:12:29 -04:00
085dec4d3c Use drop down list to select raw or smooth plot or both. Fix plot color. 2024-08-20 00:02:17 -04:00
2f6ac590b0 spelling and cosmetic stuff 2024-08-19 17:59:13 -04:00
3ebdc04aac Merge branch 'develop' into regression-tests 2024-08-19 17:50:43 -04:00
7fadaf08b2 Made the tool name and the subfolder consistent 2024-08-19 15:53:13 -05:00
71d102402f Added a paragraph to describe the regression-tests tool in Tools.rst 2024-08-19 15:44:23 -05:00
4c6beb548e white on black title. Make page 1 show up in PDF sidebar 2024-08-19 16:26:38 -04:00
7b62f82428 Merge branch 'doc_fixes' into merge-richard 2024-08-19 15:58:42 -04:00
c299c94ebc Merge pull request #4262 from jrgissing/type-labels-for-pair_style_commands
Type label support for pair_style commands
2024-08-19 15:02:23 -04:00
921f4f678d Merge pull request #4275 from akohlmey/collected-small-fixes
Collected fixes and changes for LAMMPS and LAMMPS-GUI
2024-08-19 14:07:24 -04:00
1bd6ba2b19 remove redundant navigation 2024-08-19 13:28:01 -04:00
a46c427de7 spelling 2024-08-19 08:45:56 -04:00
2cda355a92 restore to original for windows 2024-08-19 04:45:32 -04:00
26096d3399 tweak table widths for smoother display as PDF 2024-08-19 04:43:57 -04:00
03df6b276f restore table column tweaks for @rbberger 2024-08-19 01:36:08 -04:00
75663ab14b windows hack 2024-08-19 01:21:00 -04:00
c341344873 revert back to old layout. looks better with HTML. 2024-08-19 01:10:01 -04:00
4c15ac99a3 expand_type_int verify->bool 2024-08-18 23:05:52 -06:00
1afa56e0da expand_type_int: optional flag to check types
verifying type could probably be default, except for historical reasons
would involve removing redundant checks after calling routine
2024-08-18 22:39:01 -06:00
ca937372f4 fix typo 2024-08-19 00:34:52 -04:00
67e0af8a1b find LAMMPS python module for force style tests 2024-08-19 00:31:24 -04:00
d39354d569 docs: proposal for pdf title page customization 2024-08-18 22:31:06 -06:00
5902d81eca Revert "use memory create/destroy for allocating MPI objects which prefer 16 byte alignment"
This reverts commit 827d4709ac.
2024-08-19 00:16:50 -04:00
3edcc9ac00 silence compiler warnings 2024-08-19 00:04:50 -04:00
307a5b9592 fix bug causing memory corruption and clean up lmp_f2c.h header 2024-08-18 23:48:47 -04:00
88583a862e cosmetic 2024-08-18 23:15:07 -04:00
827d4709ac use memory create/destroy for allocating MPI objects which prefer 16 byte alignment 2024-08-18 23:14:53 -04:00
a8447b419d fix bug causing memory corruption and clean up lmp_f2c.h header 2024-08-18 21:34:15 -04:00
67dccdc52f make "invisible" first page of manual show up in table of contents 2024-08-18 18:56:45 -04:00
a8a66211c0 add some more advertisement for LAMMPS-GUI 2024-08-18 18:55:59 -04:00
80ff92d172 modernize, improve error output 2024-08-18 18:49:16 -04:00
3f9d244281 spelling 2024-08-18 17:36:11 -04:00
0735e976ff Merge branch 'doc_fixes' of github.com:jmgoff/lammps_compute_PACE into collected-small-fixes 2024-08-18 17:32:06 -04:00
a5695829a9 refer to icc as Intel Classic Compiler 2024-08-18 17:28:54 -04:00
90a595f519 "back end" keeps the spellchecker happier and is just as well. 2024-08-18 17:28:34 -04:00
b3a7d4dc95 revert white on black PDF title page 2024-08-18 17:28:03 -04:00
4b01401815 more consistent fix average notation 2024-08-18 15:04:58 -06:00
cac32085a7 Merge branch 'doc_fixes' of https://github.com/rbberger/lammps into collected-small-fixes 2024-08-18 16:45:48 -04:00
2b879324f0 minor doc fix 2024-08-18 14:00:58 -06:00
84c102fe36 docs: proposal for pdf title page customization 2024-08-18 13:20:40 -06:00
216be2e96f docs: complete howto review 2024-08-18 13:20:00 -06:00
e5876b3b36 convert to c++ style declarations 2024-08-18 14:55:46 -04:00
0e1863d9bb correct forward declaration 2024-08-18 14:55:24 -04:00
80fefbb3f8 Various small cleanups to RHEO package flagged by compiler warnings
The individual changes are:
- remove of unused function parameters
- replace non-standard variable length arrays on the stack with static ones
- disable citation removed from the manual
- replace #defined constants with enum or static constexpr
- enable and apply clang-format
2024-08-18 13:01:31 -04:00
5a85702752 don't print multi-line messages multiple times 2024-08-18 11:38:24 -04:00
ffc04aaf7c silence compiler warnings 2024-08-18 11:02:01 -04:00
b7cf79a7b9 docs: start with howto section 2024-08-18 07:59:29 -06:00
0b54a0b1e3 docs: add :lammps: role
This allows to write :lammps:`command` for inline highlighting of LAMMPS
code.
2024-08-18 07:42:46 -06:00
05857315d8 docs: fixup Packages_list.rst table 2024-08-18 07:41:06 -06:00
271ae19fe7 must use overload wrapper on Qt5 2024-08-18 06:03:41 -04:00
9dddc7945d add missing file 2024-08-18 05:51:31 -04:00
98a7e045bb add smoothed plot to chart windows 2024-08-18 00:53:10 -04:00
e4b9da147a reintroduce facility to skip over outlier data due to corrupted data 2024-08-17 21:28:56 -04:00
87abcc6f0f mass replace 2 -> two, and 3 -> three where it can be safely detecte 2024-08-17 08:15:58 -04:00
435c8fdd32 Merge branch 'Edits/corrections-to-doc-pages-949---1220' of https://github.com/jrgissing/lammps into collected-small-fixes 2024-08-17 07:59:11 -04:00
9f6dbf6609 doc pages 949-1220 2024-08-17 00:28:57 -04:00
dd6c933269 remove normalization 2024-08-17 00:15:08 -04:00
3758d575d7 Update fix_balance.rst 2024-08-16 23:44:17 -04:00
8973d9a9ba avoid outlier data in plots from corrupted data when polling thermo data 2024-08-16 23:25:41 -04:00
a3990ad73f update chart window less frequently than updating data. interval set in preferences 2024-08-16 23:01:47 -04:00
6f7a48fa7a fix off-by-on bug preventing the "reset zoom" button for charts to work as expected 2024-08-16 23:00:41 -04:00
14d9e2b722 not using sphinx-design 2024-08-16 18:06:24 -04:00
78fe9585a4 populate dump style index by moving commands off of commands_list.rst 2024-08-16 17:58:55 -04:00
f0f8b49afb distribute additional LaTeX files for better looking manual 2024-08-16 17:57:48 -04:00
d0cfe2d00f fix LATBOLTZ example 2024-08-16 17:53:59 -04:00
b1654f11c1 fix issues with compute smd/vol and related docs 2024-08-16 17:53:39 -04:00
6573a8d882 fix typo 2024-08-16 17:52:58 -04:00
aa68d6aacd modernize access to fixes and flag incompatible wall fixes 2024-08-16 17:52:12 -04:00
d443e7dc8c cannot reference undocumented fix 2024-08-16 17:36:37 -04:00
12016be69a update log file 2024-08-16 17:36:19 -04:00
85d79e2aa5 fix typo 2024-08-16 16:56:22 -04:00
9d3c60b334 make sphinx happy 2024-08-16 16:38:02 -04:00
b6b2cc0667 Merge branch 'doc-updates' of https://github.com/jtclemm/lammps into collected-small-fixes 2024-08-16 16:34:30 -04:00
a2fa7d68d7 update docs to make wall fix restrictions more explicit 2024-08-16 16:29:45 -04:00
5111170d8f modernize access to fixes and flag incompatible wall fixes 2024-08-16 16:10:36 -04:00
9c2c8045cb docs: update speed section 2024-08-16 14:09:32 -06:00
15127ad2e2 Last batch of edits 2024-08-16 14:03:40 -06:00
2db37c9a35 fix issues with compute smd/vol and related docs 2024-08-16 14:58:47 -04:00
1fca4d94d0 docs: update Packages_details.rst 2024-08-16 12:54:57 -06:00
a625955143 docs: update commands section 2024-08-16 12:54:53 -06:00
4aaf7d7098 fix LATBOLTZ example 2024-08-16 14:51:29 -04:00
e4a654c7cd fix typo 2024-08-16 12:49:09 -04:00
635f6000eb improve error messages, especiall for compile time selected options 2024-08-16 12:49:04 -04:00
04fdfdadc6 tweak layout of commands lists 2024-08-16 00:46:44 -04:00
661e2e74fb make table widths explicit and tweak them to improve readability in PDF 2024-08-16 00:25:25 -04:00
8f366268bb whitespace 2024-08-15 22:55:07 -04:00
5a96d537de final set of bibliography updates 2024-08-15 22:52:42 -04:00
732be489a3 another error check 2024-08-15 19:48:17 -04:00
dca156eacc Edits to devleoper doc files 2 2024-08-15 17:12:39 -06:00
c68ea4fe1e better place for error check 2024-08-15 19:09:16 -04:00
27bf4d7974 bond/react: change where to reset mol IDs
needs to happen after topology changes communicated
2024-08-15 18:15:30 -04:00
a0b125f905 use automatic numbering 2024-08-15 16:46:06 -04:00
6b226f1ff2 display commands summary category list only with HTML 2024-08-15 16:45:53 -04:00
db603a380e Merge branch 'doc-pdf' of https://github.com/ndtrung81/lammps into collected-small-fixes 2024-08-15 13:37:11 -04:00
875ba17dd8 Edits/corrections to doc pages 2315-2589 2024-08-15 09:38:58 -05:00
68b808d3b5 precompute random numbers to avoid memory corruption with multi-threading 2024-08-15 00:25:28 -04:00
97026569a7 more bibliography updates 2024-08-14 23:45:59 -04:00
b97717eb46 update false-positives 2024-08-14 22:47:28 -04:00
298fb4eb3f Merge branch 'doc-pdf-GClavier' of https://github.com/Bibobu/lammps into collected-small-fixes 2024-08-14 22:30:19 -04:00
a796554096 use explicit column widths and tweak them for good display in PDF. HTML is unaffected 2024-08-14 22:29:19 -04:00
bc492afe1c tweak size of tables 2024-08-14 21:34:17 -04:00
e9f5ff4ea9 distribute additional LaTeX files for better looking manual 2024-08-14 17:54:46 -04:00
efc53d6439 docs: update run section 2024-08-14 15:29:21 -06:00
817f92d1fe docs: completed review of build section 2024-08-14 15:25:53 -06:00
26f9a84c4f doc: more build section updates 2024-08-14 14:15:48 -06:00
9ab9212612 Changed docstring of lammps_create_atoms to avoid weird formatting in
Manual.pdf
2024-08-14 21:57:56 +02:00
29ee719129 Formatting typo 2024-08-14 21:20:07 +02:00
cb03f45528 Some typos 2024-08-14 21:16:54 +02:00
9d5710ad53 some more documentation updates for bibliography 2024-08-14 14:57:53 -04:00
892d2dda96 Added mention of the MatSci forum in the Errors_common introduction
section after the section about mailing the devs.
2024-08-14 20:49:49 +02:00
a91e534eab Changed Germain Clavier's mail adress. 2024-08-14 19:57:48 +02:00
e52c739814 There are actually 3 scripts in the amber2lmp folder. Is the 99 format
version necessary?
2024-08-14 19:35:47 +02:00
30208f7173 Added a tinker section to Tools.rst. 2024-08-14 19:32:56 +02:00
c683489110 Added a valgrind section to Tools.rst. 2024-08-14 19:25:22 +02:00
10f32e0548 make index single-column 2024-08-14 13:12:44 -04:00
60fe24acb4 Edits to developer doc files 2024-08-14 10:41:52 -06:00
ffeb74c05f Adding py links to python scatter 2024-08-14 10:41:08 -06:00
f36f3ca26b make index single column 2024-08-14 12:18:26 -04:00
9b97e37f72 strip off common namespace components from index entries 2024-08-14 12:18:17 -04:00
9144f7abcf populate dump style index by moving commands off of commands_list.rst 2024-08-14 11:06:35 -04:00
6a91f2ec67 bibliography cleanup 2024-08-14 10:32:46 -04:00
9e6715504b fix typo and reformat 2024-08-14 06:59:57 -04:00
e0dad96e53 a couple more doc tweaks 2024-08-14 06:44:44 -04:00
7ecdea20eb fix issue with pair style srp that broke regression test 2024-08-14 05:16:45 -04:00
e1a0cc29be docs: update build section 2024-08-14 00:42:36 -06:00
cf0bc0e6bb docs: update install section 2024-08-14 00:03:10 -06:00
a7df221b14 correct indentation to comply with sphinx requirements 2024-08-14 01:46:18 -04:00
511b642a60 use math environments to typeset math expressions. make consistent. 2024-08-14 01:44:17 -04:00
308ecaef1c more doc reformatting 2024-08-14 01:34:42 -04:00
3c0397f8b9 Edits to modify doc files 2024-08-13 20:17:26 -06:00
5a55ca39bc convert lists with global values from fixes to use automatic numbering 2024-08-13 20:59:57 -04:00
4d1632b9f7 small doc fixes 2024-08-13 20:47:46 -04:00
35cf16b109 Update pair_srp.cpp 2024-08-13 18:49:53 -04:00
726311f8d2 Update pair_e3b.cpp 2024-08-13 18:48:35 -04:00
3321477c7f misc doc fixes to python section 2024-08-13 16:30:33 -06:00
70384d4344 syntax highlighting updates for added command 2024-08-13 17:57:11 -04:00
56d0d7c1c2 Updating log file 2024-08-13 15:28:06 -06:00
09af3e0fac initialize pointers in constructor. removed commented out code 2024-08-13 17:07:28 -04:00
fcaaca8304 step LAMMPS-GUI version to 1.6.8 2024-08-13 16:46:46 -04:00
8dd655dd1c Merge branch 'develop' into type-labels-for-pair_style_commands 2024-08-13 16:19:44 -04:00
5da737fd11 must not set tip4p atom and bond types when restarting from a restart file 2024-08-13 16:07:20 -04:00
a69356a02f Processed the ERROR line in the output, increased max_np to 4 when no reference log file exists 2024-08-13 15:01:29 -05:00
aa0b6c47c2 Merge pull request #4263 from akohlmey/collected-small-fixes
Collected small fixes and updates for LAMMPS and LAMMPS-GUI
2024-08-13 15:22:54 -04:00
0f792b0434 cast return value to void to indicate that we want to ignore the result 2024-08-13 12:36:43 -04:00
700a22b7cd Cleaned up and added check for "Total wall time" in the output 2024-08-13 11:03:35 -05:00
b479cf6c68 use old fashioned way to signal we want to ignore the return value 2024-08-13 11:38:22 -04:00
dd148557b5 enforce initialization 2024-08-13 11:34:11 -04:00
b459f33f5e avoid off-by-on overflow 2024-08-13 11:34:11 -04:00
6dad7f7396 forgot to flag development version. 2024-08-13 11:09:14 -04:00
063e6bcdc8 small tweaks 2024-08-13 11:06:04 -04:00
0d968374b8 small cleanup 2024-08-13 06:39:47 -04:00
164419bc1f cosmetic 2024-08-13 03:48:35 -04:00
bd2e1098ce avoid tiny memory leak 2024-08-13 03:44:30 -04:00
bb2c8d8da0 propagate font choices 2024-08-13 03:42:41 -04:00
206302a8e1 more consistent font selections by avoiding QApplication 2024-08-13 03:21:32 -04:00
8111697882 relax epsilong to accommodate MSVC++ 2024-08-13 01:08:57 -04:00
a5fe6543a7 check for errors of the geturl command and abort with message 2024-08-13 00:15:35 -04:00
17ea8d6381 update comment 2024-08-12 23:52:41 -04:00
4ee6910d98 add tests for 2NN MEAM potentials 2024-08-12 23:48:06 -04:00
1af5519379 update -restart2info and info docs 2024-08-12 22:57:21 -04:00
5bcfed5fce symlink potentials 2024-08-12 22:02:57 -04:00
a4bff8988b add missing potentials via symlinks 2024-08-12 21:55:13 -04:00
633ff19ab9 fix up some EFF inputs and create conventional log files 2024-08-12 21:51:59 -04:00
2115ac8971 use compliant box creation for 2d 2024-08-12 21:25:42 -04:00
8a77949db2 cleanly demo/test using restart files without leaving binary files behind 2024-08-12 21:19:46 -04:00
a1adf5d2d1 avoid mismatched new/deletep[] and malloc()/free() 2024-08-12 21:04:12 -04:00
24436e3463 fix typo 2024-08-12 11:11:32 -04:00
bbd72a8960 Switched the order of the checks for ERROR in the output to be first 2024-08-12 09:59:58 -05:00
462e9756ce fix box dimensions to comply with stricter requirement for 2d geometries 2024-08-12 10:54:00 -04:00
fe98a875bb must check more thoroughly 2024-08-12 10:26:56 -04:00
f98568c350 add completer for extra/* arguments to read_data 2024-08-12 00:57:50 -04:00
d759d8acf7 must have network access for the flatpak app 2024-08-11 23:40:17 -04:00
243b593426 add permission to desktop 2024-08-11 23:23:58 -04:00
accbd69c03 use more reliable conversion to const char * 2024-08-11 23:15:21 -04:00
9ab07ecba6 don't return temporaries 2024-08-11 22:55:37 -04:00
9080d6bfed add wizard for tutorial 2 2024-08-11 22:55:27 -04:00
23139db860 must use different conversion to const char* to avoid garbage output 2024-08-11 19:19:56 -04:00
c6e90eed9c update appdata for LAMMPS-GUI 2024-08-11 14:08:43 -04:00
231c3910ba fix up icon 2024-08-11 12:25:20 -04:00
c7f6d75856 add an "info" page to the wizard explaining the content of tutorial 1 2024-08-11 12:17:29 -04:00
cccb43bb9b turn off CA verification as it fails on Windows 2024-08-11 12:17:06 -04:00
9163c40b7d put the tutorial folders into the user's "Desktop" folder instead of home or application folder. 2024-08-11 12:16:46 -04:00
a92192d16b automatically include release version in binary package name 2024-08-11 09:58:21 -04:00
ccd77da836 integrate new tutorial logo 2024-08-11 09:31:09 -04:00
fedeeaef24 rework wizard for tutorial 1 to load manifest 2024-08-11 00:18:11 -04:00
6b0f529c0b Added more detailed output 2024-08-10 17:52:10 -05:00
a94fa9cd43 Merge branch 'develop' into collected-small-fixes 2024-08-10 11:54:50 -04:00
4b756e0b1c Merge pull request #4270 from lammps/fix-store-global-bug-fix
Fix a bug when restarting with stored data in fix STORE/GLOBAL for global vectors or arrays
2024-08-10 11:29:06 -04:00
bdc08a99fe backport fix STORE/GLOBAL bugfix PR #4270 2024-08-10 10:23:45 -04:00
22f25f0c00 whitespace 2024-08-10 10:13:36 -04:00
1617870fc3 Extracted the compiler name from log file names (g++, or intel) 2024-08-09 23:43:28 -05:00
f5b1ec668e enforce using the same style wizard dialogs on all platforms 2024-08-09 22:41:24 -04:00
fc6fe9e740 add missing header 2024-08-09 21:16:34 -04:00
e2fede9076 sync write_dump with upstream to avoid issues. 2024-08-09 21:07:03 -04:00
423cf977fa wizard for tutorial 1 is almost complete 2024-08-09 18:30:24 -04:00
658cadceea add helper to purge directories recursively 2024-08-09 18:29:38 -04:00
f4fa78cf03 Fixed issues with detecting the basename of input (e.g. in.min.box) and the log file 2024-08-09 17:17:37 -05:00
b5929be883 Merge conflicts 2024-08-09 15:38:19 -06:00
8f8ff6f636 updating fix add/heat in example 2024-08-09 15:36:27 -06:00
a7c6b0ee42 Fixing errors in add heat 2024-08-09 15:36:27 -06:00
07ac930733 Typo 2024-08-09 15:36:27 -06:00
7ce2919092 removed debug info 2024-08-09 14:10:15 -06:00
a294a970e3 ensure restart with global data resets the vector/array sizes 2024-08-09 14:01:41 -06:00
d4b6bce4af grow a bit again 2024-08-09 12:22:18 -04:00
76fbece9ee clarification 2024-08-09 09:27:02 -04:00
28dc58a389 add 2NN MEAM potential files for High-Entropy Alloys 2024-08-08 21:56:58 -04:00
800335fe2f whitespace 2024-08-08 21:47:47 -04:00
48cde7c566 whitespace 2024-08-08 21:47:26 -04:00
9ce75ac45a remove menu entry to open web tutorial 2024-08-08 21:40:39 -04:00
2edc8dc1ac do not copy internal "noinit" keyword to clipboard 2024-08-08 21:40:20 -04:00
14583e5fb6 backport improved fix from upstream 2024-08-08 21:36:52 -04:00
ab2558db15 improve error handling and reporting for MEAM user parameter file 2024-08-08 21:28:38 -04:00
5fa0c4951a sync with upstream 2024-08-08 21:28:27 -04:00
751d7f0197 improve error handling and reporting for MEAM user parameter file 2024-08-08 21:27:44 -04:00
54dc7776f2 small grammar tweak 2024-08-08 21:27:06 -04:00
444e85d46c convert e3b and srp 2024-08-08 18:57:53 -04:00
c12974f006 convert rest of tip4p 2024-08-08 18:13:19 -04:00
7f2267041e make smaller 2024-08-08 15:30:28 -04:00
23fb11736a rewrite 2024-08-08 15:30:20 -04:00
bd0574c11d Merge remote-tracking branch 'github/develop' into collected-small-fixes 2024-08-08 13:43:25 -04:00
62665dd079 Merge pull request #4266 from akohlmey/geturl-command
New geturl command to download files for LAMMPS inputs on demand
2024-08-08 13:42:21 -04:00
4ad7740676 fix up cut-n-paste error 2024-08-08 11:41:54 -04:00
dbf9c75509 some more atom info in "info system" 2024-08-08 11:22:02 -04:00
eac7c6a8ed rephrase 2024-08-08 11:12:30 -04:00
6f3056511b follow common convention for manual pages documenting multiple styles 2024-08-08 05:00:01 -04:00
45e90ac2f8 must not access thermo class, if not yet created 2024-08-08 04:37:59 -04:00
4f0e99793f refactor tip4p/long 2024-08-08 00:23:33 -04:00
1b29dc4920 refactor lj/long/tip4p/long 2024-08-08 00:19:12 -04:00
6203738dcb proposed solution
bit of trickery to allow type labels to be used before they are defined
2024-08-08 00:05:20 -04:00
b9e7c9534b switch branch 2024-08-07 22:47:25 -04:00
da26b69d8d partial implementation of wizards to start tutorials 2024-08-07 22:44:10 -04:00
03bc0768cd try to free resources allocated by inspecting restart files 2024-08-07 17:30:55 -04:00
6bc0cae2d4 fix up fix colvars docs 2024-08-07 16:07:58 -04:00
6544861bd3 document large restart file warning 2024-08-07 16:01:02 -04:00
323ecdd891 add confirmation dialog with warning when trying to inspect a large restart 2024-08-07 15:57:42 -04:00
7f8bcbd93a document "verbose" keyword to "geturl" 2024-08-07 14:01:23 -04:00
69294ef343 add "verbose" option for debugging which will divert libcurl logging to the screen 2024-08-07 13:08:35 -04:00
af68051981 switch libcur to verbose output 2024-08-07 12:41:32 -04:00
c8ba358f67 more debugging github runner for macos 2024-08-07 12:20:35 -04:00
cdab8d09ad need to update LAMMPS help message, too 2024-08-07 12:12:45 -04:00
a8bb296a17 switch to verbose mode to debug GitHub runner. 2024-08-07 11:15:13 -04:00
c47a32206b add versionadded tags 2024-08-07 10:47:58 -04:00
f197ce3165 expose new introspection to library interfaces for consistency 2024-08-07 10:37:20 -04:00
937c17f3b8 add tests for geturl command 2024-08-07 10:27:48 -04:00
85f322e4f2 add introspection support for -DLAMMPS_CURL 2024-08-07 10:27:19 -04:00
fe9c9cc77d fix highlighting bug and add geturl 2024-08-07 09:38:10 -04:00
dcb3871e58 doc integration of gerurl 2024-08-07 09:37:49 -04:00
3fa48dfa34 build system integration of geturl 2024-08-07 09:37:33 -04:00
b645a0c4b1 new command geturl 2024-08-07 09:37:09 -04:00
c4510ba1ed type label support for pair_write 2024-08-06 23:51:49 -04:00
3833309725 type labels for pair_srp bond type 2024-08-06 23:37:14 -04:00
e605c1a62e type label for pair e3b oxygen 2024-08-06 23:27:34 -04:00
288f0a672d type labels for hbond pair styles K value 2024-08-06 23:13:44 -04:00
de7fdf99a3 type label for pair_coeff atm K value 2024-08-06 22:54:16 -04:00
530d6b5869 Merge remote-tracking branch 'github/develop' into collected-small-fixes 2024-08-06 18:39:36 -04:00
b25cb2adff Merge pull request #4261 from Colvars/colvars-update
Colvars update
2024-08-06 18:01:35 -04:00
b7bb8083ed implement -restart2info command line flag and document it 2024-08-06 17:14:46 -04:00
40b2b08f23 avoid uninitialized access and get a "clean" core dump if the wrong pointer is used. 2024-08-06 16:08:41 -04:00
4818aec25b cosmetic 2024-08-06 15:50:50 -04:00
2344b7bcc3 enable and apply clang-format 2024-08-06 15:34:16 -04:00
ce3b3b2950 remove dead code 2024-08-06 15:30:57 -04:00
8194a9fd2f do not confuse static code analysis 2024-08-06 15:22:29 -04:00
19b7d3eac6 mention LAMMPS-GUI as visualizer option and tool to general dump image commands 2024-08-06 11:16:20 -04:00
0fe1f2c2be Merge branch 'develop' into plumed-plugin 2024-08-06 10:58:15 -04:00
8118d8e829 Merge pull request #2 from akohlmey/colvars-update 2024-08-06 15:05:06 +02:00
5f86046a92 document "Inspect Restart" feature 2024-08-06 06:36:54 -04:00
69ac247088 generate data file from restart with "pair ij" flag 2024-08-06 06:18:20 -04:00
543ceaaf89 when using "write_data" with "noinit" and "pair ij" generate missing pair coeffs by calling Pair::init_one() 2024-08-06 06:17:44 -04:00
494660700a reduce default size of image viewer 2024-08-06 00:59:23 -04:00
f21dec8b06 Fixed issues with empty output, thus no Step nor Loop 2024-08-05 23:40:05 -05:00
f956fb1059 Update pair_coul.rst 2024-08-06 00:29:00 -04:00
5d5303b59e wrong link 2024-08-06 00:21:25 -04:00
bba2ec9adf type labels for MOLECULE tip4p styles 2024-08-06 00:08:11 -04:00
2627d90adf docs for FEP tip4p type labels 2024-08-06 00:04:16 -04:00
1753343727 copy/paste error 2024-08-06 00:01:35 -04:00
ca0e155b9d type labels for FEP tip4p styles 2024-08-05 23:56:47 -04:00
0b87199e4a docs for tip4p type labels update
lj/cut and lj/long
2024-08-05 23:50:09 -04:00
6492ef1320 type labels for other KSPACE pair_styles 2024-08-05 23:32:45 -04:00
ea3fb32805 comm info is more distracting than useful 2024-08-05 23:11:38 -04:00
654fd05f0e Merge branch 'develop' into collected-small-fixes 2024-08-05 22:43:50 -04:00
46c5ff624c follow the LAMMPS programming style more closely 2024-08-05 22:32:55 -04:00
445020359b simplify using LAMMPS_NS::utils functions 2024-08-05 22:13:20 -04:00
e5957ccc19 recreate example logs with new colvars version 2024-08-05 22:12:30 -04:00
04eb6c421d remove class member "me" and apply clang-format 2024-08-05 21:47:12 -04:00
a42d632aed Merge branch 'develop' into colvars-update 2024-08-05 21:38:57 -04:00
843e678a78 Merge pull request #4255 from akohlmey/collected-small-changes
Collected small changes and fixes
2024-08-05 20:53:15 -04:00
ae39fc5b21 fix logic bug 2024-08-05 20:24:38 -04:00
0216692698 add restart file inspector showing system info, data file, and snapshot image 2024-08-05 20:04:44 -04:00
3f79b7e493 Update pair_lj_cut_tip4p_long.cpp 2024-08-05 19:52:03 -04:00
7561e05218 output timestep info as part of the system info 2024-08-05 19:39:57 -04:00
89debb2141 add a hidden "noinit" flag to write_dump that works the same as for write_data 2024-08-05 19:31:21 -04:00
d9e0847c3b update read_restart docs about timestep info 2024-08-05 19:27:36 -04:00
9fa2ffa659 Merge pull request #4259 from jrgissing/add_some_more_type_label_support,again
Type label support for dump image, movie
2024-08-05 19:22:55 -04:00
133dee9ac1 Update Colvars library to version 2024-06-04 2024-08-06 01:07:43 +02:00
278accd9ea Update FixColvars to expand usage of fix_modify commands
See https://github.com/Colvars/colvars/pull/418

Also moving inthash code to a separate file to simplify future refactoring
2024-08-06 01:05:51 +02:00
72a0992054 Propagate OpenMP flags to Colvars library 2024-08-06 00:57:12 +02:00
e599663b2b Update dump_image.rst 2024-08-05 18:11:53 -04:00
c6eb1fb9dd Allowed to skip subfolders from input lists by commenting them out 2024-08-05 16:28:23 -05:00
54a5d5e605 improve flatpak building so it sets up the required repo automatically as well 2024-08-05 14:23:54 -04:00
b094113e7a update TODO list 2024-08-05 08:58:31 -04:00
4b50356aa8 step LAMMPS-GUI version number 2024-08-05 08:55:34 -04:00
52416afd95 remove comment 2024-08-05 08:55:20 -04:00
f20aa6271c also support bcolor, bdiam
(type label support)
2024-08-04 19:35:02 -04:00
a0f4da37e9 docs for type label support 2024-08-04 19:09:18 -04:00
6ecaa7c7ba type label support for acolor, adiam
for dump_image, movie
2024-08-04 19:02:30 -04:00
6e1c2bde4d add missing icon file 2024-08-04 18:49:38 -04:00
66621a99fd update docs for LAMMPS-GUI to include recent additions 2024-08-04 18:48:35 -04:00
fd8a5d3e88 make default choice of image shininess selectable in preferences 2024-08-04 18:25:46 -04:00
fbc505c7c6 add shininess toggle button to image viewer, move buttons to second line on top 2024-08-04 17:51:34 -04:00
6671e3b410 Fixed valgrind tests with 1 proc and typo in the config file 2024-08-04 15:26:54 -05:00
d470919a44 implement auto-save on run and quit 2024-08-04 11:27:03 -04:00
1d1b448e18 update Linux installation docs to describe flatpak installation 2024-08-04 06:34:07 -04:00
e1275baa99 update LAMMPS-GUI TODO list 2024-08-03 23:09:12 -04:00
081169b239 automatically switch between showing stable, release, latests doc pages 2024-08-03 14:35:37 -04:00
14b552372d update help index table 2024-08-03 13:38:33 -04:00
92b33b3c07 export git and LAMMPS version strings through library interface 2024-08-03 13:33:21 -04:00
7c9703b416 update LAMMPS-GUI docs for changing the default of "Reformat on 'Enter'" 2024-08-03 09:16:34 -04:00
950237105d remove redundant entry 2024-08-03 08:58:38 -04:00
c6e03d2aa4 disable re-indent on return by default 2024-08-03 08:28:16 -04:00
4dfc15151a cap the maximum number of threads used by default at 16 2024-08-03 08:26:54 -04:00
70abf60d73 Merge branch 'develop' into plumed-plugin 2024-08-02 23:13:37 -04:00
c60c42cede correct order of initializater list 2024-08-02 23:11:56 -04:00
1096da2d01 plug memory leaks 2024-08-02 18:17:14 -04:00
0367f3ed07 avoid memory leaks from extracting scalar data from fixes 2024-08-02 18:17:01 -04:00
b41b2c9bfc must destroy before allocate to avoid leaking 2024-08-02 17:44:38 -04:00
d3919be102 don't leak file handle 2024-08-02 17:41:13 -04:00
a905c9fd32 make sure virial array is initialized in the constructor to avoid uninitialized access 2024-08-02 17:18:09 -04:00
0abc4f3464 initialize class data 2024-08-02 17:17:42 -04:00
859cbc90ef plug memory leaks 2024-08-02 17:17:23 -04:00
d03ca368b5 add a couple more suppressions 2024-08-02 16:03:12 -04:00
423ca92d39 use try/catch to delete dump on dump_modify error and then rethrow exception 2024-08-02 15:59:25 -04:00
332157fa9b fix typo 2024-08-02 15:40:40 -04:00
75061d4b9d docs: expand author list 2024-08-02 12:54:03 -06:00
b0bc154ab8 must provide branch name when building flatpak bundle 2024-08-02 12:29:15 -04:00
51e7e91c6d Use (short) LAMMPS version string as default branch for flatpak 2024-08-02 12:10:36 -04:00
b5460061be more details about running CLI utils in the flatpak bundle 2024-08-02 11:50:15 -04:00
1f7ef3e790 add target for creating a flatpak bundle to CMake 2024-08-02 11:46:31 -04:00
e73e522e40 update docs for installing LAMMPS-GUI 2024-08-02 10:19:42 -04:00
36a691e42e more small tweaks 2024-08-02 04:31:15 -04:00
d903026bd2 small updates and corrections 2024-08-02 04:16:05 -04:00
38611afeba add support for building LAMMPS-GUI as flatpak 2024-08-02 03:15:55 -04:00
f8a0e1524e enforce initialization 2024-08-01 22:12:40 -04:00
9e1bf78201 enforce initialization 2024-08-01 22:12:18 -04:00
6b9e9ae5d8 remove commented out code 2024-08-01 21:48:16 -04:00
742bb3aae2 silence warnings 2024-08-01 18:46:48 -04:00
7a3ba6027b add option to skip death tests for use with valgrind checking of unit tests 2024-08-01 17:38:12 -04:00
592bd770a8 flag as update 4 2024-08-01 10:52:46 -04:00
db230cd89e step LAMMPS-GUI patch level 2024-08-01 10:17:16 -04:00
13c56473a2 make sure a dump with ID WRITE_DUMP does not exist (e.g. as a leftover from a previous crash) 2024-08-01 10:16:25 -04:00
a775cf4136 avoid error in image creation when sigma is zero 2024-08-01 10:02:42 -04:00
a41d20e412 make sure a dump with ID WRITE_DUMP does not exist (e.g. as a leftover from a previous crash) 2024-08-01 09:41:38 -04:00
3d7088a9d9 make LAMMPS python module compatible with mpi4py 4.x.x 2024-08-01 03:46:20 -04:00
252c8483c3 make LAMMPS python module compatible with mpi4py 4.x.x 2024-08-01 03:45:45 -04:00
18b3f6b4d4 Merge pull request #4250 from akohlmey/collected-small-fixes
Collected small changes and fixes
2024-07-31 18:21:23 -04:00
ff2639a196 Merge pull request #4252 from k-harris27/fix-empty-label
Fix reading empty type label string in restart
2024-07-31 17:37:32 -04:00
2f6567ad76 Fix reading empty type label string in restart 2024-07-31 10:16:19 -04:00
8bc38709a4 raise minimum required version of clang-format and extend search to newer versions 2024-07-31 09:10:43 -04:00
9c9fac49d7 Fix reading empty type label string in restart 2024-07-31 13:39:41 +01:00
5dff36aa43 apply clang-format 2024-07-31 06:49:55 -04:00
c540252d8b sphinx 7.4.x is the last series of versions compatible with current breathe 2024-07-30 22:31:20 -04:00
910bb4e111 sphinx 7.4.x is the last series with compatbility for current breath 2024-07-30 22:29:34 -04:00
7e3d613c80 set to zero on underflow to avoid std::stod() throwing an out-of-range exception 2024-07-30 22:24:59 -04:00
cc1e0ac9c5 replace atoi() with std::stoi() 2024-07-30 21:50:44 -04:00
d68bc9f628 replace remaining calls to atof() with std::stod() 2024-07-30 21:02:55 -04:00
cb00839357 Merge branch 'develop' into plumed-plugin 2024-07-30 20:30:21 -04:00
a54e67bf1c Merge pull request #4242 from akohlmey/collected-small-fixes
Collected small fixes and updates for LAMMPS and LAMMPS-GUI
2024-07-30 20:04:19 -04:00
6e7e2b7aee backport ValueTokenizer improvements from upstream 2024-07-30 16:43:46 -04:00
3c6adde66b replace atoi()/atof() with std::stoX() 2024-07-30 16:25:39 -04:00
7b2c7e0df8 new code owner 2024-07-30 16:17:24 -04:00
5016a0848f make compatible with per-type and per-atom masses 2024-07-30 16:16:05 -04:00
1254d579f7 reduce compiler warnings, remove dead code, follow LAMMPS conventions more closely 2024-07-30 16:13:06 -04:00
701280a648 lower GSL version requirement for compatibility with more (Linux) systems 2024-07-30 15:20:48 -04:00
b6834f33c0 modernize, more selective argument checking, better error messages 2024-07-30 14:21:56 -04:00
7decc33327 Fixed mpiexec valgrind command line, enforced a single proc run 2024-07-30 12:05:47 -05:00
75b09ed143 discuss in more detail MPI support in PyLammps. Some small improvements in MPI support
MPI related changes are:
 - Raise exception in PyLammps.eval() if called from MPI rank
 - Print (some) informational and warning messages only from MPI rank 0
2024-07-30 11:27:31 -04:00
a5a0620dca When KOKKOS has been compiled with GPU support the GPU *must* be used 2024-07-30 10:35:15 -04:00
bd2e071ef0 clarify that hybrid styles also do not write coeff data to data files 2024-07-30 08:59:51 -04:00
208216ba3d Merge branch 'kokkos-amd-gfx1103-support' into collected-small-fixes 2024-07-30 08:46:22 -04:00
cb6e71b72f fix typo 2024-07-30 08:46:01 -04:00
1c40cd1c22 avoid segfault 2024-07-30 08:45:01 -04:00
0ea45d89d9 clarify that all hybrid styles do not write Coeff sections 2024-07-30 05:45:24 -04:00
620af2599b use std::stoX() functions 2024-07-30 03:57:23 -04:00
92cbbaab6a no longer used 2024-07-30 03:54:47 -04:00
a75862088a replace atof() with std::stod() 2024-07-30 03:43:26 -04:00
f0e9d0c96d update comment 2024-07-30 03:39:03 -04:00
5082d15844 use std::stoXX() functions and check for incomplete conversions and exceptions 2024-07-30 03:38:53 -04:00
d2b12372f1 not used anymore 2024-07-30 01:31:56 -04:00
9aadb16c06 not used anymore 2024-07-30 01:31:38 -04:00
1035dcf735 get rid of ATOBIGINT 2024-07-30 01:18:22 -04:00
95513838da fix typo 2024-07-30 00:54:12 -04:00
361b8c25c4 use c++11 function to convert strings to numbers 2024-07-30 00:34:12 -04:00
d5e57ac02d reimplement using C++11 2024-07-30 00:33:44 -04:00
60d118a41a update to current list of compression tools 2024-07-29 20:13:27 -04:00
1d5aa19e4f document on-the-fly decompression for file viewer 2024-07-29 20:13:09 -04:00
f3c1697b10 support reading compressed files, same as LAMMPS itself. 2024-07-29 20:01:06 -04:00
9af53e3af8 portability 2024-07-29 20:00:30 -04:00
afcf00c399 update 2024-07-29 19:59:36 -04:00
6eb3679468 add commented out commands for visualization with LAMMPS-GUI 2024-07-29 19:59:22 -04:00
e1f17cec7d update list of supported devices 2024-07-29 17:11:51 -04:00
41254b26c7 backward compatibility not needed 2024-07-29 17:01:34 -04:00
2f2412bd95 correctly use versionchanged command 2024-07-29 15:24:05 -04:00
6bb89f6a14 Merge branch 'develop' into collected-small-fixes 2024-07-29 15:17:55 -04:00
04f7aaca26 Merge pull request #4243 from jtclemm/sph-update
Cleaning up and fixing bug in SPH package
2024-07-29 15:16:48 -04:00
a00b396159 re-enabled unit test 2024-07-29 15:12:16 -04:00
dc7768105a Merge remote-tracking branch 'github/fix_issues' into collected-small-fixes 2024-07-29 15:10:39 -04:00
36bec29736 Revert "temporarily remove non-compiling KOKKOS sources"
This reverts commit 4a2901bd5e.
2024-07-29 15:08:52 -04:00
490f3e6890 fix compilation 2024-07-29 15:07:51 -04:00
ddf6dd50cf Merge pull request #4224 from lab-cosmo/bugfix/parallel-ipi
Bugfix/parallel ipi
2024-07-29 15:06:49 -04:00
9c937113fd use strtoll() and strtod() instead of atoi(), atol(), atoll() and atof() 2024-07-29 14:45:43 -04:00
0b4dad1335 Made progress status as a whole string 2024-07-29 12:12:23 -05:00
e870217507 Handled cases to skip when resuming from last progress 2024-07-29 11:45:22 -05:00
d84b12ea63 define EPSILON consistently as static constexp 2024-07-29 11:57:46 -04:00
eeaa1eadeb add test for value tokenizer to check limits 2024-07-29 11:57:09 -04:00
abb19890f9 Fix another compiler warning 2024-07-29 11:46:22 -04:00
b773c12284 Tweak comment 2024-07-29 11:46:11 -04:00
d81bf66fe1 Fix issues with new KOKKOS hybrid topo styles 2024-07-29 09:29:40 -06:00
a4ad184d37 Fix Makefile build for UF3 with KOKKOS 2024-07-29 09:29:11 -06:00
2ff43fc8bd Fix compile issue 2024-07-29 09:27:28 -06:00
204fc79211 Remove unused var 2024-07-29 09:27:09 -06:00
3155b6f361 Avoided rewriting progress with completed runs, improved parsing log.lammps to yaml 2024-07-29 09:41:13 -05:00
20a1fc6a78 apply clang-format 2024-07-29 01:25:12 -04:00
8a13db457a small fix 2024-07-29 01:22:03 -04:00
7c4b1bdc4a update include files according to include-what-you-use testing 2024-07-29 01:18:08 -04:00
4d8e03e2ae document recenter option 2024-07-29 00:16:31 -04:00
15c2c59d0c add button to recenter the image on the currently selected group's COM 2024-07-29 00:06:53 -04:00
aa3c287999 add wrapper to extract value of equal style and compatible variables 2024-07-29 00:05:53 -04:00
7d69535d78 step LAMMPS-GUI version number to 1.6.5 2024-07-29 00:04:54 -04:00
84edc5ac81 correct documentation 2024-07-29 00:04:31 -04:00
08d47d389d remove include obsoleted in Qt6 2024-07-28 22:16:44 -04:00
e6a708d253 add support for AMD Phoenix APUs with HIP 2024-07-28 20:49:17 -04:00
4a2901bd5e temporarily remove non-compiling KOKKOS sources 2024-07-28 20:46:44 -04:00
d101fecf4d Fixed bugs with num_runs undefined 2024-07-28 16:47:56 -05:00
4f46b07d35 make more similar to pair style sw/kk 2024-07-28 16:22:46 -04:00
b9b62822ee add missing "override" property 2024-07-28 16:00:57 -04:00
b42ccf3a0f don't check for omp.h if the compiler identifies as Clang since the CMake check seems broken 2024-07-28 12:42:05 -04:00
26aba2c314 silence compiler warnings 2024-07-28 11:49:27 -04:00
5501f608f5 fix out of bound memory access bug detected by hipcc 2024-07-28 11:25:15 -04:00
ffdf499cb1 fix typo 2024-07-28 11:24:46 -04:00
3654f822f3 Merge remote-tracking branch 'github/develop' into collected-small-fixes 2024-07-28 03:31:08 -04:00
122e9176e7 Merge pull request #4240 from akohlmey/more-typelabel-support
Add some more typelabel support
2024-07-28 03:30:36 -04:00
45795acdbf import bugfix for dihedral style charmmfsw from PR #4190. Test passes. 2024-07-28 03:28:59 -04:00
517fadd167 skip kokkos_omp tests for now since they are failing 2024-07-27 21:11:21 -04:00
83297a1071 extend force style testers for bonded interactions to check KOKKOS/OpenMP
selectively imported from PR #4190 by @alphataubio
2024-07-27 21:06:52 -04:00
a5d0efcd5b make test environment consistent across all force tests 2024-07-27 20:42:42 -04:00
aa32273aa1 Allowed to skip input scripts whose name matches patterns, handled cases where runs completed but log.lammps has irregular format (multi, in.tmd) 2024-07-27 17:10:23 -05:00
a3775f785a add some installation info 2024-07-27 08:55:02 -04:00
6eb6d972e9 more doc tweaks 2024-07-27 04:38:20 -04:00
ab0da442a4 Handled cases where log files have different thermo ouput columns than the reference log file (in.hyper.local) in subsequent runs 2024-07-26 23:51:23 -05:00
bdbb391364 add Neighbor::get_xhold() required by fix ipi bugfixes 2024-07-27 00:42:45 -04:00
8b0aaa814e small tweak to refer to LAMMPS-GUI more consistently 2024-07-27 00:19:21 -04:00
ea67e3104d backport bugfixes for fix ipi from development branch 2024-07-26 23:35:14 -04:00
06563b8255 Merge remote-tracking branch 'github/develop' into collected-small-fixes 2024-07-26 22:48:26 -04:00
7396426963 Merge pull request #4183 from alphataubio/spica-kk
Add Kokkos version of spica pair and angle styles
2024-07-26 22:45:47 -04:00
08fdad12e8 fix typo and rewrap 2024-07-26 19:47:10 -04:00
a972a282a7 Adding remap v restriction to doc files 2024-07-26 17:43:04 -06:00
2a99b9957d simplify and shorten charmmfsw example. add reference logs. 2024-07-26 19:34:23 -04:00
e7d338573f Merge branch 'develop' into spica-kk 2024-07-26 19:10:46 -04:00
cabde6549e add backward compatibility with inputs created before the rename of SDK to SPICA 2024-07-26 19:08:59 -04:00
6c94fb5eea Backport of PR #4243 by @jtclemm which fixes issue #3831 2024-07-26 18:41:20 -04:00
ca25071353 include generic accelerated style blurb 2024-07-26 18:33:07 -04:00
06767886de Merge branch 'develop' into collected-small-fixes 2024-07-26 18:32:49 -04:00
1014cd1e0e Merge pull request #4211 from megmcca/kk_hybrid_topo_a-d-i
Port hybrid angle, dihedral, improper topology styles to Kokkos
2024-07-26 18:31:19 -04:00
343d600410 make docs consistent with rest of manual and rephrase fix shake changes 2024-07-26 17:23:46 -04:00
50bf022946 Improved error messages in the log files 2024-07-26 15:19:01 -05:00
e0857ad558 Handled more cases with ERROR in log.lammps 2024-07-26 14:11:43 -05:00
e28de32a77 update docs, kk accel style 2024-07-26 13:06:17 -06:00
e317c18e1e whitespace 2024-07-26 12:57:22 -06:00
ce42418efc Merge branch 'lammps:develop' into kk_hybrid_topo_a-d-i 2024-07-26 12:56:27 -06:00
90d98d9a92 Added a config file for valgrind tests 2024-07-26 12:26:37 -05:00
5bcf124431 Converted the return results from iterate() into a dict, processed memory leaks if valgrind is used 2024-07-26 12:23:58 -05:00
59ef492982 Handled a few cases with mismatched columns in thermo output 2024-07-26 09:51:19 -05:00
a2f461c688 fix cut-n-paste doc issue 2024-07-26 10:35:07 -04:00
c0c69af709 update LAMMPS-GUI howto docs 2024-07-26 10:19:15 -04:00
7bae7ea2f7 add export to YAML to chart viewer 2024-07-26 10:04:39 -04:00
c8818a16c5 Add menu entries to open LAMMPS tutorial website 2024-07-25 22:14:06 -04:00
df4ae41283 update docs for added typelabel support 2024-07-25 21:25:14 -04:00
c343287f2c add conditional typelabel support 2024-07-25 21:15:16 -04:00
1a034af7d5 fix logic bug 2024-07-25 21:14:38 -04:00
68a6bc0693 Adding missing header file 2024-07-25 18:15:34 -06:00
3deffb0dfd typo 2024-07-25 18:10:27 -06:00
d43e87bce1 Missing word 2024-07-25 17:54:52 -06:00
49b377fc3d Adding errors to unpatched uses of vest with vremap 2024-07-25 17:51:48 -06:00
6abbbdba6c Patching vremap in SPH 2024-07-25 17:10:23 -06:00
e02ad1a3b2 Cleaning up SPH package, minor bug fixes 2024-07-25 17:02:22 -06:00
1a344853e0 Added more info on the number of input scripts per subfolder 2024-07-25 16:49:53 -05:00
1e41dfaeb9 Adding movie references to BPM/RHEO 2024-07-25 15:18:45 -06:00
84bfbe7936 make compatible with old and new style headers and make more specific 2024-07-25 17:05:52 -04:00
891e97ecf5 cosmetic 2024-07-25 17:00:35 -04:00
26503c948a improve detection of triclinic box trajectory files 2024-07-25 16:59:41 -04:00
ff27bb8865 add missing space 2024-07-25 16:59:13 -04:00
0c5b9175d6 Fixed an issue with num_ref_runs not specified before use 2024-07-25 13:26:47 -05:00
590c7dcf8f Merge branch 'lammps:develop' into spica-kk 2024-07-25 13:54:44 -04:00
f84b18170f Reported different outcomes for the test runs, priotized running the input first, then processing the output, mem leaks and finally numerical checks 2024-07-25 12:19:00 -05:00
13fabe445e add check to detect whether there are overlaps between type labels and fix shake keywords 2024-07-25 09:07:23 -04:00
a278a6f951 restore original fix shake code 2024-07-25 09:02:47 -04:00
870306dd04 use preferred comparison method 2024-07-25 08:49:03 -04:00
e844ce3ddf re-align ReaxFF OpenMP version of ValidateLists with serial version 2024-07-25 08:48:43 -04:00
1fa18a45a8 re-align ReaxFF OpenMP version of ValidateLists with serial version 2024-07-25 08:46:39 -04:00
eb5f45dfe7 Fixed bugs with progress file close 2024-07-24 23:50:18 -05:00
f254af2bab Updated logger and output format 2024-07-24 23:11:54 -05:00
90291a9b3a Merge pull request #4237 from Yi-FanLi/pimd_langevin_lj
fix pimd/langevin: improve usage of lj reduced units
2024-07-24 18:58:12 -04:00
1c42a06f1b use enums instead of numbers. 2024-07-24 15:59:55 -04:00
93bab0cfcc simplify parser for fix shake/rattle options and add typelabel support 2024-07-24 10:40:59 -04:00
20fb6a4279 add typelabel support to neigh_modify exclude type 2024-07-24 10:21:20 -04:00
9a60dbbf31 apply version tag 2024-07-24 09:35:12 -04:00
732786d178 use preferred comparison method 2024-07-24 08:57:47 -04:00
92d07ceba4 Backport of commit 8bba2d12ec : Fix bug in GPU/CPU overlap 2024-07-24 08:28:17 -04:00
fbd37bd5e9 Merge pull request #4235 from akohlmey/collected-small-fixes
LAMMPS GUI improvements
2024-07-24 00:04:24 -04:00
61c0001286 Merge pull request #4239 from lammps/occasional-neighbor-bug-fix
Bug fix for determining when an occasional neighbor list needs rebuilding
2024-07-23 22:37:51 -04:00
992b279b3a Merge branch 'develop' into pimd_langevin_lj 2024-07-23 21:34:30 -04:00
eaf875187c Fix bug in GPU/CPU overlap 2024-07-23 19:47:26 -04:00
ce0e513d8c Remove unused function 2024-07-23 17:42:23 -06:00
8bba2d12ec Fix bug in GPU/CPU overlap 2024-07-23 17:41:48 -06:00
fe90838843 fix typo in comment 2024-07-23 19:03:58 -04:00
c1c8525f4b fix typo in comment 2024-07-23 19:03:43 -04:00
91931f0ea2 Merge remote-tracking branch 'github/develop' into collected-small-fixes
# Conflicts:
#	doc/src/Tools.rst
2024-07-23 17:04:36 -04:00
afbcbc2dd6 Merge pull request #4238 from akohlmey/remove-lammps-shell
Remove lammps-shell tool as it has been superseded by LAMMPS-GUI
2024-07-23 14:58:40 -04:00
1bde65c1f3 Updated README with example uses, added progress file option 2024-07-23 10:01:29 -05:00
dbc1582c86 Reformated the screen output 2024-07-23 09:37:01 -05:00
b3c2083ff1 Split the input list before quitting for dry run 2024-07-23 08:53:42 -05:00
2d0aa2daf5 backport of occasional neighbor list rebuilt bugfix 2024-07-23 05:44:42 -04:00
0210341489 whitespace 2024-07-23 05:09:33 -04:00
b459d0c9b9 apply clang-format 2024-07-22 23:58:10 -04:00
ed3ab86ba7 typo 2024-07-22 18:57:53 -04:00
d0528f7f02 Removing more obsolete args from nlist build_one() 2024-07-22 16:45:51 -06:00
4a783b74be Split the subfolders into num_workers and write out the separate text files 2024-07-22 16:53:12 -05:00
572c511830 sanity check that occasionsal list is assigned to an NPair class 2024-07-22 14:37:13 -06:00
c6b7143863 whitespace around comment 2024-07-22 14:12:52 -06:00
445251d569 simplify logic for checking whether occasional neight list needs to be rebuilt 2024-07-22 14:11:04 -06:00
244db720b9 the list of subfolders can be loaded from a text file 2024-07-22 14:58:50 -05:00
b551a8197f remove extra iteration 2024-07-22 10:57:49 -06:00
409e795027 remove extra iteration 2024-07-22 10:45:31 -06:00
9fd21fa065 Remove lammps-shell tool as it has been superseded by LAMMPS-GUI 2024-07-22 06:43:10 -04:00
70ee5495a2 mention dump_modify binary for VTK style dumps 2024-07-22 06:14:31 -04:00
1f14f36708 step patch level version 2024-07-21 19:11:01 -04:00
c05b184cca update documentation for file viewer feature 2024-07-21 19:10:15 -04:00
51b58b4249 Cleaned up and added comments 2024-07-21 18:06:34 -05:00
7aaa5edf29 Updated progress tracking to skip completed tests 2024-07-21 17:56:10 -05:00
7dc0ace48f file viewer can be called from File menu or context menu in editor if word under cursor is a file 2024-07-21 18:37:06 -04:00
97ffabda0e add (text) file viewer class 2024-07-21 18:36:20 -04:00
36665683d4 Updated progress tracking 2024-07-21 16:57:08 -05:00
ca859c1d17 Added progress to track the tests processed 2024-07-21 16:22:11 -05:00
47c6f1633c Reverted the changes to examples/melt/in.melt, no need to add #REG 2024-07-21 10:34:23 -05:00
3ddb202853 Removed the unnecessary thermo yaml file under examples/melt 2024-07-21 10:32:44 -05:00
695f25521d Cleaned up and fixed issues with in_place = False (using the provided in.lj for debugging) 2024-07-21 10:21:14 -05:00
f23835932c Updated README and cleaned up 2024-07-21 10:06:37 -05:00
e8f09bfb02 Rearranged the functions for processing #REG markers, maybe phased out later as not needed 2024-07-21 09:11:38 -05:00
9109b4d89e Removed input scripts, data files and ref thermo files that were previously used for debugging, keeping only in.lj 2024-07-21 09:01:03 -05:00
051ed89851 Reverted the unintentional changes to examples/bpm/impact/brokenDump 2024-07-21 08:58:34 -05:00
c689cea7d8 initialize in constructor rather than header 2024-07-20 23:48:39 -04:00
9413bb825f match lj/spica/coul/long as close as possible to lj/cut/coul/long 2024-07-20 23:25:46 -04:00
49ead6be10 update doc 2024-07-20 22:46:06 -04:00
ce0fd7dcb7 initialize lj parameters to 1 2024-07-20 22:34:27 -04:00
9676b0cb06 Merge branch 'upstream' into regression-tests 2024-07-20 16:46:49 -05:00
063d5d2fcd keep entries in roughly alphabetical order 2024-07-20 03:35:04 -04:00
39efd3bb2d Merge branch 'develop' into small-patches 2024-07-19 13:58:52 -06:00
3d4074d574 Accessor for history, ensure saved bonds processed in update/special/bonds 2024-07-19 13:58:16 -06:00
cf4654d9cf spelling 2024-07-18 19:07:59 -04:00
3017630c01 Merge remote-tracking branch 'github/develop' into collected-small-fixes 2024-07-18 18:40:22 -04:00
1ed6e153b6 Merge pull request #4214 from jtclemm/rheo
New multiphase fluids package
2024-07-18 18:38:51 -04:00
1c99d7f813 bugfix for extracting 2d-data with lammps_pair_extract() 2024-07-18 13:37:04 -04:00
517681eb1e avoid passing uninitialized data 2024-07-18 13:23:20 -04:00
3b022e86db add extract_pair_dimension and extract_pair for fortran module 2024-07-18 07:39:15 -04:00
bb005e1858 k_cut_ljsq and k_cut_coulsq 2024-07-18 04:24:40 -04:00
23f37e6f63 minor fixes 2024-07-18 03:53:44 -04:00
992987eb6a fix formatting to make diff easier 2024-07-18 00:27:35 -04:00
85beac7107 compatibility with Qt-5.12 and Ubuntu 20.04LTS 2024-07-18 00:16:12 -04:00
78aacfb52e whitespace 2024-07-18 00:11:36 -04:00
93d40f494f revise documentation for changes in version 1.6 2024-07-18 00:06:51 -04:00
11c77b6136 drop icon since we now have the File menu entry and keyboard shortcut 2024-07-18 00:06:23 -04:00
1d1bf669f6 apply clang-format 2024-07-17 23:18:03 -04:00
7c804f7843 add feature to image viewer that copies the dump image command line to the clipboard 2024-07-17 23:16:49 -04:00
c3272297fc use LAMMPS-GUI consistenly (instead of LAMMPS GUI) 2024-07-17 23:01:15 -04:00
2e2dc2abe5 document new features 2024-07-17 19:14:22 -04:00
955db30b32 use LAMMPS-GUI consistently 2024-07-17 19:14:04 -04:00
f877a6f4ce more consistency changes 2024-07-17 19:13:10 -04:00
470b106d99 small tweaks for more consistency 2024-07-17 15:11:17 -04:00
1e75695558 Updating LAMMPS GUI documentation for version 1.6 2024-07-17 14:08:35 -04:00
de95eb907a Clarifying comment on breakage in bond hybrid 2024-07-17 11:53:01 -06:00
5afde3f0f5 export to YAML functionality is only available if there is YAML format data 2024-07-17 04:14:51 -04:00
99ec87dddc Update pair_lj_spica_coul_long.cpp 2024-07-17 01:16:37 -04:00
d277a12e43 add missing icon file 2024-07-16 23:44:46 -04:00
2a1447ff03 extract YAML format thermo data from output window text 2024-07-16 23:38:18 -04:00
1b9302299a implement delete-all-images function with pushbutton in slideshow viewer 2024-07-16 22:54:38 -04:00
ccfdb4aee4 https://matsci.org/t/a-few-kokkos-development-questions/56598 2024-07-16 19:45:47 -04:00
dc84078156 spelling 2024-07-16 19:15:31 -04:00
5b29871198 update docs for new library function 2024-07-16 19:08:01 -04:00
8d4a80729a don't overwrite string type argument variables with their encoded version 2024-07-16 19:01:06 -04:00
4daba292d7 add unit tests for library interface function lammps_extract_pair() and python equivalent 2024-07-16 18:30:45 -04:00
afa44e931b Fixed log file name issues, ignored log files that don't give thermo ouput as normally expected 2024-07-16 14:46:13 -05:00
a5299b48d9 update view size 2024-07-16 12:33:49 -06:00
9730bb4f10 step LAMMPS GUI version to 1.6.0 2024-07-16 14:25:41 -04:00
44edc61a00 Fixed issues with log file names with overlapping patterns (e.g. log.10Jan22.abcfire.* and log.10Jan22.neb.sivac.abcfire.*) 2024-07-16 13:16:23 -05:00
d274989843 update indices 2024-07-16 11:11:31 -06:00
74780e74ef update TODO list with new ideas motivated by tutorial paper 2024-07-16 07:30:14 -04:00
615c1bb623 more compact and consistent window titles 2024-07-16 05:13:04 -04:00
90dee57aae try using LJ sigma for particle radius in VDW mode 2024-07-16 01:40:18 -04:00
3b853adaac add lammps_extract_pair_dimension and lammps_extract_pair to library interface 2024-07-16 01:38:21 -04:00
a9a896c677 Small doc changes, renaming status variable 2024-07-15 17:19:51 -06:00
1b5c42e1b7 add shortcut button for save buffer 2024-07-15 18:48:18 -04:00
696c2d15da warn about problematic compiler versions and C++ standard combinations 2024-07-15 18:24:20 -04:00
207d1e20b9 warn about problematic compiler versions and C++ standard combinations 2024-07-15 18:23:59 -04:00
d7792956d6 bugfix for unittest/fortran/wrap_configuration.cpp 2024-07-15 17:47:22 -04:00
b570782d5e bugfix for unittest/fortran/wrap_configuration.cpp 2024-07-15 17:45:49 -04:00
0f13f632e2 Merge pull request #4227 from akohlmey/collected-small-changes
Collected small changes and fixes
2024-07-15 16:22:58 -04:00
6f8bedd01c sync minimum sphinx version with requirements file 2024-07-15 14:14:13 -04:00
7cfc34e45d the source_suffix option is supposed to be a map 2024-07-15 14:08:19 -04:00
046f57625a Merge branch 'develop' into collected-small-changes 2024-07-15 13:10:35 -04:00
0b08ee898c Merge pull request #4218 from robeme/electrode
Bugfixes and improvements for ELECTRODE package
2024-07-15 13:10:09 -04:00
bb15fa53cb Merge pull request #4230 from jrgissing/chunk_related_fixes
docs + minor msd/chunk refactor
2024-07-15 13:08:02 -04:00
b0238b1bf2 Merge pull request #4232 from rbberger/remove_sprintf_from_core
core files: replace sprintf with snprintf
2024-07-15 12:17:55 -04:00
1fe1aa0683 lower default update interval to 10ms 2024-07-15 10:28:22 -04:00
88cd314dc9 only print fix reaxff/bonds output during setup the first time 2024-07-15 06:58:50 -04:00
1d6959efe6 only print fix reaxff/bonds output during setup the first time 2024-07-15 06:58:05 -04:00
acd7bd111d remove dead code 2024-07-15 06:51:58 -04:00
7e51d1e049 fix compilation issue with latest QUIP/libAtoms code 2024-07-15 06:48:54 -04:00
6fedb6a1b8 fix compilation issue with latest QUIP/libAtoms code 2024-07-15 06:48:21 -04:00
970f518939 avoid out of range access 2024-07-15 06:25:03 -04:00
fb9a36c2f4 do not update the chart window when LAMMPS is not in a minimization or run 2024-07-13 19:12:46 -04:00
58513320d3 core files: replace sprintf with snprintf 2024-07-13 15:33:56 -06:00
f83b82f04f Handled more cases 2024-07-12 23:59:17 -05:00
1912083935 add warning about overflowing image flags and how to prevent that 2024-07-12 23:43:14 -04:00
a0fb12c265 disentangle the fix deform and fix deform/pressure pages somewhere for easier reading 2024-07-12 23:42:42 -04:00
06511a6e77 couple more doc tweaks 2024-07-11 19:17:09 -04:00
d8c4115b86 update test since we have now one invocation also during setup 2024-07-11 15:03:10 -04:00
baa3c8e98c only call post_force() if it was selected as callback. 2024-07-11 15:03:02 -04:00
0e6ff7d70a only call post_force() if it was selected as callback. 2024-07-11 15:02:38 -04:00
47af1775c2 update test since we have now one invocation also during setup 2024-07-11 15:02:03 -04:00
1a258d4349 The post_force callback should also be called during "setup" 2024-07-11 13:40:35 -04:00
a55092dc26 rewrap docs 2024-07-11 13:39:44 -04:00
c1c1d32136 The post_force callback should also be called during "setup" 2024-07-11 13:32:56 -04:00
9e917412c9 fix typo and rewrap lines 2024-07-11 12:39:42 -04:00
e51e0c1fb7 re-order entries 2024-07-11 11:37:42 -04:00
e0a0c94c6e Prepared for multiprocessing, maybe using separate input lists for different run_tests.py is sufficient 2024-07-11 00:04:26 -05:00
b9e263b1d1 re-add empty row between special and regular pair styles 2024-07-10 16:17:33 -04:00
00f214f323 Added the --dry-run option to print statistics for the LAMMPS build and examples folder only 2024-07-10 11:35:23 -05:00
8f6cf085e8 syncing table in build_packages/extra 2024-07-09 15:06:18 -06:00
d875c5bb0f Updated README 2024-07-09 09:02:44 -05:00
17b2282a1e Merge branch 'upstream' into regression-tests 2024-07-09 08:24:46 -05:00
a72cffd198 Changed indentation 2024-07-09 08:22:37 -05:00
170c12d5df Handled error runs where log.lammps is not created (e.g. using more MPI procs than the number of physical CPUs) 2024-07-08 17:19:57 -05:00
0b3de48ef0 Added the config file for kokkos testing and enabled logging for the output of the failed runs 2024-07-08 16:32:45 -05:00
c7d729e3d6 Allowed to skip a list of input scripts as specified in the config file 2024-07-08 15:52:49 -05:00
d0e5640a75 add cvflag check, update mem usage 2024-07-08 05:05:36 -06:00
7673a904d1 update variable for consistency w/ non-kokkos 2024-07-08 05:05:06 -06:00
4bc97dc812 fix topo labels 2024-07-08 05:01:23 -06:00
aaf25602e3 add Q_MASK to datamask_read 2024-07-07 17:11:18 -04:00
b1a4f08dd2 Update in.charmmfsw 2024-07-07 16:56:00 -04:00
c77d2d952d Update pair_lj_charmmfsw_coul_long_kokkos.cpp 2024-07-07 16:55:39 -04:00
06e8f8eab2 cleanup 2024-07-07 15:57:37 -04:00
9c37e0f0df add charmmfsw example for kokkos gpu testing 2024-07-07 15:32:12 -04:00
2cb3cb3323 merging charmmfsw properly into spica (1st try) 2024-07-07 11:04:11 -04:00
bac8885739 minor changes 2024-07-07 06:19:42 -04:00
2459b7e975 oops 2024-07-07 05:58:27 -04:00
68231e9ba4 minor formatting changes 2024-07-07 05:49:03 -04:00
62ac8d0ab3 fixes 2024-07-07 02:59:43 -04:00
1a30fe5349 reset_atoms: one more grammar tweak 2024-07-06 18:03:43 -04:00
08cf19955d minor corrections to 'reset_atoms' docs 2024-07-06 17:57:18 -04:00
b1db2ddb3f store 'nchunk for msd' on first pass
because nchunk can be modified elsewhere
2024-07-06 15:57:18 -04:00
b7942ead3f chunk docs typo 2024-07-06 15:49:46 -04:00
54901eb8a4 remove pointless check 2024-07-06 09:55:41 -04:00
f34b6dacaf improve fix indent documentation 2024-07-06 09:55:22 -04:00
c3f76dcc81 cleanup 2024-07-06 01:12:23 -04:00
fdf9ffee73 use auto for type 2024-07-06 00:52:27 -04:00
9c8f7854ad avoid out-of-bounds string character access during completion 2024-07-06 00:50:15 -04:00
fecf38e116 move d_type = atomKK->k_type.view<DeviceType>() to compute() 2024-07-06 00:20:45 -04:00
87060b2d3e display selected C++ standard as part of the CMake summary output 2024-07-05 21:37:04 -04:00
f05c87cd43 use proper const qualifier 2024-07-05 21:31:52 -04:00
96f2e32591 fix typo 2024-07-05 20:15:30 -04:00
61e391b449 correct check for invalid header keywords 2024-07-05 19:28:04 -04:00
b89bc47626 more thorough checks for molecule file header keywords 2024-07-05 19:10:48 -04:00
a3bacfca65 more unit tests for tokenizer functions constains() and matches() 2024-07-05 18:55:55 -04:00
6fd962e132 spelling 2024-07-05 16:44:08 -04:00
880aa40d1b add missing header 2024-07-05 16:23:02 -04:00
2fc664d5da added kokkos views 2024-07-05 16:21:43 -04:00
dacc55b889 Prevent overflow in neighbor output 2024-07-05 16:20:28 -04:00
f0a11dbefd also promote ndatum in MyPoolChunk class 2024-07-05 16:16:04 -04:00
caa1b4a891 promote ndatum to bigint to avoid overflows 2024-07-05 16:12:08 -04:00
8fcde04097 add a "matches()" method to the Tokenizer and ValueTokenizer classes using utils::strmatch() 2024-07-05 15:45:49 -04:00
4746fe74ed Allowed to specify tolerances for individual input scripts, overriding the global values 2024-07-05 09:37:06 -05:00
810698dc07 Skip neighbor folding at first call
There may be issues due to the fact that the NL is initialized
with the LAMMPS data file, that does not have to be the same
as the starting config in i-PI
2024-07-05 09:07:30 +02:00
eeaecb3ed3 macOS app bundle requires -D BUILD_TOOLS=yes 2024-07-04 15:13:06 -04:00
0d54f99fc0 Fixed a nasty bug when running the ipi interface with many MPI workers
Looks like the migrate() call should happen before trajectory folding
2024-07-04 17:34:18 +02:00
c0dfccdd64 add a few more flags to clang-tidy 2024-07-04 11:18:08 -04:00
da2bd44b73 modernize and reformat with clang-tidy and clang-format 2024-07-04 11:17:54 -04:00
cefe76919c make more use of auto and thus avoid having to specify the same type twice 2024-07-04 11:12:40 -04:00
10e3595b57 separately catch exceptions thrown by new 2024-07-03 22:20:06 -04:00
a4d69878fa update list of available sanitizers for Fedora 40 and GCC 14 2024-07-03 22:02:35 -04:00
f94b078936 use pkg-config instead of pkgconf consistently, since the latter comes with compatibility to the former 2024-07-03 21:21:35 -04:00
0fb7493658 spelling fixes 2024-07-03 19:17:11 -04:00
b6d11b5902 document GSL dependency and provide build instructions for RHEO package 2024-07-03 19:07:19 -04:00
96d58bb03e automatically set include/libs flags for GSL, if pkg-config is available 2024-07-03 18:32:42 -04:00
feba9640af not needed anymore 2024-07-03 18:22:27 -04:00
e1232af867 Missing flag and changing dependencies 2024-07-03 16:12:17 -06:00
9b52888e53 Adding RHEO dependency to cmake 2024-07-03 15:53:38 -06:00
ece17cf56f Adding rheo make support 2024-07-03 15:30:33 -06:00
17d736c0f9 Merge branch 'develop' into electrode 2024-07-03 15:17:43 -04:00
01502f70a4 print warnings only on MPI rank 0 2024-07-03 15:16:08 -04:00
33490fc402 align with other similar tests in LAMMPS 2024-07-03 15:09:25 -04:00
1f02178263 make exclusion more specific 2024-07-03 09:32:37 -04:00
66552d80da Merge branch 'develop' into rheo 2024-07-03 03:42:44 -04:00
0a6fd5b097 get rid of some evil tabs 2024-07-03 03:41:57 -04:00
3385198b51 fix typo 2024-07-03 00:51:32 -04:00
87bbd70fd2 ensure atom map is reset by fix pour and fix deposit 2024-07-03 00:39:21 -04:00
993a7cce54 Merge pull request #4215 from lammps/atom-map-bug
Ensure atom map is reset by fix pour and fix deposit
2024-07-03 00:38:33 -04:00
4b8f961098 Updating headers 2024-07-02 14:00:37 -06:00
ad4573e4f6 add fourth term 2024-07-02 11:08:05 -06:00
56a9192cf3 Merge pull request #4212 from akohlmey/collected-small-changes
Collected small changes and fixes
2024-07-02 00:46:14 -04:00
edebab9a5c clarify possible map styles on atom_modify doc page 2024-07-01 14:57:26 -06:00
f633b03602 ensure atom map is reset by fix pour and fix deposit 2024-07-01 09:33:20 -06:00
b8360631e1 Fix typos and add TF definitions to fix_electrode.rst 2024-07-01 10:35:54 +02:00
49c84dbe1e Bugfix virial with fix electrode 2024-07-01 10:05:28 +02:00
dc07a75011 whitespace 2024-06-30 18:36:18 -04:00
d75e66dc71 add unit tests for lammps_extract_variable() 2024-06-30 18:32:37 -04:00
f8a7fc787c correct documentation and simplify extracting vector length 2024-06-29 21:32:37 -04:00
6ad0145709 new special variable function is_timeout() 2024-06-29 04:02:33 -04:00
246698d3c2 Timer::_timeout should be double and it should be allowed to have fractions. 2024-06-29 03:43:26 -04:00
d5c90eebfd Flipping doc reference name 2024-06-28 17:27:13 -06:00
1326592f23 Proofing RHEO package 2024-06-28 17:07:23 -06:00
8397738978 add explanation about integrating new styles into packages 2024-06-28 18:32:58 -04:00
850e4d14cd must use the "roots" communicator only on world->me == 0
Thanks to @joshuakempfert. See issue #4210
2024-06-28 14:19:31 -04:00
a8c7ebf47d must use the "roots" communicator only on world->me == 0
Thanks to @joshuakempfert. See issue #4210
2024-06-28 14:17:20 -04:00
6a8e7b4d70 update variables, templates, kk types 2024-06-27 22:56:12 -06:00
d7da58752b update commands, zero functors 2024-06-27 22:54:00 -06:00
62d564f81a add hybrid kk for angle, dihedral, improper styles 2024-06-27 22:49:03 -06:00
4fd14f4e1c update install actions 2024-06-27 22:44:25 -06:00
9fef3b68e0 update deallocate, suffix flags 2024-06-27 22:36:15 -06:00
0de8192a9b add kokkosable variable 2024-06-27 22:31:59 -06:00
185141bd7d use faster compression 2024-06-27 23:24:20 -04:00
2ad8119282 do not try to install plumed patches 2024-06-27 21:24:12 -04:00
1f7fb7b6f5 correct path (again) 2024-06-27 20:57:35 -04:00
42724fda74 note the ability to build ML-PACE and PLUMED as plugins 2024-06-27 20:56:20 -04:00
e75e63c218 also package the plumed.exe executable with the plugin 2024-06-27 20:08:15 -04:00
5014e408c0 use correct path to (downloaded) plumed source tree 2024-06-27 20:07:52 -04:00
3c0eaf6870 Moving stress calculation to rheo/prop/atom 2024-06-27 16:57:53 -06:00
2c2007ff55 silence warnings 2024-06-27 18:52:58 -04:00
0e706d4dcc add support for building the PLUMED package as plugin 2024-06-27 18:14:56 -04:00
cdb4a331a6 remove INTEL package from cross-compiler config.
It doesn't do much goos since we're not using an Intel compiler
and we are running out of capacity for auto-exported symbols
for the LAMMPS shared library (limited to 65k).
2024-06-27 06:27:58 -04:00
0717019b2d remove INTEL package from cross-compiler config.
It doesn't do much goos since we're not using an Intel compiler
and we are running out of capacity for auto-exported symbols
for the LAMMPS shared library (limited to 65k).
2024-06-27 06:27:25 -04:00
a74500f416 Merge pull request #4205 from akohlmey/next-release
Update version tags for next feature release
2024-06-26 23:26:04 -04:00
d47b9c6571 cosmetic 2024-06-26 21:49:02 -04:00
e72a786a44 fix typo 2024-06-26 19:58:09 -04:00
9d94345f09 Merge branch 'develop' into next-release 2024-06-26 19:50:27 -04:00
7b70ad928f Merge pull request #4203 from akohlmey/collected-small-changes
Collected small changes and bugfixes
2024-06-26 19:46:21 -04:00
14086cc9ad add warning about memory consumption 2024-06-26 10:50:38 -04:00
25985abfc0 add version tag 2024-06-26 09:50:52 -04:00
b1d1213dfd reformate, make small corrections, align with other doc files and use sphinx-design to make html more compact 2024-06-26 07:30:50 -04:00
252f48b2c1 Mention bonded force field primer from typelabel paper in bioFF howto 2024-06-26 07:27:11 -04:00
44b66cb56b various documentation fixups, dedup references, wrap paragraphs, adjust underlines, add missing index 2024-06-26 07:26:03 -04:00
8173142950 Merge branch 'develop' into collected-small-changes 2024-06-26 06:16:21 -04:00
4bb71195aa Allow NULL for eta in fix electrode 2024-06-26 12:08:45 +02:00
9ac821b3cb protect against 32-bit integer overflow 2024-06-26 05:07:53 -04:00
acc28e01c3 Merge pull request #4050 from akohlmey/bioff-doc-updates
Bio force field documentation updates
2024-06-26 04:27:33 -04:00
da2dc9a154 handle case of no LAMMPS instance or no simulation box 2024-06-26 01:30:14 -04:00
89193c8a66 expand scope of files to ignore that are created by cmake/ctest 2024-06-25 22:32:51 -04:00
ee85249ad6 update codeowners 2024-06-25 20:26:06 -04:00
8d280a73ac small programming style updates 2024-06-25 20:21:51 -04:00
baaa9dbedd move initializers for structs from header file to implementation, add constructors 2024-06-25 20:18:37 -04:00
e5250a76ac apply clang-format 2024-06-25 20:07:34 -04:00
e3fb1f24bd Merge branch 'develop' into collected-small-changes 2024-06-25 19:41:45 -04:00
0b0ec155ca whitespace 2024-06-25 19:40:07 -04:00
03695ac9b1 remove temporary files 2024-06-25 19:39:48 -04:00
3323e45372 Merge pull request #4168 from cesmix-mit/kokkospod
New features for the ML-POD package
2024-06-25 19:35:08 -04:00
b69e7e03fd small fix 2024-06-25 19:07:59 -04:00
116ac85a34 use consistent method to silence compiler warnings about unused parameters 2024-06-25 19:07:50 -04:00
b62a05a147 fix up garbled references to other doc pages 2024-06-25 19:06:23 -04:00
8e4ffdc84e update docs for fully integrating utils::bounds_typlabel() function 2024-06-25 18:23:07 -04:00
5cbe85ecf1 remove redundant error argument (accessible through lmp) 2024-06-25 18:19:41 -04:00
fcba5ee3c9 silence compiler warnings and apply clang-format 2024-06-25 15:01:17 -04:00
fd2eab9924 Remove commented out code 2024-06-25 14:53:05 -04:00
94742c043c Merge branch 'kokkospod' of https://github.com/cesmix-mit/lammps into kokkospod 2024-06-25 14:43:02 -04:00
1892ee35d4 remove printf or replace it with utils:logmsg 2024-06-25 14:42:57 -04:00
3453f13c2d correct capitalization 2024-06-25 13:33:29 -04:00
125da5723b whitespace 2024-06-25 13:31:33 -04:00
e6e89ec54a Merge branch 'develop' into collected-small-changes 2024-06-25 13:31:15 -04:00
b84c09d30e update version tags for next feature release 2024-06-25 13:30:38 -04:00
8fa0064dc2 Merge pull request #4204 from lammps/dpd-coul-slater-doc-page
Minor edits to new pair dpd/coul/slater/long doc page
2024-06-25 13:21:04 -04:00
e830dd9761 Merge pull request #14 from akohlmey/kokkospod
Update kokkospod branch to upstream and minor cleanups and corrections
2024-06-25 00:01:25 -04:00
6ef8472481 Merge commit 'refs/pull/4168/head' of github.com:lammps/lammps into kokkospod 2024-06-24 23:52:39 -04:00
6b659a6e56 Remove commented out code and turn off timing 2024-06-24 22:48:34 -04:00
ebbb2673f1 Merge branch 'kokkospod' of https://github.com/cesmix-mit/lammps into kokkospod 2024-06-24 22:34:52 -04:00
e195f1759f Remove unused parameters, change command name, and update documentation and examples.. 2024-06-24 22:32:35 -04:00
eb7c6e47ae Merge pull request #15 from stanmoore1/kokkospod
Small changes for https://github.com/lammps/lammps/pull/4168
2024-06-24 21:26:59 -04:00
a2fcec6aaa fix typos, spelling, incorrect markup, and correct and add more details for speedup note 2024-06-24 20:01:41 -04:00
667c673855 Update docs 2024-06-24 17:55:28 -06:00
a88a22c36e Small cleanup 2024-06-24 17:52:58 -06:00
d5e5630cc5 Comment out unused var 2024-06-24 17:42:17 -06:00
63f61a41dc Update .gitignore for POD 2024-06-24 17:41:21 -06:00
b9a850d93f Add logic for GNU Make 2024-06-24 17:40:47 -06:00
bf6e0d59c9 fix bug in general triclinic dump refactor reported by @stanmoore1 2024-06-24 19:18:49 -04:00
da095a1d79 minor edits to new pair dpd/coul/slater/long doc page 2024-06-24 16:36:38 -06:00
bf4aab68d3 update sdk -> spica 2024-06-24 17:45:53 -04:00
5442446460 remove commented out code 2024-06-24 17:44:07 -04:00
43bace6748 Fix typo 2024-06-24 15:16:37 -06:00
b0718a0983 Merge conflicts 2024-06-24 14:16:40 -06:00
b219bb8de8 Merge conflicts 2024-06-24 14:09:33 -06:00
21a42c1304 Small cleanup 2024-06-24 14:08:47 -06:00
9a41f6aedf spelling updates 2024-06-23 04:21:01 -04:00
01a85639f9 Merge branch 'develop' into kokkospod 2024-06-23 03:56:39 -04:00
0d1759d4a4 small programming style updates 2024-06-23 03:56:23 -04:00
e17dc38087 use utils::numeric to convert text to numbers 2024-06-23 03:56:10 -04:00
21685136be add braces to group commands according to indentation 2024-06-23 03:55:50 -04:00
79cc64766b initialize all pointers to null, reorder to match definition 2024-06-23 03:55:10 -04:00
3c81badc5c avoid namespace pollutions from defines in eapot.h 2024-06-23 03:40:04 -04:00
487a9ae73e return to alphabetical order 2024-06-23 03:09:54 -04:00
0c7720843b Make sure CMAKE_INSTALL_FULL_LIBDIR is defined when using it 2024-06-22 23:29:30 -04:00
0e28eb0348 Make sure CMAKE_INSTALL_FULL_LIBDIR is defined when using it 2024-06-22 23:28:05 -04:00
5207b93fd8 small update for consistency 2024-06-22 20:33:44 -04:00
7e7f3c08f4 make check more specific but accelerator compatible 2024-06-22 20:29:26 -04:00
e6042c7db2 Merge branch 'develop' into spica-kk 2024-06-22 20:27:00 -04:00
1349d7632e flag KOKKOS support for added styles in commands lists 2024-06-22 20:26:45 -04:00
fb529bb9e8 trigger calling Fix::reset_dt() which may cause segfaults with respa 2024-06-22 20:04:40 -04:00
9dc85dec54 apply clang-format 2024-06-22 20:04:09 -04:00
5693c8ac33 modernize fix instance lookup 2024-06-22 20:03:14 -04:00
b8cbd1bfc3 use proper technical term 2024-06-22 14:26:24 -04:00
4c18b2fe99 use suitable technical term 2024-06-22 14:26:07 -04:00
1d7b0b730f avoid segfault in fix shake/rattle when timestep is changed before run 2024-06-22 14:20:38 -04:00
090ed81e77 avoid segfault in fix shake/rattle when timestep is changed before run 2024-06-22 14:20:23 -04:00
2946087b45 avoid access to uninitialized step_respa pointer in Nose-Hoover fixes 2024-06-22 04:19:23 -04:00
f1c5b4b68d avoid access to uninitialized step_respa pointer in Nose-Hoover fixes 2024-06-22 04:16:46 -04:00
353121c942 update compute descriptors 2024-06-21 22:08:20 -04:00
cfcd2b2068 Merge pull request #4202 from lammps/dump-triclinic-bug-fix
Dump triclinic bug fix
2024-06-21 14:29:31 -04:00
cf2dede47f whitespace 2024-06-21 12:20:59 -04:00
13f0e37a57 Merge pull request #4201 from lammps/amoeba-doc-page
Fix errors in fix amoeba/pitorsion doc page
2024-06-21 12:17:26 -04:00
eba1599f9c typo comment change 2024-06-21 09:35:10 -06:00
de684a15b6 typo code change 2024-06-21 09:33:12 -06:00
fc539b46ea change all function ptrs and 2 example dump files 2024-06-21 09:23:04 -06:00
7dae9c05ba changes for triclinic function ptr init 2024-06-21 08:59:09 -06:00
d0da16070b one more change 2024-06-21 08:00:50 -06:00
6b42545044 fix errors in fix amoeba/pitorsion doc page 2024-06-21 07:51:49 -06:00
241a8dda63 Merge pull request #4200 from akohlmey/collected-small-changes
Collected small fixes for development version
2024-06-21 09:42:57 -04:00
fe13768fa4 remove unused class member 2024-06-21 01:16:50 -04:00
c7f386ce9f fix missing arguments and cut-n-paste error reported by coverity scan 2024-06-21 01:13:36 -04:00
a6d51b7cc8 follow LAMMPS programming style more closely 2024-06-21 01:04:55 -04:00
41d24f5d57 apply clang-format 2024-06-21 01:02:02 -04:00
6d1fb9eb62 fix typo 2024-06-20 20:31:24 -04:00
fc98f626b4 Merge branch 'develop' into collected-small-changes 2024-06-20 20:13:22 -04:00
7e8f956e05 remove accidental commit 2024-06-20 20:09:28 -04:00
8ce284f125 Merge pull request #4145 from jrgissing/improve_type_label_support
Improve type label support
2024-06-20 16:30:22 -04:00
dfabe5d333 Merge remote-tracking branch 'github/develop' into collected-small-changes 2024-06-20 16:25:43 -04:00
65f2767d9d Merge pull request #4169 from ohenrich/cg-dna
CG-DNA: Real units and potential reader
2024-06-20 16:25:16 -04:00
734fdf4a46 rename CG-DNA potential files 2024-06-20 14:33:26 -04:00
00d7aa935f follow LAMMPS programming style more closely, silence compiler warnings 2024-06-20 09:39:21 -04:00
001ac67b3b apply clang-format 2024-06-20 09:23:32 -04:00
c8dc135b8f update according to "include-what-you-use" principles 2024-06-20 09:22:32 -04:00
2dc7de417a Merge branch 'develop' into improve_type_label_support 2024-06-20 08:56:02 -04:00
9c8c04a7b4 Merge branch 'develop' into cg-dna 2024-06-20 02:44:29 -04:00
8d69bd77ef don't throw an error when reading QEq parameters from file 2024-06-19 18:28:04 -04:00
94b2cd7fc5 don't throw an error when reading QEq parameters from file 2024-06-19 18:27:47 -04:00
71c5e04121 Merge pull request #4179 from akohlmey/collected-small-changes
Collected small changes and fixes
2024-06-19 17:39:57 -04:00
cb0af02748 Merge pull request #4193 from akohlmey/extra-command-package
Create new EXTRA-COMMAND package
2024-06-19 15:06:20 -04:00
ddec24308c small docs and spelling corrections and updates 2024-06-19 15:04:14 -04:00
778d11c79e Merge remote-tracking branch 'github/develop' into collected-small-changes 2024-06-19 14:46:04 -04:00
80556214e4 remove unused class member 2024-06-19 13:57:10 -04:00
629a9cbe3d Merge pull request #4188 from Eddy-Barraud/dpd_charged
add pair styles dpd/coul/slater/long and dpd/coul/slater/long/gpu
2024-06-19 13:50:46 -04:00
c4f5605518 Merge pull request #4197 from rbberger/library_interface_update
library: add comm->procgrid to extract_global
2024-06-19 12:04:07 -04:00
9b419b669d Merge pull request #4192 from gtribello/fix-plumed-cmake
Update to Plumed interface
2024-06-19 12:03:43 -04:00
ef902b03f9 Merge branch 'develop' into collected-small-changes 2024-06-19 12:02:56 -04:00
4e0bf6137d Merge pull request #4110 from uf3/ml-uf3
Implementation of pair_style uf3 and uf3/kk
2024-06-19 11:43:32 -04:00
45508baee5 major refactor for restart, data file handling. removal of dead code. 2024-06-19 11:09:56 -04:00
6ada6b7bf2 update example for dpd/coul/slater/long 2024-06-19 11:00:21 -04:00
0aff26705c correct force style input 2024-06-19 10:40:19 -04:00
37572225f4 Merge pull request #4191 from akohlmey/pair-hybrid-molecule
Add new pair style hybrid/molecular
2024-06-19 00:49:37 -04:00
83a024b26b add force style test 2024-06-18 21:41:34 -04:00
71b38521c5 reformat and remove duplicate NP_MULTI_OLD flags 2024-06-18 21:21:20 -04:00
2a132dfe8f add tests for PyLammps to check new exports 2024-06-18 21:13:33 -04:00
19a8313578 switch proc_grid to procgrid with backward compatibility for PyLammps 2024-06-18 21:13:14 -04:00
b9f8a5b811 Merge pull request #4184 from stanmoore1/pair_soft_kk
Add Kokkos version of `pair_style` soft
2024-06-18 20:52:34 -04:00
d54f38ff62 whitespace 2024-06-18 20:46:32 -04:00
740b206e7f Tightened up the definitions of deltamu's and conc's 2024-06-18 11:04:47 -06:00
dea53be1a5 error out when extracting non-existent QEq paramters from ReaxFF, e.g. when using pair style hybrid 2024-06-18 09:54:00 -04:00
c3c72a3bff always return initialized data when extracting per-type info 2024-06-18 09:48:54 -04:00
43cc8696dd mention that verlet/split is not available for TIP4P 2024-06-18 08:46:18 -04:00
41227e0e93 apply param per type check only on atom types in fix group 2024-06-18 08:35:18 -04:00
3d1f933e21 port QEq parameter check from fix qeq/reaxff to fix qeq/shielded 2024-06-18 07:05:29 -04:00
5e72dc0d6b error out when extracting non-existent QEq paramters from ReaxFF, e.g. when using pair style hybrid 2024-06-18 06:59:12 -04:00
88ccaeddc1 always return initialized data when extracting per-type info 2024-06-18 06:58:26 -04:00
ab800b4e26 skip over groups with whitepsace in their name so we don't create illegal index files 2024-06-17 17:23:05 -04:00
c867bb3e28 enable and apply clang-format 2024-06-17 17:00:00 -04:00
9856ef7d81 better error handling when processing index files with illegal group names 2024-06-17 16:57:22 -04:00
318b43f358 update group2ndx/ndx2group docs 2024-06-17 15:02:43 -04:00
82b86031ef update fix plumed API version check and add reminder comments to build files 2024-06-17 07:15:15 -04:00
f4005e350a update fix plumed API version check and add reminder comments to build files 2024-06-17 07:11:56 -04:00
4be1b41aef class n func rename 2024-06-17 10:03:06 +02:00
3dda8d752c avoid segfault trying to delete non-copied style 2024-06-16 01:28:44 -04:00
d8c88c70ea Merge pull request #4189 from evoyiatzis/patch-2
Update fep.py
2024-06-16 01:27:42 -04:00
7704227bfb Merge pull request #4195 from jtclemm/small-patches
Various small patches for GRANULAR and BPM packages
2024-06-16 01:26:01 -04:00
59fb8a6835 avoid segfault trying to delete non-copied style 2024-06-15 14:08:14 -04:00
d2ea3b1ac5 add some tests for new features 2024-06-15 08:28:52 -04:00
ee0dd80cbe fix another typo 2024-06-15 06:17:13 -04:00
9b52f66a5a fix typos 2024-06-15 05:55:45 -04:00
cb3aa07287 update PyLammps to use added properties directly instead of parsing them. 2024-06-14 20:21:19 -04:00
1ce94e47d8 also make "comm->ghost_velocity" accessible 2024-06-14 20:20:53 -04:00
77b610a2bd also make comm->style, comm->layout, and comm->mode accessible through the library interface 2024-06-14 20:04:21 -04:00
514039ed62 library: add comm->procgrid to extract_global 2024-06-14 08:10:24 -06:00
a4ac48addf add example file and author contrib 2024-06-14 10:13:48 +02:00
11ef510a93 Merge branch 'lammps:develop' into improve_type_label_support 2024-06-13 19:26:42 -04:00
03251e823f add terminal newline 2024-06-13 15:20:12 -04:00
fb23df7bf7 example input file 2024-06-13 17:35:45 +02:00
37f3233040 Check the atom style has an atom map 2024-06-13 17:14:13 +02:00
575853b27a correct headers' author 2024-06-13 17:11:54 +02:00
80e96d8c9b Bugfix electrode piston example 2024-06-13 17:00:01 +02:00
8eec17d409 add missing file for CMake build 2024-06-13 09:26:23 -04:00
e95598a716 doc fixes 2024-06-13 09:17:09 -04:00
397dc9a7f6 build system and maintenance updates 2024-06-13 09:13:55 -04:00
4b0adcc66a avoid segfaults when updating charts in simulations with fast thermo output 2024-06-13 08:34:25 -04:00
3865dda5a2 integrate new doc file into manual 2024-06-13 08:33:40 -04:00
1b040d7108 white space fix 2024-06-13 13:49:18 +02:00
8bbbe2dd6b Update pair_dpd_coul_slater_long.rst 2024-06-13 11:43:57 +02:00
35cbc84329 Update lal_dpd_coul_slater_long.cpp 2024-06-13 10:25:56 +02:00
2aacc017cb Changes to CMake to hopefully match Sachith's suggestions 2024-06-12 17:29:30 -06:00
ce7ba21b8b clarify potentially misleading comment 2024-06-12 17:02:25 -04:00
67d86b559e Clarifying BPM logic and removing spelling errors in doc 2024-06-12 14:44:13 -06:00
53db2af179 Adding ndata accessor to bond history 2024-06-12 12:27:34 -06:00
610172b9dc Merge branch 'lammps:develop' into cg-dna 2024-06-12 17:38:20 +01:00
2434ad6574 doc page 2024-06-12 17:29:16 +02:00
99263ed7d7 init_atomic with new pair name 2024-06-12 15:41:38 +02:00
2470d621c8 wrong header name... 2024-06-12 15:31:28 +02:00
3686a7fcf3 wrong cl / cubin header file names 2024-06-12 15:25:28 +02:00
84ed769ca3 changing the fix name and file names for coherence 2024-06-12 15:12:55 +02:00
7f1fbca66f update lal_base_dpd for optional charged 2024-06-12 14:30:54 +02:00
1a310f5729 Limit CoeffRest gran damping to non-cohesive, prevent potential nans 2024-06-11 17:03:15 -06:00
5ff853ce67 Merge branch 'develop' into small-patches 2024-06-11 16:56:28 -06:00
c190318649 Small doc page clarifications 2024-06-11 16:53:10 -06:00
7bb0da5255 Increased checks for broken bonds in bond BPM 2024-06-11 16:11:24 -06:00
2d9aad67d0 Consistent newton checks compute nbond/atom 2024-06-11 15:24:34 -06:00
e0228d1f15 Bond history compatability delete atoms 2024-06-11 13:16:34 -06:00
09bea938c5 fix copy-n-paste error 2024-06-10 14:26:32 -04:00
d61c94c0f3 move group2ndx and ndx2group to new EXTRA-COMMAND package. update docs. 2024-06-10 14:14:36 -04:00
567ba1f437 improve R value for SI units 2024-06-10 19:37:35 +02:00
e5809d8be1 update Plumed support for version 2.8.4 and 2.9.1 2024-06-10 09:58:20 -04:00
77c04d3827 cosmetic changes 2024-06-10 09:15:14 -04:00
12b26eb0a5 Merge branch 'lammps:develop' into fix-plumed-cmake 2024-06-10 13:17:02 +01:00
9861c93225 add OPENMP support for pair style hybrid/scaled 2024-06-10 08:02:22 -04:00
fa8f73689e add /omp aliases to hybrid pair styles for consistency and added tests
without the aliases, the introspection check lead to skipping suitable tests
2024-06-10 07:33:17 -04:00
2a7f0fb863 update intel pair list support for molskip flag 2024-06-10 07:16:24 -04:00
5f85112102 fix hybrid sub-style detection for OPENMP package 2024-06-10 07:16:02 -04:00
1ec24db123 remove redundant and problem causing NP_INTRA flag 2024-06-10 06:46:22 -04:00
e0c2009525 update conditions, comments, better eflag handle 2024-06-10 11:33:58 +02:00
325350dce4 small tweaks 2024-06-09 12:03:40 -04:00
f442cb4f65 add unit tests for pair style hybrid/molecular 2024-06-09 11:44:35 -04:00
1f0cd8be2a fix neighbor list request bug 2024-06-09 11:40:34 -04:00
5fb1776fa1 add implementation of pair style hybrid/molecular 2024-06-09 10:31:37 -04:00
117786aa7b support molskip for r-RESPA neighbor lists 2024-06-09 10:31:16 -04:00
3f901f2d8e reset manybody_flag if threebody terms are turned on or off in sw pair style 2024-06-09 07:03:31 -04:00
91b9308d4f initial version of pair style hybrid/molecular 2024-06-09 07:02:18 -04:00
69a31b7da7 dependent python packages have caught up with changes in sphinx 7.3.7 2024-06-09 04:12:51 -04:00
5be5a53801 correct documentation for added bond hybrid/kk 2024-06-09 04:10:52 -04:00
43ce6b018a update Plumed support for version 2.8.4 and 2.9.1 2024-06-09 01:30:35 -04:00
ca8eb4fb68 update angle spica test 2024-06-08 21:57:24 -04:00
42b4ff4cc5 revert to develop test_angle_style, kokkos_omp test is in kokkos-unit-testing branch 2024-06-08 21:31:31 -04:00
85c345cf2d duplicate calc of r 2024-06-07 16:51:32 +02:00
f5b2eb3a80 Update lal_dpd_charged.cu 2024-06-07 15:16:54 +02:00
aadeb1149d double host write, wrong dpd cond 2024-06-07 15:14:05 +02:00
575047c278 Update fep.py 2024-06-07 14:40:21 +02:00
afc8c752fd wrong kernel params 2024-06-07 11:31:33 +02:00
14f0a14c82 Merge branch 'dpd_charged' of https://github.com/Eddy-Barraud/lammps-custom into dpd_charged 2024-06-07 09:05:13 +02:00
001063250e allocate extra_fields 2024-06-07 09:05:11 +02:00
203194c7fb Merge branch 'lammps:develop' into spica-kk 2024-06-06 14:13:32 -04:00
91c718c467 Update Install.sh 2024-06-06 12:47:11 -04:00
fd373957cc Merge branch 'lammps:develop' into dpd_charged 2024-06-06 18:37:40 +02:00
7cb73ca1a1 maybe wrong scale 2024-06-06 11:23:38 +02:00
0da8be7525 Update lal_dpd_charged.cu 2024-06-06 11:20:21 +02:00
ce9f99e9c1 store_answersq for ecoul 2024-06-06 11:19:06 +02:00
5c9ac8e569 Update pair_dpd_charged_gpu.cpp 2024-06-06 11:14:28 +02:00
71d8fe564f wrong init var and still force... 2024-06-06 10:55:26 +02:00
06f1b1bffa wrong names, old var del 2024-06-06 10:50:30 +02:00
7d2764da27 only dpd coef update 2024-06-06 10:42:09 +02:00
be298634b7 readdress force sp_cl 2024-06-06 10:40:13 +02:00
69309cab0c header fix missing var 2024-06-06 10:36:31 +02:00
0e9fef01e7 class fix and header 2024-06-06 10:32:45 +02:00
2da4f23743 debug 2024-06-06 10:23:32 +02:00
c1db6a50ec move eflag 2024-06-06 10:10:36 +02:00
8eefc0d305 debug scale_in ; n_stride 2024-06-06 09:58:11 +02:00
aaf5200316 Merge branch 'develop' into collected-small-changes 2024-06-06 02:17:50 -04:00
1fa67290c3 updated pair style and angle style /kk in docs 2024-06-05 19:56:29 -04:00
a256021588 added 2 kokkos styles to legacy make system 2024-06-05 19:56:09 -04:00
44e13d97c6 removed more whitespace 2024-06-05 19:55:38 -04:00
f2db99193e removed whitespaces 2024-06-05 19:31:12 -04:00
235c1179b1 implemented evtally13 2024-06-05 19:13:57 -04:00
43d94985fa angle-spica.yaml using in.spica and data.spica
in.spica and data.spica based on  in.fourmol and data.fourmol with pair style lj_spica instead of pair style zero
2024-06-05 19:13:16 -04:00
eb7f947a0c cuda forces + init var 2024-06-05 17:49:27 +02:00
7ef9a93a75 Merge pull request #4167 from stanmoore1/kk_hybrid_topo
Port hybrid bond topology styles to Kokkos
2024-06-05 09:44:54 -06:00
c1c3f21b36 Need to update index as well 2024-06-05 09:05:13 -06:00
777577b05e Update docs 2024-06-05 09:00:01 -06:00
0cf67a09ff Merge branch 'develop' into collected-small-changes 2024-06-05 10:56:35 -04:00
ecdc1bc336 Update docs 2024-06-05 08:29:33 -06:00
c6f32b8cb3 Merge pull request #4185 from lab-cosmo/ipi-example
Updated i-pi example
2024-06-05 08:14:42 -06:00
9ea57acf54 pack4 cutoffs 2024-06-05 11:40:24 +02:00
7990da4ee8 Update angle_spica.cpp 2024-06-04 23:00:17 -04:00
860c190712 fixes 2024-06-04 22:56:09 -04:00
e7581af0f5 fixes 2024-06-04 22:43:53 -04:00
a093ddf3fd fixes 2024-06-04 22:20:27 -04:00
d1978dd136 support writing data files with PairIJ sections for all generic testers 2024-06-04 21:57:18 -04:00
261f0e0bb4 Update test_angle_style.cpp 2024-06-04 21:29:44 -04:00
42a3c754ec fixes 2024-06-04 21:26:58 -04:00
4f128fae81 fixes 2024-06-04 20:58:42 -04:00
e2a819e399 fixes 2024-06-04 20:53:41 -04:00
6bbd3be1a9 fixes 2024-06-04 20:45:47 -04:00
657befa959 second version angle_spica_kokkos and added kokkos_omp test to test_angle_style 2024-06-04 20:24:33 -04:00
8a94faee58 Updated i-pi example 2024-06-04 23:48:17 +02:00
de988b271b Merge branch 'develop' into collected-small-changes 2024-06-04 17:16:16 -04:00
d512326f06 Fix uninitialized variable 2024-06-04 15:06:34 -06:00
984d39366e Add Kokkos version of pair_style soft 2024-06-04 13:57:51 -06:00
f5253eb926 Merge pull request #4174 from akohlmey/atom-map-library-interface
Add support for extracting a few more properties and the Atom::map() function to the library interface
2024-06-04 13:23:31 -06:00
c1a71b3488 Merge pull request #4176 from akohlmey/remove-i-pi
Remove i-PI distribution from tools folder
2024-06-04 13:12:42 -06:00
b187001f38 atom charge and dpd/slater cutoff passing 2024-06-04 19:13:56 +02:00
e42c2b7bb5 more fixes 2024-06-03 19:21:15 -04:00
cd04de58dc pair_lj_spica_coul_long fixes, now passes unit test 2024-06-03 19:07:58 -04:00
b1570fc855 first draft angle_spica_kokkos based on angle_harmonic_kokkos 2024-06-03 18:56:39 -04:00
fc0b155de9 Dam example, generalizing non-quintic kernels 2024-06-03 15:04:24 -06:00
1792679bb8 first draft of pair style lj/spica/coul/long/kk 2024-06-03 14:28:31 -04:00
65b21b8772 must reset "eval_in_progress[]" flags to avoid bogus circular dependency errors 2024-06-03 07:50:16 -04:00
118fa8e209 must reset "eval_in_progress[]" flags to avoid bogus circular dependency errors 2024-06-03 07:47:59 -04:00
34a037ccfb workaround for xdg-open and incompatible shared libs 2024-06-02 09:41:58 -04:00
7258b2972a small LAMMPS-gui build documentation updates 2024-06-02 04:39:08 -04:00
7df21a0e79 remove unused variables 2024-05-31 12:11:20 -04:00
c69e905cd6 Merge branch 'dpd_charged' of https://github.com/Eddy-Barraud/lammps-custom into dpd_charged 2024-05-31 17:07:25 +02:00
9b14a880dc charge pointer and corrections 2024-05-31 17:07:22 +02:00
154280899d Merge branch 'lammps:develop' into dpd_charged 2024-05-31 15:24:08 +02:00
fcdcf65995 creation + working CPU
new pair style dpd/charged which is the combination of dpd and coul/slater/long
Working on CPU, GPU in progress
2024-05-31 15:12:37 +02:00
8d8f6c3efd register build number for Windows 11 24H2 2024-05-30 19:41:42 -04:00
1d7fa4f1a8 register build number for Windows 11 24H2 2024-05-30 19:41:28 -04:00
61b8619f07 let dump_modify types numeric revert labels 2024-05-30 11:34:41 -04:00
788428ebf9 more corrections 2024-05-29 09:00:54 -04:00
10d09aca74 apply corrections to i-PI package on PyPi 2024-05-29 08:51:53 -04:00
1a83fefc70 add false positive 2024-05-29 08:38:54 -04:00
1697f2a465 Merge branch 'develop' into remove-i-pi 2024-05-29 08:36:01 -04:00
1cf1f0daab update false positives 2024-05-28 20:04:12 -04:00
e6a3462018 replace non-ASCII character 2024-05-28 19:59:42 -04:00
2d7515218c improve wording 2024-05-28 19:55:59 -04:00
e8ee0d9e71 Merge pull request #4171 from akohlmey/sort-vector
Add special variable functions sort() and rsort() for sorting vectors by value
2024-05-28 16:22:08 -06:00
05ba777c0a Merge branch 'develop' into remove-i-pi
# Conflicts:
#	doc/src/fix_ipi.rst
2024-05-28 18:03:03 -04:00
dedcfa157c Merge pull request #4157 from lab-cosmo/bugfix/ipi-neigh
Performance improvements for fix_ipi
2024-05-28 15:06:15 -06:00
b7f86f6e34 Removed more whitespace 2024-05-28 11:31:42 +01:00
017d69f0e1 Removed whitespace 2024-05-28 11:19:32 +01:00
09a57c01da Corrected email address 2024-05-28 11:02:57 +01:00
33351704a5 Invisible mais penible 2024-05-28 08:40:19 +02:00
bd5c600608 dump custom, 'typelabel' attribute
writing strings to dump files previously was not implemented in general way.
did not refactor to make more general.
NOTE: added value to middle of enum
2024-05-27 23:58:58 -04:00
2afbf229ff mention the i-PI removal 2024-05-27 19:00:38 -04:00
8f4cf55ada update docs for i-PI removal 2024-05-27 18:58:18 -04:00
475cddfa36 remore i-PI distribution from tools folder 2024-05-27 18:49:40 -04:00
aa8cd7a4b9 Updated the documentation for i-PI 2024-05-28 00:07:07 +02:00
5685c5c74b Fixed list of supported version of plumed 2024-05-26 19:17:00 +01:00
ed675cb306 Added setting of extscalar in fix_plumed 2024-05-26 19:13:28 +01:00
345d559a37 Merge branch 'master' into fix-plumed-cmake 2024-05-26 11:51:35 +01:00
c2ce733d5d whitespace 2024-05-25 07:11:02 -04:00
75a325751e implement support for lammps_map_atom() to plugin loader, Fortran module, swig 2024-05-25 07:01:28 -04:00
8ea31bb5c8 add some unit tests for python wrapper of lammps_map_atom() 2024-05-25 05:59:25 -04:00
3bc367e0b0 implement suggestions made by @rbberger 2024-05-25 05:00:08 -04:00
694faf3235 register lammps_map_atom() with the documentation 2024-05-25 00:31:01 -04:00
fdbaf6feff spelling fix and update false positives 2024-05-25 00:22:38 -04:00
9f0816c3ba add support for lammps_map_atom() in python module 2024-05-24 23:50:11 -04:00
0ec86181f2 add support for 'sametag' array 2024-05-24 23:49:25 -04:00
3701d330c4 add unit test for new library function and settings 2024-05-24 23:03:53 -04:00
e53cc86622 support extracting few more global properties and add interface to Atom::map() 2024-05-24 19:54:26 -04:00
dad0d2651b Merge pull request #4172 from stanmoore1/deallocate_topo
Fix issue with virtual inheritance in Kokkos deallocate_topo function
2024-05-23 15:56:51 -06:00
29e64748c0 Fix issue with virtual inheritance in Kokkos deallocate_topo function 2024-05-23 12:18:18 -06:00
f8d5a898bf Merge pull request #4166 from jrgissing/minor-doc-updates
Minor doc updates
2024-05-23 12:17:00 -06:00
371ec2036f support trailing brackets for sort() and rsort() 2024-05-23 01:24:41 -04:00
e18395cf6e add versionadded marker 2024-05-23 00:16:47 -04:00
4b81337b6a add documentation for new special variable functions 2024-05-23 00:09:54 -04:00
c95389d58c add unit tests for sort() and rsort() special function 2024-05-22 23:57:13 -04:00
2fbfa623cd fix fdotr and update the force-styles unittest 2024-05-22 23:56:16 -04:00
272ce64272 add special function for sorting vectors 2024-05-22 23:46:36 -04:00
5ffff255ea simplify with STL classes 2024-05-22 23:46:13 -04:00
c1538c2f78 move varstyle array definition to Variable class so it can be used in a more general way 2024-05-22 23:42:56 -04:00
86abf4f680 Fix input file bug and update examples 2024-05-22 21:25:31 -04:00
fafecd0584 Merge branch 'cg-dna' of https://github.com/ohenrich/lammps into cg-dna 2024-05-22 16:01:46 +01:00
c8a4951cdf Merge branch 'lammps:develop' into cg-dna 2024-05-22 16:01:16 +01:00
ad81558fe0 Included values in real units 2024-05-22 16:00:58 +01:00
938d117890 Updated tests to contain full stdout 2024-05-22 15:53:09 +01:00
749e259294 Moved test script 2024-05-22 14:15:48 +01:00
8f61bc57d2 move xhold checks caller-side
this also allows it to fall-back on do-nothing rather than crash
2024-05-22 10:02:52 +02:00
c2e4ad220f Update Ta example 2024-05-22 00:37:47 -04:00
f64193dfa4 fix whitespace 2024-05-21 23:42:52 -04:00
1d38550763 replace malloc with memory->create 2024-05-21 23:39:49 -04:00
b010d9cd8c Initialize sum to zero 2024-05-21 22:52:11 -04:00
5d6db7e434 allocate memory for work 2024-05-21 22:39:27 -04:00
ac561095b1 Change int* to tagint* 2024-05-21 21:51:26 -04:00
d42b8ebb6c make use of new dump_modify in examples 2024-05-21 19:40:28 -04:00
3b091c0bd4 type label support for dump xyz 2024-05-21 19:35:04 -04:00
8314254245 Merge branch 'lammps:develop' into kokkospod 2024-05-21 10:12:37 -04:00
4104e73bcd Delete InP training data 2024-05-21 09:45:29 -04:00
44ef81e900 documentation and examples 2024-05-21 09:39:36 -04:00
7d2238d7be install runtime dlls for LAMMPS library only with -DBUILD_SHARED_LIBS=yes 2024-05-20 21:11:22 -04:00
638f6e9551 fix bug with newton_bond off 2024-05-20 21:08:44 -04:00
a6979e5489 support that cmdargs is used multiple times and may be bytearrays directly 2024-05-20 21:08:32 -04:00
a8687b5372 Merge pull request #4164 from akohlmey/collected-small-changes
Collected small changes and fixes
2024-05-20 14:46:30 -06:00
ea3bd6043f whitespace 2024-05-20 14:36:01 -06:00
c55901f8ce Port hybrid topology (bond/angle/dihedral/improper) styles to Kokkos 2024-05-20 14:28:31 -06:00
30704d095d support that cmdargs is used multiple times and may be bytearrays directly 2024-05-20 16:00:19 -04:00
58653e0a87 Merge branch 'lammps:develop' into cg-dna 2024-05-20 15:10:52 +01:00
00cb38e823 real unit and potential file examples (#16) 2024-05-20 15:08:06 +01:00
658dcef145 fix bug with newton_bond off 2024-05-20 06:21:23 -04:00
0577e1ff77 install runtime dlls for LAMMPS library only with -DBUILD_SHARED_LIBS=yes 2024-05-20 06:08:43 -04:00
669819405b Merge branch 'develop' into collected-small-changes 2024-05-20 02:55:52 -04:00
8d25c510c1 Draft examples, patches, clarify interface reconstruct in RHEO 2024-05-19 11:22:52 -06:00
77239a75dc Merge pull request #4162 from stanmoore1/kk_update_4.3.1
Update Kokkos library in LAMMPS to v4.3.1
2024-05-18 09:11:50 -06:00
83d5edb032 Merge branch 'kokkospod' of https://github.com/cesmix-mit/lammps into kokkospod 2024-05-18 08:17:51 -04:00
b5fe3d5b06 update kokkospod 2024-05-18 08:17:48 -04:00
b434c4d119 Merge branch 'lammps:develop' into kokkospod 2024-05-17 17:07:09 -04:00
feae228329 New force calculation 2024-05-17 17:05:50 -04:00
51f009c273 incorrect pair-coul package listings 2024-05-16 15:21:45 -04:00
f2d236eca1 improper styles moved to EXTRA-MOLECULE 2024-05-16 15:08:02 -04:00
9c5d9686f5 deform/pressure is in EXTRA-FIX 2024-05-16 15:03:03 -04:00
febf7c38d3 add reaxff/species delete citation 2024-05-16 14:49:33 -04:00
410cda27e0 keyword was changed at some point 2024-05-16 14:38:04 -04:00
6aec49619f remove redundant initializers from headers 2024-05-16 09:42:00 -04:00
c99e582658 Need to manually enable rocthrust in Makefile build 2024-05-15 16:33:49 -07:00
83cfa0bfdd Set rlogarg to intermediate value, force capped at 35 LJU 2024-05-15 22:50:37 +01:00
5f6f6ba0d6 Reset rlogarg to original value 2024-05-15 22:19:31 +01:00
b31071e18f Removed exit status bug 2024-05-15 22:03:56 +01:00
852becb32a Update Makefile comment 2024-05-15 14:44:50 -06:00
3805a01448 Update CMake 2024-05-15 14:42:01 -06:00
8fbb959ab3 Add support for MI300A with unified memory 2024-05-15 14:40:41 -06:00
5d98c073a4 Capped force debugging completed 2024-05-15 21:25:08 +01:00
a495aff480 Update Kokkos library in LAMMPS to v4.3.1 2024-05-15 14:14:08 -06:00
16b2ed5cc9 initialize pointers to null in constructor 2024-05-15 13:49:54 -04:00
69b8a8c7b3 remove dead code 2024-05-15 13:49:07 -04:00
c0daa9550a Reformatting 2024-05-15 16:47:44 +01:00
17e0e785ab Corrected typo 2024-05-15 16:45:52 +01:00
a7fe12cd7b Reformatting 2024-05-15 16:07:59 +01:00
0e9c3fb768 Updated test script 2024-05-15 15:26:58 +01:00
59ce8c966c Corrected energy for capped force potential 2024-05-15 15:24:36 +01:00
343f8afbf6 Many minor tweaks, adding self/mass + oxide noshift 2024-05-14 14:47:11 -06:00
008a8fcb11 Merge pull request #4159 from evoyiatzis/patch-1
Make compute stress/mop and stress/mop/profile compatible with 2D systems
2024-05-14 13:05:41 -06:00
991f4ed4fb Merge pull request #7 from akohlmey/ml-uf3
Update example with new syntax
2024-05-14 11:09:10 -04:00
83a4ff06bd fix segfault 2024-05-14 08:14:38 -04:00
c8821606fb Merge branch 'develop' into patch-1 2024-05-14 07:25:34 -04:00
b5ecea502a Changed folding logic to use minimum_image rather than pbc 2024-05-14 08:51:40 +02:00
1f52d1769d update ML-UF3 example 2024-05-13 20:29:20 -04:00
17c099488a remove unused variables 2024-05-13 20:20:03 -04:00
4302d65811 fix spelling 2024-05-13 20:19:50 -04:00
49f20229ad Merge branch 'develop' into ml-uf3 2024-05-13 20:16:24 -04:00
2dc5931829 Fix whitespace 2024-05-13 22:34:21 +02:00
bc38b55941 Removed iostream import
Leftover from debugging output
2024-05-13 22:33:48 +02:00
7b728cd434 No need to go through the whole list if one atom has moved enough to trigger re-compute of the NL 2024-05-13 22:33:48 +02:00
ad90c9836f Just some additional comments, and removed debug output 2024-05-13 22:33:48 +02:00
fe19a7efb5 disable Nagle's algorithm for internet socket 2024-05-13 22:33:48 +02:00
bb471b1c86 Minimally-invasive implementation of the ipi-side modification 2024-05-13 22:33:48 +02:00
b3fc34f240 Try a (dirty) fix to the i-pi neighbor list update problem 2024-05-13 22:33:48 +02:00
f05a551ffe Update compute_stress_mop.cpp 2024-05-13 21:32:17 +02:00
ada53dc879 Merge pull request #4161 from lammps/doc-write-data
Incomplete info on write_data command syntax
2024-05-13 13:26:15 -06:00
47c86cdf65 Update compute_stress_mop.rst 2024-05-13 21:26:01 +02:00
86103fa89b revert changes for triclinic boxes in compute_stress_mop.cpp 2024-05-13 21:23:50 +02:00
ed507dc676 revert changes in compute_stress_mop.h 2024-05-13 21:20:32 +02:00
9e755cd0af Merge branch 'lammps:develop' into ml-uf3 2024-05-13 15:10:58 -04:00
4330530237 Merge pull request #4068 from dhairyaiitb/develop
Coefficient of restitution based damping in granular models
2024-05-13 12:43:19 -06:00
0a389bf673 Merge branch 'develop' of github.com:lammps/lammps into patch-1 2024-05-13 12:24:02 -06:00
74f29ba2f3 update example 2024-05-13 14:07:24 -04:00
4e7bddaa0b remove unused variables 2024-05-13 13:55:09 -04:00
af540bec8b Merge pull request #4142 from jrgissing/count/types-return_integer_for_lj_units
flag output for compute count/type as intensive vs extensive
2024-05-13 11:48:35 -06:00
d0f8d9eeb1 Merge branch 'develop' into dhairyaiitb/develop 2024-05-13 13:47:21 -04:00
67b6c36941 Merge pull request #4150 from Bibobu/cg_stuck_bug
Avoiding forcezero infinite loop with zero energy.
2024-05-13 11:46:16 -06:00
d4d4c48574 spelling fixes 2024-05-13 13:43:50 -04:00
84f06aa7a8 Merge branch 'develop' into doc-write-data 2024-05-13 13:38:21 -04:00
f747bb975f Merge pull request #3824 from jrgissing/fix_reaxff/species-fixes
Fix reaxff/species fixes
2024-05-13 11:25:40 -06:00
00d8c6623d Merge pull request #3810 from jrgissing/create_atoms-overlap_w_mol
Create atoms: overlap keyword for atomic molecule
2024-05-13 11:08:34 -06:00
fd1aa7356d Merge pull request #3118 from jrgissing/replicate_periodic_box
Replicate periodic box
2024-05-13 11:06:47 -06:00
cd82af6885 Merge pull request #4148 from jtclemm/small-patches
Small patches for various commands
2024-05-13 11:01:11 -06:00
20a2df0b41 Merge pull request #4152 from nnn911/modify_triclinic
Fix Inconsistent syntax for dump_modify triclinic/general
2024-05-13 11:00:52 -06:00
eb0640fbb5 Merge pull request #4146 from akohlmey/collected-small-changes
Collected small changes
2024-05-13 11:00:18 -06:00
b65e41e509 Update version to development 2024-05-13 10:45:34 -06:00
85a2f4bbfa Merge branch 'lammps:develop' into improve_type_label_support 2024-05-12 23:15:34 -04:00
def7c40ece add citeme 2024-05-12 18:40:48 -04:00
d1fe92c658 charge/regulation: direct type label support 2024-05-12 17:32:03 -04:00
fc32826cd7 more uses of bounds_typelabel 2024-05-12 16:44:24 -04:00
f007be620a compute_rdf: direct type label support
type label that is the same as the keyword ('cutoff') will break things. if syntax is otherwise 'correct', then will throw a syntax error. perhaps could run through typelabels to check first?
2024-05-12 16:11:36 -04:00
c324afeaf1 fix/adapt/fep: use bounds_typelabel 2024-05-12 15:50:41 -04:00
44b99b6b76 bounds() wrapper for type labels 2024-05-12 14:30:55 -04:00
61b9469fd1 Revert "example with augmented utils::bounds"
This reverts commit 25d4b3484d.
2024-05-12 02:00:48 -04:00
25d4b3484d example with augmented utils::bounds
option to check for type label
2024-05-12 01:00:09 -04:00
2492c57c8e typos 2024-05-11 20:14:18 -04:00
5d35392cca finish adapt docs 2024-05-11 19:49:19 -04:00
ff05d45c74 adapt/fep: direct type label support 2024-05-11 19:37:42 -04:00
4d1e4814b7 fix adapt: direct type label support
make utils::bound type aware?
i.e., Atom:BOND argument instead of atom->nbondtypes
2024-05-11 19:13:29 -04:00
c5c7e6fb74 bond/break: direct type label support 2024-05-11 16:40:40 -04:00
8fc1a8ec7f start off with simpler labelmap example 2024-05-11 16:34:17 -04:00
d121d5a503 bond/create: direct type label support 2024-05-11 16:30:21 -04:00
aa9628facf fix_widom: direct type label support 2024-05-11 15:29:43 -04:00
9d7e449767 fix_gcmc: direct type label support
apparently changed text in doc description is just reflowing
2024-05-11 15:20:53 -04:00
c19db76eae delete_bonds: direct type label support 2024-05-11 14:05:48 -04:00
74b3d15c3b improve fix_modify error messages 2024-05-10 08:21:56 -04:00
46b4c09083 simplify xmol comm 2024-05-10 00:15:21 -04:00
e5d6875287 Update Howto_rheo.rst
Typos and wording.
2024-05-09 11:52:16 -04:00
ac0513b5c4 whitespace in compute_stress_mop.rst 2024-05-09 15:25:57 +02:00
9aefa047cb Update compute_stress_mop.rst 2024-05-09 15:17:30 +02:00
e2984c9724 Delete pos1 variable from compute_stress_mop.h 2024-05-09 15:13:26 +02:00
7b007d82a0 Make compute stress/mop compatible with triclinic boxes 2024-05-09 15:12:28 +02:00
a2616630b5 update OpenCL ICD loader source to latest release 2024-05-09 07:18:50 -04:00
b4f18700dc Update fix_reaxff_species.h 2024-05-09 00:06:10 -04:00
8e6a232dff Update fix_reaxff_species.rst 2024-05-08 23:31:36 -04:00
ada61d96fe Update fix_reaxff_species.rst 2024-05-08 19:46:07 -04:00
05438d2357 Update create_atoms.rst 2024-05-08 18:50:02 -04:00
887ffa57d5 Merge branch 'develop' into create_atoms-overlap_w_mol 2024-05-08 18:44:23 -04:00
33525de598 fix incomplete header info on command syntax 2024-05-08 16:39:25 -06:00
3028b6f34c clean up of docs and code 2024-05-06 19:16:06 -06:00
1c11de8a64 comment tweak 2024-05-06 16:47:38 -06:00
a4449fb6ff modified doc page, added examples 2024-05-06 16:44:45 -06:00
3d4bb44911 Minor rearrangements to CoR, fix bug in granular single 2024-05-06 16:39:29 -06:00
daedaaccdc add missing false positive 2024-05-05 12:50:30 -04:00
46a441451d Update compute_stress_mop.rst 2024-05-04 20:11:08 +02:00
e42aff54f9 Make compute stress/mop/profile compatible with 2D systems
Issue an error if the stress is requested in the Z direction for 2D systems
The normalizing 'area' is the length of the opposite cartesian direction
2024-05-04 20:07:08 +02:00
541680c798 Make compute stress/mop compatible with 2D systems
Issue an error if the stress should be computed in the Z direction in 2D systems
The normalizing 'area' in 2D systems is the length of the simulation box in the other cartesian direction
2024-05-04 20:02:05 +02:00
2f488cc594 Merge pull request #6 from monk-04/ml-uf3
Bug Fixes- uniform knot spacing, memory leaks, array initialization
2024-05-03 20:02:01 -04:00
fe24ddebcd Removed trailing whitespace 2024-05-03 18:31:12 -04:00
1cfbc04586 Initialize setflag, n2b_coeff_array_size, n2b_knots_array_size, n3b_coeff_array_size, n3b_knots_array_size arrays to 0; fixed memory leaks; removed some dead code 2024-05-03 18:28:33 -04:00
da7459c805 Adding heat options, prevent asynchronous mpi bond creation/deletion 2024-05-03 15:13:45 -06:00
a7f4fc1815 Fixed bug with uniform knot spacing 2024-05-03 12:58:59 -04:00
99b3233564 Added names of new source code files 2024-05-03 16:20:57 +01:00
775a73b67c cgDNA 'real' units and potential file reading for non-modifiable potential parameters (#15)
* oxDNA potential file reading and real units

This allows for pair and bond coefficients to be read from an appropriately formatted potential file, and also allows for the use of 'real' units within oxDNA1. The correct backend coefficients for pair and bonded interactions are set when the atom vector is initialised through the "ConstantsOxdna" class, based on the units specified within the input file.

* Extract seqav/seqdep and temp from potential files

Also includes miscellaneous string consistency changes and removes unnecessary parameter from reader.next_line instances.

* oxDNA2 potential file reading and real units

This extends previous changes to oxDNA2 specific potentials, being FENE, excluded volume, coaxial stacking and Debye-Hückel. Units now default to LJ values rather than 0.

* oxDNA potential files

* LJ <-> real units conversion tool

Converts standard oxDNA data and input file to real units, with inverse flag available for real -> LJ.

* oxRNA2 potential file reading and real units

For RNA, d_cs_x is treated as d_cs within ConstantsOxdna in order to reduce code duplication and complexity.

* Reparameterise real units

* Generalise PotentialFileReader logs

* Extract stk xi and kappa from potential files

This allows users to edit these values from the input script, as is documented, rather than them being within the potential files.

* Real unit and potential file documentation

This adds examples for real unit parameters and specific potential file documentation for each bond and pair style.
2024-05-03 15:00:29 +01:00
ca675b557f Minor edits for python2/3 support, improved comments 2024-05-03 11:23:42 +01:00
759ce70af7 Merge branch 'lammps:develop' into ml-uf3 2024-05-02 19:31:21 -04:00
94ab3c2a01 Merge pull request #5 from monk-04/ml-uf3
Remove std::vector completely
2024-05-02 19:29:57 -04:00
4a8ed1bc78 Removed dead code, fixed trailing whitespace 2024-05-02 19:28:58 -04:00
ab8e4b7676 Fixed trailing whitespace 2024-05-02 19:28:27 -04:00
3340dd5f54 Removed unused variables and reordered the code 2024-05-02 19:03:25 -04:00
5f2cae0e08 Commented out the uniform knot spacing logic as for more than 1 processors was getting some weird errors.
Deleted commented (dead) code.
Updated the memory_usage function.
Reordered some functions to refelect the calling order
2024-05-02 19:01:26 -04:00
f02c65e12e Removed uf3_pair_bspline and uf3_triplet_bspline 2024-05-02 18:59:49 -04:00
49181bfe8d constants was changed from std::vector to fixed length array 2024-05-02 18:58:26 -04:00
e55d77470b Removed trailing whitespace 2024-05-02 15:23:48 -04:00
9915f86f63 Removed UFBS2b and UFBS3b std::vector objects.
These objects held the bspline basis set object (uf3_pair_bspline and uf3_triplet_bspline) for 2- and 3-body interaction at UFBS2b[itype][jtype] and UFBS3b[itype][jtype][ktype].
These std:vectors were removed. New arrays (cached_constants_2b, cached_constants_2b_deri, cached_constants_3b, cached_constants_3b_deri) were added that holds the cached coefficients of the bspline basis set. The UF3Impl PIMPLE was also removed as it is not longer needed. The memory_usage function needs to updated
2024-05-02 14:35:45 -04:00
dbca2b087d Made 'constants' variable public 2024-05-02 14:27:11 -04:00
39f039719d QEq requires charges 2024-05-02 11:53:41 -04:00
a4892da145 Merge branch 'upstream' into regression-tests 2024-05-01 11:18:51 +05:45
149ffbb2b6 Clarify error message 2024-04-30 09:20:19 +02:00
e9d22ec7f9 Clarify error message 2024-04-30 09:19:03 +02:00
4886678619 Updating masks, cleaning up special bond handling 2024-04-29 16:14:53 -06:00
b1e1b05e0b Match dump_modify syntax for atom and custom dump styles 2024-04-29 13:51:26 +02:00
e34aa0d02b meam/c is no longer an alias for meam 2024-04-28 08:43:24 -04:00
e881bb307c downgrade macOS to version 13 2024-04-27 02:50:28 -04:00
bfd5e6bbc5 make pip install packages in virtual environment 2024-04-27 02:50:28 -04:00
a394fcb5f3 downgrade macOS to version 13 2024-04-27 02:48:40 -04:00
74b49b48cb make pip install packages in virtual environment 2024-04-27 02:48:40 -04:00
69e9483bf7 downgrade macOS to version 13 2024-04-27 02:47:36 -04:00
1f9c33e65d make pip install packages in virtual environment 2024-04-27 02:47:24 -04:00
411574a39c Changed alpha_init initialization to avoid infinite loop with 0 starting
value.
2024-04-27 02:43:50 -04:00
874f5577d4 Added a vectorstyle variable check for fix_ave_histo.cpp 2024-04-27 02:41:12 -04:00
456449d4ff downgrade macOS to version 13 2024-04-27 02:40:41 -04:00
22cfd97f46 make pip install packages in virtual environment 2024-04-27 02:40:26 -04:00
3906eb8148 Merge branch 'lammps:develop' into cg-dna 2024-04-26 14:49:49 +01:00
99ff5b2779 Changed alpha_init initialization to avoid infinite loop with 0 starting
value.
2024-04-26 14:46:30 +02:00
da7de9c75c Merge branch 'develop' of github.com:lammps/lammps into develop 2024-04-26 09:31:21 +02:00
0f3a8d6af8 Adding warning for singular matrix 2024-04-25 14:10:21 -06:00
7ad74ffbd8 Removing unused files 2024-04-24 13:10:44 -06:00
21cae39d14 Documentation for fix add/heat 2024-04-24 13:04:51 -06:00
4220be380c Finishing oxidation, adding hybrid compatability for BPM 2024-04-24 11:48:44 -06:00
cfc811a1b3 downgrade macOS to version 13 2024-04-24 03:50:48 -04:00
a85b0603a2 downgrade macOS to version 13 2024-04-24 02:45:36 -04:00
4437891c30 catch command errors 2024-04-24 02:26:27 -04:00
83643ded91 flag development 2024-04-24 02:25:52 -04:00
fc20b8c546 make pip install packages in virtual environment 2024-04-24 02:24:47 -04:00
b993dadcdc try virtual environment instead of user installation 2024-04-24 01:58:54 -04:00
8073cec0e4 make pip install packages in user area 2024-04-24 01:55:13 -04:00
b2aed19c88 Update doc/src/compute_count_type.rst
Co-authored-by: Axel Kohlmeyer <akohlmey@gmail.com>
2024-04-23 23:32:27 -04:00
6de19ec109 Tweaking doc text 2024-04-23 21:02:02 -06:00
3dbfe26b6d Extra D2min options/checks for undercoord particles 2024-04-23 20:58:20 -06:00
80a0c5899e Fix coeff parsing classic gran model 2024-04-23 20:47:01 -06:00
f6eeaaef6f Update compute_count_type.rst 2024-04-23 19:45:14 -04:00
6e45a71de3 restore numerical types example
(duplicated with type labels)
2024-04-23 10:16:46 -04:00
b227663b3b restore numerical examples
(duplicated in type label versions)
2024-04-23 10:13:50 -04:00
f815ded1b8 add a few more intensive vs. externsive settings 2024-04-22 22:04:42 -04:00
400070d038 catch command errors 2024-04-22 21:28:56 -04:00
f66ae5c285 output verbose info 2024-04-22 21:23:42 -04:00
dc04a2ec5a for vectors we have to check for either extvector or extlist 2024-04-22 21:22:24 -04:00
44bfcff550 Fixing variable pmean in deform/press 2024-04-22 19:08:29 -06:00
3ce628cf07 fix extscalar bugs in fix shake and fix sprint/rg 2024-04-22 20:30:28 -04:00
a88e8757e3 guard against not setting extscalar, extvector, or extarray when required 2024-04-22 19:55:52 -04:00
25a9bf1ff6 Merge branch 'develop' into jake_replicate 2024-04-22 16:10:42 -06:00
21eeb231ae remove bogus example 2024-04-22 15:27:53 -04:00
d896f307ba Update fix_hyper_local.rst 2024-04-22 14:00:38 -04:00
628531dadb Merge pull request #4144 from Bibobu/ave_histo_vector_bug
Fix for fix_ave_histo bug with vector style variables
2024-04-22 09:42:24 -06:00
3ab6997a5b fix broken link 2024-04-22 07:28:53 -04:00
761cfdaabf switch markdown formatting to restructured text 2024-04-22 07:26:02 -04:00
44ec209796 direct type label for group 2024-04-22 00:29:23 -04:00
e15f7a1e96 clarify that sgcmc output is intensive 2024-04-21 23:38:15 -04:00
a50192a7d1 mol/swap also flags output as intensive value! 2024-04-21 23:29:27 -04:00
26c8a3a639 fix gcmc and widom also report 'intensively' 2024-04-21 23:25:33 -04:00
6bd57cd90a fix atom/swap reports value as intensive 2024-04-21 23:20:20 -04:00
48600cd153 Merge branch 'develop' of github.com:lammps/lammps into develop 2024-04-20 17:45:06 +02:00
baaea8271b Merge branch 'develop' of github.com:lammps/lammps into ave_histo_vector_bug 2024-04-20 17:38:38 +02:00
38c7d7aa1c Added a vectorstyle variable check for fix_ave_histo.cpp 2024-04-20 17:31:34 +02:00
14dc82a2bf Adding periodicity check 2024-04-19 15:40:27 -06:00
97d8ecbac1 Improvements & bug fixes to fix def/press 2024-04-19 15:14:42 -06:00
52ab29798a Merge branch 'lammps:develop' into cg-dna 2024-04-19 22:07:32 +01:00
cf6522eebb type label support for atom/swap 2024-04-18 14:32:23 -04:00
267e75133a generalize passthrough args 2024-04-18 14:30:27 -04:00
1815a00fd0 cleanup 2024-04-18 14:12:23 -04:00
eec037ac5e make use of refactored expand_type elsewhere 2024-04-18 13:41:51 -04:00
931417da0a always return integers for counts
previously, atom, bond, angles, dihedral and improper counts were normalized by natoms when using LJ units
2024-04-18 11:00:02 -04:00
c5ecef82c1 Updating BPM reference information 2024-04-18 08:49:18 -06:00
b3e03d5188 refactor expand_types to return int 2024-04-17 18:56:28 -04:00
42a4e63061 Merge branch 'lammps:develop' into ml-uf3 2024-04-17 16:45:33 -04:00
3310180a9f Fixed trailing whitespaces 2024-04-17 16:45:05 -04:00
e84540c626 fix/mol/swap: direct type label support 2024-04-17 14:35:00 -04:00
8ceb6f096b Merge pull request #4 from monk-04/ml-uf3
Updates to pair_uf3- Reading potential from single file, arrays from memory class, MPI to communicate the arrays
2024-04-17 10:51:59 -04:00
18ae98201b Updated the documentation about UF3 LAMMPS potential file 2024-04-17 10:51:21 -04:00
a1826b1364 fix_deposit: direct type label support 2024-04-17 00:16:00 -04:00
e590e27faa create_atoms: direct type label support 2024-04-16 19:56:37 -04:00
453469d6fe breathe is currently not compatible with sphinx 7.3
# Conflicts:
#	doc/utils/requirements.txt
2024-04-16 19:52:20 -04:00
4c1be999fa Removed reference to std::vector knots and coefficients; commented out getter functions 2024-04-15 15:31:42 -04:00
d468ee8f7d Updated the code as we are no longer using std::vector for knots and coefficients 2024-04-15 15:22:22 -04:00
f6c8bd1178 Updated pair_coeff in unittest to read only one potential file; added Nb.uf3 unified potential file 2024-04-15 10:51:39 -04:00
cf729fc358 Added new constructor functions in uf3_pair_bspline and uf3_triplet_bspline to construct std::vectors of knots and coefficients rom memory block 2024-04-15 10:38:00 -04:00
fcf8500887 Added uf3_read_unified_pot_file() to read single potential file on rank 0 and communicate() to broadcast the data to other ranks
Added one_ceoff
2024-04-15 10:37:21 -04:00
e699ced7bd make PyLammps mass property compatible with per-atom masses. 2024-04-14 18:27:55 -04:00
6baa2f432c pylammps: fix get atom.mass by atom.type 2024-04-14 18:27:42 -04:00
01b1d047a2 Merge branch 'lammps:develop' into ml-uf3 2024-04-13 18:56:07 -04:00
03fc889df9 Merge branch 'rheo' of github.com:jtclemm/lammps into rheo 2024-04-10 12:18:02 -06:00
7a80a74791 Merge branch 'develop' into jake_replicate 2024-04-10 11:32:43 -06:00
1135d6be64 Noting artificial/visc exception in doc 2024-04-10 10:44:41 -06:00
5383bd2613 More doc files, misc clean ups 2024-04-10 09:47:55 -06:00
5b47038b14 Set default trimflag to zero 2024-04-05 17:52:44 +01:00
0344b6af70 updated the associated example file 2024-04-05 10:14:07 -05:00
84b6c6a088 Added prefactors and errors for incorrect combinations. 2024-04-05 09:58:33 -05:00
dc1bc8a8cf Merge branch 'lammps:develop' into cg-dna 2024-04-05 11:40:16 +01:00
c114938867 Added symmetrization of cutoff in init_one() and fixed a print 2024-04-04 21:05:03 -04:00
e8294aa207 Backport of PR #4098 from develop 2024-04-04 21:04:19 -04:00
6e32b0cada Allow compute spin for groups other than all 2024-04-04 20:54:43 -04:00
6243735af4 Simplify output of windows version. If unknown build number just output "Windows Build #####" 2024-04-04 20:54:03 -04:00
5816c0875a Fix bug in Kokkos when shrink-wrapping with no atoms 2024-04-04 20:53:29 -04:00
a31617ef7b disable references to cuFFT (which is not yet used) 2024-04-04 20:52:01 -04:00
d5c7da1b0e fix bug in option arg parsing of fix ave/correlate, also update doc page for fix ave/correlate/long 2024-04-04 20:51:13 -04:00
0b1453f7ea call alternate minimum image code from @stanmoore1 from fix rigid/small 2024-04-04 20:49:46 -04:00
58d6f9ba2e Removing hrate from fix deform/pressure restart 2024-04-04 11:29:28 -06:00
8254d20b44 Removing unnecessary comm calls fix heat/flow 2024-04-04 11:29:02 -06:00
c63c1856ec Fix compilation error, edit artificial visc toggle 2024-04-04 11:21:42 -06:00
ceec24d50b Adding hybrid support to BPM, more doc pages 2024-04-04 09:42:10 -06:00
ba204b3989 alternate fix to PR #4116 2024-04-03 18:07:24 -04:00
fd86bbd982 must always return nfaces=0 for less than 3 vertices 2024-04-03 15:08:59 -04:00
c502dd4033 Fixed trailing whitespace 2024-04-02 13:20:29 -04:00
0809d8b722 Updated documentation about METADATA in the uf3 lammps pot files 2024-04-02 13:17:13 -04:00
887ce4948a Removed old pot files 2024-04-02 13:16:38 -04:00
1ef7b8132c Updated A_A.uf3 to Nb_Nb.uf3 and A_A_A.uf3 to Nb_Nb_Nb.uf3 2024-04-02 13:16:00 -04:00
3734252ed8 Replaced the A_A.uf3 and A_A_A.uf3 with uf3 lammps pot files for Nb 2024-04-02 13:15:05 -04:00
7281f9327b Added code to check if 'UNITS:' metadata is present in the pot file or not 2024-04-02 13:14:28 -04:00
d3bc4c7eb8 Removed commented out code 2024-04-02 11:18:01 -04:00
72772c136f Merge branch 'lammps:develop' into ml-uf3 2024-04-01 18:34:50 -04:00
801ceea90a Pimplifying the code Attempt-1 2024-04-01 18:33:02 -04:00
42dcc76a70 Merge pull request #2 from akohlmey/ml-uf3
More updates to PR 4110
2024-04-01 12:03:42 -04:00
08db64c27f More updates for oxidation, more doc pages 2024-03-31 21:40:34 -06:00
020a4f6ee7 update and refactor xdr support and update its license 2024-03-31 21:49:48 -04:00
7ea0dc3996 Adding more oxidation features + doc pages 2024-03-29 19:00:14 -06:00
a6230ba147 replace pow(x,2) and pow(x,3) with square() and cube() 2024-03-28 23:53:06 -04:00
1fff0a33fc drop log messages 2024-03-28 23:38:03 -04:00
c5262873b0 initialize all class pointers to null, delete all allocated storage 2024-03-28 23:36:57 -04:00
584137f104 remove num_of_elements class variable, just use local copy of atom->ntypes 2024-03-28 23:36:13 -04:00
6bdf981942 don't use pow() function for simple square 2024-03-28 23:08:51 -04:00
2219e764ce call utils::logmesg() only on rank 0, use c++ string comparisons, remove debug comments 2024-03-28 22:26:50 -04:00
3aae2d0c4b apply clang-format 2024-03-28 22:09:22 -04:00
379e212135 add system error message with failure to open potential 2024-03-28 22:05:27 -04:00
7c3ac31507 remove dead code 2024-03-28 21:50:40 -04:00
34f88843fa update example logs 2024-03-28 21:50:30 -04:00
a26c281a63 Merge pull request #1 from akohlmey/ml-uf3
Updates for ml-uf3 pull request
2024-03-28 19:23:08 -04:00
ecb5704f25 some formatting and logic cleanup. 2024-03-28 17:32:26 -04:00
a6e5c8b981 update more files and docs for .uf3 potential file extension
also remove redundant files
2024-03-28 17:32:07 -04:00
392c3b6d65 manybody and single flag need to be changed from the default when 2-body/3-body is selected 2024-03-28 17:02:07 -04:00
eb89c7a392 examples folder was moved 2024-03-28 17:01:37 -04:00
010a4c076b Prototyping oxidation 2024-03-28 11:31:21 -06:00
fca23dac72 some style cleanup and simplified pair_style and pair_coeff input 2024-03-27 07:29:31 -04:00
713b308a99 update ML-UF3 examples 2024-03-27 07:25:36 -04:00
fda433a7ee reformat and fix spelling and related issues 2024-03-27 06:53:03 -04:00
7323364d1d move examples 2024-03-27 06:35:19 -04:00
0d7c41b1c3 update code owners list 2024-03-27 06:30:20 -04:00
f9a0ec83b4 update .gitignore 2024-03-27 06:28:35 -04:00
7e09353e7c add ML-UF3 to compatible CMake preset files 2024-03-27 06:28:23 -04:00
dc0b0d8be8 Added example potential files for W 2024-03-26 13:18:26 -04:00
ff39a03e83 Removed trailing whitespaces 2024-03-26 13:14:32 -04:00
3a34b3eeaf Added uf3 examples to the examples directory 2024-03-26 12:35:30 -04:00
4e95db1bb7 Added uf3 details to Commands_pair, Packages_details and Packages_list 2024-03-26 12:34:29 -04:00
b2809996b8 fixed trailing whitespaces 2024-03-25 17:45:06 -04:00
06c4fc6590 Removed LAMMPS errordocs 2024-03-25 17:23:47 -04:00
de43263e28 Fixed lammps developer email-id and contributing authors section. Removed some old comments 2024-03-25 17:18:11 -04:00
d55f750dc6 Fixed typos in the UF3 equation 2024-03-25 15:17:43 -04:00
5c536c8290 Added ml-uf3 unittest 2024-03-25 12:11:05 -04:00
a720d0dc67 Added ml-uf3 potential files 2024-03-25 12:10:31 -04:00
923e251540 Added documentation for ml-uf3 2024-03-25 12:10:01 -04:00
9a23ddf88a Added ml-uf3 to cmake and make files 2024-03-25 12:08:51 -04:00
53c6959e52 Added src files for uf3/kk 2024-03-25 12:08:07 -04:00
6dded43b2c Added ml-uf3 src files 2024-03-25 12:07:18 -04:00
417598498c fix compute pod 2024-03-20 20:01:22 -04:00
0f31a825a5 fix compute 2024-03-20 16:08:13 -04:00
b5d769bbbf Revert "Began CGDNA Howto"
This reverts commit c4b96704b27743c4e6b01166ea6d7e7a16480692.
2024-03-20 16:23:17 +00:00
bc436dad3a Added example directory 2024-03-20 16:23:17 +00:00
a3e4788221 Minor edits 2024-03-20 16:23:17 +00:00
add5fc07fd Changed user permissions 2024-03-20 16:23:17 +00:00
eee23b45c9 Began CGDNA Howto 2024-03-20 16:23:17 +00:00
c5fc65433a Updated and added utility scripts 2024-03-20 16:23:17 +00:00
e8606a51da Changed permissions to non-executable 2024-03-20 16:23:17 +00:00
7fa0e7b730 Added script for 2-particle visualisation 2024-03-20 16:23:17 +00:00
b021543140 fix zero neighbor in compute classes 2024-03-19 19:25:29 -04:00
a37b7754a7 fix a bug due to zero neighbor 2024-03-19 19:17:08 -04:00
36b9d93b52 fix memory leaks in lammps_gather*concat() functions of the library interface 2024-03-19 12:04:40 -04:00
cbe2266e40 update electron radius velocities and radii in EFF NH fixes analog to fix nve/eff 2024-03-18 23:54:03 -04:00
fb10881636 fix bug in f2c string conversion detected by bound checking 2024-03-18 10:28:18 -04:00
7e163d451e uodate 2024-03-17 10:49:59 -04:00
dcbb09f321 improved revision of write_dump output frequency setting for 64-bit timesteps 2024-03-06 11:14:19 -05:00
b00cb7e6bd add missing symlink 2024-03-04 11:47:16 -05:00
edfe752b2a try a different workaround for "fix not computed at compatible time" with write_dump 2024-03-03 23:58:47 -05:00
6d28d53d60 fix missing thread initialization exposed by LAMMPS-GUI 2024-03-03 18:36:38 -05:00
9976d58b34 flag branch as maintenance version again 2024-03-02 15:14:08 -05:00
46265e36ce Merge pull request #4044 from lammps/maintenance
Third Set of Collected Bug Fixes and Maintenance Updates for 2 August 2023 Stable release
2024-03-02 15:11:27 -05:00
2a8d16ee4b update MS-MEAM examples 2024-03-01 18:56:43 -05:00
54035fba79 improve error messages for meam/ms 2024-03-01 18:56:16 -05:00
7ac835a12f Revert "This example needs to be replaced as it is not correct"
This reverts commit 688f4f5288.
2024-03-01 18:34:13 -05:00
6058fcc37e Revert "Removing because examples/meam/msmeam removed"
This reverts commit 573021b362.
2024-03-01 18:34:04 -05:00
ee5ee22b47 Revert "Added comment about not using ialloy with meam/ms"
This reverts commit a6c5f3f714.

# Conflicts:
#	doc/src/pair_meam.rst
2024-03-01 18:33:30 -05:00
6138369079 Revert "must remove unit test for meam/ms since potentials were removed"
This reverts commit 50b8fe9c61.
2024-03-01 18:33:01 -05:00
b7820bfd0e whitespace 2024-03-01 17:22:18 -05:00
50b8fe9c61 must remove unit test for meam/ms since potentials were removed 2024-03-01 17:15:47 -05:00
8fa42612e6 Added override for ialloy default with MS-MEAM 2024-03-01 17:12:33 -05:00
a6c5f3f714 Added comment about not using ialloy with meam/ms 2024-03-01 16:50:56 -05:00
573021b362 Removing because examples/meam/msmeam removed 2024-03-01 16:46:55 -05:00
688f4f5288 This example needs to be replaced as it is not correct 2024-03-01 16:42:13 -05:00
2831b904e9 cosmetic 2024-03-01 07:19:42 -05:00
bff40d2add flag as update 3 2024-03-01 03:06:19 -05:00
7d2b2ff776 restore correct formatting to meam_force.cpp and port changes to KOKKOS 2024-02-28 17:20:35 -05:00
1d09911bdb Fixed additional errors with multicomponent systems, making msmeamflag independent of ialloy 2024-02-28 17:20:27 -05:00
e446b17d41 Fixed error in forces that only affects non-zero t1m MS-MEAM models 2024-02-26 09:20:48 -05:00
e7ce03aa0a fix conversion bug when input is in radians 2024-02-26 07:54:46 -05:00
a9eaa71f8c make PLUGIN package compatible with static linkage of LAMMPS 2024-02-26 06:59:43 -05:00
6203c18ef0 add cuFFT presence error check to CMake script 2024-02-24 03:41:45 -05:00
f9ecdb5b54 Updated documentation 2024-02-23 15:21:56 -06:00
b3de75da97 Cleaning up math, fixing tension bug, patching bond creation 2024-02-23 13:26:28 -07:00
7d5931def3 Added example folders tested 2024-02-23 08:16:55 -06:00
a7aacd2440 document requirement of per-type masses 2024-02-22 04:34:41 -05:00
2178ba2513 a few more corrections 2024-02-21 21:04:00 -05:00
8277218cbb correct output 2024-02-21 20:52:27 -05:00
13d7178f95 monte carlo insertions require per-type masses 2024-02-21 20:46:52 -05:00
1255772864 use a more "CMake" way to link to cuFFT with check in CMake config run 2024-02-21 10:49:55 -05:00
4f07f74f52 clean up redundant variables 2024-02-13 19:00:19 -05:00
0951e28a08 Merge branch 'develop' into replicate_periodic_box 2024-02-13 18:52:43 -05:00
be237f88f6 update kokkospod 2024-02-13 18:49:11 -05:00
443c40b98d Merge branch 'lammps:develop' into create_atoms-overlap_w_mol 2024-02-13 18:47:15 -05:00
382a449f58 Merge branch 'lammps:develop' into fix_reaxff/species-fixes 2024-02-13 18:46:04 -05:00
0878fca16e add detection for CrayClang to the OpenMP compatibility check 2024-02-13 11:09:53 -05:00
3454e1fce5 update pod 2024-02-13 00:45:08 -05:00
9c7b169003 Renamed the log files under examples/bpm 2024-02-12 19:43:05 -06:00
147ad3c67c avoid installing libraries and headers from downloaded external libraries 2024-02-09 13:45:52 -05:00
05e4dded0f fix bug with assigning molecule IDs in parallel 2024-02-09 11:08:21 -05:00
e7f0f9be5a Added another example of a config file 2024-02-08 11:37:49 -06:00
a1f38b9a75 Captured output of the test run, reported if the run failed (e.g. missing packages) 2024-02-08 11:29:26 -06:00
f141543659 Looped over all the runs in an input script, made more descriptive output 2024-02-08 11:12:54 -06:00
5739203ad3 small optimization and portability to Solaris/OpenIndiana 2024-02-07 23:01:47 -05:00
244c72afd9 Counted the total num checks per test 2024-02-07 15:42:15 -06:00
051167a14c Supported JUnit XML output 2024-02-07 15:20:55 -06:00
194b45b729 Example file 2024-02-07 09:52:02 -06:00
26cff47386 Removed whitespace 2024-02-07 09:45:29 -06:00
febb3671d8 removed whitespace 2024-02-06 18:03:17 -06:00
5137e86972 en models incorporated 2024-02-05 16:30:44 -06:00
63f33aa3a4 first 2024-02-04 16:29:19 -06:00
3c232ce6a6 ensure that the "timeremain" thermo keyword never reports a negative remaining time 2024-02-02 12:06:25 -05:00
f24ced3bb6 fix uninitialized data bug when using a child class 2024-02-01 20:15:29 -05:00
ace87d2bb8 Only printed out all the quantities being checked with verbose on 2024-02-01 17:21:30 -06:00
621a4e406f Handled exception with the yaml load 2024-02-01 15:22:46 -06:00
d8b74e907e add workaround for Cray's Clang based compiler to compile fmtlib 2024-02-01 15:34:24 -05:00
039161112b fix issues with reading and writing data files for systems without atom IDs 2024-01-31 20:32:41 -05:00
911227a981 Cleaned up and expanded the set of examples being tested 2024-01-31 14:47:11 -06:00
b1688d4287 Merge branch 'upstream' into regression-tests 2024-01-31 13:48:49 -06:00
829708bd71 Allowed to specify example folders from arguments 2024-01-31 13:46:34 -06:00
e9dc5bafff Improved failed test info 2024-01-31 13:06:04 -06:00
cfe6afe665 Used the absolute path for the lammps binary, no need for symbolic links 2024-01-31 11:03:23 -06:00
91d292fb7c Tested with more example subfolders 2024-01-30 17:08:24 -06:00
293e930cb0 Expanded the tests for more subfolders, need to check if there is an existing log file with matching nprocs 2024-01-30 14:01:43 -06:00
c0fc4c8908 Cleaned up and tested with micelle and melt under examples 2024-01-30 13:07:57 -06:00
153e30227e Added function to extract output from an existing log file into a yaml data structure, working on in place testing 2024-01-29 18:07:21 -06:00
ba4174f474 Added tolerances to the config file 2024-01-29 15:25:52 -06:00
522608b59e make compiling QUIP library more reliable
- replace any -std=f* flags when using GNU fortran with -std=gnu
- cancel parallel make and require serial compile to avoid race condition accessing modules
- increase maximum allowed size for arrays on the stack 100 times
2024-01-26 17:32:14 -05:00
24e65b618b update external MDI library to version 1.4.26 2024-01-23 21:33:32 -05:00
70ea1dd352 Refreshing no shift flag for solid particles 2024-01-23 14:58:31 -07:00
dd7e95cd12 Merge branch 'rheo' of github.com:jtclemm/lammps into rheo 2024-01-23 14:04:28 -07:00
574ccc64eb Fixing bugs for solid particles 2024-01-23 14:04:10 -07:00
e22cea04e2 replace references to fix ave/spatial with correct equivalents 2024-01-21 12:27:45 -05:00
a70aece450 make sure both NEB class constructors are consistently initialized 2024-01-20 14:49:27 -05:00
92d5772dfa correctly determine when to create "rootworld" communicator 2024-01-20 10:54:23 -05:00
80861fe1ff New syntax in doc files 2024-01-19 21:24:27 -07:00
5f04990bc2 Avoid (harmless) errors when shutting down the GPU. 2024-01-19 00:33:10 -05:00
3b4291c750 remove undesired example 2024-01-18 18:15:42 -05:00
fcc85fb223 Revert "revert more general doc changes. those are moved to a separate branch for further edits."
This reverts commit fb9ae23516.
2024-01-18 18:14:41 -05:00
affb879037 Merge branch 'develop' into rheo 2024-01-18 14:52:15 -07:00
d9a7365273 fixed indentations and add support for python 3 2024-01-18 14:54:26 -05:00
eaa00c238a backport fix bond/react bugfixes from upstream PR #3905 2024-01-18 14:50:26 -05:00
20dae33563 Fix bug in some Kokkos fixes' unpack exchange on device
# Conflicts:
#	src/KOKKOS/fix_spring_self_kokkos.cpp
#	src/KOKKOS/fix_spring_self_kokkos.h
2024-01-17 19:33:39 -05:00
67f06097ee Updating utils functions for pair rheo/react 2024-01-15 22:04:26 -07:00
a34ddd7ccd Merge branch 'rheo' of github.com:jtclemm/lammps into rheo 2024-01-15 17:26:42 -07:00
56764f0244 Merge branch 'develop' into rheo 2024-01-15 17:26:23 -07:00
9d360af2c5 this limitation no longer applies 2024-01-15 12:16:11 -05:00
cafa9ccec2 backport of 32-bit integer overflow fixes for large molecular systems from develop 2024-01-15 11:16:12 -05:00
9296357851 update unit test data for corrected angle style cosine/periodic 2024-01-12 19:04:03 -05:00
c53afef070 correct factor 2 force error for m=1 in angle style cosine/periodic 2024-01-12 19:03:48 -05:00
2ac37aa91a Merge branch 'rheo' of github.com:jtclemm/lammps into rheo 2024-01-12 17:00:37 -07:00
a0cf5191c2 Adding nonzero starting rhos 2024-01-12 17:00:12 -07:00
faef34a8d4 Merge branch 'develop' into rheo 2024-01-12 13:26:38 -07:00
073a72d933 fixing merge conflicts 2024-01-12 11:12:02 -07:00
7bdac7eafd Merge branch 'stable' into maintenance 2024-01-12 12:00:40 -05:00
a01a6f3a27 silence compiler warning 2024-01-12 11:58:44 -05:00
bfd15408ba correct factor 2 force error for m=1 in angle style cosine/periodic 2024-01-12 11:49:31 -05:00
ad7b5e38ab Merge branch 'develop' into replicate_periodic_box 2024-01-10 20:01:42 -05:00
60f1233b07 Merge branch 'lammps:develop' into create_atoms-overlap_w_mol 2024-01-10 19:55:18 -05:00
63332eb1b2 Merge branch 'lammps:develop' into fix_reaxff/species-fixes 2024-01-10 19:52:55 -05:00
2252706931 Merge branch 'develop' of github.com:lammps/lammps into develop 2024-01-09 10:59:51 +01:00
c60d439fb7 Switched to using argparse 2024-01-08 15:00:24 -06:00
48e0859f0d improve compatibility of oneapi.cmake preset 2024-01-04 11:22:39 -05:00
3f677f798a Fleshing out tension model 2023-12-22 17:04:56 -07:00
66930a4e5c flag error if using INTEL package kspace styles with run style verlet/split 2023-12-22 13:37:38 -05:00
08d2dd2699 Prototyping latent heat, other misc fixes 2023-12-22 10:46:44 -07:00
c434b96a9b remove cached copy of "layout" since this was not always initialized when used 2023-12-22 11:31:48 -05:00
6d3945d367 gracefully handle reaxff parameter files without hydrogen bond parameters 2023-12-21 16:08:19 -05:00
7403426046 Argument error in fix rheo 2023-12-19 13:58:22 -07:00
84443eb114 Backport cmap fixes for compatibility with charmm-gui from develop branch 2023-12-16 23:33:24 -05:00
e37b579237 relax epsilon to be compatible with most recent GCC compilers on Fedora 39 2023-12-16 23:25:23 -05:00
58c2c89d1b avoid that mliappy is initialized multiple times 2023-12-16 23:20:29 -05:00
023960e7d5 remove ineffective macOS hack 2023-12-14 23:29:59 -05:00
84975f31cb flag as maintenance branch again 2023-12-14 21:13:56 -05:00
27e8d0f19c Merge pull request #3933 from lammps/maintenance
Second Set of Collected Bug Fixes and Maintenance Updates for 2 August 2023 Stable release
2023-12-14 21:09:30 -05:00
9befd421ca workaround hack for macOS 2023-12-14 18:07:50 -05:00
b3e54549db safely copy balance shift dimension string with proper termination 2023-12-14 17:32:20 -05:00
85393862af fix typos 2023-12-14 16:48:25 -05:00
ac1db251cb recover compilation 2023-12-14 16:24:22 -05:00
3f48d48eea add missing dependency 2023-12-14 16:00:10 -05:00
d9804d7590 Fix issues with sorting neigh list by cutoff distance 2023-12-14 15:46:32 -05:00
4128d52e1c Bugfix: port missed changes from #3846 2023-12-14 15:45:51 -05:00
2d961e76b3 flag update #2 to stable release 2023-12-13 00:32:59 -05:00
016c9ef4b2 Use PyConfig to initialize Python 2023-12-13 00:30:49 -05:00
e69c65431f silence preprocessor warning from leaking internal define in cython generated code 2023-12-13 00:29:42 -05:00
a40e9222aa add valgrind suppressions for MPICH on Fedora 39 2023-12-13 00:29:05 -05:00
2ed03164b7 Updated in place testing case, assuming in.* are input scripts, skipping input scripts without REG markers for now 2023-12-10 22:56:53 -06:00
fbbdd5bcad Updated run_tests.py for testing inplace input scripts 2023-12-10 16:56:47 -06:00
bcd0eac78a Merge remote-tracking branch 'refs/remotes/origin/regression-tests' into regression-tests 2023-12-10 16:53:52 -06:00
a6f82eb970 Added check if input files in a folder have REG markers 2023-12-10 14:15:13 -06:00
1f13a6a193 Merge branch 'upstream' into regression-tests 2023-12-09 23:02:38 -06:00
1957eb5ca8 Attempted to change dir to individual example folders 2023-12-08 10:21:35 -06:00
283e2103e3 update fix adapt/fep from fix adapt. only supports 2-d parameters for pair styles 2023-12-06 14:35:05 -05:00
2808e6fc52 fix typo 2023-12-06 06:58:55 -05:00
8035521fe4 Merge branch 'develop' of github.com:lammps/lammps into develop 2023-12-04 11:18:13 +01:00
9571d5a0ea Merge branch 'develop' of github.com:Bibobu/lammps into develop 2023-12-04 11:17:37 +01:00
c742b20c5a update Purge.list and avoid redundant checks 2023-12-03 23:27:53 -05:00
530f487dd7 must do region check only when region is active 2023-12-03 11:22:35 -05:00
ba8ca9258b correct dpi to get proper image scaling in PDF output 2023-12-02 16:35:01 -05:00
cd21f67cc6 avoid copying over terminating null 2023-12-02 16:22:43 -05:00
f7aeecd3be Fixing error in averaging 2023-12-01 09:58:40 -07:00
07257595ff use r_c consistently 2023-12-01 05:52:49 -05:00
413d485617 recreate compute xrd mesh image with reasonable dpi setting and used PNG format 2023-12-01 01:32:28 -05:00
8759a18437 handle thermo_modify energy yes correctly 2023-11-30 10:33:54 -05:00
1e26c6d0c5 Adding multiphase support, new stress 2023-11-27 15:53:19 -07:00
f79e9a113f error out when no per-type masses are set. warn if both per-type and per-atom masses are used. 2023-11-27 07:47:55 -05:00
c1fa89186a correct fix mvv/* compatibility checks in DPD-MESO package 2023-11-26 10:31:50 -05:00
609f5ec64b restore using nvcc_wrapper with kokkos-cude.cmake preset 2023-11-25 05:58:05 -05:00
38b79eeb9b some compilers require a code block to follow OpenMP pragmas, even if empty. 2023-11-24 14:53:53 -05:00
7035249abd remove redundant code and fix memory leaks 2023-11-24 05:06:53 -05:00
816d74d80c make compatible with Kokkos 3.7 2023-11-23 14:25:05 -05:00
4926164050 report Kokkos library version and OpenMP standard version 2023-11-23 12:38:59 -05:00
a102d64a95 detect newer OpenMP standard versions 2023-11-23 12:38:46 -05:00
77db8e422a add check and document that "scale yes" is not supported for scaling atomic parameters with fix adapt/fep 2023-11-23 12:38:27 -05:00
ee0c5dc121 Update CODEOWNERS for cmake 2023-11-21 15:48:40 -05:00
184f5a7f5e copy intel C++17 compiler hack to Kokkos makefiles 2023-11-21 13:00:09 -05:00
162b9c3ff3 tweak intel compiler makefile for traditional build 2023-11-21 12:59:54 -05:00
4d06a9928f reduce warnings when compiling with intel classic compilers 2023-11-21 12:58:57 -05:00
938682a751 lower the C++ standard to 14 for some files when compiling with intel classic compiler 2023-11-21 12:58:33 -05:00
00bccbf067 check if creating unix domain socket failed 2023-11-17 03:20:23 -05:00
67085517ff avoid segfault on command errors in force style unit tests and print error mesage instead 2023-11-16 22:10:15 -05:00
3a2d94822a throw error for illegal replication values 2023-11-15 08:03:38 -05:00
c272e8f94f Avoid integer division 2023-11-15 07:35:26 -05:00
7f41eb6d9a Need force_clear for atom_vec_spin_kokkos 2023-11-15 07:35:12 -05:00
a716df7e59 Fix bug in Kokkos minimize + fix deform 2023-11-15 07:34:57 -05:00
08eae40f9a backport enforce2d with fix rigid bugfix 2023-11-15 07:10:55 -05:00
f9b385061b Multiphase support 2023-11-14 12:33:51 -07:00
3c915b14a7 Renamed the README file 2023-11-13 15:18:36 -06:00
25d862d7b4 Added README.md 2023-11-13 15:17:22 -06:00
1d1d53222a Merge branch 'lammps:develop' into regression-tests 2023-11-13 15:08:05 -06:00
3a93b16cff Added argument parsers 2023-11-13 11:52:21 -06:00
476c569804 Used the last thermo step in the log file for comparison 2023-11-13 11:35:27 -06:00
9642a950b1 Updated run_tests.py, added in.eam 2023-11-13 11:19:59 -06:00
b6c031fd03 Update pair_pace_extrapolation.cpp
BUGFIX: pair_pace_extrapolation: setup flag aceimpl->ace->compute_projections = true before computing  extrapolation grade
2023-11-10 11:51:15 -05:00
990c07a133 bugfix: correctly build argv when using Python interface 2023-11-10 11:47:04 -05:00
4e94e697ec bugfix: make copy of exename 2023-11-10 11:46:53 -05:00
4526dccaca Correctly build argv with nullptr at the end 2023-11-10 11:46:40 -05:00
db5ed64045 Merge pull request #2 from Bibobu/dependabot/github_actions/actions/checkout-4
Bump actions/checkout from 3 to 4
2023-11-09 09:52:58 +01:00
73a3ae7602 Debugging some compute property items, allow surface shifting inward 2023-11-08 15:57:42 -07:00
c922fcef5a prototyping limit on tension 2023-11-08 14:30:37 -07:00
b8b2141993 Fixing errors in oxide model 2023-11-07 14:47:46 -07:00
44ae758bf5 Parallel support for bond creation/deletion 2023-11-06 20:27:18 -07:00
92ff79af08 Debugging BPM coupling 2023-11-06 16:22:02 -07:00
109becc542 Retrieved the list of installed packages 2023-11-05 23:39:44 -06:00
16a3abdadd Filling in tension and react 2023-11-03 13:33:03 -06:00
917606e40e Forces are not modified 2023-11-02 17:46:19 -04:00
acaae8a36f Fix bug in fix_dt_reset_kokkos 2023-11-02 17:46:10 -04:00
28803ee78d add code to avoid deadlock 2023-11-02 02:17:23 -04:00
dd498fcbf8 add comm of ghost atom coords to compute cluster/atom and aggregate/atom 2023-11-02 02:16:42 -04:00
5b14b7c86c Fixing gitignore 2023-11-01 13:42:33 -06:00
bf115e5df4 Fix compiler/memory errors in tension, update properties in surface 2023-11-01 11:55:07 -06:00
89150877a2 Hiding compile bugs in temporary files 2023-10-30 20:48:20 -06:00
0fb7fd9a80 Merge branch 'rheo' of github.com:jtclemm/lammps into rheo 2023-10-30 20:22:27 -06:00
0945c3dda8 Bug in rheo, cleaning up old files 2023-10-30 20:22:14 -06:00
0f8af20d0b limit the maximum number of iterations so the LAMMPS simulation will not stall 2023-10-27 20:33:44 -04:00
00ef4ca3f6 fix bug in not listing all not compiled-in styles 2023-10-27 11:10:31 -04:00
50fbe61616 Backport of PR #3954 to stable release 2023-10-26 20:43:59 -04:00
854c6d93e2 more checks for misformatted ReST roles 2023-10-26 05:07:45 -04:00
6942103c27 Initiated the regression test setup 2023-10-25 11:21:00 -05:00
e8e2c5f986 Fix harmless compiler warnings 2023-10-24 17:23:42 -04:00
cff21ce808 improve help and error messages 2023-10-24 10:41:10 -04:00
97c4875a08 add sanity check on path to LAMMPS python package folder 2023-10-24 10:41:01 -04:00
c9aedf9df8 make sure liblinalg is built before linking phana 2023-10-23 14:58:04 -04:00
723dc17d80 must initialize deleted pointers to null since the following commands may fail 2023-10-23 07:35:10 -04:00
c90f874a0d avoid invalid escape warnings for regexp expressions with python 3.12 2023-10-22 20:01:55 -04:00
6281a818e7 merge conflicts 2023-10-22 14:55:13 -06:00
0d2b3dc51e Drafting oxide model 2023-10-22 14:54:27 -06:00
4ed5243d9b add the missing dividing by np in compute t_prim 2023-10-21 14:58:46 -04:00
71c7d143b7 fix logic bug 2023-10-20 07:01:48 -04:00
e944140ff2 whitespace 2023-10-19 15:29:45 -04:00
b54545d1a4 Fix bug in Kokkos SNAP on GPUs 2023-10-19 15:29:33 -04:00
5986fb90b9 Few updates to surface tension, add stress fix 2023-10-19 12:37:59 -06:00
88fb7c849d Merge branch 'rheo' of github.com:jtclemm/lammps into rheo 2023-10-19 11:57:25 -06:00
f28e46d40e Adding support for remap v 2023-10-19 11:57:07 -06:00
fc7119982b whitespace 2023-10-19 12:53:13 -04:00
9e45df19c1 Barostat fix - see lammps PR 879 and 942 2023-10-19 12:25:24 -04:00
8bfec75568 Add more error checks to Kokkos minimize 2023-10-19 10:11:42 -04:00
0f948e98f2 quote strings with special characters in keyword lists 2023-10-19 10:11:29 -04:00
b9ce258935 Revert "make sure itag is initialized"
This reverts commit 058f87e019.
2023-10-18 09:32:44 -04:00
058f87e019 make sure itag is initialized 2023-10-18 09:24:31 -04:00
6c2e469f5d copy-and-paste bugfix from @stanmoore1 2023-10-17 19:40:09 -04:00
810e3e5fa5 Fix issues with trim lists 2023-10-16 13:57:28 -04:00
a5374997d2 Revert "avoid issue with neighbor list trimming when used as a hybrid substyle"
This reverts commit 23691d4336.
2023-10-16 13:55:53 -04:00
e65ed32ecd Revert "disable neighbor list trimming by default for REBO pair styles for now"
This reverts commit 2ba7059c00.
2023-10-16 13:55:52 -04:00
d326327bd7 Revert "disable neighbor list trimming for all other pair styles requesting neighbors of ghosts"
This reverts commit aa1c901f94.
2023-10-16 13:55:48 -04:00
aa1c901f94 disable neighbor list trimming for all other pair styles requesting neighbors of ghosts 2023-10-16 00:02:10 -04:00
2ba7059c00 disable neighbor list trimming by default for REBO pair styles for now 2023-10-15 23:44:57 -04:00
23691d4336 avoid issue with neighbor list trimming when used as a hybrid substyle 2023-10-15 23:44:34 -04:00
78adc1727a backport KOKKOS package fixes from PR #3930 by @stanmoore1 2023-10-13 16:32:36 -04:00
9def610c08 update PACE library 2023-10-13 16:31:09 -04:00
a939e93a08 must re-initialized threads also for neigbor lists 2023-10-11 17:42:33 -04:00
63eed5e230 Drafting tension model 2023-10-06 17:43:54 -06:00
1cbe59c254 Fixing compile errors 2023-10-05 21:19:50 -06:00
308207d5f9 fix cut-n-paste error 2023-10-05 13:16:47 -04:00
75d0d9be1d Fixes #3925 in region_ellipsoid.cpp 2023-10-04 10:56:13 -04:00
2f71bc7886 step LAMMPS GUI patch level number to indicate included bugfixes 2023-10-04 08:55:07 -04:00
ddbdaaafdc make threads handling consistent. address issue that threads could not be increased 2023-10-04 08:46:01 -04:00
8946995199 enforce threads are reset properly for /omp styles 2023-10-04 08:39:58 -04:00
d567fdae97 fix delete / delete[] mismatch 2023-10-04 08:37:53 -04:00
ed9bfb433f avoid segfaults when accessing lammps_last_thermo() 2023-10-04 08:35:42 -04:00
f8493ed805 Recognize Windows 11 23H2 2023-09-27 18:03:09 -04:00
f3beb206c9 support old ReaxFF force field files without ovcorr entry in bonds section 2023-09-27 00:06:15 -04:00
3cae238eb5 Finish drafting bond creation/deletion 2023-09-26 09:07:44 -06:00
bd07252da3 Merge branch 'rheo' of github.com:jtclemm/lammps into rheo 2023-09-25 09:39:43 -06:00
583917b194 Drafting structure of solidification bond creation 2023-09-25 09:39:29 -06:00
b5480e4e1b must also update CWD when *saving* a file, not only when loading 2023-09-25 08:55:22 -04:00
f634b25e31 apply clang-format 2023-09-25 08:11:55 -04:00
b21db641d9 check for compatible LAMMPS version when creating LAMMPS instance
This check must be done at runtime, since the LAMMPS shared library
may have been loaded dynamically and thus required library functions
may not be present or missing features with too only a LAMMPS version.
2023-09-25 08:08:00 -04:00
6ba94d1619 flag as maintenance branch again 2023-09-23 12:55:10 -04:00
ce756540e8 recognize STL files starting with "solid binary" as binary files 2023-09-22 08:04:25 -04:00
bb462b9ea3 plug memory leak 2023-09-22 08:04:18 -04:00
63eda98779 we don't need a lattice for creating atoms from a STL mesh 2023-09-22 08:04:09 -04:00
0ca72bb58e silence uninitialized access valgrind warning 2023-09-21 07:33:24 -04:00
a6bcf507e1 flag version as update 1 2023-09-19 14:37:13 -04:00
a1621a7229 Apply fix for hipfft paths in ROCm >= 6.0 2023-09-19 10:45:21 -04:00
62d41c6afb fix cut-n-paste issue 2023-09-14 00:29:00 -04:00
5480d25e36 add missing newline 2023-09-13 16:35:10 -04:00
a4145ec852 reorder to have sections in alphabetical order again 2023-09-13 16:34:11 -04:00
5b16f15b25 change refereces to lib/smd and smd to lib/machdyn and machdyn 2023-09-13 16:33:55 -04:00
e77aaba3a4 remove dead code 2023-09-13 16:33:33 -04:00
7f08e8d11c Initialize ADIOS dumps only the first time when
used in multiple runs (for custom/adios dump style)
2023-09-13 08:57:14 -04:00
fb890fcdfe Bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-04 17:09:21 +00:00
f62b129dec update docs with settings for building tools with CMake 2023-09-01 18:54:42 -04:00
db967a5bbf there is no "thermo_extract" tool (anymore) 2023-09-01 18:54:28 -04:00
f20af66312 update some tables and comments for the current state of LAMMPS 2023-09-01 18:54:01 -04:00
01766c7631 Fix bug in MDI energy 2023-09-01 07:33:36 -04:00
7846bb59db silence compiler warning 2023-08-31 15:25:03 -04:00
c27951cb1f update unit tests for change in read_restart 2023-08-31 04:45:38 -04:00
4ab82d76ad make atom_modify map settings in restart file overridable 2023-08-30 23:52:14 -04:00
c6cbc1f965 list manual versions on Manual home page 2023-08-28 15:35:02 -04:00
88e58e9189 fix typo 2023-08-28 13:12:36 -04:00
e14005c443 must initialize typefirst now after recent changes from @dsbolin 2023-08-25 10:19:30 -04:00
9570c2fb50 must use array delete and not scalar delete on char array 2023-08-25 10:05:32 -04:00
180ce5277f A few bug fixes for fix srd 2023-08-24 12:29:27 -04:00
e81b86e114 clarify the documentation for the extract_atom numpy wrapper 2023-08-23 20:02:51 -04:00
6c6262a637 the MESONT package depends on the MOLECULE package since the last upgrade 2023-08-23 19:04:01 -04:00
062bb88561 fix element mapping bug in pair style hdnnp when used as a hybrid sub-style 2023-08-23 07:21:39 -04:00
cf5b653a9a Fix bug in Kokkos ReaxFF on GPUs when border comm is on host 2023-08-22 16:48:59 -04:00
c5a5e4a099 more fixes for file and pathnames with blanks 2023-08-21 16:11:03 -04:00
ccab900342 enable/disable VDW mode pushbutton depending on whether valid element info is present 2023-08-21 13:25:41 -04:00
fc400af724 avoid write_dump image failing when not all elements can be recognized 2023-08-21 12:27:30 -04:00
b1ea4d9601 fix write_dump command string so it can handle paths with blanks 2023-08-21 09:08:16 -04:00
2ca3be7b16 workaround for imageviewer GUI glitch on macOS 2023-08-20 19:11:37 -04:00
31b94aa1b0 fix copy-n-paste bug 2023-08-20 00:24:30 -04:00
b1b94980fa make vdwfactor consistent and speed up rendering for VDW mode by skipping bonds 2023-08-20 00:12:58 -04:00
770ad34267 speed up SSAO with OpenMP multi-threading, if available 2023-08-19 20:12:33 -04:00
10c523a950 use more consistent way to update checkboxes and labels by assigning names 2023-08-19 17:58:30 -04:00
62ef884564 use more consistent way to update checkboxes by assigning names 2023-08-19 16:44:11 -04:00
b3860a82de add missing file for embedding icons into windows executable 2023-08-19 15:22:54 -04:00
1deb3d8865 correctly extract local file name from dropped URI 2023-08-19 15:14:08 -04:00
266e519013 consistently use bool for echo and cite flags 2023-08-19 14:13:04 -04:00
fffb86cb02 automatically copy "About LAMMPS" dialog text to clipboard 2023-08-19 09:29:22 -04:00
fcaabe510e deleted one file too many 2023-08-18 01:56:53 -04:00
a6043d92cb remove obsolete files 2023-08-18 01:47:29 -04:00
ee16f6503e update LAMMPS GUI code with PR 3890 content 2023-08-17 22:50:10 -04:00
84168fc84d use fastest zlib compression settings to reduce serial overhead when writing PNG images 2023-08-17 22:44:41 -04:00
8a5fd08fa1 update documentation for LAMMPS GUI v1.2 2023-08-16 03:42:12 -04:00
8944609419 make dark gray really dark gray 2023-08-16 02:58:56 -04:00
e90478e932 update 2023-08-16 02:42:41 -04:00
52c23785c5 fix error with C++17 in AWPMD package 2023-08-16 02:42:35 -04:00
088ff4ad27 update LAMMPS GUI to version 1.2 2023-08-16 02:38:07 -04:00
e32ae65aa1 add flag used by LAMMPS GUI 2023-08-16 02:24:45 -04:00
a5bf853c35 changes to make example script in ASPHERE/tri run 2023-08-15 23:50:53 -04:00
b0a1b58c68 update clang-format detection for compatibility with Debian 2023-08-14 18:49:39 -04:00
bdaf3c64a6 silence warning about a setting that was added to silence warnings 2023-08-14 12:06:09 -04:00
ccc478ad96 flag if we are cross-compiling 2023-08-14 11:55:40 -04:00
fadb210052 clean up all created files 2023-08-14 11:54:56 -04:00
c105a187d9 fix duplicate implicit reference
# Conflicts:
#	doc/src/Speed_kokkos.rst
2023-08-14 11:54:22 -04:00
d74f86f2cd indexing bugfix for compute global/atom 2023-08-14 11:50:23 -04:00
c5b35970dc disable *all* MPI-IO related testing 2023-08-14 11:50:12 -04:00
5626836995 disable MPI-IO based restart writing (for now) 2023-08-14 11:50:02 -04:00
53111f8c0e bugfix for pair style dpd/gpu from Trung 2023-08-14 11:47:49 -04:00
e0ca512f50 avoid legacy compilation failures on recent ubuntu machines that only have python3-config 2023-08-14 11:40:26 -04:00
e87bad43f9 flag maintenance branch 2023-08-03 14:26:47 -04:00
27d065a682 sync with develop 2023-08-03 11:33:14 -04:00
f1dd7f1415 Merge tag 'patch_2Aug2023' into maintenance
LAMMPS feature release 2 August 2023
2023-08-03 11:14:29 -04:00
71abebb1d7 debugging surface compute 2023-07-16 16:26:57 -06:00
4eba3791f3 enforce order for printing CHON 2023-07-09 15:30:56 -04:00
6318b09a07 report unique species when duplicate elements
previously, duplicate species were reported when there were duplicate elements in the element-to-type mapping. for example, H2 and HH and multiple other H2s and HHs could appear in the 'species' and 'delete species' files
2023-07-04 20:29:31 -04:00
4ae41edee7 Fixing order of correct_v 2023-06-23 14:12:59 -06:00
33d82c30ca fix to allow reaxff/species before pair_coeff 2023-06-22 18:40:50 -04:00
32e4aac9f7 Update fix_reaxff_species.rst 2023-06-16 21:34:06 -04:00
d18d7edad9 reaxff/species: default elements from pair reaxff 2023-06-16 21:23:46 -04:00
492b0641f2 record element list from pair_coeff 2023-06-16 20:50:22 -04:00
3e2d5098c0 Update create_atoms.rst 2023-06-07 22:07:57 -04:00
0e07089de6 create_atoms:overlap_keyword_w_atomic_molecules 2023-06-07 22:04:28 -04:00
6f59b7c5e0 Fixing misc bugs with interfaces 2023-05-23 22:12:34 -06:00
b4e1effe5f Improving options for outputting gradients 2023-05-19 13:10:39 -06:00
55f7e9271c removing old files 2023-05-12 23:34:26 -06:00
dfc47a5501 Fixing various errors, reorganizing status variable 2023-05-12 23:33:02 -06:00
35418afd6b Rename CRK -> RK 2023-05-11 14:19:32 -06:00
4a419b2f00 Adding rheo property/atom compute odc 2023-05-01 14:47:52 -06:00
c81c4cefc0 Fixing pair label 2023-05-01 14:32:14 -06:00
0b1d393d78 Adding arguments to doc page 2023-05-01 14:05:47 -06:00
0cd22dd0d2 Creating doc pages and links for rheo 2023-04-27 21:04:04 -06:00
0cd3bd190f Fixing various memory issues 2023-04-26 12:14:40 -06:00
be568d257d Adding output option for reorganized peratom values 2023-04-25 16:29:29 -06:00
7fc916a1d4 Prototyping example and accessory commands 2023-04-25 13:38:37 -06:00
7cfe45c00b Adding gsl version, cmake options, readme files 2023-04-25 10:29:39 -06:00
47b8cdc94f Fixing compilation errors 2023-04-24 19:46:27 -06:00
59e8b9370f plug memory leak in FixNHIntel class 2023-04-24 20:58:33 -04:00
39fa2021e2 avoid 32-bit integer overflow when allocating memory for neighbor list copy 2023-04-24 20:45:49 -04:00
83f492a195 must initialize vest_temp to null to avoid segfaults 2023-04-24 20:44:44 -04:00
933457acbe Templated functions calling math libraries should use type-aware calls 2023-04-24 19:55:39 -04:00
06f4099566 Vector masking is part of AVX512, not limited to Intel compiler 2023-04-24 19:54:19 -04:00
5624a78b17 Fix uninitialized memebr 2023-04-24 19:53:57 -04:00
47e875142f update version string 2023-04-22 18:37:52 -04:00
62c844d5ac update version string for stable release update 2023-04-22 14:56:44 -04:00
263b6d4d6f compilation fix for Fedora 38 from upstream 2023-04-22 14:32:11 -04:00
4acca38a65 remove text that only applies to newer LAMMPS versions 2023-04-22 12:19:37 -04:00
4cf642b526 correct docs for fix edpd/source and fix tdpd/source 2023-04-22 12:12:38 -04:00
35d1178cfa Adding cmake options, fixing a few misc errors 2023-04-20 20:15:17 -06:00
de0e4bb170 Rho sum compute 2023-04-20 16:17:04 -06:00
a4d971df52 Updating surface compute 2023-04-20 14:45:35 -06:00
d85ce6a392 Initial surface compute 2023-04-19 17:15:00 -06:00
5980fdf9fd Revising interface compute 2023-04-15 21:15:37 -06:00
93ecbbdcff Modified CMAKE file so we can hopefully use the PLUMED_SUFFIX 2023-04-13 15:42:26 +01:00
986cfd6641 Cleaning up peratom variables, adding peratom variables to fix rheo/interface 2023-04-12 17:05:05 -06:00
52fc8f05ee update CMake script for PLUMED package to support cross-compilation to Windows 2023-04-10 09:23:19 -04:00
3b01845f11 Updated API versions that are allowed for PLUMED 2023-04-08 19:45:50 +01:00
047df9aa9e mark as maintenance branch version 2023-03-31 09:52:58 -04:00
79ddd1445f Misc clean ups, initial draft of interface 2023-03-26 17:04:56 -06:00
bfb3457b9e Adding memory usage 2023-03-26 14:44:01 -06:00
98050c96cc Cleaning up kernel compute 2023-03-26 14:30:34 -06:00
908c32788c Cleaning up fix rheo, initial sketch of kernel compute 2023-03-25 20:17:17 -06:00
d98435f435 removing merge conflict 2023-03-24 22:02:30 -06:00
29edfc45d7 Adding heat/temperature checks/zeroing to thermal fix 2023-03-24 21:59:17 -06:00
b46b786a3f Merge pull request #3 from EricPalermo/rheo
Rheo
2023-03-24 15:43:30 -06:00
0a3a4c527d generalized density in dT calculation 2023-03-24 16:43:34 -04:00
bf669d526b test adding file 2023-03-24 15:38:26 -04:00
fb3bd20dff update fmtlib to version 9.1.0 to avoid compilation issues with PGI/NVHPC compilers 2023-03-23 18:34:42 -04:00
3964321e0b Merge branch 'develop' into rheo 2023-03-22 21:53:36 -06:00
beb6f934f8 adding new peratom storage to pressure 2023-03-22 21:44:11 -06:00
b550d72e38 Fixing merge conflicts 2023-03-22 21:35:54 -06:00
886c642e01 Cleaning up pairstyle 2023-03-22 21:15:54 -06:00
c7d62c4709 fix ids once bug in compute chunk/atom 2023-03-22 22:21:13 -04:00
b18008c58d add useful comments 2023-03-22 22:18:29 -04:00
9469321e3d Fixed bug in fep tools 2023-03-22 22:18:04 -04:00
a4a9efeefc Fixed bug in fep tools 2023-03-22 22:17:55 -04:00
70744f10e0 backport fix property/atom bugfix for KOKKOS 2023-03-22 22:17:10 -04:00
bad1188c52 Reorganizing peratom arrays 2023-03-22 17:27:51 -06:00
9bea55bd77 update fix mscg example 2023-03-16 14:55:20 -04:00
73525b3bbc Download the latest MSCG snapshot to address bug in library. 2023-03-16 14:55:05 -04:00
9cf67699cc include fixes and updates from upstream 2023-03-16 12:44:18 -04:00
666fe4cfbe fix two bugs in the ndx2group command 2023-03-16 12:35:53 -04:00
ed7bd50500 must recompile main.o when MDI package is installed/uninstalled 2023-03-12 22:31:06 -04:00
6e65d13ad3 Adding vshift + pressure, various fixes 2023-02-26 21:13:32 -07:00
d241e26d03 allow dynamic groups with fix oneway 2023-02-25 12:03:40 -05:00
73e7163ed6 don't store topology information with ghost atoms. they will be ignored. 2023-02-24 22:56:17 -05:00
5a5a86684a Fix the adios2::ADIOS constructor calls that were deprecated in adios 2.8 and removed in 2.9. The fix is backward compatible with older adios2 versions as well. 2023-02-23 15:39:01 -05:00
ae3f57e89a fix bug in fix wall/morse that was computing forces incorrectly 2023-02-23 15:38:20 -05:00
fff7b2a859 update unit test for correct fix wall/morse 2023-02-23 15:37:58 -05:00
ecf43524d4 Most updates to pair 2023-02-21 22:07:11 -07:00
99e7673e8e Starting pair style, various clean ups 2023-02-21 19:41:52 -07:00
c715552f7e Ensuring fix order 2023-02-21 10:17:15 -07:00
1adc66e82b Beginning updates to thermal fix 2023-02-20 22:07:30 -07:00
c73f9188ce Initial thermal/pair files 2023-02-20 20:42:44 -07:00
4ac7a228b5 Revamping atom data storage in fixes 2023-02-20 12:47:51 -07:00
560bd90e11 Drafting viscosity fix 2023-02-19 22:08:02 -07:00
6cbade576c Adding gradient compute, minor patch bond history 2023-02-19 20:41:33 -07:00
83ba1c9d20 Merge pull request #3645 from akohlmey/more-backports-to-stable
More backports of fixes to stable release
2023-02-17 16:27:13 -05:00
ce10614cab backport region check move to init() function for fix gcmc and fix widom 2023-02-17 12:44:58 -05:00
facbeac052 move definition of MAXBIGINT_DOUBLE to variable.cpp 2023-02-17 12:29:17 -05:00
348296e638 Adding base fix and atom style 2023-02-15 16:07:10 -07:00
188ee5af15 use MAXBIGINT_DOUBLE which does not overflow when casting back to bigint 2023-02-12 04:08:11 -05:00
f176b8b14c consistently support special_bonds settings in pair style gauss 2023-02-10 05:09:58 -05:00
2396b2feea Fixed bugs with gauss/gpu in bonded systems, including factor_lj in forces and energies 2023-02-10 05:02:43 -05:00
4399c1b6c1 Merge pull request #3593 from akohlmey/maintenance-2022-06-23
Third round of maintenance fixes and backports for the stable release
2023-02-09 22:53:11 -05:00
fd046c8fd8 Merge branch 'maintenance' into maintenance-2022-06-23 2023-02-09 20:17:06 -05:00
09b7694601 Merge pull request #3595 from akohlmey/maintenance-many-files
Additional non-functional maintenance changes for the stable version
2023-02-09 20:09:28 -05:00
df20503434 make fallback url function available to plugin compilations 2023-02-09 08:14:23 -05:00
f4aa24a36a roll back changes for vec3_scale() and vec3_scaleadd() and use temporary vector 2023-02-08 20:33:38 -05:00
007c04bc97 correct preprocessor logic for non-Linux machines 2023-02-08 16:45:48 -05:00
418d1e16e1 recover compilation of tersoff kernels with CUDA 2023-02-08 11:17:09 -05:00
6471d781d0 recover kernel failure for tersoff with mixed and single precision 2023-02-08 09:14:37 -05:00
97ddc5917c another OpenCL bugfix attempt from Trung 2023-02-08 08:26:22 -05:00
a95ff20647 swap nvcc default arch from Maxwell to Pascal
This is to avoid deprecation warnings with CUDA 11.6 and later
2023-02-07 08:34:01 -05:00
9e0a9e2601 correct logic 2023-02-07 00:00:17 -05:00
8b34d65970 add download fallback handling 2023-02-07 00:00:07 -05:00
0a1c2bcccc fix failing unit tests with OpenCL 2023-02-06 18:40:07 -05:00
c9442c591c re-enable new neighbor lists for CUDA 12.0 and later 2023-02-05 03:01:46 -05:00
b7d316031d nullify freed pointers in list of dump data 2023-02-03 20:39:47 -05:00
361e9f3ea5 avoid illegal memory access in destructor after variables have been deleted 2023-02-03 20:26:42 -05:00
28120793b8 backport PR #3631 2023-02-02 22:21:15 -05:00
f32ce8377e change default arch in nvcc_wrapper, so it can still run with cuda 12 2023-02-01 11:35:59 -05:00
9021b8bc6a implement download fallback for traditional make build 2023-02-01 06:53:53 -05:00
838fe3020d add support for building a static lammps-shell executable with Linux/MUSL 2023-01-31 22:23:41 -05:00
b4d4dcbcbc simplify 2023-01-31 20:35:18 -05:00
52a892ec46 simplify 2023-01-31 20:32:41 -05:00
0ee3d9da5d port triclinic region vs box check from fix gcmc to fix widom 2023-01-31 20:29:18 -05:00
50afb292b0 compare region extent with box bounds for triclinic 2023-01-31 20:28:25 -05:00
275ef9da17 update n2p2 lib version for traditional make, too. 2023-01-31 20:28:15 -05:00
b6a87390a3 revert MD5 hash to current value after GitHub reversed its change 2023-01-31 20:28:04 -05:00
72178631c5 update N2P2 library to version 2.2.0 2023-01-31 20:27:57 -05:00
f8859c5fca implement download fallback URLs pointing to download.lammps.org for CMake 2023-01-31 20:22:06 -05:00
979119a29b backport fixes to KOKKOS and REAXFF from PR #3621 2023-01-31 20:18:38 -05:00
bc66572275 Fix out of bounds access in pair_vashishta_kokkos with skip list 2023-01-31 20:00:45 -05:00
609231675f Allow neighbor class to set newton flag in Kokkos neigh list 2023-01-31 19:55:07 -05:00
d9675b5da4 Fix QUIP compilation with Intel compilers. 2023-01-30 08:11:52 -05:00
7d32b4f42a make Kokkos lib compatible with musl-libc
Note: this was adapted from https://github.com/kokkos/kokkos/pull/5678
to be usable without requiring C++17
2023-01-27 12:21:39 -05:00
697e5b15ec forcibly disable COMPRESS package is zlib is not found 2023-01-27 07:29:25 -05:00
ade0718c11 make compatible to non-glibc Linux 2023-01-27 07:26:23 -05:00
31033ff6e0 must initialize "np" in constructor 2023-01-26 18:34:21 -05:00
9a598ba5a8 backport fix pimd bugfix from develop 2023-01-26 15:59:26 -05:00
ff20448b1d add image to the cover page of the PDF version of the manual 2023-01-26 11:23:46 -05:00
af5229ba58 swap constexpr back to const 2023-01-26 09:58:26 -05:00
b180200c48 check if variable value is a valid number before converting it 2023-01-26 07:10:50 -05:00
27441cf2ea update developer contact info in a few more files 2023-01-25 22:24:22 -05:00
db61bf609b plug memory leaks in couple examples 2023-01-25 21:48:29 -05:00
015fa4cb0a update embedded docs 2023-01-25 21:44:04 -05:00
62f6f91146 minor typo and rewording 2023-01-25 21:42:37 -05:00
e163b0b1d7 portability improvements for Solaris/OpenIndiana 2023-01-25 21:40:23 -05:00
169a886898 cannot test PYTHON package if it is not installed 2023-01-25 21:37:22 -05:00
cbd276c49d correct prototype for documentation 2023-01-25 21:32:03 -05:00
183c6c06ff small tweaks to the "breadcrumbs" part of the theme to avoid double inserting a separation character 2023-01-25 21:28:18 -05:00
93a46da58e add image to the cover page of the PDF version of the manual 2023-01-25 21:24:27 -05:00
6b6a47bd3c Small tweaks 2023-01-25 21:21:08 -05:00
4a0a98a0fd Small bugfixes for Kokkos 2023-01-25 21:20:59 -05:00
369ea4fd26 Add this 2023-01-25 21:17:30 -05:00
d63c002bf5 Use group for Kokkos nvt temp compute 2023-01-25 21:17:22 -05:00
e931d3153b small improvements from upstream 2023-01-13 17:52:28 -05:00
2913c063d4 whitespace 2023-01-13 14:51:21 -05:00
5606b57646 Update SECURITY.md
I found the overlapping meanings of release/update/patch a bit confusing, especially when sometimes referring to a branch name and sometimes used as a general description.  So I reworked it, trying to preserve meaning. I deleted the last sentence, because I did not understand it, it may need to be added again.
2023-01-13 11:30:07 -07:00
0fafe34008 import updates to library plugin loader from upstream 2023-01-13 05:21:33 -05:00
a9a1640d67 reorder 2023-01-12 18:28:17 -05:00
812363fb99 lammpsplugin bugfix from Stan 2023-01-12 18:24:04 -05:00
b40e0be1c9 reset to current state of the library interface and remove parts from upstream that have crept in 2023-01-12 12:08:00 -05:00
1be973da07 update from upstream 2023-01-11 22:31:06 -05:00
aca2c52795 update LAMMPS developer contact info 2023-01-11 22:25:25 -05:00
536b2ab7e5 restore accidentally deleted file 2023-01-11 22:16:31 -05:00
ccef293161 remove obsolete comment 2023-01-11 22:11:53 -05:00
4b0de87813 silence compiler warning 2023-01-11 21:59:35 -05:00
fa22aef31b Fix obscure bug in Kokkos neigh list build 2023-01-11 21:53:16 -05:00
cb7544a615 import modernization from upstream 2023-01-11 21:41:58 -05:00
a9be4906b7 import safer ghost cutoff determination for manybody GPU styles from upstream 2023-01-11 21:41:43 -05:00
6f36d21a04 GPU library updates 2023-01-11 21:34:42 -05:00
c55a15c4dc make AWPMD compatible with MSVC and c++-linalg on Windows 2023-01-11 21:23:03 -05:00
8f01dad1a9 add tools/tabulate 2023-01-11 21:21:51 -05:00
db6e1aa20d some more documentation updates 2023-01-11 21:21:03 -05:00
3cee69a077 correct Kokkos device/arch info ouput in CMake summary 2023-01-11 18:15:56 -05:00
69ffe71595 update unit tests for code corrections 2023-01-11 07:45:50 -05:00
16fa033111 fix issues with bundled meam/spline potentials 2023-01-11 06:40:54 -05:00
8e494aa771 updates and bugfixes for liblammpsplugin plugin loader for LAMMPS shared lib 2023-01-11 06:11:46 -05:00
d203cce8b5 documentation updates from upstream 2023-01-11 06:07:19 -05:00
f8de1b1a75 use official API for utils::logmesg(), stricter/consistent checking for integer and floats 2023-01-11 05:54:35 -05:00
de89a25a25 final CMake sync with upstream 2023-01-11 05:03:00 -05:00
f982e95267 update developer info in unittest tree 2023-01-11 01:28:52 -05:00
293d0cdb58 fix typo 2023-01-11 01:26:54 -05:00
011f2651ee update 2023-01-11 01:26:48 -05:00
a8d3c43a77 update version 2023-01-11 01:26:35 -05:00
c19641f8b3 synchronize CMake scripting with upstream 2023-01-11 01:04:32 -05:00
6596b343ff sync docs with fire minimizer code features 2023-01-10 21:55:56 -05:00
b6dbb0330c update list of commands in pygments LAMMPS lexer 2023-01-10 21:55:56 -05:00
0dd138666a update for accelerated versions 2023-01-10 21:55:56 -05:00
33b9fec150 synchronize sphinx configuration with upstream 2023-01-10 21:55:56 -05:00
32b020a165 Increase communication cutoff for TIP4P pair styles, if needed
This avoids error of H atom not found when the O atom is a ghost.
2023-01-10 21:55:56 -05:00
c1db230331 Fix bug in Kokkos ReaxFF on GPUs 2023-01-10 21:55:56 -05:00
254c052ecc Fix GPU tag issues in other Kokkos styles 2023-01-10 21:55:56 -05:00
8e889dfa7c offset is not used (by construction of the potential) 2023-01-10 21:55:55 -05:00
5b6a52a646 correct suffix handling with compute fep 2023-01-10 21:55:55 -05:00
55f56deb63 bugfix for minimization with KOKKOS when using fix box/relax 2023-01-10 21:55:55 -05:00
bfe127a720 cosmetic 2023-01-10 21:55:55 -05:00
d95c8911a3 tweak intel compiler settings 2023-01-10 21:55:55 -05:00
0380f9d854 consistently prefix deep_copy() with Kokkos:: 2023-01-10 21:55:55 -05:00
71b1d60363 bugfix for gaussian bond/angle styles to avoid premature truncation of potential 2023-01-10 21:55:55 -05:00
8b1f92fabd better error handling when reading table files 2023-01-10 21:55:55 -05:00
419af0cf28 dead code removal 2023-01-10 21:55:45 -05:00
9030c59932 bugfix for nm/cut argument parsing 2023-01-10 21:55:21 -05:00
ee88078150 bugfix for DPD with exclusions other than 0.0 or 1.0 2023-01-10 21:55:21 -05:00
04451f6072 recover compilation 2023-01-10 21:55:21 -05:00
2364f7f08b bugfix for incorrect stress tally in dihedral style table 2023-01-10 21:55:21 -05:00
7f82a58f51 auto loop optimizations 2023-01-10 21:55:21 -05:00
1caf074ba1 avoid excess string copy in auto loops 2023-01-10 21:55:20 -05:00
34677f78c2 initialize ADIOS dumps only the first time when used in multiple runs 2023-01-10 21:55:20 -05:00
e095609ac6 update lammps theme base theme from read-the-docs version 1.0.0 to 1.1.1 2023-01-10 21:54:35 -05:00
1122408957 dynamic cast whitespace 2023-01-10 21:53:53 -05:00
5f9b78ca01 update developer reference text 2023-01-10 21:53:09 -05:00
fe138fc75c add support for building/using the ADIOS package without MPI
This needs the ADIOS2 installation being configured accordingly.
2023-01-10 12:38:20 -05:00
31c324ff61 remove references to long obsolete .d dependency files 2023-01-10 12:32:22 -05:00
30564ed8b7 import traditional build system updates and fixes from develop branch 2023-01-10 12:16:59 -05:00
f05bfe45a8 Synchronize GitHub related files and settings with develop branch 2023-01-10 11:50:49 -05:00
88c8b6ec6f Merge pull request #3460 from akohlmey/maintenance-2022-06-23
Second round of maintenance fixes and backports for the stable release
2022-11-03 12:21:59 -04:00
f01e28f574 add missing parts to ELECTRODE package docs for traditional make. sync with upstream. 2022-10-27 16:29:28 -04:00
96627d27b1 add support to detect the BuildID of Windows 10 22H2 2022-10-27 12:56:30 -04:00
b3fc574a6a use googletest aliased targets consistently 2022-10-26 22:46:31 -04:00
8a3f7560c9 drop special OpenMP flags from presets. Will be detected by FindOpenMP. 2022-10-26 22:46:21 -04:00
8406e92a9a downgrade KOKKOS OpenMP check to version 3.1
need to apply special exception for NVHPC/PGI compilers
2022-10-26 22:46:13 -04:00
3b376b4448 modernize OpenMP detection and check for omp.h in CMake 2022-10-26 22:46:03 -04:00
ca3b7be623 add compatibility to VTK version 9.0 and above 2022-10-24 16:25:25 -04:00
c825c52d2f update required version 2022-10-23 03:45:57 -04:00
0ea0e4ce59 modernize calls to access the list of fixes in the Modify class 2022-10-23 03:16:26 -04:00
d53d4b4d99 use inline insertion sort for short array 2022-10-23 03:16:13 -04:00
b37cd14dd1 avoid superfluous calls to utils::strdup and improve error messages 2022-10-23 03:15:58 -04:00
a921a6bdc1 silence compiler warning about not copying the final null byte 2022-10-23 03:15:47 -04:00
51a0345941 Update fix_bond_react.rst 2022-10-23 03:15:35 -04:00
8d70960e2d bond/react: create atoms error check
check that post-reaction template has 'Coords' section if it has 'CreateIDs' section
2022-10-23 03:15:12 -04:00
5661703b30 Update pair_threebody_table.cpp
Correcting for hard coded ntheta = 79 in the extreme case that theta is exactly equal to 180.0 degrees.
2022-10-23 03:13:50 -04:00
bc30304f72 update plumed package version to 2.8.1 2022-10-22 23:01:47 -04:00
c76da483fb must bootstrap centos 7 from dockerhub now 2022-10-22 22:59:52 -04:00
036a1e47d2 replace one more suffix 2022-10-22 22:28:35 -04:00
5430c3b592 add workaround for missing links to fortran functions in sphinx output 2022-10-21 19:01:31 -04:00
9b7cb8200c small sphinx tweaks. require sphinx 5.2 or later. 2022-10-21 19:01:24 -04:00
550eedbb1f make Linux behavior default for loading Python shared lib
This adds portability to platforms like FreeBSD
2022-10-21 15:52:26 -04:00
3a058f278d Python support in ML-IAP requires NumPy. Check for it if CMake supports it. 2022-10-21 15:50:08 -04:00
0f7f0b5f86 find cythonize executable on recent FreeBSD versions 2022-10-21 11:39:02 -04:00
3de7534b84 try to make more portable (in case this ever gets ported to windows) 2022-10-21 11:38:50 -04:00
7065462faf add md5sums for plumed 2.7.5 and 2.8.1, update default version to 2.8.1 2022-10-21 11:38:40 -04:00
2e9d8e1ccb preserve pair/only package setting during clear command 2022-10-19 14:50:27 -04:00
19b84f7cbd delete atomfile variables when using the clear command 2022-10-19 14:44:10 -04:00
9b7c445a15 include non-buffered flag 2022-10-19 14:44:04 -04:00
91e56444ce add CMake check that will refuse compilation of unit tests or skip tests
This is mainly because the default compilers on RHEL/CentOS 7.x are
not sufficient to compile googletest. Also some Fortran module test
requires a working F90 module and others are more recent Fortran compiler.
2022-10-17 18:12:21 -04:00
9b3c8c36bd update version 2022-10-14 21:35:16 -04:00
3403520967 Fix issue with KSpace slab correction energy with non-neutral systems 2022-10-11 16:37:45 -04:00
d8f969f1df update python package requirements for building the manual 2022-09-30 20:18:05 -04:00
3487deccb6 update broken URLs 2022-09-27 08:03:11 -04:00
0926fc627d step update counter 2022-09-25 09:04:45 -04:00
7999778d94 initialize sllod fixes consistently 2022-09-25 07:02:35 -04:00
b4ef4c1ff2 correct indentation 2022-09-25 07:02:35 -04:00
72b08e4b87 backport dump fixes from develop 2022-09-25 07:02:28 -04:00
faa64a84e8 bugfixes and updates to the DIELECTRIC package from upstream 2022-09-09 19:42:01 -04:00
32b67fff2b print an error if the filename before '*' is too long for the regex matcher 2022-09-07 21:06:19 -04:00
f3dbf4122d extend the length to which the regex matcher checks strings to 256 chars. 2022-09-07 20:47:16 -04:00
e25ac786da must apply bond/angle offsets when determining shake bond/angle types 2022-09-05 10:52:06 -04:00
f30fba0061 support paths with blanks and avoid race condition when updating potentials 2022-09-02 21:33:30 -04:00
03f319604f recover dump_modify every behavior 2022-08-31 17:26:09 -04:00
0782dab1ec properly initialize result storage for per-chunk arrays 2022-08-29 13:04:40 -04:00
c43cce54ab re-initialize neighbor lists at end to clear out the occasional list entry 2022-08-28 11:47:27 -04:00
281a368702 correct pair coeff mixing diagnostic for CLASS2 pair styles 2022-08-28 05:51:38 -04:00
f28d69b429 bugfix for writing data files with atom style dielectric 2022-08-19 16:18:38 -04:00
e674e0c927 correctly handle the case where there are no atoms in the fix group 2022-08-14 03:53:02 -04:00
eebabf99b8 adjust location of local ref targets for recent sphinx versions 2022-08-05 22:09:01 -04:00
23a19f4431 need new CSS hack to hide duplicate headers derived from the navigation bar 2022-08-05 21:46:38 -04:00
d618b0ffc0 Merge pull request #3324 from akohlmey/maintenance-2022-06-23
First round of maintenance fixes for the stable release
2022-08-05 16:57:43 -04:00
ffc71b8733 energy is not an array 2022-08-05 08:23:23 -04:00
564df78698 fix typo 2022-08-05 08:22:59 -04:00
8db0b5ca39 fix index copy-n-paste error 2022-08-05 08:22:09 -04:00
79e26fe829 correct bond style bpm/rotational example 2022-08-05 03:24:29 -04:00
523d4b0242 correct issues in fix adapt and fix adapt/fep related to using fix STORE 2022-08-04 10:19:26 -04:00
fe39a3e581 Documentation updates for simulations including dipoles 2022-08-03 16:47:29 -04:00
081cc1f992 clarification on what constituets single, double, and triple quotes. 2022-08-03 01:51:43 -04:00
53c80c2c00 match pow(0,0) = 1.0 behavior in powint() 2022-07-31 18:52:08 -04:00
554b64a147 avoid deprecation warning and update PyPy package requirements 2022-07-30 17:37:35 -04:00
dc08dba592 update embedded search box 2022-07-28 18:58:58 -04:00
0eaa2775cd document missing call 2022-07-27 22:13:33 -04:00
852673ce41 fix off-by-one bug 2022-07-27 21:44:22 -04:00
8c711e405a correct make command line example 2022-07-27 08:38:37 -04:00
25b9f95061 add check on extracting elements twice from the library to avoid opaque error later 2022-07-26 15:01:03 -04:00
ee66a6f8c1 correct formatting 2022-07-26 12:34:05 -04:00
b694a5f582 add reference 2022-07-26 12:33:57 -04:00
7ab3fce93f correct typos 2022-07-26 12:33:48 -04:00
1f9509cb6f strip off -pendantic-errors flag when compiling with nvcc_wrapper to fix error compiling ML-PACE 2022-07-18 14:00:53 -04:00
cad1d8ece4 correct unit tests for dump local 2022-07-17 12:16:01 -04:00
b709d75f80 add support for dump_modify colname to dump local 2022-07-17 11:52:15 -04:00
5839909061 fix cut-n-paste error and improve error message 2022-07-17 11:46:51 -04:00
30f374de58 clarify 2022-07-16 06:42:19 -04:00
0f9fec05fb disallow use of variable functions vdisplace(), swiggle(), and cwiggle() with fix dt/reset 2022-07-16 06:42:11 -04:00
972a86f0ec fix cut-n-paste typo 2022-07-15 19:06:14 -04:00
7338ebfc94 Update Errors_warnings.rst 2022-07-15 12:28:07 -04:00
7132152693 Update Errors_messages.rst 2022-07-15 12:27:57 -04:00
c9925f64f7 cosmetic changes, silence warnings, avoid temporary char buffers 2022-07-15 12:27:48 -04:00
6da523c8b8 very-small-templates bugfix 2022-07-15 12:27:36 -04:00
0522284589 bugfix: specials update corner case 2022-07-15 12:27:26 -04:00
e10a66dabc allow ramp(x,y) to be used in between runs (returning x) and avoid division by zero on run 0 2022-07-15 05:41:12 -04:00
51dd631a76 Fix bug in vtk dump 2022-07-15 04:29:54 -04:00
d37249787e work around issues with Intel compilers compiling the GPU package 2022-07-12 00:38:51 -04:00
f44841de69 update unit test 2022-07-07 10:32:47 -04:00
54c5337d2d apply clang-format 2022-07-07 10:32:32 -04:00
efb0e63bf6 correct force and energy for excluded pairs 2022-07-07 10:32:20 -04:00
13d78c3afa Update Kokkos version in CMake 2022-07-04 10:49:03 -04:00
f2910b1d9c Update Kokkos library in LAMMPS to v3.6.1 2022-07-04 10:48:51 -04:00
78b22a64aa formatting corrections and minor tweaks to the Argon viscosity howto 2022-07-01 09:27:43 -04:00
8bb1880c9d Fixed temperature in argon GK example 2022-07-01 09:27:36 -04:00
e7b36c7b90 make certain to switch to the expected source folder when building n2p2 lib 2022-07-01 05:49:07 -04:00
d7804e3770 MPI may need to include multiple folders (e.g. on Ubuntu with OpenMPI) 2022-06-30 23:53:57 -04:00
8d0f9695d2 update googletest to version 1.12.1 2022-06-30 14:57:22 -04:00
52b2e4f364 add Update 1 string to version info 2022-06-29 17:44:29 -04:00
41140149ea whitespace 2022-06-29 17:06:11 -04:00
85e556ac8f add more unit tests for boolean expressions 2022-06-29 17:05:37 -04:00
cd5437a7e2 fix bug in recent bugfix 2022-06-29 17:05:27 -04:00
00cc82ac94 update and expand unit tests for if() command boolean evaluation 2022-06-29 17:04:49 -04:00
20f87e3f1d change boolean = single string to an error 2022-06-29 17:04:34 -04:00
97e34f0667 better error strings 2022-06-29 17:04:23 -04:00
3e5da9b09a more consistency checks 2022-06-29 17:04:12 -04:00
a62fcca7a4 Boolean expression corner case 2022-06-29 17:04:01 -04:00
778d59fa6b whitespace 2022-06-29 05:19:10 -04:00
3833a85d7a Add missing grow to Kokkos unpack_exchange 2022-06-29 05:17:55 -04:00
6d961ab29f Fix small memory leak in SNAP 2022-06-29 05:17:46 -04:00
001824e0f6 Small tweaks 2022-06-29 05:17:36 -04:00
953d32f9b3 Prevent view bounds error when a proc has no atoms 2022-06-29 05:17:26 -04:00
edba922665 Add missing GPU <--> CPU data transfer in minimize Kokkos 2022-06-29 05:17:17 -04:00
53806d4601 Add more missing Kokkos data movement 2022-06-29 05:17:06 -04:00
67597722d5 intergrate references to dump cfg/uef into the dump command docs 2022-06-25 06:19:04 -04:00
337794a9e9 add crosscompiling with MPI support to plugins package 2022-06-24 06:52:08 -04:00
5f5fb895ff add "package" target to support building a windows installer with NSIS 2022-06-24 01:25:54 -04:00
0302d03bc6 must set thirdparty download URL variable for downloading MPICH4Win 2022-06-23 23:20:49 -04:00
0a4fef369f may check for MPI library Fortran support only if MPI is enabled 2022-06-23 15:57:54 -04:00
7d5fc356fe Merge pull request #3311 from akohlmey/next-stable-release
Update stable branch to next stable release
2022-06-22 17:33:34 -04:00
8103e5a18f Merge branch 'release' into next-stable-release 2022-06-22 16:29:19 -04:00
e5b56b67fe Merge branch 'next_patch_release' into next-stable-release 2022-06-21 09:00:40 -04:00
8ffb7e5f89 Merge branch 'collected-small-fixes' into next-stable-release 2022-06-21 09:00:31 -04:00
cb9ab48ce7 Merge branch 'develop' into next-stable-release 2022-06-21 09:00:12 -04:00
f024abfe34 make simpler, faster, more self-contained
(and fix bugs)
2022-06-07 11:10:36 -04:00
5bc1fb1580 revert unneeded changes to atom_vec 2022-06-07 10:47:18 -04:00
2f003e86b9 Merge branch 'lammps:develop' into replicate_periodic_box 2022-06-07 10:39:55 -04:00
1ebb1cee40 Merge branch 'release' into next-stable-release 2022-06-02 21:49:47 -04:00
e8e2a0fd40 Merge branch 'develop' into replicate_periodic_box 2022-05-29 13:29:56 -04:00
f0e7101bd2 Merge branch 'develop' into next-stable-release 2022-05-18 06:35:57 -04:00
b4c58c9828 actually reset image flags 2022-04-22 21:19:53 -04:00
6fd8b2b177 Merge pull request #3122 from akohlmey/maintenance-2021-09-29
Third round of maintenance fixes for the stable release
2022-03-24 14:20:52 -04:00
6edaf42b3d fix temperature initialization bug in KOKKOS nose-hoover code 2022-03-24 11:44:24 -04:00
79c047487d fix parallel execution bug for shell command 2022-03-24 07:38:44 -04:00
ac5acb9abf update threebody example 2022-03-24 07:31:02 -04:00
87fbbd3b13 small kokkos fixes from upstream 2022-03-24 07:18:24 -04:00
8ac0ec6473 Changes needed to compile LAMMPS with latest Kokkos develop 2022-03-24 06:09:03 -04:00
8acba74c4d correct input to load potential file from local folder 2022-03-22 22:32:39 -04:00
34bcbdf41d update extep potential file 2022-03-22 22:31:48 -04:00
d519ca0213 add missing reaxff files to purge list 2022-03-21 14:34:14 -04:00
a392e8dc09 accept infile with 0 lines, so we can create a template from the restart 2022-03-21 00:33:40 -04:00
a4d4f77bc2 run setup_bodies_dynamic() before processing infile in case that is not resetting all data 2022-03-21 00:32:49 -04:00
83a8f72d83 fix off-by-one bug when writing restart files for rigid bodies 2022-03-20 19:14:13 -04:00
3c54b56cfe update overlooked date stamp 2022-03-19 21:00:14 -04:00
ff1a08f148 fixes to CMake build for ML-QUIP package from upstream 2022-03-17 18:07:12 -04:00
5a53b0fc03 import python3 compatibility changes to tools/python from upstream 2022-03-16 13:24:53 -04:00
e550600ebe Error fixed. Epsilon and sigma must also be symmetric 2022-03-16 09:09:52 -04:00
7cb13be52a fix bug where it was not possible to use an absolute path for write_coeff 2022-03-16 09:08:47 -04:00
ab56d7ecd7 augment cmake library search path to include the CUDA stubs library folder
this will help configuring and compiling LAMMPS with CUDA support on
machines where there is no CUDA driver installed
2022-03-10 23:02:57 -05:00
bd6ac3ee6d for 2d systems, rigid bodies always have a moment of inertia and no DOFs need to be subtracted 2022-03-02 16:41:35 -05:00
27ca0a8f41 trigger building an "intel" style neighbor list so that buffers are allocated 2022-02-27 14:50:48 -05:00
f688b9b6b5 use consistent names, avoid memory leaks, fix off-by-1 error in fourier dihedral 2022-02-27 12:25:32 -05:00
16c61b3cc0 add support for plumed 2.6.5, 2.6.6, 2.7.3, 2.7.4, and 2.8.0 (default 2.7.4) 2022-02-25 16:37:00 -05:00
fb480f22fc make cythonize detection compatible with /bin/dash on ubunutu 2022-02-24 21:24:04 -05:00
d0507559a4 when updating ML-IAP due to adding/removing PYTHON we need to delete and re-add cythonize support 2022-02-24 20:40:55 -05:00
ali
58eb331b08 Python 3 compatibility for log commands in tools/python 2022-02-23 10:22:29 -05:00
78458a2143 add mention of example in docs 2022-02-23 01:04:04 -05:00
be6c41a85a delete now-unused variable 2022-02-23 00:44:39 -05:00
c68015ca87 Bug fix for Intel package skip lists with multiple runs. 2022-02-18 05:11:34 -05:00
583c22d6e0 update tools/eam_database from upstream 2022-02-16 11:46:11 -05:00
200ea62fd3 simplify things 2022-02-13 15:22:13 -05:00
793cfe05f9 spacing 2022-02-13 15:09:32 -05:00
2c0a9cf572 better contain bondlist code 2022-02-13 15:06:10 -05:00
5c1486661c revert now unnecessary edits 2022-02-13 14:53:16 -05:00
44c3f4e562 fix for breaking kokkos 2022-02-13 14:51:23 -05:00
437e7829cc Update replicate.rst 2022-02-13 14:11:15 -05:00
7288d78331 reset image flag for bondlist option 2022-02-13 14:06:19 -05:00
2a4dbe5bbc bondlist_flag correction 2022-02-13 13:51:20 -05:00
58a4694d92 Remove incorrect error check in ReaxFF 2022-02-11 16:19:00 -05:00
97cf345528 don't allow exceptions to "escape" a destructor 2022-02-10 21:13:26 -05:00
0658abbdd4 silence possible warnings about missing files on "make clean-all" 2022-02-10 21:10:34 -05:00
72026a58bf make certain that "offset" is always initialized 2022-02-10 21:05:12 -05:00
7152231a10 plug memory leak 2022-02-10 20:56:51 -05:00
8fe8a667b6 update create.f with changes from NIST database
also add parameters for Cr and document in README file and change
the code to create output files with .eam.alloy extension
2022-02-10 20:45:16 -05:00
560c543e69 add extra communication of special neighbors when using angle constraints 2022-02-10 20:44:39 -05:00
c5e6650924 import bugfixes for crashes and memory leaks in MSM kspace style from develop 2022-02-10 20:36:35 -05:00
10373ea5c9 avoid failures with "most" presets 2022-02-10 20:11:00 -05:00
22cca33966 typo 2022-02-07 18:02:17 -05:00
ac7db5041f add example for bondlist option validation 2022-02-06 16:14:30 -05:00
caafe2ff26 bondlist option docs 2022-02-06 15:31:02 -05:00
e384dfa424 'bondlist' option for replicate command
generalizes the command to work for periodic systems
2022-02-06 14:44:49 -05:00
992b1cf582 label as update #3 2022-01-25 07:42:00 -05:00
1505f3de06 fix tag caching issue in INTEL package 2022-01-25 07:41:37 -05:00
566efe04f2 always fall back to using the .so extension if available in the LAMMPS module folder 2022-01-19 10:12:50 -05:00
7586adbb6a Merge pull request #3029 from akohlmey/maintenance-2021-09-29
Second round of maintenance fixes for the stable release
2022-01-06 19:58:51 -05:00
69d6ddccc5 create missing de,df table elements from linear extrapolation 2022-01-05 15:34:30 -05:00
5ae496dcef backport array dimension bugfix for NETCDF package in simplified form 2022-01-03 19:55:23 -05:00
bc5d742623 explain that the computed force in python pair is force/r same as in Pair:single() 2022-01-03 10:12:38 -05:00
882e699163 Incorporate bugfixes from issue #3074, a few additional cleanups 2022-01-03 10:11:18 -05:00
9c725d79d6 correct code example for current code 2022-01-01 16:42:28 -05:00
79fbf437a3 correct format string for Error::one() 2021-12-29 16:19:10 -05:00
d130aa4289 address segfault issue with fix nve/gpu when group is not "all" 2021-12-29 14:06:52 -05:00
5d8b83a251 backport GPU package build system updates from upstream 2021-12-27 20:30:43 -05:00
5a2548a83d have internal fix/compute ids include the fix id for fix reaxff/species
this allows using the fix multiple times
also remove code and warning that checks for multiple fix instances

# Conflicts:
#	src/REAXFF/fix_reaxff_species.cpp
2021-12-23 11:36:28 -05:00
a85b310e1f add missing fclose() 2021-12-23 11:28:24 -05:00
e51fd40547 correct names of the pack/unpack routines for forward communication 2021-12-09 18:33:13 -05:00
62f271658b correct setting forward/reverse buffer size info 2021-12-08 13:58:12 -05:00
0aa742934f correct docs for pair style local/density 2021-12-08 00:51:52 -05:00
a26a709a7b correct handling of data packing for forward and reverse communication 2021-12-08 00:51:52 -05:00
027293d285 whitespace 2021-11-24 15:47:05 -05:00
f7d049ac2d generate atom tags for newly created atoms, if tags are enabled. triclinic support. 2021-11-24 15:36:16 -05:00
ea0ff1c8f7 Update CMake utility function get_lammps_version()
With the introduction of LAMMPS_UPDATE, version.h is no longer a single line
file. With this change the CMake utility will only process the LAMMPS_VERSION
line. Fixes issue #3038
2021-11-23 10:44:40 -05:00
5c1bb5f13a Write dump header after sort to fix incorrect atom count for multiproc 2021-11-22 15:52:27 -05:00
24d9b4b611 Update lebedeva potential file and docs based on email on mailing list
https://matsci.org/t/lammps-users-webpage-and-parameter-file-for-the-lebedeva-potential/39059
2021-11-17 08:45:55 -05:00
a0e75c9006 correct unit description of eta_n0 parameters. fixes #3016 2021-11-17 08:38:09 -05:00
2435b953e1 increment update counter 2021-11-17 07:04:44 -05:00
c042e12323 clarifications and corrections for the discussion of the main git branches 2021-11-17 07:04:13 -05:00
e9efe46db9 update branch names 2021-11-17 07:03:56 -05:00
ecc14b7308 update documentation to refer to the new branch names (develop, release) 2021-11-17 07:03:27 -05:00
0152fe5cdf fix segfault when using atom style smd as part of a hybrid style
also remove redundant for clearing
2021-11-16 21:49:56 -05:00
892d17af22 plug memory leaks 2021-11-16 21:49:41 -05:00
2cca00203e Avoid file name collisions in dump unit tests
# Conflicts:
#	unittest/formats/test_dump_atom.cpp
2021-11-16 15:08:27 -05:00
9f4626a62a correct uninitialized data access bug due to shadowing of a base class member 2021-11-16 10:51:46 -05:00
e890a0b45e Merge pull request #2999 from akohlmey/maintenance-2021-09-29
Maintenance fixes for the stable release
2021-11-09 15:11:19 -05:00
68223f0385 mention that dump sorting is limited to less than 2 billion atoms 2021-11-07 08:31:15 -05:00
1291a88bff skip MPI tests if they would be oversubscribing the available processors 2021-11-07 08:30:19 -05:00
d9b687450a account for increased floating point errors when summing numbers to zero 2021-11-07 08:30:04 -05:00
bd950b37d7 change git:// protocol for accessing github to https:// protocol
https://github.blog/2021-09-01-improving-git-protocol-security-github/
2021-11-02 15:30:27 -04:00
21fcdf8c56 Fix bug in Kokkos neighborlist where stencil wasn't updated for occasional list 2021-11-02 13:17:28 -04:00
6b400fb4bf fix indexing bug 2021-10-31 16:19:17 -04:00
d982298ab2 update new LAMMPS paper citation info 2021-10-28 10:09:01 -04:00
765fd7f763 Use correct sizeof in memset 2021-10-27 17:46:37 -04:00
0325047c01 update a few GPU kernels so they can be compiled on GPUs without double precisions support 2021-10-21 07:34:05 -04:00
2dce8923ee more direct version of clearing out loaded plugins 2021-10-19 08:28:19 -04:00
8d1ba074be wipe out all loaded plugins before destroying the LAMMPS instance 2021-10-18 18:06:09 -04:00
4675a3b560 Only check for GPU double precision support if a GPU is present 2021-10-18 13:44:37 -04:00
8999b1f69f add a LAMMPS_UPDATE string define to signal updates to stable releases 2021-10-17 18:06:04 -04:00
6c2b19c11b Add support for an "Update #" appendix to the version string
This is for informative output only, so that any code depending
on the LAMMPS_VERSION define will not have to be changed and no
warnings will be printed etc.
2021-10-17 18:05:29 -04:00
a425334928 port dump vtk to correctly support custom per-atom arrays and fix some bugs 2021-10-17 11:00:33 -04:00
db2faf2789 fix bugs related to custom per-atom properties in dump style custom 2021-10-17 11:00:21 -04:00
fdbb7d0da4 Report only compatible GPU, i.e. no GPU if mixed/double precision is requested by the hardware does not support it 2021-10-15 20:26:47 -04:00
52cd99918f pppm kspace styles also require -DFFT_SINGLE when using GPUs in single precision 2021-10-15 20:24:47 -04:00
a3e6a95ffb allow single precision FFT introspection 2021-10-15 20:24:47 -04:00
5b65169997 correct expansion of fix/compute/variable arguments to avoid bogus thermo outpu 2021-10-15 20:23:57 -04:00
5f3bf69e30 plug memory leaks 2021-10-15 17:00:46 -04:00
507c02b9af must set define to "see" the lammps_open() library function 2021-10-09 10:21:31 -04:00
b7fe47ba48 Fix bugs and compilation issues in KOKKOS 2021-10-08 09:39:53 -04:00
7dfd11da4b re-freeze Sphinx and other pip installed packages for doc build
The change relative to the stable release fixes a bug with python 3.10 support
2021-10-05 10:52:34 -04:00
97ba95f30e fix a couple more bugs like in 5246cedda6 2021-10-05 10:39:03 -04:00
c1945b4ec9 Fix misplaced MPI calls bug in pair style drip 2021-10-04 07:12:50 -04:00
c4291a4b8e unfreeze versions of python packages used to build the documentation 2021-10-02 23:57:23 -04:00
5b5dfa86c5 also update eigen download for traditional build 2021-10-02 23:56:28 -04:00
3ca3f6959f update eigen3 to the latest release and move download to our own server 2021-10-02 22:55:06 -04:00
f7b7bfa406 Avoid assertions in PythonCapabilities check when using external KOKKOS 2021-10-01 12:05:59 -04:00
3d2f29c92d fix memory allocation bug causing memory corruption on 32-bit arches 2021-10-01 01:16:45 -04:00
1614 changed files with 213875 additions and 61670 deletions

25
.github/CODEOWNERS vendored
View File

@ -38,6 +38,7 @@ src/ML-HDNNP/* @singraber
src/ML-IAP/* @athomps
src/ML-PACE/* @yury-lysogorskiy
src/ML-POD/* @exapde
src/ML-UF3/* @monk-04
src/MOFFF/* @hheenen
src/MOLFILE/* @akohlmey
src/NETCDF/* @pastewka
@ -49,6 +50,7 @@ src/PTM/* @pmla
src/QMMM/* @akohlmey
src/REACTION/* @jrgissing
src/REAXFF/* @hasanmetin @stanmoore1
src/RHEO/* @jtclemm
src/SCAFACOS/* @rhalver
src/SNAP/* @athomps
src/SPIN/* @julient31
@ -58,11 +60,15 @@ src/VTK/* @rbberger
# individual files in packages
src/GPU/pair_vashishta_gpu.* @andeplane
src/KOKKOS/pair_vashishta_kokkos.* @andeplane
src/KOKKOS/pair_vashishta_kokkos.* @andeplane @stanmoore1
src/KOSSOS/pair_pod_kokkos.* @exapde @stanmoore1
src/MANYBODY/pair_vashishta_table.* @andeplane
src/MANYBODY/pair_atm.* @sergeylishchuk
src/MANYBODY/pair_nb3b_screened.* @flodesani
src/REPLICA/*_grem.* @dstelter92
src/EXTRA-COMMAND/geturl.* @akohlmey
src/EXTRA-COMMAND/group_ndx.* @akohlmey
src/EXTRA-COMMAND/ndx_group.* @akohlmey
src/EXTRA-COMPUTE/compute_stress_mop*.* @RomainVermorel
src/EXTRA-COMPUTE/compute_born_matrix.* @Bibobu @athomps
src/EXTRA-FIX/fix_deform_pressure.* @jtclemm
@ -72,6 +78,8 @@ src/MC/fix_sgcmc.* @athomps
src/REAXFF/compute_reaxff_atom.* @rbberger
src/KOKKOS/compute_reaxff_atom_kokkos.* @rbberger
src/REPLICA/fix_pimd_langevin.* @Yi-FanLi
src/DPD-BASIC/pair_dpd_coul_slater_long.* @Eddy-Barraud
src/GPU/pair_dpd_coul_slater_long.* @Eddy-Barraud
# core LAMMPS classes
src/lammps.* @sjplimp
@ -91,9 +99,10 @@ src/fix.* @sjplimp
src/force.* @sjplimp
src/group.* @sjplimp
src/improper.* @sjplimp
src/info.* @akohlmey
src/kspace.* @sjplimp
src/lmptyp.h @sjplimp
src/library.* @sjplimp
src/library.* @sjplimp @akohlmey
src/main.cpp @sjplimp
src/min_*.* @sjplimp
src/memory.* @sjplimp
@ -101,12 +110,12 @@ src/modify.* @sjplimp @stanmoore1
src/molecule.* @sjplimp
src/my_page.h @sjplimp
src/my_pool_chunk.h @sjplimp
src/npair*.* @sjplimp
src/ntopo*.* @sjplimp
src/nstencil*.* @sjplimp
src/neighbor.* @sjplimp
src/nbin*.* @sjplimp
src/neigh_*.* @sjplimp
src/npair*.* @sjplimp @jtclemm
src/ntopo*.* @sjplimp @jtclemm
src/nstencil*.* @sjplimp @jtclemm
src/neighbor.* @sjplimp @jtclemm
src/nbin*.* @sjplimp @jtclemm
src/neigh_*.* @sjplimp @jtclemm
src/output.* @sjplimp
src/pair.* @sjplimp
src/rcb.* @sjplimp

View File

@ -15,7 +15,7 @@ jobs:
build:
name: MacOS Unit Test
if: ${{ github.repository == 'lammps/lammps' }}
runs-on: macos-latest
runs-on: macos-13
env:
CCACHE_DIR: ${{ github.workspace }}/.ccache
@ -43,6 +43,8 @@ jobs:
working-directory: build
run: |
ccache -z
python3 -m venv macosenv
source macosenv/bin/activate
python3 -m pip install numpy
python3 -m pip install pyyaml
cmake -C ../cmake/presets/clang.cmake \

11
.gitignore vendored
View File

@ -43,12 +43,12 @@ Thumbs.db
#cmake
/build*
/CMakeCache.txt
/CMakeFiles/
/Testing
CMakeCache.txt
CMakeFiles
/Makefile
/Testing
/cmake_install.cmake
Testing
Temporary
cmake_install.cmake
/lmp
out/Debug
out/RelWithDebInfo
@ -60,3 +60,4 @@ src/Makefile.package.settings-e
/cmake/build/x64-Debug-Clang
/install/x64-GUI-MSVC
/install
.Rhistory

View File

@ -12,6 +12,11 @@ endif()
if(POLICY CMP0075)
cmake_policy(SET CMP0075 NEW)
endif()
# set policy to silence warnings about requiring execute permission for find_program
# we use OLD because the python-config script for the Fedora MinGW cross-compiler requires it currently
if(POLICY CMP0109)
cmake_policy(SET CMP0109 OLD)
endif()
# set policy to silence warnings about timestamps of downloaded files. review occasionally if it may be set to NEW
if(POLICY CMP0135)
cmake_policy(SET CMP0135 OLD)
@ -23,6 +28,7 @@ project(lammps CXX)
set(SOVERSION 0)
get_property(BUILD_IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
include(GNUInstallDirs)
get_filename_component(LAMMPS_DIR ${CMAKE_CURRENT_SOURCE_DIR}/.. ABSOLUTE)
get_filename_component(LAMMPS_LIB_BINARY_DIR ${CMAKE_BINARY_DIR}/lib ABSOLUTE)
# collect all executables and shared libs in the top level build folder
@ -163,6 +169,22 @@ if(MSVC)
add_compile_definitions(_CRT_SECURE_NO_WARNINGS)
endif()
# warn about potentially problematic GCC compiler versions
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
if (CMAKE_CXX_STANDARD GREATER_EQUAL 17)
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9.0)
message(WARNING "Using ${CMAKE_CXX_COMPILER_ID} compiler version ${CMAKE_CXX_COMPILER_VERSION} "
"with C++17 is not recommended. Please use ${CMAKE_CXX_COMPILER_ID} compiler version 9.x or later")
endif()
endif()
if (CMAKE_CXX_STANDARD GREATER_EQUAL 11)
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.0)
message(WARNING "Using ${CMAKE_CXX_COMPILER_ID} compiler version ${CMAKE_CXX_COMPILER_VERSION} "
"with C++11 is not recommended. Please use ${CMAKE_CXX_COMPILER_ID} compiler version 5.x or later")
endif()
endif()
endif()
# export all symbols when building a .dll file on windows
if((CMAKE_SYSTEM_NAME STREQUAL "Windows") AND BUILD_SHARED_LIBS)
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
@ -197,18 +219,17 @@ set(LAMMPS_BINARY lmp${LAMMPS_MACHINE})
option(BUILD_SHARED_LIBS "Build shared library" OFF)
option(CMAKE_POSITION_INDEPENDENT_CODE "Create object compatible with shared libraries" ON)
option(BUILD_TOOLS "Build and install LAMMPS tools (msi2lmp, binary2txt, chain)" OFF)
option(BUILD_LAMMPS_SHELL "Build and install the LAMMPS shell" OFF)
option(BUILD_LAMMPS_GUI "Build and install the LAMMPS GUI" OFF)
# Support using clang-tidy for C++ files with selected options
set(ENABLE_CLANG_TIDY OFF CACHE BOOL "Include clang-tidy processing when compiling")
if(ENABLE_CLANG_TIDY)
set(CMAKE_CXX_CLANG_TIDY "clang-tidy;-checks=-*,performance-trivially-destructible,performance-unnecessary-copy-initialization,performance-unnecessary-value-param,readability-redundant-control-flow,readability-redundant-declaration,readability-redundant-function-ptr-dereference,readability-redundant-member-init,readability-redundant-string-cstr,readability-redundant-string-init,readability-simplify-boolean-expr,readability-static-accessed-through-instance,readability-static-definition-in-anonymous-namespace,modernize-use-override,modernize-use-bool-literals,modernize-use-emplace,modernize-return-braced-init-list,modernize-use-equals-default,modernize-use-equals-delete,modernize-replace-random-shuffle,modernize-deprecated-headers,modernize-use-nullptr,modernize-use-noexcept,modernize-redundant-void-arg;-fix;-header-filter=.*,header-filter=library.h,header-filter=fmt/*.h" CACHE STRING "clang-tidy settings")
set(CMAKE_CXX_CLANG_TIDY "clang-tidy;-checks=-*,performance-trivially-destructible,performance-unnecessary-copy-initialization,performance-unnecessary-value-param,readability-redundant-control-flow,readability-redundant-declaration,readability-redundant-function-ptr-dereference,readability-redundant-member-init,readability-redundant-string-cstr,readability-redundant-string-init,readability-simplify-boolean-expr,readability-static-accessed-through-instance,readability-static-definition-in-anonymous-namespace,readability-qualified-auto,misc-unused-parameters,modernize-deprecated-ios-base-aliases,modernize-loop-convert,modernize-shrink-to-fit,modernize-use-auto,modernize-use-using,modernize-use-override,modernize-use-bool-literals,modernize-use-emplace,modernize-return-braced-init-list,modernize-use-equals-default,modernize-use-equals-delete,modernize-replace-random-shuffle,modernize-deprecated-headers,modernize-use-nullptr,modernize-use-noexcept,modernize-redundant-void-arg;-fix;-header-filter=.*,header-filter=library.h,header-filter=fmt/*.h" CACHE STRING "clang-tidy settings")
else()
unset(CMAKE_CXX_CLANG_TIDY CACHE)
endif()
include(GNUInstallDirs)
file(GLOB ALL_SOURCES CONFIGURE_DEPENDS ${LAMMPS_SOURCE_DIR}/[^.]*.cpp)
file(GLOB MAIN_SOURCES CONFIGURE_DEPENDS ${LAMMPS_SOURCE_DIR}/main.cpp)
list(REMOVE_ITEM ALL_SOURCES ${MAIN_SOURCES})
@ -256,6 +277,7 @@ set(STANDARD_PACKAGES
DRUDE
EFF
ELECTRODE
EXTRA-COMMAND
EXTRA-COMPUTE
EXTRA-DUMP
EXTRA-FIX
@ -281,10 +303,11 @@ set(STANDARD_PACKAGES
ML-HDNNP
ML-IAP
ML-PACE
ML-POD
ML-QUIP
ML-RANN
ML-SNAP
ML-POD
ML-UF3
MOFFF
MOLECULE
MOLFILE
@ -303,6 +326,7 @@ set(STANDARD_PACKAGES
REACTION
REAXFF
REPLICA
RHEO
RIGID
SCAFACOS
SHOCK
@ -407,6 +431,7 @@ pkg_depends(CG-DNA ASPHERE)
pkg_depends(ELECTRODE KSPACE)
pkg_depends(EXTRA-MOLECULE MOLECULE)
pkg_depends(MESONT MOLECULE)
pkg_depends(RHEO BPM)
# detect if we may enable OpenMP support by default
set(BUILD_OMP_DEFAULT OFF)
@ -449,13 +474,13 @@ if(BUILD_OMP)
if(CMAKE_VERSION VERSION_LESS 3.28)
get_filename_component(_exe "${CMAKE_CXX_COMPILER}" NAME)
if((CMAKE_CXX_COMPILER_ID STREQUAL "Clang") AND (_exe STREQUAL "crayCC"))
set(CMAKE_SHARED_LINKER_FLAGS_${BTYPE} "${CMAKE_SHARED_LINKER_FLAGS_${BTYPE} -fopenmp")
set(CMAKE_STATIC_LINKER_FLAGS_${BTYPE} "${CMAKE_STATIC_LINKER_FLAGS_${BTYPE} -fopenmp")
set(CMAKE_SHARED_LINKER_FLAGS_${BTYPE} "${CMAKE_SHARED_LINKER_FLAGS_${BTYPE}} -fopenmp")
set(CMAKE_STATIC_LINKER_FLAGS_${BTYPE} "${CMAKE_STATIC_LINKER_FLAGS_${BTYPE}} -fopenmp")
endif()
else()
if(CMAKE_CXX_COMPILER_ID STREQUAL "CrayClang")
set(CMAKE_SHARED_LINKER_FLAGS_${BTYPE} "${CMAKE_SHARED_LINKER_FLAGS_${BTYPE} -fopenmp")
set(CMAKE_STATIC_LINKER_FLAGS_${BTYPE} "${CMAKE_STATIC_LINKER_FLAGS_${BTYPE} -fopenmp")
set(CMAKE_SHARED_LINKER_FLAGS_${BTYPE} "${CMAKE_SHARED_LINKER_FLAGS_${BTYPE}} -fopenmp")
set(CMAKE_STATIC_LINKER_FLAGS_${BTYPE} "${CMAKE_STATIC_LINKER_FLAGS_${BTYPE}} -fopenmp")
endif()
endif()
endif()
@ -490,6 +515,14 @@ if(PKG_ATC OR PKG_AWPMD OR PKG_ML-QUIP OR PKG_ML-POD OR PKG_ELECTRODE OR BUILD_T
endif()
endif()
find_package(CURL QUIET COMPONENTS HTTP HTTPS)
option(WITH_CURL "Enable libcurl support" ${CURL_FOUND})
if(WITH_CURL)
find_package(CURL REQUIRED COMPONENTS HTTP HTTPS)
target_compile_definitions(lammps PRIVATE -DLAMMPS_CURL)
target_link_libraries(lammps PRIVATE CURL::libcurl)
endif()
# tweak jpeg library names to avoid linker errors with MinGW cross-compilation
set(JPEG_NAMES libjpeg libjpeg-62)
find_package(JPEG QUIET)
@ -547,7 +580,7 @@ else()
endif()
foreach(PKG_WITH_INCL KSPACE PYTHON ML-IAP VORONOI COLVARS ML-HDNNP MDI MOLFILE NETCDF
PLUMED QMMM ML-QUIP SCAFACOS MACHDYN VTK KIM COMPRESS ML-PACE LEPTON)
PLUMED QMMM ML-QUIP SCAFACOS MACHDYN VTK KIM COMPRESS ML-PACE LEPTON RHEO)
if(PKG_${PKG_WITH_INCL})
include(Packages/${PKG_WITH_INCL})
endif()
@ -689,7 +722,7 @@ endif()
# packages which selectively include variants based on enabled styles
# e.g. accelerator packages
######################################################################
foreach(PKG_WITH_INCL CORESHELL DPD-SMOOTH MC MISC PHONON QEQ OPENMP KOKKOS OPT INTEL GPU)
foreach(PKG_WITH_INCL CORESHELL DPD-BASIC DPD-SMOOTH MC MISC PHONON QEQ OPENMP KOKKOS OPT INTEL GPU)
if(PKG_${PKG_WITH_INCL})
include(Packages/${PKG_WITH_INCL})
endif()
@ -867,7 +900,7 @@ endif()
include(Testing)
include(CodeCoverage)
include(CodingStandard)
find_package(ClangFormat 8.0)
find_package(ClangFormat 11.0)
if(ClangFormat_FOUND)
add_custom_target(format-src
@ -937,6 +970,7 @@ message(STATUS "<<< Compilers and Flags: >>>
-- C++ Compiler: ${CMAKE_CXX_COMPILER}
Type: ${CMAKE_CXX_COMPILER_ID}
Version: ${CMAKE_CXX_COMPILER_VERSION}
C++ Standard: ${CMAKE_CXX_STANDARD}
C++ Flags: ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${BTYPE}}
Defines: ${DEFINES}")
get_target_property(OPTIONS lammps COMPILE_OPTIONS)
@ -1043,9 +1077,6 @@ endif()
if(BUILD_TOOLS)
message(STATUS "<<< Building Tools >>>")
endif()
if(BUILD_LAMMPS_SHELL)
message(STATUS "<<< Building LAMMPS Shell >>>")
endif()
if(BUILD_LAMMPS_GUI)
message(STATUS "<<< Building LAMMPS GUI >>>")
if(LAMMPS_GUI_USE_PLUGIN)

View File

@ -1,5 +1,8 @@
# Find clang-format
find_program(ClangFormat_EXECUTABLE NAMES clang-format
clang-format-20.0
clang-format-19.0
clang-format-18.0
clang-format-17.0
clang-format-16.0
clang-format-15.0

View File

@ -32,7 +32,13 @@ function(check_omp_h_include)
set(CMAKE_REQUIRED_INCLUDES ${OpenMP_CXX_INCLUDE_DIRS})
set(CMAKE_REQUIRED_LINK_OPTIONS ${OpenMP_CXX_FLAGS})
set(CMAKE_REQUIRED_LIBRARIES ${OpenMP_CXX_LIBRARIES})
check_include_file_cxx(omp.h _have_omp_h)
# there are all kinds of problems with finding omp.h
# for Clang and derived compilers so we pretend it is there.
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
set(_have_omp_h TRUE)
else()
check_include_file_cxx(omp.h _have_omp_h)
endif()
else()
set(_have_omp_h FALSE)
endif()

View File

@ -1,6 +1,6 @@
message(STATUS "Downloading and building OpenCL loader library")
set(OPENCL_LOADER_URL "${LAMMPS_THIRDPARTY_URL}/opencl-loader-2024.02.09.tar.gz" CACHE STRING "URL for OpenCL loader tarball")
set(OPENCL_LOADER_MD5 "f3573cf9daa3558ba46fd5866517f38f" CACHE STRING "MD5 checksum of OpenCL loader tarball")
set(OPENCL_LOADER_URL "${LAMMPS_THIRDPARTY_URL}/opencl-loader-2024.05.09.tar.gz" CACHE STRING "URL for OpenCL loader tarball")
set(OPENCL_LOADER_MD5 "e7796826b21c059224fabe997e0f2075" CACHE STRING "MD5 checksum of OpenCL loader tarball")
mark_as_advanced(OPENCL_LOADER_URL)
mark_as_advanced(OPENCL_LOADER_MD5)

View File

@ -24,6 +24,12 @@ target_include_directories(colvars PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/colvars)
target_include_directories(colvars PRIVATE ${LAMMPS_SOURCE_DIR})
target_link_libraries(lammps PRIVATE colvars)
if(BUILD_OMP)
# Enable OpenMP for Colvars as well
target_compile_options(colvars PRIVATE ${OpenMP_CXX_FLAGS})
target_link_libraries(colvars PRIVATE OpenMP::OpenMP_CXX)
endif()
if(COLVARS_DEBUG)
# Need to export the define publicly to be valid in interface code
target_compile_definitions(colvars PUBLIC -DCOLVARS_DEBUG)

View File

@ -0,0 +1,9 @@
# pair style dpd/coul/slater/long may only be installed if also KSPACE is installed
if(NOT PKG_KSPACE)
get_property(LAMMPS_PAIR_HEADERS GLOBAL PROPERTY PAIR)
list(REMOVE_ITEM LAMMPS_PAIR_HEADERS ${LAMMPS_SOURCE_DIR}/DPD-BASIC/pair_dpd_coul_slater_long.h)
set_property(GLOBAL PROPERTY PAIR "${LAMMPS_PAIR_HEADERS}")
get_target_property(LAMMPS_SOURCES lammps SOURCES)
list(REMOVE_ITEM LAMMPS_SOURCES ${LAMMPS_SOURCE_DIR}/DPD-BASIC/pair_dpd_coul_slater_long.cpp)
set_property(TARGET lammps PROPERTY SOURCES "${LAMMPS_SOURCES}")
endif()

View File

@ -45,8 +45,8 @@ if(DOWNLOAD_KOKKOS)
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_CXX_EXTENSIONS=${CMAKE_CXX_EXTENSIONS}")
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}")
include(ExternalProject)
set(KOKKOS_URL "https://github.com/kokkos/kokkos/archive/4.3.00.tar.gz" CACHE STRING "URL for KOKKOS tarball")
set(KOKKOS_MD5 "889dcea2b5ced3debdc5b0820044bdc4" CACHE STRING "MD5 checksum of KOKKOS tarball")
set(KOKKOS_URL "https://github.com/kokkos/kokkos/archive/4.3.01.tar.gz" CACHE STRING "URL for KOKKOS tarball")
set(KOKKOS_MD5 "243de871b3dc2cf3990c1c404032df83" CACHE STRING "MD5 checksum of KOKKOS tarball")
mark_as_advanced(KOKKOS_URL)
mark_as_advanced(KOKKOS_MD5)
GetFallbackURL(KOKKOS_URL KOKKOS_FALLBACK)
@ -71,7 +71,7 @@ if(DOWNLOAD_KOKKOS)
add_dependencies(LAMMPS::KOKKOSCORE kokkos_build)
add_dependencies(LAMMPS::KOKKOSCONTAINERS kokkos_build)
elseif(EXTERNAL_KOKKOS)
find_package(Kokkos 4.3.00 REQUIRED CONFIG)
find_package(Kokkos 4.3.01 REQUIRED CONFIG)
target_link_libraries(lammps PRIVATE Kokkos::kokkos)
else()
set(LAMMPS_LIB_KOKKOS_SRC_DIR ${LAMMPS_LIB_SOURCE_DIR}/kokkos)

View File

@ -1,5 +1,11 @@
set(PACELIB_URL "https://github.com/ICAMS/lammps-user-pace/archive/refs/tags/v.2023.11.25.fix.tar.gz" CACHE STRING "URL for PACE evaluator library sources")
# PACE library support for ML-PACE package
# set policy to silence warnings about timestamps of downloaded files. review occasionally if it may be set to NEW
if(POLICY CMP0135)
cmake_policy(SET CMP0135 OLD)
endif()
set(PACELIB_URL "https://github.com/ICAMS/lammps-user-pace/archive/refs/tags/v.2023.11.25.fix.tar.gz" CACHE STRING "URL for PACE evaluator library sources")
set(PACELIB_MD5 "b45de9a633f42ed65422567e3ce56f9f" CACHE STRING "MD5 checksum of PACE evaluator library tarball")
mark_as_advanced(PACELIB_URL)
mark_as_advanced(PACELIB_MD5)

View File

@ -27,7 +27,7 @@ if(DOWNLOAD_QUIP)
else()
message(FATAL_ERROR "The ${CMAKE_Fortran_COMPILER_ID} Fortran compiler is not (yet) supported for building QUIP")
endif()
set(temp "${temp}CFLAGS += -fPIC \nCPLUSPLUSFLAGS += -fPIC\nAR_ADD=src\n")
set(temp "${temp}CFLAGS += -fPIC -Wno-return-mismatch \nCPLUSPLUSFLAGS += -fPIC -Wno-return-mismatch\nAR_ADD=src\n")
set(temp "${temp}MATH_LINKOPTS=")
foreach(flag ${BLAS_LIBRARIES})
set(temp "${temp} ${flag}")

View File

@ -1,5 +1,14 @@
# Plumed2 support for PLUMED package
# set policy to silence warnings about timestamps of downloaded files. review occasionally if it may be set to NEW
if(POLICY CMP0135)
cmake_policy(SET CMP0135 OLD)
endif()
# for supporting multiple concurrent plumed2 installations for debugging and testing
set(PLUMED_SUFFIX "" CACHE STRING "Suffix for Plumed2 library")
mark_as_advanced(PLUMED_SUFFIX)
if(BUILD_MPI)
set(PLUMED_CONFIG_MPI "--enable-mpi")
set(PLUMED_CONFIG_CC ${CMAKE_MPI_C_COMPILER})
@ -21,9 +30,11 @@ else()
set(PLUMED_CONFIG_OMP "--disable-openmp")
endif()
set(PLUMED_URL "https://github.com/plumed/plumed2/releases/download/v2.8.3/plumed-src-2.8.3.tgz"
# Note: must also adjust check for supported API versions in
# fix_plumed.cpp when version changes from v2.n.x to v2.n+1.y
set(PLUMED_URL "https://github.com/plumed/plumed2/releases/download/v2.9.1/plumed-src-2.9.1.tgz"
CACHE STRING "URL for PLUMED tarball")
set(PLUMED_MD5 "76d23cd394eba9e6530316ed1184e219" CACHE STRING "MD5 checksum of PLUMED tarball")
set(PLUMED_MD5 "c3b2d31479c1e9ce211719d40e9efbd7" CACHE STRING "MD5 checksum of PLUMED tarball")
mark_as_advanced(PLUMED_URL)
mark_as_advanced(PLUMED_MD5)
@ -75,6 +86,9 @@ if((CMAKE_SYSTEM_NAME STREQUAL "Windows") AND (CMAKE_CROSSCOMPILING))
DEPENDS plumed_build
COMMENT "Copying Plumed files"
)
if(CMAKE_PROJECT_NAME STREQUAL "lammps")
target_link_libraries(lammps INTERFACE LAMMPS::PLUMED)
endif()
else()
@ -149,21 +163,26 @@ else()
endif()
set_target_properties(LAMMPS::PLUMED PROPERTIES INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include)
file(MAKE_DIRECTORY ${INSTALL_DIR}/include)
if(CMAKE_PROJECT_NAME STREQUAL "lammps")
target_link_libraries(lammps PRIVATE LAMMPS::PLUMED)
endif()
else()
find_package(PkgConfig REQUIRED)
pkg_check_modules(PLUMED REQUIRED plumed)
pkg_check_modules(PLUMED REQUIRED plumed${PLUMED_SUFFIX})
add_library(LAMMPS::PLUMED INTERFACE IMPORTED)
if(PLUMED_MODE STREQUAL "STATIC")
include(${PLUMED_LIBDIR}/plumed/src/lib/Plumed.cmake.static)
include(${PLUMED_LIBDIR}/plumed${PLUMED_SUFFIX}/src/lib/Plumed.cmake.static)
elseif(PLUMED_MODE STREQUAL "SHARED")
include(${PLUMED_LIBDIR}/plumed/src/lib/Plumed.cmake.shared)
include(${PLUMED_LIBDIR}/plumed${PLUMED_SUFFIX}/src/lib/Plumed.cmake.shared)
elseif(PLUMED_MODE STREQUAL "RUNTIME")
set_target_properties(LAMMPS::PLUMED PROPERTIES INTERFACE_COMPILE_DEFINITIONS "__PLUMED_DEFAULT_KERNEL=${PLUMED_LIBDIR}/${CMAKE_SHARED_LIBRARY_PREFIX}plumedKernel${CMAKE_SHARED_LIBRARY_SUFFIX}")
include(${PLUMED_LIBDIR}/plumed/src/lib/Plumed.cmake.runtime)
set_target_properties(LAMMPS::PLUMED PROPERTIES INTERFACE_COMPILE_DEFINITIONS "__PLUMED_DEFAULT_KERNEL=${PLUMED_LIBDIR}/${CMAKE_SHARED_LIBRARY_PREFIX}plumed${PLUMED_SUFFIX}Kernel${CMAKE_SHARED_LIBRARY_SUFFIX}")
include(${PLUMED_LIBDIR}/plumed${PLUMED_SUFFIX}/src/lib/Plumed.cmake.runtime)
endif()
set_target_properties(LAMMPS::PLUMED PROPERTIES INTERFACE_LINK_LIBRARIES "${PLUMED_LOAD}")
set_target_properties(LAMMPS::PLUMED PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${PLUMED_INCLUDE_DIRS}")
if(CMAKE_PROJECT_NAME STREQUAL "lammps")
target_link_libraries(lammps PUBLIC LAMMPS::PLUMED)
endif()
endif()
endif()
target_link_libraries(lammps PRIVATE LAMMPS::PLUMED)

View File

@ -0,0 +1,2 @@
find_package(GSL 2.6 REQUIRED)
target_link_libraries(lammps PRIVATE GSL::gsl)

View File

@ -102,9 +102,9 @@ endif()
#######################################
# select code sanitizer options
#######################################
set(ENABLE_SANITIZER "none" CACHE STRING "Select a code sanitizer option (none (default), address, leak, thread, undefined)")
set(ENABLE_SANITIZER "none" CACHE STRING "Select a code sanitizer option (none (default), address, hwaddress, leak, thread, undefined)")
mark_as_advanced(ENABLE_SANITIZER)
set(ENABLE_SANITIZER_VALUES none address leak thread undefined)
set(ENABLE_SANITIZER_VALUES none address hwaddress leak thread undefined)
set_property(CACHE ENABLE_SANITIZER PROPERTY STRINGS ${ENABLE_SANITIZER_VALUES})
validate_option(ENABLE_SANITIZER ENABLE_SANITIZER_VALUES)
string(TOLOWER ${ENABLE_SANITIZER} ENABLE_SANITIZER)

View File

@ -37,37 +37,6 @@ if(BUILD_TOOLS)
add_subdirectory(${LAMMPS_TOOLS_DIR}/phonon ${CMAKE_BINARY_DIR}/phana_build)
endif()
find_package(PkgConfig QUIET)
if(BUILD_LAMMPS_SHELL)
if(NOT PkgConfig_FOUND)
message(FATAL_ERROR "Must have pkg-config installed for building LAMMPS shell")
endif()
find_package(PkgConfig REQUIRED)
pkg_check_modules(READLINE IMPORTED_TARGET REQUIRED readline)
# include resource compiler to embed icons into the executable on Windows
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
enable_language(RC)
set(ICON_RC_FILE ${LAMMPS_TOOLS_DIR}/lammps-shell/lmpicons.rc)
endif()
add_executable(lammps-shell ${LAMMPS_TOOLS_DIR}/lammps-shell/lammps-shell.cpp ${ICON_RC_FILE})
target_include_directories(lammps-shell PRIVATE ${LAMMPS_TOOLS_DIR}/lammps-shell)
target_link_libraries(lammps-shell PRIVATE lammps PkgConfig::READLINE)
# workaround for broken readline pkg-config file on FreeBSD
if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
target_include_directories(lammps-shell PRIVATE /usr/local/include)
endif()
if(CMAKE_SYSTEM_NAME STREQUAL "LinuxMUSL")
pkg_check_modules(TERMCAP IMPORTED_TARGET REQUIRED termcap)
target_link_libraries(lammps-shell PRIVATE lammps PkgConfig::TERMCAP)
endif()
install(TARGETS lammps-shell EXPORT LAMMPS_Targets DESTINATION ${CMAKE_INSTALL_BINDIR})
install(DIRECTORY ${LAMMPS_TOOLS_DIR}/lammps-shell/icons DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/)
install(FILES ${LAMMPS_TOOLS_DIR}/lammps-shell/lammps-shell.desktop DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications/)
endif()
if(BUILD_LAMMPS_GUI)
get_filename_component(LAMMPS_GUI_DIR ${LAMMPS_SOURCE_DIR}/../tools/lammps-gui ABSOLUTE)
get_filename_component(LAMMPS_GUI_BIN ${CMAKE_BINARY_DIR}/lammps-gui-build ABSOLUTE)

Binary file not shown.

View File

@ -2,9 +2,10 @@
APP_NAME=lammps-gui
DESTDIR=${PWD}/../LAMMPS_GUI
VERSION="$1"
echo "Delete old files, if they exist"
rm -rf ${DESTDIR} ../LAMMPS_GUI-Linux-amd64.tar.gz
rm -rf ${DESTDIR} ../LAMMPS_GUI-Linux-amd64*.tar.gz
echo "Create staging area for deployment and populate"
DESTDIR=${DESTDIR} cmake --install . --prefix "/"
@ -59,17 +60,19 @@ done
echo "Set up wrapper script"
MYDIR=$(dirname "$0")
cp ${MYDIR}/xdg-open ${DESTDIR}/bin
cp ${MYDIR}/linux_wrapper.sh ${DESTDIR}/bin
for s in ${DESTDIR}/bin/*
do \
EXE=$(basename $s)
test ${EXE} = linux_wrapper.sh && continue
test ${EXE} = qt.conf && continue
test ${EXE} = xdg-open && continue
ln -s bin/linux_wrapper.sh ${DESTDIR}/${EXE}
done
pushd ..
tar -czvvf LAMMPS_GUI-Linux-amd64.tar.gz LAMMPS_GUI
tar -czvvf LAMMPS_GUI-Linux-amd64-${VERSION}.tar.gz LAMMPS_GUI
popd
echo "Cleanup dir"

View File

@ -1,9 +1,10 @@
#!/bin/bash
APP_NAME=lammps-gui
VERSION="$1"
echo "Delete old files, if they exist"
rm -f ${APP_NAME}.dmg ${APP_NAME}-rw.dmg LAMMPS_GUI-macOS-multiarch.dmg
rm -f ${APP_NAME}.dmg ${APP_NAME}-rw.dmg LAMMPS_GUI-macOS-multiarch*.dmg
echo "Create initial dmg file with macdeployqt"
macdeployqt lammps-gui.app -dmg
@ -96,12 +97,12 @@ sync
echo "Unmount modified disk image and convert to compressed read-only image"
hdiutil detach "${DEVICE}"
hdiutil convert "${APP_NAME}-rw.dmg" -format UDZO -o "LAMMPS_GUI-macOS-multiarch.dmg"
hdiutil convert "${APP_NAME}-rw.dmg" -format UDZO -o "LAMMPS_GUI-macOS-multiarch-${VERSION}.dmg"
echo "Attach icon to .dmg file"
echo "read 'icns' (-16455) \"lammps-gui.app/Contents/Resources/lammps.icns\";" > icon.rsrc
Rez -a icon.rsrc -o LAMMPS_GUI-macOS-multiarch.dmg
SetFile -a C LAMMPS_GUI-macOS-multiarch.dmg
Rez -a icon.rsrc -o LAMMPS_GUI-macOS-multiarch-${VERSION}.dmg
SetFile -a C LAMMPS_GUI-macOS-multiarch-${VERSION}.dmg
rm icon.rsrc
echo "Delete temporary disk images"

View File

@ -3,9 +3,10 @@
APP_NAME=lammps-gui
DESTDIR=${PWD}/LAMMPS_GUI
SYSROOT="$1"
VERSION="$2"
echo "Delete old files, if they exist"
rm -rvf ${DESTDIR}/LAMMPS_GUI ${DESTDIR}/LAMMPS-Win10-amd64.zip
rm -rvf ${DESTDIR}/LAMMPS_GUI ${DESTDIR}/LAMMPS-Win10-amd64*.zip
echo "Create staging area for deployment and populate"
DESTDIR=${DESTDIR} cmake --install . --prefix "/"
@ -60,5 +61,5 @@ cat > ${DESTDIR}/bin/qt.conf <<EOF
[Paths]
Plugins = ../qt5plugins
EOF
zip -9rvD LAMMPS-Win10-amd64.zip LAMMPS_GUI
zip -9rvD LAMMPS-Win10-amd64-${VERSION}.zip LAMMPS_GUI

View File

@ -4,15 +4,17 @@
# reset locale to avoid problems with decimal numbers
export LC_ALL=C
BASEDIR=$(dirname "$0")
EXENAME=$(basename "$0")
BASEDIR="$(dirname "$0")"
EXENAME="$(basename "$0")"
PATH="${BASEDIR}/bin:${PATH}"
# append to LD_LIBRARY_PATH to prefer local (newer) libs
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${BASEDIR}/lib
LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${BASEDIR}/lib"
# set some environment variables for LAMMPS etc.
LAMMPS_POTENTIALS=${BASEDIR}/share/lammps/potentials
MSI2LMP_LIBRARY=${BASEDIR}/share/lammps/frc_files
export LD_LIBRARY_PATH LAMMPS_POTENTIALS MSI2LMP_LIBRARY
LAMMPS_POTENTIALS="${BASEDIR}/share/lammps/potentials"
MSI2LMP_LIBRARY="${BASEDIR}/share/lammps/frc_files"
export LD_LIBRARY_PATH LAMMPS_POTENTIALS MSI2LMP_LIBRARY PATH
exec "${BASEDIR}/bin/${EXENAME}" "$@"

1074
cmake/packaging/xdg-open Executable file

File diff suppressed because it is too large Load Diff

View File

@ -26,8 +26,9 @@ set(ALL_PACKAGES
DPD-REACT
DPD-SMOOTH
DRUDE
ELECTRODE
EFF
ELECTRODE
EXTRA-COMMAND
EXTRA-COMPUTE
EXTRA-DUMP
EXTRA-FIX
@ -60,6 +61,7 @@ set(ALL_PACKAGES
ML-QUIP
ML-RANN
ML-SNAP
ML-UF3
MOFFF
MOLECULE
MOLFILE
@ -80,6 +82,7 @@ set(ALL_PACKAGES
REACTION
REAXFF
REPLICA
RHEO
RIGID
SCAFACOS
SHOCK

View File

@ -28,8 +28,9 @@ set(ALL_PACKAGES
DPD-REACT
DPD-SMOOTH
DRUDE
ELECTRODE
EFF
ELECTRODE
EXTRA-COMMAND
EXTRA-COMPUTE
EXTRA-DUMP
EXTRA-FIX
@ -62,6 +63,7 @@ set(ALL_PACKAGES
ML-QUIP
ML-RANN
ML-SNAP
ML-UF3
MOFFF
MOLECULE
MOLFILE
@ -82,6 +84,7 @@ set(ALL_PACKAGES
REACTION
REAXFF
REPLICA
RHEO
RIGID
SCAFACOS
SHOCK

View File

@ -1,10 +1,10 @@
# preset that will enable clang/clang++ with support for MPI and OpenMP (on Linux boxes)
# prefer flang over gfortran, if available
find_program(CLANG_FORTRAN NAMES flang gfortran f95)
find_program(CLANG_FORTRAN NAMES flang-new flang gfortran f95)
set(ENV{OMPI_FC} ${CLANG_FORTRAN})
get_filename_component(_tmp_fc ${CLANG_FORTRAN} NAME)
if (_tmp_fc STREQUAL "flang")
if ((_tmp_fc STREQUAL "flang") OR (_tmp_fc STREQUAL "flang-new"))
set(FC_STD_VERSION "-std=f2018")
set(BUILD_MPI OFF)
else()

View File

@ -22,8 +22,9 @@ set(WIN_PACKAGES
DPD-REACT
DPD-SMOOTH
DRUDE
ELECTRODE
EFF
ELECTRODE
EXTRA-COMMAND
EXTRA-COMPUTE
EXTRA-DUMP
EXTRA-FIX
@ -32,7 +33,6 @@ set(WIN_PACKAGES
FEP
GPU
GRANULAR
INTEL
INTERLAYER
KSPACE
LEPTON
@ -50,6 +50,7 @@ set(WIN_PACKAGES
ML-POD
ML-RANN
ML-SNAP
ML-UF3
MOFFF
MOLECULE
MOLFILE

View File

@ -26,6 +26,7 @@ set(ALL_PACKAGES
DRUDE
EFF
ELECTRODE
EXTRA-COMMAND
EXTRA-COMPUTE
EXTRA-DUMP
EXTRA-FIX
@ -45,6 +46,7 @@ set(ALL_PACKAGES
ML-IAP
ML-POD
ML-SNAP
ML-UF3
MOFFF
MOLECULE
OPENMP

View File

@ -22,6 +22,7 @@ set(WIN_PACKAGES
DRUDE
EFF
ELECTRODE
EXTRA-COMMAND
EXTRA-COMPUTE
EXTRA-DUMP
EXTRA-FIX
@ -42,6 +43,7 @@ set(WIN_PACKAGES
ML-IAP
ML-POD
ML-SNAP
ML-UF3
MOFFF
MOLECULE
MOLFILE
@ -50,8 +52,8 @@ set(WIN_PACKAGES
ORIENT
PERI
PHONON
POEMS
PLUGIN
POEMS
PTM
QEQ
QTB

View File

@ -1,7 +1,7 @@
.TH LAMMPS "1" "17 April 2024" "2024-04-17"
.TH LAMMPS "1" "29 August 2024" "2024-08-29"
.SH NAME
.B LAMMPS
\- Molecular Dynamics Simulator. Version 17 April 2024
\- Molecular Dynamics Simulator. Version 29 August 2024
.SH SYNOPSIS
.B lmp
@ -226,6 +226,20 @@ arguments of the "dump" command. See the
.B LAMMPS
manual for details on either of the two commands.
.TP
\fB\-r2info <restart file> <keyword> ...\fR or
\fB\-restart2info <restart file> <keyword> ...\fR
Write information about the <restart file> previously written by
.B LAMMPS
to the screen and immediately exit. Following <restart file>
argument, additional keywords for the
.B LAMMPS
"info" command may be added to increase the amount of information
written. By default "system" "group" "fix" "compute" are already
set. See the
.B LAMMPS
manual for details on the "info" command.
.TP
.TP
\fB\-sc <file name>\fR or \fB\-screen <file name>\fR
Specify a file for
.B LAMMPS

View File

@ -1,6 +1,12 @@
Bibliography
************
**(Abascal1)**
Abascal, Sanz, Fernandez, Vega, J Chem Phys, 122, 234511 (2005)
**(Abascal2)**
Abascal, J Chem Phys, 123, 234505 (2005)
**(Ackland)**
Ackland, Jones, Phys Rev B, 73, 054104 (2006).
@ -22,21 +28,24 @@ Bibliography
**(Agnolin and Roux 2007)**
Agnolin, I. & Roux, J-N. (2007). Internal states of model isotropic granular packings. I. Assembling process, geometry, and contact networks. Phys. Rev. E, 76, 061302.
**(Ahrens-Iwers2022)**
Ahrens-Iwers *et al.*, J. Chem. Phys. 157, 084801 (2022).
**(Ahrens-Iwers)**
Ahrens-Iwers and Meissner, J. Chem. Phys. 155, 104104 (2021).
**(Aktulga)**
Aktulga, Fogarty, Pandit, Grama, Parallel Computing, 38, 245-259 (2012).
**(Albe)**
J.\ Nord, K. Albe, P. Erhart, and K. Nordlund, J. Phys.: Condens. Matter, 15, 5649(2003).
**(Albe)**
**(Albe1)**
K.\ Albe, K. Nordlund, J. Nord, and A. Kuronen, Phys. Rev. B, 66, 035205 (2002).
**(Allen)**
Allen and Germano, Mol Phys 104, 3225-3235 (2006).
**(Allen)**
Allen and Tildesley, Computer Simulation of Liquids, Clarendon Press, Oxford, 1987.
**(AllenTildesley)**
Allen and Tildesley, Computer Simulation of Liquids, Oxford University Press (1987)
@ -49,6 +58,9 @@ Bibliography
**(Anderson)**
Anderson, Mukherjee, Critchley, Ziegler, and Lipton "POEMS: Parallelizable Open-source Efficient Multibody Software ", Engineering With Computers (2006).
**(Appshaw)**
Appshaw, Seddon, Hanna, Soft. Matter,18, 1747(2022).
**(Avendano)**
C.\ Avendano, T. Lafitte, A. Galindo, C. S. Adjiman, G. Jackson, E. Muller, J Phys Chem B, 115, 11154 (2011).
@ -58,7 +70,7 @@ Bibliography
**(Babadi)**
Babadi, Ejtehadi, Everaers, J Comp Phys, 219, 770-779 (2006).
**(Babadi)**
**(Babadi2)**
Babadi and Ejtehadi, EPL, 77 (2007) 23002.
**(Baczewski)**
@ -73,23 +85,23 @@ Bibliography
**(Ballenegger)**
Ballenegger, Arnold, Cerda, J Chem Phys, 131, 094107 (2009).
**(Banna)**
Volkov, Banna, Comp. Mater. Sci. 176, 109410 (2020).
**(Barrat)**
Barrat and Rodney, J. Stat. Phys, 144, 679 (2011).
**(Barrett)**
Barrett, Tschopp, El Kadiri, Scripta Mat. 66, p.666 (2012).
**(Barros)**
Barros, Sinkovits, Luijten, J. Chem. Phys, 140, 064903 (2014)
**(Bartok)**
Bartok, Payne, Risi, Csanyi, Phys Rev Lett, 104, 136403 (2010).
**(Bartok2010)**
Bartok, Payne, Risi, Csanyi, Phys Rev Lett, 104, 136403 (2010).
**(Bartok_2010)**
AP Bartok, MC Payne, R Kondor, and G Csanyi, Physical Review Letters 104, 136403 (2010).
**(Bartok2013)**
Bartok, Kondor, Csanyi, Phys Rev B, 87, 184115 (2013).
**(Bartok_PhD)**
A Bartok-Partay, PhD Thesis, University of Cambridge, (2010).
@ -97,36 +109,51 @@ Bibliography
**(Baskes)**
Baskes, Phys Rev B, 46, 2727-2742 (1992).
**(Baskes2)**
Baskes, Phys Rev B, 75, 094113 (2007).
**(Beck)**
Beck, Molecular Physics, 14, 311 (1968).
**(Becton)**
Becton, Averett, Wang, Biomech. Model. Mechanobiology, 18, 425-433(2019).
**(Behler and Parrinello 2007)**
Behler, J.; Parrinello, M. Phys. Rev. Lett. 2007, 98 (14), 146401.
**(Bennet)**
Bennet, J Comput Phys, 22, 245 (1976)
**(Berardi)**
Berardi, Fava, Zannoni, Chem Phys Lett, 297, 8-14 (1998). Berardi, Muccioli, Zannoni, J Chem Phys, 128, 024905 (2008).
**(Berendsen)**
Berendsen, Grigera, Straatsma, J Phys Chem, 91, 6269-6271 (1987).
**(Berendsen)**
Berendsen, Postma, van Gunsteren, DiNola, Haak, J Chem Phys, 81, 3684 (1984).
**(Berendsen2)**
Berendsen, Grigera, Straatsma, J Phys Chem, 91, 6269-6271 (1987).
**(Bessarab)**
Bessarab, Uzdin, Jonsson, Comp Phys Comm, 196, 335-347 (2015).
**(Beutler)**
Beutler, Mark, van Schaik, Gerber, van Gunsteren, Chem Phys Lett, 222, 529 (1994).
**(Bialke)**
J.\ Bialke, T. Speck, and H Loewen, Phys. Rev. Lett. 108, 168301, 2012.
**(Bird)**
G.\ A. Bird, "Molecular Gas Dynamics and the Direct Simulation of Gas Flows" (1994).
**(Bitzek)**
Bitzek, Koskinen, Gahler, Moseler, Gumbsch, Phys Rev Lett, 97, 170201 (2006).
**(Bolintineanu1)**
Bolintineanu, Lechman, Plimpton, Grest, Phys Rev E, 86, 066703 (2012).
**(Bolintineanu2)**
Bolintineanu, Grest, Lechman, Pierce, Plimpton, Schunk, Comp Particle Mechanics, 1, 321-356 (2014).
**(Bomont)**
Bomont, Bretonnet, J. Chem. Phys. 124, 054504 (2006).
**(Bond)**
Bond and Leimkuhler, SIAM J Sci Comput, 30, p 134 (2007).
@ -134,7 +161,7 @@ Bibliography
Boone, Babaei, Wilmer, J Chem Theory Comput, 15, 5579--5587 (2019).
**(BoreschKarplus)**
Boresch and Karplus, J Phys Chem A, 103, 103 (1999)
Boresch and Karplus, J Phys Chem A, 103, 103 (1999).
**(Botu1)**
V.\ Botu and R. Ramprasad, Int. J. Quant. Chem., 115(16), 1074 (2015).
@ -169,8 +196,11 @@ Bibliography
**(Buck)**
Buck, Bouguet-Bonnet, Pastor, MacKerell Jr., Biophys J, 90, L36 (2006).
**(Bulacu)**
Bulacu, Goga, Zhao, Rossi, Monticelli, Periole, Tieleman, Marrink, J Chem Theory Comput, 9, 3282-3292
**(Bussi)**
G.\ Bussi, M. Parrinello, Phs. Rev. E 75, 056707 (2007)
G. Bussi, T. Zykova-Timan, M. Parrinello, J Chem Phys, 130, 074101 (2009).
**(Bussi1)**
Bussi, Donadio and Parrinello, J. Chem. Phys. 126, 014101(2007)
@ -178,20 +208,20 @@ Bibliography
**(Bussi2)**
Bussi and Parrinello, Phys. Rev. E 75, 056707 (2007)
**(COMB)**
**(COMB_1)**
J.\ Yu, S. B. Sinnott, S. R. Phillpot, Phys Rev B, 75, 085311 (2007),
**(COMB_2)**
T.-R. Shan, B. D. Devine, T. W. Kemper, S. B. Sinnott, and S. R. Phillpot, Phys. Rev. B 81, 125328 (2010)
**(COMB3)**
T.\ Liang, T.-R. Shan, Y.-T. Cheng, B. D. Devine, M. Noordhoek, Y. Li, Z. Lu, S. R. Phillpot, and S. B. Sinnott, Mat. Sci. & Eng: R 74, 255-279 (2013).
**(COMB_1)**
J.\ Yu, S. B. Sinnott, S. R. Phillpot, Phys Rev B, 75, 085311 (2007),
**(Calhoun)**
A.\ Calhoun, M. Pavese, G. Voth, Chem Phys Letters, 262, 415 (1996).
**(Campana)**
C.\ Campana and M. H. Muser, *Practical Green's function approach to the simulation of elastic semi-infinite solids*, `Phys. Rev. B [74], 075420 (2006) <https://doi.org/10.1103/PhysRevB.74.075420>`_
C.\ Campana and M. H. Muser, Phys. Rev. B [74], 075420 (2006).
**(Cao1)**
J.\ Cao and B. Berne, J Chem Phys, 99, 2902 (1993).
@ -215,6 +245,9 @@ Bibliography
Cerda, Ballenegger, Lenz, Holm, J Chem Phys 129, 234104 (2008)
**(Ceriotti)**
M. Ceriotti, M. Parrinello, T. Markland, D. Manolopoulos, J. Chem. Phys. 133, 124104 (2010).
**(Ceriotti1)**
Ceriotti, Bussi and Parrinello, J Chem Theory Comput 6, 1170-80 (2010)
**(Ceriotti2)**
@ -232,6 +265,18 @@ Bibliography
**(Clarke)**
Clarke and Smith, J Chem Phys, 84, 2290 (1986).
**(Clavier)**
G. Clavier, N. Desbiens, E. Bourasseau, V. Lachet, N. Brusselle-Dupend and B. Rousseau, Mol Sim, 43, 1413 (2017).
**(Clemmer)**
Clemmer and Robbins, Phys. Rev. Lett. (2022).
**(Clemmer1)**
Clemmer, Monti, Lechman, Soft Matter, 20, 1702 (2024).
**(Clemmer2)**
Clemmer, Pierce, O'Connor, Nevins, Jones, Lechman, Tencer, Appl. Math. Model., 130, 310-326 (2024).
**(Coleman)**
Coleman, Spearot, Capolungo, MSMSE, 21, 055020 (2013).
@ -244,8 +289,17 @@ Bibliography
**(Cornell)**
Cornell, Cieplak, Bayly, Gould, Merz, Ferguson, Spellmeyer, Fox, Caldwell, Kollman, JACS 117, 5179-5197 (1995).
**(Cundall, 1987)**
Cundall, P. A. Distinct Element Models of Rock and Soil
**(Curk1)**
T. Curk, J. Yuan, and E. Luijten, JCP 156 (2022).
**(Curk2)**
T. Curk and E. Luijten, PRL 126 (2021)
**(Cusentino)**
Cusentino, Wood, and Thompson, J Phys Chem A, xxx, xxxxx, (2020)
Cusentino, Wood, Thompson, J Phys Chem A, 124, 5456, (2020)
**(Daivis and Todd)**
Daivis and Todd, J Chem Phys, 124, 194103 (2006).
@ -268,6 +322,15 @@ Bibliography
**(Daw2)**
M.\ S. Daw, and M. I. Baskes, Phys. Rev. B, 29, 6443 (1984).
**(de Buyl)**
de Buyl, Colberg and Hofling, Comp. Phys. Comm. 185(6), 1546-1553 (2014) -
**(Deissenbeck)**
Deissenbeck *et al.*, Phys. Rev. Letters 126, 136803 (2021).
**(de Koning)**
de Koning and Antonelli, Phys Rev E, 53, 465 (1996).
**(DeVane)**
Shinoda, DeVane, Klein, Soft Matter, 4, 2453-2462 (2008).
@ -277,12 +340,24 @@ Bibliography
**(Destree)**
M.\ Destree, F. Laupretre, A. Lyulin, and J.-P. Ryckaert, J Chem Phys, 112, 9632 (2000).
**(Dickel)**
Dickel, Francis, and Barrett, Computational Materials Science 171 (2020): 109157.
**(Dietz)**
Dietz and Hoy, J. Chem Phys, 156, 014103 (2022).
**(Dobson)**
Dobson, J Chem Phys, 141, 184103 (2014).
**(Drautz)**
Drautz, Phys Rev B, 99, 014104 (2019).
**(Duffy)**
D M Duffy and A M Rutherford, J. Phys.: Condens. Matter, 19, 016207-016218 (2007).
**(Dufils)**
Dufils *et al.*, Phys. Rev. Letters 123, 195501 (2019).
**(Dullweber)**
Dullweber, Leimkuhler and McLachlan, J Chem Phys, 107, 5840 (1997).
@ -295,6 +370,9 @@ Bibliography
**(Dunweg)**
Dunweg and Paul, Int J of Modern Physics C, 2, 817-27 (1991).
**(EcheverriRestrepo)**
Echeverri Restrepo, Andric, Comput Mater Sci, 218, 111978 (2023).
**(EDIP)**
J F Justo et al, Phys Rev B 58, 2539 (1998).
@ -304,12 +382,21 @@ Bibliography
**(Elliott)**
Elliott, Tadmor and Bernstein, `https://openkim.org/kim-api <https://openkim.org/kim-api>`_ (2011) doi: `https://doi.org/10.25950/FF8F563A <https://doi.org/10.25950/FF8F563A>`_
**(Ellis)**
Ellis, Fiedler, Popoola, Modine, Stephens, Thompson, Cangi, Rajamanickam, Phys Rev B, 104, 035120, (2021)
**(Emmrich)**
Emmrich, Weckner, Commun. Math. Sci., 5, 851-864 (2007),
**(Elstner)**
M.\ Elstner, D. Poresag, G. Jungnickel, J. Elsner, M. Haugk, T. Frauenheim, S. Suhai, and G. Seifert, Phys. Rev. B, 58, 7260 (1998).
**(Erdmann)**
U.\ Erdmann , W. Ebeling, L. Schimansky-Geier, and F. Schweitzer, Eur. Phys. J. B 15, 105-113, 2000.
**(Eshelby)**
J.D. Eshelby, Philos. Trans. Royal Soc. London A, Math. Phys. Sci., Vol. 244, No. 877 (1951) pp. 87-112; J. Elasticity, Vol. 5, Nos. 3-4 (1975) pp. 321-335]
**(Espanol and Revenga)**
Espanol, Revenga, Physical Review E, 67, 026705 (2003).
@ -328,9 +415,18 @@ Bibliography
**(Faken)**
Faken, Jonsson, Comput Mater Sci, 2, 279 (1994).
**(Falk)**
Falk and Langer PRE, 57, 7192 (1998).
**(Fath)**
Fath, Hochbruck, Singh, J Comp Phys, 333, 180-198 (2017).
**(Feng1)**
Z. Feng, ..., and W. Ouyang, J. Phys. Chem. C. 127(18), 8704-8713 (2023).
**(Feng2)**
Z. Feng, ..., and W. Ouyang, Langmuir 39(50), 18198-18207 (2023).
**(Fennell)**
C.\ J. Fennell, J. D. Gezelter, J Chem Phys, 124, 234104 (2006).
@ -367,18 +463,36 @@ Bibliography
**(Frenkel)**
Frenkel and Smit, Understanding Molecular Simulation, Academic Press, London, 2002.
**(GLE4MD)**
`https://gle4md.org/ <https://gle4md.org/>`_
**(Fu)**
Fu, Peng, Yuan, Kfoury, Young, Comput. Phys. Commun, 210, 193-203(2017).
**(Gao)**
Gao and Weber, Nuclear Instruments and Methods in Physics Research B 191 (2012) 504.
**(Gingrich)**
Gingrich, `MSc thesis` <https://gingrich.chem.northwestern.edu/papers/ThesiswCorrections.pdf>` (2010).
**(Gissinger2017)**
Gissinger, Jensen and Wise, Polymer, 128, 211-217 (2017).
**(Gissinger2020)**
Gissinger, Jensen and Wise, Macromolecules, 53, 22, 9953-9961 (2020).
**(Gissinger)**
Gissinger, Jensen and Wise, Polymer, 128, 211 (2017).
Jacob R. Gissinger, Scott R. Zavada, Joseph G. Smith, Josh Kemppainen, Ivan Gallegos, Gregory M. Odegard, Emilie J. Siochi, and Kristopher E. Wise, Carbon, 202, 336-347 (2023).
**(Gissinger2024)**
J. R. Gissinger, I. Nikiforov, Y. Afshar, B. Waters, M. Choi, D. S. Karls, A. Stukowski, W. Im, H. Heinz, A. Kohlmeyer, and E. B. Tadmor, J Phys Chem B, 128, 3282-3297 (2024).
**(Gloor)**
Gloor, J Chem Phys, 123, 134703 (2005)
**(Glosli)**
Glosli, unpublished, 2005. Streitz, Glosli, Patel, Chan, Yates, de Supinski, Sexton and Gunnels, Journal of Physics: Conference Series, 46, 254 (2006).
**(Goff)**
Goff, Zhang, Negre, Rohskopf, Niklasson, Journal of Chemical Theory and Computation 19, no. 13 (2023).
**(Goldman1)**
Goldman, Reed and Fried, J. Chem. Phys. 131, 204103 (2009)
@ -412,6 +526,9 @@ Bibliography
**(Guo)**
Guo and Thirumalai, Journal of Molecular Biology, 263, 323-43 (1996).
**(Gupta)**
Gupta ,Phys Rev. B, 23, 6265-6270 (1981).
**(Hardy)**
David Hardy thesis: Multilevel Summation for the Fast Evaluation of Forces for the Simulation of Biomolecules, University of Illinois at Urbana-Champaign, (2006).
@ -433,6 +550,9 @@ Bibliography
**(Henrich)**
O.\ Henrich, Y. A. Gutierrez-Fosado, T. Curk, T. E. Ouldridge, Eur. Phys. J. E 41, 57 (2018).
**(Herman)**
M. F. Herman, E. J. Bruskin, B. J. Berne, J Chem Phys, 76, 5150 (1982).
**(Hess)**
Hess, B. The Journal of Chemical Physics 2002, 116 (1), 209-217.
@ -454,24 +574,42 @@ Bibliography
**(Hoover)**
Hoover, Phys Rev A, 31, 1695 (1985).
**(Huang)**
Huang, Zhang, Yuan, Gao, Zhang, Nano Lett. 13, 4546(2013).
**(Huang2014)**
X. Huang, "Exploring critical-state behavior using DEM", Doctoral dissertation, Imperial College. (2014). https://doi.org/10.25560/25316
**(Hu)**
Hu, and Adams J. Comp. Physics, 213, 844-861 (2006).
**(Hu)**
Hu, J. Chem. Theory Comput. 10, 5254 (2014).
**(Hummer)**
Hummer, Gronbech-Jensen, Neumann, J Chem Phys, 109, 2791 (1998)
**(Hunt)**
Hunt, Mol Simul, 42, 347 (2016).
**(Ikeshoji)**
Ikeshoji and Hafskjold, Molecular Physics, 81, 251-261 (1994).
**(Ikeshoji2)**
Ikeshoji, Hafskjold, Furuholt, Mol Sim, 29, 101-109, (2003).
**(Ilie)**
Ilie, Briels, den Otter, Journal of Chemical Physics, 142, 114103 (2015).
**(In 't Veld)**
In 't Veld, Ismail, Grest, J Chem Phys (accepted) (2007).
**(IPI)**
`https://ipi-code.org/ <https://ipi-code.org/>`
**(IPI-CPC)**
Ceriotti, More and Manolopoulos, Comp Phys Comm, 185, 1019-1026 (2014).
**(Ikeshoji)**
Ikeshoji and Hafskjold, Molecular Physics, 81, 251-261 (1994).
**(In 't Veld)**
In 't Veld, Ismail, Grest, J Chem Phys (accepted) (2007).
**(Isele-Holder)**
Isele-Holder, Mitchell, Ismail, J Chem Phys, 137, 174107 (2012).
@ -490,6 +628,9 @@ Bibliography
**(Izvekov)**
Izvekov, Voth, J Chem Phys 123, 134105 (2005).
**(Jadhao)**
Jadhao, Solis, Olvera de la Cruz, J Chem Phys, 138, 054119 (2013)
**(Janssens)**
Janssens, Olmsted, Holm, Foiles, Plimpton, Derlet, Nature Materials, 5, 124-127 (2006).
@ -502,6 +643,15 @@ Bibliography
**(Jiang)**
Jiang, Hardy, Phillips, MacKerell, Schulten, and Roux, J Phys Chem Lett, 2, 87-92 (2011).
**(Jiang1)**
Jiang, Hardy, Phillips, MacKerell, Schulten, and Roux, J Phys Chem Lett, 2, 87-92 (2011).
**(Jiang2)**
J.-W. Jiang, Nanotechnology 26, 315706 (2015).
**(Jiang3)**
J.-W. Jiang, Acta Mech. Solida. Sin 32, 17 (2019).
**(Johnson et al, 1971)**
Johnson, K. L., Kendall, K., & Roberts, A. D. (1971). Surface energy and the contact of elastic solids. Proc. R. Soc. Lond. A, 324(1558), 301-313.
@ -571,21 +721,24 @@ Bibliography
**(Lamoureux)**
Lamoureux and Roux, J Chem Phys, 119, 3025-3039 (2003).
**(Larentzos)**
J.P. Larentzos, J.K. Brennan, J.D. Moore, and W.D. Mattson, "LAMMPS Implementation of Constant Energy Dissipative Particle Dynamics (DPD-E)", ARL-TR-6863, U.S. Army Research
**(Landsgesell)**
J. Landsgesell, P. Hebbeker, O. Rud, R. Lunkad, P. Kosovan, and C. Holm, Macromolecules 53, 3007-3020 (2020).
**(Larentzos1)**
J.P. Larentzos, J.K. Brennan, J.D. Moore, M. Lisal and W.D. Mattson, "Parallel Implementation of Isothermal and Isoenergetic Dissipative Particle Dynamics Using Shardlow-Like Splitting
J.P. Larentzos, J.K. Brennan, J.D. Moore, M. Lisal and W.D. Mattson, Comput. Phys. Commun., 185, 1987-1998 (2014).
**(Larentzos2)**
J.P. Larentzos, J.K. Brennan, J.D. Moore, and W.D. Mattson, "LAMMPS Implementation of Constant Energy Dissipative Particle Dynamics (DPD-E)", ARL-TR-6863, U.S. Army Research
J.P. Larentzos, J.K. Brennan, J.D. Moore, and W.D. Mattson, ARL-TR-6863, U.S. Army Research Laboratory, Aberdeen Proving Ground, MD (2014).
**(Larsen)**
Larsen, Schmidt, Schiotz, Modelling Simul Mater Sci Eng, 24, 055007 (2016).
**(Lebedeva et al.)**
**(Lebedeva1)**
I.\ V. Lebedeva, A. A. Knizhnik, A. M. Popov, Y. E. Lozovik, B. V. Potapkin, Phys. Rev. B, 84, 245437 (2011)
**(Lebedeva2)**
I. V. Lebedeva, A. A. Knizhnik, A. M. Popov, Y. E. Lozovik, B. V. Potapkin, Physica E: 44, 949-954 (2012)
**(Lechman)**
Lechman, et al, in preparation (2010).
@ -595,6 +748,9 @@ Bibliography
**(Lee2)**
Lee, Baskes, Kim, Cho. Phys. Rev. B, 64, 184102 (2001).
**(Lee2020)**
C.W. Lee, et al. (2020) Physical Review B, 102(2), 024107.
**(Lenart)**
Lenart , Jusufi, and Panagiotopoulos, J Chem Phys, 126, 044509 (2007).
@ -619,8 +775,11 @@ Bibliography
**(Li2015_JCP)**
Li, Yazdani, Tartakovsky, Karniadakis, J Chem Phys, 143: 014101 (2015). DOI:10.1063/1.4923254.
**(Liang)**
Liang, Phillpot, Sinnott Phys. Rev. B79 245110, (2009), Erratum: Phys. Rev. B85 199903(E), (2012)
**(Lisal)**
M.\ Lisal, J.K. Brennan, J. Bonet Avalos, "Dissipative particle dynamics at isothermal, isobaric, isoenergetic, and isoenthalpic conditions using Shardlow-like splitting algorithms.",
M.\ Lisal, J.K. Brennan, J. Bonet Avalos, J. Chem. Phys., 135, 204105 (2011).
**(Liu1)**
L.\ Liu, Y. Liu, S. V. Zybin, H. Sun and W. A. Goddard, Journal of Physical Chemistry A, 115, 11016-11022 (2011).
@ -637,6 +796,15 @@ Bibliography
**(Luding, 2008)**
Luding, S. (2008). Cohesive, frictional powders: contact models for tension. Granular matter, 10(4), 235.
**(Lysogorskiy)**
Lysogorskiy, van der Oord, Bochkarev, Menon, Rinaldi, Hammerschmidt, Mrovec, Thompson, Csanyi, Ortner, Drautz, npj Comp Mat, 7, 97 (2021).
**(Lysogorskiy21)**
Lysogorskiy, van der Oord, Bochkarev, Menon, Rinaldi, Hammerschmidt, Mrovec, Thompson, Csanyi, Ortner, Drautz, npj Comp Mat, 7, 97 (2021).
**(Lysogorskiy23)**
Lysogorskiy, Bochkarev, Mrovec, Drautz, Phys Rev Mater, 7, 043801 (2023) / arXiv:2212.08716 (2022).
**(Maaravi)**
T.\ Maaravi et al, J. Phys. Chem. C 121, 22826-22835 (2017).
@ -655,12 +823,18 @@ Bibliography
**(Maginn)**
Kelkar, Rafferty, Maginn, Siepmann, Fluid Phase Equilibria, 260, 218-231 (2007).
**(Mahoney)**
Mahoney, Jorgensen, J Chem Phys 112, 8910 (2000)
**(Malolepsza)**
Malolepsza, Secor, Keyes, J Phys Chem B 119 (42), 13379-13384 (2015).
**(Mandadapu)**
Mandadapu, KK; Templeton, JA; Lee, JW, "Polarization as a field variable from molecular dynamics simulations." Journal of Chemical Physics (2013), 139:054115. Please refer to the standard finite element (FE) texts, e.g. T.J.R Hughes " The finite element method ", Dover 2003, for the basics of FE simulation.
**(Mandelli_1)**
D. Mandelli, W. Ouyang, M. Urbakh, and O. Hod, ACS Nano 13(7), 7603-7609 (2019).
**(Maras)**
Maras, Trushin, Stukowski, Ala-Nissila, Jonsson, Comp Phys Comm, 205, 13-21 (2016).
@ -676,6 +850,9 @@ Bibliography
**(Martyna1994)**
Martyna, Tobias and Klein, J Chem Phys, 101, 4177 (1994).
**(Martyna2)**
G. Martyna, A. Hughes, M. Tuckerman, J. Chem. Phys. 110, 3275 (1999).
**(Mason)**
J.\ K. Mason, Acta Cryst A65, 259 (2009).
@ -715,6 +892,9 @@ Bibliography
**(Mie)**
G.\ Mie, Ann Phys, 316, 657 (1903).
**(Milano)**
G. Milano, S. Goudeau, F. Mueller-Plathe, J. Polym. Sci. B Polym. Phys. 43, 871 (2005).
**(Miller1)**
T.\ F. Miller III, M. Eleftheriou, P. Pattnaik, A. Ndirango, G. J. Martyna, J. Chem. Phys., 116, 8649-8659 (2002).
@ -745,12 +925,18 @@ Bibliography
**(Mitchell2011a)**
Mitchell. A Nonlocal, Ordinary, State-Based Plasticity Model for Peridynamics. Sandia National Lab Report, 3166:1-34 (2011).
**(Miyazaki)**
Miyazaki, Okazaki, Shinoda, J Chem Theory Comput, 16, 782-793 (2020).
**(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).
**(Monaghan)**
Monaghan and Gingold, Journal of Computational Physics, 52, 374-389 (1983).
**(Monti)**
Monti, Clemmer, Srivastava, Silbert, Grest, and Lechman, Phys. Rev. E, (2022).
**(Moore)**
Moore, J Chem Phys, 144, 104501 (2016).
@ -770,7 +956,7 @@ Bibliography
Morris, Fox, Zhu, J Comp Physics, 136, 214-226 (1997).
**(Moustafa)**
Sabry G. Moustafa, Andrew J. Schultz, and David A. Kofke, *Very fast averaging of thermal properties of crystals by molecular simulation*, `Phys. Rev. E [92], 043303 (2015) <https://link.aps.org/doi/10.1103/PhysRevE.92.043303>`_
Sabry G. Moustafa, Andrew J. Schultz, and David A. Kofke, `Phys. Rev. E [92], 043303 (2015) <https://link.aps.org/doi/10.1103/PhysRevE.92.043303>`_
**(Muller-Plathe1)**
Muller-Plathe, J Chem Phys, 106, 6082 (1997).
@ -790,9 +976,6 @@ Bibliography
**(Neelov)**
Neelov, Holm, J Chem Phys 132, 234103 (2010)
**(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).
**(Nelson)**
Nelson, Halperin, Phys Rev B, 19, 2457 (1979).
@ -802,12 +985,24 @@ Bibliography
**(Neyts)**
E.\ C. Neyts and A. Bogaerts, Theor. Chem. Acc. 132, 1320 (2013).
**(Nguyen2023)**
Nguyen, Physical Review B, 107(14), 144103, (2023).
**(Nguyen2024)**
Nguyen, Journal of Computational Physics, 113102, (2024).
**(Nguyen and Rohskopf)**
Nguyen and Rohskopf, Journal of Computational Physics, 480, 112030, (2023).
**(Nguyen and Sema)**
Nguyen and Sema, https://arxiv.org/abs/2405.00306, (2024).
**(NguyenTD)**
Nguyen, Li, Bagchi, Solis, Olvera de la Cruz, Comput Phys Commun 241, 80-19 (2019)
**(Nicholson and Rutledge)**
Nicholson and Rutledge, J Chem Phys, 145, 244903 (2016).
**(Nicklas)**
The spline-based MEAM+SW format was first devised and used to develop potentials for bcc transition metals by Jeremy Nicklas, Michael Fellinger,
**(Niklasson2002)**
A.\ M. N. Niklasson, Phys. Rev. B, 66, 155115 (2002).
@ -820,6 +1015,9 @@ Bibliography
**(Niklasson2017)**
A.\ M. N. Niklasson, J. Chem. Phys., 147, 054103 (2017).
**(Nitol)**
Nitol, Dickel, and Barrett, Computational Materials Science 188 (2021): 110207.
**(Noid)**
Noid, Chu, Ayton, Krishna, Izvekov, Voth, Das, Andersen, J Chem Phys 128, 134105 (2008).
@ -841,6 +1039,9 @@ Bibliography
**(O'Connor)**
O'Connor et al., J. Chem. Phys. 142, 024903 (2015).
**(O'Hearn)**
O'Hearn, Alperen, Aktulga, SIAM J. Sci. Comput., 42(1), C1--C22 (2020).
**(Okabe)**
T.\ Okabe, M. Kawata, Y. Okamoto, M. Masuhiro, Chem. Phys. Lett., 335, 435-439 (2001).
@ -850,6 +1051,8 @@ Bibliography
**(Omelyan)**
Omelyan, Mryglod, and Folk. Phys. Rev. Lett. 86(5), 898. (2001).
**(OPLS-AA96)** Jorgensen, Maxwell, Tirado-Rives, J Am Chem Soc, 118(45), 11225-11236 (1996).
**(Oppelstrup)**
Oppelstrup, unpublished, 2015. Oppelstrup and Moriarty, to be published.
@ -871,14 +1074,17 @@ Bibliography
**(Ouyang2)**
W.\ Ouyang et al., J. Chem. Theory Comput. 16(1), 666-676 (2020).
**(PASS)**
PASS webpage: https://www.sdu.dk/en/DPASS
**(Ouyang_1)**
W. Ouyang et al., J. Chem. Theory Comput. 16(1), 666-676 (2020).
**(PLUMED)**
G.A. Tribello, M. Bonomi, D. Branduardi, C. Camilloni and G. Bussi, Comp. Phys. Comm 185, 604 (2014)
**(Ouyang6)**
W. Ouyang, O. Hod, and R. Guerra, J. Chem. Theory Comput. 17, 7215 (2021).
**(Pavlov)**
D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Journal of High Performance Computing Applications, 38, 34-49 (2024).
**(Ouyang7)**
W. Ouyang, et al., J. Chem. Theory Comput. 17, 7237 (2021).
**(Palkar)**
Palkar V, Kuksenok O, J. Phys. Chem. B, 126 (1), 336-346, 2022
**(Paquay)**
Paquay and Kusters, Biophys. J., 110, 6, (2016). preprint available at `arXiv:1411.3019 <https://arxiv.org/abs/1411.3019/>`_.
@ -889,21 +1095,33 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Parks)**
Parks, Lehoucq, Plimpton, Silling, Comp Phys Comm, 179(11), 777-783 (2008).
**(Parrinello1981)**
**(Parrinello)**
Parrinello and Rahman, J Appl Phys, 52, 7182 (1981).
**(PASS)**
PASS webpage: https://www.sdu.dk/en/DPASS
**(Paula Leite2016)**
Paula Leite , Freitas, Azevedo, and de Koning, J Chem Phys, 126, 044509 (2016).
**(Paula Leite2017)**
Paula Leite, Santos-Florez, and de Koning, Phys Rev E, 96, 32115 (2017).
**(Pavlov1)**
D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Journal of High Performance Computing Applications, 38, 34-49 (2024).
**(Pavlov2)**
Pavlov, Galigerov, Kolotinskii, Nikolskiy, Stegailov, "GPU-based Molecular Dynamics of Fluid Flows: Reaching for Turbulence", Int. J. High Perf. Comp. Appl., (2024)
**(Pearlman)**
Pearlman, J Chem Phys, 98, 1487 (1994)
**(Pedersen)**
Pedersen, J. Chem. Phys., 139, 104102 (2013).
**(Pedone)**
A. Pedone, G. Malavasi, M. C. Menziani, A. N. Cormack, and U. Segre, J. Phys. Chem. B, 110, 11780 (2006)
**(Peng)**
Peng, Ren, Dudarev, Whelan, Acta Crystallogr. A, 52, 257-76 (1996).
@ -925,6 +1143,9 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Pettifor_3)**
D.G. Pettifor and I.I. Oleinik, Phys. Rev. B, 65, 172103 (2002).
**(PFC)**
PFC Particle Flow Code 6.0 Documentation. Itasca Consulting Group.
**(Phillips)**
C.\ L. Phillips, J. A. Anderson, S. C. Glotzer, Comput Phys Comm, 230, 7191-7201 (2011).
@ -934,9 +1155,21 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Pisarev)**
V V Pisarev and S V Starikov, J. Phys.: Condens. Matter, 26, 475401 (2014).
**(Plimpton)**
Plimpton and Knight, JPDC, 147, 184-195 (2021).
**(PLUMED)**
G.A. Tribello, M. Bonomi, D. Branduardi, C. Camilloni and G. Bussi, Comp. Phys. Comm 185, 604 (2014)
**(Pollock)**
Pollock and Glosli, Comp Phys Comm, 95, 93 (1996).
**(Ponder)**
Ponder, Wu, Ren, Pande, Chodera, Schnieders, Haque, Mobley, Lambrecht, DiStasio Jr, M. Head-Gordon, Clark, Johnson, T. Head-Gordon, J Phys Chem B, 114, 2549-2564 (2010).
**(Popov1)**
A.M. Popov, I. V. Lebedeva, A. A. Knizhnik, Y. E. Lozovik and B. V. Potapkin, Chem. Phys. Lett. 536, 82-86 (2012).
**(Price1)**
Price and Brooks, J Chem Phys, 121, 10096 (2004).
@ -976,6 +1209,12 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Rick)**
S.\ W. Rick, S. J. Stuart, B. J. Berne, J Chem Phys 101, 16141 (1994).
**(Rick2)**
S. W. Rick, S. J. Stuart, B. J. Berne, J Chem Phys 101, 6141
**(Roberts)**
R. Roberts (2019) "Evenly Distributing Points in a Triangle." Extreme Learning. `<http://extremelearning.com.au/evenly-distributing-points-in-a-triangle/>`_
**(Rohart)**
Rohart and Thiaville, Physical Review B, 88(18), 184422. (2013).
@ -1012,9 +1251,18 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Sadigh)**
B Sadigh, P Erhart, A Stukowski, A Caro, E Martinez, and L Zepeda-Ruiz, Phys. Rev. B, 85, 184203 (2012).
**(Sadigh1)**
B. Sadigh, P. Erhart, A. Stukowski, A. Caro, E. Martinez, and L. Zepeda-Ruiz, Phys. Rev. B **85**, 184203 (2012)
**(Sadigh2)**
B. Sadigh and P. Erhart, Phys. Rev. B **86**, 134204 (2012)
**(Safran)**
Safran, Statistical Thermodynamics of Surfaces, Interfaces, And Membranes, Westview Press, ISBN: 978-0813340791 (2003).
**(Salanne)**
Salanne, Rotenberg, Jahn, Vuilleumier, Simon, Christian and Madden, Theor Chem Acc, 131, 1143 (2012).
**(Salerno)**
Salerno, Bernstein, J Chem Theory Comput, --, ---- (2018).
@ -1024,9 +1272,18 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Sanyal2)**
Sanyal and Shell, Journal of Physical Chemistry B, 122 (21), 5678-5693.
**(Scalfi)**
Scalfi *et al.*, J. Chem. Phys., 153, 174704 (2020).
**(Schelling)**
Patrick K. Schelling, Comp. Mat. Science, 44, 274 (2008).
**(Scherer1)**
C. Scherer and D. Andrienko, Phys. Chem. Chem. Phys. 20, 22387-22394 (2018).
**(Scherer2)**
C. Scherer, R. Scheid, D. Andrienko, and T. Bereau, J. Chem. Theor. Comp. 16, 3194-3204 (2020).
**(Schlitter1)**
Schlitter, Swegat, Mulders, "Distance-type reaction coordinates for modelling activated processes", J Molecular Modeling, 7, 171-177 (2001).
@ -1045,21 +1302,36 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Schroeder)**
Schroeder and Steinhauser, J Chem Phys, 133, 154511 (2010).
**(Seleson 2010)**
Seleson, Parks, Int J Mult Comp Eng 9(6), pp. 689-706, 2011.
**(Semaev)**
Semaev, Cryptography and Lattices, 181 (2001).
**(Seo)**
Seo, Shinoda, J Chem Theory Comput, 15, 762-774 (2019).
**(Sheppard)**
Sheppard, Terrell, Henkelman, J Chem Phys, 128, 134106 (2008). See ref 1 in this paper for original reference to Qmin in Jonsson, Mills, Jacobsen.
**(Shi)**
Shi, Xia, Zhang, Best, Wu, Ponder, Ren, J Chem Theory Comp, 9, 4046, 2013.
**(Shinoda)**
Shinoda, DeVane, Klein, Mol Sim, 33, 27 (2007).
**(Shinoda)**
Shinoda, Shiga, and Mikami, Phys Rev B, 69, 134103 (2004).
**(Shire)**
Shire, Hanley and Stratford, Comp. Part. Mech., (2020).
**(Sides)**
Sides, Grest, Stevens, Plimpton, J Polymer Science B, 42, 199-208 (2004).
**(Siepmann)**
Siepmann and Sprik, J. Chem. Phys. 102, 511 (1995).
**(Silbert)**
Silbert, Ertas, Grest, Halsey, Levine, Plimpton, Phys Rev E, 64, p 051302 (2001).
@ -1069,12 +1341,21 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Silling 2000)**
Silling, J Mech Phys Solids, 48, 175-209 (2000).
**(Silling 2005)**
Silling Askari, Computer and Structures, 83, 1526-1535 (2005).
**(Silling 2007)**
Silling, Epton, Weckner, Xu, Askari, J Elasticity, 88, 151-184 (2007).
**(Singh)**
Singh and Warner, Acta Mater, 58, 5797-5805 (2010),
**(Singraber, Behler and Dellago 2019)**
Singraber, A.; Behler, J.; Dellago, C. J., Chem. Theory Comput. 2019, 15 (3), 1827-1840
**(Singraber et al 2019)**
Singraber, A.; Morawietz, T.; Behler, J.; Dellago, C., J. Chem. Theory Comput. 2019, 15 (5), 3075-3092.
**(Sirk1)**
Sirk TW, Sliozberg YR, Brennan JK, Lisal M, Andzelm JW, J Chem Phys, 136 (13) 134903, 2012.
@ -1087,6 +1368,9 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Snodin)**
B.E. Snodin, F. Randisi, M. Mosayebi, et al., J. Chem. Phys. 142, 234901 (2015).
**(Son)**
Son, McDaniel, Cui and Yethiraj, J Phys Chem Lett, 10, 7523 (2019).
**(Srivastava)**
Zhigilei, Wei, Srivastava, Phys. Rev. B 71, 165417 (2005).
@ -1096,6 +1380,12 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Steinhardt)**
P.\ Steinhardt, D. Nelson, and M. Ronchetti, Phys. Rev. B 28, 784 (1983).
**(Steward)**
Stewart, Spearot, Modelling Simul. Mater. Sci. Eng. 21, 045003, (2013).
**(Stewart2018)**
J.A. Stewart, et al. (2018) Journal of Applied Physics, 123(16), 165902.
**(Stiles)**
Stiles , Hubbard, and Kayser, J Chem Phys, 77, 6189 (1982).
@ -1153,12 +1443,21 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Tainter 2015)**
Tainter, Shi, and Skinner, 11, 2268 (2015)
**(Tang and Toennies)**
J Chem Phys, 80, 3726 (1984).
**(Tee)**
Tee and Searles, J. Chem. Phys. 156, 184101 (2022).
**(Templeton2010)**
Templeton, JA; Jones, RE; Wagner, GJ, "Application of a field-based method to spatially varying thermal transport problems in molecular dynamics." Modelling and Simulation in Materials Science and Engineering (2010), 18:085007.
**(Templeton2011)**
Templeton, JA; Jones, RE; Lee, JW; Zimmerman, JA; Wong, BM, "A long-range electric field solver for molecular dynamics based on atomistic-to-continuum modeling." Journal of Chemical Theory and Computation (2011), 7:1736.
**(tenWolde)**
P.\ R. ten Wolde, M. J. Ruiz-Montero, D. Frenkel, J. Chem. Phys. 104, 9932 (1996).
**(Tersoff_1)**
J.\ Tersoff, Phys Rev B, 37, 6991 (1988).
@ -1201,6 +1500,9 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Tranchida)**
Tranchida, Plimpton, Thibaudeau and Thompson, Journal of Computational Physics, 372, 406-425, (2018).
**(Tribello)**
G.A. Tribello, M. Bonomi, D. Branduardi, C. Camilloni and G. Bussi, Comp. Phys. Comm 185, 604 (2014)
**(Tsuji et al, 1992)**
Tsuji, Y., Tanaka, T., & Ishida, T. (1992). Lagrangian numerical simulation of plug flow of cohesionless particles in a horizontal pipe. Powder technology, 71(3),
@ -1219,6 +1521,9 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Tuckerman4)**
Tuckerman, Mundy, Balasubramanian, Klein, J Chem Phys, 106, 5615 (1997).
**(Tyagi)**
Tyagi, Suzen, Sega, Barbosa, Kantorovich, Holm, J Chem Phys, 132, 154112 (2010)
**(Ulomek)**
Ulomek, Brien, Foiles, Mohles, Modelling Simul. Mater. Sci. Eng. 23 (2015) 025007
@ -1228,6 +1533,15 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Valone)**
Valone, Baskes, Martin, Phys. Rev. B, 73, 214209 (2006).
**(vanWijk)**
M. M. van Wijk, A. Schuring, M. I. Katsnelson, and A. Fasolino, Physical Review Letters, 113, 135504 (2014)
**(Van Workum)**
K. Van Workum et al., J. Chem. Phys. 125 144506 (2006)
**(Vargas and McCarthy 2001)**
Vargas, W.L. and McCarthy, J.J. (2001).
**(Varshalovich)**
Varshalovich, Moskalev, Khersonskii, Quantum Theory of Angular Momentum, World Scientific, Singapore (1987).
@ -1240,6 +1554,9 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Veld)**
In 't Veld, Ismail, Grest, J Chem Phys, 127, 144711 (2007).
**(Verstraelen)**
Verstraelen, Ayers, Speybroeck, Waroquier, J. Chem. Phys. 138, 074108 (2013).
**(Volkov1)**
Volkov and Zhigilei, J Phys Chem C, 114, 5513 (2010).
@ -1264,6 +1581,9 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Wang et al, 2015)**
Wang, Y., Alonso-Marroquin, F., & Guo, W. W. (2015). Rolling and sliding in 3-D discrete element models. Particuology, 23, 49-55.
**(Wang2020)**
X. Wang, S. Ramirez-Hinestrosa, J. Dobnikar, and D. Frenkel, Phys. Chem. Chem. Phys. 22, 10624 (2020).
**(Wang1)**
J.\ Wang, H. S. Yu, P. A. Langston, F. Y. Fraige, Granular Matter, 13, 1 (2011).
@ -1303,6 +1623,9 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Wicaksono2)**
Wicaksono, figshare, https://doi.org/10.6084/m9.figshare.1488628.v1 (2015).
**(Winkler)**
Winkler, Wysocki, and Gompper, Soft Matter, 11, 6680 (2015).
**(Wirnsberger)**
Wirnsberger, Frenkel, and Dellago, J Chem Phys, 143, 124104 (2015).
@ -1315,9 +1638,27 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Wood)**
Wood and Thompson, J Chem Phys, 148, 241721, (2018)
**(Xie23)**
Xie, S.R., Rupp, M. & Hennig, R.G. Ultra-fast interpretable machine-learning potentials. npj Comput Mater 9, 162 (2023). https://doi.org/10.1038/s41524-023-01092-7
**(Yade-DEM)**
V. Smilauer et al. (2021), Yade Documentation 3rd ed.
**(Yanxon2020)**
Yanxon, Zagaceta, Tang, Matteson, Zhu, Mach. Learn.: Sci. Technol. 2, 027001 (2020).
**(Yeh)**
Yeh and Berkowitz, J Chem Phys, 111, 3155 (1999).
**(Yuan2010a)**
Yuan, Huang, Li, Lykotrafitis, Zhang, Phys. Rev. E, 82, 011905(2010).
**(Yuan2010b)**
Yuan, Huang, Zhang, Soft. Matter, 6, 4571(2010).
**(Zagaceta2020)**
Zagaceta, Yanxon, Zhu, J Appl Phys, 128, 045113 (2020).
**(ZBL)**
J.F. Ziegler, J.P. Biersack, U. Littmark, 'Stopping and Ranges of Ions in Matter' Vol 1, 1985, Pergamon Press.
@ -1387,17 +1728,6 @@ D Pavlov, V Galigerov, D Kolotinskii, V Nikolskiy, V Stegailov, International Jo
**(Zimmerman2010)**
Zimmerman, JA; Jones, RE; Templeton, JA, "A material frame approach for evaluating continuum variables in atomistic simulations." Journal of Computational Physics (2010), 229:2364.
**(de Buyl)**
de Buyl, Colberg and Hofling, H5MD: A structured, efficient, and portable file format for molecular data, Comp. Phys. Comm. 185(6), 1546-1553 (2014) -
**(de Koning)**
de Koning and Antonelli, Phys Rev E, 53, 465 (1996).
**(electronic stopping)**
Wikipedia - Electronic Stopping Power: https://en.wikipedia.org/wiki/Stopping_power_%28particle_radiation%29
**(tenWolde)**
P.\ R. ten Wolde, M. J. Ruiz-Montero, D. Frenkel, J. Chem. Phys. 104, 9932 (1996).
**(vanWijk)**
M.\ M. van Wijk, A. Schuring, M. I. Katsnelson, and A. Fasolino, Physical Review Letters, 113, 135504 (2014)

View File

@ -37,8 +37,9 @@ standard. A more detailed discussion of that is below.
.. code-block:: bash
-D BUILD_MPI=value # yes or no, default is yes if CMake finds MPI, else no
-D BUILD_OMP=value # yes or no, default is yes if a compatible compiler is detected
-D BUILD_MPI=value # yes or no, default is yes if CMake finds MPI
-D BUILD_OMP=value # yes or no, default is yes if a compatible
# compiler is detected
-D LAMMPS_MACHINE=name # name = mpi, serial, mybox, titan, laptop, etc
# no default value
@ -54,9 +55,9 @@ standard. A more detailed discussion of that is below.
.. code-block:: bash
make mpi # parallel build, produces lmp_mpi using Makefile.mpi
make serial # serial build, produces lmp_serial using Makefile/serial
make mybox # uses Makefile.mybox to produce lmp_mybox
make mpi # parallel build, produces lmp_mpi using Makefile.mpi
make serial # serial build, produces lmp_serial using Makefile/serial
make mybox # uses Makefile.mybox to produce lmp_mybox
Any ``make machine`` command will look up the make settings from a
file ``Makefile.machine`` in the folder ``src/MAKE`` or one of its
@ -74,15 +75,15 @@ standard. A more detailed discussion of that is below.
this is ``-fopenmp``\ , which can be added to the ``CC`` and
``LINK`` makefile variables.
For the serial build the following make variables are set (see src/MAKE/Makefile.serial):
For the serial build the following make variables are set (see ``src/MAKE/Makefile.serial``):
.. code-block:: make
CC = g++
LINK = g++
MPI_INC = -I../STUBS
MPI_PATH = -L../STUBS
MPI_LIB = -lmpi_stubs
CC = g++
LINK = g++
MPI_INC = -I../STUBS
MPI_PATH = -L../STUBS
MPI_LIB = -lmpi_stubs
You also need to build the STUBS library for your platform before
making LAMMPS itself. A ``make serial`` build does this for you
@ -231,24 +232,32 @@ LAMMPS.
.. code-block:: bash
# Building with GNU Compilers:
cmake ../cmake -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_Fortran_COMPILER=gfortran
# Building with Intel Compilers:
cmake ../cmake -DCMAKE_C_COMPILER=icc -DCMAKE_CXX_COMPILER=icpc -DCMAKE_Fortran_COMPILER=ifort
cmake -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ \
-DCMAKE_Fortran_COMPILER=gfortran ../cmake
# Building with Intel Classic Compilers:
cmake -DCMAKE_C_COMPILER=icc -DCMAKE_CXX_COMPILER=icpc \
-DCMAKE_Fortran_COMPILER=ifort ../cmake
# Building with Intel oneAPI Compilers:
cmake ../cmake -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx -DCMAKE_Fortran_COMPILER=ifx
cmake -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx \
-DCMAKE_Fortran_COMPILER=ifx ../cmake
# Building with LLVM/Clang Compilers:
cmake ../cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_Fortran_COMPILER=flang
cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
-DCMAKE_Fortran_COMPILER=flang ../cmake
# Building with PGI/Nvidia Compilers:
cmake ../cmake -DCMAKE_C_COMPILER=pgcc -DCMAKE_CXX_COMPILER=pgc++ -DCMAKE_Fortran_COMPILER=pgfortran
cmake -DCMAKE_C_COMPILER=pgcc -DCMAKE_CXX_COMPILER=pgc++ \
-DCMAKE_Fortran_COMPILER=pgfortran ../cmake
# Building with the NVHPC Compilers:
cmake -DCMAKE_C_COMPILER=nvc -DCMAKE_CXX_COMPILER=nvc++ \
-DCMAKE_Fortran_COMPILER=nvfortran ../cmake
For compiling with the Clang/LLVM compilers a CMake preset is
provided that can be loaded with
`-C ../cmake/presets/clang.cmake`. Similarly,
`-C ../cmake/presets/intel.cmake` should switch the compiler
toolchain to the legacy Intel compilers, `-C ../cmake/presets/oneapi.cmake`
``-C ../cmake/presets/clang.cmake``. Similarly,
``-C ../cmake/presets/intel.cmake`` should switch the compiler
toolchain to the legacy Intel compilers, ``-C ../cmake/presets/oneapi.cmake``
will switch to the LLVM based oneAPI Intel compilers,
and `-C ../cmake/presets/pgi.cmake`
will switch the compiler to the PGI compilers.
``-C ../cmake/presets/pgi.cmake`` will switch the compiler to the PGI compilers,
and ``-C ../cmake/presets/nvhpc.cmake`` will switch to the NVHPC compilers.
Furthermore, you can set ``CMAKE_TUNE_FLAGS`` to specifically add
compiler flags to tune for optimal performance on given hosts.
@ -259,7 +268,7 @@ LAMMPS.
When the cmake command completes, it prints a summary to the
screen which compilers it is using and what flags and settings
will be used for the compilation. Note that if the top-level
compiler is mpicxx, it is simply a wrapper on a real compiler.
compiler is ``mpicxx``, it is simply a wrapper on a real compiler.
The underlying compiler info is what CMake will try to
determine and report. You should check to confirm you are
using the compiler and optimization flags you want.
@ -278,19 +287,19 @@ LAMMPS.
.. code-block:: make
CC = mpicxx
CCFLAGS = -g -O3
LINK = mpicxx
LINKFLAGS = -g -O
CC = mpicxx
CCFLAGS = -g -O3
LINK = mpicxx
LINKFLAGS = -g -O
Serial build with GNU gcc (see ``src/MAKE/Makefile.serial``):
.. code-block:: make
CC = g++
CCFLAGS = -g -O3
LINK = g++
LINKFLAGS = -g -O
CC = g++
CCFLAGS = -g -O3
LINK = g++
LINKFLAGS = -g -O
.. note::
@ -316,10 +325,10 @@ LAMMPS.
there may be specific compiler or linker flags that are either
required or recommended to enable required features and to
achieve optimal performance. You need to include these in the
CCFLAGS and LINKFLAGS settings above. For details, see the
``CCFLAGS`` and ``LINKFLAGS`` settings above. For details, see the
documentation for the individual packages listed on the
:doc:`Speed_packages` page. Or examine these files in the
src/MAKE/OPTIONS directory. They correspond to each of the 5
``src/MAKE/OPTIONS`` directory. They correspond to each of the 5
accelerator packages and their hardware variants:
.. code-block:: bash
@ -388,7 +397,8 @@ running LAMMPS from Python via its library interface.
make machine # build LAMMPS executable lmp_machine
make mode=static machine # same as "make machine"
make mode=shared machine # build LAMMPS shared lib liblammps_machine.so instead
make mode=shared machine # build LAMMPS shared lib liblammps_machine.so
# instead
The "static" build will generate a static library called
``liblammps_machine.a`` and an executable named ``lmp_machine``\ ,
@ -450,7 +460,7 @@ installation.
Including or removing debug support
-----------------------------------
By default the compilation settings will include the *-g* flag which
By default the compilation settings will include the ``-g`` flag which
instructs the compiler to include debug information (e.g. which line of
source code a particular instruction correspond to). This can be
extremely useful in case LAMMPS crashes and can help to provide crucial
@ -463,7 +473,7 @@ If this is a concern, you can change the compilation settings or remove
the debug information from the LAMMPS executable:
- **Traditional make**: edit your ``Makefile.<machine>`` to remove the
*-g* flag from the ``CCFLAGS`` and ``LINKFLAGS`` definitions
``-g`` flag from the ``CCFLAGS`` and ``LINKFLAGS`` definitions
- **CMake**: use ``-D CMAKE_BUILD_TYPE=Release`` or explicitly reset
the applicable compiler flags (best done using the text mode or
graphical user interface).
@ -488,9 +498,10 @@ using CMake or Make.
.. code-block:: bash
-D BUILD_TOOLS=value # yes or no (default). Build binary2txt, chain.x, micelle2d.x, msi2lmp, phana, stl_bin2txt
-D BUILD_LAMMPS_SHELL=value # yes or no (default). Build lammps-shell
-D BUILD_LAMMPS_GUI=value # yes or no (default). Build lammps-gui
-D BUILD_TOOLS=value # yes or no (default). Build binary2txt,
# chain.x, micelle2d.x, msi2lmp, phana,
# stl_bin2txt
-D BUILD_LAMMPS_GUI=value # yes or no (default). Build LAMMPS-GUI
The generated binaries will also become part of the LAMMPS installation
(see below).
@ -505,8 +516,9 @@ using CMake or Make.
make chain # build only chain tool
make micelle2d # build only micelle2d tool
cd lammps/tools/lammps-shell
make # build LAMMPS shell
.. note::
Building the LAMMPS-GUI *requires* building LAMMPS with CMake.
----------

View File

@ -131,20 +131,20 @@ file called ``CMakeLists.txt`` (for LAMMPS it is located in the
configuration step. The cache file contains all current CMake settings.
To modify settings, enable or disable features, you need to set
*variables* with either the *-D* command line flag (``-D
*variables* with either the ``-D`` command line flag (``-D
VARIABLE1_NAME=value``) or change them in the text mode of the graphical
user interface. The *-D* flag can be used several times in one command.
user interface. The ``-D`` flag can be used several times in one command.
For your convenience, we provide :ref:`CMake presets <cmake_presets>`
that combine multiple settings to enable optional LAMMPS packages or use
a different compiler tool chain. Those are loaded with the *-C* flag
a different compiler tool chain. Those are loaded with the ``-C`` flag
(``-C ../cmake/presets/basic.cmake``). This step would only be needed
once, as the settings from the preset files are stored in the
``CMakeCache.txt`` file. It is also possible to customize the build
by adding one or more *-D* flags to the CMake command line.
by adding one or more ``-D`` flags to the CMake command line.
Generating files for alternate build tools (e.g. Ninja) and project files
for IDEs like Eclipse, CodeBlocks, or Kate can be selected using the *-G*
for IDEs like Eclipse, CodeBlocks, or Kate can be selected using the ``-G``
command line flag. A list of available generator settings for your
specific CMake version is given when running ``cmake --help``.
@ -171,7 +171,7 @@ files. E.g. with:
In that case the resulting binaries are not in the build folder directly
but in subdirectories corresponding to the build type (i.e. Release in
the example from above). Similarly, for running unit tests the
configuration is selected with the *-C* flag:
configuration is selected with the ``-C`` flag:
.. code-block:: bash

View File

@ -88,8 +88,8 @@ on recording all commands required to do the compilation.
.. _sanitizer:
Address, Undefined Behavior, and Thread Sanitizer Support (CMake only)
----------------------------------------------------------------------
Address, Leak, Undefined Behavior, and Thread Sanitizer Support (CMake only)
----------------------------------------------------------------------------
Compilers such as GCC and Clang support generating instrumented binaries
which use different sanitizer libraries to detect problems in the code
@ -110,6 +110,7 @@ compilation and linking stages. This is done through setting the
-D ENABLE_SANITIZER=none # no sanitizer active (default)
-D ENABLE_SANITIZER=address # enable address sanitizer / memory leak checker
-D ENABLE_SANITIZER=hwaddress # enable hardware assisted address sanitizer / memory leak checker
-D ENABLE_SANITIZER=leak # enable memory leak checker (only)
-D ENABLE_SANITIZER=undefined # enable undefined behavior sanitizer
-D ENABLE_SANITIZER=thread # enable thread sanitizer
@ -152,7 +153,12 @@ development headers to compile (if those are not found locally a recent
version of that library will be downloaded and compiled along with
LAMMPS and the test programs) and will download and compile a specific
version of the `GoogleTest <https://github.com/google/googletest/>`_ C++
test framework that is used to implement the tests.
test framework that is used to implement the tests. Those unit tests
may be combined with memory access and leak checking with valgrind
(see below for how to enable it). In that case, running so-called
death tests will create a lot of false positives and thus they can be
disabled by configuring compilation with the additional setting
``-D SKIP_DEATH_TESTS=on``.
.. admonition:: Software version and LAMMPS configuration requirements
:class: note
@ -175,24 +181,24 @@ The output of this command will be looking something like this:
$ ctest
Test project /home/akohlmey/compile/lammps/build-testing
Start 1: RunLammps
1/563 Test #1: RunLammps .......................................... Passed 0.28 sec
1/563 Test #1: RunLammps .................................. Passed 0.28 sec
Start 2: HelpMessage
2/563 Test #2: HelpMessage ........................................ Passed 0.06 sec
2/563 Test #2: HelpMessage ................................ Passed 0.06 sec
Start 3: InvalidFlag
3/563 Test #3: InvalidFlag ........................................ Passed 0.06 sec
3/563 Test #3: InvalidFlag ................................ Passed 0.06 sec
Start 4: Tokenizer
4/563 Test #4: Tokenizer .......................................... Passed 0.05 sec
4/563 Test #4: Tokenizer .................................. Passed 0.05 sec
Start 5: MemPool
5/563 Test #5: MemPool ............................................ Passed 0.05 sec
5/563 Test #5: MemPool .................................... Passed 0.05 sec
Start 6: ArgUtils
6/563 Test #6: ArgUtils ........................................... Passed 0.05 sec
6/563 Test #6: ArgUtils ................................... Passed 0.05 sec
[...]
Start 561: ImproperStyle:zero
561/563 Test #561: ImproperStyle:zero ................................. Passed 0.07 sec
561/563 Test #561: ImproperStyle:zero ......................... Passed 0.07 sec
Start 562: TestMliapPyUnified
562/563 Test #562: TestMliapPyUnified ................................. Passed 0.16 sec
562/563 Test #562: TestMliapPyUnified ......................... Passed 0.16 sec
Start 563: TestPairList
563/563 Test #563: TestPairList ....................................... Passed 0.06 sec
563/563 Test #563: TestPairList ............................... Passed 0.06 sec
100% tests passed, 0 tests failed out of 563
@ -207,24 +213,25 @@ The output of this command will be looking something like this:
The ``ctest`` command has many options, the most important ones are:
.. list-table::
:widths: 20 80
* - Option
- Function
* - -V
* - ``-V``
- verbose output: display output of individual test runs
* - -j <num>
* - ``-j <num>``
- parallel run: run <num> tests in parallel
* - -R <regex>
* - ``-R <regex>``
- run subset of tests matching the regular expression <regex>
* - -E <regex>
* - ``-E <regex>``
- exclude subset of tests matching the regular expression <regex>
* - -L <regex>
* - ``-L <regex>``
- run subset of tests with a label matching the regular expression <regex>
* - -LE <regex>
* - ``-LE <regex>``
- exclude subset of tests with a label matching the regular expression <regex>
* - -N
* - ``-N``
- dry-run: display list of tests without running them
* - -T memcheck
* - ``-T memcheck``
- run tests with valgrind memory checker (if available)
In its full implementation, the unit test framework will consist of multiple
@ -330,16 +337,17 @@ paths in the individual source files.
The force style test programs have a common set of options:
.. list-table::
:widths: 25 75
* - Option
- Function
* - -g <newfile>
* - ``-g <newfile>``
- regenerate reference data in new YAML file
* - -u
* - ``-u``
- update reference data in the original YAML file
* - -s
* - ``-s``
- print error statistics for each group of comparisons
* - -v
* - ``-v``
- verbose output: also print the executed LAMMPS commands
The ``ctest`` tool has no mechanism to directly pass flags to the individual
@ -353,10 +361,10 @@ set in an environment variable ``TEST_ARGS``. Example:
To add a test for a style that is not yet covered, it is usually best
to copy a YAML file for a similar style to a new file, edit the details
of the style (how to call it, how to set its coefficients) and then
run test command with either the *-g* and the replace the initial
test file with the regenerated one or the *-u* option. The *-u* option
run test command with either the ``-g`` and the replace the initial
test file with the regenerated one or the ``-u`` option. The ``-u`` option
will destroy the original file, if the generation run does not complete,
so using *-g* is recommended unless the YAML file is fully tested
so using ``-g`` is recommended unless the YAML file is fully tested
and working.
Some of the force style tests are rather slow to run and some are very
@ -506,27 +514,51 @@ After post-processing with ``gen_coverage_html`` the results are in
a folder ``coverage_html`` and can be viewed with a web browser.
The images below illustrate how the data is presented.
.. list-table::
.. only:: not latex
* - .. figure:: JPG/coverage-overview-top.png
:scale: 25%
.. list-table::
Top of the overview page
* - .. figure:: JPG/coverage-overview-top.png
:scale: 25%
- .. figure:: JPG/coverage-overview-manybody.png
:scale: 25%
Top of the overview page
Styles with good coverage
- .. figure:: JPG/coverage-overview-manybody.png
:scale: 25%
- .. figure:: JPG/coverage-file-top.png
:scale: 25%
Styles with good coverage
Top of individual source page
- .. figure:: JPG/coverage-file-top.png
:scale: 25%
- .. figure:: JPG/coverage-file-branches.png
:scale: 25%
Top of individual source page
Source page with branches
- .. figure:: JPG/coverage-file-branches.png
:scale: 25%
Source page with branches
.. only:: latex
.. figure:: JPG/coverage-overview-top.png
:width: 60%
Top of the overview page
.. figure:: JPG/coverage-overview-manybody.png
:width: 60%
Styles with good coverage
.. figure:: JPG/coverage-file-top.png
:width: 60%
Top of individual source page
.. figure:: JPG/coverage-file-branches.png
:width: 60%
Source page with branches
Coding style utilities
----------------------

View File

@ -14,7 +14,7 @@ in addition to
cmake -D PKG_NAME=yes
- .. code-block:: console
- .. code-block:: bash
make yes-name
@ -59,6 +59,7 @@ This is the list of packages that may require additional steps.
* :ref:`POEMS <poems>`
* :ref:`PYTHON <python>`
* :ref:`QMMM <qmmm>`
* :ref:`RHEO <rheo>`
* :ref:`SCAFACOS <scafacos>`
* :ref:`VORONOI <voronoi>`
* :ref:`VTK <vtk>`
@ -72,7 +73,7 @@ COMPRESS package
To build with this package you must have the `zlib compression library
<https://zlib.net>`_ available on your system to build dump styles with
a '/gz' suffix. There are also styles using the
a ``/gz`` suffix. There are also styles using the
`Zstandard <https://facebook.github.io/zstd/>`_ library which have a
'/zstd' suffix. The zstd library version must be at least 1.4. Older
versions use an incompatible API and thus LAMMPS will fail to compile.
@ -94,7 +95,7 @@ versions use an incompatible API and thus LAMMPS will fail to compile.
<https://www.freedesktop.org/wiki/Software/pkg-config/>`_ tool to
identify the necessary flags to compile with this library, so the
corresponding ``libzstandard.pc`` file must be in a folder where
pkg-config can find it, which may require adding it to the
``pkg-config`` can find it, which may require adding it to the
``PKG_CONFIG_PATH`` environment variable.
.. tab:: Traditional make
@ -126,46 +127,53 @@ CMake build
# value = double or mixed (default) or single
-D GPU_ARCH=value # primary GPU hardware choice for GPU_API=cuda
# value = sm_XX (see below, default is sm_50)
-D GPU_DEBUG=value # enable debug code in the GPU package library, mostly useful for developers
-D GPU_DEBUG=value # enable debug code in the GPU package library,
# mostly useful for developers
# value = yes or no (default)
-D HIP_PATH=value # value = path to HIP installation. Must be set if GPU_API=HIP
-D HIP_PATH=value # value = path to HIP installation. Must be set if
# GPU_API=HIP
-D HIP_ARCH=value # primary GPU hardware choice for GPU_API=hip
# value depends on selected HIP_PLATFORM
# default is 'gfx906' for HIP_PLATFORM=amd and 'sm_50' for HIP_PLATFORM=nvcc
# default is 'gfx906' for HIP_PLATFORM=amd and 'sm_50' for
# HIP_PLATFORM=nvcc
-D HIP_USE_DEVICE_SORT=value # enables GPU sorting
# value = yes (default) or no
-D CUDPP_OPT=value # use GPU binning on with CUDA (should be off for modern GPUs)
# enables CUDA Performance Primitives, must be "no" for CUDA_MPS_SUPPORT=yes
-D CUDPP_OPT=value # use GPU binning with CUDA (should be off for modern GPUs)
# enables CUDA Performance Primitives, must be "no" for
# CUDA_MPS_SUPPORT=yes
# value = yes or no (default)
-D CUDA_MPS_SUPPORT=value # enables some tweaks required to run with active nvidia-cuda-mps daemon
-D CUDA_MPS_SUPPORT=value # enables some tweaks required to run with active
# nvidia-cuda-mps daemon
# value = yes or no (default)
-D CUDA_BUILD_MULTIARCH=value # enables building CUDA kernels for all supported GPU architectures
-D CUDA_BUILD_MULTIARCH=value # enables building CUDA kernels for all supported GPU
# architectures
# value = yes (default) or no
-D USE_STATIC_OPENCL_LOADER=value # downloads/includes OpenCL ICD loader library, no local OpenCL headers/libs needed
-D USE_STATIC_OPENCL_LOADER=value # downloads/includes OpenCL ICD loader library,
# no local OpenCL headers/libs needed
# value = yes (default) or no
:code:`GPU_ARCH` settings for different GPU hardware is as follows:
``GPU_ARCH`` settings for different GPU hardware is as follows:
* sm_30 for Kepler (supported since CUDA 5 and until CUDA 10.x)
* sm_35 or sm_37 for Kepler (supported since CUDA 5 and until CUDA 11.x)
* sm_50 or sm_52 for Maxwell (supported since CUDA 6)
* sm_60 or sm_61 for Pascal (supported since CUDA 8)
* sm_70 for Volta (supported since CUDA 9)
* sm_75 for Turing (supported since CUDA 10)
* sm_80 or sm_86 for Ampere (supported since CUDA 11, sm_86 since CUDA 11.1)
* sm_89 for Lovelace (supported since CUDA 11.8)
* sm_90 for Hopper (supported since CUDA 12.0)
* ``sm_30`` for Kepler (supported since CUDA 5 and until CUDA 10.x)
* ``sm_35`` or ``sm_37`` for Kepler (supported since CUDA 5 and until CUDA 11.x)
* ``sm_50`` or ``sm_52`` for Maxwell (supported since CUDA 6)
* ``sm_60`` or ``sm_61`` for Pascal (supported since CUDA 8)
* ``sm_70`` for Volta (supported since CUDA 9)
* ``sm_75`` for Turing (supported since CUDA 10)
* ``sm_80`` or sm_86 for Ampere (supported since CUDA 11, sm_86 since CUDA 11.1)
* ``sm_89`` for Lovelace (supported since CUDA 11.8)
* ``sm_90`` for Hopper (supported since CUDA 12.0)
A more detailed list can be found, for example,
at `Wikipedia's CUDA article <https://en.wikipedia.org/wiki/CUDA#GPUs_supported>`_
CMake can detect which version of the CUDA toolkit is used and thus will
try to include support for **all** major GPU architectures supported by
this toolkit. Thus the GPU_ARCH setting is merely an optimization, to
this toolkit. Thus the ``GPU_ARCH`` setting is merely an optimization, to
have code for the preferred GPU architecture directly included rather
than having to wait for the JIT compiler of the CUDA driver to translate
it. This behavior can be turned off (e.g. to speed up compilation) by
setting :code:`CUDA_ENABLE_MULTIARCH` to :code:`no`.
setting ``CUDA_ENABLE_MULTIARCH`` to ``no``.
When compiling for CUDA or HIP with CUDA, version 8.0 or later of the
CUDA toolkit is required and a GPU architecture of Kepler or later,
@ -184,21 +192,21 @@ build, and link with a static OpenCL ICD loader library and standard
OpenCL headers. This way no local OpenCL development headers or library
needs to be present and only OpenCL compatible drivers need to be
installed to use OpenCL. If this is not desired, you can set
:code:`USE_STATIC_OPENCL_LOADER` to :code:`no`.
``USE_STATIC_OPENCL_LOADER`` to ``no``.
The GPU library has some multi-thread support using OpenMP. If LAMMPS
is built with ``-D BUILD_OMP=on`` this will also be enabled.
If you are compiling with HIP, note that before running CMake you will
have to set appropriate environment variables. Some variables such as
:code:`HCC_AMDGPU_TARGET` (for ROCm <= 4.0) or :code:`CUDA_PATH` are
necessary for :code:`hipcc` and the linker to work correctly.
``HCC_AMDGPU_TARGET`` (for ROCm <= 4.0) or ``CUDA_PATH`` are
necessary for ``hipcc`` and the linker to work correctly.
.. versionadded:: 3Aug2022
Using the CHIP-SPV implementation of HIP is supported. It allows one to
run HIP code on Intel GPUs via the OpenCL or Level Zero backends. To use
CHIP-SPV, you must set :code:`-DHIP_USE_DEVICE_SORT=OFF` in your CMake
CHIP-SPV, you must set ``-DHIP_USE_DEVICE_SORT=OFF`` in your CMake
command line as CHIP-SPV does not yet support hipCUB. As of Summer 2022,
the use of HIP for Intel GPUs is experimental. You should only use this
option in preparations to run on Aurora system at Argonne.
@ -256,28 +264,35 @@ script with the specified args:
.. code-block:: bash
make lib-gpu # print help message
make lib-gpu args="-b" # build GPU library with default Makefile.linux
make lib-gpu args="-m xk7 -p single -o xk7.single" # create new Makefile.xk7.single, altered for single-precision
make lib-gpu args="-m mpi -a sm_60 -p mixed -b" # build GPU library with mixed precision and P100 using other settings in Makefile.mpi
# print help message
make lib-gpu
# build GPU library with default Makefile.linux
make lib-gpu args="-b"
# create new Makefile.xk7.single, altered for single-precision
make lib-gpu args="-m xk7 -p single -o xk7.single"
# build GPU library with mixed precision and P100 using other settings in Makefile.mpi
make lib-gpu args="-m mpi -a sm_60 -p mixed -b"
Note that this procedure starts with a Makefile.machine in lib/gpu, as
specified by the "-m" switch. For your convenience, machine makefiles
specified by the ``-m`` switch. For your convenience, machine makefiles
for "mpi" and "serial" are provided, which have the same settings as
the corresponding machine makefiles in the main LAMMPS source
folder. In addition you can alter 4 important settings in the
Makefile.machine you start from via the corresponding -c, -a, -p, -e
Makefile.machine you start from via the corresponding ``-c``, ``-a``, ``-p``, ``-e``
switches (as in the examples above), and also save a copy of the new
Makefile if desired:
* ``CUDA_HOME`` = where NVIDIA CUDA software is installed on your system
* ``CUDA_ARCH`` = sm_XX, what GPU hardware you have, same as CMake GPU_ARCH above
* ``CUDA_ARCH`` = ``sm_XX``, what GPU hardware you have, same as CMake ``GPU_ARCH`` above
* ``CUDA_PRECISION`` = precision (double, mixed, single)
* ``EXTRAMAKE`` = which Makefile.lammps.\* file to copy to Makefile.lammps
* ``EXTRAMAKE`` = which ``Makefile.lammps.*`` file to copy to Makefile.lammps
The file Makefile.cuda is set up to include support for multiple
The file ``Makefile.cuda`` is set up to include support for multiple
GPU architectures as supported by the CUDA toolkit in use. This is done
through using the "--gencode " flag, which can be used multiple times and
through using the ``--gencode`` flag, which can be used multiple times and
thus support all GPU architectures supported by your CUDA compiler.
To enable GPU binning via CUDA performance primitives set the Makefile variable
@ -348,12 +363,16 @@ minutes to hours) to build. Of course you only need to do that once.)
.. code-block:: bash
-D DOWNLOAD_KIM=value # download OpenKIM API v2 for build, value = no (default) or yes
-D LMP_DEBUG_CURL=value # set libcurl verbose mode on/off, value = off (default) or on
-D LMP_NO_SSL_CHECK=value # tell libcurl to not verify the peer, value = no (default) or yes
-D KIM_EXTRA_UNITTESTS=value # enables extra unit tests, value = no (default) or yes
-D DOWNLOAD_KIM=value # download OpenKIM API v2 for build
# value = no (default) or yes
-D LMP_DEBUG_CURL=value # set libcurl verbose mode on/off
# value = off (default) or on
-D LMP_NO_SSL_CHECK=value # tell libcurl to not verify the peer
# value = no (default) or yes
-D KIM_EXTRA_UNITTESTS=value # enables extra unit tests
# value = no (default) or yes
If ``DOWNLOAD_KIM`` is set to *yes* (or *on*), the KIM API library
If ``DOWNLOAD_KIM`` is set to ``yes`` (or ``on``), the KIM API library
will be downloaded and built inside the CMake build directory. If
the KIM library is already installed on your system (in a location
where CMake cannot find it), you may need to set the
@ -361,7 +380,7 @@ minutes to hours) to build. Of course you only need to do that once.)
found, or run the command ``source kim-api-activate``.
Extra unit tests can only be available if they are explicitly requested
(``KIM_EXTRA_UNITTESTS`` is set to *yes* (or *on*)) and the prerequisites
(``KIM_EXTRA_UNITTESTS`` is set to ``yes`` (or ``on``)) and the prerequisites
are met. See :ref:`KIM Extra unit tests <kim_extra_unittests>` for
more details on this.
@ -375,15 +394,28 @@ minutes to hours) to build. Of course you only need to do that once.)
.. code-block:: bash
make lib-kim # print help message
make lib-kim args="-b " # (re-)install KIM API lib with only example models
make lib-kim args="-b -a Glue_Ercolessi_Adams_Al__MO_324507536345_001" # ditto plus one model
make lib-kim args="-b -a everything" # install KIM API lib with all models
make lib-kim args="-n -a EAM_Dynamo_Ackland_W__MO_141627196590_002" # add one model or model driver
make lib-kim args="-p /usr/local" # use an existing KIM API installation at the provided location
make lib-kim args="-p /usr/local -a EAM_Dynamo_Ackland_W__MO_141627196590_002" # ditto but add one model or driver
# print help message
make lib-kim
When using the "-b " option, the KIM library is built using its native
# (re-)install KIM API lib with only example models
make lib-kim args="-b"
# ditto plus one model
make lib-kim args="-b -a Glue_Ercolessi_Adams_Al__MO_324507536345_001"
# install KIM API lib with all models
make lib-kim args="-b -a everything"
# add one model or model driver
make lib-kim args="-n -a EAM_Dynamo_Ackland_W__MO_141627196590_002"
# use an existing KIM API installation at the provided location
make lib-kim args="-p <prefix>"
# ditto but add one model or driver
make lib-kim args="-p <prefix> -a EAM_Dynamo_Ackland_W__MO_141627196590_002"
When using the ``-b`` option, the KIM library is built using its native
cmake build system. The ``lib/kim/Install.py`` script supports a
``CMAKE`` environment variable if the cmake executable is named other
than ``cmake`` on your system. Additional environment variables may be
@ -393,7 +425,9 @@ minutes to hours) to build. Of course you only need to do that once.)
.. code-block:: bash
CMAKE=cmake3 CXX=g++-11 CC=gcc-11 FC=gfortran-11 make lib-kim args="-b " # (re-)install KIM API lib using cmake3 and gnu v11 compilers with only example models
# (re-)install KIM API lib using cmake3 and gnu v11 compilers
# with only example models
CMAKE=cmake3 CXX=g++-11 CC=gcc-11 FC=gfortran-11 make lib-kim args="-b"
Settings for debugging OpenKIM web queries discussed below need to
be applied by adding them to the ``LMP_INC`` variable through
@ -433,7 +467,7 @@ KIM Extra unit tests (CMake only)
During development, testing, or debugging, if
:doc:`unit testing <Build_development>` is enabled in LAMMPS, one can also
enable extra tests on :doc:`KIM commands <kim_commands>` by setting the
``KIM_EXTRA_UNITTESTS`` to *yes* (or *on*).
``KIM_EXTRA_UNITTESTS`` to ``yes`` (or ``on``).
Enabling the extra unit tests have some requirements,
@ -448,10 +482,12 @@ Enabling the extra unit tests have some requirements,
*conda-forge* channel as ``conda install kim-property`` if LAMMPS is built in
Conda. More detailed information is available at:
`kim-property installation <https://github.com/openkim/kim-property#installing-kim-property>`_.
* It is also necessary to install
``EAM_Dynamo_MendelevAckland_2007v3_Zr__MO_004835508849_000``,
``EAM_Dynamo_ErcolessiAdams_1994_Al__MO_123629422045_005``, and
``LennardJones612_UniversalShifted__MO_959249795837_003`` KIM models.
* It is also necessary to install the following KIM models:
* ``EAM_Dynamo_MendelevAckland_2007v3_Zr__MO_004835508849_000``
* ``EAM_Dynamo_ErcolessiAdams_1994_Al__MO_123629422045_005``
* ``LennardJones612_UniversalShifted__MO_959249795837_003``
See `Obtaining KIM Models <https://openkim.org/doc/usage/obtaining-models>`_
to learn how to install a pre-built binary of the OpenKIM Repository of
Models or see
@ -638,6 +674,9 @@ They must be specified in uppercase.
* - AMD_GFX1100
- GPU
- AMD GPU RX7900XTX
* - AMD_GFX1103
- GPU
- AMD Phoenix APU with Radeon 740M/760M/780M/880M/890M
* - INTEL_GEN
- GPU
- SPIR64-based devices, e.g. Intel GPUs, using JIT
@ -725,7 +764,8 @@ This list was last updated for version 4.3.0 of the Kokkos library.
mkdir build-kokkos-cuda
cd build-kokkos-cuda
cmake -C ../cmake/presets/basic.cmake -C ../cmake/presets/kokkos-cuda.cmake ../cmake
cmake -C ../cmake/presets/basic.cmake \
-C ../cmake/presets/kokkos-cuda.cmake ../cmake
cmake --build .
.. tab:: Basic traditional make settings:
@ -753,9 +793,10 @@ This list was last updated for version 4.3.0 of the Kokkos library.
.. code-block:: make
KOKKOS_DEVICES = Cuda
KOKKOS_ARCH = HOSTARCH,GPUARCH # HOSTARCH = HOST from list above that is hosting the GPU
KOKKOS_CUDA_OPTIONS = "enable_lambda"
KOKKOS_ARCH = HOSTARCH,GPUARCH # HOSTARCH = HOST from list above that is
# hosting the GPU
# GPUARCH = GPU from list above
KOKKOS_CUDA_OPTIONS = "enable_lambda"
FFT_INC = -DFFT_CUFFT # enable use of cuFFT (optional)
FFT_LIB = -lcufft # link to cuFFT library
@ -783,10 +824,11 @@ This list was last updated for version 4.3.0 of the Kokkos library.
.. code-block:: make
KOKKOS_DEVICES = HIP
KOKKOS_ARCH = HOSTARCH,GPUARCH # HOSTARCH = HOST from list above that is hosting the GPU
KOKKOS_ARCH = HOSTARCH,GPUARCH # HOSTARCH = HOST from list above that is
# hosting the GPU
# GPUARCH = GPU from list above
FFT_INC = -DFFT_HIPFFT # enable use of hipFFT (optional)
FFT_LIB = -lhipfft # link to hipFFT library
FFT_INC = -DFFT_HIPFFT # enable use of hipFFT (optional)
FFT_LIB = -lhipfft # link to hipFFT library
Advanced KOKKOS compilation settings
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@ -870,11 +912,16 @@ included in the LAMMPS source distribution in the ``lib/lepton`` folder.
.. code-block:: bash
make lib-lepton # print help message
make lib-lepton args="-m serial" # build with GNU g++ compiler (settings as with "make serial")
make lib-lepton args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
# print help message
make lib-lepton
The "machine" argument of the "-m" flag is used to find a
# build with GNU g++ compiler (settings as with "make serial")
make lib-lepton args="-m serial"
# build with default MPI compiler (settings as with "make mpi")
make lib-lepton args="-m mpi"
The "machine" argument of the ``-m`` flag is used to find a
Makefile.machine to use as build recipe.
The build should produce a ``build`` folder and the library ``lib/lepton/liblmplepton.a``
@ -896,7 +943,8 @@ Eigen3 is a template library, so you do not need to build it.
.. code-block:: bash
-D DOWNLOAD_EIGEN3 # download Eigen3, value = no (default) or yes
-D EIGEN3_INCLUDE_DIR=path # path to Eigen library (only needed if a custom location)
-D EIGEN3_INCLUDE_DIR=path # path to Eigen library (only needed if a
# custom location)
If ``DOWNLOAD_EIGEN3`` is set, the Eigen3 library will be
downloaded and inside the CMake build directory. If the Eigen3
@ -914,9 +962,14 @@ Eigen3 is a template library, so you do not need to build it.
.. code-block:: bash
make lib-machdyn # print help message
make lib-machdyn args="-b" # download to lib/machdyn/eigen3
make lib-machdyn args="-p /usr/include/eigen3" # use existing Eigen installation in /usr/include/eigen3
# print help message
make lib-machdyn
# download to lib/machdyn/eigen3
make lib-machdyn args="-b"
# use existing Eigen installation in /usr/include/eigen3
make lib-machdyn args="-p /usr/include/eigen3"
Note that a symbolic (soft) link named ``includelink`` is created
in ``lib/machdyn`` to point to the Eigen dir. When LAMMPS builds it
@ -990,7 +1043,7 @@ OPT package
The compiler flag ``-restrict`` must be used to build LAMMPS with
the OPT package when using Intel compilers. It should be added to
the :code:`CCFLAGS` line of your ``Makefile.machine``. See
the ``CCFLAGS`` line of your ``Makefile.machine``. See
``src/MAKE/OPTIONS/Makefile.opt`` for an example.
----------
@ -1017,10 +1070,17 @@ POEMS package
.. code-block:: bash
make lib-poems # print help message
make lib-poems args="-m serial" # build with GNU g++ compiler (settings as with "make serial")
make lib-poems args="-m mpi" # build with default MPI C++ compiler (settings as with "make mpi")
make lib-poems args="-m icc" # build with Intel icc compiler
# print help message
make lib-poems
# build with GNU g++ compiler (settings as with "make serial")
make lib-poems args="-m serial"
# build with default MPI C++ compiler (settings as with "make mpi")
make lib-poems args="-m mpi"
# build with Intel Classic compiler
make lib-poems args="-m icc"
The build should produce two files: ``lib/poems/libpoems.a`` and
``lib/poems/Makefile.lammps``. The latter is copied from an
@ -1084,9 +1144,12 @@ binary package provided by your operating system.
.. code-block:: bash
-D DOWNLOAD_VORO=value # download Voro++ for build, value = no (default) or yes
-D VORO_LIBRARY=path # Voro++ library file (only needed if at custom location)
-D VORO_INCLUDE_DIR=path # Voro++ include directory (only needed if at custom location)
-D DOWNLOAD_VORO=value # download Voro++ for build
# value = no (default) or yes
-D VORO_LIBRARY=path # Voro++ library file
# (only needed if at custom location)
-D VORO_INCLUDE_DIR=path # Voro++ include directory
# (only needed if at custom location)
If ``DOWNLOAD_VORO`` is set, the Voro++ library will be downloaded
and built inside the CMake build directory. If the Voro++ library
@ -1106,12 +1169,19 @@ binary package provided by your operating system.
.. code-block:: bash
make lib-voronoi # print help message
make lib-voronoi args="-b" # download and build the default version in lib/voronoi/voro++-<version>
make lib-voronoi args="-p $HOME/voro++" # use existing Voro++ installation in $HOME/voro++
make lib-voronoi args="-b -v voro++0.4.6" # download and build the 0.4.6 version in lib/voronoi/voro++-0.4.6
# print help message
make lib-voronoi
Note that 2 symbolic (soft) links, ``includelink`` and
# download and build the default version in lib/voronoi/voro++-<version>
make lib-voronoi args="-b"
# use existing Voro++ installation in $HOME/voro++
make lib-voronoi args="-p $HOME/voro++"
# download and build the 0.4.6 version in lib/voronoi/voro++-0.4.6
make lib-voronoi args="-b -v voro++0.4.6"
Note that two symbolic (soft) links, ``includelink`` and
``liblink``, are created in lib/voronoi to point to the Voro++
source dir. When LAMMPS builds in ``src`` it will use these
links. You should not need to edit the
@ -1185,10 +1255,17 @@ The ATC package requires the MANYBODY package also be installed.
.. code-block:: bash
make lib-atc # print help message
make lib-atc args="-m serial" # build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
make lib-atc args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
make lib-atc args="-m icc" # build with Intel icc compiler
# print help message
make lib-atc
# build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
make lib-atc args="-m serial"
# build with default MPI compiler (settings as with "make mpi")
make lib-atc args="-m mpi"
# build with Intel Classic compiler
make lib-atc args="-m icc"
The build should produce two files: ``lib/atc/libatc.a`` and
``lib/atc/Makefile.lammps``. The latter is copied from an
@ -1207,10 +1284,17 @@ The ATC package requires the MANYBODY package also be installed.
.. code-block:: bash
make lib-linalg # print help message
make lib-linalg args="-m serial" # build with GNU C++ compiler (settings as with "make serial")
make lib-linalg args="-m mpi" # build with default MPI C++ compiler (settings as with "make mpi")
make lib-linalg args="-m g++" # build with GNU Fortran compiler
# print help message
make lib-linalg
# build with GNU C++ compiler (settings as with "make serial")
make lib-linalg args="-m serial"
# build with default MPI C++ compiler (settings as with "make mpi")
make lib-linalg args="-m mpi"
# build with GNU Fortran compiler
make lib-linalg args="-m g++"
----------
@ -1236,10 +1320,17 @@ AWPMD package
.. code-block:: bash
make lib-awpmd # print help message
make lib-awpmd args="-m serial" # build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
make lib-awpmd args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
make lib-awpmd args="-m icc" # build with Intel icc compiler
# print help message
make lib-awpmd
# build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
make lib-awpmd args="-m serial"
# build with default MPI compiler (settings as with "make mpi")
make lib-awpmd args="-m mpi"
# build with Intel Classic compiler
make lib-awpmd args="-m icc"
The build should produce two files: ``lib/awpmd/libawpmd.a`` and
``lib/awpmd/Makefile.lammps``. The latter is copied from an
@ -1258,10 +1349,17 @@ AWPMD package
.. code-block:: bash
make lib-linalg # print help message
make lib-linalg args="-m serial" # build with GNU C++ compiler (settings as with "make serial")
make lib-linalg args="-m mpi" # build with default MPI C++ compiler (settings as with "make mpi")
make lib-linalg args="-m g++" # build with GNU C++ compiler
# print help message
make lib-linalg
# build with GNU C++ compiler (settings as with "make serial")
make lib-linalg args="-m serial"
# build with default MPI C++ compiler (settings as with "make mpi")
make lib-linalg args="-m mpi"
# build with GNU C++ compiler
make lib-linalg args="-m g++"
----------
@ -1294,10 +1392,17 @@ module included in the LAMMPS source distribution.
.. code-block:: bash
make lib-colvars # print help message
make lib-colvars args="-m serial" # build with GNU g++ compiler (settings as with "make serial")
make lib-colvars args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
make lib-colvars args="-m g++-debug" # build with GNU g++ compiler and colvars debugging enabled
# print help message
make lib-colvars
# build with GNU g++ compiler (settings as with "make serial")
make lib-colvars args="-m serial"
# build with default MPI compiler (settings as with "make mpi")
make lib-colvars args="-m mpi"
# build with GNU g++ compiler and colvars debugging enabled
make lib-colvars args="-m g++-debug"
The "machine" argument of the "-m" flag is used to find a
``Makefile.machine`` file to use as build recipe. If such recipe does
@ -1316,8 +1421,11 @@ module included in the LAMMPS source distribution.
.. code-block:: bash
COLVARS_DEBUG=yes make lib-colvars args="-m machine" # Build with debug code (much slower)
COLVARS_LEPTON=no make lib-colvars args="-m machine" # Build without Lepton (included otherwise)
# Build with debug code (much slower)
COLVARS_DEBUG=yes make lib-colvars args="-m machine"
# Build without Lepton (included otherwise)
COLVARS_LEPTON=no make lib-colvars args="-m machine"
The build should produce two files: the library
``lib/colvars/libcolvars.a`` and the specification file
@ -1364,9 +1472,14 @@ This package depends on the KSPACE package.
.. code-block:: bash
make lib-electrode # print help message
make lib-electrode args="-m serial" # build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
make lib-electrode args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
# print help message
make lib-electrode
# build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
make lib-electrode args="-m serial"
# build with default MPI compiler (settings as with "make mpi")
make lib-electrode args="-m mpi"
Note that the ``Makefile.lammps`` file has settings for the BLAS
@ -1377,10 +1490,17 @@ This package depends on the KSPACE package.
.. code-block:: bash
make lib-linalg # print help message
make lib-linalg args="-m serial" # build with GNU C++ compiler (settings as with "make serial")
make lib-linalg args="-m mpi" # build with default MPI C++ compiler (settings as with "make mpi")
make lib-linalg args="-m g++" # build with GNU C++ compiler
# print help message
make lib-linalg
# build with GNU C++ compiler (settings as with "make serial")
make lib-linalg args="-m serial"
# build with default MPI C++ compiler (settings as with "make mpi")
make lib-linalg args="-m mpi"
# build with GNU C++ compiler
make lib-linalg args="-m g++"
The package itself is activated with ``make yes-KSPACE`` and
``make yes-ELECTRODE``
@ -1397,6 +1517,11 @@ in lib/pace or somewhere else, which must be done before building
LAMMPS with this package. The code for the library can be found
at: `https://github.com/ICAMS/lammps-user-pace/ <https://github.com/ICAMS/lammps-user-pace/>`_
Instead of including the ML-PACE package directly into LAMMPS, it
is also possible to skip this step and build the ML-PACE package as
a plugin using the CMake script files in the ``examples/PACKAGE/pace/plugin``
folder and then load this plugin at runtime with the :doc:`plugin command <plugin>`.
.. tabs::
.. tab:: CMake build
@ -1420,8 +1545,11 @@ at: `https://github.com/ICAMS/lammps-user-pace/ <https://github.com/ICAMS/lammps
.. code-block:: bash
make lib-pace # print help message
make lib-pace args="-b" # download and build the default version in lib/pace
# print help message
make lib-pace
# download and build the default version in lib/pace
make lib-pace args="-b"
You should not need to edit the ``lib/pace/Makefile.lammps`` file.
@ -1448,10 +1576,17 @@ ML-POD package
.. code-block:: bash
make lib-mlpod # print help message
make lib-mlpod args="-m serial" # build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
make lib-mlpod args="-m mpi" # build with default MPI compiler (settings as with "make mpi")
make lib-mlpod args="-m mpi -e linalg" # same as above but use the bundled linalg lib
# print help message
make lib-mlpod
# build with GNU g++ compiler and MPI STUBS (settings as with "make serial")
make lib-mlpod args="-m serial"
# build with default MPI compiler (settings as with "make mpi")
make lib-mlpod args="-m mpi"
# same as above but use the bundled linalg lib
make lib-mlpod args="-m mpi -e linalg"
Note that the ``Makefile.lammps`` file has settings to use the BLAS
and LAPACK linear algebra libraries. These can either exist on
@ -1461,10 +1596,17 @@ ML-POD package
.. code-block:: bash
make lib-linalg # print help message
make lib-linalg args="-m serial" # build with GNU C++ compiler (settings as with "make serial")
make lib-linalg args="-m mpi" # build with default MPI C++ compiler (settings as with "make mpi")
make lib-linalg args="-m g++" # build with GNU C++ compiler
# print help message
make lib-linalg
# build with GNU C++ compiler (settings as with "make serial")
make lib-linalg args="-m serial"
# build with default MPI C++ compiler (settings as with "make mpi")
make lib-linalg args="-m mpi"
# build with GNU C++ compiler
make lib-linalg args="-m g++"
The package itself is activated with ``make yes-ML-POD``.
@ -1487,10 +1629,13 @@ within CMake will download the non-commercial use version.
.. code-block:: bash
-D DOWNLOAD_QUIP=value # download QUIP library for build, value = no (default) or yes
-D QUIP_LIBRARY=path # path to libquip.a (only needed if a custom location)
-D USE_INTERNAL_LINALG=value # Use the internal linear algebra library instead of LAPACK
# value = no (default) or yes
-D DOWNLOAD_QUIP=value # download QUIP library for build
# value = no (default) or yes
-D QUIP_LIBRARY=path # path to libquip.a
# (only needed if a custom location)
-D USE_INTERNAL_LINALG=value # Use the internal linear algebra library
# instead of LAPACK
# value = no (default) or yes
CMake will try to download and build the QUIP library from GitHub,
if it is not found on the local machine. This requires to have git
@ -1561,29 +1706,38 @@ try a different one, switch to a different build system, consider a
global PLUMED installation or consider downloading PLUMED during the
LAMMPS build.
Instead of including the PLUMED package directly into LAMMPS, it
is also possible to skip this step and build the PLUMED package as
a plugin using the CMake script files in the ``examples/PACKAGE/plumed/plugin``
folder and then load this plugin at runtime with the :doc:`plugin command <plugin>`.
.. tabs::
.. tab:: CMake build
When the ``-D PKG_PLUMED=yes`` flag is included in the cmake
command you must ensure that GSL is installed in locations that
are specified in your environment. There are then two additional
variables that control the manner in which PLUMED is obtained and
linked into LAMMPS.
command you must ensure that `the GNU Scientific Library (GSL)
<https://www.gnu.org/software/gsl/>` is installed in locations
that are accessible in your environment. There are then two
additional variables that control the manner in which PLUMED is
obtained and linked into LAMMPS.
.. code-block:: bash
-D DOWNLOAD_PLUMED=value # download PLUMED for build, value = no (default) or yes
-D PLUMED_MODE=value # Linkage mode for PLUMED, value = static (default), shared, or runtime
-D DOWNLOAD_PLUMED=value # download PLUMED for build
# value = no (default) or yes
-D PLUMED_MODE=value # Linkage mode for PLUMED
# value = static (default), shared,
# or runtime
If DOWNLOAD_PLUMED is set to "yes", the PLUMED library will be
If ``DOWNLOAD_PLUMED`` is set to ``yes``, the PLUMED library will be
downloaded (the version of PLUMED that will be downloaded is
hard-coded to a vetted version of PLUMED, usually a recent stable
release version) and built inside the CMake build directory. If
``DOWNLOAD_PLUMED`` is set to "no" (the default), CMake will try
to detect and link to an installed version of PLUMED. For this to
work, the PLUMED library has to be installed into a location where
the ``pkg-config`` tool can find it or the PKG_CONFIG_PATH
the ``pkg-config`` tool can find it or the ``PKG_CONFIG_PATH``
environment variable has to be set up accordingly. PLUMED should
be installed in such a location if you compile it using the
default make; make install commands.
@ -1612,14 +1766,21 @@ LAMMPS build.
.. code-block:: bash
make lib-plumed # print help message
make lib-plumed args="-b" # download and build PLUMED in lib/plumed/plumed2
make lib-plumed args="-p $HOME/.local" # use existing PLUMED installation in $HOME/.local
make lib-plumed args="-p /usr/local -m shared" # use existing PLUMED installation in
# /usr/local and use shared linkage mode
# print help message
make lib-plumed
Note that 2 symbolic (soft) links, ``includelink`` and ``liblink``
are created in lib/plumed that point to the location of the PLUMED
# download and build PLUMED in lib/plumed/plumed2
make lib-plumed args="-b"
# use existing PLUMED installation in $HOME/.local
make lib-plumed args="-p $HOME/.local"
# use existing PLUMED installation in /usr/local and
# use shared linkage mode
make lib-plumed args="-p /usr/local -m shared"
Note that two symbolic (soft) links, ``includelink`` and ``liblink``
are created in ``lib/plumed`` that point to the location of the PLUMED
build to use. A new file ``lib/plumed/Makefile.lammps`` is also
created with settings suitable for LAMMPS to compile and link
PLUMED using the desired linkage mode. After this step is
@ -1634,17 +1795,17 @@ LAMMPS build.
Once this compilation completes you should be able to run LAMMPS
in the usual way. For shared linkage mode, libplumed.so must be
found by the LAMMPS executable, which on many operating systems
means, you have to set the LD_LIBRARY_PATH environment variable
means, you have to set the ``LD_LIBRARY_PATH`` environment variable
accordingly.
Support for the different linkage modes in LAMMPS varies for
different operating systems, using the static linkage is expected
to be the most portable, and thus set to be the default.
If you want to change the linkage mode, you have to re-run "make
lib-plumed" with the desired settings **and** do a re-install if
the PLUMED package with "make yes-plumed" to update the
required makefile settings with the changes in the lib/plumed
If you want to change the linkage mode, you have to re-run ``make
lib-plumed`` with the desired settings **and** do a re-install if
the PLUMED package with ``make yes-plumed`` to update the
required makefile settings with the changes in the ``lib/plumed``
folder.
----------
@ -1718,8 +1879,10 @@ details please see ``lib/hdnnp/README`` and the `n2p2 build documentation
.. code-block:: bash
-D DOWNLOAD_N2P2=value # download n2p2 for build, value = no (default) or yes
-D N2P2_DIR=path # n2p2 base directory (only needed if a custom location)
-D DOWNLOAD_N2P2=value # download n2p2 for build
# value = no (default) or yes
-D N2P2_DIR=path # n2p2 base directory
# (only needed if a custom location)
If ``DOWNLOAD_N2P2`` is set, the *n2p2* library will be downloaded and
built inside the CMake build directory. If the *n2p2* library is already
@ -1736,12 +1899,19 @@ details please see ``lib/hdnnp/README`` and the `n2p2 build documentation
.. code-block:: bash
make lib-hdnnp # print help message
make lib-hdnnp args="-b" # download and build in lib/hdnnp/n2p2-...
make lib-hdnnp args="-b -v 2.1.4" # download and build specific version
make lib-hdnnp args="-p /usr/local/n2p2" # use the existing n2p2 installation in /usr/local/n2p2
# print help message
make lib-hdnnp
Note that 3 symbolic (soft) links, ``includelink``, ``liblink`` and
# download and build in lib/hdnnp/n2p2-...
make lib-hdnnp args="-b"
# download and build specific version
make lib-hdnnp args="-b -v 2.1.4"
# use the existing n2p2 installation in /usr/local/n2p2
make lib-hdnnp args="-p /usr/local/n2p2"
Note that three symbolic (soft) links, ``includelink``, ``liblink`` and
``Makefile.lammps``, will be created in ``lib/hdnnp`` to point to
``n2p2/include``, ``n2p2/lib`` and ``n2p2/lib/Makefile.lammps-extra``,
respectively. When LAMMPS is built in ``src`` it will use these links.
@ -1788,19 +1958,19 @@ code when using features from the INTEL package.
.. code-block:: make
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits -qopt-zmm-usage=high
CCFLAGS = -g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload -fno-alias -ansi-alias -restrict $(OPTFLAGS)
LINKFLAGS = -g -qopenmp $(OPTFLAGS)
LIB = -ltbbmalloc
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits -qopt-zmm-usage=high
CCFLAGS = -g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload -fno-alias -ansi-alias -restrict $(OPTFLAGS)
LINKFLAGS = -g -qopenmp $(OPTFLAGS)
LIB = -ltbbmalloc
For KNLs:
.. code-block:: make
OPTFLAGS = -xMIC-AVX512 -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
CCFLAGS = -g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload -fno-alias -ansi-alias -restrict $(OPTFLAGS)
LINKFLAGS = -g -qopenmp $(OPTFLAGS)
LIB = -ltbbmalloc
OPTFLAGS = -xMIC-AVX512 -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
CCFLAGS = -g -qopenmp -DLAMMPS_MEMALIGN=64 -no-offload -fno-alias -ansi-alias -restrict $(OPTFLAGS)
LINKFLAGS = -g -qopenmp $(OPTFLAGS)
LIB = -ltbbmalloc
In Long-range thread mode (LRT) a modified verlet style is used, that
operates the Kspace calculation in a separate thread concurrently to
@ -1829,7 +1999,8 @@ MDI package
.. code-block:: bash
-D DOWNLOAD_MDI=value # download MDI Library for build, value = no (default) or yes
-D DOWNLOAD_MDI=value # download MDI Library for build
# value = no (default) or yes
.. tab:: Traditional make
@ -1858,7 +2029,8 @@ MOLFILE package
.. code-block:: bash
-D MOLFILE_INCLUDE_DIR=path # (optional) path where VMD molfile plugin headers are installed
-D MOLFILE_INCLUDE_DIR=path # (optional) path where VMD molfile
# plugin headers are installed
-D PKG_MOLFILE=yes
Using ``-D PKG_MOLFILE=yes`` enables the package, and setting
@ -2017,10 +2189,17 @@ verified to work in February 2020 with Quantum Espresso versions 6.3 to
.. code-block:: bash
make lib-qmmm # print help message
make lib-qmmm args="-m serial" # build with GNU Fortran compiler (settings as in "make serial")
make lib-qmmm args="-m mpi" # build with default MPI compiler (settings as in "make mpi")
make lib-qmmm args="-m gfortran" # build with GNU Fortran compiler
# print help message
make lib-qmmm
# build with GNU Fortran compiler (settings as in "make serial")
make lib-qmmm args="-m serial"
# build with default MPI compiler (settings as in "make mpi")
make lib-qmmm args="-m mpi"
# build with GNU Fortran compiler
make lib-qmmm args="-m gfortran"
The build should produce two files: ``lib/qmmm/libqmmm.a`` and
``lib/qmmm/Makefile.lammps``. The latter is copied from an
@ -2033,10 +2212,40 @@ verified to work in February 2020 with Quantum Espresso versions 6.3 to
You can then install QMMM package and build LAMMPS in the usual
manner. After completing the LAMMPS build and compiling Quantum
ESPRESSO with external library support (via "make couple"), go
ESPRESSO with external library support (via ``make couple``), go
back to the ``lib/qmmm`` folder and follow the instructions in the
README file to build the combined LAMMPS/QE QM/MM executable
(pwqmmm.x) in the lib/qmmm folder.
(``pwqmmm.x``) in the ``lib/qmmm`` folder.
----------
.. _rheo:
RHEO package
------------
To build with this package you must have the `GNU Scientific Library
(GSL) <https://www.gnu.org/software/gsl/>` installed in locations that
are accessible in your environment. The GSL library should be at least
version 2.7.
.. tabs::
.. tab:: CMake build
If CMake cannot find the GSL library or include files, you can set:
.. code-block:: bash
-D GSL_ROOT_DIR=path # path to root of GSL installation
.. tab:: Traditional make
LAMMPS will try to auto-detect the GSL compiler and linker flags
from the corresponding ``pkg-config`` file (``gsl.pc``), otherwise
you can edit the file ``lib/rheo/Makefile.lammps``
to specify the paths and library names where indicated by comments.
This must be done **before** the package is installed.
----------
@ -2076,11 +2285,16 @@ To build with this package, you must download and build the
.. code-block:: bash
make lib-scafacos # print help message
make lib-scafacos args="-b" # download and build in lib/scafacos/scafacos-<version>
make lib-scafacos args="-p $HOME/scafacos # use existing ScaFaCoS installation in $HOME/scafacos
# print help message
make lib-scafacos
Note that 2 symbolic (soft) links, ``includelink`` and ``liblink``, are
# download and build in lib/scafacos/scafacos-<version>
make lib-scafacos args="-b"
# use existing ScaFaCoS installation in $HOME/scafacos
make lib-scafacos args="-p $HOME/scafacos
Note that two symbolic (soft) links, ``includelink`` and ``liblink``, are
created in ``lib/scafacos`` to point to the ScaFaCoS src dir. When LAMMPS
builds in src it will use these links. You should not need to edit
the ``lib/scafacos/Makefile.lammps`` file.

View File

@ -37,7 +37,7 @@ executable code from the library is copied into the calling executable.
.. tab:: CMake build
This assumes that LAMMPS has been configured without setting a
``LAMMPS_MACHINE`` name, installed with "make install", and the
``LAMMPS_MACHINE`` name, installed with ``make install``, and the
``PKG_CONFIG_PATH`` environment variable has been updated to
include the ``liblammps.pc`` file installed into the configured
destination folder. The commands to compile and link a coupled
@ -45,8 +45,8 @@ executable code from the library is copied into the calling executable.
.. code-block:: bash
mpicc -c -O $(pkgconf liblammps --cflags) caller.c
mpicxx -o caller caller.o -$(pkgconf liblammps --libs)
mpicc -c -O $(pkg-config --cflags liblammps) caller.c
mpicxx -o caller caller.o -$(pkg-config --libs liblammps)
.. tab:: Traditional make
@ -59,10 +59,10 @@ executable code from the library is copied into the calling executable.
mpicc -c -O -I${HOME}/lammps/src caller.c
mpicxx -o caller caller.o -L${HOME}/lammps/src -llammps_mpi
The *-I* argument is the path to the location of the ``library.h``
The ``-I`` argument is the path to the location of the ``library.h``
header file containing the interface to the LAMMPS C-style library
interface. The *-L* argument is the path to where the
``liblammps_mpi.a`` file is located. The *-llammps_mpi* argument
interface. The ``-L`` argument is the path to where the
``liblammps_mpi.a`` file is located. The ``-llammps_mpi`` argument
is shorthand for telling the compiler to link the file
``liblammps_mpi.a``. If LAMMPS has been built as a shared
library, then the linker will use ``liblammps_mpi.so`` instead.
@ -142,7 +142,7 @@ When linking to LAMMPS built as a shared library, the situation becomes
much simpler, as all dependent libraries and objects are either included
in the shared library or registered as a dependent library in the shared
library file. Thus, those libraries need not be specified when linking
the calling executable. Only the *-I* flags are needed. So the example
the calling executable. Only the ``-I`` flags are needed. So the example
case from above of the serial version static LAMMPS library with the
POEMS package installed becomes:
@ -155,8 +155,8 @@ POEMS package installed becomes:
.. code-block:: bash
mpicc -c -O $(pkgconf liblammps --cflags) caller.c
mpicxx -o caller caller.o -$(pkgconf --libs)
mpicc -c -O $(pkg-config --cflags liblammps) caller.c
mpicxx -o caller caller.o -$(pkg-config --libs liblammps)
.. tab:: Traditional make

View File

@ -25,7 +25,7 @@ additional tools to be available and functioning.
require adding flags like ``-std=c++11`` to enable the C++11 mode.
* A Bourne shell compatible "Unix" shell program (frequently this is ``bash``)
* A few shell utilities: ``ls``, ``mv``, ``ln``, ``rm``, ``grep``, ``sed``, ``tr``, ``cat``, ``touch``, ``diff``, ``dirname``
* Python (optional, required for ``make lib-<pkg>`` in the src
* Python (optional, required for ``make lib-<pkg>`` in the ``src``
folder). Python scripts are currently tested with python 2.7 and
3.6 to 3.11. The procedure for :doc:`building the documentation
<Build_manual>` *requires* Python 3.5 or later.

View File

@ -62,6 +62,7 @@ packages:
* :ref:`POEMS <poems>`
* :ref:`PYTHON <python>`
* :ref:`QMMM <qmmm>`
* :ref:`RHEO <rheo>`
* :ref:`SCAFACOS <scafacos>`
* :ref:`VORONOI <voronoi>`
* :ref:`VTK <vtk>`
@ -99,10 +100,10 @@ versus make.
.. code-block:: bash
cd lammps/src
make ps # check which packages are currently installed
make yes-name # install a package with name
make no-name # uninstall a package with name
make mpi # build LAMMPS with whatever packages are now installed
make ps # check which packages are currently installed
make yes-name # install a package with name
make no-name # uninstall a package with name
make mpi # build LAMMPS with whatever packages are now installed
Examples:
@ -171,18 +172,41 @@ make a copy of one of them and modify it to suit your needs.
.. code-block:: bash
cmake -C ../cmake/presets/basic.cmake [OPTIONS] ../cmake # enable just a few core packages
cmake -C ../cmake/presets/most.cmake [OPTIONS] ../cmake # enable most packages
cmake -C ../cmake/presets/download.cmake [OPTIONS] ../cmake # enable packages which download sources or potential files
cmake -C ../cmake/presets/nolib.cmake [OPTIONS] ../cmake # disable packages that do require extra libraries or tools
cmake -C ../cmake/presets/clang.cmake [OPTIONS] ../cmake # change settings to use the Clang compilers by default
cmake -C ../cmake/presets/gcc.cmake [OPTIONS] ../cmake # change settings to use the GNU compilers by default
cmake -C ../cmake/presets/intel.cmake [OPTIONS] ../cmake # change settings to use the Intel compilers by default
cmake -C ../cmake/presets/pgi.cmake [OPTIONS] ../cmake # change settings to use the PGI compilers by default
cmake -C ../cmake/presets/all_on.cmake [OPTIONS] ../cmake # enable all packages
cmake -C ../cmake/presets/all_off.cmake [OPTIONS] ../cmake # disable all packages
mingw64-cmake -C ../cmake/presets/mingw-cross.cmake [OPTIONS] ../cmake # compile with MinGW cross-compilers
cmake -C ../cmake/presets/macos-multiarch.cmake [OPTIONS] ../cmake # compile serial multi-arch binaries on macOS
# enable just a few core packages
cmake -C ../cmake/presets/basic.cmake [OPTIONS] ../cmake
# enable most packages
cmake -C ../cmake/presets/most.cmake [OPTIONS] ../cmake
# enable packages which download sources or potential files
cmake -C ../cmake/presets/download.cmake [OPTIONS] ../cmake
# disable packages that do require extra libraries or tools
cmake -C ../cmake/presets/nolib.cmake [OPTIONS] ../cmake
# change settings to use the Clang compilers by default
cmake -C ../cmake/presets/clang.cmake [OPTIONS] ../cmake
# change settings to use the GNU compilers by default
cmake -C ../cmake/presets/gcc.cmake [OPTIONS] ../cmake
# change settings to use the Intel compilers by default
cmake -C ../cmake/presets/intel.cmake [OPTIONS] ../cmake
# change settings to use the PGI compilers by default
cmake -C ../cmake/presets/pgi.cmake [OPTIONS] ../cmake
# enable all packages
cmake -C ../cmake/presets/all_on.cmake [OPTIONS] ../cmake
# disable all packages
cmake -C ../cmake/presets/all_off.cmake [OPTIONS] ../cmake
# compile with MinGW cross-compilers
mingw64-cmake -C ../cmake/presets/mingw-cross.cmake [OPTIONS] ../cmake
# compile serial multi-arch binaries on macOS
cmake -C ../cmake/presets/macos-multiarch.cmake [OPTIONS] ../cmake
Presets that have names starting with "windows" are specifically for
compiling LAMMPS :doc:`natively on Windows <Build_windows>` and
@ -208,7 +232,8 @@ Example
# GPU package and configure it for using CUDA. You can run.
mkdir build
cd build
cmake -C ../cmake/presets/most.cmake -C ../cmake/presets/nolib.cmake -D PKG_GPU=on -D GPU_API=cuda ../cmake
cmake -C ../cmake/presets/most.cmake -C ../cmake/presets/nolib.cmake \
-D PKG_GPU=on -D GPU_API=cuda ../cmake
# to add another package, say BODY to the previous configuration you can run:
cmake -D PKG_BODY=on .

View File

@ -1,3 +1,7 @@
.. raw:: latex
\clearpage
Optional build settings
=======================
@ -8,7 +12,8 @@ explains how to do this for building both with CMake and make.
* `FFT library`_ for use with the :doc:`kspace_style pppm <kspace_style>` command
* `Size of LAMMPS integer types and size limits`_
* `Read or write compressed files`_
* `Output of JPG, PNG, and move files` via the :doc:`dump image <dump_image>` or :doc:`dump movie <dump_image>` commands
* `Output of JPEG, PNG, and movie files`_ via the :doc:`dump image <dump_image>` or :doc:`dump movie <dump_image>` commands
* `Support for downloading files`_
* `Memory allocation alignment`_
* `Workaround for long long integers`_
* `Exception handling when using LAMMPS as a library`_ to capture errors
@ -19,7 +24,7 @@ explains how to do this for building both with CMake and make.
.. _cxx11:
C++11 standard compliance
------------------------------------------
-------------------------
A C++11 standard compatible compiler is a requirement for compiling LAMMPS.
LAMMPS version 3 March 2020 is the last version compatible with the previous
@ -31,12 +36,16 @@ flags to enable C++11 compliance. Example for GNU c++ 4.8.x:
CCFLAGS = -g -O3 -std=c++11
Individual packages may require compliance with a later C++ standard
like C++14 or C++17. These requirements will be documented with the
:doc:`individual packages <Packages_details>`.
----------
.. _fft:
FFT library
---------------------
-----------
When the KSPACE package is included in a LAMMPS build, the
:doc:`kspace_style pppm <kspace_style>` command performs 3d FFTs which
@ -58,8 +67,10 @@ libraries and better pipelining for packing and communication.
.. code-block:: bash
-D FFT=value # FFTW3 or MKL or KISS, default is FFTW3 if found, else KISS
-D FFT_KOKKOS=value # FFTW3 or MKL or KISS or CUFFT or HIPFFT, default is KISS
-D FFT=value # FFTW3 or MKL or KISS, default is FFTW3 if found,
# else KISS
-D FFT_KOKKOS=value # FFTW3 or MKL or KISS or CUFFT or HIPFFT,
# default is KISS
-D FFT_SINGLE=value # yes or no (default), no = double precision
-D FFT_PACK=value # array (default) or pointer or memcpy
-D FFT_USE_HEFFTE=value # yes or no (default), yes links to heFFTe
@ -67,11 +78,11 @@ libraries and better pipelining for packing and communication.
.. note::
When the Kokkos variant of a package is compiled and selected at run time,
the FFT library selected by the FFT_KOKKOS variable applies. Otherwise,
the FFT library selected by the ``FFT_KOKKOS`` variable applies. Otherwise,
the FFT library selected by the FFT variable applies.
The same FFT settings apply to both. FFT_KOKKOS must be compatible with the
The same FFT settings apply to both. ``FFT_KOKKOS`` must be compatible with the
Kokkos back end - for example, when using the CUDA back end of Kokkos,
you must use either CUFFT or KISS.
you must use either ``CUFFT`` or ``KISS``.
Usually these settings are all that is needed. If FFTW3 is
selected, then CMake will try to detect, if threaded FFTW
@ -89,7 +100,8 @@ libraries and better pipelining for packing and communication.
-D MKL_INCLUDE_DIR=path # ditto for Intel MKL library
-D FFT_MKL_THREADS=on # enable using threaded FFTs with MKL libraries
-D MKL_LIBRARY=path # path to MKL libraries
-D FFT_HEFFTE_BACKEND=value # FFTW or MKL or empty/undefined for the stock heFFTe back end
-D FFT_HEFFTE_BACKEND=value # FFTW or MKL or empty/undefined for the stock
# heFFTe back end
-D Heffte_ROOT=path # path to an existing heFFTe installation
.. note::
@ -108,30 +120,50 @@ libraries and better pipelining for packing and communication.
.. code-block:: make
FFT_INC = -DFFT_FFTW3 # -DFFT_FFTW3, -DFFT_FFTW (same as -DFFT_FFTW3), -DFFT_MKL, or -DFFT_KISS
# default is KISS if not specified
FFT_INC = -DFFT_KOKKOS_CUFFT # -DFFT_KOKKOS_{FFTW,FFTW3,MKL,CUFFT,HIPFFT,KISS}
# default is KISS if not specified
FFT_INC = -DFFT_SINGLE # do not specify for double precision
FFT_INC = -DFFT_FFTW_THREADS # enable using threaded FFTW3 libraries
FFT_INC = -DFFT_MKL_THREADS # enable using threaded FFTs with MKL libraries
FFT_INC = -DFFT_PACK_ARRAY # or -DFFT_PACK_POINTER or -DFFT_PACK_MEMCPY
# default is FFT_PACK_ARRAY if not specified
FFT_INC = -DFFT_<NAME> # where <NAME> is KISS (default), FFTW3,
# FFTW (same as FFTW3), or MKL
FFT_INC = -DFFT_KOKKOS_<NAME> # where <NAME> is KISS (default), FFTW3,
# FFTW (same as FFTW3), MKL, CUFFT, or HIPFFT
FFT_INC = -DFFT_SINGLE # do not specify for double precision
FFT_INC = -DFFT_FFTW_THREADS # enable using threaded FFTW3 libraries
FFT_INC = -DFFT_MKL_THREADS # enable using threaded FFTs with MKL libraries
FFT_INC = -DFFT_PACK_ARRAY # or -DFFT_PACK_POINTER or -DFFT_PACK_MEMCPY
# default is FFT_PACK_ARRAY if not specified
.. code-block:: make
FFT_INC = -I/usr/local/include
FFT_PATH = -L/usr/local/lib
FFT_LIB = -lhipfft # hipFFT either precision
FFT_LIB = -lcufft # cuFFT either precision
FFT_LIB = -lfftw3 # FFTW3 double precision
FFT_LIB = -lfftw3 -lfftw3_omp # FFTW3 double precision with threads (needs -DFFT_FFTW_THREADS)
FFT_LIB = -lfftw3 -lfftw3f # FFTW3 single precision
FFT_LIB = -lmkl_intel_lp64 -lmkl_sequential -lmkl_core # MKL with Intel compiler, serial interface
FFT_LIB = -lmkl_gf_lp64 -lmkl_sequential -lmkl_core # MKL with GNU compiler, serial interface
FFT_LIB = -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core # MKL with Intel compiler, threaded interface
FFT_LIB = -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core # MKL with GNU compiler, threaded interface
FFT_LIB = -lmkl_rt # MKL with automatic runtime selection of interface libs
FFT_INC = -I/usr/local/include
FFT_PATH = -L/usr/local/lib
# hipFFT either precision
FFT_LIB = -lhipfft
# cuFFT either precision
FFT_LIB = -lcufft
# FFTW3 double precision
FFT_LIB = -lfftw3
# FFTW3 double precision with threads (needs -DFFT_FFTW_THREADS)
FFT_LIB = -lfftw3 -lfftw3_omp
# FFTW3 single precision
FFT_LIB = -lfftw3 -lfftw3f
# serial MKL with Intel compiler
FFT_LIB = -lmkl_intel_lp64 -lmkl_sequential -lmkl_core
# serial MKL with GNU compiler
FFT_LIB = -lmkl_gf_lp64 -lmkl_sequential -lmkl_core
# threaded MKL with Intel compiler
FFT_LIB = -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core
# threaded MKL with GNU compiler
FFT_LIB = -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core
# MKL with automatic runtime selection of interface libs
FFT_LIB = -lmkl_rt
As with CMake, you do not need to set paths in ``FFT_INC`` or
``FFT_PATH``, if the compiler can find the FFT header and library
@ -147,11 +179,11 @@ libraries and better pipelining for packing and communication.
FFT_PATH =
FFT_LIB = $(heffte_link) $(heffte_libs)
The heFFTe install path will contain `HeffteMakefile.in`.
which will define the `heffte_` include variables needed to link to heFFTe from
The heFFTe install path will contain ``HeffteMakefile.in``.
which will define the ``heffte_`` include variables needed to link to heFFTe from
an external project using traditional make.
The `-DFFT_HEFFTE` is required to switch to using heFFTe, while the optional `-DFFT_HEFFTE_FFTW`
selects the desired heFFTe back end, e.g., `-DFFT_HEFFTE_FFTW` or `-DFFT_HEFFTE_MKL`,
The ``-DFFT_HEFFTE`` is required to switch to using heFFTe, while the optional ``-DFFT_HEFFTE_FFTW``
selects the desired heFFTe back end, e.g., ``-DFFT_HEFFTE_FFTW`` or ``-DFFT_HEFFTE_MKL``,
omitting the variable will default to the `stock` back end.
The heFFTe `stock` back end is intended to be used for testing and debugging,
but is not performance optimized for large scale production runs.
@ -179,7 +211,7 @@ it from `www.fftw.org <https://www.fftw.org>`_. LAMMPS requires version
Building FFTW for your box should be as simple as ``./configure; make;
make install``. The install command typically requires root privileges
(e.g. invoke it via sudo), unless you specify a local directory with
the "--prefix" option of configure. Type ``./configure --help`` to see
the ``--prefix`` option of configure. Type ``./configure --help`` to see
various options.
The Intel MKL math library is part of the Intel compiler suite. It
@ -215,7 +247,7 @@ produce the additional libraries ``libfftw3f.a`` and/or ``libfftw3f.so``\ .
Performing 3d FFTs requires communication to transpose the 3d FFT
grid. The data packing/unpacking for this can be done in one of 3
modes (ARRAY, POINTER, MEMCPY) as set by the FFT_PACK syntax above.
modes (ARRAY, POINTER, MEMCPY) as set by the ``FFT_PACK`` syntax above.
Depending on the machine, the size of the FFT grid, the number of
processors used, one option may be slightly faster. The default is
ARRAY mode.
@ -232,6 +264,10 @@ and those variables will be passed into the heFFTe build.
----------
.. raw:: latex
\clearpage
.. _size:
Size of LAMMPS integer types and size limits
@ -272,7 +308,7 @@ LAMMPS system size restrictions
.. list-table::
:header-rows: 1
:widths: auto
:widths: 18 27 28 27
:align: center
* -
@ -341,8 +377,8 @@ in whichever ``lib/gpu/Makefile`` is used must be the same as above.
.. _graphics:
Output of JPG, PNG, and movie files
--------------------------------------------------
Output of JPEG, PNG, and movie files
------------------------------------
The :doc:`dump image <dump_image>` command has options to output JPEG or
PNG image files. Likewise, the :doc:`dump movie <dump_image>` command
@ -355,12 +391,13 @@ requires the following settings:
.. code-block:: bash
-D WITH_JPEG=value # yes or no
# default = yes if CMake finds JPEG files, else no
-D WITH_PNG=value # yes or no
# default = yes if CMake finds PNG and ZLIB files, else no
-D WITH_FFMPEG=value # yes or no
# default = yes if CMake can find ffmpeg, else no
-D WITH_JPEG=value # yes or no
# default = yes if CMake finds JPEG development files, else no
-D WITH_PNG=value # yes or no
# default = yes if CMake finds PNG and ZLIB development files,
# else no
-D WITH_FFMPEG=value # yes or no
# default = yes if CMake can find ffmpeg, else no
Usually these settings are all that is needed. If CMake cannot
find the graphics header, library, executable files, you can set
@ -382,8 +419,10 @@ requires the following settings:
LMP_INC = -DLAMMPS_JPEG -DLAMMPS_PNG -DLAMMPS_FFMPEG <other LMP_INC settings>
JPG_INC = -I/usr/local/include # path to jpeglib.h, png.h, zlib.h header files if make cannot find them
JPG_PATH = -L/usr/lib # paths to libjpeg.a, libpng.a, libz.a (.so) files if make cannot find them
JPG_INC = -I/usr/local/include # path to jpeglib.h, png.h, zlib.h headers
# if make cannot find them
JPG_PATH = -L/usr/lib # paths to libjpeg.a, libpng.a, libz.a (.so)
# files if make cannot find them
JPG_LIB = -ljpeg -lpng -lz # library names
As with CMake, you do not need to set ``JPG_INC`` or ``JPG_PATH``,
@ -414,8 +453,8 @@ Read or write compressed files
If this option is enabled, large files can be read or written with
compression by ``gzip`` or similar tools by several LAMMPS commands,
including :doc:`read_data <read_data>`, :doc:`rerun <rerun>`, and
:doc:`dump <dump>`. Supported compression tools are currently
``gzip``, ``bzip2``, ``zstd``, and ``lzma``.
:doc:`dump <dump>`. Supported compression tools and algorithms are currently
``gzip``, ``bzip2``, ``zstd``, ``xz``, ``lz4``, and ``lzma`` (via xz).
.. tabs::
@ -423,8 +462,8 @@ including :doc:`read_data <read_data>`, :doc:`rerun <rerun>`, and
.. code-block:: bash
-D WITH_GZIP=value # yes or no
# default is yes if CMake can find the gzip program, else no
-D WITH_GZIP=value # yes or no
# default is yes if CMake can find the gzip program
.. tab:: Traditional make
@ -446,18 +485,64 @@ during a run.
available using a compression library instead, which is what the
:ref:`COMPRESS package <PKG-COMPRESS>` enables.
--------------------------------------------------
.. _libcurl:
Support for downloading files
-----------------------------
.. versionadded:: 29Aug2024
The :doc:`geturl command <geturl>` command uses the `the libcurl library
<https://curl.se/libcurl/>`_ to download files. This requires that
LAMMPS is compiled accordingly which needs the following settings:
.. tabs::
.. tab:: CMake build
.. code-block:: bash
-D WITH_CURL=value # yes or no
# default = yes if CMake finds CURL development files, else no
Usually these settings are all that is needed. If CMake cannot
find the graphics header, library, executable files, you can set
these variables:
.. code-block:: bash
-D CURL_INCLUDE_DIR=path # path to folder which contains curl.h header file
-D CURL_LIBRARY=path # path to libcurls.a (.so) file
.. tab:: Traditional make
.. code-block:: make
LMP_INC = -DLAMMPS_CURL <other LMP_INC settings>
CURL_INC = -I/usr/local/include # path to curl folder with curl.h
CURL_PATH = -L/usr/lib # paths to libcurl.a(.so) if make cannot find it
CURL_LIB = -lcurl # library names
As with CMake, you do not need to set ``CURL_INC`` or ``CURL_PATH``,
if make can find the libcurl header and library files in their
default system locations. You must specify ``CURL_LIB`` with a
paths or linker flags to link to libcurl.
----------
.. _align:
Memory allocation alignment
---------------------------------------
---------------------------
This setting enables the use of the "posix_memalign()" call instead of
"malloc()" when LAMMPS allocates large chunks of memory. Vector
This setting enables the use of the ``posix_memalign()`` call instead of
``malloc()`` when LAMMPS allocates large chunks of memory. Vector
instructions on CPUs may become more efficient, if dynamically allocated
memory is aligned on larger-than-default byte boundaries. On most
current operating systems, the "malloc()" implementation returns
current operating systems, the ``malloc()`` implementation returns
pointers that are aligned to 16-byte boundaries. Using SSE vector
instructions efficiently, however, requires memory blocks being aligned
on 64-byte boundaries.
@ -471,9 +556,9 @@ on 64-byte boundaries.
-D LAMMPS_MEMALIGN=value # 0, 8, 16, 32, 64 (default)
Use a ``LAMMPS_MEMALIGN`` value of 0 to disable using
"posix_memalign()" and revert to using the "malloc()" C-library
``posix_memalign()`` and revert to using the ``malloc()`` C-library
function instead. When compiling LAMMPS for Windows systems,
"malloc()" will always be used and this setting is ignored.
``malloc()`` will always be used and this setting is ignored.
.. tab:: Traditional make
@ -482,7 +567,7 @@ on 64-byte boundaries.
LMP_INC = -DLAMMPS_MEMALIGN=value # 8, 16, 32, 64
Do not set ``-DLAMMPS_MEMALIGN``, if you want to have memory
allocated with the "malloc()" function call
allocated with the ``malloc()`` function call
instead. ``-DLAMMPS_MEMALIGN`` **cannot** be used on Windows, as
Windows different function calls with different semantics for
allocating aligned memory, that are not compatible with how LAMMPS

View File

@ -1,26 +1,30 @@
.. table_from_list::
:columns: 3
.. only:: html
* :doc:`General commands <Commands_all>`
* :doc:`Fix styles <Commands_fix>`
* :doc:`Compute styles <Commands_compute>`
* :doc:`Pair styles <Commands_pair>`
* :ref:`Bond styles <bond>`
* :ref:`Angle styles <angle>`
* :ref:`Dihedral styles <dihedral>`
* :ref:`Improper styles <improper>`
* :doc:`KSpace styles <Commands_kspace>`
* :doc:`Dump styles <Commands_dump>`
.. table_from_list::
:columns: 5
* :doc:`General commands <Commands_all>`
* :doc:`Fix styles <Commands_fix>`
* :doc:`Compute styles <Commands_compute>`
* :doc:`Pair styles <Commands_pair>`
* :ref:`Bond styles <bond>`
* :ref:`Angle styles <angle>`
* :ref:`Dihedral styles <dihedral>`
* :ref:`Improper styles <improper>`
* :doc:`KSpace styles <Commands_kspace>`
* :doc:`Dump styles <Commands_dump>`
.. raw:: latex
\clearpage
General commands
================
An alphabetic list of general LAMMPS commands. Note that style
commands with many variants, can be more easily accessed via the small
table above.
An alphabetic list of general LAMMPS commands.
.. table_from_list::
:columns: 5
:columns: 6
* :doc:`angle_coeff <angle_coeff>`
* :doc:`angle_style <angle_style>`
@ -54,6 +58,7 @@ table above.
* :doc:`echo <echo>`
* :doc:`fix <fix>`
* :doc:`fix_modify <fix_modify>`
* :doc:`geturl <geturl>`
* :doc:`group <group>`
* :doc:`if <if>`
* :doc:`improper_coeff <improper_coeff>`
@ -121,7 +126,7 @@ commands have accelerated versions. This is indicated by an
additional letter in parenthesis: k = KOKKOS.
.. table_from_list::
:columns: 5
:columns: 6
* :doc:`dynamical_matrix (k) <dynamical_matrix>`
* :doc:`group2ndx <group2ndx>`

View File

@ -1,21 +1,7 @@
.. table_from_list::
:columns: 3
* :doc:`General commands <Commands_all>`
* :doc:`Fix styles <Commands_fix>`
* :doc:`Compute styles <Commands_compute>`
* :doc:`Pair styles <Commands_pair>`
* :ref:`Bond styles <bond>`
* :ref:`Angle styles <angle>`
* :ref:`Dihedral styles <dihedral>`
* :ref:`Improper styles <improper>`
* :doc:`KSpace styles <Commands_kspace>`
* :doc:`Dump styles <Commands_dump>`
.. _bond:
Bond_style potentials
=====================
Bond styles
===========
All LAMMPS :doc:`bond_style <bond_style>` commands. Some styles have
accelerated versions. This is indicated by additional letters in
@ -23,11 +9,13 @@ parenthesis: g = GPU, i = INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
:columns: 4
:columns: 5
* :doc:`none <bond_none>`
* :doc:`zero <bond_zero>`
* :doc:`hybrid <bond_hybrid>`
* :doc:`hybrid (k) <bond_hybrid>`
*
*
*
*
*
@ -54,13 +42,14 @@ OPT.
* :doc:`oxdna2/fene <bond_oxdna>`
* :doc:`oxrna2/fene <bond_oxdna>`
* :doc:`quartic (o) <bond_quartic>`
* :doc:`rheo/shell <bond_rheo_shell>`
* :doc:`special <bond_special>`
* :doc:`table (o) <bond_table>`
.. _angle:
Angle_style potentials
======================
Angle styles
============
All LAMMPS :doc:`angle_style <angle_style>` commands. Some styles have
accelerated versions. This is indicated by additional letters in
@ -68,11 +57,13 @@ parenthesis: g = GPU, i = INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
:columns: 4
:columns: 5
* :doc:`none <angle_none>`
* :doc:`zero <angle_zero>`
* :doc:`hybrid <angle_hybrid>`
* :doc:`hybrid (k) <angle_hybrid>`
*
*
*
*
*
@ -100,13 +91,13 @@ OPT.
* :doc:`mesocnt <angle_mesocnt>`
* :doc:`mm3 <angle_mm3>`
* :doc:`quartic (o) <angle_quartic>`
* :doc:`spica (o) <angle_spica>`
* :doc:`spica (ko) <angle_spica>`
* :doc:`table (o) <angle_table>`
.. _dihedral:
Dihedral_style potentials
=========================
Dihedral styles
===============
All LAMMPS :doc:`dihedral_style <dihedral_style>` commands. Some styles
have accelerated versions. This is indicated by additional letters in
@ -114,11 +105,13 @@ parenthesis: g = GPU, i = INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
:columns: 4
:columns: 5
* :doc:`none <dihedral_none>`
* :doc:`zero <dihedral_zero>`
* :doc:`hybrid <dihedral_hybrid>`
* :doc:`hybrid (k) <dihedral_hybrid>`
*
*
*
*
*
@ -143,8 +136,8 @@ OPT.
.. _improper:
Improper_style potentials
=========================
Improper styles
===============
All LAMMPS :doc:`improper_style <improper_style>` commands. Some styles
have accelerated versions. This is indicated by additional letters in
@ -152,11 +145,13 @@ parenthesis: g = GPU, i = INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
:columns: 4
:columns: 5
* :doc:`none <improper_none>`
* :doc:`zero <improper_zero>`
* :doc:`hybrid <improper_hybrid>`
* :doc:`hybrid (k) <improper_hybrid>`
*
*
*
*
*

View File

@ -1,3 +1,7 @@
.. raw:: latex
\clearpage
Commands by category
====================
@ -6,8 +10,8 @@ This page lists most of the LAMMPS commands, grouped by category. The
alphabetically. Style options for entries like fix, compute, pair etc.
have their own pages where they are listed alphabetically.
Initialization:
------------------------------
Initialization
--------------
.. table_from_list::
:columns: 5
@ -18,8 +22,8 @@ Initialization:
* :doc:`suffix <suffix>`
* :doc:`units <units>`
Setup simulation box:
------------------------------
Setup simulation box
--------------------
.. table_from_list::
:columns: 4
@ -31,8 +35,8 @@ Setup simulation box:
* :doc:`lattice <lattice>`
* :doc:`region <region>`
Setup atoms:
------------------------------
Setup atoms
-----------
.. table_from_list::
:columns: 4
@ -55,8 +59,8 @@ Setup atoms:
* :doc:`set <set>`
* :doc:`velocity <velocity>`
Force fields:
------------------------------
Force fields
------------
.. table_from_list::
:columns: 4
@ -79,8 +83,8 @@ Force fields:
* :doc:`pair_write <pair_write>`
* :doc:`special_bonds <special_bonds>`
Settings:
------------------------------
Settings
--------
.. table_from_list::
:columns: 4
@ -98,8 +102,8 @@ Settings:
* :doc:`timer <timer>`
* :doc:`timestep <timestep>`
Operations within timestepping (fixes) and diagnostics (computes):
------------------------------------------------------------------------------------------
Operations within timestepping (fixes) and diagnostics (computes)
-----------------------------------------------------------------
.. table_from_list::
:columns: 4
@ -111,8 +115,8 @@ Operations within timestepping (fixes) and diagnostics (computes):
* :doc:`uncompute <uncompute>`
* :doc:`unfix <unfix>`
Output:
------------------------------
Output
------
.. table_from_list::
:columns: 4
@ -131,8 +135,8 @@ Output:
* :doc:`write_dump <write_dump>`
* :doc:`write_restart <write_restart>`
Actions:
------------------------------
Actions
-------
.. table_from_list::
:columns: 6
@ -146,8 +150,8 @@ Actions:
* :doc:`tad <tad>`
* :doc:`temper <temper>`
Input script control:
------------------------------
Input script control
--------------------
.. table_from_list::
:columns: 7

View File

@ -1,19 +1,5 @@
.. table_from_list::
:columns: 3
* :doc:`General commands <Commands_all>`
* :doc:`Fix styles <Commands_fix>`
* :doc:`Compute styles <Commands_compute>`
* :doc:`Pair styles <Commands_pair>`
* :ref:`Bond styles <bond>`
* :ref:`Angle styles <angle>`
* :ref:`Dihedral styles <dihedral>`
* :ref:`Improper styles <improper>`
* :doc:`KSpace styles <Commands_kspace>`
* :doc:`Dump styles <Commands_dump>`
Compute commands
================
Compute styles
==============
An alphabetic list of all LAMMPS :doc:`compute <compute>` commands.
Some styles have accelerated versions. This is indicated by
@ -21,7 +7,7 @@ additional letters in parenthesis: g = GPU, i = INTEL, k =
KOKKOS, o = OPENMP, t = OPT.
.. table_from_list::
:columns: 5
:columns: 4
* :doc:`ackland/atom <compute_ackland_atom>`
* :doc:`adf <compute_adf>`
@ -108,6 +94,10 @@ KOKKOS, o = OPENMP, t = OPT.
* :doc:`pe/mol/tally <compute_tally>`
* :doc:`pe/tally <compute_tally>`
* :doc:`plasticity/atom <compute_plasticity_atom>`
* :doc:`pod/atom <compute_pod_atom>`
* :doc:`podd/atom <compute_pod_atom>`
* :doc:`pod/local <compute_pod_atom>`
* :doc:`pod/global <compute_pod_atom>`
* :doc:`pressure <compute_pressure>`
* :doc:`pressure/alchemy <compute_pressure_alchemy>`
* :doc:`pressure/uef <compute_pressure_uef>`
@ -122,6 +112,7 @@ KOKKOS, o = OPENMP, t = OPT.
* :doc:`reduce <compute_reduce>`
* :doc:`reduce/chunk <compute_reduce_chunk>`
* :doc:`reduce/region <compute_reduce>`
* :doc:`rheo/property/atom <compute_rheo_property_atom>`
* :doc:`rigid/local <compute_rigid_local>`
* :doc:`saed <compute_saed>`
* :doc:`slcsa/atom <compute_slcsa_atom>`

View File

@ -1,24 +1,10 @@
.. table_from_list::
:columns: 3
* :doc:`General commands <Commands_all>`
* :doc:`Fix styles <Commands_fix>`
* :doc:`Compute styles <Commands_compute>`
* :doc:`Pair styles <Commands_pair>`
* :ref:`Bond styles <bond>`
* :ref:`Angle styles <angle>`
* :ref:`Dihedral styles <dihedral>`
* :ref:`Improper styles <improper>`
* :doc:`KSpace styles <Commands_kspace>`
* :doc:`Dump styles <Commands_dump>`
Dump commands
=============
Dump styles
===========
An alphabetic list of all LAMMPS :doc:`dump <dump>` commands.
.. table_from_list::
:columns: 5
:columns: 6
* :doc:`atom <dump>`
* :doc:`atom/adios <dump_adios>`

View File

@ -1,19 +1,5 @@
.. table_from_list::
:columns: 3
* :doc:`General commands <Commands_all>`
* :doc:`Fix styles <Commands_fix>`
* :doc:`Compute styles <Commands_compute>`
* :doc:`Pair styles <Commands_pair>`
* :ref:`Bond styles <bond>`
* :ref:`Angle styles <angle>`
* :ref:`Dihedral styles <dihedral>`
* :ref:`Improper styles <improper>`
* :doc:`KSpace styles <Commands_kspace>`
* :doc:`Dump styles <Commands_dump>`
Fix commands
============
Fix styles
==========
An alphabetic list of all LAMMPS :doc:`fix <fix>` commands. Some styles
have accelerated versions. This is indicated by additional letters in
@ -21,13 +7,14 @@ parenthesis: g = GPU, i = INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
:columns: 5
:columns: 4
* :doc:`accelerate/cos <fix_accelerate_cos>`
* :doc:`acks2/reaxff (k) <fix_acks2_reaxff>`
* :doc:`adapt <fix_adapt>`
* :doc:`adapt/fep <fix_adapt_fep>`
* :doc:`addforce <fix_addforce>`
* :doc:`add/heat <fix_add_heat>`
* :doc:`addtorque <fix_addtorque>`
* :doc:`alchemy <fix_alchemy>`
* :doc:`amoeba/bitorsion <fix_amoeba_bitorsion>`
@ -204,6 +191,11 @@ OPT.
* :doc:`reaxff/species (k) <fix_reaxff_species>`
* :doc:`recenter <fix_recenter>`
* :doc:`restrain <fix_restrain>`
* :doc:`rheo <fix_rheo>`
* :doc:`rheo/oxidation <fix_rheo_oxidation>`
* :doc:`rheo/pressure <fix_rheo_pressure>`
* :doc:`rheo/thermal <fix_rheo_thermal>`
* :doc:`rheo/viscosity <fix_rheo_viscosity>`
* :doc:`rhok <fix_rhok>`
* :doc:`rigid (o) <fix_rigid>`
* :doc:`rigid/meso <fix_rigid_meso>`

View File

@ -10,14 +10,14 @@ for any commands that may be processed later. Commands may set an
internal variable, read in a file, or run a simulation. These actions
can be grouped into three categories:
a) commands that change a global setting (examples: timestep, newton,
echo, log, thermo, restart),
a) commands that change a global setting (examples: :doc:`timestep <timestep>`, :doc:`newton <newton>`,
:doc:`echo <echo>`, :doc:`log <log>`, :doc:`thermo <thermo>`, :doc:`restart <restart>`),
b) commands that add, modify, remove, or replace "styles" that are
executed during a "run" (examples: pair_style, fix, compute, dump,
thermo_style, pair_modify), and
executed during a "run" (examples: :doc:`pair_style <pair_style>`, :doc:`fix <fix>`, :doc:`compute <compute>`, :doc:`dump <dump>`,
:doc:`thermo_style <thermo_style>`, :doc:`pair_modify <pair_modify>`), and
c) commands that execute a "run" or perform some other computation or
operation (examples: print, run, minimize, temper, write_dump, rerun,
read_data, read_restart)
operation (examples: :doc:`print <print>`, :doc:`run <run>`, :doc:`minimize <minimize>`, :doc:`temper <temper>`, :doc:`write_dump <write_dump>`, :doc:`rerun <rerun>`,
:doc:`read_data <read_data>`, :doc:`read_restart <read_restart>`)
Commands in category a) have default settings, which means you only
need to use the command if you wish to change the defaults.
@ -61,7 +61,7 @@ between commands in the c) category. The following rules apply:
<read_data>` command initializes the system by setting up the
simulation box and assigning atoms to processors. If default values
are not desired, the :doc:`processors <processors>` and
:doc:`boundary <boundary>` commands need to be used before read_data
:doc:`boundary <boundary>` commands need to be used before ``read_data``
to tell LAMMPS how to map processors to the simulation box.
Many input script errors are detected by LAMMPS and an ERROR or
@ -70,6 +70,6 @@ more information on what errors mean. The documentation for each
command lists restrictions on how the command can be used.
You can use the :ref:`-skiprun <skiprun>` command line flag
to have LAMMPS skip the execution of any "run", "minimize", or similar
to have LAMMPS skip the execution of any ``run``, ``minimize``, or similar
commands to check the entire input for correct syntax to avoid crashes
on typos or syntax errors in long runs.

View File

@ -1,19 +1,5 @@
.. table_from_list::
:columns: 3
* :doc:`General commands <Commands_all>`
* :doc:`Fix styles <Commands_fix>`
* :doc:`Compute styles <Commands_compute>`
* :doc:`Pair styles <Commands_pair>`
* :ref:`Bond styles <bond>`
* :ref:`Angle styles <angle>`
* :ref:`Dihedral styles <dihedral>`
* :ref:`Improper styles <improper>`
* :doc:`KSpace styles <Commands_kspace>`
* :doc:`Dump styles <Commands_dump>`
KSpace solvers
==============
KSpace styles
=============
All LAMMPS :doc:`kspace_style <kspace_style>` solvers. Some styles have
accelerated versions. This is indicated by additional letters in
@ -21,7 +7,7 @@ parenthesis: g = GPU, i = INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
:columns: 4
:columns: 5
* :doc:`ewald (o) <kspace_style>`
* :doc:`ewald/disp <kspace_style>`

View File

@ -1,19 +1,5 @@
.. table_from_list::
:columns: 3
* :doc:`General commands <Commands_all>`
* :doc:`Fix styles <Commands_fix>`
* :doc:`Compute styles <Commands_compute>`
* :doc:`Pair styles <Commands_pair>`
* :ref:`Bond styles <bond>`
* :ref:`Angle styles <angle>`
* :ref:`Dihedral styles <dihedral>`
* :ref:`Improper styles <improper>`
* :doc:`KSpace styles <Commands_kspace>`
* :doc:`Dump styles <Commands_dump>`
Pair_style potentials
======================
Pair styles
===========
All LAMMPS :doc:`pair_style <pair_style>` commands. Some styles have
accelerated versions. This is indicated by additional letters in
@ -21,20 +7,20 @@ parenthesis: g = GPU, i = INTEL, k = KOKKOS, o = OPENMP, t =
OPT.
.. table_from_list::
:columns: 4
:columns: 3
* :doc:`none <pair_none>`
* :doc:`zero <pair_zero>`
* :doc:`hybrid (k) <pair_hybrid>`
* :doc:`hybrid/overlay (k) <pair_hybrid>`
* :doc:`hybrid/scaled <pair_hybrid>`
* :doc:`hybrid (ko) <pair_hybrid>`
* :doc:`hybrid/molecular (o) <pair_hybrid>`
* :doc:`hybrid/overlay (ko) <pair_hybrid>`
* :doc:`hybrid/scaled (o) <pair_hybrid>`
* :doc:`kim <pair_kim>`
* :doc:`list <pair_list>`
* :doc:`tracker <pair_tracker>`
*
*
*
*
* :doc:`adp (ko) <pair_adp>`
* :doc:`agni (o) <pair_agni>`
* :doc:`aip/water/2dm (t) <pair_aip_water_2dm>`
@ -94,9 +80,10 @@ OPT.
* :doc:`coul/wolf (ko) <pair_coul>`
* :doc:`coul/wolf/cs <pair_cs>`
* :doc:`dpd (giko) <pair_dpd>`
* :doc:`dpd/fdt <pair_dpd_fdt>`
* :doc:`dpd/coul/slater/long (g) <pair_dpd_coul_slater_long>`
* :doc:`dpd/ext (ko) <pair_dpd_ext>`
* :doc:`dpd/ext/tstat (ko) <pair_dpd_ext>`
* :doc:`dpd/fdt <pair_dpd_fdt>`
* :doc:`dpd/fdt/energy (k) <pair_dpd_fdt>`
* :doc:`dpd/tstat (gko) <pair_dpd>`
* :doc:`dsmc <pair_dsmc>`
@ -190,7 +177,7 @@ OPT.
* :doc:`lj/mdf <pair_mdf>`
* :doc:`lj/relres (o) <pair_lj_relres>`
* :doc:`lj/spica (gko) <pair_spica>`
* :doc:`lj/spica/coul/long (go) <pair_spica>`
* :doc:`lj/spica/coul/long (gko) <pair_spica>`
* :doc:`lj/spica/coul/msm (o) <pair_spica>`
* :doc:`lj/sf/dipole/sf (go) <pair_dipole>`
* :doc:`lj/smooth (go) <pair_lj_smooth>`
@ -246,7 +233,7 @@ OPT.
* :doc:`pace (k) <pair_pace>`
* :doc:`pace/extrapolation (k) <pair_pace>`
* :doc:`pedone (o) <pair_pedone>`
* :doc:`pod <pair_pod>`
* :doc:`pod (k) <pair_pod>`
* :doc:`peri/eps <pair_peri>`
* :doc:`peri/lps (o) <pair_peri>`
* :doc:`peri/pmb (o) <pair_peri>`
@ -259,6 +246,8 @@ OPT.
* :doc:`rebo (io) <pair_airebo>`
* :doc:`rebomos (o) <pair_rebomos>`
* :doc:`resquared (go) <pair_resquared>`
* :doc:`rheo <pair_rheo>`
* :doc:`rheo/solid <pair_rheo_solid>`
* :doc:`saip/metal (t) <pair_saip_metal>`
* :doc:`sdpd/taitwater/isothermal <pair_sdpd_taitwater_isothermal>`
* :doc:`smatb <pair_smatb>`
@ -269,7 +258,7 @@ OPT.
* :doc:`smd/ulsph <pair_smd_ulsph>`
* :doc:`smtbq <pair_smtbq>`
* :doc:`snap (ik) <pair_snap>`
* :doc:`soft (go) <pair_soft>`
* :doc:`soft (gko) <pair_soft>`
* :doc:`sph/heatconduction (g) <pair_sph_heatconduction>`
* :doc:`sph/idealgas <pair_sph_idealgas>`
* :doc:`sph/lj (g) <pair_sph_lj>`
@ -303,6 +292,7 @@ OPT.
* :doc:`tip4p/long/soft (o) <pair_fep_soft>`
* :doc:`tri/lj <pair_tri_lj>`
* :doc:`ufm (got) <pair_ufm>`
* :doc:`uf3 (k) <pair_uf3>`
* :doc:`vashishta (gko) <pair_vashishta>`
* :doc:`vashishta/table (o) <pair_vashishta>`
* :doc:`wf/cut <pair_wf_cut>`

View File

@ -42,8 +42,8 @@ LAMMPS:
If the $ is followed by text in curly brackets '{}', then the
variable name is the text inside the curly brackets. If no curly
brackets follow the $, then the variable name is the single character
immediately following the $. Thus ${myTemp} and $x refer to variables
named "myTemp" and "x", while "$xx" will be interpreted as a variable
immediately following the $. Thus ``${myTemp}`` and ``$x`` refer to variables
named "myTemp" and "x", while ``$xx`` will be interpreted as a variable
named "x" followed by an "x" character.
How the variable is converted to a text string depends on what style
@ -79,10 +79,10 @@ LAMMPS:
Additionally, the entire "immediate" variable expression may be
followed by a colon, followed by a C-style format string,
e.g. ":%f" or ":%.10g". The format string must be appropriate for
e.g. ``:%f`` or ``:%.10g``. The format string must be appropriate for
a double-precision floating-point value. The format string is used
to output the result of the variable expression evaluation. If a
format string is not specified, a high-precision "%.20g" is used as
format string is not specified, a high-precision ``%.20g`` is used as
the default format.
This can be useful for formatting print output to a desired precision:
@ -101,8 +101,8 @@ LAMMPS:
variable b2 equal 4
print "B2 = ${b$a}"
Nor can you specify an expression like "$($x-1.0)" for an immediate
variable, but you could use $(v_x-1.0), since the latter is valid
Nor can you specify an expression like ``$($x-1.0)`` for an immediate
variable, but you could use ``$(v_x-1.0)``, since the latter is valid
syntax for an :doc:`equal-style variable <variable>`.
See the :doc:`variable <variable>` command for more details of how

View File

@ -8,6 +8,18 @@ stop LAMMPS and print a suitable error message in most cases, when a
style/command is used that has been removed or will replace the command
with the direct alternative (if available) and print a warning.
restart2data tool
-----------------
.. versionchanged:: 23Nov2013
The functionality of the restart2data tool has been folded into the
LAMMPS executable directly instead of having a separate tool. A
combination of the commands :doc:`read_restart <read_restart>` and
:doc:`write_data <write_data>` can be used to the same effect. For
added convenience this conversion can also be triggered by
:doc:`command line flags <Run_options>`
Fix ave/spatial and fix ave/spatial/sphere
------------------------------------------
@ -148,12 +160,19 @@ performance characteristics on NVIDIA GPUs. Both, the KOKKOS
and the :ref:`GPU package <PKG-GPU>` are maintained
and allow running LAMMPS with GPU acceleration.
restart2data tool
-----------------
i-PI tool
---------
.. versionchanged:: 27Jun2024
The i-PI tool has been removed from the LAMMPS distribution. Instead,
instructions to install i-PI from PyPI via pip are provided.
LAMMPS shell
------------
.. versionchanged:: 29Aug2024
The LAMMPS shell has been removed from the LAMMPS distribution. Users
are encouraged to use the :ref:`LAMMPS-GUI <lammps_gui>` tool instead.
The functionality of the restart2data tool has been folded into the
LAMMPS executable directly instead of having a separate tool. A
combination of the commands :doc:`read_restart <read_restart>` and
:doc:`write_data <write_data>` can be used to the same effect. For
added convenience this conversion can also be triggered by
:doc:`command line flags <Run_options>`

View File

@ -8,10 +8,10 @@ page.
A LAMMPS input script typically has 4 parts:
1. :ref:`Initialization <init>`
2. :ref:`System definition <system>`
3. :ref:`Simulation settings <settings>`
4. :ref:`Run a simulation <run>`
#. :ref:`Initialization <init>`
#. :ref:`System definition <system>`
#. :ref:`Simulation settings <settings>`
#. :ref:`Run a simulation <run>`
The last 2 parts can be repeated as many times as desired. I.e. run a
simulation, change some settings, run some more, etc. Each of the 4

View File

@ -2,7 +2,7 @@ Accessing per-atom data
-----------------------
This page discusses how per-atom data is managed in LAMMPS, how it can
be accessed, what communication patters apply, and some of the utility
be accessed, what communication patterns apply, and some of the utility
functions that exist for a variety of purposes.
@ -14,11 +14,11 @@ As described on the :doc:`parallel partitioning algorithms
simulation domain, either in a *brick* or *tiled* manner. Each MPI
process *owns* exactly one subdomain and the atoms within it. To compute
forces for tuples of atoms that are spread across sub-domain boundaries,
also a "halo" of *ghost* atoms are maintained within a the communication
also a "halo" of *ghost* atoms are maintained within the communication
cutoff distance of its subdomain.
The total number of atoms is stored in `Atom::natoms` (within any
typical class this can be referred to at `atom->natoms`. The number of
typical class this can be referred to at `atom->natoms`). The number of
*owned* (or "local" atoms) are stored in `Atom::nlocal`; the number of
*ghost* atoms is stored in `Atom::nghost`. The sum of `Atom::nlocal`
over all MPI processes should be `Atom::natoms`. This is by default
@ -27,8 +27,8 @@ LAMMPS stops with a "lost atoms" error. For convenience also the
property `Atom::nmax` is available, this is the maximum of
`Atom::nlocal + Atom::nghost` across all MPI processes.
Per-atom properties are either managed by the atom style, or individual
classes. or as custom arrays by the individual classes. If only access
Per-atom properties are either managed by the atom style, individual
classes, or as custom arrays by the individual classes. If only access
to *owned* atoms is needed, they are usually allocated to be of size
`Atom::nlocal`, otherwise of size `Atom::nmax`. Please note that not all
per-atom properties are available or updated on *ghost* atoms. For
@ -61,7 +61,7 @@ can be found via the `Atom::sametag` array. It points to the next atom
index with the same tag or -1 if there are no more atoms with the same
tag. The list will be exhaustive when starting with an index of an
*owned* atom, since the atom IDs are unique, so there can only be one
such atom. Example code to count atoms with same atom ID in subdomain:
such atom. Example code to count atoms with same atom ID in a subdomain:
.. code-block:: c++

View File

@ -69,7 +69,7 @@ The basic LAMMPS class hierarchy which is created by the LAMMPS class
constructor is shown in :ref:`class-topology`. When input commands
are processed, additional class instances are created, or deleted, or
replaced. Likewise, specific member functions of specific classes are
called to trigger actions such creating atoms, computing forces,
called to trigger actions such as creating atoms, computing forces,
computing properties, time-propagating the system, or writing output.
Compositing and Inheritance
@ -110,9 +110,10 @@ As mentioned above, there can be multiple instances of classes derived
from the ``Fix`` or ``Compute`` base classes. They represent a
different facet of LAMMPS' flexibility, as they provide methods which
can be called at different points within a timestep, as explained in
`Developer_flow`. This allows the input script to tailor how a specific
simulation is run, what diagnostic computations are performed, and how
the output of those computations is further processed or output.
the :doc:`How a timestep works <Developer_flow>` doc page. This allows
the input script to tailor how a specific simulation is run, what
diagnostic computations are performed, and how the output of those
computations is further processed or output.
Additional code sharing is possible by creating derived classes from the
derived classes (e.g., to implement an accelerated version of a pair

View File

@ -128,7 +128,7 @@ reflect particles off box boundaries in the :doc:`FixWallReflect class
The ``decide()`` method in the Neighbor class determines whether
neighbor lists need to be rebuilt on the current timestep (conditions
can be changed using the :doc:`neigh_modify every/delay/check
<neigh_modify>` command. If not, coordinates of ghost atoms are
<neigh_modify>` command). If not, coordinates of ghost atoms are
acquired by each processor via the ``forward_comm()`` method of the Comm
class. If neighbor lists need to be built, several operations within
the inner if clause of the pseudocode are first invoked. The

View File

@ -433,7 +433,7 @@ from owned to ghost cells, or ghost to owned cells, respectively, as
described above. The *caller* argument should be one of these values
-- Grid3d::COMPUTE, Grid3d::FIX, Grid3d::KSPACE, Grid3d::PAIR --
depending on the style of the caller class. The *ptr* argument is the
"this" pointer to the caller class. These 2 arguments are used to
"this" pointer to the caller class. These two arguments are used to
call back to pack()/unpack() functions in the caller class, as
explained below.

View File

@ -20,7 +20,7 @@ Available topics are:
Reading and parsing of text and text files
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
It is frequently required for a class in LAMMPS to read in additional
Classes in LAMMPS frequently need to read in additional
data from a file, e.g. potential parameters from a potential file for
manybody potentials. LAMMPS provides several custom classes and
convenience functions to simplify the process. They offer the
@ -128,9 +128,8 @@ that determines the kind of neighbor list requested. The default value
used here asks for a perpetual "half" neighbor list.
Non-default values of the second argument need to be used to adjust a
neighbor list request to the specific needs of a style an additional
request flag is needed. The :doc:`tersoff <pair_tersoff>` pair style,
for example, needs a "full" neighbor list:
neighbor list request to the specific needs of a style. The :doc:`tersoff
<pair_tersoff>` pair style, for example, needs a "full" neighbor list:
.. code-block:: c++
@ -141,8 +140,8 @@ for example, needs a "full" neighbor list:
}
When a pair style supports r-RESPA time integration with different cutoff regions,
the request flag may depend on the corresponding r-RESPA settings. Here an example
from pair style lj/cut:
the request flag may depend on the corresponding r-RESPA settings. Here is an
example from pair style lj/cut:
.. code-block:: c++
@ -160,7 +159,7 @@ from pair style lj/cut:
}
Granular pair styles need neighbor lists based on particle sizes and not cutoff
and also may require to have the list of previous neighbors available ("history").
and also may need to store data across timesteps ("history").
For example with:
.. code-block:: c++
@ -169,7 +168,7 @@ For example with:
else neighbor->add_request(this, NeighConst::REQ_SIZE);
In case a class would need to make multiple neighbor list requests with different
settings each request can set an id which is then used in the corresponding
settings, each request can set an id which is then used in the corresponding
``init_list()`` function to assign it to the suitable pointer variable. This is
done for example by the :doc:`pair style meam <pair_meam>`:
@ -279,8 +278,8 @@ And here is how the code operates:
* The :doc:`thermo_style custom <thermo_style>` command defines
*ecouple* and *econserve* keywords.
* These keywords sum the energy contributions from all the
*ecouple_flag* = 1 fixes by invoking the energy_couple() method in
the Modify class, which calls the compute_scalar() method of each
*ecouple_flag* = 1 fixes by invoking the *energy_couple()* method in
the Modify class, which calls the *compute_scalar()* method of each
fix in the list.
------------------
@ -320,19 +319,19 @@ The fix must also do the following:
The ev_init() and ev_tally() methods also account for global and
peratom virial contributions. Thus you do not need to invoke the
v_init() and v_tally() methods, if the fix also calculates peratom
v_init() and v_tally() methods if the fix also calculates peratom
energies.
The fix must also specify whether (by default) to include or exclude
these contributions to the global/peratom energy/virial of the system.
For the fix to include the contributions, set either of both of these
For the fix to include the contributions, set either or both of these
variables in the constructor:
* *thermo_energy* = 1, for global and peratom energy
* *thermo_virial* = 1, for global and peratom virial
Note that these variables are zeroed in fix.cpp. Thus if you don't
set the variables, the contributions will be excluded (by default)
set the variables, the contributions will be excluded (by default).
However, the user has ultimate control over whether to include or
exclude the contributions of the fix via the :doc:`fix modify
@ -406,9 +405,11 @@ processor owns, within the global grid:
.. parsed-literal::
nxlo_in,nxhi_in,nylo_in,nyhi_in,nzlo_in,nzhi_in = 3d decomposition brick
nxlo_fft,nxhi_fft,nylo_fft,nyhi_fft,nzlo_fft,nzhi_fft = FFT decomposition brick
nxlo_out,nxhi_out,nylo_out,nyhi_out,nzlo_out,nzhi_out = 3d decomposition brick + ghost cells
nFOO_in = 3d decomposition brick
nFOO_fft = FFT decomposition brick
nFOO_out = 3d decomposition brick + ghost cells
where ``FOO`` corresponds to ``xlo, xhi, ylo, yhi, zlo,`` or ``zhi``.
The ``in`` and ``fft`` indices are from 0 to N-1 inclusive in each
dimension, where N is the grid size.

View File

@ -4,8 +4,7 @@ Communication
Following the selected partitioning scheme, all per-atom data is
distributed across the MPI processes, which allows LAMMPS to handle very
large systems provided it uses a correspondingly large number of MPI
processes. Since The per-atom data (atom IDs, positions, velocities,
types, etc.) To be able to compute the short-range interactions, MPI
processes. To be able to compute the short-range interactions, MPI
processes need not only access to the data of atoms they "own" but also
information about atoms from neighboring subdomains, in LAMMPS referred
to as "ghost" atoms. These are copies of atoms storing required
@ -37,7 +36,7 @@ be larger than half the simulation domain.
Efficient communication patterns are needed to update the "ghost" atom
data, since that needs to be done at every MD time step or minimization
step. The diagrams of the `ghost-atom-comm` figure illustrate how ghost
step. The diagrams of the :ref:`ghost-atom-comm` figure illustrate how ghost
atom communication is performed in two stages for a 2d simulation (three
in 3d) for both a regular and irregular partitioning of the simulation
box. For the regular case (left) atoms are exchanged first in the

View File

@ -93,7 +93,7 @@ processors, since each tile in the initial tiling overlaps with a
handful of tiles in the final tiling.
The transformations could also be done using collective communication
across all $P$ processors with a single call to ``MPI_Alltoall()``, but
across all :math:`P` processors with a single call to ``MPI_Alltoall()``, but
this is typically much slower. However, for the specialized brick and
pencil tiling illustrated in :ref:`fft-parallel` figure, collective
communication across the entire MPI communicator is not required. In
@ -138,7 +138,7 @@ grid/particle operations that LAMMPS supports:
:math:`O(P^{\frac{1}{2}})`.
- For efficiency in performing 1d FFTs, the grid transpose
operations illustrated in Figure \ref{fig:fft} also involve
operations illustrated in Figure :ref:`fft-parallel` also involve
reordering the 3d data so that a different dimension is contiguous
in memory. This reordering can be done during the packing or
unpacking of buffers for MPI communication.

View File

@ -149,7 +149,7 @@ supports:
- Dependent on the "pair" setting of the :doc:`newton <newton>` command,
the "half" neighbor lists may contain **all** pairs of atoms where
atom *j* is a ghost atom (i.e. when the newton pair setting is *off*)
atom *j* is a ghost atom (i.e. when the newton pair setting is *off*).
For the newton pair *on* setting the atom *j* is only added to the
list if its *z* coordinate is larger, or if equal the *y* coordinate
is larger, and that is equal, too, the *x* coordinate is larger. For

View File

@ -1,13 +1,13 @@
OpenMP Parallelism
^^^^^^^^^^^^^^^^^^
The styles in the INTEL, KOKKOS, and OPENMP package offer to use OpenMP
The styles in the INTEL, KOKKOS, and OPENMP packages offer to use OpenMP
thread parallelism to predominantly distribute loops over local data
and thus follow an orthogonal parallelization strategy to the
decomposition into spatial domains used by the :doc:`MPI partitioning
<Developer_par_part>`. For clarity, this section discusses only the
implementation in the OPENMP package, as it is the simplest. The INTEL
and KOKKOS package offer additional options and are more complex since
and KOKKOS packages offer additional options and are more complex since
they support more features and different hardware like co-processors
or GPUs.
@ -16,7 +16,7 @@ keep the changes to the source code small, so that it would be easier to
maintain the code and keep it in sync with the non-threaded standard
implementation. This is achieved by a) making the OPENMP version a
derived class from the regular version (e.g. ``PairLJCutOMP`` from
``PairLJCut``) and overriding only methods that are multi-threaded or
``PairLJCut``) and only overriding methods that are multi-threaded or
need to be modified to support multi-threading (similar to what was done
in the OPT package), b) keeping the structure in the modified code very
similar so that side-by-side comparisons are still useful, and c)

View File

@ -53,7 +53,7 @@ Members of ``lammpsplugin_t``
.. list-table::
:header-rows: 1
:widths: auto
:widths: 15 85
* - Member
- Description
@ -135,7 +135,7 @@ unique inside the entire LAMMPS executable.
Fix style example
^^^^^^^^^^^^^^^^^
If the factory function would be for a fix or compute, which take three
If the factory function is for a fix or compute, which take three
arguments (a pointer to the LAMMPS class, the number of arguments and the
list of argument strings), then the pointer type is ``lammpsplugin_factory2``
and it must be assigned to the *creator.v2* member of the plugin struct.
@ -271,7 +271,7 @@ Plugins need to be compiled with the same compilers and libraries
as the LAMMPS executable and library. Otherwise the plugin will likely
not load due to mismatches in the function signatures (LAMMPS is C++ so
scope, type, and number of arguments are encoded into the symbol names
and thus differences in them will lead to failed plugin load commands.
and thus differences in them will lead to failed plugin load commands).
Compilation of the plugin can be managed via both, CMake or traditional
GNU makefiles. Some examples that can be used as a template are in the
``examples/plugins`` folder. The CMake script code has some small
@ -283,7 +283,7 @@ in the ``examples/kim/plugin`` folder. No changes to the sources of the
KIM package themselves are needed; only the plugin interface and loader
code needs to be added. This example only supports building with CMake,
but is probably a more typical example. To compile you need to run CMake
with -DLAMMPS_SOURCE_DIR=<path/to/lammps/src/folder>. Other
with ``-DLAMMPS_SOURCE_DIR=<path/to/lammps/src/folder>``. Other
configuration setting are identical to those for compiling LAMMPS.
A second example for a plugin from a package is in the

View File

@ -44,7 +44,7 @@ available:
.. list-table::
:header-rows: 1
:widths: auto
:widths: 32 18 50
:align: left
* - File name:
@ -227,12 +227,12 @@ Tests for the C-style library interface
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Tests for validating the LAMMPS C-style library interface are in the
``unittest/c-library`` folder. They are implemented in either way used
for utility functions and for LAMMPS commands, but use the functions
``unittest/c-library`` folder. They are implemented either to be used
for utility functions or for LAMMPS commands, but use the functions
implemented in the ``src/library.cpp`` file as much as possible. There
may be some overlap with other tests, but only in as much as is required
to test the C-style library API. The tests are distributed over
multiple test programs which tries to match the grouping of the
multiple test programs which try to match the grouping of the
functions in the source code and :ref:`in the manual <lammps_c_api>`.
This group of tests also includes tests invoking LAMMPS in parallel
@ -258,7 +258,7 @@ Tests for the Python module and package
The ``unittest/python`` folder contains primarily tests for classes and
functions in the LAMMPS python module but also for commands in the
PYTHON package. These tests are only enabled, if the necessary
PYTHON package. These tests are only enabled if the necessary
prerequisites are detected or enabled during configuration and
compilation of LAMMPS (shared library build enabled, Python interpreter
found, Python development files found).
@ -272,7 +272,7 @@ Tests for the Fortran interface
Tests for using the Fortran module are in the ``unittest/fortran``
folder. Since they are also using the GoogleTest library, they require
to also implement test wrappers in C++ that will call fortran functions
implementing test wrappers in C++ that will call fortran functions
which provide a C function interface through ISO_C_BINDINGS that will in
turn call the functions in the LAMMPS Fortran module.
@ -293,7 +293,7 @@ The ``unittest/formats`` folder contains test programs for reading and
writing files like data files, restart files, potential files or dump files.
This covers simple things like the file i/o convenience functions in the
``utils::`` namespace to complex tests of atom styles where creating and
deleting of atoms with different properties is tested in different ways
deleting atoms with different properties is tested in different ways
and through script commands or reading and writing of data or restart files.
Tests for styles computing or modifying forces
@ -411,7 +411,7 @@ With this scheme a large fraction of the code of any tested pair style
will be executed and consistent results are required for different
settings and between different accelerated pair style variants and the
base class, as well as for computing individual pairs through the
``Pair::single()`` where supported.
``Pair::single()`` method where supported.
The ``test_pair_style`` tester is used with 4 categories of test inputs:
@ -443,7 +443,7 @@ file for a style that is similar to one to be tested. The file name should
follow the naming conventions described above and after copying the file,
the first step is to replace the style names where needed. The coefficient
values do not have to be meaningful, just in a reasonable range for the
given system. It does not matter if some forces are large, for as long as
given system. It does not matter if some forces are large, as long as
they do not diverge.
The template input files define a large number of index variables at the top
@ -535,7 +535,7 @@ The are by default no unit tests for newly added features (e.g. pair, fix,
or compute styles) unless your pull request also includes tests for the
added features. If you are modifying some features, you may see failures
for existing tests, if your modifications have some unexpected side effects
or your changes render the existing text invalid. If you are adding an
or your changes render the existing test invalid. If you are adding an
accelerated version of an existing style, then only tests for INTEL,
KOKKOS (with OpenMP only), OPENMP, and OPT will be run automatically.
Tests for the GPU package are time consuming and thus are only run
@ -543,7 +543,7 @@ Tests for the GPU package are time consuming and thus are only run
to the pull request. After the test has started, it is often best to
remove the label since every PR activity will re-trigger the test (that
is a limitation of triggering a test with a label). Support for unit
tests with using KOKKOS with GPU acceleration is currently not supported.
tests when using KOKKOS with GPU acceleration is currently not supported.
When you see a failed build on GitHub, click on ``Details`` to be taken
to the corresponding LAMMPS Jenkins CI web page. Click on the "Exit"
@ -589,11 +589,10 @@ While the epsilon (relative precision) for a single, `IEEE 754 compliant
point operation is at about 2.2e-16, the achievable precision for the
tests is lower due to most numbers being sums over intermediate results
and the non-associativity of floating point math leading to larger
errors. In some cases specific properties of the tested style. As a
rule of thumb, the test epsilon can often be in the range 5.0e-14 to
1.0e-13. But for "noisy" force kernels, e.g. those a larger amount of
arithmetic operations involving `exp()`, `log()` or `sin()` functions,
and also due to the effect of compiler optimization or differences
errors. As a rule of thumb, the test epsilon can often be in the range
5.0e-14 to 1.0e-13. But for "noisy" force kernels, e.g. those a larger
amount of arithmetic operations involving `exp()`, `log()` or `sin()`
functions, and also due to the effect of compiler optimization or differences
between compilers or platforms, epsilon may need to be further relaxed,
sometimes epsilon can be relaxed to 1.0e-12. If interpolation or lookup
tables are used, epsilon may need to be set to 1.0e-10 or even higher.

View File

@ -52,10 +52,9 @@ Rename of pack/unpack_comm() to pack/unpack_forward_comm()
.. versionchanged:: 8Aug2014
In this change set the functions to pack data into communication buffers
and to unpack data from communication buffers for :doc:`forward
communications <Developer_comm_ops>` were renamed from ``pack_comm()``
and ``unpack_comm()`` to ``pack_forward_comm()`` and
In this change set, the functions to pack/unpack data into communication buffers
for :doc:`forward communications <Developer_comm_ops>` were renamed from
``pack_comm()`` and ``unpack_comm()`` to ``pack_forward_comm()`` and
``unpack_forward_comm()``, respectively. Also the meaning of the return
value of these functions was changed: rather than returning the number
of items per atom stored in the buffer, now the total number of items
@ -109,7 +108,7 @@ Use ev_init() to initialize variables derived from eflag and vflag
There are several variables that need to be initialized based on
the values of the "eflag" and "vflag" variables and since sometimes
there are new bits added and new variables need to be set to 1 or 0.
To make this consistent, across all styles, there is now an inline
To make this consistent across all styles, there is now an inline
function ``ev_init(eflag, vflag)`` that makes those settings
consistently and calls either ``ev_setup()`` or ``ev_unset()``.
Example from a pair style:
@ -211,14 +210,14 @@ The :cpp:func:`utils::open_potential()
calls to ``force->open_potential()`` and should be used to replace
``fopen()`` for opening potential files for reading. The custom
function does three additional steps compared to ``fopen()``: 1) it will
try to parse the ``UNITS:`` and ``DATE:`` metadata will stop with an
try to parse the ``UNITS:`` and ``DATE:`` metadata and will stop with an
error on a units mismatch and will print the date info, if present, in
the log file; 2) for pair styles that support it, it will set up
possible automatic unit conversions based on the embedded unit
information and LAMMPS' current units setting; 3) it will not only try
to open a potential file at the given path, but will also search in the
folders listed in the ``LAMMPS_POTENTIALS`` environment variable. This
allows to keep potential files in a common location instead of having to
allows potential files to reside in a common location instead of having to
copy them around for simulations.
Old:
@ -246,36 +245,38 @@ to use scoped enumerators instead.
.. list-table::
:header-rows: 1
:widths: auto
:widths: 23 10 23 10 23 10
* - Symbolic Constant
- Value
- Symbolic Constant
- Value
- Symbolic Constant
- Value
* - Atom::GROW
- 0
- Atom::ATOMIC
- 0
- Atom::MAP_NONE
- 0
* - Atom::RESTART
- 1
- Atom::MOLECULAR
- 1
- Atom::MAP_ARRAY
- 1
* - Atom::BORDER
- 2
- Atom::TEMPLATE
- 2
- Atom::MAP_HASH
- 2
* - Atom::ATOMIC
* - AtomVec::PER_ATOM
- 0
- Atom::MAP_YES
- 3
* - Atom::MOLECULAR
- 1
- AtomVec::PER_ATOM
- 0
* - Atom::TEMPLATE
- 2
- AtomVec::PER_TYPE
- 1
- Atom::MAP_YES
- 3
Old:
@ -306,7 +307,7 @@ Simplify customized error messages
Aided by features of the bundled {fmt} library, error messages now
can have a variable number of arguments and the string will be interpreted
as a {fmt} style format string so that custom error messages can be
as a {fmt} style format string so that error messages can be
easily customized without having to use temporary buffers and ``sprintf()``.
Example:
@ -332,7 +333,7 @@ Use of "override" instead of "virtual"
.. versionchanged:: 17Feb2022
Since LAMMPS requires C++11 we switched to use the "override" keyword
Since LAMMPS requires C++11, we switched to use the "override" keyword
instead of "virtual" to indicate polymorphism in derived classes. This
allows the C++ compiler to better detect inconsistencies when an
override is intended or not. Please note that "override" has to be
@ -370,7 +371,7 @@ Simplified function names for forward and reverse communication
.. versionchanged:: 24Mar2022
Rather then using the function name to distinguish between the different
Rather than using the function name to distinguish between the different
forward and reverse communication functions for styles, LAMMPS now uses
the type of the "this" pointer argument.

View File

@ -211,6 +211,9 @@ Argument processing
.. doxygenfunction:: bounds
:project: progguide
.. doxygenfunction:: bounds_typelabel
:project: progguide
.. doxygenfunction:: expand_args
:project: progguide
@ -619,7 +622,7 @@ classes:
of a dense, symmetric, real matrix.
#. The "PEigenDense" class only calculates the principal eigenvalue
(ie. the largest or smallest eigenvalue), and its corresponding
(i.e. the largest or smallest eigenvalue), and its corresponding
eigenvector. However it is much more efficient than "Jacobi" when
applied to large matrices (larger than 13x13). PEigenDense also can
understand complex-valued Hermitian matrices.

View File

@ -74,8 +74,7 @@ The next method we need to implement is ``setmask()``:
Here the we specify which methods of the fix should be called during
:doc:`execution of a timestep <Developer_flow>`. The constant
``END_OF_STEP`` corresponds to the ``end_of_step()`` method. The most
important available methods that are called during a timestep.
``END_OF_STEP`` corresponds to the ``end_of_step()`` method.
.. code-block:: c++
@ -127,7 +126,7 @@ there is no need to inherit from it directly.
The code above computes average velocity for all particles in the
simulation. Yet you have one unused parameter in fix call from the
script: ``group_name``. This parameter specifies the group of atoms
used in the fix. So we should compute average for all particles in the
used in the fix. So we should compute the average for all particles in the
simulation only if ``group_name == "all"``, but it can be any group.
The group membership information of an atom is contained in the *mask*
property of an atom and the bit corresponding to a given group is
@ -142,7 +141,7 @@ stored in the groupbit variable which is defined in Fix base class:
}
Class Atom encapsulates atoms positions, velocities, forces, etc. Users
can access them using particle index. Note, that particle indexes are
can access them using the particle index. Note, that particle indexes are
usually changed every few timesteps because of neighbor list rebuilds
and spatial sorting (to improve cache efficiency).
@ -154,8 +153,8 @@ this situation there are several methods which should be implemented:
- ``double memory_usage()``: return how much memory the fix uses (optional)
- ``void grow_arrays(int)``: do reallocation of the per-particle arrays in your fix
- ``void copy_arrays(int i, int j, int delflag)``: copy i-th per-particle
information to j-th. Used when atom sorting is performed. if delflag is set
and atom j owns a body, move the body information to atom i.
information to j-th particle position. Used when atom sorting is performed.
if delflag is set and atom j owns a body, move the body information to atom i.
- ``void set_arrays(int i)``: sets i-th particle related information to zero
Note, that if your class implements these methods, it must add calls of
@ -230,11 +229,11 @@ is just a bunch of template functions for allocating 1D and 2D
arrays. So you need to add include ``memory.h`` to have access to them.
Finally, if you need to write/read some global information used in
your fix to the restart file, you might do it by setting flag
``restart_global = 1`` in the constructor and implementing methods void
``write_restart(FILE *fp)`` and ``void restart(char *buf)``.
your fix to the restart file, you might do it by setting the flag
``restart_global = 1`` in the constructor and implementing methods
``void write_restart(FILE *fp)`` and ``void restart(char *buf)``.
If, in addition, you want to write the per-atom property to restart
files additional settings and functions are needed:
files then these additional settings and functions are needed:
- a fix flag indicating this needs to be set ``restart_peratom = 1;``
- ``atom->add_callback()`` and ``atom->delete_callback()`` must be called

View File

@ -50,6 +50,30 @@ We are looking at the following cases:
- `Case 3: a potential requiring communication`_
- `Case 4: potentials without a compute() function`_
Package and build system considerations
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
In general, new pair styles should be added to the :ref:`EXTRA-PAIR
package <PKG-EXTRA-PAIR>` unless they are an accelerated pair style and
then they should be added to the corresponding accelerator package
(:ref:`GPU <PKG-GPU>`, :ref:`INTEL <PKG-INTEL>`, :ref:`KOKKOS
<PKG-KOKKOS>`, :ref:`OPENMP <PKG-OPENMP>`, :ref:`OPT <PKG-OPT>`). If
you feel that your contribution should be added to a different package,
please consult with the LAMMPS developers first.
The contributed code needs to support the :doc:`traditional GNU make
build process <Build_make>` **and** the :doc:`CMake build process
<Build_cmake>`. For the GNU make process and if the package has an
``Install.sh`` file, most likely that file needs to be updated to
correctly copy the sources when installing the package and properly
delete them when uninstalling. This is particularly important when
added a new pair style that is a derived class from an existing pair
style in a package, so that its installation depends on the the
installation status of the package of the derived class. For the CMake
process, it is sometimes necessary to make changes to the package
specific CMake scripting in ``cmake/Modules/Packages``.
----
Case 1: a pairwise additive model
@ -347,9 +371,9 @@ but moving this to a separate function allows users to change global
settings like the default cutoff without having to reissue all
pair_coeff commands or re-read the ``Pair Coeffs`` sections from the
data file. In the ``settings()`` function, also the arrays for storing
parameters, to define cutoffs, track with pairs of parameters have been
explicitly set are allocated and, if needed, initialized. In this case,
the memory allocation and initialization is moved to a function
parameters, to define cutoffs, track which pairs of parameters have been
explicitly set and allocated and, if needed, initialized. In this case,
the memory allocation and initialization are moved to a function
``allocate()``.
.. code-block:: c++
@ -564,17 +588,20 @@ loop atoms are also initialized.
jnum = numneigh[i];
The inner loop (index *j*) processes the neighbor lists. The neighbor
list code encodes in the upper 2 bits whether a pair is a regular pair
of neighbor (= 0) or a pair of 1-2 (= 1), 1-3 (= 2), or 1-4 (= 3)
:doc:`"special" neighbor <special_bonds>`. The ``sbmask()`` inline
function extracts those bits and converts them into a number. This
number is used to look up the corresponding scaling factor for the
non-bonded interaction from the ``force->special_lj`` array and stores
it in the `factor_lj` variable. Due to the additional bits, the value
of *j* would be out of range when accessing data from per-atom arrays,
so we apply the NEIGHMASK constant with a bit-wise and operation to mask
them out. This step *must* be done, even if a pair style does not use
special bond scaling of forces and energies to avoid segmentation faults.
list code encodes extra information using the upper 3 bits. The 2
highest bits encode whether a pair is a regular pair of neighbor (= 0)
or a pair of 1-2 (= 1), 1-3 (= 2), or 1-4 (= 3) :doc:`"special" neighbor
<special_bonds>`. The next highest bit encodes whether the pair stores
data in a ``fix neigh/history`` instance (an undocumented internal fix
style). The ``sbmask()`` inline function extracts those bits and
converts them into a number. This number is used to look up the
corresponding scaling factor for the non-bonded interaction from the
``force->special_lj`` array and stores it in the `factor_lj` variable.
Due to the additional bits, the value of *j* would be out of range when
accessing data from per-atom arrays, so we apply the NEIGHMASK constant
with a bit-wise and operation to mask them out. This step *must* be
done, even if a pair style does not use special bond scaling of forces
and energies to avoid segmentation faults.
With the corrected *j* index, it is now possible to compute the distance
of the pair. For efficiency reasons, the square root is only taken
@ -867,7 +894,7 @@ through *multiple* :doc:`pair_coeff commands <pair_coeff>`. Pair styles
that require a single "pair_coeff \* \*" command line are not compatible
with reading their parameters from data files. For pair styles like
*born/gauss* that do support writing to data files, the potential
parameters will be read from the data file, if present and
parameters will be read from the data file, if present, and
:doc:`pair_coeff commands <pair_coeff>` may not be needed.
The member variable ``writedata`` should be set to 1 in the constructor,

View File

@ -39,7 +39,8 @@ figure out your physics or numerical mistakes, like choosing too big a
timestep, specifying erroneous force field coefficients, or putting 2
atoms on top of each other! If you run into errors that LAMMPS
does not catch that you think it should flag, please send an email to
the `developers <https://www.lammps.org/authors.html>`_.
the `developers <https://www.lammps.org/authors.html>`_ or create an new
topic on the dedicated `MatSci forum section <https://matsci.org/lammps/>`_.
If you get an error message about an invalid command in your input
script, you can determine what command is causing the problem by

View File

@ -96,13 +96,13 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
are too far apart to make a valid angle.
*Angle atoms %d %d %d missing on proc %d at step %ld*
One or more of 3 atoms needed to compute a particular angle are
One or more of three atoms needed to compute a particular angle are
missing on this processor. Typically this is because the pairwise
cutoff is set too short or the angle has blown apart and an atom is
too far away.
*Angle atoms missing on proc %d at step %ld*
One or more of 3 atoms needed to compute a particular angle are
One or more of three atoms needed to compute a particular angle are
missing on this processor. Typically this is because the pairwise
cutoff is set too short or the angle has blown apart and an atom is
too far away.
@ -1932,7 +1932,7 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
Self-explanatory.
*Compute chunk/atom fix array is accessed out-of-range*
the index for the array is out of bounds.
The index for the array is out of bounds.
*Compute chunk/atom fix does not calculate a per-atom array*
Self-explanatory.
@ -6073,9 +6073,9 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
*New atom IDs exceed maximum allowed ID*
See the setting for tagint in the src/lmptype.h file.
*New bond exceeded bonds per atom in create_bonds*
See the read_data command for info on using the "extra/bond/per/atom"
keyword to allow for additional bonds to be formed
*New bond exceeded bonds per atom in create\_bonds*
See the read_data command for info on using the "extra/bond/per/atom"
keyword to allow for additional bonds to be formed
*New bond exceeded bonds per atom in fix bond/create*
See the read_data command for info on using the "extra/bond/per/atom"
@ -7310,12 +7310,12 @@ keyword to allow for additional bonds to be formed
atom has moved too far.
*Restrain atoms %d %d %d missing on proc %d at step %ld*
The 3 atoms in a restrain angle specified by the fix restrain
The three atoms in a restrain angle specified by the fix restrain
command are not all accessible to a processor. This probably means an
atom has moved too far.
*Restrain atoms %d %d missing on proc %d at step %ld*
The 2 atoms in a restrain bond specified by the fix restrain
The two atoms in a restrain bond specified by the fix restrain
command are not all accessible to a processor. This probably means an
atom has moved too far.
@ -7406,7 +7406,7 @@ keyword to allow for additional bonds to be formed
*Shake angles have different bond types*
All 3-atom angle-constrained SHAKE clusters specified by the fix shake
command that are the same angle type, must also have the same bond
types for the 2 bonds in the angle.
types for the two bonds in the angle.
*Shake atoms %d %d %d %d missing on proc %d at step %ld*
The 4 atoms in a single shake cluster specified by the fix shake
@ -7414,12 +7414,12 @@ keyword to allow for additional bonds to be formed
an atom has moved too far.
*Shake atoms %d %d %d missing on proc %d at step %ld*
The 3 atoms in a single shake cluster specified by the fix shake
The three atoms in a single shake cluster specified by the fix shake
command are not all accessible to a processor. This probably means
an atom has moved too far.
*Shake atoms %d %d missing on proc %d at step %ld*
The 2 atoms in a single shake cluster specified by the fix shake
The two atoms in a single shake cluster specified by the fix shake
command are not all accessible to a processor. This probably means
an atom has moved too far.

View File

@ -23,7 +23,7 @@ Doc page with :doc:`ERROR messages <Errors_messages>`
adjusted to match the user-specified accuracy.
*Angle atoms missing at step %ld*
One or more of 3 atoms needed to compute a particular angle are
One or more of three atoms needed to compute a particular angle are
missing on this processor. Typically this is because the pairwise
cutoff is set too short or the angle has blown apart and an atom is
too far away.
@ -233,7 +233,7 @@ Doc page with :doc:`ERROR messages <Errors_messages>`
style.
*Fix langevin gjf using random gaussians is not implemented with kokkos*
This will most likely cause errors in kinetic fluctuations.
This will most likely cause errors in kinetic fluctuations.
*Fix property/atom mol or charge w/out ghost communication*
A model typically needs these properties defined for ghost atoms.
@ -324,7 +324,7 @@ This will most likely cause errors in kinetic fluctuations.
Specifically they are further apart than half a periodic box length.
Or they are more than a box length apart in a non-periodic dimension.
This is usually due to the initial data file not having correct image
flags for the 2 atoms in a bond that straddles a periodic boundary.
flags for the two atoms in a bond that straddles a periodic boundary.
They should be different by 1 in that case. This is a warning because
inconsistent image flags will not cause problems for dynamics or most
LAMMPS simulations. However they can cause problems when such atoms

View File

@ -134,6 +134,8 @@ Lowercase directories
+-------------+------------------------------------------------------------------+
| rerun | use of rerun and read_dump commands |
+-------------+------------------------------------------------------------------+
| rheo | RHEO simulations of fluid flows and phase transitions |
+-------------+------------------------------------------------------------------+
| rigid | rigid bodies modeled as independent or coupled |
+-------------+------------------------------------------------------------------+
| shear | sideways shear applied to 2d solid, with and without a void |

View File

@ -305,6 +305,8 @@ of the contents of the :f:mod:`LIBLAMMPS` Fortran interface to LAMMPS.
:ftype extract_setting: function
:f extract_global: :f:func:`extract_global`
:ftype extract_global: function
:f map_atom: :f:func:`map_atom`
:ftype map_atom: function
:f extract_atom: :f:func:`extract_atom`
:ftype extract_atom: function
:f extract_compute: :f:func:`extract_compute`
@ -1075,7 +1077,7 @@ Procedures Bound to the :f:type:`lammps` Derived Type
.. list-table::
:header-rows: 1
:widths: auto
:widths: 21 20 40 19
* - Style
- Type
@ -1165,7 +1167,7 @@ Procedures Bound to the :f:type:`lammps` Derived Type
.. list-table::
:header-rows: 1
:widths: auto
:widths: 20 19 11 11 21 18
* - Style
- Type
@ -2325,7 +2327,7 @@ Procedures Bound to the :f:type:`lammps` Derived Type
retrieved via :f:func:`get_last_error_message`. This allows to
restart a calculation or delete and recreate the LAMMPS instance when
a C++ exception occurs. One application of using exceptions this way
is the :ref:`lammps_shell`.
is the :ref:`lammps_gui`.
:to: :cpp:func:`lammps_config_has_exceptions`
:r has_exceptions:

View File

@ -89,6 +89,7 @@ Packages howto
Howto_drude2
Howto_peri
Howto_manifold
Howto_rheo
Howto_spins
Tutorials howto

View File

@ -1,6 +1,10 @@
CHARMM, AMBER, COMPASS, and DREIDING force fields
=================================================
A compact summary of the concepts, definitions, and properties of
force fields with explicit bonded interactions (like the ones discussed
in this HowTo) is given in :ref:`(Gissinger) <Typelabel2>`.
A force field has 2 parts: the formulas that define it and the
coefficients used for a particular system. Here we only discuss
formulas implemented in LAMMPS that correspond to formulas commonly used
@ -11,12 +15,42 @@ commands like :doc:`pair_coeff <pair_coeff>` or :doc:`bond_coeff
<bond_coeff>` and so on. See the :doc:`Tools <Tools>` doc page for
additional tools that can use CHARMM, AMBER, or Materials Studio
generated files to assign force field coefficients and convert their
output into LAMMPS input.
output into LAMMPS input. LAMMPS input scripts can also be generated by
`charmm-gui.org <https://charmm-gui.org/>`_.
See :ref:`(MacKerell) <howto-MacKerell>` for a description of the CHARMM
force field. See :ref:`(Cornell) <howto-Cornell>` for a description of
the AMBER force field. See :ref:`(Sun) <howto-Sun>` for a description
of the COMPASS force field.
CHARMM and AMBER
----------------
The `CHARMM force field
<https://mackerell.umaryland.edu/charmm_ff.shtml>`_ :ref:`(MacKerell)
<howto-MacKerell>` and `AMBER force field
<https://ambermd.org/AmberModels.php>`_ :ref:`(Cornell) <howto-Cornell>`
have potential energy function of the form
.. math::
V & = \sum_{bonds} E_b + \sum_{angles} \!E_a + \!\overbrace{\sum_{dihedral} \!\!E_d}^{\substack{
\text{charmm} \\
\text{charmmfsw}
}} +\!\!\! \sum_{impropers} \!\!\!E_i \\[.6em]
& \quad + \!\!\!\!\!\!\!\!\!\!\underbrace{~\sum_{pairs} \left(E_{LJ}+E_{coul}\right)}_{\substack{
\text{lj/charmm/coul/charmm} \\
\text{lj/charmm/coul/charmm/implicit} \\
\text{lj/charmm/coul/long} \\
\text{lj/charmm/coul/msm} \\
\text{lj/charmmfsw/coul/charmmfsh} \\
\text{lj/charmmfsw/coul/long}
}} \!\!\!\!\!\!\!\!+ \!\!\sum_{special}\! E_s + \!\!\!\!\sum_{residues} \!\!\!{\scriptstyle\mathrm{CMAP}(\phi,\psi)}
The terms are computed by bond styles (relationship between two atoms),
angle styles (between 3 atoms) , dihedral/improper styles (between 4
atoms), pair styles (non-covalently bonded pair interactions) and
special bonds. The CMAP term (see :doc:`fix cmap <fix_cmap>` command for
details) corrects for pairs of dihedral angles ("Correction MAP") to
significantly improve the structural and dynamic properties of proteins
in crystalline and solution environments :ref:`(Brooks)
<howto-Brooks>`. The AMBER force field does not include the CMAP term.
The interaction styles listed below compute force field formulas that
are consistent with common options in CHARMM or AMBER. See each
@ -31,10 +65,81 @@ command's documentation for the formula it computes.
* :doc:`pair_style <pair_charmm>` lj/charmm/coul/charmm
* :doc:`pair_style <pair_charmm>` lj/charmm/coul/charmm/implicit
* :doc:`pair_style <pair_charmm>` lj/charmm/coul/long
* :doc:`special_bonds <special_bonds>` charmm
* :doc:`special_bonds <special_bonds>` amber
The pair styles compute Lennard Jones (LJ) and Coulombic interactions
with additional switching or shifting functions that ramp the energy
and/or force smoothly to zero between an inner :math:`(a)` and outer
:math:`(b)` cutoff. The older styles with *charmm* (not *charmmfsw* or
*charmmfsh*\ ) in their name compute the LJ and Coulombic interactions
with an energy switching function (esw) :math:`S(r)` which ramps the energy
smoothly to zero between the inner and outer cutoff. This can cause
irregularities in pairwise forces (due to the discontinuous second
derivative of energy at the boundaries of the switching region), which
in some cases can result in complications in energy minimization and
detectable artifacts in MD simulations.
.. grid:: 1 1 2 2
.. grid-item::
.. math::
LJ(r) &= 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right]\\[.6em]
C(r) &= \frac{C q_i q_j}{ \epsilon r}\\[.6em]
S(r) &= \frac{ \left(b^2 - r^2\right)^2 \left(b^2 + 2r^2 - 3{a^2}\right)}
{ \left(b^2 - a^2\right)^3 }\\[.6em]
E_{LJ}(r) &= \begin{cases}
LJ(r), & r \leq a \\
LJ(r) S(r), & a < r \leq b \\
0, &r > b
\end{cases} \\[.6em]
E_{coul}(r) &= \begin{cases}
C(r), & r \leq a \\
C(r) S(r), & a < r \leq b \\
0, & r > b
\end{cases}
.. grid-item::
.. image:: img/howto_charmm_ELJ.png
:align: center
The newer styles with *charmmfsw* or *charmmfsh* in their name replace
energy switching with force switching (fsw) for LJ interactions and
force shifting (fsh) functions for Coulombic interactions
:ref:`(Steinbach) <howto-Steinbach>`
.. grid:: 1 1 2 2
.. grid-item::
.. math::
E_{LJ}(r) = & \begin{cases}
4 \epsilon \sigma^6 \left(\frac{\displaystyle\sigma
^6-r^6}{\displaystyle r^{12}}-\frac{\displaystyle\sigma ^6}{\displaystyle a^6
b^6}+\frac{\displaystyle 1}{\displaystyle a^3 b^3}\right) & r\leq a \\
\frac{\displaystyle 4 \epsilon \sigma^6 \left(\sigma ^6
\left(b^6-r^6\right)^2-b^3 r^6 \left(a^3+b^3\right)
\left(b^3-r^3\right)^2\right)}{\displaystyle b^6 r^{12}
\left(b^6-a^6\right)} & a<r \leq b\\
0, & r>b
\end{cases}\\[.6em]
E_{coul}(r) & = \begin{cases}
C(r) \frac{\displaystyle (b-r)^2}{\displaystyle r b^2}, & r \leq b \\
0, & r > b
\end{cases}
.. grid-item::
.. image:: img/howto_charmmfsw_ELJ.png
:align: center
These styles are used by LAMMPS input scripts generated by
https://charmm-gui.org/ :ref:`(Brooks) <howto-Brooks>`.
.. note::
For CHARMM, newer *charmmfsw* or *charmmfsh* styles were released in
@ -43,17 +148,33 @@ command's documentation for the formula it computes.
<pair_charmm>` and :doc:`dihedral charmm <dihedral_charmm>` doc
pages.
.. note::
The TIP3P water model is strongly recommended for use with the CHARMM
force field. In fact, `"using the SPC model with CHARMM parameters is
a bad idea"
<https://matsci.org/t/using-spc-water-with-charmm-ff/24715>`_ and `"to
enable TIP4P style water in CHARMM, you would have to write a new pair
style"
<https://matsci.org/t/hybrid-pair-styles-for-charmm-and-tip4p-ew/32609>`_
. LAMMPS input scripts generated by Solution Builder on https://charmm-gui.org
use TIP3P molecules for solvation. Any other water model can and
probably will lead to false conclusions.
COMPASS
-------
COMPASS is a general force field for atomistic simulation of common
organic molecules, inorganic small molecules, and polymers which was
developed using ab initio and empirical parameterization techniques.
See the :doc:`Tools <Tools>` page for the msi2lmp tool for creating
LAMMPS template input and data files from BIOVIA's Materials Studio
files. Please note that the msi2lmp tool is very old and largely
unmaintained, so it does not support all features of Materials Studio
provided force field files, especially additions during the last decade.
You should watch the output carefully and compare results, where
possible. See :ref:`(Sun) <howto-Sun>` for a description of the COMPASS force
field.
developed using ab initio and empirical parameterization techniques
:ref:`(Sun) <howto-Sun>`. See the :doc:`Tools <Tools>` page for the
msi2lmp tool for creating LAMMPS template input and data files from
BIOVIA's Materials Studio files. Please note that the msi2lmp tool is
very old and largely unmaintained, so it does not support all features
of Materials Studio provided force field files, especially additions
during the last decade. You should watch the output carefully and
compare results, where possible. See :ref:`(Sun) <howto-Sun>` for a
description of the COMPASS force field.
These interaction styles listed below compute force field formulas that
are consistent with the COMPASS force field. See each command's
@ -70,14 +191,21 @@ documentation for the formula it computes.
* :doc:`special_bonds <special_bonds>` lj/coul 0 0 1
DREIDING is a generic force field developed by the `Goddard group <http://www.wag.caltech.edu>`_ at Caltech and is useful for
predicting structures and dynamics of organic, biological and main-group
inorganic molecules. The philosophy in DREIDING is to use general force
constants and geometry parameters based on simple hybridization
considerations, rather than individual force constants and geometric
parameters that depend on the particular combinations of atoms involved
in the bond, angle, or torsion terms. DREIDING has an :doc:`explicit hydrogen bond term <pair_hbond_dreiding>` to describe interactions involving a
hydrogen atom on very electronegative atoms (N, O, F).
DREIDING
--------
DREIDING is a generic force field developed by the `Goddard group
<http://www.wag.caltech.edu>`_ at Caltech and is useful for predicting
structures and dynamics of organic, biological and main-group inorganic
molecules. The philosophy in DREIDING is to use general force constants
and geometry parameters based on simple hybridization considerations,
rather than individual force constants and geometric parameters that
depend on the particular combinations of atoms involved in the bond,
angle, or torsion terms. DREIDING has an :doc:`explicit hydrogen bond
term <pair_hbond_dreiding>` to describe interactions involving a
hydrogen atom on very electronegative atoms (N, O, F). Unlike CHARMM
or AMBER, the DREIDING force field has not been parameterized for
considering solvents (like water).
See :ref:`(Mayo) <howto-Mayo>` for a description of the DREIDING force field
@ -110,21 +238,31 @@ documentation for the formula it computes.
----------
.. _Typelabel2:
**(Gissinger)** J. R. Gissinger, I. Nikiforov, Y. Afshar, B. Waters, M. Choi, D. S. Karls, A. Stukowski, W. Im, H. Heinz, A. Kohlmeyer, and E. B. Tadmor, J Phys Chem B, 128, 3282-3297 (2024).
.. _howto-MacKerell:
**(MacKerell)** MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field,
Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
**(MacKerell)** MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field, Fischer, Gao, Guo, Ha, et al (1998). J Phys Chem, 102, 3586 . https://doi.org/10.1021/jp973084f
.. _howto-Cornell:
**(Cornell)** Cornell, Cieplak, Bayly, Gould, Merz, Ferguson,
Spellmeyer, Fox, Caldwell, Kollman, JACS 117, 5179-5197 (1995).
**(Cornell)** Cornell, Cieplak, Bayly, Gould, Merz, Ferguson, Spellmeyer, Fox, Caldwell, Kollman (1995). JACS 117, 5179-5197. https://doi.org/10.1021/ja00124a002
.. _howto-Steinbach:
**(Steinbach)** Steinbach, Brooks (1994). J Comput Chem, 15, 667. https://doi.org/10.1002/jcc.540150702
.. _howto-Brooks:
**(Brooks)** Brooks, et al (2009). J Comput Chem, 30, 1545. https://onlinelibrary.wiley.com/doi/10.1002/jcc.21287
.. _howto-Sun:
**(Sun)** Sun, J. Phys. Chem. B, 102, 7338-7364 (1998).
**(Sun)** Sun (1998). J. Phys. Chem. B, 102, 7338-7364. https://doi.org/10.1021/jp980939v
.. _howto-Mayo:
**(Mayo)** Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909
(1990).
**(Mayo)** Mayo, Olfason, Goddard III (1990). J Phys Chem, 94, 8897-8909. https://doi.org/10.1021/j100389a010

View File

@ -15,7 +15,10 @@ orientation for rotational models. This produces a stress-free initial
state. Furthermore, bonds are allowed to break under large strains,
producing fracture. The examples/bpm directory has sample input scripts
for simulations of the fragmentation of an impacted plate and the
pouring of extended, elastic bodies.
pouring of extended, elastic bodies. See :ref:`(Clemmer) <howto-Clemmer>`
for more general information on the approach and the LAMMPS implementation.
Example movies illustrating some of these capabilities are found at
https://www.lammps.org/movies.html#bpmpackage.
----------
@ -150,3 +153,9 @@ the following are currently compatible with BPM bond styles:
interactions, one will need to switch between different *special_bonds*
settings in the input script. An example is found in
``examples/bpm/impact``.
----------
.. _howto-Clemmer:
**(Clemmer)** Clemmer, Monti, Lechman, Soft Matter, 20, 1702 (2024).

View File

@ -1,7 +1,7 @@
Use chunks to calculate system properties
=========================================
In LAMMS, "chunks" are collections of atoms, as defined by the
In LAMMPS, "chunks" are collections of atoms, as defined by the
:doc:`compute chunk/atom <compute_chunk_atom>` command, which assigns
each atom to a chunk ID (or to no chunk at all). The number of chunks
and the assignment of chunk IDs to atoms can be static or change over
@ -148,14 +148,14 @@ Example calculations with chunks
Here are examples using chunk commands to calculate various
properties:
(1) Average velocity in each of 1000 2d spatial bins:
1. Average velocity in each of 1000 2d spatial bins:
.. code-block:: LAMMPS
compute cc1 all chunk/atom bin/2d x 0.0 0.1 y lower 0.01 units reduced
fix 1 all ave/chunk 100 10 1000 cc1 vx vy file tmp.out
(2) Temperature in each spatial bin, after subtracting a flow
2. Temperature in each spatial bin, after subtracting a flow
velocity:
.. code-block:: LAMMPS
@ -164,7 +164,7 @@ velocity:
compute vbias all temp/profile 1 0 0 y 10
fix 1 all ave/chunk 100 10 1000 cc1 temp bias vbias file tmp.out
(3) Center of mass of each molecule:
3. Center of mass of each molecule:
.. code-block:: LAMMPS
@ -172,7 +172,7 @@ velocity:
compute myChunk all com/chunk cc1
fix 1 all ave/time 100 1 100 c_myChunk[*] file tmp.out mode vector
(4) Total force on each molecule and ave/max across all molecules:
4. Total force on each molecule and ave/max across all molecules:
.. code-block:: LAMMPS
@ -183,7 +183,7 @@ velocity:
thermo 1000
thermo_style custom step temp v_xave v_xmax
(5) Histogram of cluster sizes:
5. Histogram of cluster sizes:
.. code-block:: LAMMPS
@ -192,16 +192,16 @@ velocity:
compute size all property/chunk cc1 count
fix 1 all ave/histo 100 1 100 0 20 20 c_size mode vector ave running beyond ignore file tmp.histo
(6) An example for using a per-chunk value to apply per-atom forces to
6. An example for using a per-chunk value to apply per-atom forces to
compress individual polymer chains (molecules) in a mixture, is
explained on the :doc:`compute chunk/spread/atom <compute_chunk_spread_atom>` command doc page.
(7) An example for using one set of per-chunk values for molecule
7. An example for using one set of per-chunk values for molecule
chunks, to create a second set of micelle-scale chunks (clustered
molecules, due to hydrophobicity), is explained on the
:doc:`compute reduce/chunk <compute_reduce_chunk>` command doc page.
(8) An example for using one set of per-chunk values (dipole moment
8. An example for using one set of per-chunk values (dipole moment
vectors) for molecule chunks, spreading the values to each atom in
each chunk, then defining a second set of chunks as spatial bins, and
using the :doc:`fix ave/chunk <fix_ave_chunk>` command to calculate an

View File

@ -339,8 +339,6 @@ Some common LAMMPS specific variables
- build LAMMPS with OpenMP support (default: ``on`` if compiler supports OpenMP fully, else ``off``)
* - ``BUILD_TOOLS``
- compile some additional executables from the ``tools`` folder (default: ``off``)
* - ``BUILD_LAMMPS_SHELL``
- compile the LAMMPS shell from the ``tools/lammps-shell`` folder (default: ``off``)
* - ``BUILD_DOC``
- include building the HTML format documentation for packaging/installing (default: ``off``)
* - ``CMAKE_TUNE_FLAGS``

View File

@ -178,7 +178,7 @@ the pairs. This can be done by using the *bias* keyword of the
To maintain the correct polarizability of the core/shell pairs, the
kinetic energy of the internal motion shall remain nearly constant.
Therefore the choice of spring force and mass ratio need to ensure
much faster relative motion of the 2 atoms within the core/shell pair
much faster relative motion of the two atoms within the core/shell pair
than their center-of-mass velocity. This allows the shells to
effectively react instantaneously to the electrostatic environment and
limits energy transfer to or from the core/shell oscillators.

View File

@ -36,7 +36,7 @@ the context of your application.
steps, invoke the command, etc.
In this scenario, the other code can be called as a library, as in
1., or it could be a stand-alone code, invoked by a system() call
1., or it could be a stand-alone code, invoked by a ``system()`` call
made by the command (assuming your parallel machine allows one or
more processors to start up another program). In the latter case the
stand-alone code could communicate with LAMMPS through files that the

View File

@ -1,8 +1,8 @@
Calculate diffusion coefficients
================================
The diffusion coefficient D of a material can be measured in at least
2 ways using various options in LAMMPS. See the examples/DIFFUSE
The diffusion coefficient :math:`D` of a material can be measured in at least
2 ways using various options in LAMMPS. See the ``examples/DIFFUSE``
directory for scripts that implement the 2 methods discussed here for
a simple Lennard-Jones fluid model.
@ -12,7 +12,7 @@ of the MSD versus time is proportional to the diffusion coefficient.
The instantaneous MSD values can be accumulated in a vector via the
:doc:`fix vector <fix_vector>` command, and a line fit to the vector to
compute its slope via the :doc:`variable slope <variable>` function, and
thus extract D.
thus extract :math:`D`.
The second method is to measure the velocity auto-correlation function
(VACF) of the system, via the :doc:`compute vacf <compute_vacf>`
@ -20,4 +20,4 @@ command. The time-integral of the VACF is proportional to the
diffusion coefficient. The instantaneous VACF values can be
accumulated in a vector via the :doc:`fix vector <fix_vector>` command,
and time integrated via the :doc:`variable trap <variable>` function,
and thus extract D.
and thus extract :math:`D`.

View File

@ -4,21 +4,27 @@ Calculate elastic constants
Elastic constants characterize the stiffness of a material. The formal
definition is provided by the linear relation that holds between the
stress and strain tensors in the limit of infinitesimal deformation.
In tensor notation, this is expressed as s_ij = C_ijkl \* e_kl, where
the repeated indices imply summation. s_ij are the elements of the
symmetric stress tensor. e_kl are the elements of the symmetric strain
tensor. C_ijkl are the elements of the fourth rank tensor of elastic
constants. In three dimensions, this tensor has 3\^4=81 elements. Using
Voigt notation, the tensor can be written as a 6x6 matrix, where C_ij
is now the derivative of s_i w.r.t. e_j. Because s_i is itself a
derivative w.r.t. e_i, it follows that C_ij is also symmetric, with at
most 7\*6/2 = 21 distinct elements.
In tensor notation, this is expressed as
.. math::
s_{ij} = C_{ijkl} e_{kl}
where
the repeated indices imply summation. :math:`s_{ij}` are the elements of the
symmetric stress tensor. :math:`e_{kl}` are the elements of the symmetric strain
tensor. :math:`C_{ijkl}` are the elements of the fourth rank tensor of elastic
constants. In three dimensions, this tensor has :math:`3^4=81` elements. Using
Voigt notation, the tensor can be written as a 6x6 matrix, where :math:`C_{ij}`
is now the derivative of :math:`s_i` w.r.t. :math:`e_j`. Because :math:`s_i` is itself a
derivative w.r.t. :math:`e_i`, it follows that :math:`C_{ij}` is also symmetric, with at
most :math:`\frac{7 \times 6}{2}` = 21 distinct elements.
At zero temperature, it is easy to estimate these derivatives by
deforming the simulation box in one of the six directions using the
:doc:`change_box <change_box>` command and measuring the change in the
stress tensor. A general-purpose script that does this is given in the
examples/ELASTIC directory described on the :doc:`Examples <Examples>`
``examples/ELASTIC`` directory described on the :doc:`Examples <Examples>`
doc page.
Calculating elastic constants at finite temperature is more
@ -33,7 +39,7 @@ the :doc:`compute born/matrix <compute_born_matrix>` command,
which works for any bonded or non-bonded potential in LAMMPS.
The most expensive part of the calculation is the sampling of
the stress fluctuations. Several examples of this method are
provided in the examples/ELASTIC_T/BORN_MATRIX directory
provided in the ``examples/ELASTIC_T/BORN_MATRIX`` directory
described on the :doc:`Examples <Examples>` doc page.
A second way is to measure
@ -43,7 +49,7 @@ the systematic and statistical errors in this method, the magnitude of
the deformation must be chosen judiciously, and care must be taken to
fully equilibrate the deformed cell before sampling the stress
tensor. An example of this method is provided in the
examples/ELASTIC_T/DEFORMATION directory
``examples/ELASTIC_T/DEFORMATION`` directory
described on the :doc:`Examples <Examples>` doc page.
Another approach is to sample the triclinic cell fluctuations

View File

@ -1,20 +1,22 @@
Calculate thermal conductivity
==============================
The thermal conductivity kappa of a material can be measured in at
least 4 ways using various options in LAMMPS. See the examples/KAPPA
The thermal conductivity :math:`\kappa` of a material can be measured in at
least 4 ways using various options in LAMMPS. See the ``examples/KAPPA``
directory for scripts that implement the 4 methods discussed here for
a simple Lennard-Jones fluid model. Also, see the :doc:`Howto viscosity <Howto_viscosity>` page for an analogous discussion
for viscosity.
The thermal conductivity tensor kappa is a measure of the propensity
The thermal conductivity tensor :math:`\mathbf{\kappa}` is a measure of the propensity
of a material to transmit heat energy in a diffusive manner as given
by Fourier's law
J = -kappa grad(T)
.. math::
where J is the heat flux in units of energy per area per time and
grad(T) is the spatial gradient of temperature. The thermal
J = -\kappa \cdot \text{grad}(T)
where :math:`J` is the heat flux in units of energy per area per time and
:math:`\text{grad}(T)` is the spatial gradient of temperature. The thermal
conductivity thus has units of energy per distance per time per degree
K and is often approximated as an isotropic quantity, i.e. as a
scalar.
@ -49,7 +51,7 @@ details.
The fourth method is based on the Green-Kubo (GK) formula which
relates the ensemble average of the auto-correlation of the heat flux
to kappa. The heat flux can be calculated from the fluctuations of
to :math:`\kappa`. The heat flux can be calculated from the fluctuations of
per-atom potential and kinetic energies and per-atom stress tensor in
a steady-state equilibrated simulation. This is in contrast to the
two preceding non-equilibrium methods, where energy flows continuously

File diff suppressed because it is too large Load Diff

View File

@ -367,5 +367,4 @@ And execute the simulation with the following:
.. _OPLSAA96:
**(OPLS-AA)** Jorgensen, Maxwell, Tirado-Rives, J Am Chem Soc,
118(45), 11225-11236 (1996).
**(OPLS-AA)** Jorgensen, Maxwell, Tirado-Rives, J Am Chem Soc, 118(45), 11225-11236 (1996).

View File

@ -44,7 +44,7 @@ For large numbers of independent simulations, you can use
:doc:`variables <variable>` and the :doc:`next <next>` and
:doc:`jump <jump>` commands to loop over the same input script
multiple times with different settings. For example, this
script, named in.polymer
script, named ``in.polymer``
.. code-block:: LAMMPS
@ -57,7 +57,7 @@ script, named in.polymer
next d
jump in.polymer
would run 8 simulations in different directories, using a data.polymer
would run 8 simulations in different directories, using a ``data.polymer``
file in each directory. The same concept could be used to run the
same system at 8 different temperatures, using a temperature variable
and storing the output in different log and dump files, for example
@ -83,10 +83,10 @@ partition of processors. LAMMPS can be run on multiple partitions via
the :doc:`-partition command-line switch <Run_options>`.
In the last 2 examples, if LAMMPS were run on 3 partitions, the same
scripts could be used if the "index" and "loop" variables were
scripts could be used if the ``index`` and ``loop`` variables were
replaced with *universe*\ -style variables, as described in the
:doc:`variable <variable>` command. Also, the "next t" and "next a"
commands would need to be replaced with a single "next a t" command.
:doc:`variable <variable>` command. Also, the :lammps:`next t` and :lammps:`next a`
commands would need to be replaced with a single :lammps:`next a t` command.
With these modifications, the 8 simulations of each script would run
on the 3 partitions one after the other until all were finished.
Initially, 3 simulations would be started simultaneously, one on each

View File

@ -6,19 +6,22 @@ PyLammps Tutorial
Overview
--------
``PyLammps`` is a Python wrapper class for LAMMPS which can be created
on its own or use an existing lammps Python object. It creates a simpler,
:py:class:`PyLammps <lammps.PyLammps>` is a Python wrapper class for
LAMMPS which can be created on its own or use an existing
:py:class:`lammps Python <lammps.lammps>` object. It creates a simpler,
more "pythonic" interface to common LAMMPS functionality, in contrast to
the ``lammps`` wrapper for the C-style LAMMPS library interface which
is written using `Python ctypes <ctypes_>`_. The ``lammps`` wrapper
is discussed on the :doc:`Python_head` doc page.
the :py:class:`lammps <lammps.lammps>` wrapper for the LAMMPS :ref:`C
language library interface API <lammps_c_api>` which is written using
`Python ctypes <ctypes_>`_. The :py:class:`lammps <lammps.lammps>`
wrapper is discussed on the :doc:`Python_head` doc page.
Unlike the flat ``ctypes`` interface, PyLammps exposes a discoverable
API. It no longer requires knowledge of the underlying C++ code
implementation. Finally, the ``IPyLammps`` wrapper builds on top of
``PyLammps`` and adds some additional features for
`IPython integration <ipython_>`_ into `Jupyter notebooks <jupyter_>`_,
e.g. for embedded visualization output from :doc:`dump style image <dump_image>`.
Unlike the flat `ctypes <ctypes_>`_ interface, PyLammps exposes a
discoverable API. It no longer requires knowledge of the underlying C++
code implementation. Finally, the :py:class:`IPyLammps
<lammps.IPyLammps>` wrapper builds on top of :py:class:`PyLammps
<lammps.PyLammps>` and adds some additional features for `IPython
integration <ipython_>`_ into `Jupyter notebooks <jupyter_>`_, e.g. for
embedded visualization output from :doc:`dump style image <dump_image>`.
.. _ctypes: https://docs.python.org/3/library/ctypes.html
.. _ipython: https://ipython.org/
@ -30,19 +33,22 @@ Comparison of lammps and PyLammps interfaces
lammps.lammps
"""""""""""""
* uses ``ctypes``
* direct memory access to native C++ data
* uses `ctypes <ctypes_>`_
* direct memory access to native C++ data with optional support for NumPy arrays
* provides functions to send and receive data to LAMMPS
* interface modeled after the LAMMPS :ref:`C language library interface API <lammps_c_api>`
* requires knowledge of how LAMMPS internally works (C pointers, etc)
* full support for running Python with MPI using `mpi4py <https://mpi4py.readthedocs.io>`_
lammps.PyLammps
"""""""""""""""
* higher-level abstraction built on top of original ctypes interface
* higher-level abstraction built on *top* of original :py:class:`ctypes based interface <lammps.lammps>`
* manipulation of Python objects
* communication with LAMMPS is hidden from API user
* shorter, more concise Python
* better IPython integration, designed for quick prototyping
* designed for serial execution
Quick Start
-----------
@ -506,14 +512,26 @@ inside of the IPython notebook.
Using PyLammps and mpi4py (Experimental)
----------------------------------------
PyLammps can be run in parallel using mpi4py. This python package can be installed using
PyLammps can be run in parallel using `mpi4py
<https://mpi4py.readthedocs.io>`_. This python package can be installed
using
.. code-block:: bash
pip install mpi4py
The following is a short example which reads in an existing LAMMPS input file and
executes it in parallel. You can find in.melt in the examples/melt folder.
.. warning::
Usually, any :py:class:`PyLammps <lammps.PyLammps>` command must be
executed by *all* MPI processes. However, evaluations and querying
the system state is only available on MPI rank 0. Using these
functions from other MPI ranks will raise an exception.
The following is a short example which reads in an existing LAMMPS input
file and executes it in parallel. You can find in.melt in the
examples/melt folder. Please take note that the
:py:meth:`PyLammps.eval() <lammps.PyLammps.eval>` is called only from
MPI rank 0.
.. code-block:: python
@ -535,10 +553,6 @@ following mpirun command:
mpirun -np 4 python melt.py
.. warning::
Any command must be executed by all MPI processes. However, evaluations and querying the system state is only available on rank 0.
Feedback and Contributing
-------------------------

View File

@ -26,8 +26,8 @@ scripts are based on. If that script had the line
restart 50 tmp.restart
added to it, it would produce 2 binary restart files (tmp.restart.50
and tmp.restart.100) as it ran.
added to it, it would produce two binary restart files (``tmp.restart.50``
and ``tmp.restart.100``) as it ran.
This script could be used to read the first restart file and re-run the
last 50 timesteps:
@ -47,21 +47,21 @@ last 50 timesteps:
run 50
Note that the following commands do not need to be repeated because
their settings are included in the restart file: *units, atom_style,
special_bonds, pair_style, bond_style*. However, these commands do
their settings are included in the restart file: :lammps:`units`, :lammps:`atom_style`,
:lammps:`special_bonds`, :lammps:`pair_style`, :lammps:`bond_style`. However, these commands do
need to be used, since their settings are not in the restart file:
*neighbor, fix, timestep*\ .
:lammps:`neighbor`, :lammps:`fix`, :lammps:`timestep`.
If you actually use this script to perform a restarted run, you will
notice that the thermodynamic data match at step 50 (if you also put a
"thermo 50" command in the original script), but do not match at step
:lammps:`thermo 50` command in the original script), but do not match at step
100. This is because the :doc:`fix langevin <fix_langevin>` command
uses random numbers in a way that does not allow for perfect restarts.
As an alternate approach, the restart file could be converted to a data
file as follows:
.. code-block:: LAMMPS
.. code-block:: bash
lmp_g++ -r tmp.restart.50 tmp.restart.data
@ -89,8 +89,8 @@ Then, this script could be used to re-run the last 50 steps:
reset_timestep 50
run 50
Note that nearly all the settings specified in the original *in.chain*
script must be repeated, except the *pair_coeff* and *bond_coeff*
Note that nearly all the settings specified in the original ``in.chain``
script must be repeated, except the :lammps:`pair_coeff` and :lammps:`bond_coeff`
commands, since the new data file lists the force field coefficients.
Also, the :doc:`reset_timestep <reset_timestep>` command is used to tell
LAMMPS the current timestep. This value is stored in restart files, but

112
doc/src/Howto_rheo.rst Normal file
View File

@ -0,0 +1,112 @@
Reproducing hydrodynamics and elastic objects (RHEO)
====================================================
The RHEO package is a hybrid implementation of smoothed particle
hydrodynamics (SPH) for fluid flow, which can couple to the :doc:`BPM package
<Howto_bpm>` to model solid elements. RHEO combines these methods to enable
mesh-free modeling of multi-phase material systems. Its SPH solver supports
many advanced options including reproducing kernels, particle shifting, free
surface identification, and solid surface reconstruction. To model fluid-solid
systems, the status of particles can dynamically change between a fluid and
solid state, e.g. during melting/solidification, which determines how they
interact and their physical behavior. The package is designed with modularity
in mind, so one can easily turn various features on/off, adjust physical
details of the system, or develop new capabilities. For instance, the numerics
associated with calculating gradients, reproducing kernels, etc. are separated
into distinct classes to simplify the development of new integration schemes
which can call these calculations. Additional numerical details can be found in
:ref:`(Clemmer) <howto_rheo_clemmer>`. Example movies illustrating some of these
capabilities are found at https://www.lammps.org/movies.html#rheopackage.
Note, if you simply want to run a traditional SPH simulation, the :ref:`SPH package
<PKG-SPH>` package is likely better suited for your application. It has fewer advanced
features and therefore benefits from improved performance. The :ref:`MACHDYN
<PKG-MACHDYN>` package for solids may also be relevant for fluid-solid problems.
----------
At the core of the package is :doc:`fix rheo <fix_rheo>` which integrates
particle trajectories and controls many optional features (e.g. the use
of reproducing kernels). In conjunction to fix rheo, one must specify an
instance of :doc:`fix rheo/pressure <fix_rheo_pressure>` and
:doc:`fix rheo/viscosity <fix_rheo_viscosity>` to define a pressure equation
of state and viscosity model, respectively. Optionally, one can model
a heat equation with :doc:`fix rheo/thermal <fix_rheo_thermal>`, which also
allows the user to specify equations for a particle's thermal conductivity,
specific heat, latent heat, and melting temperature. The ordering of these
fixes in an an input script matters. Fix rheo must be defined prior to all
other RHEO fixes.
Typically, RHEO requires atom style rheo. In addition to typical atom
properties like positions and forces, particles store a local density,
viscosity, pressure, and status. If thermal evolution is modeled, one must
use atom style rheo/thermal which also includes a local energy, temperature, and
conductivity. Note that the temperature is always derived from the energy.
This implies the *temperature* attribute of :doc:`the set command <set>` does not
affect particles. Instead, one should use the *sph/e* attribute.
The status variable uses bit-masking to track various properties of a particle
such as its current state of matter (fluid or solid) and its location relative
to a surface. Some of these properties (and others) can be accessed using
:doc:`compute rheo/property/atom <compute_rheo_property_atom>`. The *status*
attribute in :doc:`the set command <set>` only allows control over the first bit
which sets the state of matter, 0 is fluid and 1 is solid.
Fluid interactions, including pressure forces, viscous forces, and heat exchange,
are calculated using :doc:`pair rheo <pair_rheo>`. Unlike typical pair styles,
pair rheo ignores the :doc:`special bond <special_bonds>` settings. Instead,
it determines whether to calculate forces based on the status of particles: e.g.,
hydrodynamic forces are only calculated if a fluid particle is involved.
----------
To model elastic objects, there are currently two mechanisms in RHEO, one designed
for bulk solid bodies and the other for thin shells. Both mechanisms rely on
introducing bonded forces between particles and therefore require a hybrid of atom
style bond and rheo (or rheo/thermal).
To create an elastic solid body, one has to (a) change the status of constituent
particles to solid (e.g. with the :doc:`set <set>` command), (b) create bpm
bonds between the particles (see the :doc:`bpm howto <Howto_bpm>` page for
more details), and (c) use :doc:`pair rheo/solid <pair_rheo_solid>` to
apply repulsive contact forces between distinct solid bodies. Akin to pair rheo,
pair rheo/solid considers a particles fluid/solid phase to determine whether to
apply forces. However, unlike pair rheo, pair rheo/solid does obey special bond
settings such that contact forces do not have to be calculated between two bonded
solid particles in the same elastic body.
In systems with thermal evolution, fix rheo/thermal can optionally set a
melting/solidification temperature allowing particles to dynamically swap their
state between fluid and solid when the temperature exceeds or drops below the
critical temperature, respectively. Using the *react* option, one can specify a maximum
bond length and a bond type. Then, when solidifying, particles will search their
local neighbors and automatically create bonds with any neighboring solid particles
in range. For BPM bond styles, bonds will then use the immediate position of the two
particles to calculate a reference state. When melting, particles will delete any
bonds of the specified type when reverting to a fluid state. Special bonds are updated
as bonds are created/broken.
The other option for elastic objects is an elastic shell that is nominally much
thinner than a particle diameter, e.g. a oxide skin which gradually forms over time
on the surface of a fluid. Currently, this is implemented using
:doc:`fix rheo/oxidation <fix_rheo_oxidation>` and bond style
:doc:`rheo/shell <bond_rheo_shell>`. Essentially, fix rheo/oxidation creates candidate
bonds of a specified type between surface fluid particles within a specified distance.
a newly created rheo/shell bond will then start a timer. While the timer is counting
down, the bond will delete itself if particles move too far apart or move away from the
surface. However, if the timer reaches a user-defined threshold, then the bond will
activate and apply additional forces to the fluid particles. Bond style rheo/shell
then operates very similarly to a BPM bond style, storing a reference length and
breaking if stretched too far. Unlike the above method, this option does not remove
the underlying fluid interactions (although particle shifting is turned off) and does
not modify special bond settings of particles.
While these two options are not expected to be appropriate for every system,
either framework can be modified to create more suitable models (e.g. by changing the
criteria for creating/deleting a bond or altering force calculations).
----------
.. _howto_rheo_clemmer:
**(Clemmer)** Clemmer, Pierce, O'Connor, Nevins, Jones, Lechman, Tencer, Appl. Math. Model., 130, 310-326 (2024).

View File

@ -2,7 +2,7 @@ SPC water model
===============
The SPC water model specifies a 3-site rigid water molecule with
charges and Lennard-Jones parameters assigned to each of the 3 atoms.
charges and Lennard-Jones parameters assigned to each of the three atoms.
In LAMMPS the :doc:`fix shake <fix_shake>` command can be used to hold
the two O-H bonds and the H-O-H angle rigid. A bond style of
*harmonic* and an angle style of *harmonic* or *charmm* should also be
@ -33,7 +33,7 @@ the partial charge assignments change:
| O charge = -0.8476
| H charge = 0.4238
See the :ref:`(Berendsen) <howto-Berendsen>` reference for more details on both
See the :ref:`(Berendsen2) <howto-Berendsen>` reference for more details on both
the SPC and SPC/E models.
Below is the code for a LAMMPS input file and a molecule file
@ -149,4 +149,4 @@ Wikipedia also has a nice article on `water models <https://en.wikipedia.org/wik
.. _howto-Berendsen:
**(Berendsen)** Berendsen, Grigera, Straatsma, J Phys Chem, 91, 6269-6271 (1987).
**(Berendsen2)** Berendsen, Grigera, Straatsma, J Phys Chem, 91, 6269-6271 (1987).

View File

@ -341,7 +341,12 @@ data files and obtain a list of dictionaries.
.. code-block::
[{'timestep': 0, 'pe': -6.773368053259247, 'ke': 4.498875000000003}, {'timestep': 50, 'pe': -4.80824944183232, 'ke': 2.5257981827119798}, {'timestep': 100, 'pe': -4.787560887558151, 'ke': 2.5062598821985103}, {'timestep': 150, 'pe': -4.747103368600548, 'ke': 2.46609592554545}, {'timestep': 200, 'pe': -4.750905285854413, 'ke': 2.4701136792591694}, {'timestep': 250, 'pe': -4.777432735632181, 'ke': 2.4962152903997175}]
[{'timestep': 0, 'pe': -6.773368053259247, 'ke': 4.498875000000003},
{'timestep': 50, 'pe': -4.80824944183232, 'ke': 2.5257981827119798},
{'timestep': 100, 'pe': -4.787560887558151, 'ke': 2.5062598821985103},
{'timestep': 150, 'pe': -4.747103368600548, 'ke': 2.46609592554545},
{'timestep': 200, 'pe': -4.750905285854413, 'ke': 2.4701136792591694},
{'timestep': 250, 'pe': -4.777432735632181, 'ke': 2.4962152903997175}]
Line Delimited JSON (LD-JSON)
-----------------------------
@ -352,7 +357,8 @@ Each line represents one JSON object.
.. code-block:: LAMMPS
fix extra all print 50 """{"timestep": $(step), "pe": $(pe), "ke": $(ke)}""" title "" file output.json screen no
fix extra all print 50 """{"timestep": $(step), "pe": $(pe), "ke": $(ke)}""" &
title "" file output.json screen no
.. code-block:: json
:caption: output.json

View File

@ -3,7 +3,7 @@ TIP3P water model
The TIP3P water model as implemented in CHARMM :ref:`(MacKerell)
<howto-tip3p>` specifies a 3-site rigid water molecule with charges and
Lennard-Jones parameters assigned to each of the 3 atoms.
Lennard-Jones parameters assigned to each of the three atoms.
A suitable pair style with cutoff Coulomb would be:
@ -32,9 +32,9 @@ optimized for a long-range Coulomb solver (e.g. Ewald or PPPM in LAMMPS)
model (without fix shake) is desired, for rigid bonds/angles they are
ignored.
.. list-table::
.. list-table::
:header-rows: 1
:widths: auto
:widths: 38 22 20 20
* - Parameter
- TIP3P-CHARMM

View File

@ -25,7 +25,7 @@ There are two ways to implement TIP4P water in LAMMPS:
This can be done with the following pair styles for Coulomb with a cutoff:
* :doc:`pair_style tip4p/cut <pair_lj_cut_tip4p>`
* :doc:`pair_style tip4p/cut <pair_coul>`
* :doc:`pair_style lj/cut/tip4p/cut <pair_lj_cut_tip4p>`
or these commands for a long-range Coulomb treatment:
@ -70,9 +70,9 @@ parameters adjusted for use with a long-range Coulombic solver
OM distance is specified in the :doc:`pair_style <pair_style>` command,
not as part of the pair coefficients.
.. list-table::
.. list-table::
:header-rows: 1
:widths: auto
:widths: 36 19 13 15 17
* - Parameter
- TIP4P (original)

View File

@ -32,9 +32,9 @@ The table below lists the force field parameters (in real :doc:`units
<Mahoney>` and the TIP5P-E model :ref:`(Rick) <Rick>` for use with a
long-range Coulombic solver (e.g. Ewald or PPPM in LAMMPS).
.. list-table::
.. list-table::
:header-rows: 1
:widths: auto
:widths: 50 25 25
* - Parameter
- TIP5P

View File

@ -1,22 +1,24 @@
Calculate viscosity
===================
The shear viscosity eta of a fluid can be measured in at least 6 ways
using various options in LAMMPS. See the examples/VISCOSITY directory
The shear viscosity :math:`\eta` of a fluid can be measured in at least 6 ways
using various options in LAMMPS. See the ``examples/VISCOSITY`` directory
for scripts that implement the 5 methods discussed here for a simple
Lennard-Jones fluid model and 1 method for SPC/E water model.
Also, see the :doc:`page on calculating thermal conductivity <Howto_kappa>`
for an analogous discussion for thermal conductivity.
Eta is a measure of the propensity of a fluid to transmit momentum in
:math:`\eta` is a measure of the propensity of a fluid to transmit momentum in
a direction perpendicular to the direction of velocity or momentum
flow. Alternatively it is the resistance the fluid has to being
sheared. It is given by
J = -eta grad(Vstream)
.. math::
where J is the momentum flux in units of momentum per area per time.
and grad(Vstream) is the spatial gradient of the velocity of the fluid
J = -\eta \cdot \text{grad}(V_{\text{stream}})
where :math:`J` is the momentum flux in units of momentum per area per time.
and :math:`\text{grad}(V_{\text{stream}})` is the spatial gradient of the velocity of the fluid
moving in another direction, normal to the area through which the
momentum flows. Viscosity thus has units of pressure-time.
@ -38,11 +40,11 @@ velocity to prevent the fluid from heating up.
In both cases, the velocity profile setup in the fluid by this
procedure can be monitored by the :doc:`fix ave/chunk <fix_ave_chunk>`
command, which determines grad(Vstream) in the equation above.
E.g. the derivative in the y-direction of the Vx component of fluid
motion or grad(Vstream) = dVx/dy. The Pxy off-diagonal component of
command, which determines :math:`\text{grad}(V_{\text{stream}})` in the equation above.
E.g. the derivative in the y-direction of the :math:`V_x` component of fluid
motion or :math:`\text{grad}(V_{\text{stream}}) = \frac{\text{d} V_x}{\text{d} y}`. The :math:`P_{xy}` off-diagonal component of
the pressure or stress tensor, as calculated by the :doc:`compute pressure <compute_pressure>` command, can also be monitored, which
is the J term in the equation above. See the :doc:`Howto nemd <Howto_nemd>` page for details on NEMD simulations.
is the :math:`J` term in the equation above. See the :doc:`Howto nemd <Howto_nemd>` page for details on NEMD simulations.
The third method is to perform a reverse non-equilibrium MD simulation
using the :doc:`fix viscosity <fix_viscosity>` command which implements
@ -55,7 +57,7 @@ See the :doc:`fix viscosity <fix_viscosity>` command for details.
The fourth method is based on the Green-Kubo (GK) formula which
relates the ensemble average of the auto-correlation of the
stress/pressure tensor to eta. This can be done in a fully
stress/pressure tensor to :math:`\eta`. This can be done in a fully
equilibrated simulation which is in contrast to the two preceding
non-equilibrium methods, where momentum flows continuously through the
simulation box.

View File

@ -6,7 +6,7 @@ analyzed in a variety of ways.
LAMMPS snapshots are created by the :doc:`dump <dump>` command, which
can create files in several formats. The native LAMMPS dump format is a
text file (see "dump atom" or "dump custom") which can be visualized by
text file (see :lammps:`dump atom` or :lammps:`dump custom`) which can be visualized by
`several visualization tools <https://www.lammps.org/viz.html>`_ for MD
simulation trajectories. `OVITO <https://www.ovito.org>`_ and `VMD
<https://www.ks.uiuc.edu/Research/vmd>`_ seem to be the most popular
@ -14,7 +14,13 @@ choices among them.
The :doc:`dump image <dump_image>` and :doc:`dump movie <dump_image>`
styles can output internally rendered images or convert them to a movie
during the MD run.
during the MD run. It is also possible to create visualizations from
LAMMPS inputs or restart file with the :doc:`LAMMPS-GUI
<Howto_lammps_gui>`, which uses the :doc:`dump image <dump_image>`
command internally. The ``Snapshot Image Viewer`` can be used to
adjust the visualization of the system interactively and then export
the corresponding LAMMPS commands to the clipboard to be inserted
into input files.
Programs included with LAMMPS as auxiliary tools can convert
between LAMMPS format files and other formats. See the :doc:`Tools

View File

@ -35,35 +35,35 @@ you **must** build LAMMPS from the source code.
These are the files and subdirectories in the LAMMPS distribution:
+------------+---------------------------------------------+
| README | Short description of the LAMMPS package |
+------------+---------------------------------------------+
| LICENSE | GNU General Public License (GPL) |
+------------+---------------------------------------------+
| SECURITY.md| Security policy for the LAMMPS package |
+------------+---------------------------------------------+
| bench | benchmark inputs |
+------------+---------------------------------------------+
| cmake | CMake build files |
+------------+---------------------------------------------+
| doc | documentation and tools to build the manual |
+------------+---------------------------------------------+
| examples | example input files |
+------------+---------------------------------------------+
| fortran | Fortran module for LAMMPS library interface |
+------------+---------------------------------------------+
| lib | additional provided or external libraries |
+------------+---------------------------------------------+
| potentials | selected interatomic potential files |
+------------+---------------------------------------------+
| python | Python module for LAMMPS library interface |
+------------+---------------------------------------------+
| src | LAMMPS source files |
+------------+---------------------------------------------+
| tools | pre- and post-processing tools |
+------------+---------------------------------------------+
| unittest | source code and inputs for testing LAMMPS |
+------------+---------------------------------------------+
+-----------------+---------------------------------------------+
| ``README`` | Short description of the LAMMPS package |
+-----------------+---------------------------------------------+
| ``LICENSE`` | GNU General Public License (GPL) |
+-----------------+---------------------------------------------+
| ``SECURITY.md`` | Security policy for the LAMMPS package |
+-----------------+---------------------------------------------+
| ``bench`` | benchmark inputs |
+-----------------+---------------------------------------------+
| ``cmake`` | CMake build files |
+-----------------+---------------------------------------------+
| ``doc`` | documentation and tools to build the manual |
+-----------------+---------------------------------------------+
| ``examples`` | example input files |
+-----------------+---------------------------------------------+
| ``fortran`` | Fortran module for LAMMPS library interface |
+-----------------+---------------------------------------------+
| ``lib`` | additional provided or external libraries |
+-----------------+---------------------------------------------+
| ``potentials`` | selected interatomic potential files |
+-----------------+---------------------------------------------+
| ``python`` | Python module for LAMMPS library interface |
+-----------------+---------------------------------------------+
| ``src`` | LAMMPS source files |
+-----------------+---------------------------------------------+
| ``tools`` | pre- and post-processing tools |
+-----------------+---------------------------------------------+
| ``unittest`` | source code and inputs for testing LAMMPS |
+-----------------+---------------------------------------------+
You will have all of these if you downloaded the LAMMPS source code.
You will have only some of them if you downloaded executables, as

View File

@ -60,7 +60,7 @@ between them at any time using "git checkout <branch name>".)
files (mostly by accident). If you do not need access to the entire
commit history (most people don't), you can speed up the "cloning"
process and reduce local disk space requirements by using the
*--depth* git command line flag. That will create a "shallow clone"
``--depth`` git command line flag. That will create a "shallow clone"
of the repository, which contains only a subset of the git history.
Using a depth of 1000 is usually sufficient to include the head
commits of the *develop*, the *release*, and the *maintenance*
@ -122,7 +122,7 @@ changed. How to do this depends on the build system you are using.
.. code-block:: bash
cmake . --build
cmake --build .
CMake should auto-detect whether it needs to re-run the CMake
configuration step and otherwise redo the build for all files

View File

@ -35,11 +35,11 @@ packages listed below), they do not depend on any installed software and
thus should run on *any* 64-bit x86 machine with *any* Linux version.
These executable include most of the available packages and multi-thread
parallelization (via INTEL, KOKKOS, or OPENMP package). They are **not**
compatible with MPI. Several of the LAMMPS tools executables (e.g. ``msi2lmp``)
and the ``lammps-shell`` program are included as well. Because of the
static linkage, there is no ``liblammps.so`` library file and thus also the
LAMMPS python module, which depends on it, is not included.
parallelization (via INTEL, KOKKOS, or OPENMP package). They are
**not** compatible with MPI. Several of the LAMMPS tools executables
(e.g. ``msi2lmp``) are included as well. Because of the static linkage,
there is no ``liblammps.so`` library file and thus also the LAMMPS
python module, which depends on it, is not included.
The compressed tar archives available for download have names following
the pattern ``lammps-linux-x86_64-<version>.tar.gz`` and will all unpack

View File

@ -31,7 +31,7 @@ command:
tar -xzvf lammps*.tar.gz
This will create a LAMMPS directory with the version date in its name,
e.g. lammps-28Mar23.
e.g. ``lammps-28Mar23``.
----------

View File

@ -34,7 +34,7 @@ When you download the installer package, you run it on your Windows
machine. It will then prompt you with a dialog, where you can choose
the installation directory, unpack and copy several executables,
potential files, documentation PDFs, selected example files, etc. It
will then update a few system settings (e.g. PATH, LAMMPS_POTENTIALS)
will then update a few system settings (e.g. ``PATH``, ``LAMMPS_POTENTIALS``)
and add an entry into the Start Menu (with references to the
documentation, LAMMPS homepage and more). From that menu, there is
also a link to an uninstaller that removes the files and undoes the

View File

@ -1,19 +1,88 @@
Authors of LAMMPS
-----------------
The primary LAMMPS developers are at Sandia National Labs and Temple
University:
The current core LAMMPS developers are listed here (grouped by seniority
and sorted alphabetically by last name). You can email an individual
developer with code related questions for their area of expertise, or
send an email to all of them at this address: "developers at
lammps.org". General questions about LAMMPS should be posted in the
`LAMMPS forum on MatSci <https://matsci.org/lammps/>`_.
* `Steve Plimpton <sjp_>`_, sjplimp at gmail.com
* Aidan Thompson, athomps at sandia.gov
* Stan Moore, stamoor at sandia.gov
* `Axel Kohlmeyer <https://sites.google.com/site/akohlmey/>`_, akohlmey at gmail.com
* Richard Berger, richard.berger at outlook.com
.. raw:: latex
\small
.. list-table::
:widths: 17 15 25 43
:header-rows: 1
* - Name
- Affiliation
- Email
- Areas of expertise
* - `Axel Kohlmeyer <ak_>`_
- Temple U
- akohlmey at gmail.com
- OpenMP, library interfaces, LAMMPS-GUI, GitHub, MatSci forum, code maintenance, testing, releases
* - `Steve Plimpton <sjp_>`_
- SNL (retired)
- sjplimp at gmail.com
- MD kernels, parallel algorithms & scalability, code structure and design
* - `Aidan Thompson <at_>`_
- SNL
- athomps at sandia.gov
- manybody potentials, machine learned potentials, materials science, statistical mechanics
* -
-
-
-
* - `Richard Berger <rb_>`_
- LANL
- richard.berger at outlook.com
- Python, HPC, DevOps
* - `Germain Clavier <gc_>`_
- U Caen
- germain.clavier at unicaen.fr
- organic molecules, polymers, mechanical properties, surfaces, integrators, coarse-graining
* - Joel Clemmer
- SNL
- jtclemm at sandia.gov
- granular systems fluid/solid mechanics
* - `Jacob R. Gissinger <jg_>`_
- Stevens Institute of Technology
- jgissing at stevens.edu
- reactive molecular dynamics, macro-molecular systems, type labels
* - James Goff
- SNL
- jmgoff at sandia.gov
- machine learned potentials, QEq solvers, Python
* - Megan McCarthy
- SNL
- megmcca at sandia.gov
- alloys, micro-structure, machine learned potentials
* - Stan Moore
- SNL
- stamoor at sandia.gov
- Kokkos, KSpace solvers, ReaxFF
* - `Trung Nguyen <tn_>`_
- U Chicago
- ndactrung at gmail.com
- soft matter, GPU package
.. _rb: https://rbberger.github.io/
.. _gc: https://enthalpiste.fr/
.. _jg: https://www.nanocipher.org/
.. _ak: https://sites.google.com/site/akohlmey/
.. _tn: https://sites.google.com/site/ndtrung8/
.. _at: https://www2.sandia.gov/~athomps/
.. _sjp: https://sjplimp.github.io
.. _lws: https://www.lammps.org
Past developers include Paul Crozier and Mark Stevens, both at Sandia,
.. raw:: latex
\normalsize
Past developers include Paul Crozier and Mark Stevens, both at SNL,
and Ray Shan, now at Materials Design.
----------

View File

@ -25,9 +25,13 @@ Here are suggestions on how to perform these tasks:
wraps the library interface is provided. Thus, GUI interfaces can be
written in Python or C/C++ that run LAMMPS and visualize or plot its
output. Examples of this are provided in the python directory and
described on the :doc:`Python <Python_head>` doc page. As of version
2 August 2023 :ref:`a GUI tool <lammps_gui>` is included in LAMMPS.
Also, there are several external wrappers or GUI front ends.
described on the :doc:`Python <Python_head>` doc page.
Since version 2 August 2023 :ref:`a LAMMPS-GUI tool <lammps_gui>` is
included in LAMMPS. Also, there are several external wrappers or GUI
front ends that are mentioned on the `Pre-/post-processing tools page
<https://www.lammps.org/prepost.html>`_ of the LAMMPS homepage.
* **Builder:** Several pre-processing tools are packaged with LAMMPS.
Some of them convert input files in formats produced by other MD codes
such as CHARMM, AMBER, or Insight into LAMMPS input formats. Some of
@ -35,12 +39,13 @@ Here are suggestions on how to perform these tasks:
such as linear bead-spring polymer chains. The moltemplate program is
a true molecular builder that will generate complex molecular models.
See the :doc:`Tools <Tools>` page for details on tools packaged with
LAMMPS. The `Pre-/post-processing page
LAMMPS. The `Pre-/post-processing tools page
<https://www.lammps.org/prepost.html>`_ of the LAMMPS homepage
describes a variety of third party tools for this task. Furthermore,
some internal LAMMPS commands allow reconstructing, or selectively adding
topology information, as well as provide the option to insert molecule
templates instead of atoms for building bulk molecular systems.
* **Force-field assignment:** The conversion tools described in the previous
bullet for CHARMM, AMBER, and Insight will also assign force field
coefficients in the LAMMPS format, assuming you provide CHARMM, AMBER,
@ -49,6 +54,7 @@ Here are suggestions on how to perform these tasks:
`InterMol <https://github.com/shirtsgroup/InterMol>`_ are particularly
powerful and flexible in converting force field and topology data
between various MD simulation programs.
* **Simulation analysis:** If you want to perform analysis on-the-fly as
your simulation runs, see the :doc:`compute <compute>` and :doc:`fix
<fix>` doc pages, which list commands that can be used in a LAMMPS
@ -66,19 +72,38 @@ Here are suggestions on how to perform these tasks:
extract and massage data in dump files to make it easier to import
into other programs. See the :doc:`Tools <Tools>` page for details on
these various options.
The `Pre-/post-processing page <https://www.lammps.org/prepost.html>`_
on the LAMMPS homepage lists some external packages for analysis of MD
simulation data, including data produced by LAMMPS.
* **Visualization:** LAMMPS can produce NETPBM, JPG, or PNG format
snapshot images on-the-fly via its :doc:`dump image <dump_image>`
command and pass them to an external program, `FFmpeg <https://ffmpeg.org/>`_,
to generate movies from them. For high-quality, interactive visualization,
there are many excellent and free tools available. See the `Visualization Tools
command and pass them to an external program, `FFmpeg
<https://ffmpeg.org/>`_, to generate movies from them. The
:ref:`LAMMPS-GUI tool <lammps_gui>` has an *Snapshot Image Viewer*
which uses :doc:`dump image <dump_image>` and allows to modify the
visualization settings interactively. It also has a *Slide Show*
feature where images created by :doc:`dump image <dump_image>` are
collected during a simulation and can be animated interactively or
exported to a movie with FFmpeg.
For high-quality, interactive visualization, there are many excellent
and free tools available. See the `Visualization Tools
<https://www.lammps.org/viz.html>`_ page of the LAMMPS website for
visualization packages that can process LAMMPS output data.
* **Plotting:** See the next bullet about Pizza.py as well as the
:doc:`Python <Python_head>` page for examples of plotting LAMMPS
output. Scripts provided with the *python* tool in the ``tools``
directory will extract and process data in log and dump files to make
it easier to analyze and plot. See the :doc:`Tools <Tools>` doc page
for more discussion of the various tools.
The :ref:`LAMMPS-GUI tool <lammps_gui>` has an *Chart Viewer* where
:doc:`thermodynamic data <thermo_style>` computed by LAMMPS is
collected during the simulation and plotted immediately.
* **Pizza.py:** Our group has also written a separate toolkit called
`Pizza.py <https://lammps.github.io/pizza>`_ which can do certain kinds of
setup, analysis, plotting, and visualization (via OpenGL) for LAMMPS

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