Compare commits

...

3807 Commits

Author SHA1 Message Date
b3d9f648ef Merge pull request #2414 from akohlmey/next_lammps_version
Update version strings for next patch release
2020-10-09 20:12:56 -04:00
0460dc3dfb Merge pull request #2413 from akohlmey/progguide-updates
More Programmer Guide and Library Interface updates for next release
2020-10-09 19:30:37 -04:00
51489c1509 dedup anchor 2020-10-09 17:29:31 -04:00
97964604c6 no point in trying a static link of executables 2020-10-09 13:29:13 -04:00
362fe700a5 remove static libraries for cross-compiler. not used with .dll version. 2020-10-09 13:26:52 -04:00
43f2c14c8b print warning when reading data files with non-zero image flags for non-periodic boundaries 2020-10-09 13:24:53 -04:00
57e0e64ffe No MPI communicaton after MPI_Finalize() and no MPI_Finalize() unless we are initialized. 2020-10-09 12:47:13 -04:00
078f931393 add comment to explain using the LAMMPS_LIB_MPI define in example 2020-10-09 11:50:53 -04:00
84c9fcf6e9 add legacy warning to F77 style Fortran wrapper 2020-10-09 11:15:15 -04:00
74e1d0f8cf move Tools compilation script code from CMakeLists.txt to separate Tools.cmake file 2020-10-09 11:15:00 -04:00
5457accb3d make the legacy fortran wrapper work (again) 2020-10-09 07:52:36 -04:00
ca3d10fa39 need to define LAMMPS_LIB_MPI 2020-10-09 07:37:25 -04:00
bafba4235c include versionadded tags 2020-10-09 07:26:01 -04:00
188e1c3828 correct versionadded dates 2020-10-09 07:22:16 -04:00
38bf231361 silence sphinx warning 2020-10-09 07:19:02 -04:00
471acb2ef8 add unit tests for added APIs 2020-10-09 07:16:34 -04:00
7a9b4ef0d4 include FFTW in MinGW cross-compiler libraries. Make static/dynamic explicit 2020-10-09 02:27:31 -04:00
eb3992a69a enable static linkage for executables when cross-compiling with MinGW 2020-10-09 02:26:46 -04:00
bfcb78d5d7 fix bug with string passing 2020-10-09 01:42:48 -04:00
5a207247b6 update version strings for next patch release 2020-10-09 01:12:41 -04:00
6d67fa004c tweak formulation 2020-10-08 23:35:49 -04:00
90d511bc86 add wrappers for new library functions 2020-10-08 22:32:33 -04:00
49ebc5ac40 update versionadded date 2020-10-08 22:32:08 -04:00
5c6bfa6ab5 Merge branch 'master' into progguide-axel 2020-10-08 21:51:22 -04:00
a581b4b85e Merge pull request #2412 from lammps/progguide-updates
Updates to the Programmer Guide part of the Manual
2020-10-08 21:50:37 -04:00
4f4bc427ae implement LAMMPS_LIB_NO_MPI to LAMMPS_LIB_MPI change 2020-10-08 21:50:15 -04:00
9f0002550e Merge pull request #2404 from akohlmey/fortran-portable-string
Make f2c_string utility function of the new Fortran module portable across Fortran compilers
2020-10-08 20:58:51 -04:00
4995ab3264 Merge pull request #2403 from akohlmey/fortran2-updates
Update of fortran2 interface for recent changes in the C-library interface
2020-10-08 20:23:44 -04:00
4a856148ad Merge pull request #2389 from kateryna-goloviznina/coul_tt
Pair style for charge-dipole damping with Tang-Toennies function
2020-10-08 19:47:36 -04:00
677e8afdc5 update section headlines 2020-10-08 10:32:02 -04:00
a89741f7f6 more 'doc page' to 'page' changes 2020-10-08 08:32:15 -04:00
fdbcd202fa Consolidate the redundant instructions for building the manual into one location. 2020-10-08 08:31:58 -04:00
60864f021f replace "doc page" with "page" or equivalent 2020-10-07 22:29:26 -04:00
e683585bba reformat reax/c control file parameter descriptions 2020-10-07 22:28:34 -04:00
353158f7e7 improve errors vs. exception not 2020-10-07 21:56:14 -04:00
20e1697dba add ":class: note" to admonitions where it was missing for consistent formatting 2020-10-07 20:24:56 -04:00
08f8e7ed28 update titles as suggested by steve and move a few entries around 2020-10-07 20:07:30 -04:00
d48b0ebd7b print OS/Compiler info when starting LAMMPS shell 2020-10-07 18:37:27 -04:00
0891a8ce7d better MPI version detection. 2020-10-07 18:37:09 -04:00
ac6e99ae81 implement "mem" command into LAMMPS shell to print current and max memory use 2020-10-07 18:36:43 -04:00
50bfb9142d add library API to print OS/Compiler info (for use with LAMMPS shell) 2020-10-07 18:35:59 -04:00
57cc8d6290 fix incorrectly formatted "notes" 2020-10-07 18:35:05 -04:00
1098ca8749 add some more explanation about exceptions from the library interface perspective 2020-10-07 13:08:49 -04:00
e637c150ba add versionadded tags 2020-10-07 13:08:25 -04:00
395906b387 whitespace 2020-10-07 13:07:57 -04:00
5fa1cd7e86 small corrections 2020-10-07 05:33:55 -04:00
9ea38c545d update global properties tests 2020-10-06 22:43:42 -04:00
355c68f304 Merge branch 'master' into progguide-axel 2020-10-06 21:40:43 -04:00
bf4773c3f7 Merge pull request #2407 from akohlmey/collected-small-fixes
Collected small changes and bugfixes for the next patch release
2020-10-06 20:17:45 -04:00
f0f933a711 allow forward slash in strings for if statements 2020-10-06 18:44:26 -04:00
15f9987c32 add custom commands "cd" and "pwd" to the LAMMPS shell 2020-10-06 18:39:22 -04:00
fb1dab6098 Merge branch 'master' into collected-small-fixes 2020-10-06 18:00:33 -04:00
1ee9e4eabd Merge branch 'master' into progguide-axel 2020-10-06 17:11:47 -04:00
9274912a81 add note about no longer supporting PyPar and remove instructions related to it. 2020-10-06 16:19:43 -04:00
2f857176c8 stay compatible with cmake older than version 3.14 2020-10-06 13:45:46 -04:00
f442d811be Merge commit 'dbf51af7d1565c62902eef22a7aa6f6eb552432b' of github.com:rbberger/lammps into collected-small-fixes 2020-10-06 12:29:36 -04:00
1afd9b1c83 update Python installation docs 2020-10-06 12:15:56 -04:00
887603d856 Merge pull request #2411 from rbberger/fix_wall_gran_region
Corrections for fix wall/gran and wall/gran/region
2020-10-06 11:51:58 -04:00
7dd244a828 Correct fix wall/gran and wall/gran/region docs 2020-10-06 10:45:23 -04:00
18023ad9dc Update fix_wall_gran_region.cpp
Don't store atom tag, just if there is a contact.

Fixes #2306
2020-10-06 10:39:14 -04:00
5d08f629ab fix typo 2020-10-06 05:30:09 -04:00
b5db29bae4 revise python in LAMMPS docs 2020-10-05 22:48:57 -04:00
f2ba00ea9c update label in graph 2020-10-05 21:50:54 -04:00
549e4df506 Merge branch 'progguide-richard' into progguide-axel 2020-10-05 21:04:29 -04:00
80a054471d Merge branch 'progguide-updates' into progguide-richard 2020-10-05 19:31:03 -04:00
5244f49234 Fix broken page 2020-10-05 18:04:30 -04:00
caf434811a Add example to Python_config.rst 2020-10-05 17:54:48 -04:00
b8c66b099d Fix typo 2020-10-05 17:42:43 -04:00
93ed9b4266 Add PyLammps parts 2020-10-05 17:34:50 -04:00
22cca93603 Add tests for neighbor list API 2020-10-05 17:34:08 -04:00
02b10380bc Create ctypes only neighbor list API variant
This moves the lammps.get_neighlist() method to lammps.numpy.get_neighlist().
lammps.get_neighlist() now returns a NeighList object, while the NumPy variants
returns a NumPyNeighList object. The main difference between the two is that while
the ctypes variant returns neighlist elements as

atom idx (int), numneighs (int), neighbors (POINTER(c_int))

the NumPy variant returns

atom idx (int), neighbors (numpy.array)
2020-10-05 16:21:37 -04:00
68147306e7 Add Python_neighbor.rst 2020-10-05 16:15:40 -04:00
c06348c507 Update Python docs 2020-10-05 15:07:57 -04:00
0fb91ec755 Merge pull request #2408 from akohlmey/lammps-shell
Add a LAMMPS shell tool as alternative to the LAMMPS executable for interactive use
2020-10-05 14:42:23 -04:00
d9f7ddfd6d Merge pull request #2409 from mrcdr/math_eigen_impl
PR to relate "math_eigen_impl.h" with an author
2020-10-05 14:07:09 -04:00
8f808a5e6e Update Python_usage.rst and Python_module.rst 2020-10-05 14:06:09 -04:00
ed17eabe17 Add missing code highlights 2020-10-05 14:04:44 -04:00
884295eb5f Add example showing Python exception handling 2020-10-05 14:04:14 -04:00
6672568fca Change links 2020-10-05 14:03:50 -04:00
4f1ed775e9 Add missing docstrings 2020-10-05 14:03:19 -04:00
6933233c56 add tests for the new library APIs 2020-10-05 13:43:11 -04:00
113db3ac73 fold group specific query functions into the more generic ID query functions 2020-10-05 13:41:12 -04:00
68cca6d31a make warning about lack of exception handling more specific 2020-10-05 12:51:42 -04:00
bd206dca10 simplify based on suggestions from @junghans 2020-10-05 11:44:19 -04:00
b6d333535c correct variable name 2020-10-05 11:43:43 -04:00
47e08f63ac Merge pull request #2406 from jrgissing/bond/react-rmsd_constraint_bugfix
bond/react: rmsd constraint bugfix
2020-10-05 10:43:21 -04:00
e08d905504 make a small change to math_eigen_impl.h 2020-10-05 22:32:15 +09:00
3e74e03bbb update all_on/all_off presets to really include all packages 2020-10-04 16:46:29 -04:00
d500ffa784 implement handler for CTRL-C on windows. 2020-10-04 16:42:29 -04:00
f3b33ea0c6 address spelling issues 2020-10-04 14:10:35 -04:00
d1e76068e8 add new APIs to library docs 2020-10-04 14:10:18 -04:00
ffcd905bf1 complete LAMMPS shell docs interation. Warn if exceptions are missing but don't fail 2020-10-04 14:03:34 -04:00
e360219a8a add readme and makefile for LAMMPS shell 2020-10-04 12:28:01 -04:00
e71806196f ignore LAMMPS shell history files 2020-10-04 12:27:40 -04:00
cc14bae240 add LAMMPS shell to README 2020-10-04 12:22:37 -04:00
f6a7cbd2e8 fix typo 2020-10-04 11:31:15 -04:00
2f67f299e5 correct error messages and make use of utils and fmtlib 2020-10-04 11:26:22 -04:00
ecb5078ba7 add signal handler to smoothly interrupt ongoing runs. non-windows only. 2020-10-04 11:25:37 -04:00
f1ed6a9782 change word break characters to make direct variable expansion completion work 2020-10-04 11:25:05 -04:00
9353004e3e add APIs to determine of LAMMPS is running and to interrupt a run cleanly 2020-10-04 11:23:49 -04:00
2eb07f7427 add expansions of IDs and references to IDs 2020-10-04 06:02:14 -04:00
9dfb715296 add support for variable names to id introspection in library interface 2020-10-04 06:01:26 -04:00
b1cc9949e4 include added introspection into docs 2020-10-03 23:38:22 -04:00
1988e4c24c add introspection for various kinds of IDs 2020-10-03 23:38:02 -04:00
c08089c1a7 add missing pkg-config file for readline 2020-10-03 22:35:58 -04:00
4520eef1b0 include readline support to be ready for LAMMPS-Shell 2020-10-03 22:05:52 -04:00
7f3db6f8e3 improve wording 2020-10-03 22:04:54 -04:00
c5514c0a36 windows portability fix 2020-10-03 22:02:13 -04:00
4e8feff52c add support for building the LAMMPS shell in CMake 2020-10-03 22:01:57 -04:00
acf53ff55e add a few more context aware matcher functions 2020-10-03 12:26:40 -04:00
a2f7aae6db add API to query group names 2020-10-03 12:26:17 -04:00
01c85a3032 correct embedded docs 2020-10-03 12:25:56 -04:00
b231fa8a16 add completion for force style names 2020-10-03 11:32:56 -04:00
4cf30ceda1 silence compiler warnings 2020-10-03 09:52:00 -04:00
af8f8d3c11 avoid segfault 2020-10-03 09:51:42 -04:00
024c9238f9 fix issue spotted by compiler warning 2020-10-03 09:51:28 -04:00
22cbac0b01 initial version of LAMMPS shell. without build system support (yet). 2020-10-03 09:49:35 -04:00
946a49662f bond/react: rmsd constraint bugfix
previously, eligible reactions could have been temporarily prevented, at the edge of the box, in serial
2020-10-02 18:43:35 -04:00
fb1bd3e962 Correct links 2020-10-02 18:01:52 -04:00
d91d8de76d Refactor LammpsNumpyWrapper to numpy_wrapper
LammpsNumpyWrapper was a class that was defined inside of the
lammps.numpy property when it was first accessed. This made it hard
to document the methods of this class.

This commit extracts this utility class into the lammps module and
renames it to 'numpy_wrapper'.
2020-10-02 17:28:25 -04:00
0089a35d95 Remove dead code 2020-10-02 17:27:08 -04:00
7355977819 Add missing exception handling for functions that could cause errors 2020-10-02 17:26:14 -04:00
d9cbb354d2 Move lammps exception code into its own property 2020-10-02 17:22:01 -04:00
0475397229 Update Python_usage.rst 2020-10-02 17:19:51 -04:00
60891fe6f9 Add Python_config.rst 2020-10-02 17:19:04 -04:00
b57c8f6b77 Add tests for LAMMPS exceptions in Python 2020-10-02 16:53:41 -04:00
52c6353f86 Fix typo 2020-10-02 15:09:29 -04:00
a0d0f96e52 make f2c_string utility function portable across fortran compilers 2020-10-02 10:36:17 -04:00
1f417f8eb4 mention Fortran interface in examples/COUPLE/fortran2 now that it is up-to-date again 2020-10-02 00:28:13 -04:00
086a71ba46 incorporate LAMMPS fortran2 interface updates and apply a few corrections 2020-10-02 00:07:01 -04:00
2c7a686220 update fortran2 module 2020-10-01 23:20:52 -04:00
51d55aa036 Merge pull request #2400 from akohlmey/code-analysis-fixes
A few more static code analysis fixes
2020-10-01 18:32:50 -04:00
2ea61b21f8 fix small memory leaks 2020-10-01 18:11:19 -04:00
48c45767f9 remove dead code 2020-10-01 18:11:08 -04:00
c5fc3f2c78 Update Python_usage.rst 2020-10-01 18:01:07 -04:00
533c453a08 Update Python docs 2020-10-01 15:00:08 -04:00
243a81e9d8 must initialize eflag_atom and vflag_atom to zero in constructor 2020-10-01 14:49:23 -04:00
9dc42262ec one more edit 2020-10-01 11:34:27 -06:00
343b24dd5e more edits to C library chapter 2020-10-01 10:50:33 -06:00
b94df09570 Merge pull request #2398 from lammps/progguide-updates
Documentation updates plus a few small bugfixes
2020-10-01 11:11:28 -04:00
774ac8b2d9 avoid overflow of per-local-atom computation 2020-10-01 09:49:28 -04:00
4a40a70870 avoid overflow of timestep related computations 2020-10-01 09:48:54 -04:00
8c56f60939 use bigint instead of int for timestep related variable functions to avoid overflows 2020-10-01 09:35:45 -04:00
ea3af3c2bc resolve delete/free() mismatch 2020-10-01 09:34:38 -04:00
9efcaf2d61 update documentation for Windows installer 2020-10-01 00:57:53 -04:00
fb33a71720 look for liblammps.dll in windows binary dir only if that directory exists 2020-10-01 00:34:03 -04:00
507c2cb2a8 Update and reorganize Python docs 2020-09-30 22:20:01 -04:00
a79a7b2704 fix typo reported on lammps-users 2020-09-30 21:24:55 -04:00
77fb2ee311 add list of documented functions at the top of the C-Library doc pages 2020-09-30 21:16:48 -04:00
dc13a61b40 fix spelling 2020-09-30 20:00:53 -04:00
a9b27caf17 Merge branch 'master' into progguide-axel 2020-09-30 19:57:20 -04:00
38d954e038 Update the text to mention returning the handle instead of passing it as an argument. 2020-09-30 19:54:07 -04:00
0d9a2808b4 Merge branch 'progguide-updates' of github.com:lammps/lammps into progguide-axel 2020-09-30 19:50:00 -04:00
6928e79883 Merge pull request #2395 from rbberger/collected-small-fixes
Fixes issues found via Static Code Analysis and from bug reports
2020-09-30 19:23:52 -04:00
4b71e1cbda initial library doc page edits 2020-09-30 15:37:11 -06:00
cbc529881c support hybrid atom styles in in fix propel/self 2020-09-30 14:07:46 -04:00
23279836c9 Invalidate pointer after deallocation 2020-09-30 09:10:40 -04:00
d84300a3ac do not fail when looking for gzip or ffmpeg executables when cross compiling to windows 2020-09-30 00:05:15 -04:00
555fba1e4b add special case for windows installer package where the .dll file is in the bin folder 2020-09-29 18:46:32 -04:00
e4cfb91169 discuss that USER-MESONT package potentials are not bundled and provide URL 2020-09-29 16:57:19 -04:00
0ed935ab76 silence compiler warning on windows 2020-09-29 11:19:12 -04:00
54c4b95c4d small format tweak 2020-09-28 14:09:03 -04:00
b1f6a6799c Merge remote-tracking branch 'github/master' into coul_tt 2020-09-28 13:56:00 -04:00
3b1d07225d corret strmatch() semantics and restore strcmp() in extract function 2020-09-28 13:49:38 -04:00
c217c8df24 shorten example and do not print CPU time output to avoid false positives when comparing 2020-09-28 13:49:08 -04:00
8bc67f17cc fully integrate pair style coul/tt into manual 2020-09-28 13:46:53 -04:00
e0e4e516fc Merge pull request #2396 from akohlmey/openmp-compat-auto
Autodetect OpenMP compatibility setting for known compiler signatures
2020-09-28 13:14:13 -04:00
25bda86ad0 fix typo 2020-09-28 12:52:32 -04:00
d8b55ecd65 Merge pull request #2397 from akohlmey/remove-cilk-array-notation
Remove specializations using cilk array notation from USER-INTEL
2020-09-28 11:56:02 -04:00
405c1b98c5 remove inactive code and documentation for dump image persp option 2020-09-28 08:19:26 -04:00
d868271b01 remove unneeded escapes from input examples 2020-09-28 07:52:38 -04:00
407f445753 remove specializations using cilk array notation 2020-09-28 07:32:11 -04:00
c626208c80 avoid failure with Intel compilers 2020-09-27 19:05:58 -04:00
9d39587d37 expand c-library properties example 2020-09-27 19:05:40 -04:00
fdbdd26585 include intel fortran compiler into intel cmake preset 2020-09-26 22:30:21 -04:00
b11b420b08 small doc update for singularity 2020-09-26 22:30:05 -04:00
d23f7d14c9 typo 2020-09-25 22:20:31 -04:00
7e68746ebe use safe reader function 2020-09-25 22:16:19 -04:00
adef7d4e18 need to check for nthreads < 1 only if OpenMP is enabled 2020-09-25 22:14:21 -04:00
909960514a avoid unneeded division 2020-09-25 22:10:51 -04:00
6967522a4f fix logic error 2020-09-25 22:08:28 -04:00
172bb6050a use safe read function 2020-09-25 22:08:22 -04:00
a963e85846 remove dead code 2020-09-25 21:50:53 -04:00
66c4627775 Merge branch 'collected-small-fixes' of github.com:rbberger/lammps into collected-small-changes 2020-09-25 18:14:50 -04:00
2ffa50f2f8 fix memory leak 2020-09-25 18:13:52 -04:00
ab08a27731 correct data layout for creating integrate style 2020-09-25 18:00:47 -04:00
bd60174fd3 fix argument dimensions 2020-09-25 18:00:19 -04:00
c0384eb264 update code owners 2020-09-25 17:52:51 -04:00
c496b18a9d avoid memory leak 2020-09-25 17:50:02 -04:00
d1321a0860 fix argument dimensions 2020-09-25 17:49:52 -04:00
e378532003 avoid 32-bit integer overflow 2020-09-25 17:31:49 -04:00
5e110fe707 update docs for autodetected OpenMP compatibility 2020-09-25 16:45:39 -04:00
5489c64aef remove trailing whitespace 2020-09-25 16:32:54 -04:00
2e67aa6b47 autodetect OpenMP 4.0 semantic compatibility if not explicitly set 2020-09-25 16:31:45 -04:00
cc5ef652e4 move Using Python with LAMMPS to programmer guide and integrate python module docs 2020-09-25 15:13:05 -04:00
0ffb2ce09c move Tutorials to bottom of Howto section 2020-09-25 15:12:31 -04:00
5e6d222d29 fix up a few internal references 2020-09-25 14:04:44 -04:00
495438105f mass renaming of programmer guide files 2020-09-25 13:59:29 -04:00
9a523fef65 add bibliography 2020-09-25 13:48:22 -04:00
089e55cc37 fix typo 2020-09-25 13:48:05 -04:00
26ad664079 Avoid string duplication and remove memory leak 2020-09-25 13:44:28 -04:00
e1b00e96ed bug fixed 2020-09-25 17:10:54 +02:00
064f735272 source files updated, examples changes 2020-09-25 16:08:20 +02:00
7a35f786fb tweak button size setting for active state, too. 2020-09-24 16:56:05 -04:00
28812b1ea7 Merge pull request #2381 from akohlmey/collected-small-changes
Collected small changes
2020-09-24 16:17:28 -04:00
08270c3498 update container descriptions 2020-09-24 02:17:26 -04:00
02c1480546 update README in examples/COUPLE/simple 2020-09-24 02:17:11 -04:00
ac78f8f1e1 update examples/COUPLE/simple sources to work with the current version of LAMMPS 2020-09-24 01:30:34 -04:00
b350dce573 improve error messages for variables and python commands 2020-09-23 19:02:55 -04:00
2f8a5ddd1f xindy doesn't seem to be required (and is not available on CentOS 8) 2020-09-23 17:13:09 -04:00
85fe94a6dd Merge pull request #2388 from jrgissing/molecule_fragments_check
molecule: findfragments correction
2020-09-23 15:54:37 -04:00
790f636523 rephrase 2020-09-23 15:45:29 -04:00
b6d98707ec molecule: revert overzealous error checking 2020-09-23 11:23:10 -04:00
2b30661b07 molecule: correctly update docs 2020-09-23 10:46:23 -04:00
1be766c8cd molecule fragment: let's add more checks 2020-09-23 10:37:33 -04:00
ed3975054a fix typo 2020-09-23 10:30:19 -04:00
e29f838121 also add error checks 2020-09-23 10:28:48 -04:00
88b8461e0f the right molecule fragment fix 2020-09-23 10:19:38 -04:00
343932f220 document -DLAMMPS_TRAP_FPE 2020-09-23 09:38:07 -04:00
ab4dc9c343 Merge pull request #2378 from junghans/cmake_install_fix
cmake: do not install mpi.h without library
2020-09-22 21:37:57 -04:00
20027cc7ec Merge pull request #2390 from Vsevak/hip_pppm_fix
Fix atomicAdd in PPPM/GPU for the HIP backend
2020-09-22 18:04:12 -04:00
9df1bb4db0 remove obsolete makefiles. Makefile.xk7 is on death watch but Blue Waters still has such nodes 2020-09-22 17:47:14 -04:00
459d51bbea Do not disable atomics for HIP
atomics are disabled for NVIDIA 1.0 cards, which should not affect ROCm HIP
2020-09-22 22:34:24 +03:00
7b4304577a add -std=c++11 flag to compilation of all .cpp files on Linux 2020-09-22 10:58:54 -04:00
2d7b6a9008 remove dead code 2020-09-22 10:12:59 -04:00
b878403aee update a few more singularity container definitions for doc build requirements 2020-09-22 06:01:34 -04:00
1eebdcbd03 fix obvious bugs 2020-09-22 05:34:29 -04:00
b876f451f8 make compiler choice overridable 2020-09-22 05:34:12 -04:00
f186eb7005 be more selective about which elements not to display
we only want to skip the redundant User-Documentation and Programmer-Documentation captions
2020-09-21 22:41:19 -04:00
54aacc47ea add section about citing LAMMPS 2020-09-21 22:40:36 -04:00
cc8b042abf cmake: export LAMMPS_LIB_NO_MPI for serial version 2020-09-21 12:54:56 -06:00
fbcb888ec0 cmake: do not install install mpi.h 2020-09-21 12:41:34 -06:00
51b900b043 Merge remote-tracking branch 'origin/master' into cmake_install_fix 2020-09-21 12:39:51 -06:00
36fdba32e7 Merge pull request #2382 from junghans/cmake_install_fix_2
cmake: install missing utils.h
2020-09-21 13:29:29 -04:00
19bc3d3643 Docs updated 2020-09-21 18:05:57 +02:00
7eab154786 one-line bug when checking for molecule fragments 2020-09-21 11:01:04 -04:00
8099e2a5d9 Docs updated 2020-09-21 16:16:38 +02:00
2206de7c68 Examples added, bug fixed 2020-09-21 16:14:33 +02:00
a1407de09d have make yes/no package terminate with error status for non-existing packages
this closes #2387
2020-09-21 07:09:13 -04:00
c7c7d2f474 Merge pull request #2377 from akohlmey/move-version-to-lammps
Move the members `version` and `num_ver` form Universe class to LAMMPS class
2020-09-21 02:10:08 -04:00
29a7d598ac update formatting style to be more consistent 2020-09-21 02:04:58 -04:00
0a11cc5eb9 make code valgrind clean 2020-09-21 01:55:07 -04:00
486131f4c5 fix segmentation fault bug in USER-PTM. closes #2386 2020-09-21 01:54:36 -04:00
0951fea738 Merge branch 'collected-small-changes' of github.com:akohlmey/lammps into collected-small-changes 2020-09-20 19:20:42 -04:00
acb5fd2ebf Simplify GenerateBinaryHeader utility
The function implementation was incomplete for handling the case
of multiple files. It would generate wrong C code in case more than
one files were specified. Since we don't have this use case, it's
safe to only leave the single input file implementation.

Closes issue #2294
2020-09-20 18:24:43 -04:00
7d07d04989 Use correct library for unit test if LAMMPS_MACHINE_NAME is set 2020-09-20 17:52:24 -04:00
54b9e60dd0 reformat 2020-09-20 14:06:40 -04:00
4cbf821af3 modernize example 2020-09-20 14:03:13 -04:00
774bffe623 relax result precision requirement somewhat 2020-09-20 13:57:04 -04:00
f2bb835e23 cmake: install missing utils.h 2020-09-20 10:44:54 -06:00
dfd447f570 Add missing tools for PDF index build to containers 2020-09-19 23:07:24 -04:00
61ce73273b Add missing -u flag for unbuffered PyLammps tests
Addresses issue #2380
2020-09-19 23:07:13 -04:00
92f8398bed check more thoroughly for prerequisites to translate the PDF manual. update doc/README 2020-09-19 18:16:52 -04:00
705a9a0a8b cmake: do not install mpi.h without library 2020-09-19 15:12:36 -06:00
f72fb7290b fix links 2020-09-19 16:28:20 -04:00
67aeb7a5e5 Merge branch 'move-version-to-lammps' into collected-small-changes 2020-09-19 16:17:01 -04:00
6b0346c299 try use unencrypted download or using wget if normal download of polyfill.js fails 2020-09-19 16:14:08 -04:00
c91ee210e4 simplify variable lookup in set command 2020-09-19 16:04:09 -04:00
9c0808e95a update unit tests for move of version string location 2020-09-19 15:00:03 -04:00
4c51a8ae57 move version and num_ver from Universe to LAMMPS and make num_ver an int 2020-09-19 11:37:08 -04:00
89506efd23 document Pointers class and LAMMPS_NS namespace 2020-09-19 11:16:44 -04:00
73c65d43e1 update list of main folders and descriptions 2020-09-19 02:53:36 -04:00
9030c987e6 tweak formatting and style setting to have the desired structure and layout 2020-09-19 00:54:54 -04:00
6dda562501 skip over uninitialized and internal variables. correctly identify all kinds of boolean values 2020-09-18 23:40:31 -04:00
9cdde97863 correct test logic 2020-09-18 22:37:54 -04:00
5ce6259632 correct reference to function 2020-09-18 22:35:56 -04:00
56d9222156 Merge pull request #2374 from akohlmey/next_patch_version
Step version strings for the next patch release
2020-09-18 21:45:34 -04:00
897a7d0ed4 only try to broadcast if we have a proper communicator 2020-09-18 21:17:31 -04:00
f5fda95da6 Merge branch 'master' into next_patch_version 2020-09-18 21:15:12 -04:00
094a1bea91 Merge pull request #2369 from akohlmey/collected-small-changes
Collected small changes and fixes for the next patch release
2020-09-18 20:20:41 -04:00
51957a6219 fix merge conflict 2020-09-18 19:49:36 -04:00
a0afb9b554 Merge branch 'master' into collected-small-changes 2020-09-18 18:38:47 -04:00
7580176020 Merge pull request #2376 from giacomofiorin/colvars-update
Update Colvars to version 2020-09-17
2020-09-18 18:38:17 -04:00
b520a6287b Revert parts of "Restore PDF index"
We need to update the container image(s) for building the
pdf documentation on ci.lammps.org by adding `latexmk`
and `xindy` before we can re-enable this change to the makefile.

This partially reverts commit 3c3b76a781.
2020-09-18 18:37:26 -04:00
494498df03 update docs on building the PDF version of the manual 2020-09-18 18:27:23 -04:00
906e000e4c Merge pull request #2368 from jrgissing/bond/react-update_all_charges_default
Bond/react update all charges by default
2020-09-18 18:17:54 -04:00
33a2857b33 Fix whitespace 2020-09-18 17:56:12 -04:00
3c3b76a781 Restore PDF index 2020-09-18 17:51:51 -04:00
07c9298558 Fix some broken internal hyperlinks in Colvars PDF 2020-09-18 17:24:12 -04:00
d4cd67ce74 tweak format some more and refactor manual sectioning to be logically correct
now if only there was a way to make the titles of the parts show in the
navigation sidebar.
2020-09-18 17:15:42 -04:00
7deb773440 Update Colvars to version 2020-09-17
Small changes

Implement global map of components (@HanatoK)
https://github.com/Colvars/colvars/pull/363

Format code examples with colored background (@giacomofiorin)
https://github.com/Colvars/colvars/pull/361

replaced jacobi() with an open-source version (@jewettaij)
https://github.com/Colvars/colvars/pull/360
2020-09-18 17:09:18 -04:00
e1397b9a88 Merge branch 'master' into collected-small-changes 2020-09-18 16:11:47 -04:00
34ba8ec83c Merge pull request #2359 from rbberger/python_interface_guide
Library interface updates and Python documentation
2020-09-18 16:11:08 -04:00
635b7c04a5 Update docs and docstrings 2020-09-18 14:49:25 -04:00
de811db221 address spelling issues 2020-09-18 14:13:35 -04:00
ae9abf0f7d correctly update docs 2020-09-18 14:10:32 -04:00
9a6dfbc0ee add some cross referencing 2020-09-18 13:45:33 -04:00
449513703b Merge remote-tracking branch 'origin/master' into python_interface_guide 2020-09-18 12:35:17 -04:00
e0b22a51da Doc updates 2020-09-18 12:35:07 -04:00
1afb355d09 Limit int types to LAMMPS_INT and LAMMPS_INT64
Keep LAMMPS_TAGINT and LAMMPS_BIGINT internal to LAMMPS.
An external caller now only needs to distinguish between 32 and 64bit
integers, doubles and C strings.
2020-09-18 12:05:37 -04:00
edbfdde372 document ubuf union in developer guide 2020-09-18 11:55:06 -04:00
1264184e7b tweak some website layout and style settings
- make previous/next buttoms smaller and show on top and bottom of page
- make tab header items smaller and more rounded
- reduce padding on a few selected items to make pages more compact

remove obsolete lammps.css file variant
2020-09-18 10:55:50 -04:00
df4ab6c39e Merge pull request #2375 from akohlmey/fmtlib-update
Update bundled fmtlib to version 7.0.3
2020-09-18 10:30:18 -04:00
dc89f0879c update specific pull request templates as they are available through the github cli now 2020-09-18 06:54:31 -04:00
3a2457bb3d update bundled fmtlib to version 7.0.3 2020-09-18 06:14:46 -04:00
2b1e249483 add comments to mark LAMMPS specific customizations 2020-09-18 06:12:42 -04:00
1ef36fd20a step version strings for next patch release 2020-09-17 22:16:42 -04:00
0e81803c8b some embedded documentation tweaks 2020-09-17 22:00:58 -04:00
90abe12a3e update LAMMPS version reference 2020-09-17 21:04:43 -04:00
445e57923f add one-time deprecation warning to lammps_open() and lammps_open_no_mpi() 2020-09-17 21:01:38 -04:00
6e22229424 Merge remote-tracking branch 'github/master' into collected-small-changes 2020-09-17 20:27:55 -04:00
94ad6821f7 Merge pull request #2373 from stanmoore1/kk_wkar
Add workaround for performance regression in Kokkos Package
2020-09-17 20:24:39 -04:00
d8b6ebdfc8 Add workaround for performance regression 2020-09-17 16:33:48 -06:00
42aca25a58 Update docs, fix typos 2020-09-17 18:10:08 -04:00
b4a1c9c24c Update examples 2020-09-17 17:08:13 -04:00
cf1ae7afa6 Use wrapper lammps.extract_atom_datatype 2020-09-17 17:04:40 -04:00
6729a42cfa Merge branch 'master' into collected-small-changes 2020-09-17 17:01:44 -04:00
3b96375888 Merge pull request #2371 from arghdos/kokkos_hip_porting
Additional Kokkos/HIP porting work
2020-09-17 16:58:46 -04:00
be72ce2534 Simplify Python examples to use numpy.extract_atom 2020-09-17 16:51:46 -04:00
ab6b69d6bd Add documentation and better autodetect 2020-09-17 16:39:19 -04:00
c06d5f7fb7 Fix type cast 2020-09-17 16:37:25 -04:00
b81ad54baa Simplify extract_atom and extract_global in Python interface
Both extract methods now can auto-detect the datatype of both global
and per-atom properties. Callers can still enforce different types
if needed by specifying the now optional dtype argument.

The numpy wrapper now has a new extract_atom function method, which
replace the extract_atom_darray and extract_atom_iarray method and
autodetects both type and size. All parameters can still be forced
to use different values if needed.
2020-09-17 16:16:27 -04:00
3275419872 Allow Colvars to include headers from the LAMMPS source directory 2020-09-17 14:37:26 -04:00
d88810f13a Add datatype introspection methods to library
Adds lammps_extract_atom_datatype and lammps_extract_global_datatype functions
to allow extracting type information of properties.
2020-09-17 13:43:43 -04:00
4c5aedeaa0 fix typo 2020-09-17 12:50:53 -04:00
91eaaba1be improve portability of docs makefile
- detect if /bin/bash is not found and provide a suitable error message
- use $(MAKE) and $(MFLAGS) variables to handle cases where GNU make is not called "make"
2020-09-17 12:40:09 -04:00
706a898163 Merge remote-tracking branch 'origin/master' into python_interface_guide 2020-09-17 12:08:12 -04:00
9fa43b8b12 Skip Numpy tests if not installed 2020-09-17 12:03:36 -04:00
7bf177a1c7 Fast forward porting work to master
Change-Id: Ieb428e4a001efadf880dbe2c64c2a685cebdd4ae
2020-09-17 10:45:04 -05:00
0522e3d7b6 a few more unittest tweaks 2020-09-17 11:11:44 -04:00
00641f9f24 relax epsilon a little for passing cross-platform tests 2020-09-17 11:01:59 -04:00
5dacfc47ca Change return type of lammps.get_natoms to int
Closes PR #2370
2020-09-17 10:57:49 -04:00
62a63d0cd8 silence compiler warnings 2020-09-17 10:27:06 -04:00
f8f2a94f60 coul/tt pair style added to USER-DRUDE 2020-09-17 15:14:27 +02:00
e2fc70da62 Merge branch 'master' into collected-small-changes 2020-09-17 06:51:21 -04:00
e924fc6d6e Merge pull request #2347 from jewettaij/math_eigen
Replace eigensolver code in LAMMPS with math_eigen.h and updated docs
2020-09-17 00:28:12 -04:00
e839fe0d30 Merge branch 'master' into collected-small-changes 2020-09-16 23:53:29 -04:00
b96512171c set -DCOLVARS_LAMMPS when compiling colvars library 2020-09-16 23:52:06 -04:00
4e304177a1 Merge pull request #2356 from giacomofiorin/colvars-update
Update Colvars to version 2020-07-07
2020-09-16 23:37:02 -04:00
b9919b72d7 make MSM test w/o PBC run faster 2020-09-16 23:36:17 -04:00
429cc0cacf add missing updates for symbolic constants in Atom class 2020-09-16 23:19:10 -04:00
6e9a39cf22 remove trailing whitespace 2020-09-16 22:57:49 -04:00
c14fd3131a Merge pull request #2367 from ndtrung81/rigid-langevin
Fixed a bug in computing the langevin torques applied to rigid bodies
2020-09-16 22:36:04 -04:00
61b83901f5 bond/react: correct new custom_charges logic 2020-09-16 21:28:48 -04:00
55bc1baf97 bond/react: correct recent enum update 2020-09-16 20:33:45 -04:00
b176cdf28c remove trailing whitespace 2020-09-16 18:18:53 -04:00
a8a9fb6eb8 adapt unit test for Jacobi class 2020-09-16 18:17:23 -04:00
12582edfb7 Add numpy.extract_atom_darray test 2020-09-16 18:04:45 -04:00
96f4178d92 add URLs to upstream projects for eigensolvers 2020-09-16 17:53:27 -04:00
942ed3afeb update copyright headers to match LAMMPS' conventions 2020-09-16 17:35:58 -04:00
85d36ad6c4 Condense export of debug macro 2020-09-16 17:28:28 -04:00
55a054a44a bond/react: default charge update docs 2020-09-16 17:09:48 -04:00
6faf436850 bond/react: update all charges by default, even with edge atoms
custom charges has new keyword, now done with molecule fragments (not backwards compatible)
2020-09-16 17:02:49 -04:00
dfcdb61d87 Used existing helper functions to make codes more consise 2020-09-16 15:40:04 -05:00
e6703019bc Update examples to use Python API constants 2020-09-16 16:10:43 -04:00
c82df186b5 Disable zstd tests if library is too old 2020-09-16 15:18:28 -04:00
ccc743e13e Add test for thermo data 2020-09-16 15:14:05 -04:00
bd542efa52 include math_eigen.h, remove it from .gitignore 2020-09-16 14:12:14 -04:00
0931cdd109 relax epsilon for rigid body integrators 2020-09-16 14:07:28 -04:00
fd9e39bf1a update docs 2020-09-16 14:07:06 -04:00
10991ee638 separate the MathEigen implementation into its own header file 2020-09-16 14:06:58 -04:00
8ccd3c03fa Correct test name 2020-09-16 12:54:36 -04:00
2270d8f4ec Add PyLammps.atoms test and fix bug with -echo screen/both 2020-09-16 12:48:20 -04:00
9cdd35e625 Make sure Python tests run unbuffered so PyLammps works 2020-09-16 11:28:38 -04:00
f7a939dec2 update atom_style tester for new jacobi implementation 2020-09-16 10:25:03 -04:00
ca24806f4c Add tests 2020-09-16 10:11:00 -04:00
981d60f1bd update rigid tests for new eigensolver 2020-09-15 22:47:52 -04:00
48ad860889 only do Zstd tests if it is enabled/found. 2020-09-15 22:47:10 -04:00
f5998692d0 Merge branch 'master' into math_eigen 2020-09-15 21:37:05 -04:00
d611b85d7d Merge pull request #2360 from akohlmey/symbolic-atom-constants
Replace numeric with symbolic constants in Atom and AtomVec classes
2020-09-15 21:27:47 -04:00
38f0a2e24c Fix doc build errors 2020-09-15 19:50:28 -04:00
cf7d2109a3 Merge branch 'library-progguide' into symbolic-atom-constants 2020-09-15 19:50:18 -04:00
4b25eb1a34 small tweaks 2020-09-15 19:08:40 -04:00
88cee4ff09 the library interface is for calling from C, so switch nullptr in comments/docs back to NULL 2020-09-15 19:07:07 -04:00
a3765eb75b Merge branch 'master' into library-progguide 2020-09-15 18:58:29 -04:00
7611efeea2 Update python docs 2020-09-15 18:03:26 -04:00
0f6a34775c Merge branch 'master' into symbolic-atom-constants 2020-09-15 17:44:31 -04:00
cebf6d33ba Merge pull request #2358 from eagunn/iss2345
Replace instances of NULL with nullptr
2020-09-15 17:41:24 -04:00
ae68becf4a Fixed a bug in computing the langevin torques applied to rigid bodies 2020-09-15 15:27:24 -05:00
60712e3f90 Add docstrings 2020-09-15 16:22:43 -04:00
f481a403bc Merge pull request #2366 from akohlmey/msm-fix
Apply alternate bugfix to KSpace style MSM that avoids grid level overflow
2020-09-15 16:22:19 -04:00
556dc67fdc Correct filename of generated image 2020-09-15 15:20:38 -04:00
6cfad41be4 Add background_color argument to IPyLammps.image 2020-09-15 15:19:39 -04:00
e5e449795a Add tests for has_style and available_styles 2020-09-15 15:16:19 -04:00
618b08dcfc Merge branch 'master' into symbolic-atom-constants 2020-09-15 14:58:13 -04:00
3dd3c6a2a5 redo fix for class member shadowing while avoiding overflowing levels 2020-09-15 14:48:55 -04:00
16749566f8 Revert "fix issue with local variable shadowing a global variable"
This reverts commit 3368eb79d8.
2020-09-15 14:42:00 -04:00
2165f6ed38 Merge pull request #2363 from akohlmey/consistent-memory-usage
Make memory usage reporting consistent
2020-09-15 14:21:07 -04:00
baa49984c2 update comments 2020-09-15 14:19:40 -04:00
326d9f398c Merge branch 'master' into iss2345 2020-09-15 14:06:16 -04:00
5cbb54b844 Merge branch 'iss2345' of github.com:eagunn/lammps into iss2345 2020-09-15 14:04:16 -04:00
b5832191d8 Merge pull request #2364 from akohlmey/force-test-bugfix
Force style unit test template bugfix
2020-09-15 13:40:13 -04:00
5da50d64c9 reformulate 2020-09-15 12:32:43 -04:00
2f3c916a57 add unit test for lammps_memory_usage() 2020-09-15 12:29:03 -04:00
3576464268 Merge branch 'master' into consistent-memory-usage 2020-09-15 12:25:16 -04:00
9490370eb0 Use consistent naming in PyLAMMPS classes 2020-09-15 12:22:36 -04:00
2c30de65d2 Fix typos in docstring 2020-09-15 12:16:47 -04:00
165444004e Merge pull request #2362 from akohlmey/library-progguide
Updates to C-Library interface progammer guide and reference
2020-09-15 11:51:02 -04:00
db59abf1b9 fix bug in lammps_has_style() 2020-09-15 11:34:24 -04:00
4a48ce76b8 Merge remote-tracking branch 'origin/master' into python_interface_guide 2020-09-15 11:34:16 -04:00
c6bc21febf Merge pull request #2361 from akohlmey/collected-small-changes
Collected small changes for the next patch release
2020-09-15 11:28:25 -04:00
2f3c73217b detect if dt has been changed from default and print warning if reset by units command 2020-09-15 10:50:44 -04:00
b20b234ebe Merge remote-tracking branch 'origin/master' into python_interface_guide 2020-09-15 10:45:28 -04:00
e30864431f add test for missing quartic bond style 2020-09-15 10:12:18 -04:00
2794108837 don't update per-atom pair data if not available 2020-09-15 10:12:07 -04:00
238730b13d update epsilon 2020-09-15 09:55:58 -04:00
c6b6369d2d fix bug in input script templates that would have the timestep setting overwritten by a units command 2020-09-15 09:46:57 -04:00
bc31486fd1 start tests for lammps_extract_global() 2020-09-15 09:27:07 -04:00
bb76215ef0 add library interface to retrieve memory usage info 2020-09-15 01:59:58 -04:00
4b64be77e0 consolidate memory allocation information into a single function (in Info) 2020-09-15 01:59:58 -04:00
0183e999c9 consistently return "memory_usage" as double. 2020-09-15 01:59:58 -04:00
39681acfa4 add cross reference 2020-09-14 21:03:39 -04:00
d27d4912af test lammps_extract_settings() 2020-09-14 20:53:19 -04:00
1e54a9fcf1 complete tests for extracting and resetting the box 2020-09-14 20:27:29 -04:00
5c7f67201b make naming more consistent 2020-09-14 20:27:10 -04:00
93bd851ab0 fix typo 2020-09-14 17:39:31 -04:00
df9f0e244b add false positive 2020-09-14 17:18:14 -04:00
5634dd4394 correct formatting of examples 2020-09-14 17:15:53 -04:00
b1e0990c46 update lammps config settings calls example 2020-09-14 17:11:27 -04:00
f70717710e fix for zstd support. add styles to list at top and document .zst extension requirement 2020-09-14 17:07:09 -04:00
a1b2f82107 test for exceptions add example 2020-09-14 17:01:28 -04:00
4185608e92 complete testing for LAMMPS configuration queries 2020-09-14 14:56:56 -04:00
b455812434 more tests for properties and configuration 2020-09-14 14:25:17 -04:00
f5e9804557 cosmetic 2020-09-14 14:24:34 -04:00
6315b277c8 Revert commit 14dfd3876a which walked-back
the NULL->nullptr changes for lib/awpmd.

Then, hand-applied a minor cleanup to comments, ala Axel's changes to the
rest of the codebase.
2020-09-14 12:05:46 -06:00
430d151660 Revert commit 05d41cd50d which walked-back
the NULL->nullptr changes for lib/poems.

Then, hand-applied a minor cleanup to comments, ala Axel's changes to the
rest of the codebase.
2020-09-14 12:05:46 -06:00
58a17532bf fix up some comments 2020-09-14 12:05:45 -06:00
ec1fe4e445 update molfile plugin headers with latest versions from VMD 2020-09-14 12:05:45 -06:00
a57a5c76a5 T2345: After examining comments changed by batch conversion of NULL
to nullptr, I've corrected a small number where it seemed clear
that the previous NULL should have been either "NULL" (where the
code is looking for a string with that value),  or null char / null byte
(where the comment is talking about the char/byte that terminates
a c-style string).

Also changed 6 places where the batch change had changed 'NULL ptr'
to 'nullptr ptr'. Now they simply say 'nullptr'.
2020-09-14 12:05:45 -06:00
96f0e7e0d0 T2345: Walking back nullptr changes in #defines in STUBS/mpi.h 2020-09-14 12:05:45 -06:00
96b01f2383 T2345: Walking back nullptr changes to lib/awpmd 2020-09-14 12:05:45 -06:00
ed57554e18 T2345: Replace instances of NULL with nullptr
revert lib/poems to remove nullptr changes.
Walking back changes to lib as needed.
2020-09-14 12:05:44 -06:00
f524fa758d T2345: Replace instances of NULL with nullptr
Per guidance from Axel, revert lib/kokkos and lib/colvars
to remove nullptr changes.
2020-09-14 12:05:44 -06:00
9a5d8fd18b Manually resolve two rebase conflicts. 2020-09-14 12:04:51 -06:00
50b80e078d Merge pull request #2354 from stanmoore1/qeq_refactor
small fix qeq/reax refactoring for base and accelerated variants
2020-09-14 12:18:32 -04:00
ac040dc85f update prototype to allow constant strings 2020-09-14 12:17:49 -04:00
f4601235c9 add tests for lammps configuration introspection via library interface 2020-09-14 12:17:24 -04:00
155e7de859 fix bug in lammps_has_style() 2020-09-14 12:16:53 -04:00
a5740d75cf add missing option 2020-09-14 09:27:49 -04:00
3655919c7c tweak minimize summary output format 2020-09-14 09:09:22 -04:00
cc86214fe2 take back too eager change 2020-09-13 17:20:29 -04:00
2438f38afc skip test if atom style is missing 2020-09-13 17:12:21 -04:00
96a5585d65 use more const char pointers 2020-09-13 17:12:11 -04:00
a2fc33b419 update c-library tests 2020-09-13 17:02:32 -04:00
de49325c0f add properties example 2020-09-13 17:00:08 -04:00
fcb38354dc import adapted example input deck 2020-09-13 16:47:29 -04:00
39255da6ae use common main function that allows handling of common command line flags. 2020-09-13 16:46:59 -04:00
5a0623595b make char * argument of lammps_get_thermo() const 2020-09-13 16:46:13 -04:00
b702298e83 fix typo 2020-09-12 19:06:58 -04:00
da0cdb0de4 update formatting of keyword summary 2020-09-12 19:06:30 -04:00
eda04dac98 update conventions and guidelines about C++ standard and requirements 2020-09-12 15:13:23 -04:00
93a0d4c096 fix up some comments 2020-09-12 14:26:34 -04:00
bc850bcd97 update molfile plugin headers with latest versions from VMD 2020-09-12 14:04:23 -04:00
1597cd5dcb T2345: After examining comments changed by batch conversion of NULL
to nullptr, I've corrected a small number where it seemed clear
that the previous NULL should have been either "NULL" (where the
code is looking for a string with that value),  or null char / null byte
(where the comment is talking about the char/byte that terminates
a c-style string).

Also changed 6 places where the batch change had changed 'NULL ptr'
to 'nullptr ptr'. Now they simply say 'nullptr'.
2020-09-12 09:34:39 -06:00
9f0354f816 T2345: Walking back nullptr changes in #defines in STUBS/mpi.h 2020-09-12 09:34:39 -06:00
14dfd3876a T2345: Walking back nullptr changes to lib/awpmd 2020-09-12 09:34:39 -06:00
05d41cd50d T2345: Replace instances of NULL with nullptr
revert lib/poems to remove nullptr changes.
Walking back changes to lib as needed.
2020-09-12 09:34:39 -06:00
13be8085e5 T2345: Replace instances of NULL with nullptr
Per guidance from Axel, revert lib/kokkos and lib/colvars
to remove nullptr changes.
2020-09-12 09:34:39 -06:00
f1ef7d85a8 T2345: Replace instances of NULL with nullptr
The following changes have been applied to src and lib folders:
regex replace: ([^"_])NULL ⇒ \1nullptr (8968 chgs in src, 1153 in lib)
Manually find/change: (void \*) nullptr ⇒ nullptr (1 case)
regex find: ".*?nullptr.*?"
  Manually ~14 cases back to "NULL" in src, ~2 in lib
  regex finds a few false positive where nullptr appears between two
  strings in a function call
2020-09-12 09:34:38 -06:00
69962b4de5 add test for MSM kspace without periodic boundaries 2020-09-12 11:10:38 -04:00
3368eb79d8 fix issue with local variable shadowing a global variable 2020-09-12 11:10:12 -04:00
d7500c3e5a MSM output format tweaks 2020-09-12 11:09:33 -04:00
16d2fef5ad add check that shrinkwrap boundaries are not use when reading a data file while a MSM kspace style is defined 2020-09-12 11:06:20 -04:00
4a8d6016e4 Update docs 2020-09-11 22:49:44 -06:00
828ce84df5 add check for number of local atom indices overflowing neighbor lists for molecular systems 2020-09-11 22:09:09 -04:00
bc1b876a3d make fix widom errors and test output consistent with the fix name capitalization 2020-09-11 19:29:17 -04:00
47b3039b28 update unit tests, too 2020-09-11 19:24:32 -04:00
9d0c3bc665 replace some numeric constants in Atom and AtomVec classes with enumerators 2020-09-11 19:07:55 -04:00
612f1d7ce3 fix typo 2020-09-11 17:49:06 -04:00
7b869e8ee8 Start with more detailed description of PyLammps 2020-09-11 17:09:38 -04:00
77d475d121 Add more tests 2020-09-11 15:48:23 -04:00
58833ce11e Add API tests 2020-09-11 15:21:36 -04:00
cb253b2b1a Add HTML report option for Python 2020-09-11 14:03:13 -04:00
1855f92694 Use include and omit 2020-09-11 12:44:41 -04:00
377163d940 Add target to generate Python coverage XML 2020-09-11 11:36:22 -04:00
101d39142e Merge pull request #2357 from akohlmey/lib-get-mpi-comm
Add ability to retrieve the MPI communicator from LAMMPS instance via library/python interface
2020-09-11 11:20:12 -04:00
97000fa016 Merge remote-tracking branch 'origin/master' into python_interface_guide 2020-09-11 09:48:28 -04:00
ded57ba749 move test to avoid issues with indentation from having tabs follow directly a list-table 2020-09-10 16:16:58 -04:00
4452109b60 address spelling issue 2020-09-10 16:15:03 -04:00
0d5f68bc30 make "new in" and "changed in" leads boldface 2020-09-10 16:14:53 -04:00
3d37fd05f4 disable caching - for now - to avoid bad side effects from sphinx-tabs 2020-09-10 16:14:18 -04:00
e813e2d30a add minimal unit test for lammps_get_mpi_comm() API 2020-09-09 22:12:47 -04:00
bd72ef7996 add API to library/python interface to extract the MPI communicator 2020-09-09 22:03:11 -04:00
b99e005ca1 Update example output files 2020-09-09 18:26:34 -04:00
d43cb34c70 Support debugging flag for Colvars via CMake 2020-09-09 18:19:29 -04:00
85c394453c Update Colvars to version 2020-07-07
This update contains several fixes and small new features or usability
improvements.  Descriptions and authorship information can be accessed from
the pull requests listed below.

Skip the zero-step also when multiple run commands are executed in sequence (@giacomofiorin)
https://github.com/Colvars/colvars/pull/357

Do not accumulate data at step 0 (@giacomofiorin)
https://github.com/Colvars/colvars/pull/345

Support for symmetry permutations of atoms in RMSD (@jhenin)
https://github.com/Colvars/colvars/pull/344

Detect new grid parameters (@jhenin)
https://github.com/Colvars/colvars/pull/341

Only access the output streams in non-threaded regions (@giacomofiorin)
https://github.com/Colvars/colvars/pull/338

Fix incomplete setting of default colvarsRestartFrequency (@giacomofiorin)
https://github.com/Colvars/colvars/pull/334

Fix typo (@e-kwsm)
https://github.com/Colvars/colvars/pull/333

Convert the input keyword to lowercase in read_state_data_key (@HanatoK)
https://github.com/Colvars/colvars/pull/332

Implement reflecting b.c. for ext Lagrangian (@jhenin)
https://github.com/Colvars/colvars/pull/329
2020-09-09 18:19:21 -04:00
ed14793c69 moved eigensolver documentation into pg_dev_utils.rst 2020-09-09 14:59:00 -07:00
3bacf97468 Merge branch 'master' into math_eigen 2020-09-09 14:56:28 -07:00
2ab0878c9e remreduced compile time by removing unnecessary instantiations from math_eigen.cpp 2020-09-09 14:43:28 -07:00
cdd9d693ad Merge pull request #2349 from akohlmey/more-progguide-updates
More Programmer docs updates and related code refactoring
2020-09-09 14:34:41 -04:00
e238201be5 add a couple more versionadded directives 2020-09-09 13:21:19 -04:00
790b2693ba Merge pull request #2353 from junghans/cmake_clean_up
cmake: consistent usage of find variable
2020-09-09 11:04:13 -04:00
a51bebc9e4 Merge pull request #2340 from rbberger/container_update
Singularity Container definitions update
2020-09-09 09:53:48 -04:00
f4c4c62349 adjust test to updated API 2020-09-09 09:27:34 -04:00
03d43bda3c make "New in" and "Changed in" statements boldface to stand out more 2020-09-09 09:25:58 -04:00
2b854ec64f reformulate 2020-09-09 09:25:34 -04:00
a1cf6c087c no need to use a deprecated argument in a newly added API 2020-09-09 09:06:28 -04:00
2a42fe66ad discuss change to get LAMMPS handle as return value instead of argument 2020-09-09 09:06:00 -04:00
56b1300fd3 reverted the default behavior of "jacobi3()". By default it now sorts the eigenvalues again. 2020-09-08 21:58:54 -07:00
dad749b62b make vget()/vgot() inline functions again for optimal performance. 2020-09-08 20:52:51 -04:00
6ade5dd740 changed the default sorting options in "jacobi3()" to be more similar to the original "jacobi()" function from "math_extra.h". This should not have any effect on LAMMPS behavior 2020-09-08 17:05:08 -07:00
c818a00523 remove unwanted docs 2020-09-08 16:53:26 -04:00
ea0a9f00e8 swap order of classes in toctree 2020-09-08 16:45:16 -04:00
ca1b5ed936 fix minor issues 2020-09-08 16:43:10 -04:00
daf8a2313a split developer guide into multiple files 2020-09-08 16:38:06 -04:00
ee25ed3897 update/correct documentation for memory pool classes 2020-09-08 16:36:48 -04:00
9f4a991fc5 move over doxygen comments for a few LAMMPS classes 2020-09-08 16:36:29 -04:00
1273179d03 Fix compile error 2020-09-08 13:42:25 -06:00
9e47452382 recover compilation for platforms using malloc() instead of posix_memalign() 2020-09-08 15:36:21 -04:00
7a9d31328e remove obsolete comment 2020-09-08 15:29:42 -04:00
4f8e627479 QEq refactor 2020-09-08 13:16:45 -06:00
9f7e309f07 small updates to MyPage and convert MyPoolChunk similar to MyPage 2020-09-08 15:13:16 -04:00
a3cc7581b1 rename test for memory pools 2020-09-08 15:12:08 -04:00
f72e5b6d13 Typo 2020-09-08 12:52:32 -06:00
b008ba5ecb Merge remote-tracking branch 'origin/master' into cmake_clean_up 2020-09-08 12:51:49 -06:00
9f8b8529b1 Merge pull request #2348 from akohlmey/use-tabs-with-html
Enable sphinx-tabs extension with the html version of the documentation
2020-09-08 12:02:43 -04:00
22fac9affc more doc update 2020-09-08 09:49:07 -06:00
8fb13f4fd1 cmake: make doc more consistent 2020-09-08 09:43:21 -06:00
5df3deb8e6 update/refactor a few more build documentation files for using tabs 2020-09-08 11:40:21 -04:00
09b8b117fc cmake: consistent usage of find variable 2020-09-08 09:35:45 -06:00
88cc673f78 more use of tabs in Build_extras.rst 2020-09-08 10:11:37 -04:00
dd20776915 fix spelling issues 2020-09-07 21:17:56 -04:00
9b01d5bf95 revise and add tabs to some sections 2020-09-07 21:08:47 -04:00
9afba50d01 update for zstd support 2020-09-07 21:00:45 -04:00
f02db43f63 add discussion and minimal code example for MyPage class. 2020-09-07 16:10:48 -04:00
0ee7c5f434 add more MyPage test variants 2020-09-07 15:27:13 -04:00
ab5c81f7d6 refactor some more to reduce redundant code. 2020-09-07 08:57:37 -04:00
bbb81a8dd0 add unit tester for MyPage class 2020-09-07 08:33:05 -04:00
3089205a54 tweak MyPage docs 2020-09-07 08:32:34 -04:00
0447616aaf address spelling issues 2020-09-07 08:03:41 -04:00
f8ebcc90fb define OneCoeff struct in my_page.h as HyperOneCoeff to resolve compilation issues 2020-09-07 07:57:23 -04:00
f329d56495 updated pg_developer.rst 2020-09-06 20:12:38 -07:00
a57a1404f3 bug fix fix unit tests, improve doc readability, and to prevent accidentally allocating memory on the heap. (Note: All of these changes are related to "jacobi3()". That function instantiates Jacobi without allocating memory on the heap, and this created some headaches. The original code at https://github/jewettaij/jacobi_pd does not have this feature, and the unit tests there do not test for these kinds of errors. Hopefully this commit fixes everything.) 2020-09-06 20:05:47 -07:00
2270d86519 whitespace cleanup and try to recover legacy build 2020-09-06 22:51:58 -04:00
4ca36d9526 add doxygen docs and convert MyPage template class from header only to header plus implementation 2020-09-06 22:26:17 -04:00
485a169ef2 move merge sort to utils namespace 2020-09-06 17:38:53 -04:00
19ce59ba38 use tabs for CMake vs. GNU make in LAMMPS library linking page 2020-09-06 16:50:28 -04:00
d77f08d5fb tweak formatting to look better in the PDF file 2020-09-06 16:49:58 -04:00
fabf762fa8 reverting to previous version of util.h and util.cpp 2020-09-06 11:09:36 -07:00
eb6f7f9740 Merge branch 'master' into math_eigen 2020-09-06 10:59:20 -07:00
d97e8d8cbf fixed linker problems in "utils.h" and "utils.cpp" 2020-09-06 10:12:07 -07:00
b29522273a changed the "trim_and_count_words()" function declaration in "utils.h" to make sphinx happy. Fixed some new spelling mistakes. 2020-09-06 09:40:28 -07:00
9f24f056ff reformat system sizes information and make explanations more concise 2020-09-06 07:12:43 -04:00
77e22c90ac complete using tab/tabs directives in Build_settings 2020-09-06 06:11:12 -04:00
5536c1e6ee make more compact 2020-09-06 06:10:39 -04:00
2ee2009356 removed assert() statements from "superpose3d.h" 2020-09-06 02:30:20 -07:00
c16321e9d3 purged greek characters from "pd_developer.rst"
I replaced the 'Σ' character that was causing problems with PDF generation with the word "sum".  Hopefully PDF documentation generation works now.
2020-09-05 21:44:32 -07:00
77789f9ed8 small tweaks 2020-09-06 00:07:53 -04:00
7b6d07a812 load sphinx extension for content in tabs with html and for transforming them to admonitions for non-html builders 2020-09-05 23:54:10 -04:00
4ad6d99ca0 updated documentation files: "pg_developer.rst", "math_eigen.h", and "false_positives.txt" 2020-09-05 20:08:45 -07:00
7cb774e6bc some corrections before rewriting the doxygen comments to comply with LAMMPS doxygen style. 2020-09-05 16:37:15 -07:00
4b66414bdf fixed a type error in math_eigen.h 2020-09-05 10:38:14 -07:00
58fa72ddc5 replaced all numerical recipes jacobi() code with code from "math_eigen.h". moved "math_eigen.h" into the main "src" directory. 2020-09-05 10:19:19 -07:00
57f82abae3 updated all code in LAMMPS to use the open-source "math_eigen.h" instead of "math_extra.h". Code in "lib" now uses its own abbreviated local version of the "math_eigen.h" file (which is named "jacobi_pd.h"), since it is not clear how code from "lib/" can access the code in "src/" 2020-09-05 01:39:27 -07:00
d995ed0d87 Merge pull request #2344 from akohlmey/use-improved-sphinx-fortran
Use modernized version of sphinx-fortran
2020-09-04 18:46:34 -04:00
75a119d534 divert installation of sphinx-fortran to github branch with parallel read capable version 2020-09-04 17:40:26 -04:00
64728678f1 Merge branch 'python_interface_guide' of github.com:rbberger/lammps into python_interface_guide 2020-09-04 17:15:58 -04:00
96db122377 Add Python coverage collection if enabled 2020-09-04 17:15:51 -04:00
176f7c064d Merge branch 'master' into python_interface_guide 2020-09-04 15:51:56 -04:00
e6592d2324 Merge pull request #2336 from akohlmey/collected-small-changes
Collected small changes for the next patch release
2020-09-04 15:22:31 -04:00
6a40eba2ae Add Ubuntu 20.04 Intel OpenCL container 2020-09-04 15:03:53 -04:00
da0e60c173 Apply changes to remaining containers 2020-09-04 14:43:03 -04:00
f6abdf97c4 Remove -j in distribution container files 2020-09-04 14:28:03 -04:00
41a1c96e06 Update other GPU containers 2020-09-04 14:19:41 -04:00
3bdfbdcf09 Update Ubuntu 18.04 GPU container and add Ubuntu 20.04 2020-09-04 14:06:38 -04:00
ceed9284c1 Merge branch 'master' into collected-small-changes 2020-09-04 13:32:47 -04:00
de777ce994 Merge pull request #2341 from akohlmey/doc-updates
Revised links and related descriptions in the manual
2020-09-04 13:29:58 -04:00
41a3e7c712 update a few links in the programmer guide 2020-09-04 11:59:04 -04:00
60d25c2eea Update Ubuntu 20.04 container 2020-09-04 11:54:08 -04:00
5c22d1197e Merge branch 'master' into doc-updates 2020-09-04 11:50:28 -04:00
d0d3cee28d a few more cosmetic changes 2020-09-04 11:50:02 -04:00
598819229b Fix missing OpenKIM models for testing due to KIM-API packaging 2020-09-04 11:47:38 -04:00
64d3be27a6 Add zstd to containers 2020-09-04 11:46:40 -04:00
90c13b1b14 update build files for plumed 2.6.1 release 2020-09-04 11:44:39 -04:00
7ea4177626 Set Plumed version to 2.6.1 2020-09-04 11:41:44 -04:00
2b1e4749dd first chunk of revised updates to the manual addressing link issues. 2020-09-04 11:39:38 -04:00
c8327e66b3 Merge pull request #2338 from akohlmey/include-cleanup
Update list of included headers for latest updates of the convention
2020-09-04 10:14:12 -04:00
f19ce32bf5 a few more small tweaks 2020-09-04 09:42:11 -04:00
255bf2f8fd update iwyu custom mapping file 2020-09-04 09:41:57 -04:00
f541647d44 some more IWYU tweaks 2020-09-04 09:23:20 -04:00
d6ba95bed6 minor tweaks 2020-09-04 08:05:59 -04:00
2d802411e9 remove pointless stringstream abuse 2020-09-04 08:03:53 -04:00
91a87b745f final second round IWYU cleanup 2020-09-04 08:01:11 -04:00
63e5ca53ef add iwyu mappings for gtest and gmock 2020-09-04 08:00:38 -04:00
bb7447363c more include cleanup and IWYU tweaks 2020-09-04 07:22:39 -04:00
7f6fc8a003 updated math_eigen.h and moved it into the main "src" directory 2020-09-04 04:10:47 -07:00
fc3d9fee5e more USER-OMP updates 2020-09-04 01:32:52 -04:00
d0691d0a5d add mapping for Eigen3 includes 2020-09-04 01:32:15 -04:00
2e0af2fdce some more second pass cleanup 2020-09-04 00:46:23 -04:00
508b49c976 add missing comma 2020-09-04 00:45:41 -04:00
87dfdb8723 add comments/warnings to docs of fix property/atom and fix store/state about restarting 2020-09-04 00:14:01 -04:00
cb618e19d1 small tweak to address formal issues 2020-09-03 18:30:35 -04:00
18cea11100 Merge pull request #66 from junghans/include-cleanup
cmake: use static iwyu-extra-map.imp
2020-09-03 18:27:00 -04:00
5a7189e95f update note for write_data command on missing coefficient data. 2020-09-03 18:24:12 -04:00
ce78be864a move date2num() convernience function from Universe class to utils namespace 2020-09-03 17:47:45 -04:00
390c6ba106 rechecking some corefiles with IWYU after the many updates 2020-09-03 15:28:07 -04:00
93d0358ebc cmake: use static iwyu-extra-map.imp 2020-09-03 11:36:02 -06:00
05c7cfe59f more include updates for USER-OMP 2020-09-03 11:16:32 -04:00
f67bd8eb5d more KOKKOS, USER-OMP, and USER-INTEL include file cleanup 2020-09-03 10:54:06 -04:00
27203304d6 USER-INTEL include handling cleanup 2020-09-03 09:47:48 -04:00
88ddfa4eb0 more IWYU cleanup in packages 2020-09-03 05:20:02 -04:00
55704368d0 include updates for commonly used packages 2020-09-03 01:45:05 -04:00
c7c4297cfc update include handling for commands 2020-09-03 00:51:58 -04:00
c2cf19bdd4 fixes for file readers 2020-09-03 00:32:57 -04:00
baa79bd1c4 add another iwyu-mapping entry 2020-09-03 00:22:28 -04:00
9925122cea more IWYU updates 2020-09-03 00:22:09 -04:00
a4a1f7e848 more IWYU cleanup 2020-09-02 23:49:17 -04:00
047c14d17c tweak iwyu target. generate file with custom mappings 2020-09-02 23:41:16 -04:00
45f80f4f06 more include file updates found by iwyu 2020-09-02 22:52:22 -04:00
7b8fe97a88 remove trailing whitespace 2020-09-02 22:51:42 -04:00
71d111ccd9 get rid of 'using namespace std;' 2020-09-02 22:51:30 -04:00
203e42073a fix compilation error 2020-09-02 22:51:14 -04:00
f88f4cd60e more include file updates 2020-09-02 21:44:04 -04:00
4ba6a4f958 have clang-style output for easier parsing in compilation mode in emacs 2020-09-02 21:43:20 -04:00
79584c842d add false positive 2020-09-02 18:44:12 -04:00
b741a07a34 document IWYU analysis custom build target 2020-09-02 18:43:03 -04:00
5e429b8212 update include conventions and refer to the new CMake build target 2020-09-02 18:42:41 -04:00
4a10111ced add iwyu target to CMake configuration 2020-09-02 18:42:19 -04:00
d5027c125c rename fmt() macro to logfmt() to avoid clashes with fmtlib 2020-09-02 17:58:22 -04:00
1421817276 remove redundant includes 2020-09-02 17:54:29 -04:00
6113169a47 IWYU based include statement cleanup 2020-09-02 17:39:34 -04:00
a38873f3f6 Add venv example to pg_python.rst 2020-09-02 17:34:14 -04:00
2cd0e9edc4 Merge pull request #2335 from rbberger/doc_updates
Update documentation pages headings and update style check tool to detect missing index entries.
2020-09-02 15:46:10 -04:00
a72ebb2ab2 update link and formatting of install via git page in manual. 2020-09-02 15:41:17 -04:00
862bc99772 add links to references of the two parts of the manual 2020-09-02 15:28:27 -04:00
8def5844c8 Skip old styles in check-styles 2020-09-02 14:06:35 -04:00
ac7129b3a9 Revert "Add missing index entries"
These are intentionally left out from docs
2020-09-02 14:02:53 -04:00
0f9c46235c Add missing index entries 2020-09-02 13:56:17 -04:00
515746063f Fix copy&paste error 2020-09-02 13:55:27 -04:00
e519919cae Fix typo 2020-09-02 13:48:11 -04:00
28c90a6dea Update index for kspace_style commands 2020-09-02 13:40:24 -04:00
12aa689e97 fix typo in cfg/zstd tester tool 2020-09-02 13:38:18 -04:00
c812bf7a91 Update headers in improper_*.rst files 2020-09-02 13:03:03 -04:00
a0c9c213fd Update headers in dihedral_*.rst files 2020-09-02 12:57:44 -04:00
d01c985feb Update headers in compute_*.rst files 2020-09-02 12:56:24 -04:00
f4d2523ce0 Update headers in bond_*.rst files 2020-09-02 12:55:18 -04:00
4e27c47f96 Undo lost headers 2020-09-02 12:54:08 -04:00
88e09fe648 Update headers in angle_*.rst files 2020-09-02 12:43:48 -04:00
286d3866e3 Add style index check in check-styles.py 2020-09-02 12:42:18 -04:00
549bdd080c Add kspace_style to fixup_headers.py 2020-09-02 12:37:48 -04:00
84e922eff6 Add other styles to fixup_header.py 2020-09-02 11:55:53 -04:00
8468f4ab2e fix missing comparison and thus reduce memory use in serial case 2020-09-02 11:12:15 -04:00
a4380a548d make more readable 2020-09-02 11:11:48 -04:00
0c88074525 Apply header fix to all remaining fix styles docs 2020-09-02 11:05:33 -04:00
98808fb5ff Skip doc files that don't have common file structure 2020-09-02 11:04:08 -04:00
8d1a117b75 Apply header fix to all remaining pair styles docs 2020-09-02 10:59:01 -04:00
09bc686f71 Avoid extra newline 2020-09-02 10:55:04 -04:00
cc594c0613 include fmt/format.h into pointers.h 2020-09-02 10:52:10 -04:00
e5e2abe446 update include file policy file and policy for pointers.h special case 2020-09-02 10:51:55 -04:00
e479033109 Avoid breaking already fixed headers 2020-09-02 10:51:47 -04:00
3c60a9e08e Update fix_nh.rst 2020-09-02 10:31:21 -04:00
49a6bf5e30 Update pair_class2.rst 2020-09-02 10:30:31 -04:00
3a22f26e87 Update pair_cs.rst 2020-09-02 10:29:46 -04:00
4d6be195ec Add utility to fixup doc headers 2020-09-02 10:29:29 -04:00
e5f1f58aab Update pair_born.rst 2020-09-02 10:26:37 -04:00
a6a49d80b2 Update pair_sdk.rst 2020-09-02 10:19:20 -04:00
7ae98ffae1 Update fix_rigid.rst 2020-09-02 09:50:16 -04:00
dce7a39021 Update pair_buck.rst 2020-09-02 09:47:32 -04:00
77f803b366 Update pair_charmm.rst 2020-09-02 09:14:20 -04:00
a9cf25db4c Update pair_eam.rst 2020-09-02 09:13:59 -04:00
7e733913d7 Update pair_fep_soft.rst 2020-09-02 09:03:00 -04:00
45100528ad Update pair_coul.rst 2020-09-02 08:54:53 -04:00
c50a82af78 apply consistent naming scheme for tester source files and executables 2020-09-01 20:16:39 -04:00
2ffb5ddd5a add kspace dependency to coul/streitz/long test 2020-09-01 17:34:08 -04:00
80519cd109 Merge pull request #2331 from rbberger/zstd_support
Update COMPRESS package
2020-09-01 15:01:04 -04:00
e7dcb79ac5 Merge pull request #1472 from tomswinburne/master
Add fix pafi
2020-09-01 14:36:46 -04:00
35cb41147a update date 2020-09-01 14:16:06 -04:00
60b98f6b91 Require libzstd>=1.4 for Zstd dump styles 2020-09-01 13:52:56 -04:00
45c9478f5a Merge pull request #2333 from akohlmey/iss1109
Fix memory leaks and out-of-range memory access in USER-BOCS package
2020-09-01 13:37:56 -04:00
31bd76efa5 Merge remote-tracking branch 'origin/master' into zstd_support 2020-09-01 12:58:41 -04:00
40ea03234f Update force->inumeric to utils::inumeric 2020-09-01 12:58:27 -04:00
9d3e3526a0 Add false positives and fix spelling in docs 2020-09-01 12:30:35 -04:00
f899a0f484 Reorder init to supress warnings 2020-09-01 12:25:38 -04:00
a2b5c379f2 Update docs for COMPRESS styles 2020-09-01 12:17:08 -04:00
3db1a6d690 Use PkgConfig to find Zstd 2020-09-01 11:14:36 -04:00
ae3a7d8901 minor changes to example 2020-09-01 17:02:24 +02:00
8e0c4d764e Change include for fmt 2020-09-01 10:58:13 -04:00
75b3bbd657 modernize 2020-09-01 10:09:34 -04:00
95aab99c2a remove redundant entries 2020-09-01 09:57:44 -04:00
2802db4493 correct application of the BEGIN_CAPTURE macro 2020-09-01 09:41:26 -04:00
3b765956d2 Manually resolve merge conflict
Merge branch 'iss1109' of https://github.com/eagunn/lammps into iss1109
2020-09-01 06:31:35 -06:00
4f03acc560 Fix merge conflicts caused by code's do-si-do around Axel's additions
to the utils namespace.
2020-09-01 06:30:12 -06:00
2536f28e1a Per comments from Axel, continued the evolution of the output messages.
- Converted Compute message with imputed value to fmt::format style.
- Condensed most error-> output messages to oneliners where fmt::format
is called within the call to the error method. For a couple, the
formatting string/value list were complex enough that I continued using
a temporary string variable to make the code easier to read.
2020-09-01 05:49:29 -06:00
52748f57da Delete extraneous, unused file/folder that should never have gotten
into the repo.
2020-09-01 05:49:29 -06:00
9ef725ea52 Move destruction of splines data structure to FixBocs destructor
from ComputePressure destructor.
2020-09-01 05:49:29 -06:00
e11a3c4799 Remove "test" example files. 2020-09-01 05:49:29 -06:00
4dca927693 Switch dynamically created arrays/matrices to use memory->create and
->destroy, LAMMPS-standard for dynamic memory management.
2020-09-01 05:49:29 -06:00
fe89edc828 Remove c_str() calls from message strings. Message class now accepts
actual strings.
2020-09-01 05:49:29 -06:00
0aa66319fe Change the build_xxx_splines methods to accept a const reference parameter
to the data vector rather than a vector parameter. Vectors are, as all
types are, passed by value in C++. Using a vector directly as a parameter
causes the data to be copied. Using a reference to the vector neatly
avoids that problem.

Also tucked fmt/format.h into its rightful place in the include list
since Axel says there's no absolute rule about it being an exception.
2020-09-01 05:49:29 -06:00
076c834734 Manually reconciled conflict from:
Corrected two issues in code identified by valgrind:
1) memory leaks (the subject of the original #1109) and
2) an invalid memory access (reading from beyond the end of an array).

Also:
- replaced several dynamically-allocated (calloc and free) local arrays with std::vector.
- reorganized include statements per new conventions, and
- updated messages to use strings and fmt.

Added folders and files used in manual testing and verification to examples folder.

No changes in analysis results are expected or intended. This is pure refactoring except for a bit of error message cleanup.
2020-09-01 05:48:49 -06:00
aa12f4f78a Per request from Axel, Revert revert one commit too far:
"Per suggestion from Axel, reformat code to what I believe to be"

This reverts commit b72c1c0eda.
2020-09-01 05:10:44 -06:00
fbffcf3321 spelling 2020-09-01 11:34:11 +02:00
c18eccad39 force -> utils:: 2020-09-01 11:25:25 +02:00
2f182b4606 force-> -> utils:: 2020-09-01 11:24:06 +02:00
c6de769696 Merge branch 'master' of github.com:tomswinburne/lammps 2020-09-01 11:12:29 +02:00
ac080228dc whitespace style fix 2020-09-01 11:12:05 +02:00
0541996919 Merge branch 'master' into master 2020-09-01 10:59:03 +02:00
d601acd0ca merge 2020-09-01 10:57:43 +02:00
2eb6a8a8a4 update python interface 2020-09-01 10:55:45 +02:00
db9de111be updated python interface 2020-09-01 10:54:18 +02:00
fe833e6c87 Add missing #ifdef 2020-08-31 19:49:17 -04:00
0925fc822d Make Zstd support optional 2020-08-31 18:21:58 -04:00
3865de8705 Add lost line 2020-08-31 16:43:06 -04:00
2effd2f707 Merge remote-tracking branch 'origin/master' into zstd_support 2020-08-31 15:38:56 -04:00
c5a2e50bf5 Add Zstd variants of dump local and xyz 2020-08-31 15:38:20 -04:00
a0f82a4b18 Add compression_level parameter to dump xyz/gz and local/gz 2020-08-31 15:00:57 -04:00
443a817152 Add tests for dump local/gz and xyz/gz 2020-08-31 14:54:10 -04:00
24f5807623 Merge pull request #2319 from akohlmey/move-convenience-functions
Move some more convenience functions to utils namespace
2020-08-31 14:29:42 -04:00
99b83333c9 Add dump cfg/zstd 2020-08-31 14:20:52 -04:00
a922355e19 Add compression_level parameter to dump cfg/gz 2020-08-31 14:20:36 -04:00
54ed23448b instantiate bounds() also with long long to make windows happy. 2020-08-31 14:14:51 -04:00
5faca3aef0 Add tests for dump cfg/gz 2020-08-31 13:36:42 -04:00
675cf20e93 Merge remote-tracking branch 'github/master' into move-convenience-functions 2020-08-31 12:58:21 -04:00
22ccde1d13 modernize utils::bounds() implementation and remove duplicate definition. 2020-08-31 12:58:00 -04:00
9a4ec23c7f Merge pull request #2327 from akohlmey/remove-doxygen-tool
Remove doxygen tool folder and references to it in the manual
2020-08-31 12:49:24 -04:00
7fca3b7a65 revert accidental change 2020-08-31 12:46:22 -04:00
1ff34d4b13 avoid doxygen lookup ambiguity 2020-08-31 12:46:05 -04:00
67a5db03c7 Merge pull request #2326 from ndtrung81/gpu-update-makefiles
update makefiles in lib/gpu for more recent architectures
2020-08-31 12:30:28 -04:00
0c7b9a7c63 update utils tester for API change in bound()/boundsbig() 2020-08-31 11:43:25 -04:00
dd03c7232a Merge remote-tracking branch 'github/master' into move-convenience-functions 2020-08-31 11:41:18 -04:00
a4d3b21a43 Merge pull request #2322 from Vsevak/cmake_cuda
Fix CMake building for CUDA 11
2020-08-31 11:33:52 -04:00
cf11945e21 get rid of utils::boundsbig() by making it a template function with two specializations 2020-08-31 11:25:43 -04:00
8034a83ee8 Merge pull request #2325 from akohlmey/fortran-interface
New Fortran interface to LAMMPS
2020-08-31 10:27:10 -04:00
3c71d300e5 Merge pull request #2320 from akohlmey/programmer-guide
Add programmer guide part 2
2020-08-31 10:06:04 -04:00
b72c1c0eda Per suggestion from Axel, reformat code to what I believe to be
LAMMPS standards. I used the .clang-format file from the unit-test
folder but changed all spacing settings to 2 from 4.
2020-08-31 06:31:48 -06:00
0c067700e6 Per comments from Axel, continued the evolution of the output messages.
- Converted Compute message with imputed value to fmt::format style.
- Condensed most error-> output messages to oneliners where fmt::format
is called within the call to the error method. For a couple, the
formatting string/value list were complex enough that I continued using
a temporary string variable to make the code easier to read.
2020-08-31 06:31:48 -06:00
f0b304efcb Delete extraneous, unused file/folder that should never have gotten
into the repo.
2020-08-31 06:31:48 -06:00
69b42ea9ae Move destruction of splines data structure to FixBocs destructor
from ComputePressure destructor.
2020-08-31 06:31:48 -06:00
a4790fdf00 Remove "test" example files. 2020-08-31 06:31:47 -06:00
c75c3451f6 Switch dynamically created arrays/matrices to use memory->create and
->destroy, LAMMPS-standard for dynamic memory management.
2020-08-31 06:31:47 -06:00
e8306a2535 Remove c_str() calls from message strings. Message class now accepts
actual strings.
2020-08-31 06:31:47 -06:00
3760ccd672 Change the build_xxx_splines methods to accept a const reference parameter
to the data vector rather than a vector parameter. Vectors are, as all
types are, passed by value in C++. Using a vector directly as a parameter
causes the data to be copied. Using a reference to the vector neatly
avoids that problem.

Also tucked fmt/format.h into its rightful place in the include list
since Axel says there's no absolute rule about it being an exception.
2020-08-31 06:31:47 -06:00
b241294e84 Corrected two issues in code identified by valgrind:
1) memory leaks (the subject of the original #1109) and
2) an invalid memory access (reading from beyond the end of an array).

Also:
- replaced several dynamically-allocated (calloc and free) local arrays with std::vector.
- reorganized include statements per new conventions, and
- updated messages to use strings and fmt.

Added folders and files used in manual testing and verification to examples folder.

No changes in analysis results are expected or intended. This is pure refactoring except for a bit of error message cleanup.
2020-08-31 06:31:47 -06:00
c7360fb808 include example use of PotentialFileReader class 2020-08-31 07:45:52 -04:00
c84033677c add documentation for potential file reader 2020-08-31 07:31:28 -04:00
33f2cbc713 add docs for TextFileReader class to developer guide 2020-08-31 06:57:16 -04:00
39a9974f3d add ValueTokenizer example and use captions with code-blocks 2020-08-30 23:57:02 -04:00
569b6f95a3 no need to use ValueTokenizer. Make code more compact. 2020-08-30 23:32:17 -04:00
e8e57b0628 remove doxygen tool folder and references to it in the input as it is no longer compatible and needed 2020-08-30 19:59:52 -04:00
ecb1f266b5 More updates 2020-08-30 15:10:29 -05:00
7a5f193c02 Updated several Makefile's in lib/gpu for newer compute capabilities 2020-08-30 15:06:44 -05:00
4484699ab6 fix spelling 2020-08-30 15:52:42 -04:00
65d2ee7464 add work-in-progress marker to fortran library wrapper 2020-08-30 15:23:02 -04:00
199cfeba78 more tweaks. doxygen translation has no more warnings now. 2020-08-30 14:32:53 -04:00
cd0cdf0b74 silence compiler warning 2020-08-30 14:28:29 -04:00
f3ed1dea4d minor tweaks 2020-08-30 14:28:19 -04:00
8d45b724a6 fix bug in conventional build makefile preventing the correct Install.py in the lib folder to be run 2020-08-30 14:12:53 -04:00
4b0999e167 complete documentation of tokenizer classes 2020-08-30 14:12:21 -04:00
5623009962 arch 3.0 is dropped in CUDA 11 2020-08-30 13:12:42 +03:00
96ee132e85 start documenting tokenizer classes 2020-08-30 01:50:37 -04:00
8d2c16ad66 remove trailing whitespace 2020-08-30 00:31:04 -04:00
f123246189 minor doc updates 2020-08-30 00:25:01 -04:00
ceeaf1e988 update and correct documentation for utils functions 2020-08-29 23:51:46 -04:00
9c404e02fd update include file conventions 2020-08-29 22:56:37 -04:00
83a9e5e724 handle spelling issues with new doc text 2020-08-29 22:55:05 -04:00
e51a5ad8f4 import doxygen docs for new utils functions 2020-08-29 22:46:25 -04:00
4396dbd9a3 move Force::open_potential() to utils::open_potential() 2020-08-29 22:37:14 -04:00
798226967f Merge branch 'move-convenience-functions' of github.com:akohlmey/lammps into move-convenience-functions 2020-08-29 22:22:45 -04:00
6b7f4c500f document changes to LAMMPS_POTENTIALS environment variable 2020-08-29 22:22:27 -04:00
5a22f4d7f2 support that LAMMPS_POTENTIALS is a real path variable with multiple entries, not just a single folder 2020-08-29 22:22:03 -04:00
b06ba74d18 support that LAMMPS_POTENTIALS is a real path variable with multiple entries, not just a single folder 2020-08-29 22:09:07 -04:00
05ff352021 add utils::open_potential() function to utils namespace 2020-08-29 22:08:16 -04:00
7413dc783e add tokenizer tests for splitting path environment variables 2020-08-29 22:07:22 -04:00
8601e608ca add unit tests for utils::bounds() and utils::boundsbig() 2020-08-29 22:00:07 -04:00
96d8d12a88 replace calls to force->*numeric() with the corresponding utils::*numeric()
this also removes the now obsolete functions from Force
2020-08-29 20:31:02 -04:00
27b4e93bf5 silence compiler warnings 2020-08-29 18:32:21 -04:00
741a1d1fc9 move Input::expand_args() to utils::expand_args() 2020-08-29 18:32:10 -04:00
fcd0b9f78f move Force::bounds() and Force::boundsbig() to utils. 2020-08-29 18:23:03 -04:00
60dfb6f77f still need to disable variable tracking to silence unwanted warnings on ubuntu 2020-08-28 22:03:27 -04:00
31c91a8928 fix typo 2020-08-28 21:22:06 -04:00
cec18b6aef add docs for the new fortran interface 2020-08-28 20:57:19 -04:00
e44707d5e1 add unittest support for the fortran interface to LAMMPS 2020-08-28 20:56:52 -04:00
3e92647abb add new "official" fortran interface to LAMMPS in new folder "fortran" 2020-08-28 20:56:15 -04:00
2e1b4498bd update false positives 2020-08-28 20:30:00 -04:00
7b6924329f make doxygen docs and code consistent 2020-08-28 20:25:38 -04:00
cb1a2601e1 add more existing programmer guide docs 2020-08-28 20:25:09 -04:00
3be064748d Merge pull request #2318 from akohlmey/programmer-guide
Programmer guide part 1
2020-08-28 20:14:32 -04:00
02ea7af1f7 let dummy tests pass 2020-08-28 18:49:39 -04:00
52f7f3629d Merge branch 'master' into programmer-guide 2020-08-28 18:49:15 -04:00
876c53a275 Merge pull request #2310 from lammps/library-refactor
LAMMPS C library interface and python module refactor
2020-08-28 18:40:16 -04:00
2a365c17e0 update utils namespace documentation including doxygen parts 2020-08-28 18:21:18 -04:00
cb09844182 Add placeholders for future tests 2020-08-28 17:52:15 -04:00
e64a977ae9 include documentation of utility functions in utils:: to developer guide 2020-08-28 17:14:49 -04:00
a1bf772df2 move modifying and extending LAMMPS section to programmer guide 2020-08-28 17:14:29 -04:00
8fcd72405a port over more of the framework of the programmer guide and remove programming details from user guide 2020-08-28 16:32:23 -04:00
2e2763d0f1 update .gitignore for recent additions 2020-08-28 15:34:53 -04:00
17ec3a4fe8 Fix typo 2020-08-28 15:15:01 -04:00
9412d6f6fc Add missing argtypes declarations in lammps.py 2020-08-28 15:12:36 -04:00
ded657120d Merge pull request #2312 from akohlmey/developer-guide
Integrate text from developer.tex file to the manual
2020-08-28 15:01:27 -04:00
6bcc263b41 Ensure LAMMPS pointer is of type c_void_p
Fixes segfaults caused by API change. The API change in
lammps_open and lammps_open_no_mpi makes them return the LAMMPS pointer
via their return value. However due to how ctypes operates, even
if restype is specified to be c_void_p, the function returns an integer.

Without the proper type of the pointer, calling functions without arglists would default
to using 32bit integers to pass an argument, which cuts away parts of the 64bit pointer.
Subsequently, resolving the truncated pointer in the library causes segfaults.

This commit fixes the root cause. But it also highlights the need of specifying
the arglists of all library functions.
2020-08-28 14:21:03 -04:00
caeb0af0d1 Add missing argtypes for lammps_extract_global 2020-08-28 13:54:06 -04:00
167f12a4a4 Add python test for extract_compute of peratom vector 2020-08-28 13:53:36 -04:00
e8cfa185ac update src/.gitignore for new files 2020-08-28 12:31:43 -04:00
899144c0f8 Merge pull request #2314 from jrgissing/bond/react-RMSD_constraint
Bond/react: add RMSD constraint
2020-08-28 12:29:11 -04:00
9f2eba981a a few more tweaks and spellcheck to make this ready for merging 2020-08-28 11:44:31 -04:00
ef50a67169 bond/react: make rmsd constraint lowercase 2020-08-28 11:06:27 -04:00
f8495975d3 transfer the rest of the Developer guide and remove the .tex versions and references to it 2020-08-28 10:52:45 -04:00
2686df3760 Update math_eigen.h
whitespace cleanup
2020-08-28 10:46:22 -04:00
f0788bfe86 transfer of developer.tex almost complete 2020-08-28 09:54:01 -04:00
e777badfa8 Merge pull request #2317 from evoyiatzis/patch-1
removal of a few duplicated lines in the drude polarizer tool
2020-08-28 09:25:01 -04:00
d361f26ca2 removal of a few duplicated lines
The "Velocities" sections is searched for in the input file twice - the second time being redundant.
2020-08-28 11:28:47 +02:00
b16746e46e Merge pull request #2313 from ndtrung81/gpu-bugfix
Fixed bugs in the CPU kernel for beck, beck/omp and the GPU kernel of gauss/gpu
2020-08-27 19:56:50 -04:00
992b981cee Fixes segfault due to uninitialized pointers 2020-08-27 19:02:02 -04:00
b1cca2cf74 update reference data for molecular test with pair style beck 2020-08-27 19:00:20 -04:00
463774319e add missing parenthesis 2020-08-27 17:57:44 -04:00
9c84fe8830 Add missing lammps_extract_compute.argtypes 2020-08-27 17:47:49 -04:00
d7e2be1c81 Start Python interface tests for numpy extensions 2020-08-27 17:47:49 -04:00
0b8136a38b Add extract_compute, extract_fix, and extract_variable to lammps.numpy 2020-08-27 17:47:49 -04:00
a216d3f5f5 Fix typo 2020-08-27 17:47:49 -04:00
26d09ea648 Use datatype constants instead of magic numbers 2020-08-27 17:47:49 -04:00
b1fae04751 use consistent style when referencing packages 2020-08-27 17:44:49 -04:00
7b4891a9a3 document the behavior of the gauss pair style to ignore special bond factors 2020-08-27 17:41:43 -04:00
fa13e23f7a add atomic test for gauss pair style 2020-08-27 17:41:25 -04:00
fdb726629f revert "fix" for pair style beck/gpu and correct beck and beck/omp instead
we should consistently apply factor_lj for both, force and energy, or not
2020-08-27 17:14:05 -04:00
a4f1be8fe3 Merge branch 'master' into gpu-bugfix 2020-08-27 17:05:26 -04:00
a54f99f774 Merge pull request #2315 from lammps/peri-doc-page
fix two typos on pair peri doc page
2020-08-27 17:00:06 -04:00
de4bf77757 two typos on pair peri doc page 2020-08-27 13:32:27 -06:00
32aede7769 minor doc clarification 2020-08-27 14:53:09 -04:00
ab90493e5b bond/react: RMSD, remove debugging statements 2020-08-27 14:45:42 -04:00
0d8baff7a9 Rename LAMMPS_DBLE2D to LAMMPS_DOUBLE2D 2020-08-27 14:03:17 -04:00
2f629db3d4 Refactor Zstd dump styles 2020-08-27 13:43:36 -04:00
5c0edeb679 namespace clarify 2020-08-27 12:43:28 -04:00
977a89e537 add separators 2020-08-27 12:33:03 -04:00
794e74e064 return of the lost enum 2020-08-27 12:22:48 -04:00
91554d6287 move RMSD files to new reaction package 2020-08-27 12:13:07 -04:00
ce2b128cf9 Merge branch 'lammps-master' into bond/react-RMSD_constraint 2020-08-27 12:04:09 -04:00
583a09c808 Merge branch 'master' of https://github.com/lammps/lammps into lammps-master 2020-08-27 12:02:08 -04:00
bc49e854ba bond/react RMSD constraint: manual rebase 2020-08-27 11:53:19 -04:00
e4e15157f8 Fixed bugs in the GPU kernels of pair styles beck/gpu and gauss/gpu involving factor_lj 2020-08-26 23:41:00 -05:00
f314b7e54f update format from enumerate to itemize and start next subsection 2020-08-26 23:05:59 -04:00
6a68743e54 transfer a chunk of text from Developer.tex to the manual. 2020-08-26 22:46:55 -04:00
ced78a72eb Add dump custom/zstd and tests 2020-08-26 19:59:28 -04:00
e9fd8b3ec6 Migrate changes to dump custom/gz and add tests 2020-08-26 19:44:55 -04:00
096cef40a8 remove redundant use of \brief 2020-08-26 19:44:23 -04:00
55829752c9 Merge branch 'master' into library-refactor 2020-08-26 19:08:09 -04:00
2f1086dfe4 Merge branch 'python-refactor' into library-refactor 2020-08-26 19:07:44 -04:00
85764b3774 replace a few more c++-style comments with old-fashion c-style comments 2020-08-26 19:07:29 -04:00
1ad82d7cdb add separator comment lines 2020-08-26 19:07:08 -04:00
dbf51af7d1 Fixes segfault due to uninitialized pointers 2020-08-26 18:41:32 -04:00
78a1b92503 Add dump atom zstd tests 2020-08-26 16:35:35 -04:00
007a43a5b2 Add more atom/gz tests 2020-08-26 16:20:02 -04:00
32aa35009b Start tests for compressed dump styles 2020-08-26 16:04:19 -04:00
046fd3d14b Verify valid compression level ranges 2020-08-26 16:03:18 -04:00
d00807ee9a Merge pull request #2311 from stanmoore1/kk_update_3.2
Update Kokkos library in LAMMPS to v3.2
2020-08-26 15:35:25 -04:00
aeb3e20385 Merge pull request #2307 from Vsevak/zbl_reduce_declaration
Fix NaN in GPU-accelerated Tersoff styles with OpenCL backend
2020-08-26 13:56:49 -04:00
629ead6348 Merge pull request #2309 from lammps/doxygen-integration
Add doxygen and graphviz processing into the documentation build
2020-08-26 13:05:00 -04:00
50b8b1bf60 Fix Kokkos HIP compile error 2020-08-26 11:45:24 -05:00
94db627ba5 fix formatting issue 2020-08-26 12:09:43 -04:00
b4403de026 add false positive 2020-08-26 12:09:35 -04:00
d40b658644 cmake: update kokkos version/checksum 2020-08-26 10:05:14 -06:00
8137ada848 Merge branch 'collected-small-changes' into doxygen-integration 2020-08-26 11:51:45 -04:00
bdc952ac88 Merge branch 'master' into collected-small-changes 2020-08-26 11:51:05 -04:00
f89a0f9fe3 must not try to delete computes if they have not been created and their ids not yet set 2020-08-26 11:50:20 -04:00
c8af729701 Merge branch 'master' into collected-small-changes 2020-08-26 11:49:29 -04:00
4ad68c98a0 Merge pull request #2196 from jibril-b-coulibaly/mindlin_rescale
Implement force history in Mindlin granular pair styles
2020-08-26 11:42:06 -04:00
e2fd95d8ed Merge pull request #2240 from jrgissing/bond/react-reset_mol_ids
support molecule ID resets in fix bond/react
2020-08-26 10:56:21 -04:00
ed63edc9da lammps_has_error() and lammps_get_last_error_message() are always available but dummies without exceptions enabled 2020-08-26 09:10:59 -04:00
48d2a48a1f import updated python module from progguide branch 2020-08-26 09:01:59 -04:00
7ab6def2ca update list of Kokkos GPU archs in manual as well 2020-08-26 03:49:59 -04:00
abbbb0ab06 remove trailing whitespace 2020-08-26 03:42:50 -04:00
aa6dec84ed update list of Kokkos supported architectures 2020-08-26 03:42:42 -04:00
e0439ac94f Add compression_level parameter to dump atom gz 2020-08-26 00:14:32 -04:00
5cb8e73655 Add checksum and compression_level as dump atom/zstd options 2020-08-25 23:59:17 -04:00
0d8454ac25 First version of Zstd dump atom 2020-08-25 23:27:42 -04:00
b8f59fd37c Update from master 2020-08-25 20:29:03 -06:00
4d90c2b74b Update Kokkos library in LAMMPS to v3.2 2020-08-25 20:21:48 -06:00
1c10aa6a4d GIFs are only supported in HTML 2020-08-25 17:15:34 -04:00
c256f2331f JPG folder is no longer needed in HTML output 2020-08-25 16:59:39 -04:00
ae5c0bd8d1 Remove targets to JPG images 2020-08-25 16:44:50 -04:00
3a638440a4 Add missing PDF folder 2020-08-25 16:12:09 -04:00
80e07c69f0 add part of developer guide as to showcase the integration of the programmer guide 2020-08-25 15:07:09 -04:00
df8fb26272 Refactor changes to documentation build
- Added CMake variables for readability
- Moved Mathjax files to _static to avoid special copy logic
- Moved JPG/lammps-logo.png to _static to avoid special copy logic
- Removed dead CMake code
2020-08-25 13:41:31 -04:00
14b66d1f84 tweak test tolerance of reax/c tests for running on ubuntu 18.04 2020-08-25 12:15:19 -04:00
f965786e74 refactor C library interface and add doxygen decorations 2020-08-25 11:45:07 -04:00
69cffb2d04 import test infrastructure for c, c++ and python library usage 2020-08-25 11:03:31 -04:00
024e4c5f21 make formatting and doxygen decorations for utils functions consistent 2020-08-24 20:55:13 -04:00
3f685c346f add doxygen integration with conventional and cmake doc build 2020-08-24 17:58:37 -04:00
dc241abb85 Merge pull request #2305 from akohlmey/next_patch_version
Update version strings for updated patch release
2020-08-24 13:46:50 -04:00
8cbc3e421f clean up 2020-08-24 17:49:38 +02:00
93e4ed9770 Merge pull request #2304 from akohlmey/collected-small-changes
Collected small changes for the next patch release
2020-08-24 11:43:42 -04:00
090ef2d1e8 merge error fix 2020-08-24 17:10:33 +02:00
9bdb7b5b98 gatherscatter 2020-08-24 17:09:16 +02:00
28d59ce594 final steps 2020-08-24 17:04:35 +02:00
2ee6e9077a Merge remote-tracking branch 'upstream/master' into 2020 2020-08-24 17:02:53 +02:00
e8fb7c7ece big update 2020-08-24 16:54:16 +02:00
7e1a3bd4d5 Merge pull request #2302 from akohlmey/consistent-doc-headers
Consistent subsection headers for commands
2020-08-24 10:52:09 -04:00
47a44732e7 add test for fix restrain 2020-08-23 15:29:58 -04:00
8f5e8300ea fix typos in fix restrain docs 2020-08-23 15:29:49 -04:00
0842911cd8 Rename local buffers 'red_acc' in lal_tersoff*
Rename __local red_acc in lal_tersoff
2020-08-23 22:22:28 +03:00
10080079e3 ISO compliance 2020-08-23 11:44:48 -04:00
63abb2dff9 fix broken reset_mol_ids command 2020-08-23 11:32:54 -04:00
01dd80f35e bond/react: actually make reset_mol_ids the default 2020-08-23 11:21:43 -04:00
fb634658de add tests for a few more force manipulation fixes 2020-08-23 07:01:38 -04:00
c503bba008 add custom pair style tests for reax/c and edip/multi 2020-08-23 06:44:33 -04:00
0fb8f6e779 add test for pair style momb 2020-08-22 23:15:20 -04:00
66b17fd2ce dispersion only tests for buckingham 2020-08-22 23:03:20 -04:00
3def826dbe add more tests for variants using long-range dispersion pair styles 2020-08-22 22:55:15 -04:00
f18d0507b3 fix issues with lj/long pair styles when not using long-range for dispersion 2020-08-22 22:54:38 -04:00
c8f2634b44 add tests for tabulated msm coulomb 2020-08-22 22:08:08 -04:00
e78100bdba add (partial) tests for pair styles dpd and dpd/tstat 2020-08-22 22:00:13 -04:00
2907a10937 update version strings for new attempt for a patch release 2020-08-22 16:42:39 -04:00
1879106cc3 Merge pull request #2299 from rbberger/doc_file_size
Avoids HTML doc pages from becoming too large
2020-08-22 15:45:06 -04:00
9152a8e98f avoid division by zero in imaging code 2020-08-22 15:32:04 -04:00
2fd654f4fd silence compiler warnings about unused variables 2020-08-22 15:06:00 -04:00
86153a0f77 avoid division by zero in MathExtra normalize functions 2020-08-22 15:03:27 -04:00
9136f9b9c9 Merge pull request #2303 from rbberger/binary2txt_bug
Fixes a bug in binary2txt
2020-08-22 14:46:29 -04:00
f82b19e21f Fix off-by-one mistake, Fixes #2300 2020-08-22 12:03:24 -04:00
b776e1ee3c convert remaining style doc sections to be a logical header 2020-08-21 23:33:41 -04:00
66438539f2 Avoids HTML doc pages from becoming too large 2020-08-21 19:47:46 -04:00
450fd12d31 Changes needed for Kokkos v3.2 2020-08-21 14:45:12 -05:00
6fc2ab07ef reset_mol_ids: unique created computes 2020-08-21 14:52:39 -04:00
2a6546d6f0 Merge pull request #2296 from akohlmey/next_patch_version
Update version strings for next patch release
2020-08-21 14:43:56 -04:00
921b6d8135 relative threshold for contact frame update based on tangential critical force 2020-08-21 13:20:53 -05:00
cffc667259 Merge pull request #2298 from stanmoore1/mv2_var
Fix MVAPICH2 env variable for CUDA/aware
2020-08-21 14:04:57 -04:00
e0c74a30bc Fix MV2 env variable 2020-08-21 11:08:49 -06:00
7f87ccccc8 Merge branch 'collected-small-changes' into next_patch_version 2020-08-21 11:18:10 -04:00
3c7d59401c Merge pull request #2107 from junghans/offline_gtest
cmake: allow to overwrite GTest URL for offline machines
2020-08-21 10:57:08 -04:00
19c1fa8c94 need to re-initialize lattice variable after new lattice command 2020-08-21 01:01:12 -04:00
ee6ef98b9b remove trailing whitespace 2020-08-21 00:43:40 -04:00
e742ae7475 fix RST syntax and spelling issues in granular pair style docs 2020-08-21 00:31:55 -04:00
900830a4a1 Merge branch 'master' into mindlin_rescale 2020-08-21 00:24:07 -04:00
c9773fc288 Merge branch 'master' into bond/react-reset_mol_ids 2020-08-21 00:19:52 -04:00
4c46119a48 Merge pull request #2280 from lammps/gridcomm-tiled
Support for tiled decompositions in PPPM
2020-08-21 00:16:20 -04:00
42018d3b35 add dispersion only kspace style tests 2020-08-20 23:42:23 -04:00
3183af9b85 fix a few more initialization issues in pppm/disp and pppm/disp/intel 2020-08-20 23:42:00 -04:00
2855f04363 tweak output format 2020-08-20 23:41:32 -04:00
deb24626d1 fix gc vs. gc6 issues in fix pppm/disp 2020-08-20 22:45:37 -04:00
0440b13a6d fix memory leaks 2020-08-20 22:27:15 -04:00
17a9612126 fix pppm/disp initialization issues 2020-08-20 22:17:32 -04:00
0a042be6b8 fix another pppm/disp bug for dispersion-only runs 2020-08-20 22:11:06 -04:00
e7639d4951 Merge pull request #2297 from akohlmey/more-fix-tests
Add a few more unit tests for fixes and fix some issues related to it
2020-08-20 20:18:09 -04:00
287112761c tweak load balancing output format 2020-08-20 18:51:28 -04:00
a742db2369 add a couple of kspace tests using tiled communication 2020-08-20 18:08:10 -04:00
398e929400 Merge branch 'master' into gridcomm-tiled 2020-08-20 17:58:35 -04:00
4fde9022a3 remove tabs 2020-08-20 17:54:26 -04:00
a70a5be2d8 Merge pull request #2289 from akohlmey/reduce-kokkos-compiler-warnings
Reduce compiler warnings in KOKKOS package
2020-08-20 17:52:07 -04:00
203ab71b62 Merge branch 'master' into gridcomm-tiled 2020-08-20 17:00:55 -04:00
c513b60f97 Merge branch 'reduce-kokkos-compiler-warnings' of github.com:akohlmey/lammps into reduce-kokkos-compiler-warnings 2020-08-20 16:59:46 -04:00
f3b0bf8a33 Merge branch 'master' into reduce-kokkos-compiler-warnings 2020-08-20 16:59:31 -04:00
cd7ba1d007 Merge branch 'master' into more-fix-tests 2020-08-20 16:41:29 -04:00
f0335fabb1 Merge pull request #2295 from akohlmey/add-fix-momentum-chunk
Add fix momentum/chunk
2020-08-20 16:40:51 -04:00
d6b19b80d0 Make all Kokkos functors structs 2020-08-20 13:52:53 -06:00
17b998edb3 fix whitespace issue 2020-08-20 15:51:41 -04:00
5306b39251 add tests for a few more wall fixes 2020-08-20 15:42:00 -04:00
56d00e115d add more tests for fixes 2020-08-20 15:32:47 -04:00
92622d9079 add restart support to fix temp/rescale, fix spring/chunk, and fix spring/rg 2020-08-20 15:32:10 -04:00
ff2242385b Tweak format 2020-08-20 12:56:56 -06:00
6862d70759 Merge branch 'master' of github.com:lammps/lammps into reduce-kokkos-compiler-warnings 2020-08-20 11:24:30 -06:00
6efc51d863 Update comment 2020-08-20 11:19:34 -06:00
394b2da585 Port changes to Kokkos 2020-08-20 11:09:21 -06:00
fc9f0dbcbc correct fix npt/cauchy docs 2020-08-20 11:29:30 -04:00
ba00626764 more force adding fix tests 2020-08-20 10:59:39 -04:00
e72ea35c40 add tests for a bunch of rigid fixes 2020-08-20 10:10:25 -04:00
0f11532162 remove class member that was incorrectly shadowing a base class member 2020-08-20 10:10:03 -04:00
ca7fa2aeef make names of fix-timestep inputs consistent with the rest 2020-08-20 09:25:40 -04:00
6bda49e8d8 step version strings for next patch release 2020-08-20 07:46:01 -04:00
ed26d8ef8f revert change to fft3d.cpp that breaks all PPPM styles 2020-08-19 20:24:03 -04:00
2ed18bb841 tweak output format 2020-08-19 20:15:00 -04:00
2feccc2837 fix dispersion gridcomm buffer bug 2020-08-19 20:12:43 -04:00
729b3d2717 major whitespace cleanup 2020-08-19 18:46:35 -04:00
503d3826bb Merge branch 'master' into gridcomm-tiled 2020-08-19 18:36:49 -04:00
fdb1e69768 silence compiler warnings 2020-08-19 18:36:28 -04:00
284cdceae8 silence compiler warnings 2020-08-19 18:19:28 -04:00
ba06a7bf0c final gridcomm comments and flip FFT forward/reverse 2020-08-19 16:05:30 -06:00
8f156bfee6 Fix typo in pppm_gpu.cpp 2020-08-19 14:25:06 -06:00
6f37da4eb2 Whitespace cleanup 2020-08-19 14:10:35 -06:00
5ea7ca94f4 Revert accidental change 2020-08-19 13:54:06 -06:00
073c7ee138 Fix warnings related to virtual function override 2020-08-19 13:29:11 -06:00
33cc932d03 Eigen3 is now hosted at GitLab. The bitbucket repo is gone. Update URLs and MD5s 2020-08-19 15:21:43 -04:00
af50d90b55 add author to README 2020-08-19 15:15:28 -04:00
20c24b1f3b add tests for momentum fixes and nve/limit 2020-08-19 15:08:46 -04:00
b1fbee9bd0 skip testing fix nve/limit for r-RESPA as it is not compatible by design 2020-08-19 15:08:32 -04:00
a0aca4cee4 improve error message 2020-08-19 15:08:04 -04:00
b4ce4a0979 must delete internal computes if they already exist (e.g. after a restart) 2020-08-19 15:07:56 -04:00
cc0d294478 Fix segfault 2020-08-19 13:05:23 -06:00
acd0a62de7 add new fix style momentum/chunk 2020-08-19 14:44:18 -04:00
3a8b2aef17 Small tweaks 2020-08-19 09:45:19 -06:00
e9de1c1a9a Merge pull request #2293 from akohlmey/collected-small-changes
Collected small changes and fixes
2020-08-19 11:11:43 -04:00
fcec5c35ea Remove error check in pppm_kokkos 2020-08-19 08:57:46 -06:00
f7c6e8e6b1 Eigen3 is now hosted at GitLab. The bitbucket repo is gone. Update URLs and MD5s 2020-08-19 10:50:54 -04:00
1413e61553 tweak test presision so it passes with more compilers 2020-08-19 00:59:50 -04:00
7e4e756b23 remove dead code 2020-08-18 22:46:34 -04:00
174a282e0c fix signed vs. unsiged warning 2020-08-18 22:46:26 -04:00
8e74d5ad02 Eigen3 is now hosted at GitLab. The bitbucket repo is gone. Update URLs and MD5s 2020-08-18 21:29:43 -04:00
e4ab49c2e5 bond/react: bond-type-checking docs 2020-08-18 18:12:01 -04:00
4d31afce2d Port changes to PPPMKokkos 2020-08-18 16:06:43 -06:00
df497e4853 bond/react: clarify bond-type-checking error 2020-08-18 17:53:07 -04:00
43f6fa4b29 Merge pull request #2136 from rbberger/refactor-reading
Refactor value parsing code segments and add dump tests
2020-08-18 16:18:33 -04:00
a53ee5664e silence compiler warnings about signed vs. unsigned ints 2020-08-18 15:51:06 -04:00
f6ac4a26c4 reorder initialization in constructor to silence compiler warnings 2020-08-18 15:47:03 -04:00
e2923d2d8c Merge branch 'master' of ssh://github.com/lammps/lammps into gridcomm-tiled 2020-08-18 13:43:33 -06:00
02f66f1e9f protect pragmas with ifdefs 2020-08-18 15:39:44 -04:00
b38bf6c06a silence some more unused parameter/variable warnings 2020-08-18 15:28:23 -04:00
07c47fbd4a silence some more signedness warnings 2020-08-18 15:28:02 -04:00
63575829da reorder initialization 2020-08-18 15:26:37 -04:00
e185537255 avoid uninitialized access 2020-08-18 14:33:14 -04:00
78d5714247 silence signed vs. unsigned integer warnings 2020-08-18 14:33:02 -04:00
a537ffabf9 correct illegal and uninitialized data access issue 2020-08-18 14:19:57 -04:00
2fea8f888a Merge branch 'master' into collected-small-changes 2020-08-18 14:15:06 -04:00
18b12e8979 Merge branch 'master' into reduce-kokkos-compiler-warnings 2020-08-18 13:50:35 -04:00
d63f3d87eb Merge pull request #2292 from akohlmey/warning-no-mixing-data-file
Print warning when writing PairCoeff section in data file may not sufficiently reproduce all pair coefficients
2020-08-18 13:45:44 -04:00
c7f8a6d154 Add format line test to dump atom 2020-08-18 13:15:28 -04:00
72f3c3803e Fix warning with #pragma unroll 2020-08-18 11:13:50 -06:00
216a016a08 Add simple tests for dump cfg 2020-08-18 12:37:16 -04:00
0d38a1418e Merge branch 'master' into warning-no-mixing-data-file 2020-08-18 12:24:01 -04:00
6b024d4697 Merge branch 'master' of github.com:lammps/lammps into reduce-kokkos-compiler-warnings 2020-08-18 10:15:55 -06:00
dae2cb2668 Merge pull request #2286 from weinbe2/fea-snap-ui-optim
Kokkos SNAP optimizations – Pre-computing Cayley-Klein parameters, symmetrized data layouts for host and device backends, reducing number of atomics
2020-08-18 11:55:46 -04:00
9c769fe90e Complete refactor of dump custom tests 2020-08-18 11:53:10 -04:00
6dfe2f3351 Minor code cleanup 2020-08-18 09:21:28 -06:00
d6ea2e9e9b More refactoring 2020-08-17 17:56:33 -04:00
e75ba02701 Merge remote-tracking branch 'origin/master' into refactor-reading 2020-08-17 17:36:01 -04:00
fa0aa7f8d2 Merge pull request #2291 from ThFriedrich/master
fix typos and indentations
2020-08-17 12:11:38 -04:00
23be41a1d3 fix typos and indentations 2020-08-16 04:43:07 +02:00
f0e36c74a8 silence more signedness comparison warnings 2020-08-15 18:10:13 -04:00
365d8f57f1 Refactor dump atom tests 2020-08-14 15:41:24 -04:00
b95cb37f62 correct indentation and silence warning about singed/unsigned comparison 2020-08-14 12:02:23 -04:00
71e0646063 Merge branch 'gridcomm-tiled' of github.com:lammps/lammps into gridcomm-tiled 2020-08-14 09:41:37 -06:00
eb78f8842f another change to pppm/stagger 2020-08-14 09:41:30 -06:00
3aee1b75b1 update README 2020-08-14 11:21:51 -04:00
08a5a05ece reduce compiler warnings in KOKKOS version of USER-DPD code 2020-08-13 20:54:06 -04:00
1939a9e665 silence a few more compiler warnings and remove dead code 2020-08-13 20:13:51 -04:00
4227c5e9e1 silence more compiler warnings about unused parameters and variables 2020-08-13 18:19:35 -04:00
1b60f876e0 Some refactoring of tests 2020-08-13 18:04:34 -04:00
dbcf66cf97 Increase coverage of dump custom 2020-08-13 17:41:06 -04:00
eab8652d3a Fix triclinic binary header in dump custom 2020-08-13 17:40:44 -04:00
2ba4778640 Add missing cleanup 2020-08-13 17:39:57 -04:00
f1afa45b92 Merge branch 'gridcomm-tiled' of ssh://github.com/lammps/lammps into gridcomm-tiled 2020-08-13 14:52:31 -06:00
40e55af8d7 Port GridComm changes to Kokkos 2020-08-13 14:51:58 -06:00
abc3e17619 fix loop control bug in qeq/reax/kk 2020-08-13 16:30:12 -04:00
6778489247 silence a whole bunch more compiler warnings 2020-08-13 16:26:50 -04:00
0d2a280397 silence compiler warnings 2020-08-13 15:46:00 -04:00
fbcc97586f Update binary format of dump custom 2020-08-13 14:45:22 -04:00
6225a7d45c Merge branch 'gridcomm-tiled' of github.com:lammps/lammps into gridcomm-tiled 2020-08-13 12:03:42 -06:00
a1ca4ecbe8 add GridComm API changes to msm/cg/omp 2020-08-13 12:03:32 -06:00
71ec14087d Reduce code duplication in tests 2020-08-13 13:00:37 -04:00
1fb7ba9e4b Add tests for dump_custom 2020-08-13 12:35:47 -04:00
27e8ee7bd8 Fix typo 2020-08-13 12:34:16 -04:00
87a356a211 Add write_dump tests for dump atom 2020-08-13 12:04:54 -04:00
f9697bd9f5 Add optional TIME to binary dump atom format 2020-08-13 11:48:29 -04:00
6d725c9b1c Merge pull request #2287 from akohlmey/lattice-region-tester
Add unittest tool for lattice and region (/w create_box/create_atoms)
2020-08-13 11:47:08 -04:00
6d80435b51 Refactoring dump_atom.cpp 2020-08-13 11:35:05 -04:00
836ba01d51 Rename test_dump.cpp to test_dump_atom.cpp 2020-08-13 11:14:30 -04:00
4157ab3bd3 silence compiler warnings about unused parameters 2020-08-13 11:11:28 -04:00
7b0bfed01d Add failure tests to dump atom 2020-08-13 11:01:16 -04:00
6d825dcb6b Add UNITS information to dump atom binary format 2020-08-13 10:49:03 -04:00
1c2747739a Merge pull request #2284 from akohlmey/fix-tester
Add unit test tool for fixes that do time integration, thermostatting, force manipulations and similar
2020-08-13 10:23:29 -04:00
b27d63059c Add tests for units in dump atom 2020-08-13 10:22:46 -04:00
dc484f06c8 do not mix class and struct for functors: use class consistently 2020-08-13 10:17:14 -04:00
bd7917919b update list of pointer variables to be initialized to NULL in the msm constructor 2020-08-13 09:34:02 -04:00
ba793f2e56 add region tests and a few more death tests for lattice commands 2020-08-12 22:16:50 -04:00
6eb6ab308b more tests for lattice command failures 2020-08-12 22:16:50 -04:00
f8c7c13168 complete lattice testers and start with regions+lattice+create_atoms 2020-08-12 22:16:50 -04:00
33118491a9 update custom lattice example for better syntax highlighting and remove unused lines 2020-08-12 22:16:50 -04:00
1cd2dfee3f add more lattices 2020-08-12 22:16:50 -04:00
5c5774c8a4 add check for compatible lattice command when calling create_atoms
without this check it is possibly to use the dimension keyword after
using lattice and then create atoms with an unsuitable lattice setting
2020-08-12 22:16:49 -04:00
7e558e4628 add tester tool for lattice and region commands 2020-08-12 22:16:49 -04:00
e2cedebd29 more enumerator to class definition in header, so it can be accessed by tester 2020-08-12 22:16:49 -04:00
3a1b88c57f enable MSM to work withe new GridComm class 2020-08-12 17:41:31 -06:00
e00544c8bf Merge branch 'gridcomm-tiled' of github.com:lammps/lammps into gridcomm-tiled 2020-08-12 14:28:25 -06:00
ecec36cc15 remove trial versions of PPPM2 and GridComm2 2020-08-12 14:26:15 -06:00
eae7312680 changes to more PPPM variants for tiled support 2020-08-12 14:25:28 -06:00
a5d27763e5 Added support for symmetrized memory layouts for ui/duidrj for the CPU- and GPU-path SNAP Kokkos implementation, various perf optimizations for ComputeUi/ComputeFusedDeidrj 2020-08-12 16:15:06 -04:00
adf8d638e8 add missing word 2020-08-11 21:23:47 -04:00
5050538d59 add tests for addforce and aveforce fixes 2020-08-11 21:00:16 -04:00
99604a6155 Merge branch 'collected-small-fixes' into fix-tester 2020-08-11 20:26:46 -04:00
68d94f9b59 fix memory leaks in pair style meam/spline 2020-08-11 20:25:35 -04:00
dff8a50a46 fix memory leak in pair style edip 2020-08-11 20:14:39 -04:00
4cfc920d65 remove unused variable 2020-08-11 19:58:51 -04:00
90acace136 fix restart issues in pair style lennard/mdf 2020-08-11 19:57:32 -04:00
3dda6b5752 Increase test coverage of dump atom 2020-08-11 19:00:32 -04:00
ef13372d13 Remove debug message 2020-08-11 18:32:58 -04:00
873b8b0104 Add dump atom tests with image=yes 2020-08-11 18:12:53 -04:00
560c29a0e1 Extends header of new binary format of dump atom 2020-08-11 17:37:46 -04:00
9d486d734b update bond/react for reset_mol_ids->create_computes 2020-08-11 17:29:27 -04:00
3c69ebc669 reset_mold_ids: add create_computes 2020-08-11 17:12:36 -04:00
1238ad5d83 Fix binary2txt output for triclinic 2020-08-11 16:20:05 -04:00
b08751d65a Add triclinic tests for dump atom 2020-08-11 16:17:36 -04:00
51a7038dbf Merge branch 'master' into fix-tester 2020-08-11 16:14:27 -04:00
ac43f8f685 Merge pull request #1865 from danicholson/bond-style-special
Add bond style special
2020-08-11 16:06:26 -04:00
11af732aab tweak precision for edip test 2020-08-11 15:43:03 -04:00
3593d371eb Merge pull request #2285 from twhitehead/comm-for-fix-destructors
Move comm destruction to after modify to leave available for fixes
2020-08-11 15:21:36 -04:00
83f81c42b9 Fix typo 2020-08-11 15:08:58 -04:00
15cd007d7b Merge pull request #2283 from abhiShandy/soft-test
Add unit tests for /soft pair styles
2020-08-11 15:04:54 -04:00
3cae295f5b make test for unsupported pair styles more restrictive and improve docs about that
EAM styles have a single function but are not compatible, so we test for
single_enable == 0 and manybody_flag != 0.
Improve explanation in the documentation about which pair styles are not supported.
2020-08-11 15:04:14 -04:00
f6d91b3b2c move domain/comm commands 2020-08-11 15:02:37 -04:00
2ad9e06bac Sync DumpAtom and binary2txt to generate the same
Modifies the binary dump atom format to include columns information.
binary2txt showcases how to detect the new format by checking for
negative ntimestep values. It increases the binary file size
16 bytes per timestep.
2020-08-11 14:59:01 -04:00
265b7cf11c use new dependency resolver in pip for the documentation build virtual environment 2020-08-11 14:11:44 -04:00
03ca86ee84 Merge branch 'master' into bond-style-special 2020-08-11 13:55:24 -04:00
e3a1fd7c02 Add tests for dumps 2020-08-11 12:55:39 -04:00
46021a57a6 addressed incompatibility with long range coulombics 2020-08-11 12:22:07 -04:00
65d9eef707 add test for pair style extep 2020-08-11 09:57:32 -04:00
6b84cd1c48 add test for pair style morse/smooth/linear 2020-08-11 09:57:23 -04:00
f685a7cc93 fix incorrect sign bug 2020-08-11 09:56:19 -04:00
8fb356d901 fix initialization after restart bug 2020-08-11 09:56:07 -04:00
5c0ec78cd2 add test for pair style e3b 2020-08-11 08:57:40 -04:00
0cb3163bd6 may test for atom types only after system is initialized 2020-08-11 08:57:27 -04:00
172435b662 add tests for lj/expand/coul/long 2020-08-11 08:38:42 -04:00
7ff5a7fccd fix bugs with single and r-RESPA 2020-08-11 08:37:03 -04:00
f77b80180c simplify 2020-08-11 08:36:39 -04:00
175a6c26a7 Add Info::get_mpi_vendor() function 2020-08-10 19:02:39 -04:00
5ee4346700 fixed test for tip4p_long_soft, and mentioned the required coefficients for coul/*/soft sub-styles 2020-08-10 17:16:07 -04:00
b9ce53e096 update tests for r-RESPA testing of fixes 2020-08-10 17:03:19 -04:00
70f37d6613 update for handling r-RESPA properly 2020-08-10 17:02:56 -04:00
33c97618be using hybrid/overaly to add soft repulsion to purely coulombic pair-styles 2020-08-10 16:52:32 -04:00
a7fee0a96f replace strstr with utils::strmatch 2020-08-10 16:28:42 -04:00
5ebac27fd5 safety for division by zero in scaling of the projection 2020-08-10 15:15:47 -05:00
a83147ce20 fixed bug in respa neighbor list 2020-08-10 16:01:28 -04:00
7d8dcb0fb0 Remove strtok from reader_native.cpp 2020-08-10 15:56:06 -04:00
2de98999c1 bug fix formula for frame of reference rotation for granular tangential history 2020-08-10 14:51:00 -05:00
1370090586 Move comm destruction to after modify to leave available for fixes
Needed in some cases to cleanup asynchronous inter-step transfers.
2020-08-10 15:49:52 -04:00
3993f53946 must skip DeathTests if no data file loaded 2020-08-10 15:46:28 -04:00
67af8c000e fix r-RESPA bug in storing global total force data 2020-08-10 15:46:00 -04:00
b12f9d5150 Remove strtok in thermo.cpp 2020-08-10 13:53:59 -04:00
079cc123e5 Remove unused function 2020-08-10 12:27:08 -04:00
e2b113b5e1 Merge branch 'master' into refactor-reading 2020-08-10 12:25:16 -04:00
6f1055a9b1 Merge pull request #2281 from jtclemm/patch_fix_store
Patch fix store to encode the size of per-atom data consistently with other related fixes for restarting.
2020-08-10 12:09:08 -04:00
bf724332d4 implement tangential force history in mindlin/force and mindlin_rescale/force 2020-08-10 10:53:30 -05:00
e3beec8b95 revert permission change and replace 'b/c' with 'because' 2020-08-10 11:37:52 -04:00
0025140902 flag which table - identified by keyword - has a warning 2020-08-10 11:09:10 -04:00
869b09a78f fix typo 2020-08-10 11:08:30 -04:00
b92eda8ab8 enable testing with r-RESPA for real 2020-08-09 17:36:15 -04:00
c3903efb46 add test for berendsen barostat 2020-08-09 16:45:21 -04:00
4b7356f5af add support for testing virial contributions from fixes (as an option) 2020-08-09 16:39:31 -04:00
f1da1ed180 document restart capability of fix temp/csld and fix temp/csvr 2020-08-09 15:29:12 -04:00
e51bec10a8 one more test variant for fix setforce 2020-08-09 15:18:28 -04:00
4708cd7e1f always call MPI_Finalize() before exiting tester program 2020-08-09 15:17:53 -04:00
b223ca1436 cleanup and bugfix 2020-08-09 15:12:38 -04:00
2fcd7b79ab make certain that internal data in RanMars is initialized to avoid false positive with valgrind 2020-08-09 15:12:10 -04:00
f1da2b2f5f add tests for fix/csvr and fix/csld 2020-08-09 14:56:43 -04:00
bbcae3b20c added restart capability to fix temp/csld and fix temp/csvr 2020-08-09 14:56:27 -04:00
383bb7f905 added restart capability to RanMars 2020-08-09 14:56:00 -04:00
897ae681d3 remove dead code 2020-08-09 14:55:35 -04:00
548e108695 simplify 2020-08-09 14:55:11 -04:00
6e9bf8709e add tests for fix rattle 2020-08-09 13:58:10 -04:00
d8cd12b285 print warning only on MPI rank 0 2020-08-09 13:57:04 -04:00
3ebd194090 update documentation for unit testing to include timestepping fix tests 2020-08-09 08:18:35 -04:00
cabb166041 add tests for fix shake 2020-08-09 07:40:24 -04:00
a4eea29d90 add fix setforce test with variables 2020-08-09 07:32:46 -04:00
a6cc775241 add example for wall fix 2020-08-09 07:25:27 -04:00
1989279442 no need to list all dependencies. if atom style full is available, the rest is, too. 2020-08-09 07:25:15 -04:00
2053776118 increase code coverage 2020-08-09 07:13:26 -04:00
d7c1162e9d make plain and omp test consistent 2020-08-09 07:12:56 -04:00
a27a03bc1a now also test for global scalars and vectors and t_target for thermostats 2020-08-09 01:48:12 -04:00
b1e9b6d3fc set variable for checking thermostat target temperature 2020-08-09 01:33:37 -04:00
88f89c8f14 correctly read entire vector 2020-08-09 01:27:56 -04:00
62a501ebda store cumulative energy change in restart file 2020-08-09 01:27:14 -04:00
e94d1c5537 add function to query whether ErrorStats class has data 2020-08-09 01:01:35 -04:00
2edad432ce add support for storing a global scalar and global vector 2020-08-09 00:03:43 -04:00
4b5bc8f63b some more fix tests 2020-08-08 23:14:16 -04:00
6276e72509 also check fix styles. properly detect upper case. 2020-08-08 23:13:57 -04:00
511944d9bd add a first set of tests for timestepping fixes 2020-08-08 22:54:58 -04:00
faac18ffd2 add tester tool for timestep related fixes: integrators, thermostats, force manipulations, constraints 2020-08-08 22:54:17 -04:00
0ce43efc34 reorder folders, so that the fast tests are run first 2020-08-08 22:52:41 -04:00
6cea5a9aef added missing restart_settings() in morse/soft 2020-08-08 17:11:25 -04:00
9bbd6099af unit tests for /soft pair styles 2020-08-08 16:30:27 -04:00
f69dd734b2 update format 2020-08-08 14:48:11 -04:00
d0720794a6 Replaced mistakenly dropped line 2020-08-08 09:24:37 -06:00
41904f7946 Added cautionary comments 2020-08-08 09:15:56 -06:00
2775b93789 Merge pull request #2282 from akohlmey/more-unit-tests
Add more unit tests for pair and kspace styles
2020-08-07 19:06:44 -04:00
54b933164f tweak epsilon 2020-08-07 18:34:39 -04:00
7aae5ba5d1 set molecule ids for testing interlayer potentials 2020-08-07 18:34:25 -04:00
17b7476217 avoid sqrt computation on cutoffs. make single functions consistent with compute 2020-08-07 18:34:10 -04:00
9f469623c0 add test for lj/smooth/linear and gaus/cut 2020-08-07 18:13:58 -04:00
e169a5c785 add tests for pair style coul/streitz 2020-08-07 18:06:57 -04:00
a17633bd20 use open_potential in pair style coul/streitz 2020-08-07 18:06:43 -04:00
c5cd108113 add tests for coul/shield, coul/slater/cut and coul/slater/long 2020-08-07 16:59:21 -04:00
2ffa7430ab fix restart bug in pair style coul/shield 2020-08-07 16:58:56 -04:00
7d26fbc6e2 add test for pair style coul/diel 2020-08-07 16:51:23 -04:00
e217635e9a fix bug in reading binary restarts for pair style coul/diel 2020-08-07 16:51:12 -04:00
0537cc721e add test for pair style edip/multi 2020-08-07 16:32:53 -04:00
ec0c3d60a8 add test for pair style edip 2020-08-07 16:30:12 -04:00
4542a39f21 fix indexing bug in pair style edip/omp 2020-08-07 16:29:53 -04:00
8e0dccee2c add test for pair style meam/sw/spline 2020-08-07 16:08:28 -04:00
51decfcf85 add test for pair style meam/spline 2020-08-07 14:53:11 -04:00
04cc5df27b atom type to element mapping is not done correctly. for now require exactly one atom type per element 2020-08-07 14:52:51 -04:00
1c33bff557 add test for pair style yukawa/colloid 2020-08-07 12:04:23 -04:00
efa8b3486f update colloid test template so it can handle different atom styles 2020-08-07 12:04:06 -04:00
15e969ca5b add triclinic support to ewald/omp 2020-08-07 11:11:52 -04:00
094f52c378 make space style msm an explicit dependency 2020-08-07 00:07:36 -04:00
7d9f6b0dc5 add tests for pair styles from USER-SDK 2020-08-07 00:07:18 -04:00
a42365bf90 add support enforce writing a data file with pair ij as required by sdk styles 2020-08-07 00:05:34 -04:00
1d539ea787 make single function consistent with compute 2020-08-07 00:04:59 -04:00
c6d5715ea1 add tests for meam/c 2020-08-06 23:12:16 -04:00
d2a66cc9ee Merge branch 'master' into gridcomm-tiled 2020-08-06 22:27:35 -04:00
aa393f35db Merge pull request #2279 from akohlmey/collected-small-changes
Collected small changes and fixes
2020-08-06 22:26:20 -04:00
3c21642bf1 Merge branch 'collected-small-changes' into gridcomm-tiled 2020-08-06 21:53:46 -04:00
522a76694f test pppm with triclinic cell 2020-08-06 21:52:37 -04:00
b91419397d update (some) kspace tests to run faster 2020-08-06 21:49:03 -04:00
6dd903cfff Merge branch 'collected-small-changes' into gridcomm-tiled 2020-08-06 18:47:38 -04:00
8327613192 Merge branch 'master' into gridcomm-tiled 2020-08-06 18:35:33 -04:00
cd31006006 add test for pair style python 2020-08-06 17:53:11 -04:00
ec0b3ae8d2 add test for pair style tip4p/cut 2020-08-06 16:54:39 -04:00
e1219399b4 add tests for buck/long/coul/long 2020-08-06 16:26:37 -04:00
fefed73cb9 fix bug in single function of buck/long/coul/long 2020-08-06 16:26:26 -04:00
ad71475e91 more tests 2020-08-06 16:09:47 -04:00
dae97e1151 add tabulation for long-range coulomb 2020-08-06 16:09:36 -04:00
8826ea91e2 inherited single function doesn't match, we need to set single_enable to 0 2020-08-06 16:09:21 -04:00
0d677321d8 more tests for coreshell 2020-08-06 15:50:31 -04:00
ad9483343c reformat pair_coeff section 2020-08-06 15:49:31 -04:00
e93e49a777 restore printing alphabetically sorted lists of missing styles 2020-08-06 15:30:52 -04:00
e777454888 add unittest for pppm/tip4p with kspace_modify diff ad and fix related bug in pppm/tip4p/omp 2020-08-06 14:42:15 -04:00
89694d3f8e small tweak 2020-08-06 11:45:00 -04:00
5caeb2c2ee generalize to allow GridComm to be called from Fixes or Computes 2020-08-06 08:36:59 -06:00
15db052c80 Merge branch 'master' into collected-small-changes 2020-08-05 22:10:10 -04:00
c3075250ee Merge pull request #2273 from abhiShandy/pair-tests-aug4
Bunch of units tests for pair-style, angle-style, bond-style
2020-08-05 22:09:28 -04:00
787d7d28d0 Merge pull request #1296 from Adrian-Diaz/multi-comm-tiled
updated comm tiled to have multi style ghost communication
2020-08-05 21:27:33 -04:00
6b1191b1c0 Forgot to update saving buffer size 2020-08-05 18:59:33 -06:00
ae3df83ed8 Merge pull request #2275 from stanmoore1/kk_hip
First set of changes for Kokkos HIP
2020-08-05 19:52:35 -04:00
458243604b change atom style tests expand covered code paths: tiled vs. brick comm, orthogonal vs. triclinic. relax floating point check precision 2020-08-05 19:27:59 -04:00
27fe315db7 Matching style of other fixes 2020-08-05 17:25:58 -06:00
5f83edd127 remove references to non-existent MPI_Statuses 2020-08-05 17:24:09 -06:00
1871175871 Patched fix/store 2020-08-05 17:20:13 -06:00
ac08bcadf7 use bbox keyword on some replicate commands to increase code coverage 2020-08-05 18:49:05 -04:00
8b76e47d6b support for tiled decompositions in PPPM 2020-08-05 16:44:56 -06:00
0e7c5a014d Merge pull request #2276 from rbberger/fmtlib-upgrade
Upgrades the fmt library to version 7.0.2
2020-08-05 18:34:34 -04:00
65574be178 whitespace fixes 2020-08-05 17:52:16 -04:00
304d6876f4 a few bug fixes for support for multi and triclinic in CommTiled 2020-08-05 15:44:02 -06:00
8f84b6cbe6 Merge branch 'fix_typo_doc_dpd' of github.com:pdebuyl/lammps into collected-small-changes 2020-08-04 19:42:32 -04:00
d53fc62fb0 change fmtlib internal namespace from v7 to v7_lmp to avoid clashes when linking with other fmtlib variants 2020-08-04 19:18:44 -04:00
8558e9bd45 fix bug when applying floating point output formatting to integers 2020-08-04 19:10:19 -04:00
67a9856e0c silence compiler warning when converting MAXBIGINT to a double 2020-08-04 19:07:53 -04:00
ae765f9d6e Add missing KOKKOS_INLINE_FUNCTION 2020-08-04 17:03:54 -05:00
1a642d36ae fix typo in the math of pair style dpd doc
- missing closing backticks for math
- V fixed to v for relative velocity
2020-08-04 22:50:26 +02:00
0b6c7ba502 Add missing KOKKOS_INLINE_FUNCTION 2020-08-04 13:07:35 -05:00
7294936322 Add missing fmt license 2020-08-04 13:39:18 -04:00
c6f5640d48 Simplify #ifdef 2020-08-04 11:25:42 -06:00
2fe7be0d37 Reapply fmt patches for Intel compiler issues
- work around issue of the Intel compiler disguising as clang on MacOS
- {fmt}: don't use [[gnu::fallthrough]] on intel compilers
2020-08-04 13:18:54 -04:00
63cbbf9605 Upgrade embedded fmt library to v7.0.2 2020-08-04 13:17:57 -04:00
ed566bf6af First set of changes for Kokkos HIP 2020-08-04 12:16:26 -05:00
18bc389339 print warning, when mixed pair coeffs were set explicitly but are not written in data file 2020-08-04 07:18:48 -04:00
e860779fa0 formatting update 2020-08-04 07:17:28 -04:00
357716ec4c correctly check of mu and torque flags as those data structures are always accessed. 2020-08-04 07:17:12 -04:00
f9539f9ca6 remove unused code 2020-08-04 07:08:55 -04:00
f895904d2c Merge branch 'pair-tests-aug4' of github.com:abhiShandy/lammps into pair-tests-aug4 2020-08-04 02:18:06 -04:00
5592bac69c Merge branch 'bond-styles-Aug4' into pair-tests-aug4 2020-08-04 02:17:06 -04:00
59c5a62a00 Merge branch 'angle-tests-Aug4' into pair-tests-aug4 2020-08-04 02:16:57 -04:00
feadfaf9be unit tests for angle-class2/p6, angle-cross and angle-mm3 2020-08-04 02:15:11 -04:00
eed7113506 tests for fene, fene/expand 2020-08-04 01:57:23 -04:00
f407db6198 add test for lj/cut/tip4p/cut 2020-08-04 00:11:14 -04:00
b217375744 add tests with AD instead of IK 2020-08-03 23:45:46 -04:00
83519290e7 add kspace tests with slab correction and pppm/stagger 2020-08-03 23:31:32 -04:00
ef8b619840 fix missing support for nozforce in ewald/omp 2020-08-03 23:21:54 -04:00
4e46c0aef4 add missing born/coul/long variant using tabulation 2020-08-03 23:02:29 -04:00
c2ed040529 simplify 2020-08-03 22:49:21 -04:00
89d85436f1 update reference data for triclinic case 2020-08-03 22:42:18 -04:00
f4aede49dc Merge branch 'master' into multi-comm-tiled 2020-08-03 22:37:23 -04:00
ea900b3482 add test input template for tiled with triclinic and multi-cutoff 2020-08-03 22:17:04 -04:00
d89a047461 Simplify write data code 2020-08-03 22:08:06 -04:00
6bc65dc14c reference typos in doc 2020-08-03 20:49:02 -04:00
a921c44a4f fix bug in writing data 2020-08-03 20:48:37 -04:00
de828fceaf test for cosine/squared 2020-08-03 20:48:11 -04:00
0db1c66b03 triclinic compatibility 2020-08-03 20:16:20 -04:00
33aa96b1bf test for buck/mdf, fixed bug in broadcasting inner cutoff, typos in doc 2020-08-03 20:07:24 -04:00
6576c4cbf3 Merge pull request #2260 from akohlmey/collected-small-changes
Collected small changes
2020-08-03 18:02:17 -04:00
ca7039aa96 Merge pull request #2271 from abhiShandy/pair-tests-Aug3
Unit tests for born/coul, ufm, yukawa, soft
2020-08-03 17:23:22 -04:00
9cd0a52c44 Remove old comment 2020-08-03 16:58:56 -04:00
4126ba24c1 Move timespec2seconds to utils 2020-08-03 16:54:53 -04:00
436951fb34 Merge pull request #2270 from akohlmey/check-test-coverage
Add utility to check for missing force style tests
2020-08-03 16:47:49 -04:00
851a22802e add tests for pair style colloid in variants in several neighbor list and comm variants
this does 3 tests:
- regular neighborlist binning with single cutoff communication
- comm style brick with multi-cutoff neighborlists and communication
- comm style tiled with multi-cutoff neighborlists and communication
2020-08-03 16:16:56 -04:00
6dcd962718 fix indentation and whitespace 2020-08-03 16:09:11 -04:00
a6b3ee7a07 fix bugs in comm style tiled with multi-cutoff 2020-08-03 16:08:13 -04:00
7ed748118e add exception for single test for colloid pair style 2020-08-03 16:07:32 -04:00
8d406403bb fix typo in manual 2020-08-03 16:07:06 -04:00
d0be219419 Refactor check-styles.py 2020-08-03 14:26:55 -04:00
9db3004d0c Merge branch 'master' into multi-comm-tiled 2020-08-03 14:08:53 -04:00
f9d1a914fb Update check-packages.py 2020-08-03 13:49:37 -04:00
4549493145 Refactor check-packages.py 2020-08-03 13:47:40 -04:00
944ac44b44 Update pair coul streitz 2020-08-03 13:13:47 -04:00
2ffb29f65e Merge remote-tracking branch 'origin/master' into refactor-reading 2020-08-03 11:50:23 -04:00
23a8b3438d Merge pull request #2267 from abhiShandy/force-tests
unit tests for beck, morse, few LJ derivatives, few buck/coul and born/coul
2020-08-03 11:41:16 -04:00
d09d40af9d make check for alternate linke more restrictive: also check for linker binary. 2020-08-03 11:36:02 -04:00
865e853a41 Refactor check_tests.py 2020-08-03 10:37:45 -04:00
9bc1da64fb pair style gauss does not apply special_bonds 2020-08-03 08:42:36 -04:00
7e5e741ea1 update code for ufm/gpu to match changes in base class where uf4 is removed 2020-08-03 08:12:09 -04:00
d271ee65e8 Merge branch 'pair-tests-Aug3' of github.com:abhiShandy/lammps into pair-tests-Aug3 2020-08-03 08:03:01 -04:00
f3d7f0be2d update test reference data for pair style ufm 2020-08-03 08:01:37 -04:00
69688bbc1a must initialize scale array entries when using mixed parameters 2020-08-03 08:01:13 -04:00
c171b2ceda fix incomplete restart bug in pair style ufm 2020-08-03 08:00:54 -04:00
ad6b37d688 bug in forcelj of gauss_omp 2020-08-03 08:00:41 -04:00
d241b17c8e remove unused setting and array 2020-08-03 07:44:32 -04:00
86c6efc04c sort list of missing styles alphabetically 2020-08-03 07:30:15 -04:00
bb183345bb remove obsolete function 2020-08-03 07:29:53 -04:00
10c0b8d90e passing test for soft 2020-08-03 06:23:23 -04:00
80ceff55d5 failing test for UFM, with cosmetic change in its CPP, and doc correction 2020-08-03 06:01:59 -04:00
8eb84229bd passing tests for born-coul, gauss and yukawa 2020-08-03 05:59:44 -04:00
90028a3c71 properly handle hybrid styles when checking for missing tests 2020-08-03 00:43:41 -04:00
896a08883b add a custom python script to check the completeness of tests inputs 2020-08-03 00:12:51 -04:00
bbb4c39692 Merge branch 'wip-tests' into force-tests 2020-08-01 14:53:10 -04:00
eb91c6feb6 correct data file output format for ZBL style. update reference output. 2020-08-01 14:43:14 -04:00
cc87557fa7 tweak parameters for lj/expand to stabilize test run 2020-08-01 14:24:50 -04:00
6827eb80a8 fix missing initialization bug in lj/cut/coul/wolf and update reference data 2020-08-01 14:18:40 -04:00
a4db52c30f tweak potential parameters for better stability of test run 2020-08-01 14:05:27 -04:00
4c3dc9566c need to explicitly clamp the forces and energy in single function to zero at (implicit) pairwise cutoff 2020-08-01 14:05:04 -04:00
891be9313a fix parameters initialization bug in pair style lj/cubic 2020-08-01 13:37:07 -04:00
7158f47157 bugfix for pair style buck/coul/cut 2020-08-01 11:15:07 -04:00
34279840fc unit tests for few buck/coul and born/coul; remove mixing from buck 2020-08-01 08:52:07 -04:00
d15db7b5a7 fix the atomic numbers in ZBL test 2020-08-01 07:49:06 -04:00
86c53cb211 unit tests for few LJ derivatives and ZBL 2020-08-01 07:39:33 -04:00
2a487f5f47 unit tests for beck, morse, and few LJ derivatives 2020-08-01 07:27:39 -04:00
729cc81f31 make more use of utils::logmesg() 2020-07-31 22:16:06 -04:00
74f50ed1bd Merge branch 'master' into collected-small-changes 2020-07-31 21:51:10 -04:00
75dcd9ae29 Merge pull request #2266 from Vsevak/fix_opencl
Fix handling of CL_DEVICE_TYPE flags
2020-07-31 21:50:33 -04:00
59b5c7c154 Merge pull request #2264 from akohlmey/fix_ttm_parser_update
Refactor parsing of input files in fix ttm and fix ttm/mod
2020-07-31 18:14:54 -04:00
b6b5d369b4 Merge pull request #2265 from abhiShandy/easy-pairs
Unit tests for born, buck, lj96 and mie cut
2020-07-31 15:45:14 -04:00
db47eeb2a9 Fix handling of CL_DEVICE_TYPE flags 2020-07-31 19:21:32 +03:00
067540fef1 diversify exponents in mie/cut test 2020-07-31 12:11:24 -04:00
1017b76c71 reformat pair_coeff section in buck test for better readability 2020-07-31 12:08:00 -04:00
12924346ac unit tests for born, buck, lj96 and mie cut 2020-07-31 11:46:51 -04:00
1f1263645e Document warning about short communication cutoff vs. bond length based estimate 2020-07-31 11:03:26 -04:00
adde2439a6 Merge pull request #2263 from junghans/gitattributes
Add .gitattributes
2020-07-31 00:18:02 -04:00
8cb63194aa optimize utils::strmatch() by using const string reference 2020-07-30 23:42:03 -04:00
814e2e9aaf turn off optimization for Clang compilers when compiling atom style tester 2020-07-30 23:41:24 -04:00
1cf7a12a5f trim whitespace before parsing numbers 2020-07-30 23:40:34 -04:00
c3db11a807 fix argument index bug carried over from syncing with fix ttm 2020-07-30 23:40:09 -04:00
4b91ab0d23 add utils::trim() function to remove leading and trailing whitespace from string 2020-07-30 23:39:37 -04:00
3370d2f8de Add .gitattributes
This will help to strip out some developer-only files from the
GitHub generated tarballs.
2020-07-30 10:51:21 -06:00
45af603c04 Make patch informational too 2020-07-30 12:26:55 -04:00
09e0ad19f5 Merge branch 'collected-small-changes' of github.com:akohlmey/lammps into collected-small-changes 2020-07-30 12:21:46 -04:00
763fa426cf Enable patch status 2020-07-30 12:21:40 -04:00
6812649a65 Merge branch 'collected-small-changes' of github.com:akohlmey/lammps into collected-small-changes 2020-07-30 12:08:43 -04:00
1ae785132c Add codecov.yml 2020-07-30 12:08:15 -04:00
f0e6651780 Merge branch 'first-test' of github.com:abhiShandy/lammps into collected-small-changes 2020-07-30 11:46:06 -04:00
facb2f3c27 fix error in determining A/B parameters. outputs now match lj/mdf as expected. 2020-07-30 11:44:37 -04:00
4a28a708b9 T_initial_set array is only required during reading of the mesh 2020-07-30 10:36:03 -04:00
36f4e6789a simple test for pair-born 2020-07-30 03:30:57 -04:00
6a90a2affe consistently check for presence of all input mesh data 2020-07-29 23:43:45 -04:00
7d46aa6185 Merge pull request #2256 from akohlmey/cmake-use-alternate-linker
Use alternate/faster linker if available
2020-07-29 21:40:17 -04:00
2c3f9b111a whitespace cleanup: replace tabs and remove trailing blanks 2020-07-29 21:36:24 -04:00
8c30b320fd Merge branch 'master' into collected-small-changes 2020-07-29 21:32:16 -04:00
c355348ff9 remove local copy of "me" 2020-07-29 21:31:51 -04:00
df3d04662d Merge pull request #2259 from lammps/rcb-tiled-tri
enable comm_style tiled and load-balancing to work for triclinic boxes
2020-07-29 21:23:20 -04:00
dd001e80d2 Merge branch 'master' into rcb-tiled-tri 2020-07-29 20:37:28 -04:00
b00bfc82c8 Merge pull request #1426 from Adrian-Diaz/comm_tiled_sendself_fix
Add bugfix for comm_tiled_sendself
2020-07-29 20:35:33 -04:00
b402b00882 Merge branch 'master' into comm_tiled_sendself_fix 2020-07-29 18:23:51 -04:00
2fa642d95e document custom linker choice 2020-07-29 18:01:17 -04:00
d0b6ce8284 displace target link options (if supported by CMake version) 2020-07-29 17:46:24 -04:00
1f1767f5af convert linker choice to (advanced) choice. only for Clang and GNU at the moment 2020-07-29 17:36:34 -04:00
2923dcbbd6 Merge pull request #2258 from akohlmey/phana-update
Update phana tool for USER-PHONON from GitHub repo
2020-07-29 16:52:47 -04:00
8c849c0104 add test file for pair style lennard/mdf 2020-07-29 16:41:11 -04:00
6707e64d14 change class name and add write_data support with pair style lennard/mdf 2020-07-29 16:39:44 -04:00
d3b5e50da3 fix bugs in lennard/mdf pair style 2020-07-29 16:39:07 -04:00
59ff6b7abc Add comment explaining the change 2020-07-29 16:33:54 -04:00
cb98fa00da enable CommStyle tiled and load-balancing to work for triclinic 2020-07-29 14:30:49 -06:00
4d9781f9b6 fix typo an reorder 2020-07-29 11:10:14 -04:00
7df8a63045 update phana tool for USER-PHONON from github 2020-07-29 10:48:04 -04:00
1677b76b6c try using faster alternatives to GNU ld when building (many) test executables 2020-07-28 20:56:32 -04:00
cc0cf3b94f consolidate USER-REAXC init error message handling. avoid snprintf and buffer 2020-07-28 20:40:57 -04:00
29c50671da Merge pull request #2254 from Vsevak/fix_opencl
Fix corrupted character in GPU package
2020-07-27 20:08:18 -04:00
ae329acd3b Merge pull request #2255 from akohlmey/charset-cleanup
Charset cleanup in (most) source files
2020-07-27 19:41:36 -04:00
9db34bc18e cosmetic changes to CommTiled for comm multi style 2020-07-27 16:15:41 -06:00
477b97f257 remove some more extended ASCII characters 2020-07-27 17:33:35 -04:00
2bb5c53a47 remove/replace extended ASCII characters from comments 2020-07-27 17:15:29 -04:00
634f274a04 whitespace cleanup: replace tabs and remove trailing whitespace 2020-07-27 17:14:53 -04:00
41535d8de3 Merge pull request #2253 from stanmoore1/kk_snap_bug
Fix issue in pair_snap_kokkos
2020-07-27 14:09:43 -04:00
93f14e9bba Fix broken ASCII symbol in GPU package 2020-07-27 20:16:55 +03:00
6dc52dff73 Fix bug in pair_snap_kokkos 2020-07-27 10:30:04 -06:00
884355b335 Merge pull request #2252 from akohlmey/collected-small-changes
Collected small changes and bugfixes
2020-07-27 12:01:18 -04:00
780fb5b376 add test function to validate updated topology data after reset_atom_ids 2020-07-27 10:43:37 -04:00
1fb1a5f461 fix incorrect ubuf decoding bug in reset_atom_ids 2020-07-27 09:48:13 -04:00
94c9cdbc05 print messages about reading potential files only on MPI rank 0 2020-07-27 06:19:35 -04:00
5452f72bd9 convert fix ttm and fix ttm/mod to use tokenizer class for parsing files 2020-07-25 18:03:18 -04:00
cf83ce6745 reset_mol_ids->reset() version 2020-07-25 00:52:39 -06:00
79984e31db small i/o tweaks 2020-07-24 14:10:30 -04:00
783b28906e Merge pull request #2250 from rbberger/doc-remove-small-images
Remove unnecessary thumbnails
2020-07-23 11:50:07 -04:00
5528d4d18c trim excessive white from images 2020-07-23 00:36:15 -04:00
f60c13c845 fix incorrect link 2020-07-23 00:36:02 -04:00
c21ce0b289 make horizontally aligned image formatting consistent and display "click on" message only with html output 2020-07-23 00:35:49 -04:00
9ceb0fd6a0 update output formatting and send all to screen and log 2020-07-22 22:51:47 -04:00
11e3adc91b make sure per-atom data is initialized to zero 2020-07-22 22:51:16 -04:00
545f50f9ec limit precision 2020-07-22 22:50:57 -04:00
b97f2e5b6b Update compute_saed.rst 2020-07-22 16:48:21 -04:00
bf848c0515 Update compute_xrd.rst 2020-07-22 16:45:56 -04:00
1123add481 Update create_atoms.rst 2020-07-22 16:44:04 -04:00
7f66099732 Update dump_image.rst 2020-07-22 16:41:59 -04:00
b664050e28 Update src/neb.rst 2020-07-22 16:39:18 -04:00
22a1e452ce Update fix_wall_gran_region.rst 2020-07-22 16:35:45 -04:00
e82367b530 Update balance.rst and fix_balance.rst 2020-07-22 16:31:31 -04:00
e6f7a99ae2 Update Python_examples.rst 2020-07-22 16:27:04 -04:00
6f58ed1c83 Merge pull request #2248 from rbberger/docs-include-accel-text
Remove duplicated accelerator text passage in docs
2020-07-22 14:14:57 -04:00
89c42d081f Merge pull request #2247 from rbberger/wsl-docs-update
Update Windows Subsystem for Linux Tutorial
2020-07-22 13:47:15 -04:00
73eccefeb3 Merge pull request #2246 from rbberger/docs-theme-update
Update lammps_theme (based on latest sphinx_rtd_theme)
2020-07-22 12:55:27 -04:00
feebdf9149 print complete read_data and special output to both screen and logfile 2020-07-22 07:23:33 -04:00
f9e7b7dd19 Remove outdated or differently formatted common text blocks 2020-07-21 17:54:33 -04:00
177a93d22d Replace common text block with include 2020-07-21 17:38:56 -04:00
6acc4bc849 Update Windows Subsystem for Linux Tutorial
Fixes #1953
2020-07-21 14:39:08 -04:00
437ff2742d Update lammps_theme (based on latest sphinx_rtd_theme) 2020-07-21 12:44:10 -04:00
938175d2bc Merge pull request #2242 from akohlmey/next_lammps_version
Update version strings for next patch release
2020-07-20 22:33:37 -04:00
472de2e85a Merge pull request #2238 from yafshar/kim_fix
KIM package corrections and refactoring
2020-07-20 21:22:59 -04:00
cbdf1d3a64 consolidate mpi4py link 2020-07-20 20:59:47 -04:00
68df62b869 support verbose option 2020-07-20 20:40:20 -04:00
cac4c5d930 fix merge artifact 2020-07-20 20:40:02 -04:00
5b4275002c Merge branch 'master' into kim_fix 2020-07-20 20:27:41 -04:00
39cefc4eb3 Merge pull request #2241 from yafshar/cmake
Update the deprecated property and fix the empty value on macOS
2020-07-20 12:23:20 -04:00
6d70c393e1 Merge pull request #2239 from akohlmey/collected-small-changes
Collected small changes and fixes for the next patch release
2020-07-20 11:35:11 -04:00
1f819ca333 update the kim_param command test 2020-07-19 18:35:20 -05:00
3390e1d4c5 starting of the kim_property command test 2020-07-19 18:10:00 -05:00
02ff2068cd cosmetic changes 2020-07-19 15:19:53 -04:00
78cfd3ff79 refactor fix tune/kspace
- make use of std::string to simplify code
- skip over trying MSM, if no suitable pair style present
2020-07-19 12:15:07 -04:00
b162cefc5f for ewald we also have evflag_atom that needs to be initialized 2020-07-19 12:12:50 -04:00
0008c0eca3 need to setup bins again if binning style has be reset 2020-07-19 12:12:20 -04:00
674514f822 update the kim_param command test 2020-07-19 10:35:00 -05:00
419404a9b5 Update the KIM error messages 2020-07-19 09:24:01 -05:00
c215278ad1 Update the KIM error messages 2020-07-19 08:41:52 -05:00
c73f8a5500 Update the KIM error messages 2020-07-19 08:13:03 -05:00
c844de03ef Update the KIM error messages 2020-07-19 08:08:30 -05:00
5fec11a0db Update the KIM error messages 2020-07-19 08:04:13 -05:00
262ce37eed silence compiler warning 2020-07-19 07:19:44 -04:00
295d75f230 guess should reset_mol_IDs *after* updating bonds 2020-07-18 21:14:36 -06:00
845b918501 probably better reset_mol_id doc version 2020-07-18 20:59:17 -06:00
edd3fb7108 reset_mol_ids: documented verbose option 2020-07-18 20:51:14 -06:00
65bf187a39 update version string for patch release 2020-07-18 21:51:01 -04:00
0246feb1c2 Merge branch 'kim_fix' of github.com:yafshar/lammps into kim_fix 2020-07-18 20:47:28 -05:00
bba7e3554c simplify building aligned mutable parameter trable using fmtlib 2020-07-18 21:42:33 -04:00
82f5bbf859 update the kim_interactions command test 2020-07-18 20:31:36 -05:00
894a7e4bce update test 2020-07-18 21:10:22 -04:00
c1a650d50d Update the error messages
Update the error messages and removing an extra Error word at the
start of each message.
2020-07-18 20:00:11 -05:00
610fea20dd clean up the code 2020-07-18 19:14:00 -05:00
40a053000d update output formatting of info command 2020-07-18 18:54:03 -04:00
bc47ec5027 update the kim_init command test 2020-07-18 17:23:24 -05:00
fe6efe8861 need header file! 2020-07-18 14:29:39 -06:00
9ec5708f2f Update reset_mol_ids.cpp 2020-07-18 14:21:10 -06:00
05c0b5d5ce Update the deprecated property and fix the empty value on macOS
The `IMPORTED_LINK_INTERFACE_LIBRARIES` is deprecated and is
updated to `INTERFACE_LINK_LIBRARIES` instead.
On macOS `CMAKE_THREAD_LIBS_INIT` is empty since empty the thread
functions are provided by the system libraries. To avoid getting
`set_target_properties called with incorrect number of arguments` error
message, we put it inside double quotes.
2020-07-18 15:12:31 -05:00
e00b0e96f6 bond/react: prevent reset_mol_ids printing 2020-07-18 14:00:46 -06:00
a2547701e6 fix verbose reset_mol_ids 2020-07-18 13:59:30 -06:00
6272b7d2bf add (undocumented) verbosity option to reset_mol_ids 2020-07-18 13:52:13 -06:00
da91f81d40 bond/react:doc clarification 2020-07-18 13:42:47 -06:00
371a5c5b61 bond/react: reset_mol_ids docs 2020-07-18 12:44:34 -06:00
57f639c0e5 bond/react:reset_mol_ids keyword 2020-07-18 12:42:47 -06:00
859da19869 consistently skip death tests at runtime when using OpenMPI without exceptions 2020-07-18 13:09:17 -04:00
e0200cf3d7 consistently skip death tests at runtime when using OpenMPI without exceptions 2020-07-18 13:02:38 -04:00
211beaee48 Merge pull request #2230 from evoyiatzis/widom
Implementation of Widom insertions through a new fix widom command
2020-07-18 11:40:04 -04:00
c9dc5d90d2 Merge remote-tracking branch 'origin/master' into refactor-reading 2020-07-17 23:08:26 -04:00
55c3d139c1 add Widom spc/e example 2020-07-17 21:42:00 -04:00
bf5c1dbc9e accept const std::string as argument in Group::find() 2020-07-17 21:29:16 -04:00
eff159baf4 work around issue of the Intel compiler disguising as clang on macos 2020-07-17 21:28:35 -04:00
4d4ae93ef8 add missing group names in fix widom. refactor group definition in fix widom and gcmc 2020-07-17 21:27:58 -04:00
93ed07f445 accept const std::string as argument in Group::find() 2020-07-17 21:26:53 -04:00
0e6531e2b6 whitespace cleanup 2020-07-17 15:02:53 -04:00
117499e847 avoid floating point exception (log(0)) 2020-07-17 15:02:47 -04:00
c9342aec31 add lj example for fix widom 2020-07-17 15:02:11 -04:00
c5698ac994 Merge branch 'collected-small-fixes' of github.com:rbberger/lammps into collected-small-changes 2020-07-17 14:03:17 -04:00
95c215d5d3 silence compiler warnings 2020-07-17 14:02:18 -04:00
65f9c1abf5 bugfix: reorder instructions 2020-07-17 14:00:16 -04:00
0748b12472 when processing quoted strings, the quotes need to be removed 2020-07-17 13:58:15 -04:00
b3bd36947d add convenience function to allow variable->set() command with a single string argument 2020-07-17 13:57:54 -04:00
5c191e1e6e fix the return call status 2020-07-17 11:21:25 -05:00
cdbcacffce when processing quoted strings, the quotes need to be removed 2020-07-17 10:23:07 -04:00
a0bfe932b5 quote argument that needs to be kept intact 2020-07-17 10:08:26 -04:00
5fe83755b8 start tester tool for KIM commands 2020-07-17 02:23:48 -04:00
2fb6a61f2a refactor code to make better use of std::string and simplify using changes to Variable class API 2020-07-17 01:23:17 -04:00
63bebf58fd add convenience function to allow variable->set() command with a single string argument 2020-07-17 00:46:31 -04:00
dd7bc1d34e use const char * instead of char * so we don't need a cast for string constants 2020-07-17 00:45:58 -04:00
e2efabc6c4 Revert "simplify"
This reverts commit 2be20f424f
as this change has been integrated into a different branch
with additional changes.
2020-07-17 00:35:13 -04:00
0af7fbe98e use const char * instead of char * so we don't need a cast for string constants 2020-07-17 00:34:23 -04:00
abc9cfe30f silence compiler warnings 2020-07-17 00:30:13 -04:00
4743bf4ea0 silence compiler warning 2020-07-17 00:27:03 -04:00
b61276b59d Merge branch 'master' into kim_fix 2020-07-17 00:10:02 -04:00
74c9c15589 simplify and get rid of strtok() 2020-07-17 00:08:07 -04:00
5df8be2ca4 Replace macro with std::to_string
Following the C++ Core Guidelines, Macros must go.
2020-07-16 20:21:12 -05:00
1b0f35c241 Replace macro with std::to_string
Following the C++ Core Guidelines, Macros must go.
2020-07-16 20:19:51 -05:00
168fe438a5 Replace macro with std::to_string
Following the C++ Core Guidelines, Macros must go.
2020-07-16 20:17:59 -05:00
2ba7abe57e silence compiler warnings 2020-07-16 21:14:31 -04:00
fb7923df06 dead code removal 2020-07-16 21:14:22 -04:00
2be20f424f simplify 2020-07-16 21:13:47 -04:00
78ddce5de1 Replace macro with std::to_string
Following the C++ Core Guidelines, Macros must go.
2020-07-16 20:13:40 -05:00
08dd79b1ce Clean up the code 2020-07-16 20:09:17 -05:00
dbbc60b4b8 Clean up the code 2020-07-16 20:04:55 -05:00
dff117fe53 Clean up the code 2020-07-16 20:02:26 -05:00
f163477d3a Clean up the code 2020-07-16 20:00:09 -05:00
54b47212a1 Clean up the code & replace tabs with white spaces 2020-07-16 19:56:22 -05:00
81f8590df1 Clean up the code 2020-07-16 19:49:22 -05:00
96615ea97e Clean up the code 2020-07-16 19:47:31 -05:00
91f97fa74c Remove the previously created KIM log file. 2020-07-16 19:23:51 -05:00
585ed5e1dc Merge pull request #2228 from athomps/compute-mliap
Compute mliap updates
2020-07-16 20:20:45 -04:00
882210613e Fix the write_log_cite interface.
Fix the interface by correcting the data type. The `model_name`
variable is a `char *` and not a `string`.
2020-07-16 19:20:30 -05:00
e98056c0e8 whitespace fixes 2020-07-16 19:03:30 -04:00
31cfc99ad9 add missing empty line 2020-07-16 18:37:16 -04:00
52715cc804 Merge branch 'master' into compute-mliap 2020-07-16 18:35:49 -04:00
ad02d7a5e0 Merge pull request #2219 from lammps/write-bonus-data
Enable write_data for atom styles with bonus data. Add tester code for that and many related cleanups and bugfixes.
2020-07-16 18:21:15 -04:00
34fdfb6b81 allow fix nvt/body npt/body and nph/body to be used for groups other than "all" 2020-07-16 17:56:56 -04:00
92f194ac93 make sure output buffer is initialized 2020-07-16 17:32:17 -04:00
f344629a29 simplify 2020-07-16 17:31:54 -04:00
209d3ff3ff fix typo 2020-07-16 17:31:46 -04:00
35b030015d Merge branch 'master' into write-bonus-data 2020-07-16 12:15:59 -04:00
9a13ad5230 Merge pull request #2206 from ohenrich/mc-fix-bond-create-angle
New fix_bond_create_angle class
2020-07-16 11:54:04 -04:00
ee10b200e0 Merge branch 'master' into write-bonus-data 2020-07-15 22:10:38 -04:00
25a836b729 reformat and rephrase text about availability of fix bond/create/angle only keyword 2020-07-15 21:32:22 -04:00
52b30b11ec add fix bond/create/angle to list in Fix command page 2020-07-15 21:31:22 -04:00
d7ef1b007d Merge branch 'master' into mc-fix-bond-create-angle 2020-07-15 21:21:35 -04:00
29e2c82d71 fix broken line wrap. 2020-07-15 21:00:43 -04:00
4dc61f7f2a make frenkel book anchors globally unique 2020-07-15 20:56:50 -04:00
300beb819b change from DOS/Windows CR/LF to LF 2020-07-15 20:54:58 -04:00
3287f1cddc fully integrate fix widom into manual. fix some style issues and reindent 2020-07-15 20:54:17 -04:00
94464f5390 Merge branch 'master' into widom 2020-07-15 20:46:39 -04:00
581d47a10a move fix widom from USER-MISC to MC package 2020-07-15 20:46:31 -04:00
438346a936 Merge pull request #2237 from yafshar/memory
Fix the system-dependent function call to `malloc_usable_size`.
2020-07-15 20:42:49 -04:00
dff2e93e2a Merge pull request #2236 from stanmoore1/kk_qeq_nevery
Fix issues in Kokkos fix qeq/reax
2020-07-15 20:41:00 -04:00
508a38a7fa Fix the system-dependent function call to malloc_usable_size.
Fix the system-dependent function call to get the size of the
block of memory allocated from the heap.
2020-07-15 17:49:49 -05:00
71344aaa28 Merge branch 'master' of https://github.com/lammps/lammps into kk_qeq_nevery 2020-07-15 16:18:56 -06:00
181b7cf34f Merge branch 'master' into write-bonus-data 2020-07-15 18:14:49 -04:00
0105d1caa5 Merge pull request #2212 from akohlmey/compute-chunk-scalar
Get number of chunks from compute chunk/atom
2020-07-15 18:13:48 -04:00
1021f5753b Merge pull request #2218 from lammps/reset-molecules
new reset_mol_ids command
2020-07-15 18:09:02 -04:00
dee38c26b3 Changed paragraph as per request 2020-07-15 22:51:51 +01:00
a392f212ee Fix issues in Kokkos fix qeq/reax 2020-07-15 15:49:26 -06:00
73a076daf3 don't set CMAKE_TUNE_FLAGS to anything by default 2020-07-15 16:19:48 -04:00
8949b2f165 add recently added names to false positives list 2020-07-15 15:31:12 -04:00
bf37e6aae1 Merge branch 'master' into write-bonus-data 2020-07-15 15:20:34 -04:00
7a312ca8d8 Merge pull request #2231 from stanmoore1/reax_hybrid
Fix issue with Kokkos ReaxFF and pair hybrid
2020-07-15 14:35:35 -04:00
28ee835103 Update fix_widom.rst 2020-07-15 20:35:15 +02:00
1a738f80e2 Update false_positives.txt 2020-07-15 20:14:17 +02:00
4cbe095444 Merge pull request #2234 from akohlmey/collected-small-fixes
Collected small fixes and unittest updates
2020-07-15 14:13:21 -04:00
41a7557cc9 first attempt of a documentation file 2020-07-15 18:53:04 +02:00
74aa1d482a Add missing sync 2020-07-15 10:48:39 -06:00
b37b45c817 use fmtlib to remove BIGINT_FORMAT 2020-07-15 11:55:08 -04:00
aa82608142 print warning for unknown/unsupported CUDA versions 2020-07-15 11:28:33 -04:00
a082895b90 update CMake script for GPU package to include handling of Arch 8.0 and CUDA 11 2020-07-15 11:08:06 -04:00
8108063f47 small bug fix for gather() 2020-07-15 12:21:03 +02:00
6c5d928358 small bug fix for gather() 2020-07-15 11:45:23 +02:00
2580ca78f4 guard better against 32-bit overflows for reax/c lists 2020-07-15 00:13:33 -04:00
e3818f031b don't use error class if pointer variable has not been initialized 2020-07-15 00:12:31 -04:00
2fb0f95324 check against BODY package for body styles 2020-07-14 18:41:52 -04:00
ad818717cc complete tester module for atom style body/nparticle 2020-07-14 18:36:50 -04:00
a7a63ee3fb Merge branch 'write-bonus-data' of github.com:lammps/lammps into write-bonus-data 2020-07-14 16:48:01 -04:00
d37bb0fd6f update intel compiler requirements and document alignment issues 2020-07-14 16:24:17 -04:00
449d7be8f8 updated rules for rounded body particles 2020-07-14 13:25:17 -06:00
1ddd8aa97c Merge branch 'master' into collected-small-fixes 2020-07-14 14:00:24 -04:00
d3392dba45 update tester some more 2020-07-14 13:59:55 -04:00
fd2b5b1cd8 switch completed section from EXPECT to ASSERT 2020-07-14 12:45:54 -04:00
bc3860b462 must advance buffer while package bonus items, but only when a buffer is given 2020-07-14 12:45:22 -04:00
b33974cd19 add code to check for duplicate atom IDs in Bodies section 2020-07-14 12:44:50 -04:00
be440c7125 revert incorrect zeroing of non-existing inertia array elements 2020-07-14 12:44:24 -04:00
dcbdc7452b Don't need virtual keyword 2020-07-14 09:57:04 -06:00
d6e6b840e9 update body/nparticle tester 2020-07-14 11:06:06 -04:00
548629958e zero all six moments of inertia if small. 2020-07-14 11:05:44 -04:00
001dcb6bb1 Fix issue with Kokkos ReaxFF and pair hybrid 2020-07-14 09:02:57 -06:00
9068d17afc Merge pull request #2229 from ellio167/pair_kim_before_box
Update pair_kim.cpp so settings() may come before box is defined
2020-07-14 10:24:05 -04:00
113825f8fc silence compiler warning 2020-07-14 08:12:51 -04:00
20824203ab Merge branch 'write-bonus-data' of github.com:lammps/lammps into write-bonus-data 2020-07-14 08:11:29 -04:00
18928c6602 start writing tester for body/nparticle 2020-07-14 08:11:18 -04:00
4b9c2ab1f1 start writing tester for body/nparticle 2020-07-14 07:21:25 -04:00
a88237df99 source code for fix widom 2020-07-14 13:17:20 +02:00
ea1d447703 fix bug in tester for atom style tri 2020-07-13 21:49:18 -04:00
5a73b1de98 fix typo, reformat paragraph 2020-07-13 21:48:15 -04:00
e5d532c2c1 simplify and make more readable using utils:: functions 2020-07-13 18:59:21 -04:00
40e3fcd750 tweak output format 2020-07-13 18:58:43 -04:00
46675361a6 remove unused class members 2020-07-13 18:58:35 -04:00
315c829bd2 tweak box output format to include decimal point 2020-07-13 15:59:47 -04:00
c589dd5894 consistent initialization and setting of _nthreads and comm->nthreads 2020-07-13 15:59:29 -04:00
6c28adcf3b make sure _need_tag is initialized 2020-07-13 15:59:05 -04:00
da66516dec use references when creating styles 2020-07-13 09:40:58 -04:00
3847a3000c paranoia 2020-07-12 21:40:30 -04:00
f8ad39e7d1 simplify fix generation for package commands 2020-07-12 21:40:22 -04:00
1c5c2d8f22 Merge branch 'master' into reset-molecules 2020-07-12 20:36:34 -04:00
db289ba0b3 update all force style reference results after refactoring of test codes 2020-07-12 20:36:10 -04:00
24b5cd7dec rename test programs to be consistent with the other programs in the unittest tree 2020-07-12 19:22:14 -04:00
9cbb2e9df5 refactor force-style tester programs to get rid of stringstream and local buffers
this uses now fmtlib and also outputs forces sorted by atom id
similarly, for all tests it is make certain that the local tag variable is updated
2020-07-12 19:17:51 -04:00
38011f6ac4 add test for pair style kim 2020-07-12 17:21:35 -04:00
b65f6b3b61 Merge branch 'pair_kim_before_box' of github.com:ellio167/lammps into collected-small-fixes 2020-07-12 16:36:00 -04:00
ed1bdb8ed4 update output formatting 2020-07-12 16:33:47 -04:00
00413ae956 add test for atom style tri 2020-07-12 16:32:59 -04:00
8f95b4a5d9 add tests for deleted bonds and angles to bond/angle tests suites 2020-07-12 15:48:21 -04:00
60f078a8f9 fix buffer size and format bugs in atom_vec_tri.cpp 2020-07-12 15:46:56 -04:00
66274e7863 Update pair_kim.cpp so settings() may come before box is defined
Addresses #2215
2020-07-12 14:23:47 -05:00
116c2a56ca Removed old files 2020-07-11 21:00:41 -06:00
031cae8e49 Fixed spelling errors 2020-07-11 20:31:38 -06:00
38d9c0bedf tweak output formatting 2020-07-11 21:44:31 -04:00
9e1d560fda refactor using fmtlib and utils:: 2020-07-11 21:44:13 -04:00
095c6a9850 Finished cleaning up and testing. MLIAPData class is now fully integrated with ComputeMLIAP and PairMLIAP 2020-07-11 19:01:16 -06:00
5f14d5c87f must not override flag for negative angles and bonds 2020-07-11 18:36:19 -04:00
25e54bd68e Merge branch 'master' into write-bonus-data 2020-07-11 18:31:44 -04:00
284b1618f9 Merge pull request #2227 from akohlmey/collected-small-fixes
Collected small updates and bugfixes
2020-07-11 18:30:27 -04:00
83291fdd67 may not use pair_style kim before box is defined
NOTE: this will not happen when the kim_init and kim_interactions commands are used.
2020-07-11 18:07:25 -04:00
f969d9ab72 add space for terminating NULL byte in MPIIO dump styles.
closes #2225
2020-07-11 13:19:08 -04:00
f307d7f5f9 count total number of styles including aliases, suffixes, and undocumented 2020-07-11 13:18:44 -04:00
cd0b034cab adjust regex for removed styles to correctly handle command styles 2020-07-11 13:18:33 -04:00
b3060bc48e add suppressions for googletest 2020-07-11 13:18:14 -04:00
e42342ff51 zero out additionally allocated struct Param storage 2020-07-11 13:18:04 -04:00
8359a4384a more OpenMPI suppressions 2020-07-11 13:17:51 -04:00
c6dc8b5414 fix initialition issue 2020-07-11 13:17:39 -04:00
9fe0b1cb5e ewald_order needs to be saved in restart 2020-07-11 13:17:24 -04:00
4778887243 fix memory leak in pair style sw/intel for good 2020-07-11 13:17:10 -04:00
510d5277c1 fix typo 2020-07-11 13:16:58 -04:00
b49f0a6a09 avoid memory leak in pair style sw/intel 2020-07-11 13:16:36 -04:00
4b2c1f5edd some more OpenMPI suppressions 2020-07-11 13:16:25 -04:00
d4da99562f use fmtlib for writing data file coefficients. use mixed coefficients for PairIJCoeffs 2020-07-11 13:16:01 -04:00
26e21852ff several fixes to address issues detected by valgrind
- make sure g_ewald_6 is not accessed uninitialized
- fix memory leak
- do not override g_ewald_6 if it is explicitly set
2020-07-11 13:15:37 -04:00
8eb7791342 avoid googletest stalling on exit tests when using OpenMPI 2020-07-11 13:15:16 -04:00
207232c1a3 avoid illegal free() 2020-07-11 13:12:50 -04:00
ed452c3624 synchronize exception based and non-exception based code paths 2020-07-11 13:12:34 -04:00
e6a8f3c8c0 use parenthesis to correct precedence 2020-07-11 13:10:37 -04:00
17d59a4342 small tweak 2020-07-11 13:06:58 -04:00
6f775f6592 fix typo 2020-07-11 13:06:43 -04:00
d0c544224f avoid exception when having a command fail due to an empty string 2020-07-11 13:06:31 -04:00
40e59b27a7 add prototypes for exception handling functions 2020-07-11 13:06:05 -04:00
f8321d77d8 add missing symlink 2020-07-11 13:05:41 -04:00
d32000239b refactor tester 2020-07-11 13:05:03 -04:00
e2e4305fe9 Merge pull request #2226 from akohlmey/ubuntu-stable
Update documentation to recommend lammps-stable packages for Ubuntu
2020-07-11 13:02:00 -04:00
8396ade280 update information about the ubuntu binaries to recommend the new stable packages 2020-07-10 22:50:47 -04:00
6c6c47ce9c Converted pair mliap to use mliap class 2020-07-10 17:19:02 -06:00
6c08503dff Created MLIAP class for data, passes all tests 2020-07-10 16:25:28 -06:00
64dad33c12 whitespace fixes 2020-07-10 18:22:11 -04:00
a5a1706f82 Merge branch 'write-bonus-data' of github.com:lammps/lammps into write-bonus-data 2020-07-10 16:17:22 -06:00
92d225a68c write_data support for body style rounded/polyhedron 2020-07-10 16:17:07 -06:00
07e05300c9 Created MLIAP class for data 2020-07-10 16:08:19 -06:00
f360cca1a3 Created MLIAP class for data 2020-07-10 16:04:04 -06:00
a28db101cc add checks for atom style bond with newton off. add basic test for atom style angle 2020-07-10 17:44:05 -04:00
0825e71a5a whitespace fixes 2020-07-10 13:21:22 -04:00
9b3ffa5487 enables body style rounded/polygon to write to data files 2020-07-10 10:42:36 -06:00
a402de41b7 finalize atom style tester changes 2020-07-10 10:47:30 -04:00
772d75a63a update tester for renaming reset_ids to reset_atom_ids 2020-07-10 10:29:55 -04:00
df63d4147d Merge branch 'reset-molecules' into write-bonus-data 2020-07-10 10:25:08 -04:00
8102045fdb add initial implementation for atom style bond tester 2020-07-10 10:24:54 -04:00
9be30dcf61 add space for terminating NULL byte in MPIIO dump styles.
closes #2225
2020-07-10 09:22:44 -04:00
0c89b517a5 avoid segfaults if fewer than 10 atoms or bounding box length is zero 2020-07-10 08:25:37 -04:00
ab683a03ad start tester for atom style hybrid full ellipsoid 2020-07-10 00:12:57 -04:00
f0af7c686a more death tests to reach 100% coverage 2020-07-09 21:39:55 -04:00
e38f970676 Extended to handle gradgradflag 0/1 options 2020-07-09 19:23:57 -06:00
0d570f5577 Removed a lot of LAMMPS dependence from Descriptor and Model classes 2020-07-09 19:22:41 -06:00
d15264a668 update and expand tester code for reset_mol_ids changes 2020-07-09 21:18:58 -04:00
bade009b6c remove debug code 2020-07-09 20:58:39 -04:00
49780480a8 count total number of styles including aliases, suffixes, and undocumented 2020-07-09 20:52:57 -04:00
9ec77585ea make compress yes the default 2020-07-09 20:46:45 -04:00
9c97ca11fe adjust regex for removed styles to correctly handle command styles 2020-07-09 20:46:31 -04:00
e0e24799c2 simplify formulations a little bit. update example command lines 2020-07-09 19:52:49 -04:00
4a1acffde9 whitespace fixes 2020-07-09 19:36:58 -04:00
9e83279887 minor adjustments to new reset_mol_ids command 2020-07-09 15:40:24 -06:00
f71513f483 update for atom style ellipsoid tester 2020-07-09 11:56:07 -04:00
cc9df9a76d add test module for atom style line 2020-07-09 11:55:52 -04:00
71f13cee9d add missing aspherical particle info to restart files 2020-07-09 11:21:59 -04:00
d7efa8d523 don't do zero byte allocations 2020-07-09 09:26:25 -04:00
0679c01c4b add suppressions for googletest 2020-07-09 09:26:07 -04:00
2b1ca89b57 zero out additionally allocated struct Param storage 2020-07-09 00:31:08 -04:00
ea5015c630 more OpenMPI suppressions 2020-07-09 00:05:18 -04:00
d0cfb0ccae fix initialition issue 2020-07-08 23:49:18 -04:00
e18a11d6bd ewald_order needs to be saved in restart 2020-07-08 23:48:58 -04:00
bebd10712a fix memory leak in pair style sw/intel for good 2020-07-08 22:04:55 -04:00
909bc5a801 fix typo 2020-07-08 21:35:54 -04:00
7ee73e44ad will need ellipsoid field in restart file 2020-07-08 21:18:09 -04:00
4da8ec39de complete testing ellipsoids short of having restart support. 2020-07-08 21:13:28 -04:00
ecc5d3e353 must copy/multiply the numbers of ellipsoids,lines,tris,bodies 2020-07-08 21:12:29 -04:00
7071cff481 avoid memory leak in pair style sw/intel 2020-07-08 20:11:17 -04:00
240c33b503 some more OpenMPI suppressions 2020-07-08 20:10:52 -04:00
f59e391713 avoid leaking empty allocations 2020-07-08 20:10:40 -04:00
2016333cf0 use fmtlib for writing data file coefficients. use mixed coefficients for PairIJCoeffs 2020-07-08 20:09:23 -04:00
7591343702 several fixes to address issues detected by valgrind
- make sure g_ewald_6 is not accessed uninitialized
- fix memory leak
- do not override g_ewald_6 if it is explicitly set
2020-07-08 20:07:54 -04:00
5918d9e6c7 avoid googletest stalling on exit tests when using OpenMPI 2020-07-08 16:31:36 -04:00
bda245339e avoid illegal free() 2020-07-08 16:29:40 -04:00
6cd2c8d117 synchronize exception based and non-exception based code paths 2020-07-08 10:18:01 -04:00
d6665aba99 refactor tester 2020-07-08 10:08:00 -04:00
a98d21f002 Added gradgradflag option to compute mliap 2020-07-07 20:43:40 -06:00
a7369e76cd Added gradgradflag option to compute mliap 2020-07-07 20:42:03 -06:00
06a199f7d0 Added gradgradflag option to compute mliap 2020-07-07 20:28:18 -06:00
a43428fd1b use auto to simplify 2020-07-07 22:19:07 -04:00
cd739c2782 silence compiler warnings 2020-07-07 22:18:52 -04:00
1898fae3f6 simplify 2020-07-07 22:18:37 -04:00
5cef86d7b7 add missing MPI call 2020-07-07 21:37:33 -04:00
8fbc8a7148 make more use of fmtlib and replace fprintf with fputs where possible 2020-07-07 21:34:34 -04:00
c0f1472385 use parenthesis to correct precedence 2020-07-07 21:21:32 -04:00
6e3e13f2a8 remove unused variable 2020-07-07 20:53:50 -04:00
9a268da7de remove unneeded typecasts and use fmt::print() instead of fprintf() 2020-07-07 20:53:42 -04:00
4c67822e6b remove unneeded typecasts 2020-07-07 20:27:01 -04:00
e459ee8a58 whitespace fixes 2020-07-07 20:25:59 -04:00
61e3b41908 Merge pull request #2220 from lammps/doc-radians
clarify units for energy terms with angles
2020-07-07 20:13:56 -04:00
6239a579e8 clarify units for energy terms with angles 2020-07-07 15:19:17 -06:00
416467a154 update reset_mol_ids tests for the latest changes 2020-07-07 17:14:54 -04:00
fd95fc98c5 add support for auto offset and singlezero option 2020-07-07 17:14:29 -04:00
d3853af4be add singlezero keyword to compute fragment/atom to give all single non-bonded atoms an ID of 0 2020-07-07 17:13:43 -04:00
12f62583f9 whitespace cleanup 2020-07-07 13:56:50 -04:00
5c59f6af87 Merge branch 'reset-molecules' of github.com:lammps/lammps into reset-molecules 2020-07-07 13:48:25 -04:00
88fc9360c0 resolve conflicts 2020-07-07 11:46:05 -06:00
37d56a6bf6 small cleanup in "deprecated" styles 2020-07-07 13:40:15 -04:00
955bff7c4e add body support, change bonus buf to 1d so can be variable length 2020-07-07 11:34:30 -06:00
94e9b3bc82 rename reset_ids command to reset_atom_ids 2020-07-07 13:32:00 -04:00
7e140399db add (initial) testing for ellipsoid atom style 2020-07-07 12:36:17 -04:00
f16c6f40a7 shape is converted from diameter to radius, so we have to scale back on writing 2020-07-07 12:24:04 -04:00
94d98b6aea no typecasts needed when outputting ubuf integers with fmtlib auto format 2020-07-07 11:40:01 -04:00
bdac1ae3e7 add missing return statements 2020-07-07 11:14:52 -04:00
0944eda391 final details for offset keyword added to reset_mol_ids 2020-07-07 09:07:48 -06:00
7870a89133 added note to doc page 2020-07-07 08:48:24 -06:00
d6ebf3cd46 Merge branch 'reset-molecules' of github.com:lammps/lammps into reset-molecules 2020-07-07 08:38:03 -06:00
fcc6ed3a58 add offset option to reset_mol_ids command 2020-07-07 08:37:48 -06:00
169206790a small tweak 2020-07-07 10:29:43 -04:00
de7f02e48b fix typo 2020-07-07 09:54:16 -04:00
bb9ab025c1 avoid exception when having a command fail due to an empty string 2020-07-07 09:51:39 -04:00
0b1443ed23 add prototypes for exception handling functions 2020-07-07 09:51:02 -04:00
53d20c9ebc add missing symlink 2020-07-06 21:44:39 -04:00
960addcc2c simplify code string/fmtlib code some more 2020-07-06 21:26:49 -04:00
2351f99bef add (incomplete) tester for reset_mol_ids (with a little use of reset_ids, too) 2020-07-06 21:26:11 -04:00
89f0116eab fix communication data conversion bug corrupting bond list 2020-07-06 21:12:55 -04:00
7918919d30 enable write_data for atom styles with bonus data 2020-07-06 17:30:45 -06:00
91a8df1903 Modified files according to request 2020-07-06 20:20:28 +01:00
d37e943e8d refactor tester 2020-07-06 14:12:50 -04:00
836570ec26 update docs 2020-07-06 14:12:37 -04:00
58cd6a160c Merge branch 'master' into reset-molecules 2020-07-06 14:07:48 -04:00
6bf329098e Merge pull request #2216 from ndtrung81/tersoff-gpu
Cleanup and bugfixes for some 3-body pair styles in the GPU package
2020-07-06 13:35:12 -04:00
a1011b606e new reset_mol_ids command 2020-07-06 10:50:34 -06:00
9e96b71703 Merge pull request #2214 from akohlmey/kspace-tests
Add unit tests for some kspace styles and more pair styles
2020-07-06 12:48:09 -04:00
2977a8aa15 Merge pull request #2211 from athomps/compute-mliap
Add compute style mliap to MLIAP package
2020-07-06 12:47:41 -04:00
d1b5b0a168 Merge pull request #2210 from ohenrich/user-cgdna
Update of example input and log files
2020-07-06 12:47:09 -04:00
d768069cfe Merge pull request #2205 from akohlmey/collected-small-changes
Collected small changes for the next patch release
2020-07-06 12:46:16 -04:00
5d0800beef Merge pull request #2204 from rbberger/doc-changes
Documentation Changes: split pair_lj.rst
2020-07-06 12:19:06 -04:00
47d77530e2 updated as requested by @sjplimp 2020-07-06 11:45:16 -04:00
022252dde0 add a paragraph to the output howto explaining how ambiguity is resolved 2020-07-06 11:13:23 -04:00
9ec72d1406 add tests for unknown commands, quit, and reset_timestep 2020-07-06 10:26:04 -04:00
f1abfe2411 avoid segfault when calling the log command without arguments 2020-07-06 10:25:37 -04:00
461633e6f6 add unit tests for the suffix, thermo, and timestep commands 2020-07-06 00:11:13 -04:00
83d58ba57d we may not use "suffix on" before a suffix is defined. switching back to a non-hybrid suffix must set suffix2 to NULL 2020-07-06 00:10:43 -04:00
1df59c4b95 change lammps2pdb.pl to only ignore the first line of a data file. whitespace fixes 2020-07-05 23:36:00 -04:00
fe12ea2734 simplify compute creation 2020-07-05 22:46:48 -04:00
134a2e8dd6 use fmtlib and utils::logmesg() in fix msst 2020-07-05 22:37:59 -04:00
759797733d Generalized the variable and function names 2020-07-05 18:58:32 -06:00
a0157f8063 use fmtlib consistently when writing data files 2020-07-05 17:16:58 -04:00
443cc4445e have compute property/atom output shape parameters as diameters not radii consistent with the manual 2020-07-05 16:44:44 -04:00
e2a07acb71 add test for units command 2020-07-05 13:20:23 -04:00
ca24cd5006 simplify tests for failures with a varyadic macro 2020-07-05 12:48:52 -04:00
ebfe7f68af More cleanup 2020-07-05 00:20:28 -05:00
c488e6208d Similar bug fixes to vashishta/gpu 2020-07-04 23:52:32 -05:00
69052fa337 add test for lj/mdf 2020-07-05 00:28:02 -04:00
4dee43cc2d adjust accepted relative error for compiler optimization, make pppm/disp inputs 3x faster 2020-07-05 00:10:47 -04:00
84ded03e24 add tests for some core-shell package pair styles 2020-07-04 23:43:15 -04:00
8f6e454522 single functions for CORESHELL styles are not implemented 2020-07-04 23:40:28 -04:00
585466929f add tests for pppm/disp/tip4p and lj/long/tip4p/long 2020-07-04 23:21:57 -04:00
a314b40aa0 skip testing broken pppm/disp/intel style 2020-07-04 23:07:50 -04:00
6e580bbdb5 add tests for long-range dispersion styles 2020-07-04 22:55:59 -04:00
3f068f7671 partial reformat, fix bug in single function 2020-07-04 22:55:38 -04:00
adacc7f2a4 Similar bug fixes for tersoff/mod/gpu and tersoff/zbl/gpu; some cleanup for sw/gpu 2020-07-04 19:08:55 -05:00
11099bb3f7 silence compiler warnings 2020-07-04 19:23:06 -04:00
2eec6c7f65 exclude MSM tests when compiling with single precision 2020-07-04 18:26:00 -04:00
0461599d0a reduce base precision as required when running tests with pppm and FFT_SINGLE 2020-07-04 18:13:55 -04:00
37b2da637d fix KOKKOS bug for FFT_KISSFFT and FFT_SINGLE 2020-07-04 17:39:07 -04:00
df40ffddf3 add some more tests for pair styles 2020-07-04 17:24:28 -04:00
ffe8e1c0e9 add tests for kspace styles using the pair style tester tool 2020-07-04 17:22:27 -04:00
fcec94579c skip tests for single and extract when testing kspace styles (and pair styles are disabled) 2020-07-04 17:21:51 -04:00
75977367a1 fix memory leak 2020-07-04 17:21:19 -04:00
34cfe07f97 fix energy computation bug in pair style nm/cut/omp 2020-07-04 17:20:47 -04:00
37b2778d4b Remove debug output 2020-07-04 13:34:35 -04:00
cfaa3be898 reduce screen output precision 2020-07-04 08:26:00 -04:00
6f8b8c2f71 more application of fmtlib and utils::logmesg() 2020-07-04 08:25:24 -04:00
9de3077b19 change misleading source code formatting 2020-07-04 05:12:35 -04:00
de815ed6ba must not pass NULL pointer now that we use const std::string references 2020-07-04 04:48:16 -04:00
fac3c70d02 update style 2020-07-04 04:47:38 -04:00
9f733fb305 Removed unused variables 2020-07-04 00:23:34 -05:00
6de020805f Fixed a bug with tersoff/gpu with building the short neighbor list 2020-07-03 23:55:26 -05:00
c37b5e50b1 flag error when trying to compute an average of an empty vector 2020-07-03 22:35:53 -04:00
53415592d2 compute gyration/shape/chunk did not update the number of local array rows 2020-07-03 22:20:28 -04:00
14321d1fa0 add option to compute chunk/atom to access the number of chunks as a global scalar 2020-07-03 22:19:44 -04:00
c3f8644613 Merge branch 'master' into compute-mliap 2020-07-03 14:26:38 -06:00
7fe2df423f Added a package README 2020-07-03 14:22:43 -06:00
8dae5d5fc7 Added special_bonds command to input files 2020-07-03 21:03:24 +01:00
feec9673d8 Fixed html and spelling warnings 2020-07-03 14:03:00 -06:00
9d0aee7426 Added doc page for compute mliap and updated examples 2020-07-03 13:43:51 -06:00
def0cf8a7b Corrected typo 2020-07-03 17:54:31 +01:00
59aa8a5e12 Modified files according to PR 2020-07-03 17:48:49 +01:00
fadfb1b482 Allow changing CMAKE_CXX_EXTENSIONS option to resolve #2079 2020-07-03 12:41:49 -04:00
543371374a typo fix 2020-07-03 11:42:31 -04:00
ab785e8a89 Add Coulomb sections in TIP4P page 2020-07-03 11:37:11 -04:00
52b92e743e Add missing reference 2020-07-03 11:33:51 -04:00
1815ab610e remove hard dependency and configure spelling extension only if it can load enchant properly 2020-07-03 11:26:43 -04:00
735f9ad592 address logic error with check for KOKKOS version of hybrid styles 2020-07-03 09:01:59 -04:00
f9dc2b7ca8 Added fix_bond_create_angle files 2020-07-03 13:42:16 +01:00
089c4ed5d9 Added fix/bond/create/angle class and docu 2020-07-03 09:21:00 +01:00
17e419e251 Merge branch 'master' into user-cgdna 2020-07-03 08:19:48 +01:00
2c64809cd8 enlarge buffer for guessed file name 2020-07-02 23:35:25 -04:00
7e16a17f31 use consistently the name of the (unaccelerated) pair style in the potential file reader error messages 2020-07-02 23:23:25 -04:00
0b298c7193 add tests for supported and unsupported unit conversion when opening potentials 2020-07-02 23:07:01 -04:00
d331e75a14 tweak test name 2020-07-02 22:39:08 -04:00
28bbb6afbc Doc page for compute mliap 2020-07-02 17:09:10 -06:00
07afe1c66d Added basic element map 2020-07-02 16:14:15 -06:00
40088f558c Revert "Added fix bond/create/angle code and docu"
This reverts commit 16eab647d4.
2020-07-02 23:11:50 +01:00
db43aadf09 Got compute working for quadratic model 2020-07-02 15:05:14 -06:00
cae9788d42 Changed the compute examples to expose effect of different list orderings 2020-07-02 14:43:48 -06:00
307f54611f use doubles to avoid multiple integer overflows in slope() function 2020-07-02 16:43:00 -04:00
f598ae7ebf update/add error message for using hybrid pair styles with KOKKOS 2020-07-02 16:40:47 -04:00
bf8043fdb8 Correctly reproduced examples/in.snap.compute, not yet for quadratic case 2020-07-02 14:34:11 -06:00
bc36511767 Correctly reproduced examples/in.snap.compute, not yet for quadratic case 2020-07-02 14:32:47 -06:00
3a014a5430 add unit tests for some file operations 2020-07-02 14:50:56 -04:00
4660c043d8 fix typo 2020-07-02 13:31:02 -04:00
a524eaf424 add a few more tests 2020-07-02 10:27:35 -04:00
8929ba42cd enable exceptions by default when testing is enabled, so we can test for failures 2020-07-02 09:50:15 -04:00
c3fe0e77c2 expose guesspath function and add unit test 2020-07-02 09:13:57 -04:00
2a4e51fa38 Fixed a few problems, still not quite matching compute snap 2020-07-01 17:11:02 -06:00
84ee52a6e5 add false positive 2020-07-01 19:09:11 -04:00
7350dd61d5 Tweaked input to match snap/in.snap.compute 2020-07-01 17:06:55 -06:00
70d3d56944 add minimal doc page for compute smd/ulsph/effm 2020-07-01 18:44:24 -04:00
ed56878271 remove specific dump styles from overview page 2020-07-01 18:43:53 -04:00
791bb9f6d5 Update mentions of soft variants 2020-07-01 17:14:30 -04:00
c57564252c Added descriptor file for compute mliap 2020-07-01 15:07:37 -06:00
aee3d9f2cd Generated working example, not quite correct 2020-07-01 15:03:45 -06:00
7671d12ef8 added some more detail to the bond special doc page 2020-07-01 14:55:48 -06:00
0a18c52414 Split pair_lj.rst into three files 2020-07-01 14:27:06 -04:00
c7a31aea97 force environment variable 2020-07-01 09:39:47 -04:00
8d12581f16 silence compiler warnings 2020-07-01 09:39:37 -04:00
558d2eb84f Merge pull request #2203 from akohlmey/collected-small-changes
Various small fixes and cleanups. Bugfixes for atom style hybrid
2020-07-01 06:24:28 -04:00
0a9dd81288 silence compiler warnings 2020-07-01 05:53:46 -04:00
0363fe9b17 revive (some) dead code and add missing force computation/addition 2020-07-01 05:42:53 -04:00
9c7005a91c It compiles, but not yet working 2020-06-30 19:14:01 -06:00
971ca4fe44 add missing lines for atom_vec comm bugfix 2020-06-30 19:20:34 -04:00
503a1f2246 still more dead code 2020-06-30 18:44:00 -04:00
8fd46095ae remove more dead code 2020-06-30 18:41:09 -04:00
9279431593 bugfix for hybrid atom styles from @sjplimp fixing bug reported by @ohenrich 2020-06-30 18:34:46 -04:00
4492d61625 dead code removal 2020-06-30 18:14:47 -04:00
778d431d4c reduce compiler warnings about unused parameters 2020-06-30 18:08:25 -04:00
10dcb08760 remove unused variable 2020-06-30 18:08:06 -04:00
6af407d01e remove trailing whitespace 2020-06-30 17:48:18 -04:00
1035dcd4cc fix possible bug in compute sna 2020-06-30 16:33:57 -04:00
19ee89fa10 use a hard error instead of changing settings without updating the underlying data structures controlled by it 2020-06-30 16:33:32 -04:00
ad38b5d306 whitespace fixes 2020-06-30 16:32:41 -04:00
edfb4076ff remove dead code and unused variables 2020-06-30 16:32:30 -04:00
eafcc06670 secs -> seconds 2020-06-30 13:56:35 -04:00
d4c7455197 reduce output precision 2020-06-30 13:49:50 -04:00
b34b58c713 must not delete atom substyles twice 2020-06-30 13:27:27 -04:00
cccd04f46b Merge branch 'collected-small-changes' of github.com:akohlmey/lammps into collected-small-changes 2020-06-30 12:36:06 -04:00
7488f22981 reduce excess precision in some output data 2020-06-30 10:11:52 -04:00
0f094c2501 Add PyYAML to Fedora 32 container 2020-06-30 10:05:14 -04:00
af2e1bf7c6 Update Ubuntu 18.04 GPU container 2020-06-30 09:38:28 -04:00
2a2219d049 reduce excess precision in some output data 2020-06-30 00:37:32 -04:00
911b95fdc9 std::string.find_last_of() wants a string not a character as argument 2020-06-29 23:26:01 -04:00
f958cacbb4 temporarily add atom style full to list of dependencies for Pair::single() test 2020-06-29 19:36:06 -04:00
ce4ca0e640 tweak epsilon to make test pass with optimization 2020-06-29 19:35:02 -04:00
a73f1d4f03 Merge pull request #2200 from akohlmey/next_lammps_version
Update version strings for next patch release
2020-06-29 14:24:02 -04:00
88a574ff8c Merge pull request #2201 from akohlmey/more-fmtlib-use
Make more use of fmtlib and utils::logmesg()
2020-06-29 13:45:43 -04:00
5c08ce0818 nb3b/harmonic parameters are in real units 2020-06-29 13:28:32 -04:00
3eda735d29 Merge branch 'master' into more-fmtlib-use 2020-06-29 13:04:22 -04:00
6ace98b64e simplifications in REPLICA 2020-06-29 12:35:20 -04:00
5263e457cb Merge pull request #2199 from akohlmey/more-internal-convenience
More application of fix/compute simplification
2020-06-29 12:33:51 -04:00
1e6e237883 avoid bogus error exit when openting potential files without units 2020-06-29 11:58:26 -04:00
e6c4036a62 Merge branch 'master' into more-internal-convenience
# Conflicts:
#	src/group.cpp
2020-06-29 11:50:43 -04:00
96d943513e more output cleanup in MISC, MLIAP, MOLECULE, and POEMS 2020-06-29 11:48:54 -04:00
d84a47707b Merge pull request #2198 from akohlmey/more-unit-convert-support
Add metal2real or real2metal unit conversion support to a few more pair styles
2020-06-29 11:19:37 -04:00
9c762b96a6 Merge pull request #2188 from stanmoore1/kk_snap_ice
Add workaround in Kokkos PairSnap for gcc compiler bug
2020-06-29 10:56:06 -04:00
f46ba32627 Merge pull request #2195 from jrgissing/bond/react-reformat
Bond/react reformat
2020-06-29 10:12:29 -04:00
6de33bc676 Merge pull request #7 from charlessievers/kk_snap_ice
remove jalloy
2020-06-29 08:04:05 -06:00
5e183ecb33 simplify in MANYBODY and MC package 2020-06-29 08:32:51 -04:00
7de4655e69 simplify output in KSPACE package 2020-06-29 08:17:27 -04:00
b1d4ca2b03 simplify class2 dihedral and improper 2020-06-29 01:09:43 -04:00
5e8a877f55 simplify pppm init output 2020-06-29 00:59:33 -04:00
385d239b9e small tweak for passing r-RESPA tests with coulomb table 2020-06-29 00:59:01 -04:00
ab04416bfd fix typo 2020-06-29 00:10:34 -04:00
3a0ae83c96 apply simplifications to standard packages 2020-06-29 00:06:28 -04:00
a1c0b78a3a final set of styles in the src folder to be simplified 2020-06-28 23:25:37 -04:00
5585e3187f step version strings for next patch release 2020-06-28 19:30:24 -04:00
f94eeece72 Update group.h 2020-06-28 19:22:45 -04:00
3cd1341e64 make more use of convenience functions for adding fixes and computes 2020-06-28 18:57:22 -04:00
df29364be8 simplify find/delete fix/compute functions in modify.cpp 2020-06-28 18:39:19 -04:00
f670464a3e use simplified group->assign 2020-06-28 18:02:35 -04:00
f0a983b465 add group::assign convenience version 2020-06-28 17:46:08 -04:00
5911ad49ba use symlink instead of copy of the potential file 2020-06-28 16:50:39 -04:00
435ac9078b add unit conversion to pair styles eim, gw, gw/zbl, and nb3b/harmonic 2020-06-28 16:49:23 -04:00
3044d83c5e Update fix_bond_react.cpp 2020-06-27 14:00:53 -06:00
9afbc71802 only check for consistent cutoff and return it when flagged as kspace compatible 2020-06-27 10:19:57 -04:00
a6cd4a935e Replace accumulated displacement by accumulated force for tangential force in styles mindlin and mindlin_rescale. Change documentation accordingly 2020-06-27 01:17:46 -05:00
b75d9b8224 bond/react: RMSD constraint docs 2020-06-26 23:43:08 -06:00
6a68715d7b bond/react:RMSD constraint 2020-06-26 23:33:40 -06:00
5be366bfae Update group.h 2020-06-26 23:15:54 -06:00
ac05bb7786 Update fix_bond_react.cpp 2020-06-26 22:48:49 -06:00
fa17ba7a8f Merge pull request #86 from lammps/master
rebase
2020-06-26 22:26:40 -06:00
62a7cd0693 more accurate dummy variable name 2020-06-26 22:15:31 -06:00
e7f147a27b bond/react:group->assign convenient version 2020-06-26 21:37:46 -06:00
7f05c578f5 add group::assign convenience version 2020-06-26 21:36:12 -06:00
77a6c7b7dc bond/react:new add_fix format 2020-06-26 20:50:30 -06:00
51174d4ad1 Merge pull request #2192 from rbberger/permission_check_update
Simplify permission check tool: git only stores executable bit
2020-06-26 19:34:17 -04:00
ec58267a71 update code owners 2020-06-26 19:16:35 -04:00
fd66f32a83 Merge pull request #2191 from akohlmey/simpler-add-fix-compute
Simplify adding fixes and computes from inside LAMMPS
2020-06-26 17:29:23 -04:00
21462ede4b Simplify tool: git only stores executable bit 2020-06-26 17:03:10 -04:00
2c815bf3bb fix formatting bug 2020-06-26 16:22:27 -04:00
91502b8bf6 more simplification 2020-06-26 16:22:19 -04:00
41d62b8b8b update temp and press compute creation in temperature and similar fixes 2020-06-26 16:02:14 -04:00
a5651acb49 must not forget to generate compute ids and store them. 2020-06-26 15:42:37 -04:00
1ea0eca2a5 add convenience functions to modify to simplify creation of fixes and computes 2020-06-26 14:49:53 -04:00
7318dd06d3 simplify 2020-06-26 14:04:38 -04:00
05f310ef35 move misplaced neighbor list print log out output call 2020-06-26 14:04:32 -04:00
66271448ae Merge pull request #2167 from Vsevak/master
Update GPU CMake and Makefile scripts for ROCm v3.5
2020-06-26 13:43:32 -04:00
f9a202288c Add missing kmod package to AMD ROCm container 2020-06-26 13:09:16 -04:00
3c19a49605 Merge pull request #2190 from akohlmey/more-fmtlib-uses
Reduce use of local print buffers, simplify output handling with std::string and fmtlib
2020-06-26 12:08:46 -04:00
40b62e11b1 add comment requested by @sjplimp 2020-06-26 11:14:40 -04:00
bdb4cc561c add update README files 2020-06-26 11:11:59 -04:00
74fc64395f output summary simplifications 2020-06-26 10:54:25 -04:00
f56563c747 simplify output handling in Finish class 2020-06-26 08:04:07 -04:00
c4855d95e7 more use of utils::logmesg() and {fmt} 2020-06-26 07:23:22 -04:00
24c3f1f752 fix logic bug triggering failures to read files without UNITS: tag 2020-06-26 07:21:10 -04:00
d4148b1b80 set real units in cmap files 2020-06-26 07:20:42 -04:00
f2a4d12f7e more output simplification with fmtlib, std::string, and utils::logmesg() 2020-06-25 23:48:17 -04:00
84ec2cc39b simplify more code with std::string and fmtlib 2020-06-25 23:13:28 -04:00
e4a3a518f7 more use of fmtlib and std::string 2020-06-25 22:50:38 -04:00
4816c5c7cc simplify 2020-06-25 21:13:22 -04:00
3c78ad0a70 make more use of std::string and fmtlib where beneficial 2020-06-25 21:13:14 -04:00
8caa3e188c remove debug code 2020-06-25 21:11:39 -04:00
d46a1254e4 remove non-ASCII characters. 2020-06-25 21:11:32 -04:00
79c0dda0d6 Merge pull request #2187 from Vsevak/tip4p_pressure_fix
Fix virial computation in GPU accelerated TIP4P
2020-06-25 20:42:48 -04:00
a02f8f8e6e remove jalloy 2020-06-25 17:26:18 -07:00
d55a061286 Merge pull request #2183 from akohlmey/pair-potential-file-unit-convert
Transparently convert supported potential files from metal to real units
2020-06-25 19:31:52 -04:00
e6b3611c2d Update ROCm container to version 3.5 2020-06-25 19:05:28 -04:00
cfa12bc1cf Merge remote-tracking branch 'origin' into compute-mliap 2020-06-25 16:33:51 -06:00
284efadf9b adjust USER-QTB examples to match more closely with LAMMPS' style. add log files. 2020-06-25 17:22:16 -04:00
d926274911 Merge branch 'qtb_example' of github.com:stanmoore1/lammps into pair-potential-file-unit-convert 2020-06-25 17:06:38 -04:00
0fc87dff1a add conversion support to eam variants for KOKKOS 2020-06-25 17:03:17 -04:00
b665ca3bd9 apply the same clamping of "p" to eam/opt that is used in eam 2020-06-25 16:44:08 -04:00
d9f07cef25 document automatic unit conversion with units and pair_coeff commands 2020-06-25 16:05:20 -04:00
c989db60a7 refactor EAM family of potentials to convert the potential data and leave compute functions alone 2020-06-25 15:48:46 -04:00
cd6de39319 whitespace 2020-06-25 15:35:25 -04:00
a519ff2909 Fix broken QTB examples 2020-06-25 13:02:02 -06:00
15b8f855b4 Add workaround in Kokkos pair_snap for gcc compiler bug 2020-06-25 12:29:24 -06:00
29b0ca8ad9 fix bug in OPT package pair style tester 2020-06-25 14:21:50 -04:00
f9be8b3aa0 add missing factor for EAM in OPT package 2020-06-25 14:21:35 -04:00
9e08a739b5 add unit conversion test files for styles with conversion in the compute function 2020-06-25 12:28:06 -04:00
4824c4608c add unit conversion checking support to Force::open_potential() 2020-06-25 12:22:29 -04:00
3c9b40a31a add transparent unit conversion for most of the EAM family of potentials 2020-06-25 11:13:52 -04:00
ec057e313f add warning message when unit conversion is enabled 2020-06-25 10:46:52 -04:00
6420ccafa2 fix bugs with not properly detecting/selecting unit conversions 2020-06-25 10:31:09 -04:00
496bd55dc9 Fix lj/cut/tip4p/long/gpu virial 2020-06-25 17:30:51 +03:00
22d8d0d0b0 add tests for potential file reader and untils functions 2020-06-25 08:00:04 -04:00
3bb3037b55 fix typo 2020-06-25 07:59:40 -04:00
6ec3aac3f0 extra return value 2020-06-25 13:32:13 +02:00
2acf71c3e2 add unit conversion to table pair style 2020-06-25 04:31:34 -04:00
c6b16577f6 add conversion to pair styles tersoff/zbl and tersoff/zbl/omp 2020-06-25 03:46:15 -04:00
43276c8387 add unit conversion to vashishta pair style 2020-06-24 22:06:24 -04:00
b0319c2e70 fix missing newline in thermo output. 2020-06-24 21:47:27 -04:00
85097df2ba add unit conversion to pair style tersoff/mod and tersoff/mod/c 2020-06-24 21:23:40 -04:00
00332d299b add unit conversion support to pair style tersoff/table 2020-06-24 21:05:00 -04:00
db4cb2cb4f Merge pull request #2097 from jibril-b-coulibaly/patch-1
Correct ghost atoms bug in fix adapt
2020-06-24 20:31:58 -04:00
361f636700 add support for passing arguments via environment variable 2020-06-24 20:29:23 -04:00
aa94d3f723 Merge branch 'master' into pair-potential-file-unit-convert 2020-06-24 20:24:51 -04:00
22c88b80dc Merge pull request #2182 from akohlmey/test-updates
Test program updates and related changes
2020-06-24 20:12:33 -04:00
fdf7282030 simplify output creation 2020-06-24 17:38:39 -04:00
a7d2b792a8 Merge branch 'master' into test-updates 2020-06-24 17:25:55 -04:00
5a2704efc2 ensure that local per-thread storage is completely cleared in hybrid styles. 2020-06-24 17:24:47 -04:00
3e39b8c62d make sure class pointers are initialized to NULL and virial accumulator. 2020-06-24 17:23:20 -04:00
3525d1f104 simplify suppression handling by creating a custom local file 2020-06-24 13:35:36 -04:00
57538fb91c add leak sanitizer option 2020-06-24 13:34:47 -04:00
2af8d7a751 add argument passing via TEST_ARGS environment variable to all tests with an explicit main function 2020-06-24 10:17:23 -04:00
f1532e6545 fix a couple more spelling errors 2020-06-24 10:12:54 -04:00
63eab6e6d8 Merge branch 'master' into patch-1 2020-06-24 10:09:05 -04:00
6824b69ae9 add missing include 2020-06-24 09:38:55 -04:00
5ea9b1b38d simplify detection and application of valgrind suppressions 2020-06-24 09:33:19 -04:00
ee5be42026 avoid having to use external test runner script by parsing environment variables directly 2020-06-24 09:32:59 -04:00
f35d517a15 Merge pull request #2179 from charlessievers/fix_python_dynmat
Update dynamical matrix examples
2020-06-23 21:09:27 -04:00
ee08d222d2 Merge pull request #2174 from athomps/mliap
Add MLIAP package
2020-06-23 20:47:59 -04:00
eab88b98ef Merge branch 'master' into fix_python_dynmat 2020-06-23 14:25:31 -07:00
f812b94e40 Update relative paths to dynamic links 2020-06-23 14:23:41 -07:00
f719803e9a correct typos in fix_adapt documentation 2020-06-23 16:17:59 -05:00
47ebd8a3d9 implement mass keyword to turn off/on change in rmass when diameter is changed 2020-06-23 12:48:57 -05:00
8cec13a038 Add memory checker support in CMake
If ENABLE_TESTING is ON, you can now use memory checking tools to run the test
suite and check for memory leaks. By default CMake will try to find valgrind in
your path and set some default options.

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

Run entire test suite:

ctest -T MemCheck

Run single test:

ctest -T MemCheck -R TESTNAME

Run test in verbose mode:

ctest -V -T MemCheck -R TESTNAME
2020-06-23 13:35:59 -04:00
b923037644 change and restore mass using scaling for floating point accuracy 2020-06-23 11:41:33 -05:00
5d1d406e01 must initialize ngrow in the constructor 2020-06-23 11:02:57 -04:00
a766b6a901 make sure numbers for atoms outside the compute group are zero 2020-06-23 10:24:47 -04:00
9aea4e509e Revert "must also reissue hybrid pair style commands after restarts"
This reverts commit ddcc104df6.
2020-06-23 09:50:17 -04:00
b8866c9acc add tests for MLIAP (same data as SNAP) 2020-06-23 09:35:00 -04:00
fefdd3dd9a move MLIAP potential files to potentials folder and replace with symlinks 2020-06-23 09:34:34 -04:00
06a0b3331a may only flag having restart info if all substyles support it 2020-06-23 09:25:25 -04:00
2ace7ef817 may only flag having restart info if all substyles support it 2020-06-23 09:24:51 -04:00
ddcc104df6 must also reissue hybrid pair style commands after restarts 2020-06-23 09:21:47 -04:00
8285e068da single_enable and respa_enable may only be set if *all* styles support it. 2020-06-23 09:19:08 -04:00
68d5d74fd3 add restart and data file handling to pair style zbl 2020-06-23 08:55:47 -04:00
5e57118a35 Merge branch 'mliap' of github.com:athomps/lammps into mliap 2020-06-23 08:53:41 -04:00
cc6371b00b add restart and data file handling to pair style zbl 2020-06-23 08:51:37 -04:00
1a0095e51b Use utils::logmesg() and fmt::format() 2020-06-23 08:32:17 -04:00
b9d989769d pair style zbl does not have restart support 2020-06-23 08:26:55 -04:00
2e48ea8680 include MLIAP package in cross-compiler builds 2020-06-23 07:11:30 -04:00
66414067c8 add tests for SNAP package 2020-06-23 06:51:42 -04:00
fae96f07d9 single_enable and respa_enable may only be set if *all* styles support it. 2020-06-23 06:51:10 -04:00
3d6095c278 Merge branch 'master' into pair-potential-file-unit-convert 2020-06-23 05:40:32 -04:00
1e8ea3af82 add comparisons for pressure (atm vs. bar) 2020-06-23 00:10:46 -04:00
bfef46539f add unit conversion test for pair style sw 2020-06-22 23:29:33 -04:00
fc197ce2aa add transparent unit conversion to pair style sw 2020-06-22 23:29:15 -04:00
a7436a7b76 adjust lj/cut parameters to produce smaller forces 2020-06-22 23:28:58 -04:00
0d7aed3234 remove debug code 2020-06-22 23:28:18 -04:00
516a31796e need to move destruction of base per-atom properties back to atom.cpp so we don't leak memory in read_restart and don't crash with replicate 2020-06-22 23:12:11 -04:00
a0fdb6af47 silence compiler warning 2020-06-22 22:34:08 -04:00
fc090c22f4 fix typo 2020-06-22 22:24:06 -04:00
ae0957bd61 use atom id instead of local index to test per-atom data 2020-06-22 22:19:55 -04:00
13d56f3cad Merge branch 'master' into test-updates 2020-06-22 21:00:33 -04:00
669e8e6fc9 Merge remote-tracking branch 'github/master' into mliap 2020-06-22 20:58:29 -04:00
5e1187832f Merge pull request #2181 from akohlmey/redo-msm-leak-fix
Redo MSM leak fix with fewer modifications to the code
2020-06-22 20:57:59 -04:00
5291a4611c Merge pull request #2180 from akohlmey/atomvec-deallocate-fix
Deallocate per-atom data less aggressively so replicate command keeps working
2020-06-22 20:53:27 -04:00
132afb32f4 add note about dependency on SNAP in the MLIAP overview page 2020-06-22 19:46:44 -04:00
8d5a9ad4af implement alternate version of MSM leak fix 2020-06-22 19:28:24 -04:00
afe6484c44 Revert "reorganize memory (de-)allocation and fix substantial memory leak in MSM"
This reverts commit f78671c1a4.
2020-06-22 19:15:28 -04:00
198258766d ensure that per-arrays are only freed if the last atom style instance is deleted 2020-06-22 18:59:09 -04:00
6fbcb84819 Update dynamical matrix examples 2020-06-22 15:26:04 -07:00
b29b3d52f6 initial implementation of automated unit conversion.
this includes a tester program and implementation into pair style tersoff
2020-06-22 17:57:05 -04:00
3fffe20463 Merge pull request #2172 from weinbe2/fea-snap-yi-aosoa
SNAP optimizations - AoSoA data layouts, chem snap indexing conventions, misc perf improvements
2020-06-22 13:54:06 -04:00
6e714fec42 fix underline 2020-06-22 13:40:30 -04:00
73ed317254 Added compute_mliap.cpp/h to MLIAP package 2020-06-22 11:38:02 -06:00
1f3c3bfb3c snap is listed twice 2020-06-22 13:30:54 -04:00
ac48f2dd67 add a hard dependency of MLIAP on SNAP 2020-06-22 13:30:43 -04:00
b0dd93f06f Whitespace tweak 2020-06-22 10:50:31 -06:00
5a1882e00d Merge branch 'mliap' of github.com:athomps/lammps into mliap 2020-06-22 12:01:34 -04:00
18597a6389 Removed computes 2020-06-22 10:00:19 -06:00
8eb6c2e037 Merge branch 'mliap' of github.com:athomps/lammps into mliap 2020-06-22 11:40:22 -04:00
743a14aea0 Fixed incomplete documentation entries for mliap 2020-06-22 09:35:16 -06:00
233b56105a Merge branch 'master' into mliap 2020-06-22 11:24:49 -04:00
75114afc0e integrate MLIAP package into CMake procedure 2020-06-22 11:24:44 -04:00
bbd9af0d6f Fixed a few minor problems 2020-06-22 09:11:38 -06:00
10ace11c0b Fixed spelling and false positives 2020-06-21 21:10:03 -06:00
9238c2a624 Finished first version of MLIAP package 2020-06-21 19:57:08 -06:00
549c6343f3 Merged MLIAP package into latest LAMMPS created SNAP, quadratic SNAP, and ChemSNAP examples 2020-06-21 18:05:34 -06:00
564974b6a4 Merge remote-tracking branch 'origin/ml_chem_snap' 2020-06-21 16:07:03 -06:00
ab42123005 add test for atom style sphere 2020-06-21 16:56:04 -04:00
a98d03ee0e add missing linefeed 2020-06-21 16:55:55 -04:00
7bb4a2a81a Fix a typo in the GPU Docs 2020-06-21 19:37:59 +03:00
0ba701acd7 Remove trailing space 2020-06-20 17:25:16 +03:00
723b9e6760 Try to keep compatibility with deprecated ROCm hcc compiler 2020-06-20 15:17:54 +03:00
55d6f1a34f Fixed variable name to be more consistent with rest of code. 2020-06-19 19:33:17 -04:00
f5a31fefdc Merge pull request #2171 from athomps/orientorder-components-parity
Switched the sign of spherical harmonics for m odd
2020-06-19 18:46:15 -04:00
9f6b2e97b1 Merge pull request #2169 from lammps/hyper-debug
Tweaks to local hyper dynamics
2020-06-19 17:17:56 -04:00
5148834d23 Merge pull request #2162 from akohlmey/collected-small-changes
Collected small changes
2020-06-19 17:07:07 -04:00
641f924161 Port changes to Kokkos package 2020-06-19 14:44:13 -06:00
b218fc44da Merge branch 'master' of https://github.com/lammps/lammps into orientorder-components-parity 2020-06-19 14:32:00 -06:00
bb40613db3 convert input degrees to internal radians for create_atoms rotate 2020-06-19 15:38:36 -04:00
a862a8c764 use {fmt} 2020-06-19 15:37:53 -04:00
4a2ab6d2f3 mods to fix adapt and doc pages for restarting 2020-06-19 12:48:06 -06:00
c7874fca86 Switched the sign of spherical harmonics for m odd 2020-06-19 12:18:11 -06:00
befd4c8bfd Optimizations to Compute[Yi/Zi/Bi], switching over to an AoSoA data layout on the GPU. CPU vs GPU code paths are now maximally divergent, will include some discussion of that in PR. Small performance tweaks in Compute[UiTot/FusedDeidrj]. 2020-06-19 14:12:29 -04:00
a40f4873fb comment out debug options and make some tallies bigints 2020-06-19 10:35:42 -06:00
3cdf0e286e add comments to explain why 1 item is added to rendezvous buffers. 2020-06-19 12:32:11 -04:00
08cb7664a3 renumber customization comments 2020-06-19 12:31:47 -04:00
4a447f1809 move deleting all array data associated with an atom style to AtomVec base class destructor 2020-06-19 12:31:31 -04:00
4d630904b4 relax a few more test criteria to be compatible with intel compilers 2020-06-19 11:43:59 -04:00
8f4e18ba3a change logic of selecting and allowing sanitizer options to be compatible with unsupported compilers 2020-06-19 11:30:38 -04:00
0249cf7510 better and more general version of the previous commit 2020-06-19 01:10:45 -04:00
a4de04d823 make certain that allocated buffers in Comm::rendezvous_all2all() are not NULL 2020-06-19 00:44:09 -04:00
343241cb63 relax some test epsilons 2020-06-19 00:43:11 -04:00
e934f7bac3 try to work around linker issues with older CMake versions and using coverage or sanitizers 2020-06-19 00:20:20 -04:00
7e2f29bb65 Merge pull request #2168 from charlessievers/chem_snap
Chem snap bugifx
2020-06-18 23:59:25 -04:00
f78671c1a4 reorganize memory (de-)allocation and fix substantial memory leak in MSM 2020-06-18 23:43:16 -04:00
d8e0f553b6 Merge remote-tracking branch 'origin/chem_snap' into chem_snap 2020-06-18 18:21:10 -07:00
9b73b4a6ca Unnecessary loop over zero_yi for non chem snap multielement systems 2020-06-18 18:20:30 -07:00
02ffa46fa7 simplify memory management and plug leaks in pair style bop 2020-06-18 17:12:51 -04:00
8eed1b27ff GPU Makefile cleanup 2020-06-19 00:07:10 +03:00
2ea5d9956a find_package is unnecessary for rocprim 2020-06-19 00:01:03 +03:00
328709513b plug memory leaks in pair style comb and comb3 2020-06-18 16:34:25 -04:00
fcdd2c5026 prevent memory leaks in pair style tersoff/table 2020-06-18 16:13:02 -04:00
b83fab92bf document coding style and sanitizing options 2020-06-18 13:35:07 -04:00
dfe860c4bb update coding style 2020-06-18 13:34:34 -04:00
a42c68892f address memory leak and C versus C++ programming issues in pair style polymorphic 2020-06-18 13:09:58 -04:00
bfe42e3fbe make sure delete gc[n] is safe 2020-06-18 12:40:08 -04:00
5e597e551b avoid false positive 2020-06-18 12:39:40 -04:00
786473a189 allow sanitizers also be active for force style test codes 2020-06-18 12:39:23 -04:00
8816d7fe3e plug small memory leak in pair style eam/cd 2020-06-18 11:52:33 -04:00
b866ea68f6 make sanitizers an explicit cmake option (again) so we can set the flags properly 2020-06-18 11:46:42 -04:00
b0842a3fea tell GNU gcc to not try to optimize the atom style tester tool 2020-06-18 11:45:56 -04:00
41995b4665 avoid false positives about memory leaks in force tester tools 2020-06-18 11:45:26 -04:00
77f6fecc86 Merge pull request #1971 from charlessievers/chem_snap
Chemical specificity for SNAP
2020-06-18 10:11:15 -04:00
547137f737 remove unused code 2020-06-17 23:48:09 -04:00
d6ca98cb44 don't validate compiler flags provided with CMAKE_TUNE_FLAGS anymore
closes #2084
2020-06-17 23:47:55 -04:00
a221f13308 Whitespace tweak 2020-06-17 21:35:04 -06:00
27912754c4 Merge branch 'master' into collected-small-changes 2020-06-17 21:18:29 -04:00
753eb9b76d add tests for atom style charge 2020-06-17 21:17:42 -04:00
586c81b1be Merge pull request #2163 from rbberger/more-whitespace
Coding Standard tool updates
2020-06-17 21:07:01 -04:00
a200756d7b remove a bunch of redundant tests and add checking for restarts and consecutive atom ids 2020-06-17 20:40:04 -04:00
5bb9700124 ensure that a LAMMPS instance could be created and the eim pair style is available 2020-06-17 18:12:12 -04:00
afe874ac5b add test for using write_data/read_data for atom style atomic 2020-06-17 18:11:45 -04:00
f75b8e1688 Fix Makefile for GPU ROCm 3.5 backend 2020-06-18 00:33:46 +03:00
d3baa414d2 Fix cmake for GPU ROCm 3.5 backend 2020-06-17 23:33:16 +03:00
a7967f8b3f Merge remote-tracking branch 'origin/master' 2020-06-17 23:31:06 +03:00
8a93c84e74 make formatting consistent with lj/cut 2020-06-17 15:03:36 -04:00
2d52a09d08 patch the source code to the ScaFaCoS lib with a proper fix instead of working around it with compiler flags 2020-06-17 13:01:29 -04:00
27f1ce71fd now also check all 'xxx_flag' variables 2020-06-17 07:42:50 -04:00
34e46cc336 add workaround to USER-SCAFACOS package CMake script for linker error in FMM with GNU gcc 10.0 2020-06-17 07:41:00 -04:00
73c7ed1e9c start test for atom style charge 2020-06-17 01:42:41 -04:00
e88bb9dd59 call MPI_Finalize() so we don't have spurious memory leaks from MPI reported by valgrind 2020-06-17 01:42:17 -04:00
39b61fbdbe add exit() to one() functions since compilers may not recognize that MPI_Abort() does not return. 2020-06-17 01:30:41 -04:00
61ace42e72 check status of all per-atom fields 2020-06-17 01:25:56 -04:00
d990c1e7c0 simplify through using {fmt} 2020-06-17 01:25:22 -04:00
32c1dcf44f improve match for "id" first checks 2020-06-17 01:25:06 -04:00
db469b5cfd plug memory leak in AtomVec classes 2020-06-17 01:24:36 -04:00
49af2c25ec add tester for atom styles 2020-06-17 00:11:18 -04:00
b97cd78e80 change input and log files for new example to give consistent results in serial and parallel.
the remaining files and logs are updated in PR #2162
2020-06-16 21:11:34 -04:00
1883788725 update SNAP package inputs and reference logs to give consistent results in serial and parallel 2020-06-16 20:59:58 -04:00
47b589bdc6 add [[ noreturn ]] attributes to functions in the Error class that do not return 2020-06-16 18:30:04 -04:00
a2f78e7cda Updated whitespace, implemented low hanging performance boosts 2020-06-16 15:00:35 -07:00
d8fbb5a16b Merge branch 'commands-tests' into collected-small-changes 2020-06-16 16:39:33 -04:00
73a7fb53ff add infrastructure and first example for testing standalone LAMMPS input commands 2020-06-16 12:52:35 -04:00
9d74984144 Fix whitespace 2020-06-16 07:20:09 -04:00
95e79b2347 Keep file permissions while fixing whitespace issues 2020-06-16 07:19:19 -04:00
943d252403 Change regex to detect more whitespace errors 2020-06-16 07:11:31 -04:00
036b2bd82c Add non-zero exit code on whitespace check failure 2020-06-16 07:06:37 -04:00
61235308f1 Add non-zero exit code on permission check failure 2020-06-16 07:05:15 -04:00
093c285475 use GMock initializer instead of GTest 2020-06-16 06:37:35 -04:00
436c7615e0 set metal units and add option to do verbose execution to EIM potential tester 2020-06-16 06:37:09 -04:00
37a0999826 add units metadata check to legacy potential file reading method 2020-06-16 06:36:26 -04:00
b5a809413e set units for potential file reader tests. allow verbose execution. 2020-06-16 06:19:31 -04:00
30d9ffba25 add "UNITS:" tag to new potential files 2020-06-16 05:13:41 -04:00
ae435536f3 use index style variables instead of equal style variable to allow overriding them 2020-06-16 05:13:16 -04:00
5e238b2cf4 Merge branch 'master' into chem_snap 2020-06-16 05:06:11 -04:00
ba26b2f71f Update false positives and fix typos 2020-06-15 17:24:47 -07:00
b55f1829d9 Fixed number of parameters sent to sna kokkos to include bnormflag 2020-06-15 17:09:14 -07:00
39f1fb874f Fixed small merge conflict bug for ylists 2020-06-15 16:53:39 -07:00
7a00ec90e5 Merge pull request #2134 from akohlmey/next_lammps_version
Update version strings for next patch release
2020-06-15 18:20:17 -04:00
a598a66eda Merge pull request #2157 from akohlmey/use-clang-format-demo
Demonstrate use of clang-format in LAMMPS
2020-06-15 17:55:42 -04:00
30100d33c6 get rid of tabs and trailing whitespace 2020-06-15 17:37:45 -04:00
3abbf57146 remove executable permissions on files that should not have them 2020-06-15 17:34:21 -04:00
fd8cfed86d fix typo 2020-06-15 17:33:50 -04:00
05319cae66 updates for using {fmt} and reordering of include statements exposing hidden includes 2020-06-15 16:55:38 -04:00
05d1924d62 update for using {fmt} 2020-06-15 16:48:20 -04:00
14c22a004a Merge branch 'master' into use-clang-format-demo
# Conflicts:
#	unittest/force-styles/pair_style.cpp
#	unittest/utils/test_utils.cpp
2020-06-15 16:14:13 -04:00
4a3d9afb54 Merge pull request #2154 from rbberger/coding_standard
Add utilities for checking code
2020-06-15 15:32:35 -04:00
ac87f1763c Merge remote-tracking branch 'refs/remotes/origin/chem_snap' into chem_snap 2020-06-15 12:22:11 -07:00
39aee089e7 Merge branch 'master' into chem_snap 2020-06-15 12:20:48 -07:00
65ff6bb617 Require clang-format >= 8.0 2020-06-15 14:59:43 -04:00
c987dfb2c9 Merge pull request #2156 from akohlmey/collected-small-changes
Collected changes for the next patch release
2020-06-15 14:40:27 -04:00
e083416dd8 Merge pull request #2159 from akohlmey/potential-unit-tag
Add a units consistency check by adding a UNITS: tag to potential files.
2020-06-15 13:55:20 -04:00
0ca7270668 re-enable USER-MESONT package for MinGW cross compilation 2020-06-15 13:47:16 -04:00
0199e369fa work around race condition and minimizing download attemps for transparently downloaded potential files 2020-06-15 13:46:54 -04:00
868e5450db Merge branch 'patch-1' of github.com:cjknight/lammps into collected-small-changes 2020-06-15 12:13:25 -04:00
9aee8d41bd Merge branch 'master' into collected-small-changes 2020-06-15 12:12:45 -04:00
71c075e0e4 Update atom_vec_sph.cpp
Looks like one 'de' wasn't renamed to 'desph' in recent commit.
2020-06-15 10:55:18 -05:00
70e809895f Merge pull request #1873 from iafoss/feature-cnt
Tubular potential force field package for carbon nanotubes
2020-06-15 11:41:56 -04:00
622db7053e Merge remote-tracking branch 'origin/master' 2020-06-15 18:38:40 +03:00
419ebd74fe Merge pull request #2155 from akohlmey/gmake-makefile-improvements
Portability improvement for src/Makefile
2020-06-15 11:35:11 -04:00
e840fa23f1 Add format-tests target 2020-06-15 11:21:43 -04:00
57eab1f785 USER-MESONT fails to download with Win64 for some strange reason. disabling from mingw preset for now 2020-06-15 11:12:55 -04:00
b5ee87697a workaround for GNU Fortran 10 and later when compiling downloaded ScaFaCoS lib 2020-06-15 10:59:32 -04:00
12b379df36 improve MEAM file detection in pair_coeff command, get rid of ERRFMT() 2020-06-15 08:18:11 -04:00
f0a3256151 Merge branch 'master' into user-cgdna 2020-06-15 08:41:42 +01:00
a7e2cc3320 initialize _need_tag differently. 2020-06-14 23:14:22 -04:00
59dcf2d7f9 make sure _need_tag in intel buffers is always initialized for all precision settings 2020-06-14 21:40:29 -04:00
b067880803 update code owners 2020-06-14 20:11:31 -04:00
753e2b00cf potential file metadata may only be in the first line of a file. 2020-06-14 19:59:17 -04:00
b3a99f3165 add and document new "download" preset 2020-06-14 19:50:14 -04:00
149571873f avoid illegal read after delete 2020-06-14 19:35:09 -04:00
2f5587da53 use std::string.empty() instead of comparing to "" 2020-06-14 17:25:20 -04:00
2a25fe16e7 fix delete[] vs. free() issue with pair styles eam/fs, eam/alloy, eim 2020-06-14 17:23:42 -04:00
7d9e0076c7 update some test yaml files 2020-06-14 17:01:28 -04:00
5d3f67dff4 Tweaked formulae for K 2020-06-14 13:25:11 -06:00
8736565977 document the use and generation of "DATE:" and "UNITS:" tags 2020-06-14 14:41:04 -04:00
5abfcde3f7 make subheaders and typesetting more consistent 2020-06-14 12:41:19 -04:00
4042b836c2 enable full c++11 in colvars, same as LAMMPS 2020-06-14 12:18:51 -04:00
b587500b19 update false positives 2020-06-14 11:56:24 -04:00
083fe85b68 import updates to the manual from the progguide branch 2020-06-14 11:25:02 -04:00
a8c0e8d30a FERMI GPU hardware is no longer supported by CUDA drivers and toolkit 2020-06-14 11:05:29 -04:00
3083306dbc remove obsolete inputs and logs 2020-06-14 11:04:00 -04:00
d2404cc88e replace more potentials with symlinks 2020-06-14 11:02:41 -04:00
78117205ce make He table potentials canonical and add UNITS: tag 2020-06-14 10:46:56 -04:00
21e34c5c76 Merge branch 'small-typo' of github.com:aatxutegi/lammps into collected-small-changes 2020-06-14 10:36:06 -04:00
03bf678e70 Small type at the Z rotation matrix member 2020-06-14 16:02:50 +02:00
7077db7eec update contributing guidelines to mention creating unit tests and regression test data. add checkbox to pull request template 2020-06-14 08:16:51 -04:00
c1d61edbcf Add unit style consistency check to pair_write and bond_write commands.
When a new table file is created, a line with DATE: and UNITS: tags is added
When a table is appended to an existing file, the DATE: is printed and the UNITS: tag is checked for consistency
The command aborts with an error, if the units do not match.
2020-06-14 07:56:39 -04:00
758d73e63d add UNITS: tag to a bunch more potential files 2020-06-14 07:02:55 -04:00
f0fadc1342 document UNITS: tag 2020-06-14 06:44:29 -04:00
41e050aa8a apply UNITS: tag to a whole bunch of potential files 2020-06-14 06:44:19 -04:00
2e844971a8 extend PotentialFileReader class to check for a UNITS: tag and error out if it doesn't match the current units 2020-06-14 06:23:49 -04:00
0481184862 add utility function to get the units tag value from a potential file 2020-06-14 06:22:47 -04:00
9dec9314a2 Polished the doc files a bit 2020-06-13 19:20:30 -06:00
6a26094d05 Minor tweaks 2020-06-13 17:57:08 -06:00
30aa4bf454 Added chemsnap keywords and upgraded equations to mathjax 2020-06-13 17:55:45 -06:00
7dd186d0ad Refactored chemsnap input options 2020-06-13 12:50:01 -06:00
7ba731c711 Renamed InP potential files and create standard log files 2020-06-13 10:47:52 -06:00
7ea1e60ec5 Renamed InP potential files and create standard log files 2020-06-13 10:47:29 -06:00
eec9773815 Moved InP files to potentials dir 2020-06-13 10:25:11 -06:00
9b0213f1ab small CMake tweaks from progguide branch 2020-06-13 12:03:50 -04:00
daae6ea97f whitespace fix 2020-06-13 11:24:17 -04:00
8739067593 implement method to pass command line flags to test programs when run through ctest
based on the suggestion at: https://stackoverflow.com/questions/28812533/how-to-pass-command-line-arguments-in-ctest-at-runtime
but customized for the force-style tests
2020-06-13 11:19:56 -04:00
49982e22bf Add check for permissions 2020-06-13 09:54:12 -04:00
fcd3e9a3f9 Make quiet Python 3 check 2020-06-13 08:40:27 -04:00
0e708469b6 add unittest for ErrorStats class 2020-06-13 02:49:12 -04:00
d5d28bcbd2 use fmt::format() for error_stats output. 2020-06-13 02:11:21 -04:00
9c3d108bbc enable aligning consecutive assignments 2020-06-13 02:05:13 -04:00
3db944decc apply clang-format settings to the c++ sources in the unittest tree 2020-06-13 01:54:58 -04:00
4d62ea98cf add clang-format configuration file for the unittest tree 2020-06-13 01:51:16 -04:00
e006286603 rather than forcing tcp communication for OpenMPI, we disable infiniband instead for better stability of tests 2020-06-13 01:40:53 -04:00
00ebbb311a whitespace fixes 2020-06-13 01:40:34 -04:00
8d5452d653 must use fabs() instead of abs() on floating point values. update cauchystat example logs 2020-06-13 01:39:55 -04:00
ec6d3586ce require at least python 3.5 for building docs and import CMake improvements from progguide branch 2020-06-13 01:20:24 -04:00
e9a9c7e53d avoid using $(shell...) in master makefile thus execute faster and become independent of shell commands 2020-06-13 00:29:11 -04:00
dfc250339e move release date (again) 2020-06-12 23:49:47 -04:00
cf5fa3959c Add first version of whitespace utility 2020-06-12 21:52:51 -04:00
ebcc68f2cf Renamed InP files and tweaked 2020-06-12 17:58:33 -06:00
574f6307e7 Merge master into chem_snap and update dulist merge conflict 2020-06-12 13:31:43 -07:00
d84b4a3fff Merge pull request #2152 from stanmoore1/kk_snap_mem
Remove unnecessary memory allocation in Kokkos PairSNAP
2020-06-12 15:28:28 -04:00
49556edd50 Remove unnecessary allocation 2020-06-12 12:39:03 -06:00
497e30af82 fully integrate and update USER-MESONT docs. Add notes about C++ pair style and download of potential files 2020-06-12 09:02:56 -04:00
92d54d2764 not portable to use "mpi" 2020-06-12 09:01:59 -04:00
e52a05f525 whitespace fixes 2020-06-12 08:26:25 -04:00
e3f8af6cec Merge remote-tracking branch 'github/master' into feature-cnt 2020-06-12 08:25:52 -04:00
0c23fcae91 Merge pull request #2149 from jtclemm/sort-atom-callbacks
Sort atom callbacks
2020-06-12 08:22:02 -04:00
2b49d2398c Merge branch 'master' into feature-cnt 2020-06-12 07:17:02 -04:00
55089df679 add a few missing typecasts 2020-06-12 07:01:32 -04:00
b246c96056 remove duplicate package name 2020-06-12 06:36:44 -04:00
ba5e78b97a move pair style mesocnt example to the USER-MESONT folder. unbundle potential file 2020-06-12 06:33:45 -04:00
cf359dede2 Merge pull request #2139 from akohlmey/fetch-potentials
Add feature to transparently download external potential files when packages are enabled
2020-06-12 06:28:42 -04:00
d61d8899ff Merge branch 'fetch-potentials' into feature-cnt 2020-06-12 05:54:45 -04:00
cf5c748fb4 Merge branch 'master' into feature-cnt 2020-06-12 05:53:17 -04:00
22ed175632 Merge pull request #2151 from akohlmey/move-ubuf-to-lmptype
Move definition(s) of union ubuf to lmptype.h
2020-06-12 05:51:41 -04:00
0bc1c3b2a2 update example logs and inputs 2020-06-12 05:48:49 -04:00
53e0cc1b88 remove dead code, fix up a few details and reduce compiler warnings 2020-06-12 05:35:50 -04:00
5862dcbb3a fully integrate USER-MESONT into the conventional build system 2020-06-12 05:35:25 -04:00
d1546262a4 replace non-standard tabs with blanks 2020-06-12 05:15:23 -04:00
74df1bcf7d update makefiles and add dependencies for parallel compile 2020-06-12 05:07:19 -04:00
5f86bac419 Merge pull request #2144 from rbberger/tokenizer-performance-fixes
Performance optimization of Tokenizer
2020-06-12 04:20:05 -04:00
3c99471df8 add a few more unit tests for functions in utils 2020-06-12 01:29:42 -04:00
8c470b9e8b Merge branch 'master' into tokenizer-performance-fixes 2020-06-12 00:43:43 -04:00
554905ba36 move version date one more time 2020-06-11 23:11:44 -04:00
6b783d31ad fix spelling 2020-06-11 21:28:32 -04:00
219a3e4ce2 fix format (again) 2020-06-11 21:27:27 -04:00
bb144f0d1b Merge branch 'reset-ids-sort' into move-ubuf-to-lmptype
# Conflicts:
#	src/reset_ids.h
2020-06-11 20:12:37 -04:00
965ec37e80 whitespace/format fixes 2020-06-11 20:11:38 -04:00
1e8ef99fa7 use compile time tests instead of runtime checks for skipping 64bit tests on 32bit integers 2020-06-11 19:17:17 -04:00
9ca0d01a5b silence compiler warnings 2020-06-11 19:05:06 -04:00
a8c1ce98cf remove trailing whitespace 2020-06-11 19:04:15 -04:00
6274234376 have a single union ubuf definition in lmptype.h and remove others 2020-06-11 18:37:31 -04:00
883a6c5aa1 Addressing include conflict 2020-06-11 16:24:29 -06:00
006f7956c1 Merge remote-tracking branch 'github/reset-ids-sort' into move-ubuf-to-lmptype 2020-06-11 18:11:51 -04:00
fc9bbd4d06 Merge pull request #2121 from rbberger/gran-wall-store-contacts-fix
Document and fix store_contacts in fix gran/wall and gran/wall/region
2020-06-11 18:04:23 -04:00
bdce720337 Merge pull request #2143 from lammps/hyper-eligible
fix a bug with checking too early for ineligibilty for biasing
2020-06-11 18:02:19 -04:00
e70f23cdcc Switching to std::sort 2020-06-11 15:42:37 -06:00
b9303378ac move pair style mesocnt from USER-MISC to (upcoming) USER-MESONT package
the remaining documentation and README files will be updated once USER-MESONT is integrated
2020-06-11 17:41:19 -04:00
9ca7091385 Merge pull request #2141 from akohlmey/kokkos-make-arch-case-insensitive
Make kokkos configuration keywords with gmake case insensitive
2020-06-11 17:20:43 -04:00
77a38c2a0a remove (unsupported) reference to AMD Ryzen 2020-06-11 17:03:20 -04:00
9896d10d0c whitespace cleanup 2020-06-11 16:52:38 -04:00
d95859c73b update hyperdynamics example log files 2020-06-11 16:52:30 -04:00
96a6afd42a Merge pull request #2148 from akohlmey/kim-echo-log-refactor
KIM package echo/log refactor and bugfix
2020-06-11 16:46:41 -04:00
765b547a40 Merge pull request #2147 from stanmoore1/kk_sw
Fix compile error with pair_sw_kokkos
2020-06-11 16:20:03 -04:00
ca424772df Improving clarity of loops 2020-06-11 14:10:26 -06:00
006ada3a52 Sorting atom callback lists 2020-06-11 14:03:59 -06:00
3a5cdd384f vector -> array 2020-06-11 14:51:36 -04:00
43d3133583 Whitespace 2020-06-11 14:00:13 -04:00
f25f7fee8d Only count new words 2020-06-11 13:56:47 -04:00
6a9073a0cb Add count_words for C-Strings 2020-06-11 13:50:26 -04:00
645d3b61ba Only count new words 2020-06-11 13:49:58 -04:00
6cb5345cd0 Add optimized version of count_words for default whitespace chars 2020-06-11 13:37:22 -04:00
505cc1036f refactor KIM package code for using {fmt} and std::string 2020-06-11 13:25:41 -04:00
61d0592e6a Fix compile error with pair_sw_kokkos 2020-06-11 11:13:36 -06:00
558b9201ac Fix typo 2020-06-11 12:37:44 -04:00
e9a52a2b1b More doc updates 2020-06-11 12:30:02 -04:00
b299601a41 Update fix_wall_gran docs 2020-06-11 12:22:55 -04:00
ff35f421ac Don't store atom tag, just if there is a contact 2020-06-11 11:35:27 -04:00
7ace10238d change interface to Input::write_echo() to accept const std::string 2020-06-11 10:23:44 -04:00
9945f73743 fix spelling in a few more files 2020-06-11 01:05:58 -04:00
81d937ee97 Performance optimization of Tokenizer
Reduces string allocations and removes std::vector from Tokenizer
Most processing now happens on-demand.
2020-06-11 00:22:04 -04:00
b287651ed6 fix a bug with checking too early for ineligibilty for biasing 2020-06-10 16:56:52 -06:00
e4d1068c70 flag a couple fixes and their derived clases as incompatible with resetting atom IDs 2020-06-10 16:47:55 -06:00
d02363b8fb adding a reset_ids sort option 2020-06-10 16:33:05 -06:00
4db9576aac Fixed small multielement and not alloyflag bug 2020-06-10 15:17:45 -07:00
5a200b34fb Updated chem_snap kokkos cuda kernel 2020-06-10 14:27:49 -07:00
64a4e5e21a make kokkos configuration keywords in traditional build case insensitive 2020-06-10 15:53:09 -04:00
6f78dd688a Minor doc changes & rename store_contacts to contacts 2020-06-10 15:52:47 -04:00
71d3827cce Merge pull request #2140 from stanmoore1/kk_depend
Add missing Kokkos dependency
2020-06-10 15:50:10 -04:00
c3d5e46f9a one more permission fix 2020-06-10 13:48:25 -04:00
8a71d760f2 fixup permission on doc file 2020-06-10 13:41:57 -04:00
4c3a13873e {fmt}: don't use [[gnu::fallthrough]] on intel compilers 2020-06-10 13:37:30 -04:00
404516060d Add missing Kokkos dependency 2020-06-10 10:49:41 -06:00
1a1cc99144 use correct expression for source folder. small output tweak. 2020-06-10 12:41:20 -04:00
6891fa2610 update a few URLs to use https: instead of http: 2020-06-10 12:34:09 -04:00
f36a84bdd3 add CMake support for fetching external potential files 2020-06-10 12:29:48 -04:00
20a9794b92 fix permissions 2020-06-10 11:26:08 -04:00
72ce9dfacb add feature to transparently fetch external potential files when a package is installed 2020-06-10 11:25:59 -04:00
d436550d63 remove too big C_10_10.mesocnt potential 2020-06-10 09:56:47 -04:00
59353513e0 move date 2020-06-09 19:02:27 -04:00
0b7f58e674 Merge pull request #2137 from jtclemm/ptemp
Adding new ptemp keyword to fix/nh
2020-06-09 19:01:30 -04:00
62045cfb10 Merge branch 'master' into chem_snap 2020-06-09 14:30:55 -07:00
2f5a8d0937 remove trailing whitespace 2020-06-09 17:28:26 -04:00
0143234329 Merge branch 'chem_snap' of https://github.com/charlessievers/lammps into chem_snap 2020-06-09 14:28:03 -07:00
4e5da1c92e Chem SNAP KOKKOS implementation draft 2020-06-09 14:27:01 -07:00
3ea39f5a23 Update fix_nh.rst
Removed mbox commands
2020-06-09 14:58:25 -06:00
833ebeb0a0 remove \mbox{} macros which are incompatible with make pdf 2020-06-09 16:42:26 -04:00
c3831f8971 Merge pull request #2126 from vmohles/add-ECO-DF
Add fix orient/eco to USER-MISC
2020-06-09 16:41:07 -04:00
32984cb8c4 add reference to LAMMPS slack 2020-06-09 16:06:47 -04:00
1221906ed9 fix whitespace issues 2020-06-09 15:14:49 -04:00
ecc142229d update outputs again 2020-06-09 15:09:45 -04:00
fa07f64b81 add missing linefeed 2020-06-09 15:06:13 -04:00
999ed36e6a update log files for new version 2020-06-09 15:04:53 -04:00
bb5b931d78 Merge remote-tracking branch 'github/master' into add-ECO-DF 2020-06-09 14:55:40 -04:00
89fb194f51 update to fix orient/eco from the authors 2020-06-09 14:55:31 -04:00
719936580a Merge pull request #2135 from akohlmey/cmake-legacy-gpu-conflict
Handle conflict between conventional build and CMake build in lib/gpu
2020-06-09 14:26:42 -04:00
4c6c4ac405 Update fix_nh.rst
Adding linebreaks for legibility
2020-06-09 12:20:21 -06:00
c2b557233e Update value parsing in Molecule 2020-06-09 12:12:52 -04:00
c1f6c004ca Add contains method to ValueTokenizer 2020-06-09 12:11:53 -04:00
e47d48eed8 Change output message and use list(APPEND) 2020-06-09 12:10:35 -04:00
954f728225 Always set CMAKE_LIBRARY_PATH if environment variable LIBRARY_PATH is set
This resolves issues such as CUDA_CUDA_LIBRARY NOTFOUND if LIBRARY_PATH is
set to the CUDA stubs folder, but ignored by CMake.
2020-06-09 11:30:54 -04:00
2010cf97a9 add documentation for the cubin header check and explain the reason 2020-06-09 07:41:18 -04:00
78f030a07a test for *cubin.h files in lib/gpu that conflict with cmake compilation 2020-06-09 07:32:49 -04:00
9d3dda9307 step version strings for next patch release 2020-06-08 19:57:07 -04:00
e641671da9 Merge pull request #2132 from akohlmey/collected-bugfixes-and-updates
Collected bugfixes and updates
2020-06-08 19:55:34 -04:00
3b1219f0f5 Merge pull request #2133 from ThFriedrich/master
Added missing and correct a few existing "Syntax" and "Examples" labels in docs
2020-06-08 19:20:32 -04:00
016629252d a few more tweaks needed for centos8 and fedora32 2020-06-08 19:18:01 -04:00
ac85071bc4 need one more step with ubuntu to allow enabling PPA repos 2020-06-08 16:08:03 -04:00
2668e3deb6 add manual installation of plumed library 2020-06-08 14:39:34 -04:00
8b154cfbf6 must not set *any* communicators in plumed lib when using MPI_STUBS 2020-06-08 10:38:20 -04:00
7512cd3518 Merge branch 'master' of github.com:ThFriedrich/lammps into collected-bugfixes-and-updates 2020-06-08 09:48:21 -04:00
ee5e479343 make sure that when unpacking the Nbr struct you convert the index back to the closest image relative to the center atom 2020-06-08 09:33:21 -04:00
2e9859bacf don't request neighbors of ghosts 2020-06-08 09:29:32 -04:00
c90f303a7a structs are all public by default 2020-06-08 09:28:43 -04:00
942a9e936d remove changes to upstream 2020-06-08 09:28:22 -04:00
d106ed8981 add missing pair_style command to commands overview 2020-06-08 01:49:16 -04:00
99fcf21a74 Fix "Example" Tag formatting 2020-06-08 04:21:24 +02:00
448bccd138 tweak test epsilons so they pass with -DLAMMPS_BIGBIG 2020-06-07 22:20:46 -04:00
e5f937388a fix bugs with reading restart files when using -DLAMMPS_BIGBIG 2020-06-07 22:14:51 -04:00
864103f93e fix cut-n-paste bug that crashed LAMMPS on reading molecular data files with -DLAMMPS_BIGBIG 2020-06-07 21:35:06 -04:00
f9cdf0913c Fix Formatting of "Examples" Label 2020-06-07 23:27:02 +02:00
def387c21e Added missing "Syntax" label 2020-06-07 23:01:48 +02:00
a9d1932032 update singularity definition files to include kim-api packages 2020-06-07 16:11:26 -04:00
dd746f7695 whitespace 2020-06-07 15:59:50 -04:00
bbb6f408be fix syntax issue 2020-06-07 15:56:18 -04:00
4da8ff3d21 avoid division by zero 2020-06-07 15:47:46 -04:00
fc1be785fc port bugfix from fix qtb to fix qbmsst and some output simplification 2020-06-07 15:33:32 -04:00
5c1236084c correctly compute the size of the maxexchange buffer. we put all fixes into one buffer. 2020-06-07 14:37:20 -04:00
db9543ede2 use more common coding patterns, set maxexchange, use correct argument conversion functions 2020-06-07 14:36:41 -04:00
cee7cd5fe9 consolidate enumerator for per-atom array data types 2020-06-07 11:44:42 -04:00
edc7237f15 more thorough checking if the reaxff force field is consistent. 2020-06-07 10:46:50 -04:00
586f2c00b0 add missing linefeed character 2020-06-07 10:13:35 -04:00
09a005414b recover compilation of the KIM package 2020-06-06 17:27:10 -04:00
64664d0b18 Merge pull request #2122 from rbberger/refactor-table-reading
Refactor table reading
2020-06-06 16:44:57 -04:00
7088746e36 update logs 2020-06-06 11:59:38 -04:00
a1afb8e1da when communicating always communicate global atom ID and convert back 2020-06-06 11:53:50 -04:00
d343d2beb1 whitespace and output fixes. 2020-06-06 11:10:32 -04:00
92012ef047 fix permissions 2020-06-06 10:44:09 -04:00
8a71645a4b must pass the filename, not file pointer to error message 2020-06-06 10:41:42 -04:00
17306c0469 Merge branch 'master' into add-ECO-DF 2020-06-06 10:37:12 -04:00
4e05eaa811 reduce compiler warnings, use new error class and format options 2020-06-06 10:37:06 -04:00
8bfabcab56 update fix orient/eco example to be aligned with LAMMPS conventions 2020-06-06 10:36:35 -04:00
4832de4a76 add to USER-MISC README file 2020-06-06 10:03:21 -04:00
9482f7f834 fix up typesetting of docs, spelling, and integrated into fix command table 2020-06-06 10:01:07 -04:00
890c5fc1be update src/.gitignore 2020-06-06 10:00:11 -04:00
c6abcc8518 must not include installed copies of package files 2020-06-06 09:59:59 -04:00
2ed8652545 Fix whitespace 2020-06-05 19:15:31 -04:00
52f5968695 Merge remote-tracking branch 'origin/master' into refactor-table-reading 2020-06-05 19:09:24 -04:00
a57a8a879b Merge pull request #2129 from akohlmey/collected-small-changes
Collected small changes for the next patch release
2020-06-05 18:49:47 -04:00
4f804f58e3 Merge remote-tracking branch 'origin/master' into refactor-table-reading 2020-06-05 16:41:05 -04:00
04d7eacc2f remove .c_str() in several places because it is no longer neede 2020-06-05 16:40:48 -04:00
c7ef89dc4a Merge branch 'master' into collected-small-changes 2020-06-05 16:40:30 -04:00
2203e1e9e5 Change next_dvector(n, buf) to next_dvector(buf, n) 2020-06-05 16:40:14 -04:00
12386945d5 Merge pull request #2128 from akohlmey/more-fmtlib-and-string
Use {fmt}, std::string and utils::logmesg() in more places
2020-06-05 16:37:38 -04:00
9bf47cd9f3 make KOKKOS library compilation compatible with mode=shared 2020-06-05 13:58:11 -04:00
8b5469590d Fix error message in pair_airebo.cpp 2020-06-05 12:25:10 -04:00
4d99092e37 Fix error message in bond_table.cpp 2020-06-05 12:23:20 -04:00
a42a86c0d2 Remove more c_str() 2020-06-05 12:13:41 -04:00
7df387f7d5 Merge remote-tracking branch 'origin/master' into refactor-table-reading 2020-06-05 12:09:57 -04:00
cd08dc8425 Simplify by using next_values() helper 2020-06-05 11:57:12 -04:00
78468f41d5 make definition consistent and silence a whole bunch of warnings from recent clang versions 2020-06-05 11:52:06 -04:00
f547d66104 Merge branch 'master' into more-fmtlib-and-string
# Conflicts:
#	src/write_restart.cpp
2020-06-05 11:13:44 -04:00
863828540a Merge pull request #2127 from akohlmey/error-using-string-class
Use std::string in arguments to Error class function
2020-06-05 11:05:14 -04:00
9ba84f37d7 add workaround for compilation error with MPIIO on windows due to old ROMIO API 2020-06-05 11:03:17 -04:00
cbd4f59d45 updates "add eco df"
We think we followed all your requests/advice/suggestions (thanks!). We were unable to compile the current master (!) on Ubuntu and MacOS unless we added -std=c++11 to the Makefile(s) compiler flags. Note that this is NOT related to this pull request / the ECO Force. With  this compiler flag, the current master works well with the fix_orient_eco (now renamed). The fix has been moved to USER-MISC (but we hope to get it to MISC later). We can't "make style_check ", but we have added our command to commands_fix.rst. We don't know GitHub well enough, so we don't know how to make sure that the PR #2122 was already included in the master, which we downloaded today.
2020-06-05 14:57:59 +02:00
ad76f5267b whitespace fix 2020-06-05 08:54:41 -04:00
d874e8a2be remove TAGINT_FORMAT from ntopo styles 2020-06-05 08:45:18 -04:00
73c6171ad6 get rid of BIGINT_FORMAT and use utils::logmesg() 2020-06-05 08:19:45 -04:00
8ed32f95b3 simplify writing restarts a bit more 2020-06-05 07:31:39 -04:00
8814fc0147 use const char * for compatibility with std::string.c_str() 2020-06-05 07:31:02 -04:00
3e289bbc5e fixup whitespace 2020-06-04 22:37:32 -04:00
0ee1393955 fix typo 2020-06-04 22:17:50 -04:00
48b7b7d722 fix up change_box and displace_atoms lost atoms error message 2020-06-04 22:09:40 -04:00
923e740872 get rid of more BIGINT_FORMAT macros 2020-06-04 22:07:47 -04:00
c02c352ca2 use {fmt} to write out atomic data 2020-06-04 21:56:00 -04:00
439eee3b86 get rid of BIGINT_FORMAT and use std::string.replace() to expand time step in data and restart file names 2020-06-04 21:38:00 -04:00
54a8b4e08b more local buffers removed and file error status added. 2020-06-04 20:14:19 -04:00
4a6d3bc0e0 Move common potentials opening code to utils 2020-06-04 17:18:28 -04:00
62ee8d41f3 get rid of local buffers and snprinf() 2020-06-04 16:41:24 -04:00
7ab65c05da Simplify Pair COMB3 2020-06-04 16:29:15 -04:00
8689b31bca Add convenience method next_values 2020-06-04 16:27:27 -04:00
57821c7bea Add missing error message 2020-06-04 16:26:22 -04:00
e5263e502d Fix bug in next_dvector
It did not ignore comment lines
2020-06-04 16:24:48 -04:00
6c41c2f69d Make Tokenizers movable 2020-06-04 16:23:46 -04:00
4b58e33b1e remove local buffer for error message in Force class 2020-06-04 15:24:10 -04:00
ad15385f4c convert code in Info to use {fmt} and string 2020-06-04 15:21:57 -04:00
b27ef02bc2 no local buffers and snprintf() in a bunch of style creation functions 2020-06-04 14:36:56 -04:00
d9345a1652 Update Pair BOP 2020-06-04 14:36:25 -04:00
c22aee142d remove unused variable 2020-06-04 13:31:30 -04:00
2777d37a61 remove local buffers and snprintf() for file open error messages. 2020-06-04 13:30:44 -04:00
47888b587a add convenience function to get the output of strerror(errno) as c++ string 2020-06-04 12:01:02 -04:00
b2c4cce826 Update PairAirebo 2020-06-04 11:31:35 -04:00
481d3cb219 avoid using a local buffer and snprintf() 2020-06-04 11:21:25 -04:00
34ff7aa1fe Add convenience functions to PotentialFileReader 2020-06-04 11:18:33 -04:00
9291d2a9d7 Simplify count_words, add trim_and_count_words
The original count_words function (before it was put into utils::) also trimmed
comments. For compatibility this behaviour was retained at first. However, due
to the name the trimming is not immediatly apparent and many times not
wanted.

Therefore, this commit replaces count_words with an implementation that
just does what it says. If a comment should be trimmed there is a
trim_comment function. For convenience, a trim_and_count_words function was
added and is now used where the old behaviour was needed.
2020-06-04 11:13:37 -04:00
75e4cff44a simplify communication cutoff warnings 2020-06-04 11:13:21 -04:00
98f8b9632d avoid division by zero when reading tersoff potentials with powern == 0.0 2020-06-04 11:01:56 -04:00
97e69abcda get rid of snprintf() and local buffers in atom style creation 2020-06-04 10:45:24 -04:00
aab4bc8ac2 update fix restrain to use {fmt} and be 64-bit atom id compatible 2020-06-03 23:43:54 -04:00
00fd82016c simplify Domain::print_box() 2020-06-03 22:52:49 -04:00
fc216edf10 simplify create/delete_atoms/bonds 2020-06-03 22:36:51 -04:00
ef190962b8 simplify deprecated styles 2020-06-03 22:14:38 -04:00
c0fb794848 update load balancing output to use utils::logmesg() and {fmt} 2020-06-03 21:21:58 -04:00
9297211b06 fix style issue 2020-06-03 16:58:08 -04:00
dd11fb3964 remove .c_str() and simplify output in several places 2020-06-03 16:37:30 -04:00
9f3f53cc6b convert Error class to accept 'const std::string &' instead of 'const char *' 2020-06-03 15:43:05 -04:00
3c6ce73ccf Remove unused define 2020-06-03 15:10:22 -04:00
1247096680 Add missing OMP version of Pair Tersoff ZBL 2020-06-03 15:09:33 -04:00
98e2e34a36 fix division by zero issue in pair style bop 2020-06-03 14:12:42 -04:00
c81aca3509 Update fix_eco_force.h 2020-06-03 19:48:22 +02:00
df11b2b3ad Update fix_eco_force.cpp 2020-06-03 19:47:28 +02:00
9e8ce240a0 Merge pull request #2124 from sachu92/fix_controller_process_variable_fix
Parsing of process variable in fix controller corrected
2020-06-03 13:44:24 -04:00
08a6efe6b1 Update fix_eco_force.rst 2020-06-03 12:32:05 +02:00
aacb964888 Parsing of process variable in fix controller corrected 2020-06-03 11:25:45 +02:00
91e8469389 Update DihedralTable 2020-06-02 19:06:25 -04:00
185eeaea8b Add missing try-catch 2020-06-02 18:37:04 -04:00
18bb4bfdc2 Merge remote-tracking branch 'akohlmey/unit-test-updates' into refactor-table-reading 2020-06-02 18:24:23 -04:00
2fd3d21414 add tests for pair style table 2020-06-02 17:12:52 -04:00
5688fd41bb Remove trailing whitespace 2020-06-02 16:43:41 -04:00
352cea3957 Remove unused import 2020-06-02 16:23:36 -04:00
95e12ccb73 Update PairTable 2020-06-02 16:11:36 -04:00
a80c80c77e Add type information for table potentials 2020-06-02 16:08:49 -04:00
d6e062d0b9 Update BondTable 2020-06-02 15:42:23 -04:00
392a4f4e06 Update AngleTable 2020-06-02 15:28:46 -04:00
7658d05c73 Add TableFileReader 2020-06-02 15:11:53 -04:00
d478ad2ccb Refactor PotentialFileReader 2020-06-02 15:11:30 -04:00
24a0933e2a Refactor PotentialFileReader 2020-06-02 14:18:11 -04:00
60f17e7397 Add filesystem utils functions 2020-06-02 14:11:09 -04:00
65b4d87f99 Merge branch 'master' into user-cgdna 2020-06-02 19:04:33 +01:00
5c01c5c4af make internal name for test consistent with external name 2020-06-02 07:41:10 -04:00
def79f246a Update fix_eco_force.rst 2020-06-02 10:35:22 +02:00
b9cec30c2b add test for exceptions with incompatible format 2020-06-01 22:18:45 -04:00
53e3421b6f Merge branch 'master' into chem_snap 2020-06-01 17:22:05 -07:00
c6d04343e3 add tests for custom large integer type conversions 2020-06-01 19:09:27 -04:00
644ef3da4c add LAMMPS copyright header 2020-06-01 19:08:59 -04:00
37e5df8680 Merge branch 'chem_snap' of https://github.com/charlessievers/lammps into chem_snap 2020-06-01 15:18:41 -07:00
e7e82cfb7c merge master into chemsnap, added chunksize 2020-06-01 14:56:37 -07:00
005fe9db8b add initial unit test for {fmt} testing only conversions frequently used by LAMMPS 2020-06-01 17:50:00 -04:00
886a950fd6 silence compiler warning in test programs 2020-06-01 17:49:05 -04:00
981cfd42f6 Merge pull request #2120 from lammps/next_lammps_version
Update version strings for the next patch release
2020-06-01 15:08:09 -04:00
5193ee7035 Merge pull request #2106 from jrgissing/bond/react-molecule-fragment-support
Bond/react: molecule fragment support
2020-06-01 14:42:14 -04:00
8b61b12921 Add missing initialization of potential_name 2020-06-01 13:53:36 -04:00
ff6675e4d8 Update docs for fix wall/gran and wall/gran/region 2020-06-01 12:00:27 -04:00
f5ea01e901 Clear wall/gran contacts before each calculation 2020-06-01 11:18:07 -04:00
711f875001 Added fix bond/create/angle code and docu 2020-06-01 15:45:40 +01:00
16eab647d4 Added fix bond/create/angle code and docu 2020-06-01 15:42:45 +01:00
1ca236da7e Merge pull request #2119 from akohlmey/more-test-files
More unit test files
2020-06-01 10:21:23 -04:00
b81826131b Merge branch 'master' into bond/react-molecule-fragment-support 2020-05-31 16:34:41 -04:00
09ce0d1198 rephrase to use more common term 2020-05-31 16:33:37 -04:00
e449cdf924 Merge pull request #2103 from lammps/add-fmt-lib
Use {fmt} in LAMMPS to simplify formatted output
2020-05-31 12:02:15 -04:00
acf280811a step version strings for next patch release 2020-05-31 11:14:50 -04:00
7ab55a868f remove unneeded justification marker 2020-05-31 10:45:32 -04:00
88cedc2784 add a bunch of tests for utils::strmatch() 2020-05-31 10:36:44 -04:00
4a21ad7b3d expand tests for valid and invalid numbers 2020-05-31 10:14:09 -04:00
f5be01e4f1 sync with header 2020-05-31 10:05:39 -04:00
89bffb2ee9 add extra parenthesis to indicate that assignment is intentional in logical expression 2020-05-31 10:05:22 -04:00
4f169e99e6 silence compiler warnings: const has no effect on return type 2020-05-31 09:49:22 -04:00
ee90796679 Merge branch 'master' into add-fmt-lib
# Conflicts:
#	src/lammps.cpp
#	src/utils.cpp
2020-05-31 09:45:54 -04:00
7ebad52727 add tests for a bunch of coulomb only pair styles 2020-05-31 09:26:54 -04:00
633b66d4c9 correct forces in single function and simplify a little 2020-05-31 09:26:26 -04:00
661b0ee8b2 cannot compare Pair::compute() vs. Pair::single for styles with coul/dsf or coul/wolf due to missing self energy 2020-05-31 09:25:50 -04:00
64b684eec3 add tests for a whole bunch of CHARMM pair styles 2020-05-31 08:34:25 -04:00
1493ae5c87 correct force calculation in lj/charmm/coul/msm/omp 2020-05-31 08:33:26 -04:00
a820b7d3fc fix bug in r-RESPA neighborlist setup for lj/charmmfsw/coul/long 2020-05-31 08:33:05 -04:00
f7a0f6671c fix factor 0.5 bug in lj/charmm/coul/charmm/implicit/omp 2020-05-31 07:19:36 -04:00
eb60b049fc add endpoint gradients for two bond tables 2020-05-30 21:49:42 -04:00
91272e7654 output endpoint gradient for some angle tabulations 2020-05-30 21:36:47 -04:00
bb8f6e94d3 Merge pull request #2113 from rbberger/tokenizer
Refactoring to reduce strtok usage
2020-05-30 21:13:12 -04:00
0f6e963058 add a whole bunch of angle style tests 2020-05-30 21:10:48 -04:00
69ba5ea9f0 use a smaller bond table 2020-05-30 21:05:03 -04:00
814082a23b Merge pull request #2105 from ndtrung81/rigid-nve-norot
Fixed an issue with fix rigid/nve for bodies with very small values of inertia moments
2020-05-30 19:49:08 -04:00
f33584cfb2 fix missing factor of 2 bug in single function 2020-05-30 18:37:54 -04:00
f4431d0525 remove dead code 2020-05-30 18:00:23 -04:00
bd4d4bc015 update bond/angle yaml files for changed equilibrium keyword syntax 2020-05-30 17:51:29 -04:00
1042e16423 change format for equilibrium values and update writer and reader code, so it will become compatible with class2 angles/dihedrals/impropers 2020-05-30 17:50:38 -04:00
07163a710a correct bond table coefficients to find the table file 2020-05-30 17:22:33 -04:00
e32409d32c add tests for most bond styles except FENE type bonds 2020-05-30 10:44:40 -04:00
1452e6dfca reduce displacements in single test for pair styles 2020-05-30 10:23:52 -04:00
4c0ce402c1 fix bug in bond style gromos/omp 2020-05-30 10:23:25 -04:00
fac897587f Checked for zero inertia moments in a simpler way, similar to what is done in mq_to_omega() 2020-05-30 07:42:34 -05:00
2b960d94ec Fix pair_comb3 2020-05-30 08:01:39 -04:00
1ec179e80a add a few more test inputs 2020-05-29 23:47:15 -04:00
43171052d5 fix multiple bugs in pair style tester for Pair::single() 2020-05-29 23:46:37 -04:00
8409e9d2be Merge pull request #2118 from akohlmey/pair-hybrid-better-check
Better argument parsing of pair style hybrid
2020-05-29 22:54:34 -04:00
549ffda4d8 implement better pair style name detection in pair style hybrid arguments 2020-05-29 20:52:21 -04:00
40cf106b8f Fix segfault when running with MPI 2020-05-29 19:57:47 -04:00
7a9590f007 More whitespace 2020-05-29 18:04:20 -04:00
636a1bffe3 Fix whitespace 2020-05-29 17:25:41 -04:00
447784212a Remove d0 in float numbers in ffield.comb 2020-05-29 17:14:41 -04:00
e4d6970ac1 Fix whitespace 2020-05-29 16:32:17 -04:00
8e1a6bc706 Update pair polymorphic 2020-05-29 16:12:19 -04:00
d173ea4ad9 Merge pull request #2114 from akohlmey/more-unittest-changes
More updates and corrections for unit tests
2020-05-29 15:33:30 -04:00
1375c154f9 Update pair eim 2020-05-29 14:58:04 -04:00
10b0d60709 Fix typo 2020-05-29 14:56:10 -04:00
c34501c137 Merge pull request #2116 from jdevemy/master
Test to avoid bad delete and Seg Fault
2020-05-29 11:34:14 -04:00
1984092135 Test to avoid bad delete and Seg Fault 2020-05-29 15:25:05 +02:00
2a4bd9ef53 small tweaks and documentation update to coverage cleaning targets 2020-05-29 08:33:34 -04:00
7bcf50b129 mention reset_coverage data 2020-05-29 08:26:26 -04:00
c2ab177c3a add some explanations and figures for code coverage 2020-05-29 08:24:05 -04:00
30020594df add custom target to remove/reset collected coverage data 2020-05-29 08:23:25 -04:00
0c503ab122 Move coverage html into folder 2020-05-29 08:23:08 -04:00
99c0c1ace1 simplify parsing of equilibrium data 2020-05-29 08:22:34 -04:00
7d62fd5106 remove debug code 2020-05-29 08:22:23 -04:00
797ba373c4 simplify reading key/value pairs from string 2020-05-28 22:38:23 -04:00
08ee1cb4fa add single test to angle_style, add support for equilibrium data 2020-05-28 22:38:07 -04:00
47e4da4903 add support for writing/reading equilibrium bond/angle data 2020-05-28 22:20:43 -04:00
6ed4103365 synchronize flow of control and formatting between pair_style, bond_style and angle_style 2020-05-28 21:11:38 -04:00
9fc6abb2ef add tests for pair style polymorphic 2020-05-28 20:43:26 -04:00
5a4bbcc37a Update pair vashishta 2020-05-28 16:17:15 -04:00
cadc374e0b Update pair nb3b harmonic 2020-05-28 16:05:56 -04:00
e206647717 Update pair gw zbl 2020-05-28 15:56:36 -04:00
607581e7f3 Use correct error function 2020-05-28 15:53:33 -04:00
2632d30970 Update pair gw 2020-05-28 15:44:53 -04:00
7d61fbc68b Update pair adp 2020-05-28 15:08:48 -04:00
5bdc3e9f84 Remove unused PairEAM::grab 2020-05-28 14:37:52 -04:00
2b9ab58971 Update accelerator pair eam alloy 2020-05-28 14:37:27 -04:00
903a73d2c7 Update accelerator pair eam fs 2020-05-28 14:26:42 -04:00
8e46c53d57 Update fix_eco_force.h 2020-05-28 19:19:54 +02:00
fac7b864fc Update pair eam alloy 2020-05-28 12:54:14 -04:00
e08404f53c Indentation 2020-05-28 12:53:32 -04:00
e8ee1df993 Update pair eam cd 2020-05-28 12:35:02 -04:00
0dc05698f3 Update pair eam fs 2020-05-28 12:20:54 -04:00
49a40f5006 Update pair eam 2020-05-28 11:35:24 -04:00
e7909f4598 Remove unused define 2020-05-28 10:36:38 -04:00
f5d8417d96 Update pair tersoff zbl 2020-05-28 10:36:20 -04:00
c0324e55ad Update pair tersoff mod c 2020-05-28 10:06:43 -04:00
d3e160f3d0 tweak epsilon for gcc 10 2020-05-28 10:00:13 -04:00
a4db35e15d Update pair tersoff mod 2020-05-28 09:56:54 -04:00
8329a5498b Move NPARAMS_PER_LINE to parent classes 2020-05-28 09:48:34 -04:00
1889b165dc Merge branch 'tokenizer' of github.com:rbberger/lammps into tokenizer 2020-05-28 09:01:29 -04:00
2eaf710488 Hide stdout during tests 2020-05-28 08:01:54 -04:00
98b0619c3c ECO Driving force
adds an energy to each atom depending on the surrounding crystal orientation, in order to drive grain boundaries
2020-05-28 13:51:56 +02:00
2710a22574 Merge branch 'master' into tokenizer 2020-05-28 07:33:10 -04:00
51c632acd4 increase code coverage for pair_eam_cd.cpp 2020-05-28 06:25:35 -04:00
245f949e12 functions theta(), theta_mod(), and cutoff() are never used in pair style bop 2020-05-28 06:20:33 -04:00
e0ee0986fd tweak pair style bop unit tests to increase code coverage 2020-05-28 06:20:22 -04:00
b0f6eafac8 minor doc clarification 2020-05-27 23:37:35 -06:00
db13dff499 minor efficiency correction 2020-05-27 23:32:55 -06:00
315463e65f Merge pull request #2108 from akohlmey/more-pair-style-tests
Add unit tests for manybody pair styles
2020-05-27 18:48:22 -04:00
69b8635125 Merge pull request #2111 from akohlmey/collected-small-changes
Collected small changes and fixes for the next patch release
2020-05-27 18:35:11 -04:00
c47cbe5f34 Merge pull request #2110 from yafshar/kim
Explicitly set the pValue pointer to NULL.
2020-05-27 18:25:36 -04:00
9bc03034ef add some initial documentation about the included tests 2020-05-27 18:02:32 -04:00
c22bbecb58 Update pair tersoff 2020-05-27 16:49:36 -04:00
013756bfa7 add tests for AIREBO/REBO family of potentials 2020-05-27 16:37:36 -04:00
78ad33eb2e USER-INTEL tweaks for REBO family. will have to file bug reports at some point. 2020-05-27 16:37:05 -04:00
dddc34e214 Merge remote-tracking branch 'akohlmey/more-pair-style-tests' into tokenizer 2020-05-27 16:32:52 -04:00
a6d2ae2ee0 implement restart_reset flag for fixes in restart_global list 2020-05-27 12:44:05 -05:00
a1216c4fb2 remove unused variable definition 2020-05-27 13:35:17 -04:00
9142d4893d make sure we compile and link against mpi_stubs when BUILD_MPI is disabled 2020-05-27 13:35:07 -04:00
477a7125c9 Update PairComb and PairComb3 2020-05-27 13:15:19 -04:00
507064d45d Add Tersoff potential file read test 2020-05-27 13:13:50 -04:00
477e18b789 update makefiles for conventional build to always build a new static library 2020-05-27 13:09:42 -04:00
68e2c0bca8 Correct next_line in PotentialFileReader 2020-05-27 13:03:17 -04:00
6d339c8b03 Add unit tests for PotentialFileReader 2020-05-27 13:02:39 -04:00
caa43c7ed6 Merge remote-tracking branch 'akohlmey/more-pair-style-tests' into tokenizer 2020-05-27 12:59:32 -04:00
e2765a5c49 silence compiler warnings about unused arguments and variables and alike 2020-05-27 12:55:59 -04:00
bb57e90a27 add test for tabulated manybody styles 2020-05-27 12:31:19 -04:00
efbf9807d1 tests for MANYBODY almost complete 2020-05-27 10:59:12 -04:00
7c9ad91d8f fix bug in pair style tersoff/zbl/omp 2020-05-27 10:53:29 -04:00
4d237f6640 Explicitly set the pValue pointer to NULL.
PyTuple_SetItem “steals” a reference to pValue, but
does not set it to NULL after dereferencing it. It
causes segmentation fault when running lammps on some
systems and on multiple processors since it is trying
to decrement the reference count for an object which
does not exist.
2020-05-27 09:29:18 -05:00
3415ccd60d Merge branch 'more-pair-style-tests' into tokenizer 2020-05-27 09:37:22 -04:00
b5b66d0e78 tweak bop test to run faster 2020-05-27 08:50:20 -04:00
51e3cba0ba tweak error margins to pass with gcc 9.x plus Release setting 2020-05-27 06:59:58 -04:00
66e34f541c four more 2020-05-27 06:43:37 -04:00
1930a8fd00 make some more use of {fmt} in lammps.cpp 2020-05-27 05:29:42 -04:00
dd61ac80f7 simplify lammps.cpp using {fmt} and utils::logmesg() 2020-05-27 04:52:21 -04:00
b208e39ba7 remove obsolete c++98 workaround warning 2020-05-27 04:30:12 -04:00
29bd22a7ea add tests for eam/cd and eim 2020-05-26 21:08:39 -04:00
7f699e9233 fix verbosity handling issue in pair style tests 2020-05-26 21:08:26 -04:00
2e3f03f9ca remove pair style eam/cd/omp which seems broken beyond repair 2020-05-26 20:55:57 -04:00
e01e72cc8e Formatting 2020-05-26 20:29:09 -04:00
5e4ce8d03c Use Error::one in PotentialFileReader 2020-05-26 20:27:16 -04:00
13942a4d20 Use PotentialFileReader in PairComb 2020-05-26 20:23:28 -04:00
c302c0bca2 Add PotentialFileReader and use it in PairSW 2020-05-26 20:10:48 -04:00
541ab46e97 add tests for comb and comb3 2020-05-26 19:58:24 -04:00
ff3ebd4f6a fix two memory allocation/deallocation bugs in pair style comb3 2020-05-26 19:56:28 -04:00
151d1fb42b cosmetic updates 2020-05-26 19:55:54 -04:00
f1685afaa7 correct logic and also skip for USER-OMP 2020-05-26 18:42:47 -04:00
c91cad5155 add test for bop 2020-05-26 18:36:33 -04:00
0f8ff07da2 skip over newton_pair == off tests if newton_pair is forced to be on 2020-05-26 18:36:22 -04:00
dff78c19aa add tests for pair styles adp, atm, sw and tersoff and new data/input 2020-05-26 18:22:21 -04:00
74249380ec Add count method to ValueTokenizer 2020-05-26 16:30:46 -04:00
4a2ddb2c5e restore required header 2020-05-26 15:22:03 -04:00
b5b71bbb92 (re-)add example uses of {fmt} 2020-05-26 15:16:35 -04:00
56cb761b04 add fmtlib as copy. too many complications from keeping it in a separate dir. 2020-05-26 15:15:53 -04:00
5d6c18dbed one more correction for cmake --build 2020-05-26 12:29:03 -04:00
31a3e84950 correct documentation about cmake --build with targets 2020-05-26 12:26:44 -04:00
bc5c267630 Reverted to using a threshold much smaller than 1e-6 for zero inertia moments 2020-05-25 23:37:49 -05:00
042cfc521b cmake: allow to overwrite GTest URL for offline machines 2020-05-24 19:38:19 -06:00
18320ded89 image correction for fragment location 2020-05-24 14:47:50 -06:00
375fb4b314 bond/react: change 'general name' for method
and update contact info
2020-05-23 23:32:49 -06:00
faec8ac2be correctly update dihedral constraint 2020-05-23 23:22:56 -06:00
60e0a8a6a8 Update fix_bond_react.rst 2020-05-23 23:12:16 -06:00
4250def29a dihedral constraint: fragment support 2020-05-23 22:58:37 -06:00
093f981719 Improved the way body inertia moments are checked if they are zero when updating body quaterions in fix rigid/nve 2020-05-23 23:52:00 -05:00
74d58778b4 angle constraint: fragment support 2020-05-23 22:29:14 -06:00
a64a9c1253 distance constraint: fragment support 2020-05-23 22:13:20 -06:00
6d11515ad0 scale factors in constructor only. Issue with successive fresh runs 2020-05-22 14:35:32 -05:00
1add74b8f7 save diameter and charge scale for restart. Need a switch te default values to 1 during init 2020-05-22 14:04:51 -05:00
5e3fe19756 Merge pull request #2101 from rbberger/unittest_compilation_bugfix
Make sure include directories are passed to test binaries
2020-05-21 15:45:05 -04:00
73b537f6c3 Make sure include directories are passed to test binaries 2020-05-21 15:06:08 -04:00
8de046270e Merge pull request #2100 from akohlmey/respa-related-fixes-and-unittest
Add basic unit test for r-RESPA and some related bugfixes
2020-05-21 13:09:37 -04:00
8e92530e79 add code owners for unit tests 2020-05-21 11:34:15 -04:00
4f44159d56 add a test for r-RESPA (only with newton on and for plain styles for now) 2020-05-21 11:17:49 -04:00
0788a8ee4f only collect the per-atom data specific to this test to compare against total pe. 2020-05-21 11:06:11 -04:00
799b676f89 must skip corresponding per-atom data accumulation if compute_flag for pair or kspace is 0 2020-05-21 11:05:16 -04:00
2371db3242 add missing "reciprocal" 2020-05-21 07:41:07 -04:00
2dad3cbb2f update false positives list for time units correction to the docs 2020-05-21 01:37:11 -04:00
b8544de37b tweak error margin 2020-05-21 01:30:04 -04:00
f9e57392f3 properly honor verbose/no-verbose run flag 2020-05-21 01:14:02 -04:00
4eca3c46a6 fix bug that messes up r-RESPA from some strange reason. 2020-05-21 01:13:48 -04:00
e784afd60f use proper units (fmsec -> fs, psec -> ps and so on) 2020-05-21 01:13:15 -04:00
293bfa0485 fix typo 2020-05-21 01:13:03 -04:00
4868f5fdfc update 2020-05-20 22:04:00 -04:00
3d567c14ef Revert changes to be more C-like for Steve 2020-05-20 18:00:01 -04:00
7ac0f869ef Add ValueTokenizer 2020-05-20 15:53:50 -04:00
46239e4577 Add utils::is_double and utils::is_integer 2020-05-20 15:53:41 -04:00
9e3759d0fc Add missing newlines 2020-05-20 15:53:29 -04:00
4a2d3e95cb Replace Atom::count_words with utils::count_words 2020-05-20 15:53:19 -04:00
db46521d64 Add utils::count_words and utils::trim_comment 2020-05-20 15:53:08 -04:00
807130c771 Replace AtomVec::tokenize and use Tokenizer 2020-05-20 15:50:10 -04:00
d41927b056 Add Tokenizer class 2020-05-20 15:49:02 -04:00
8691579def Merge pull request #2098 from lammps/unittest
Add first part of an integrated unit test framework
2020-05-20 15:44:52 -04:00
5281dea651 Merge pull request #2095 from stanmoore1/kk_snap_beta
Fix redundant computation in Kokkos Pair SNAP on GPUs
2020-05-20 15:30:17 -04:00
8bc2c4748c add option to test main program to override the value of the INPUT_FOLDER variable 2020-05-20 15:23:32 -04:00
917b7dd4fa move definition of the INPUT_FOLDER variable from header to implementation file 2020-05-20 15:22:43 -04:00
58ca1dcf8e Merge pull request #2094 from akohlmey/collected-small-changes
Collected small changes and bug fixes for the next patch release
2020-05-20 14:33:34 -04:00
c50bd25d42 Merge pull request #2093 from junghans/lammps_cleanup
remove fftw_cleanup() from main()
2020-05-20 14:26:41 -04:00
2536076ce9 cosmetic changes for consistent source formatting 2020-05-20 07:40:37 -04:00
2712a20f91 build common unit test sources into a static library and link with it 2020-05-20 07:32:32 -04:00
76fb797264 Simplify tests 2020-05-20 04:12:48 -04:00
5533b9233f Fix indentation 2020-05-20 02:48:02 -04:00
ad6ae7317e Use std::make_pair 2020-05-20 02:45:16 -04:00
34456294dd Cleanup 2020-05-20 02:03:00 -04:00
46e0c8b6b7 Remove duplicated read_yaml_file function 2020-05-20 01:32:50 -04:00
73e766b933 Remove another unneeded class 2020-05-20 01:30:34 -04:00
35f7aa810d update 2020-05-20 00:33:36 -04:00
50d4cf210c Remove unnecessary classes 2020-05-19 23:37:11 -04:00
bd2d74b2cf update 2020-05-19 23:26:23 -04:00
bddd6d5e84 update 2020-05-19 23:19:49 -04:00
c0acb3a438 Remove multiple definitions of STRINGIFY 2020-05-19 23:15:22 -04:00
c04a71a239 add unit test framework for pair, bond, angle styles from progguide branch 2020-05-19 22:24:31 -04:00
1517daeaed add support for extracting r0 array to bond style zero 2020-05-19 21:54:50 -04:00
16ce10aefc the first argument to Bond::extract() should be const char * not char *. 2020-05-19 21:54:31 -04:00
5827f69da5 OpenMPI's "sm" transport layer has gone from some newer versions. use "tcp" as lowest common denominator 2020-05-19 20:25:53 -04:00
03419b398a scale diameter and charge incrementally without using fix store. Corrects bug of fix store array accessed out of bounds 2020-05-19 18:28:18 -05:00
e1362e9a61 Correct ghost atom access out of bounds bug in fix adapt 2020-05-19 16:55:25 -05:00
48a9e0d732 consolidate setting CMake policy CMP0074 into main cmake file 2020-05-19 15:20:41 -04:00
16db223d03 update test for whether to set CMake policy CMP0074 is needed. 2020-05-19 11:53:47 -04:00
ffaa77af6b reintroduce bugfix for bessel function distributed random numbers 2020-05-19 09:02:17 -04:00
4ac7a26fe1 add support for extracting r0 array to bond style zero 2020-05-18 19:37:54 -04:00
ed43c1e22b Merge branch 'master' into feature-cnt 2020-05-18 18:23:16 -04:00
6b1dbe2393 the first argument to Bond::extract() should be const char * not char *. 2020-05-18 18:15:10 -04:00
93fe33553a need to set CMake policy CMP0074 to NEW behavior also for finding TBB Malloc 2020-05-18 17:50:28 -04:00
48fa824a32 Merge pull request #5 from lammps/master
update to the current state
2020-05-18 17:33:40 -04:00
e26be18b1e update 2020-05-18 17:28:48 -04:00
8395ec9e43 avoid segfault with eam/intel when using it with a hybrid pair style 2020-05-18 14:31:57 -04:00
c67ca88b04 Fix redundant computation in SNAP on GPUs 2020-05-18 08:42:30 -07:00
9ed2824de8 add missing coulomb tabulation to pair style lj/class2/coul/long 2020-05-15 22:14:08 -04:00
dc74fac4d3 silence compiler warning 2020-05-15 20:04:49 -04:00
fa7319e626 drop fftw_cleanup() completely 2020-05-15 16:57:44 -06:00
b1ee9ad1fe Merge pull request #2091 from stanmoore1/kk_summit
Rename Kokkos Makefile
2020-05-15 17:39:53 -04:00
d39457e46e Merge pull request #2092 from lammps/omega-angmom
Initialize omega and angmom when reading a data file
2020-05-15 17:20:54 -04:00
6f0a56c176 cmake: fftw is now a private dep 2020-05-15 13:42:51 -06:00
58b304be62 move fftw_cleanup() into LAMMPS::cleanup() 2020-05-15 13:30:55 -06:00
f1a9eab5da initialze omega and angmom when read data file 2020-05-15 13:07:34 -06:00
1d52e7f243 Rename Kokkos Makefile 2020-05-15 12:19:16 -06:00
37442ca5cf fix bug in USER-OMP with "pair_modify compute no" and "kspace_modify compute no" 2020-05-15 08:06:23 -04:00
e36d2ce3e6 Do not use -ffast-math by default. Too large a chance of miscompiled code. 2020-05-14 20:48:43 -04:00
87c34fb144 dihedral base class did not initialize suffix_flag member. 2020-05-14 20:48:21 -04:00
20ad924a54 Merge pull request #2082 from stanmoore1/kk_bigint
Fix 32-bit integer overflow in Kokkos neighlist build on GPUs
2020-05-11 20:55:14 -04:00
040cbe378c Merge pull request #2080 from akohlmey/collected-small-changes
Collected small changes for the next patch release
2020-05-11 20:37:59 -04:00
3d0186987d simplify 2020-05-11 18:31:07 -04:00
a6cfe8f642 update Kokkos related documentation about JIT compilation and UVM. 2020-05-11 18:07:51 -04:00
af1aa03446 Merge pull request #2074 from akohlmey/singularity-update
Updates for singularity definition files
2020-05-11 17:44:14 -04:00
b1ac51f721 Fix 32-bit integer overflow in Kokkos neighlist build 2020-05-11 15:11:24 -06:00
9b99ad271f Adding new ptemp keyword to fix nh 2020-05-11 14:34:00 -06:00
23c55b0046 fix "use of class after delete" bug 2020-05-11 16:23:04 -04:00
0ab3ebbac0 improve readability 2020-05-11 13:31:47 -04:00
822c7c5ca1 elimitate nthreads member, change threads from int to bool and determine number of threads dynamically
this fixes #2081
2020-05-11 10:57:27 -04:00
8228cc8987 Merge branch 'collected-small-changes' of github.com:akohlmey/lammps into collected-small-changes
# Conflicts:
#	src/atom_vec.cpp
2020-05-10 14:09:31 -04:00
6e53608789 a new communicator should have a different number than the old 2020-05-10 14:08:54 -04:00
4ee5eee7cb don't use C++ style comments in C code 2020-05-10 14:08:06 -04:00
afd769314b define _noopt macro with -D_FORTIFY_SOURCE to be empty to avoid false positives 2020-05-10 14:06:56 -04:00
987bff27d4 fix issues in AtomVec refactoring detected by compiler warnings 2020-05-10 14:05:32 -04:00
873a638cc3 fix issues in AtomVec refactoring detected by compiler warnings 2020-05-09 19:45:28 -04:00
b799e44e5c Merge pull request #2077 from rbberger/cmake-fixes
Fix issue when generating lmpgitversion.h
2020-05-08 16:57:33 -04:00
cbd4ce5130 Use absolute path to LAMMPS_DIR for collecting git info 2020-05-08 16:04:55 -04:00
06737ce7a7 Merge pull request #1788 from lammps/atomvec-custom
Refactoring of AtomVec class
2020-05-08 15:18:11 -04:00
6b7e0df7f2 Merge pull request #2073 from ndtrung81/gpu-triclinic
GPU package pair styles to support neighbor list builds on the GPU with triclinic boxes
2020-05-08 14:29:55 -04:00
366d3fe249 update .gitignore and Purge.list 2020-05-08 14:09:59 -04:00
9004b47251 remove trailing whitespace 2020-05-08 01:33:16 -04:00
eefeaf4d25 make OpenMPI only use shared memory comm by default and silence some warnings 2020-05-07 18:15:57 -04:00
18c77db8c3 Add Kokkos vel methods 2020-05-07 15:16:17 -06:00
095801e1d6 Merge pull request #2071 from wmbrownIntel/wmb_mf_cleanup
Partial Cleanup of Conventional Build Makefiles.
2020-05-07 17:02:28 -04:00
d7650e8e02 no need to include googletest libs, we download and compile internally 2020-05-07 17:02:04 -04:00
5db1e4fe8d Initialize variables since Kokkos doesn't call setup_fields 2020-05-07 13:19:12 -06:00
3b77546eb9 Merge pull request #2069 from junghans/latte_v1.2.2
latte: bump to v1.2.2
2020-05-07 14:27:19 -04:00
5fa7e138ea Merge pull request #2070 from junghans/kokkos_v3.1.01
cmake: bump kokkos to v3.1.01
2020-05-07 14:16:56 -04:00
d69009ac45 Fix pointer delete issue with Kokkos package 2020-05-07 11:10:09 -06:00
cc18177153 Whitespace cleanup 2020-05-07 10:46:32 -06:00
3a23a97f64 Merge branch 'atomvec-custom' of github.com:lammps/lammps into atomvec-custom 2020-05-07 10:42:50 -06:00
71149768c6 fix atom_vec_hybrid bug 2020-05-07 10:42:40 -06:00
2b9a1a6982 Fix Kokkos runtime issue with special bonds 2020-05-07 10:35:08 -06:00
69a6a8e064 pull in kokkos-3.1.01 2020-05-07 10:22:42 -06:00
8ed5829d32 Merge branch 'atomvec-custom' of github.com:lammps/lammps into atomvec-custom 2020-05-06 16:25:22 -06:00
25632992f4 updates to USER-SPH example scripts 2020-05-06 16:25:07 -06:00
8301c7a9c6 Merge branch 'master' of ssh://github.com/lammps/lammps into atomvec-custom 2020-05-06 15:53:21 -06:00
7d9091cacc Add back in old hybrid functions, needed by Kokkos package 2020-05-06 15:49:44 -06:00
9e7765064c Merge branch 'atomvec-custom' of github.com:lammps/lammps into atomvec-custom 2020-05-06 15:28:41 -06:00
1225f7d1e0 small changes to examples scripts for regression purposes 2020-05-06 15:28:27 -06:00
801144d2dc make rbberger and akohlmey owner of the singularity defition files 2020-05-06 15:16:21 -04:00
4dce25d89e update some defitions files and also include hack to indicate image type in prompt 2020-05-06 15:07:02 -04:00
bd87b112b5 Allowed pppm/gpu to fall back to pppm for triclinic boxes 2020-05-06 12:07:23 -05:00
229203bac0 Supported neighbor list builds for triclinic boxes on the GPU 2020-05-06 08:51:17 -05:00
db71b3b994 update singularity image defitions to include gtest and libyaml. drop f30 2020-05-06 00:02:04 -04:00
14fb49c1cb Merge pull request #2068 from junghans/cmake_enable_chain.x
cmake: enable Fortran before checking for the compiler
2020-05-05 18:36:08 -04:00
66994562e6 cmake: bump kokkos to v3.1.01 2020-05-05 11:46:09 -06:00
fe62e1dbc9 latte: bump to v1.2.2 2020-05-05 10:51:11 -06:00
fc7b1dc4fd Merge branch 'cmake_enable_chain.x' of github.com:junghans/lammps into cmake_enable_chain.x 2020-05-05 11:27:40 -04:00
b933538dfa tweak tbbmalloc search path for intel 19.1 compiler 2020-05-05 11:27:19 -04:00
8a114fca97 cmake: include where it is used 2020-05-05 08:53:49 -06:00
9708b58939 check for fortran instead of directly enabling it 2020-05-05 10:41:18 -04:00
bcd50646b4 don't enable fortran if the generator does not support it. 2020-05-05 10:23:04 -04:00
b5af7da2c6 cmake: enable Fortran before checking for the compiler 2020-05-05 07:10:42 -06:00
ec0939751e Conventional Makefile cleanup. 2020-05-05 03:27:08 -07:00
260e6bafd5 Merge pull request #2064 from akohlmey/next_lammps_version
Update version strings for the next patch release
2020-05-04 19:43:12 -04:00
1329603184 Merge pull request #2019 from z-gong/viscosity
Fix and compute styles for calculating viscosity with periodic perturbation method
2020-05-04 17:42:31 -04:00
71ab9dc02b Merge pull request #2049 from rbberger/singularity_container_update
Singularity container update
2020-05-04 17:27:54 -04:00
6d0ef85671 Merge pull request #2055 from akohlmey/reaxc-runtime-adjust
Make MIN_HBONDS define for reax/c configurable via an input option
2020-05-04 10:28:13 -04:00
48262fd0a9 Merge pull request #2051 from akohlmey/collected-small-changes
Collected small changes for the next patch release
2020-05-04 10:06:45 -04:00
bed6ad4660 manually incorporate fixes for ave/correlate/long from PR #2066 2020-05-04 08:18:56 -04:00
7295e93e9b step version strings for the next patch release 2020-05-03 07:28:38 -04:00
61284891ee add a few more packages to the "most" preset 2020-05-03 05:04:07 -04:00
b12b69f6dc silence compiler warning 2020-05-03 04:55:35 -04:00
f1e1644fe1 fix typo that resulted in LAPACK not being properly linked with USER-ATC 2020-05-03 04:55:25 -04:00
d811fd0da7 skip building chain.x, if no Fortran compiler is available 2020-05-03 04:23:52 -04:00
fdb4ba51da add patch to VORONOI package external build so it will compile with BSD make 2020-05-03 04:04:02 -04:00
f5be3ccab4 add the check for MPI in USER-ATC at the correct location 2020-05-03 03:06:41 -04:00
863b50501c port MPI stubs workaround to USER-ATC 2020-05-03 02:49:52 -04:00
4bf9c47317 support diskfree option to "fix halt" also on BSD variants 2020-05-03 02:34:40 -04:00
e8d4cc424e use different header for alloca(3) on *BSD 2020-05-03 01:10:04 -04:00
fa2a6d7c6b replace legacy preprocessor tests for linux with POSIX compliant ones 2020-05-03 01:04:52 -04:00
d5b9948129 extend FreeBSD preprocessor checks to other BSD flavors 2020-05-03 01:00:01 -04:00
795e2cb133 recover compilation of fix imd on FreeBSD 2020-05-02 16:04:01 -04:00
2b542eacb7 add FreeBSD compatibility 2020-05-02 15:56:24 -04:00
613b8a7596 use static_cast<>() for casting NULL 2020-05-02 06:29:43 -04:00
c18efdbfa7 initialize pointers in order of definition 2020-05-02 06:29:12 -04:00
1418ec4ace make MIN_HBONDS define for reax/c configurable via an input option 2020-05-01 23:22:48 -04:00
8c52032b7a Merge pull request #1902 from stanmoore1/kk_compute_coord_atom
Add Kokkos version of compute coord/atom
2020-05-01 19:36:19 -04:00
53ac67f522 Merge pull request #2053 from stanmoore1/kk_remap_mpi
Allow Kokkos remap to turn off CUDA-aware MPI
2020-05-01 19:35:03 -04:00
91d871ec27 Merge pull request #2054 from stanmoore1/kk_cb2a9e4
Add change missed in #2004
2020-05-01 19:33:51 -04:00
af3e8b4564 Add change missed in cb2a9e4 2020-05-01 13:25:23 -06:00
ab1ecdccfc fix typo in comment 2020-05-01 14:34:35 -04:00
3ccab20e9e add new false positives 2020-05-01 14:34:27 -04:00
5cb9d12538 whitespace cleanup 2020-05-01 14:34:20 -04:00
f8226508f4 Allow Kokkos remap to turn off Cuda-aware MPI 2020-05-01 12:09:32 -06:00
8e32f623f1 reformatted table for per-atom fields 2020-05-01 11:48:08 -06:00
36bac80978 up-to-date 2020-05-01 18:42:00 +02:00
215ad7e0b9 allreaduce 2020-05-01 17:52:31 +02:00
a72f034b72 Merge branch 'atomvec-custom' of github.com:lammps/lammps into atomvec-custom 2020-05-01 09:48:11 -06:00
807b0fce7e fix broken doc page links to new fix sph commands 2020-05-01 09:48:01 -06:00
b96058eac3 gather/scatter custom 2020-05-01 16:53:07 +02:00
a64f70f0b5 removed broken soft link 2020-05-01 16:24:42 +02:00
2571e187d0 updated README, removed broken soft link to potential 2020-05-01 16:23:51 +02:00
64fdaaec3c citation update 2020-05-01 16:19:03 +02:00
2ff463cc6e fixed typo and checked make html 2020-05-01 16:11:25 +02:00
012c344622 updated documentation 2020-05-01 16:10:45 +02:00
0cf5636034 Add missing paramemter to compute_orientorder_atom docs 2020-05-01 08:01:29 -06:00
6eb9923c68 added documentation 2020-05-01 15:58:32 +02:00
4e0c835e9e fixed dimension in error message 2020-05-01 15:57:16 +02:00
6817355a41 Update docs 2020-05-01 07:53:41 -06:00
95e81c7e47 allowed 0/1 or no/yes 2020-05-01 14:52:48 +02:00
6659946de1 fix more warnins and 64-bit issues 2020-05-01 08:50:07 -04:00
4930389ea4 propagate bugfix in fix omp to OpenMP pragma 2020-05-01 08:38:36 -04:00
7c620f7514 removed redundant region check, made com/overdamped "yes" or "no" instead of 0/1 2020-05-01 14:36:06 +02:00
bad3becac3 set com and overdamped flags as keywords with defaults 1,0 2020-05-01 14:28:36 +02:00
79f074eb6a updated potential path in example 2020-05-01 14:27:33 +02:00
adc04f87f6 whitespace fixes 2020-05-01 08:24:24 -04:00
f9ba4b497f Use ccache on Ubuntu by default 2020-05-01 08:01:17 -04:00
feb6e10734 error messages 2020-05-01 13:53:24 +02:00
e708479782 error messages for fix pafi 2020-05-01 13:28:36 +02:00
d9e0bc5d94 Add missing packages for legacy build 2020-05-01 05:55:03 -04:00
71159c4af4 Made orientorder check safer 2020-04-30 21:39:37 -06:00
ffc96d6af6 Merge branch 'atomvec-custom' of github.com:lammps/lammps into atomvec-custom 2020-04-30 21:33:16 -06:00
907ffae7b4 add return 0 to atom_vec 2020-04-30 21:32:59 -06:00
e52fee0c56 fix omp uses desph 2020-04-30 21:27:24 -06:00
9dacbe5f46 two other dirs depend on changed esph and desph 2020-04-30 21:22:19 -06:00
89f119e8aa avoid segfaults when selecting a subset on MPI ranks that will not have any matching lattice positions to start with 2020-04-30 22:12:07 -04:00
d382db1c76 Merge pull request #2015 from jvita/fix-spline-meam-binning
Fix spline meam binning
2020-04-30 20:55:49 -04:00
25b6d98658 correct references and table format 2020-04-30 20:19:23 -04:00
8689b7a404 Merge branch 'master' into atomvec-custom 2020-04-30 20:09:23 -04:00
5e619b65f6 USER-SPH doc tweak 2020-04-30 17:08:05 -06:00
ec9b7c787d more doc changes for USER-SPH 2020-04-30 16:52:32 -06:00
4eb4839f6d renaming of variables and command names in USER-SPH 2020-04-30 16:40:09 -06:00
814f45d756 Add missing symlink 2020-04-30 18:25:25 -04:00
5ec357adfc spelling errors 2020-04-30 15:06:59 -06:00
6913e3a6a4 Merge pull request #1760 from lammps/fix-dummy
added internal fix dummy command to enable more control of fix ordering
2020-04-30 14:46:22 -04:00
14322a9907 Allow compute_coord_atom to use Kokkos orientorder 2020-04-30 12:37:05 -06:00
dda5cb0967 typo in atom_vec.h 2020-04-30 12:02:49 -06:00
ac45befbb6 Pre-compute 1/h and store 2020-04-30 12:57:59 -05:00
ecd3652f61 update to current master 2020-04-30 11:57:17 -06:00
23c5384b47 Merge branch 'master' of https://github.com/lammps/lammps into kk_compute_coord_atom 2020-04-30 11:34:19 -06:00
6b8f26e8ad Merge pull request #2046 from stanmoore1/kk_cutneighsq
Fix rare issue in Kokkos neighlist
2020-04-30 13:00:51 -04:00
ae3c804cd2 Minor fix in doc 2020-04-30 19:00:37 +02:00
3ecaf0f336 Merge pull request #2047 from lammps/replica-doc-page
Clarifying AMD quote from review paper for 3 AMD methods in LAMMPS
2020-04-30 12:50:01 -04:00
0b02108ba1 add add check to refuse running with 2d systems and document it. 2020-04-30 12:46:16 -04:00
859f644481 make spellchecker and sphinx happy 2020-04-30 12:45:36 -04:00
5062d57ccb Merge branch 'master' into viscosity 2020-04-30 12:32:06 -04:00
c39b71cd1b Merge pull request #2048 from junghans/cmake_disable_static_lib_install
cmake: disable installing of static libs
2020-04-30 12:28:41 -04:00
26321d49c4 Update How-to viscosity and put the example together with other viscosity examples. 2020-04-30 17:05:01 +02:00
eba1a15616 Port changes to Kokkos package 2020-04-30 08:44:55 -06:00
88bf503451 Merge from master 2020-04-30 08:17:05 -06:00
002c49737f update definition for ubuntu20.04 2020-04-29 22:58:08 -04:00
696308a760 set cmake policy to honor HDF5_ROOT and NETCDF_ROOT. search for parallel NetCDF only with parallel builds 2020-04-29 22:39:33 -04:00
e97bf005cb include hdf5 and netcdf in more images 2020-04-29 22:36:33 -04:00
1adda03202 cmake: only install shared lib and friends 2020-04-29 18:06:33 -06:00
aad8659788 Reduce CUDA footprint in containers 2020-04-29 20:02:25 -04:00
600d357155 cmake: disable installing of static libs 2020-04-29 16:26:56 -06:00
18c63ade92 clarified AMD quote from review paper 2020-04-29 16:14:52 -06:00
633651fa56 Add valgrind, gdb to containers and clean caches 2020-04-29 17:32:19 -04:00
63a2f17410 Merge branch 'master' of https://github.com/lammps/lammps into kk_compute_coord_atom 2020-04-29 15:16:52 -06:00
910d91bc93 some more tweaks to the example 2020-04-29 17:15:46 -04:00
6cd1b45a49 recover compilation with -DLAMMPS_BIGBIG 2020-04-29 17:12:58 -04:00
1ad85980fb fix up include files 2020-04-29 17:12:43 -04:00
d3b88ab3e1 fix documentation translation issues 2020-04-29 17:12:30 -04:00
42d36e360e cosmetic change 2020-04-29 17:02:18 -04:00
8235c48f49 Avoid errors due to host Lmod in containers
These changes ensure that environment variables that are automatically passed
to the container don't interfere with Lmod inside of the container. The previous
implementation would not take care of sticky packages from the outside and Lmod
would try to reload them.

Note that Lmod defines the 'module' bash function, which doesn't propagate to
the final shell when using 'singularity shell'. If the 'module' command is needed
a login shell needs to be launched:

$ singularity exec <CONTAINER> bash -l
2020-04-29 17:01:55 -04:00
db631c941d fix minor memory leak 2020-04-29 16:51:43 -04:00
cc6b55515b add integration into manual and add dummy documentation 2020-04-29 16:51:30 -04:00
82b1fc717f Add missing python36 and hdf5-devel to CentOS containers 2020-04-29 16:46:22 -04:00
46739329c4 update PAFI example: remove unused data, replace potential with existing one, update logs 2020-04-29 16:41:08 -04:00
0588232a34 Fix rare issue in Kokkos neighlist 2020-04-29 14:29:18 -06:00
595bb30e14 Merge branch 'master' into user-pafi 2020-04-29 15:35:29 -04:00
5c2f0ecc65 Merge pull request #2045 from stanmoore1/kk_team_coul
Fix issue in Kokkos "team" energy
2020-04-29 15:32:45 -04:00
feed7302d5 Merge pull request #2044 from stanmoore1/kk_reax_full
Remove full neigh list option in Kokkos ReaxFF
2020-04-29 14:54:54 -04:00
e10d62c89f Fix energy tally issue 2020-04-29 10:06:09 -06:00
04388c26f8 Fix Kokkos view runtime issue 2020-04-29 10:05:47 -06:00
7508660d8a Merge pull request #2036 from stanmoore1/kk_dihedral_charmm
Fix issues in dihedral_charmm_kokkos
2020-04-29 10:24:32 -04:00
fe9e6736e1 Merge branch 'master' into kk_dihedral_charmm 2020-04-29 08:00:55 -06:00
910d00f500 Merge pull request #2041 from stanmoore1/kk_team_ev
Fix Kokkos issue and remove N2 neigh list option
2020-04-28 19:23:35 -04:00
17f7bf2fb9 Merge pull request #2035 from stanmoore1/kk_uvm
Fix UVM compile issues
2020-04-28 19:23:12 -04:00
e47dc6fec9 Merge pull request #2043 from ellio167/ubuntu-install-docs
Update ubuntu ppa install docs
2020-04-28 19:22:27 -04:00
a88364a2ea Tweak error message 2020-04-28 15:39:01 -06:00
754d9fabc6 Merge branch 'ubuntu-install-docs' of github.com:ellio167/lammps into ubuntu-install-docs 2020-04-28 17:27:49 -04:00
b3d8986603 list update kokkos flag 2020-04-28 17:27:23 -04:00
846146c9d4 correct minor formatting and markup issues 2020-04-28 17:23:16 -04:00
e9a777e63d Add explaination of potenentials directory behavior for lmp_daily 2020-04-28 16:16:28 -05:00
4bb5f99801 fix underline 2020-04-28 17:15:48 -04:00
fa0f10f2f5 Remove debug output 2020-04-28 15:15:26 -06:00
6ed2adcd31 Removed unused functions 2020-04-28 15:12:41 -06:00
681878aa24 Merge branch 'master' into viscosity 2020-04-28 17:11:04 -04:00
62cdc9d6f1 Remove full neigh list option in Kokkos ReaxFF 2020-04-28 15:08:30 -06:00
c6dc0cf8c5 flag commands and paths as literals. 2020-04-28 17:03:20 -04:00
3392dca7b8 fix typos in manual 2020-04-28 16:45:02 -04:00
87ca8a0627 Update ubuntu ppa install docs 2020-04-28 15:38:41 -05:00
f5a8d40a51 Merge pull request #1906 from stanmoore1/kk_copycpu
Add method to copy Kokkos neighbor list to CPU list
2020-04-28 15:34:05 -04:00
32f5fd2373 Comment cleanup 2020-04-28 10:39:31 -06:00
712b8668cb Fix Kokkos neighlist issue and remove N2 option 2020-04-28 10:33:10 -06:00
21cb0d394f Merge branch 'master' into kk_copycpu 2020-04-28 11:56:22 -04:00
2e07345cea Merge pull request #2023 from akohlmey/collected-small-changes
Collected small changes and bugfixes
2020-04-28 11:52:54 -04:00
7863dfa1d2 Merge pull request #2033 from stanmoore1/kk_stencil
Fix bug in Kokkos occasional neighlist build
2020-04-28 10:51:34 -04:00
8f9323a3d7 Merge pull request #2013 from wverestek/master
small modification to fix bond/react to allow equal style variables as probability input
2020-04-28 10:51:07 -04:00
ad47b64cb9 Merge pull request #65 from junghans/collected-small-changes
GPU.cmake: localize hackery
2020-04-28 10:49:39 -04:00
ef3e071067 GPU.cmake: localize hackery 2020-04-28 07:43:31 -06:00
672d593241 Merge pull request #64 from junghans/collected-small-changes
cmake: reenable CMAKE_TUNE_FLAGS check
2020-04-28 08:50:37 -04:00
24fe5bc187 cmake: reenable CMAKE_TUNE_FLAGS check 2020-04-28 06:03:34 -06:00
6be36196da explicitly include STUBS MPI headers for serial compile since we seem to pick up the OpenMP ones otherwise 2020-04-28 01:36:21 -04:00
705c10ef47 restore original command 2020-04-28 01:12:49 -04:00
867088dbd8 add packages to also allow a regular build not just cross-compilation 2020-04-28 01:12:31 -04:00
d931365e4e fix typos 2020-04-28 01:11:54 -04:00
d3017744a9 updates for building with hip 2020-04-28 00:39:11 -04:00
25d1ad7714 update HIP compilation makefile for updated legacy build 2020-04-27 23:18:25 -04:00
b362a06ca3 (temporarily) disable CMAKE_TUNE_FLAGS verification script code 2020-04-27 23:17:43 -04:00
dd5ebb0a81 add preset to compile with hcc 2020-04-27 22:30:17 -04:00
29d667721a tweak GPU.cmake so that hip_get_devices compiles and links 2020-04-27 22:29:41 -04:00
5006c2c329 Merge branch 'latte_super_build' of github.com:junghans/lammps into collected-small-changes 2020-04-27 21:19:45 -04:00
0b93b45f2a Fix issues in dihedral_charmm_kokkos 2020-04-27 15:55:15 -06:00
c828492dee Merge branch 'collected-small-changes' of github.com:akohlmey/lammps into collected-small-changes 2020-04-27 17:18:59 -04:00
edd708dbce fix command ordering issues with gpu image build 2020-04-27 17:17:33 -04:00
76d7699abe remove trailing whitespace 2020-04-27 16:58:43 -04:00
74e8505a1f Merge branch 'master' into collected-small-changes 2020-04-27 16:57:47 -04:00
2dd737e765 Fix UVM compile issues 2020-04-27 14:47:03 -06:00
b38e95f88c Merge pull request #1895 from stanmoore1/kk_compute_orientorder_atom
Add Kokkos version of compute orientorder/atom
2020-04-27 16:34:29 -04:00
0f28e0eb0f Merge pull request #2030 from lammps/revert-2018-cmake_kim-api_find
Revert "cmake: move kim-api detection to cmake config"
2020-04-27 16:16:55 -04:00
121b40ebaa Merge pull request #2026 from ndtrung81/ellipsoid-gpu-special-bonds
Fixed bugs with special bonds for ellipsoid gpu pair styles
2020-04-27 16:15:58 -04:00
d4c06a2e2a Merge pull request #2027 from junghans/cmake_clean_up_plumed
USER-PLUMED: remove unused defines
2020-04-27 16:12:58 -04:00
0a9bed0ca6 Merge branch 'cmake_clean_up_plumed' of github.com:junghans/lammps into collected-small-changes 2020-04-27 16:07:52 -04:00
7b79b31018 remove latex support from accelerator image definitions 2020-04-27 15:17:45 -04:00
1aaf3ee03f add new combined container for compiling with GPU support. 2020-04-27 15:14:02 -04:00
0338d57857 Merge branch 'kokkos_fix' of github.com:yafshar/lammps into collected-small-changes 2020-04-27 15:00:04 -04:00
f9b873db24 Merge pull request #2032 from akohlmey/change-box-image-flags
Reset image flag(s) when changing from periodic to non-periodic
2020-04-27 14:58:36 -04:00
437967bfd8 adding the standard header to prevent ‘NULL’ was not declared error 2020-04-27 12:49:03 -05:00
3ab797984b verified cmake compatibility 2020-04-27 18:21:42 +02:00
a4b3af7d95 Fix bug in Kokkos occasional neighlist build 2020-04-27 10:07:26 -06:00
97ac67840b corrections to headers 2020-04-27 17:40:09 +02:00
73ec2d8182 fix typo in MPI_Allreduce call. 2020-04-27 11:06:17 -04:00
b04cc115f3 document the image flag reset for switching boundaries 2020-04-27 10:51:53 -04:00
644f74c585 when changing boundaries from periodic to non-periodic, we need to reset the image flags for these dimensions to 0 2020-04-27 10:39:34 -04:00
a96f0af271 Merge branch 'kk_compute_orientorder_atom' of ssh://github.com/stanmoore1/lammps into kk_compute_coord_atom 2020-04-27 08:32:55 -06:00
ee9757b155 Add missing copymode flag statement 2020-04-27 08:31:56 -06:00
3028b028f0 Merge branch 'kk_compute_orientorder_atom' of ssh://github.com/stanmoore1/lammps into kk_compute_coord_atom 2020-04-27 08:14:52 -06:00
5de6224bd3 Fix logic error 2020-04-27 08:14:19 -06:00
f1aaad2b13 remove trailing whitespace 2020-04-27 09:54:05 -04:00
bc3a1187ae make behavior of comparing cutoff and long-range coulomb independent of order 2020-04-27 08:06:20 -04:00
d946c61789 re-indent code to better match LAMMPS conventions 2020-04-26 23:25:52 -04:00
d53e468ce0 do not mix c++ style and c-style comments 2020-04-26 22:50:24 -04:00
8fec14f593 Update fix_bond_react.rst 2020-04-26 13:08:40 -06:00
6baca04447 round up 'nevery' variable eval 2020-04-26 12:45:42 -06:00
281c105a34 KIM.cmake: add workaround for <cmake-3.12 2020-04-26 12:02:18 -06:00
d092b24c2e Revert "cmake: move kim-api detection to cmake config" 2020-04-26 11:56:48 -06:00
0b6e5be379 cosmetic edit to trigger new CI test runs 2020-04-26 00:25:07 -04:00
9a5b7141af move MPI compilation variable definitions workaround to MPI4WIN.cmake 2020-04-26 00:14:27 -04:00
a614242595 allow variable-input for Nevery, Rmin, Rmax keywords 2020-04-25 21:45:43 -06:00
e5360bb68a Merge remote-tracking branch 'github/cmake_latte_link_fix' into collected-small-changes 2020-04-25 23:07:58 -04:00
758a27c1e7 update MPI detection and handling of MPI to not automatically assume that a windows target means cross-compiling 2020-04-25 22:06:36 -04:00
7fd50045fe USER-PLUMED: remove unused defines 2020-04-25 10:16:58 -06:00
1295a9ef46 Fixed bugs with special bonds for ellipsoid gpu pair styles 2020-04-25 10:28:18 -05:00
5308b00c7b Update LATTE.cmake 2020-04-25 07:28:16 -06:00
3bebf017c0 Rename log.22Apr20.tiny_nylon.unstabilized.g++.4 to log.22Apr20.tiny_nylon.stabilized_variable_probability.g++.4 2020-04-25 15:05:32 +02:00
a6c3f2c0e3 Rename log.22Apr20.tiny_nylon.unstabilized.g++.1 to log.22Apr20.tiny_nylon.stabilized_variable_probability.g++.1 2020-04-25 15:04:46 +02:00
643ef2e2bc return of the data file 2020-04-24 22:59:20 -06:00
bac681b9dc cmake: fix linkage against external latte 2020-04-24 20:51:58 -06:00
1de3995598 rename src/MAKE/MINE/... to src/MAKE/MINE/.gitignore to avoid penalizing people downloading LAMMPS via git on windows 2020-04-24 21:26:11 -04:00
0a96a8c3a5 make check for running under hybrid/overlay compatible with suffix styles
also improve error message
2020-04-24 21:23:21 -04:00
72ff0dd87d Merge pull request #2004 from stanmoore1/kk_3.1
Update Kokkos library in LAMMPS to v3.1
2020-04-24 18:35:53 -04:00
5cbebddae6 Merge pull request #2006 from ndtrung81/body-doc-fix
Fixed the doc page for fix wall/body/polyhedron
2020-04-24 18:01:50 -04:00
3f8efed1fd Merge pull request #2010 from akohlmey/collected-small-fixes
Collected bug fixes and small updates
2020-04-24 17:44:49 -04:00
5855d334e6 Merge pull request #2014 from ellio167/kim_charge
Added changes to support SMs setting charges in kim_interactions
2020-04-24 17:13:58 -04:00
4dae4578ad Merge pull request #2018 from junghans/cmake_kim-api_find
cmake: move kim-api detection to cmake config
2020-04-24 16:55:48 -04:00
91d958faff Remove Kokkos deprecated code 2020-04-24 12:52:46 -06:00
756724c9e3 Merge branch 'kk_compute_orientorder_atom' of ssh://github.com/stanmoore1/lammps into kk_compute_coord_atom 2020-04-24 12:50:40 -06:00
261b826cfc Remove Kokkos deprecated code 2020-04-24 12:49:50 -06:00
700bb2e0f4 Merge branch 'master' of github.com:lammps/lammps into kk_copycpu 2020-04-24 12:33:05 -06:00
0545de5137 clean up comments in fix_accelerate_cos.h 2020-04-24 20:23:14 +02:00
85f1cb6a63 Merge branch 'kk_compute_orientorder_atom' of ssh://github.com/stanmoore1/lammps into kk_compute_coord_atom 2020-04-24 12:22:42 -06:00
cf702c4b1a fixed a type in README 2020-04-24 20:20:49 +02:00
9c081cf439 Update from master 2020-04-24 12:18:53 -06:00
4890c328d9 add comment to trigger jenkins rerun 2020-04-24 13:21:38 -04:00
08dc8e860e Merge pull request #2022 from junghans/github-template-comments
github templates: turn comments in real comments
2020-04-24 13:18:40 -04:00
e114a8d15b Revert accidental change 2020-04-24 10:14:31 -06:00
cb2a9e4329 Clear sharedsize for flat method 2020-04-24 10:10:22 -06:00
47b06cf541 github templates: turn comments in real comments 2020-04-24 09:51:13 -06:00
9266c74370 move fix_accelerate_cos and compute_viscosity_cos to USER-MISC 2020-04-24 15:30:20 +02:00
0bb41bf00b Add ouput for the example for USER-VISCOSITY package 2020-04-24 14:41:03 +02:00
a30d4a6c6f Add documents and minor fix for USER-VISCOSITY package 2020-04-24 14:41:03 +02:00
c7e4304ab6 add package and examples for viscosity calculation 2020-04-24 14:28:46 +02:00
7a366de0a9 Delete log.22Apr20.tiny_nylon.unstabilized.g++ 2020-04-24 09:39:11 +02:00
5a9cc9e380 updated log files 2020-04-24 09:35:32 +02:00
68dd6d0f19 cmake: move kim-api detection to cmake config 2020-04-23 09:20:38 -06:00
2fb71cfb62 Merge pull request #80 from jrgissing/master
import Andrew's PR into create_atoms branch
2020-04-22 22:36:20 -06:00
08b4159c6b Merge pull request #79 from lammps/master
rebase
2020-04-22 22:32:01 -06:00
251517127d Merge pull request #78 from lammps/master
rebase
2020-04-22 22:13:33 -06:00
1a286d5722 Fix repeat of same bug 2020-04-22 16:14:11 -05:00
623f03e322 cmake: add support for latte super-build 2020-04-22 14:21:34 -06:00
2493987875 Fix binning bug 2020-04-22 14:33:20 -05:00
fc10e885b2 make description of eflux as a variable less convoluted 2020-04-22 08:13:27 -04:00
73bf1874c5 update code owner entry for fix bond/react 2020-04-22 08:12:56 -04:00
e321719558 Merge branch 'master' of https://github.com/wverestek/lammps 2020-04-22 14:09:55 +02:00
34d73a3c67 wrong script. 2020-04-22 14:10:43 +02:00
1751a27ff6 removing example script from nylon melt and adding to tiny nylon 2020-04-22 14:07:11 +02:00
48ab70f9ee avoid segfault when using compute_scalar() on the initial step and no scaling has yet been done. 2020-04-22 07:30:06 -04:00
0288bb4b6b small modification to fix bond/react to allow equal style variables as probability o
On branch master
Your branch is up to date with 'origin/master'.

Changes to be committed:
	modified:   doc/src/fix_bond_react.rst
	new file:   examples/USER/reaction/nylon,6-6_melt/in.large_nylon_melt_variable_probability
	modified:   src/USER-REACTION/fix_bond_react.cpp
	modified:   src/USER-REACTION/fix_bond_react.h
2020-04-22 13:27:10 +02:00
5eccaecf9b use #include <cstdint> now that we require C++11 2020-04-21 19:31:57 -04:00
db4c6e4056 update include file conventions since we no longer require C++98 for LAMMPS core files 2020-04-21 19:31:18 -04:00
0f9d8efe69 state in external Kokkos error message the version 3.1 or later is required 2020-04-21 12:50:27 -04:00
ea31fc11a6 add more explicit note about lack of support for pair styles in compute centroid/stress/atom 2020-04-21 12:44:13 -04:00
9f923c51f8 update singularity definition files for ubuntu variants to enable more LAMMPS build options and features 2020-04-21 12:07:34 -04:00
3c144600a5 update Kokkos related documentation for Kokkos 3.1 and refactor build info a bit 2020-04-21 11:46:16 -04:00
f63893bd7d citation fix 2020-04-21 17:19:48 +02:00
1c1ff9623f check for compute at fix_init() 2020-04-21 15:07:15 +02:00
1670196bc1 c++ style headers 2020-04-21 15:00:00 +02:00
cbe6e0dcb2 small updates 2020-04-21 14:32:52 +02:00
2348d6db62 use HOSTARCH/HOST instead of CPUARCH/CPU to better distinguish from GPUARCH/GPU 2020-04-21 08:30:16 -04:00
729646d7b5 update table of Kokkos supported archs and indicate HOST/GPU designation 2020-04-21 08:27:00 -04:00
2ac7bfc9cf rephrase note about kernel JIT recompilation and Kepler vs. the rest compatibility 2020-04-21 08:26:01 -04:00
0711232e5b Merge pull request #2000 from akohlmey/polymorphic-update
Update for pair style polymorphic from Xiaowang Zhou
2020-04-20 17:14:47 -04:00
0dfb1329be we must not write out per-type pair cutoff when long-range LJ is enabled 2020-04-20 16:56:09 -04:00
1c15ba88f3 need to copy maxspecial and "extra" data to do a proper recreation 2020-04-20 15:27:30 -04:00
91153eaa1a Added changes to support SMs setting charges in kim_interactions 2020-04-20 13:15:25 -05:00
1cd5db683f typo.. 2020-04-20 19:59:26 +02:00
0f8669c51d updated_extract_atom 2020-04-20 19:55:29 +02:00
4da1ba749f removed changes to atom.cpp 2020-04-20 19:42:04 +02:00
1709bc3f83 cleaned makefile 2020-04-20 19:12:37 +02:00
b1bd0251a9 better example file 2020-04-20 18:32:44 +02:00
dcc074215d fix inconsistent memory allocate/free 2020-04-20 06:04:33 -04:00
8fa2092580 example folder 2020-04-20 10:20:53 +02:00
946cb27267 ignore 2020-04-20 10:20:17 +02:00
42203bbc35 fix two more typos 2020-04-19 16:37:52 -04:00
a7391d1e36 small corrections/updates for the polymorphic pair style docs 2020-04-18 10:14:38 -04:00
1599d98425 Fixed the doc page for fix wall/body/polyhedron 2020-04-17 13:33:47 -05:00
d3498591f3 Merge branch 'master' of github.com:lammps/lammps into kk_3.1 2020-04-17 12:01:32 -06:00
822c396e3a Work around Kokkos issue 2020-04-17 11:30:43 -06:00
0ea2eabbb2 start of clean up 2020-04-17 18:11:59 +02:00
6904e1e6ef Merge pull request #2 from tomswinburne/newfix
update
2020-04-17 16:39:28 +02:00
bddcc3519c update 2020-04-17 14:55:24 +02:00
5b31077cef Merge pull request #1 from tomswinburne/newfix
Newfix
2020-04-17 14:49:57 +02:00
ba66f05a04 some reformatting and minor cleanup of the documentation 2020-04-16 19:14:42 -04:00
42a59921f9 fix spelling issues 2020-04-16 19:04:26 -04:00
21e9db6bdf Merge branch 'master' into polymorphic-update 2020-04-16 18:18:41 -04:00
4fa0186b68 update docs to cleanly translate 2020-04-16 18:17:38 -04:00
0766350838 Merge pull request #2003 from stanmoore1/dpd_error
Remove unnecessary error check in USER-DPD fix rx
2020-04-16 16:49:29 -04:00
8c54507371 forward Kokkos library variables from CMake configuration for LAMMPS to the downloaded Kokkos library build 2020-04-16 16:46:27 -04:00
850bee2331 update KOKKOS.cmake for Kokkos 3.1. no more patch needed. 2020-04-16 15:39:53 -04:00
b3c7c1f93c utils.h is not used anymore 2020-04-16 15:13:21 -04:00
348118317c Update Kokkos docs 2020-04-16 12:36:43 -06:00
f8f69996eb Remove obsolete note 2020-04-16 11:49:03 -06:00
19ac94e9a3 remove @timmattox as a code owner of USER-DPD 2020-04-16 13:15:41 -04:00
ba8d043c7e Update Kokkos library in LAMMPS to v3.1 2020-04-16 09:06:08 -06:00
ca64c461ff Remove unnecessary error check in USER-DPD fix rx 2020-04-16 08:19:50 -06:00
fa6922a182 Merge pull request #1994 from akohlmey/next_lammps_version
Update version string for next patch release
2020-04-15 16:09:52 -04:00
bc3fe80b28 Merge pull request #1997 from giacomofiorin/lepton-windows-defines
Defines to build and link the Lepton library with MSVC
2020-04-15 15:56:48 -04:00
4c870be433 Merge pull request #1957 from david-castillo/restrain_lbound
add moving bond restraints and a lower bound only bond restraint
2020-04-15 14:45:07 -04:00
c5f6b5c687 one more whitespace fix 2020-04-15 14:29:37 -04:00
adf9602ae3 whitespace fix 2020-04-15 14:26:37 -04:00
01f97f1936 Merge branch 'master' into restrain_lbound 2020-04-15 14:24:47 -04:00
45aa6bd3b8 add @giacomofiorin as code owner for USER-COLVARS.cmake 2020-04-15 14:22:29 -04:00
6bac08322c Merge pull request #1999 from ellio167/kim_match_pairs
Add support for "internal" kim_match_pairs command
2020-04-15 12:43:34 -04:00
e7cce60777 Merge pull request #1889 from lammps/change-box-error-check
delay change_box error check with existing per-atom restart data
2020-04-15 12:29:32 -04:00
08d01e6417 import polymorphic pair style update from Xiaowang Zhou 2020-04-15 11:31:30 -04:00
529e905816 Fixup error message 2020-04-15 10:29:55 -05:00
0796a7032e same doc change for "lbond" option 2020-04-15 11:22:48 -04:00
e94576ecd8 update documentation as requested 2020-04-15 11:21:25 -04:00
80311891f1 Merge pull request #1874 from akohlmey/generalize-box-change-detect
Refactor handling of box change information from fixes
2020-04-15 11:14:45 -04:00
1cee0cf50e Changes and Comments in response to Axel's suggestions 2020-04-15 09:58:05 -05:00
3deece168e Merge branch 'master' into next_lammps_version 2020-04-15 05:08:53 -04:00
f5733ccd75 Merge pull request #1978 from evoyiatzis/class2_cs
core-shell version of pair_style lj/class2/coul/long
2020-04-14 22:59:46 -04:00
567147cf78 rename DEFAULT_PACKAGES to STANDARD_PACKAGES and ACCEL_PACKAGES to SUFFIX_PACKAGES for clarity 2020-04-14 22:37:39 -04:00
e5842e9236 must handle CORESHELL as ACCEL_PACKAGE because of the dependency tracking 2020-04-14 22:34:07 -04:00
8a6664eb4c make coulomb part of lj/class2/coul/long/cs consistent with lj/cut/coul/long 2020-04-14 22:05:19 -04:00
b718db385d Add support for "internal" kim_match_pairs command 2020-04-14 20:38:47 -05:00
48c136b784 fix whitespace issue 2020-04-14 21:37:34 -04:00
5951555de4 Merge branch 'master' into next_lammps_version 2020-04-14 21:36:59 -04:00
c50e49fce4 Merge pull request #1967 from julient31/neel-rework
Correct issue #1959 and correct issues in SPIN package
2020-04-14 21:32:37 -04:00
8daf0c56d2 Merge pull request #1996 from lammps/junghans_more_cmake_cleanup
cmake: improve exported target
2020-04-14 21:25:12 -04:00
267654297c Merge pull request #1998 from rbberger/cmake_fix_python_install
Fix installation of lammps.py with CMake
2020-04-14 21:21:07 -04:00
0afa9e60f9 Fix installation of lammps.py with CMake
In CMake 3.10 the PythonInterp module defined PYTHON_EXECUTABLE.  Since CMake
3.12 the Python module defines Python_EXECUTABLE.

Since the rest of the code was using PYTHON_EXECUTABLE and expecting it to be
defined, no matter which version, in newer versions of CMake this would lead to
lammps.py not being installed at all.

This commit changes the LAMMPS CMake files to use the newer variable name and
sets Python_EXECUTABLE in older versions if needed.
2020-04-14 17:45:49 -04:00
5eee4cb1ba C4 JT 041420
- reran all SPIN examples
2020-04-14 15:44:15 -06:00
250e3892f8 Add defines to build Lepton with MSVC and CMake 2020-04-14 17:40:50 -04:00
677f5cc997 C3 JT 041420 2020-04-14 15:22:20 -06:00
f5eb1c5b9d cmake: OpenMP dep is not public 2020-04-14 15:15:16 -06:00
be1f307384 Add defines to build Lepton with MSVC and traditional make 2020-04-14 16:57:04 -04:00
b8d6de2bdc binary example 2020-04-14 21:21:22 +02:00
6cbd61d929 working with library interface 2020-04-14 21:11:32 +02:00
dcbf9f7d17 cmake: improve exported target 2020-04-14 12:16:28 -06:00
7d71d5bfb3 Merge pull request #1981 from akohlmey/simplify_build_choices
Simplify choices for building LAMMPS and add some howtos for CMake and getting stack traces
2020-04-14 10:57:54 -04:00
8a0ed69e5b Merge pull request #1995 from akohlmey/cmake-build-docs
Update CMake scripts to build the HTML docs correctly
2020-04-14 10:22:30 -04:00
276608738c working new version 2020-04-14 15:11:09 +02:00
da36b252cc remove even more trailing whitespace 2020-04-14 06:08:10 -04:00
dc7853956a remove trailing whitespace 2020-04-14 06:01:07 -04:00
41cfb3ae80 Merge branch 'master' into neel-rework 2020-04-14 05:57:08 -04:00
b8b1e60b37 describe various abstract build targets for CMake 2020-04-14 01:13:46 -04:00
3c2b23e821 small tweaks and grammar corrections 2020-04-14 01:13:22 -04:00
4ded155cf2 simplify directory creation and copying of static content 2020-04-14 00:31:45 -04:00
872f15f2be remove no longer needed include 2020-04-14 00:30:53 -04:00
4f8d4a10d9 small tweaks and grammar/style improvements 2020-04-14 00:00:21 -04:00
a3c5751faf BUILD_LIB variable has been removed from CMake 2020-04-13 23:40:36 -04:00
34689fed5e make clean-all should also remove Manual.pdf and Developer.pdf 2020-04-13 23:34:29 -04:00
1688160669 don't need to force version 2.4.4 of sphinx anymore 2020-04-13 22:55:20 -04:00
e09349bc91 update CMake documentation build for recent changes to the html doc build procedure 2020-04-13 22:41:49 -04:00
a5059092b3 fix permissions 2020-04-13 22:26:20 -04:00
01d2fae925 Merge pull request #1992 from akohlmey/collected-small-changes
Recover cross compilation with MinGW
2020-04-13 21:05:56 -04:00
732ae97083 update version string for next patch release 2020-04-13 20:50:45 -04:00
2321789de0 Merge pull request #1993 from akohlmey/strncmp-update
Use utils::strmatch() in USER-DPD and KOKKOS for safer style matches
2020-04-13 20:44:28 -04:00
c6fe20d93b remove obsoleted file 2020-04-13 20:35:06 -04:00
8962da19ca complete cmake howto 2020-04-13 19:39:00 -04:00
6e4d5fd020 address spelling and other minor issues 2020-04-13 14:34:39 -04:00
e9fdc5e84b rework the debug info section to be more readable and make the options more visible 2020-04-13 14:34:23 -04:00
11b069ffe7 use utils::strmatch() in USER-DPD and KOKKOS for safer style matches 2020-04-13 13:38:38 -04:00
430f2ae6aa getting there 2020-04-13 19:28:43 +02:00
060fa6f68a Merge branch 'master' into simplify_build_choices 2020-04-13 13:00:38 -04:00
61871c3348 Merge pull request #1979 from ohenrich/user-cgdna
USER-CGDNA: Introduced capped force in oxDNA-FENE bonds
2020-04-13 12:59:57 -04:00
6929b3caa3 Merge branch 'collected-small-changes' of github.com:akohlmey/lammps into collected-small-changes 2020-04-13 12:03:27 -04:00
209a3fde71 use MY_PI everywhere, not M_PI. 2020-04-13 12:02:53 -04:00
6c3bb9f511 use MY_PI everywhere, not M_PI. 2020-04-13 11:43:16 -04:00
5d2ec73c5d re-enable cross-compilation with mingw64 2020-04-13 11:22:19 -04:00
74143a3d89 Merge branch 'master' into simplify_build_choices 2020-04-13 11:02:35 -04:00
4abff7b4d3 Merge pull request #1986 from akohlmey/correct-kokkos-docs
Update docs and CMake scripts for Kokkos 3.0+
2020-04-13 11:01:26 -04:00
03634b12df add missing pair style. Coulombic/Coulombics -> Coulomb for consistency 2020-04-13 10:38:09 -04:00
29f9ca4b54 use list-table and figure to have side-by-side images 2020-04-13 10:30:01 -04:00
f159c57f08 Adding square roots to inf norm instances in min.cpp 2020-04-13 08:15:59 -06:00
38343f3c03 C2 JT 041320
- removing a commented line
2020-04-13 08:05:06 -06:00
8fabd79440 Commit JT 041320
- corrected pair/spin to recover tests
2020-04-13 07:53:27 -06:00
394c906979 Merge branch 'master' into user-cgdna 2020-04-13 10:40:55 +01:00
39799c62fc update fork 2020-04-13 10:48:20 +02:00
581f65bacd makefile 2020-04-13 10:39:54 +02:00
fbce1a8549 write initial part of CMake tutorial 2020-04-12 21:39:19 -04:00
ebf6e23a67 explain error message when using a non-c++11 compliant compiler. 2020-04-12 16:32:40 -04:00
3201213bec remove tabs 2020-04-12 16:32:16 -04:00
5bb2449ddb provide info about including debug support in executable and a stack trace debug tutorial 2020-04-12 15:34:00 -04:00
5584bd1106 Update traditional make info and synchronize information provided with CMake version 2020-04-12 11:41:25 -04:00
8b1c6cb279 Merge branch 'omp4-compat' into correct-kokkos-docs 2020-04-12 01:44:47 -04:00
111ceb24cf Merge branch 'simplify_build_choices' of github.com:akohlmey/lammps into simplify_build_choices 2020-04-12 01:39:47 -04:00
17fdf976b0 must force non-interactive setup 2020-04-12 01:35:41 -04:00
9cf6c72a9c fix spell-checker issues 2020-04-12 00:36:39 -04:00
82b767f6bd Merge pull request #1 from akohlmey/omp4-compat
Update OpenMP 4+ compatibility pull request for LAMMPS
2020-04-11 22:21:41 -04:00
7b3b77226e update build overview 2020-04-11 22:20:35 -04:00
fa0cc2c217 update singularity definition files 2020-04-11 21:36:08 -04:00
5542ad31dc Merge branch 'master' into simplify_build_choices
# Conflicts:
#	cmake/Modules/Packages/GPU.cmake
2020-04-11 21:31:07 -04:00
d6624fe444 Merge pull request #1863 from Vsevak/gpu_hip
HIP back end to GPU package to support AMD GPUs via the ROCm toolkit
2020-04-11 21:14:45 -04:00
2edc6939a8 update and correct docs for OpenMP 3.x vs OpenMP 4.x and how to work around it. 2020-04-11 18:51:10 -04:00
3fa7265ff8 modernize CMake script code and add version tests for Clang and Intel to switch to OpenMP4 semantics 2020-04-11 18:35:37 -04:00
7a16567e2a better version info output with intel compilers 2020-04-11 18:34:37 -04:00
4acdd161f0 Merge pull request #1937 from jibril-b-coulibaly/fixadapt
fix adapt: implement scale keyword for diameter/charge and 2d compatibility
2020-04-11 17:31:13 -04:00
832cb57d91 Merge branch 'master' into fixadapt
# Conflicts:
#	doc/src/fix_adapt.rst
2020-04-11 16:24:13 -04:00
35bb597747 fix some whitespace issues: replace tabs with spaces, remove DOS/Windows style CR-LF 2020-04-11 16:11:27 -04:00
15314e3c95 Merge branch 'patch-1' of github.com:LunarLanding/lammps into correct-kokkos-docs 2020-04-11 15:41:14 -04:00
8407a77893 add text segments removed from other pages. 2020-04-11 12:43:50 -04:00
d50013ed16 complete rewrite of the CMake build overview page 2020-04-11 12:43:31 -04:00
15c89c388b add link target 2020-04-11 12:43:00 -04:00
60910e64f1 Fix typo in latex formula (cosine was not squared)
What the title says; I am assuming it is squared in the implementation.
2020-04-11 17:17:48 +01:00
e9af15ebb4 start rewrite of the cmake with LAMMPS documentation 2020-04-11 11:55:45 -04:00
c0d3ecfff0 start more detailed CMake howto document 2020-04-11 11:55:13 -04:00
20edc12821 copy images from figure rst directives as well 2020-04-11 11:53:55 -04:00
7978d20352 tweaks 2020-04-11 02:02:15 -04:00
1aba55a757 Merge branch 'user-cgdna' of github.com:ohenrich/lammps into correct-kokkos-docs 2020-04-10 23:46:16 -04:00
3d1505994c update false positives list 2020-04-10 23:32:41 -04:00
806fd8cf11 rework KOKKOS package compilation docs for Kokkos 3.0+ and recent changes in CMake support 2020-04-10 23:32:31 -04:00
f01c90b6b0 use consistent capitalization with NVIDIA 2020-04-10 23:20:10 -04:00
b83840c2f8 Merge remote-tracking branch 'github/junghans-CMake-typo' into correct-kokkos-docs 2020-04-10 22:29:19 -04:00
9bf31a66fd select compute capability 5.0 as default for Kokkos+CUDA preset. 2020-04-10 22:28:21 -04:00
340a2e719d be verbose about automatically enabling Kokkos_ENABLE_CUDA_LAMBDA 2020-04-10 22:27:42 -04:00
d2c4ade697 Add HIP_USE_DEVICE_SORT CMake option 2020-04-10 18:22:43 -04:00
e114d814f4 add rmass_flag and rectify comments and indents 2020-04-10 16:17:12 -05:00
98fcf83180 Checkout specific hipCUB version 2020-04-10 15:31:06 -04:00
0608002451 Remove trailing whitespace 2020-04-10 15:10:41 -04:00
1a1db599f6 Fix typo 2020-04-10 15:03:48 -04:00
024a91c751 Add documentation on how to compile GPU package with HIP using CMake 2020-04-10 14:50:10 -04:00
4f8a1583b9 Restore --arch line removed during debugging 2020-04-10 14:25:46 -04:00
195e453d17 Add HIP configuration output 2020-04-10 14:24:26 -04:00
b7a2b375c6 Add includes and linked libs for HIP_PLATFORM=nvcc
Do not set CMAKE_CXX_COMPILER=hipcc in the NVCC case since it causes
all sorts of problems. Instead we use the regular host compiler and
set the necessary include and link paths.
2020-04-10 12:45:39 -04:00
df2ddcc98a provide 3 presets for KOKKOS compilation: serial, openmp, cuda 2020-04-10 12:16:56 -04:00
28379e145f set using C++11 w/o extensions globally. move KOKKOS only checks to KOKKOS.cmake 2020-04-10 12:16:24 -04:00
c83dfd2b22 update list of supported Kokkos_ARCH suffixes. convert to table. 2020-04-09 22:52:25 -04:00
469a4f15b7 some tweaks to simplify building the KOKKOS package and to enforce consistent behavior 2020-04-09 22:51:52 -04:00
e39faf4f48 handle change in capitalization of Kokkos variables after upgrade to v3.0 2020-04-09 22:30:48 -04:00
7c8be1a411 update instructions in Python doc section 2020-04-09 21:47:47 -04:00
2becc27aa4 remove a few more BUILD_LIB uses 2020-04-09 21:24:00 -04:00
284c67a0f6 partial update of the new kokkos docs 2020-04-09 21:20:17 -04:00
bca64306ed avoid spellchecker issue 2020-04-09 18:06:05 -04:00
16fa45fef3 Merge remote-tracking branch 'github/junghans-CMake-typo' into simplify_build_choices 2020-04-09 17:59:53 -04:00
fc3011c1b2 complete adapting makefiles and add a minor simplification tweak 2020-04-09 17:59:42 -04:00
a585142de0 update makefiles in src/MAKE/MACHINES 2020-04-09 17:19:27 -04:00
3c0dae3bc5 cmake: fix install error for shared libs 2020-04-09 14:05:48 -06:00
3d2d2cb668 update documentation for the changes to the build procedure 2020-04-09 15:43:05 -04:00
bd7a906838 Merge remote-tracking branch 'github/junghans-CMake-typo' into simplify_build_choices 2020-04-09 15:27:30 -04:00
874ef6afc1 cmake: add error when trying to install downloaded libs 2020-04-09 12:36:57 -06:00
a1992ce01d tweak linking procedure to maximize shared code and have the least issues with rpath 2020-04-09 14:16:00 -04:00
6381940b9a Attempt to get ROCm CUDA working with CMake 2020-04-09 13:53:41 -04:00
4534096ad1 Update Install.sh 2020-04-09 19:44:48 +02:00
52bc8c398d move header file to CORESHELL folder 2020-04-09 19:42:32 +02:00
d4757e5330 move cpp file to CORESHELL folder 2020-04-09 19:41:27 +02:00
dab9cc617a delete entry at README 2020-04-09 19:38:12 +02:00
e7a8de0368 Add container with both ROCm and CUDA 2020-04-09 13:28:56 -04:00
07d31f4643 remove LAMMPS_LIB_SUFFIX variable and use LAMMPS_MACHINE instead.
we are now always building the executable and the library and thus they should have a consistent suffix or none.
2020-04-09 10:42:11 -04:00
79fc73d3a2 small hack to ensure that src/MAKE/MINE is included in the git checkout 2020-04-09 10:11:13 -04:00
69a38115ce Merge remote-tracking branch 'github/junghans-CMake-typo' into simplify_build_choices 2020-04-09 09:44:12 -04:00
8dfc6cdef4 Testing.cmake: some clean up 2020-04-09 07:40:17 -06:00
d6aede2549 LAMMPSConfig.cmake: fixed for disabled PKG_SPACE 2020-04-09 07:27:27 -06:00
32eeffe84d Merge remote-tracking branch 'github/junghans-CMake-typo' into simplify_build_choices 2020-04-09 08:57:42 -04:00
ed0971d663 cmake: fix a typo 2020-04-09 05:44:57 -06:00
9a2348ff15 InP example included 2020-04-09 01:18:34 -07:00
0fa6472c51 Merge branch 'master' into omp4-compat 2020-04-08 23:13:05 -04:00
f3a280a9f4 fix typo 2020-04-08 18:49:16 -04:00
61147d75b5 change build settings to have only mode=static and mode=shared and always build library and executable 2020-04-08 18:38:18 -04:00
686aba9fd8 include options to link to the LAMMPS library in mode=print output 2020-04-08 18:36:30 -04:00
e5b521e011 remove BUILD_EXE and BUILD_LIB options from CMake files. we always build both. 2020-04-08 18:31:46 -04:00
a2132f8596 Optimized some bnorm_flags 2020-04-08 13:02:37 -07:00
1c94415d1f Remove whitespace 2020-04-08 13:57:12 -04:00
438ee4d75b Merge remote-tracking branch 'origin/master' into gpu_hip 2020-04-08 13:49:41 -04:00
b74aabf05c Merge pull request #1956 from junghans/cmake_clean_up
cmake: major refactor of CMake support to take advantage of CMake 3.10 and beyond.
2020-04-08 12:52:06 -04:00
19f1d0445d Added THIS IS NOT RIGHT note 2020-04-08 10:32:27 -06:00
1fed78eecf Removed abort condition, enabled capped force 2020-04-08 08:23:34 +01:00
0443ac2dd4 Created class ComputeSNAP, not completely finished, but compiles 2020-04-07 20:51:39 -06:00
459c1bbf63 Merge branch 'master' into cmake_clean_up 2020-04-07 16:17:33 -04:00
9da2d34f9d Update pair_cs.rst 2020-04-07 18:50:53 +02:00
4ef0e17900 Update README 2020-04-07 18:44:06 +02:00
c6d09437ae pair_style lj/class2/coul/long/cs
The files for the core-shell version of the pair_style lj/class2/coul/long
2020-04-07 18:41:15 +02:00
15ddbf7e9e Removed abort condition, enabled capped force 2020-04-07 13:32:05 +01:00
46ee159f14 Added custom tally functions 2020-04-06 17:05:43 -06:00
4b6dcb3452 LAMMPSConfig.cmake.in: add support for some more packages 2020-04-06 14:51:44 -06:00
bb9ffe2edc simple.c: fix lammps include 2020-04-06 14:15:47 -06:00
5da96f4574 LAMMPSConfig.cmake: add support for PKG_USER-SCAFACOS and PKG_PYTHON 2020-04-06 12:10:39 -06:00
6c8161b2a3 cmake: remove wrongly added warning about downloading 2020-04-06 12:10:00 -06:00
01cd32ebc2 Merge pull request #1972 from akohlmey/collected-small-changes
Collected small changes for the next patch
2020-04-06 10:22:20 -04:00
f3e1db4174 one more false positive 2020-04-06 08:45:22 -04:00
56c07cec26 handle not previously flagged false positives 2020-04-06 08:28:12 -04:00
73aeb74c2a LAMMPSConfig: more fixes for static liblammps 2020-04-05 20:51:02 -06:00
2d92d8f8c6 LAMMPSConfig.cmake: fix linking against FFTW3 2020-04-05 20:06:56 -06:00
592a5fac53 fix bugs in doc makefile 2020-04-05 21:56:55 -04:00
f0817321f9 LAMMPSConfig.cmake.in: improve static lib case 2020-04-05 19:52:28 -06:00
97b11ea746 enforce using sphinx version 2.4.4, install spellchecker with all other sphinx tools 2020-04-05 21:36:06 -04:00
d8402b6249 KIM.cmake: doesn't require MPI 2020-04-05 19:24:12 -06:00
b9c747b680 KIM.cmake: indentation 2020-04-05 19:01:17 -06:00
d568fea7c3 cmake: derive LAMMPS_API_DEFINES from lammps target properties 2020-04-05 18:58:16 -06:00
1b87ce04ee cmake: fix a typo 2020-04-05 15:40:15 -06:00
ac393ca38d GPU.cmake: use OpenCL imported target 2020-04-05 15:37:17 -06:00
a77166379b cmake: remove old comment 2020-04-05 15:23:23 -06:00
6b199f502c cmake: add error for downloading with <=cmake-3.11 2020-04-05 15:14:30 -06:00
9003553384 cmake: move OpenCL handling under Windows in GPU.cmake 2020-04-05 15:12:40 -06:00
e18439f387 cmake: make more include files consistent 2020-04-05 15:03:25 -06:00
1988a2a725 cmake: make USER-H5MD.cmake consistent 2020-04-05 14:58:54 -06:00
9aa6d04997 cmake: move if(PKG_) out of cmake file 2020-04-05 14:57:06 -06:00
5411ae698f KSPACE.cmake: use MKL imported target 2020-04-05 14:39:13 -06:00
e8317b2f6b cmake: don't use PythonInterp on new cmake 2020-04-05 11:53:43 -06:00
909b2dcff8 PYTHON.cmake: don't use PythonLibs on new cmake 2020-04-05 11:43:54 -06:00
6f5fcd66ac cmake: check flags in CMAKE_TUNE_FLAGS 2020-04-05 08:58:34 -06:00
3cb825c308 Made ev_tally_full() public 2020-04-05 00:28:47 -06:00
47709c4cad Now using mix and match syntax 2020-04-05 00:21:31 -06:00
b5dfdc4fa4 Separated out class hierarchy 2020-04-05 00:17:31 -06:00
789a697d69 Merge pull request #77 from mrcdr/math_eigen_lanczos
modified the "math_eigen.h" file
2020-04-04 20:59:24 -06:00
b84a2481ed Merge remote-tracking branch 'charlie/chem_snap' into ml_chem_snap 2020-04-04 11:38:56 -06:00
4e0eb0c501 no more need to set compiler flags for intel compiler in preset 2020-04-03 21:24:45 -04:00
5c0e8a6b0d cmake: add options to summary 2020-04-03 15:24:11 -06:00
c54bb316b8 USER-INTEL.cmake: remove duplicated injection of GNU flags 2020-04-03 14:25:43 -06:00
1daa4ce374 USER-INTEL.cmake: add_compile_options -> target_compile_options 2020-04-03 14:24:27 -06:00
9df26bca55 cmake: export lmp executable as well 2020-04-03 13:39:28 -06:00
cab260f3ab cmake: fix mpi default on Windows 2020-04-03 09:57:14 -06:00
b83c98db14 USER-INTEL.cmake: clean up, create imported targets 2020-04-03 09:50:28 -06:00
a2353dfc50 cmake: removed unused FindTBB.cmake 2020-04-03 09:25:09 -06:00
bdc83020f0 cmake:LAMMPS::MPI -> MPI::MPI_CXX 2020-04-03 09:24:47 -06:00
8bcdc86d0f properly pass --enable-stdcall-fixup when linking on windows with mingw cross-compiler 2020-04-03 10:16:20 -04:00
2df524d782 USER-INTEL.cmake: fix TBB_MALLOC warning 2020-04-03 07:23:03 -06:00
e53e443e21 add singularity description file for Ubuntu 20.04 LTS 2020-04-02 21:52:20 -04:00
8b61aed3cb update/order list of require texlive packages 2020-04-02 21:51:52 -04:00
c8481e620d set C locale 2020-04-02 19:41:00 -04:00
d4fbeccb2b add latex support 2020-04-02 19:40:29 -04:00
1e224611ca Add preliminary CMake support to GPU HIP port 2020-04-02 17:59:45 -04:00
2ef4c4166d update container definitions for building documentation 2020-04-02 17:48:17 -04:00
ce80cae5c4 update list of false positives for ubuntu 16.04 2020-04-02 17:42:11 -04:00
3f630f799e fix up non-ascii characters so doc tools can work with LC_ALL=C 2020-04-02 17:29:42 -04:00
237c8f0bec improve portability to older python versions 2020-04-02 17:13:19 -04:00
a9dad3d46c test for PDFLaTeX and update README 2020-04-02 14:31:47 -04:00
1ec91bc214 Add CMake function GenerateBinaryHeader to replace xxd steps 2020-04-02 14:22:04 -04:00
9e563da3eb USER-PLUMED.cmake: use imported targets 2020-04-02 11:38:18 -06:00
9397e11c6f fix issue in README file 2020-04-02 13:29:37 -04:00
96a3ede4f4 Merge remote-tracking branch 'github/master' into collected-small-changes 2020-04-02 13:29:28 -04:00
94e5e8de76 modified the "math_eigen.h" file to track the commit 9cdfcac069 2020-04-03 01:23:30 +09:00
a68656567f Merge pull request #1975 from rbberger/more_singularity_containers
More Singularity container definitions
2020-04-02 10:56:13 -04:00
96202ccf56 remove trailing whitespace 2020-04-01 20:27:43 -04:00
eb955b44f8 Merge branch 'master' into collected-small-changes 2020-04-01 20:26:02 -04:00
2de7e90e58 add Fedora 30 definition and update README file 2020-04-01 20:21:30 -04:00
09c2dec71f Fixed small non chemsnap multielement bug 2020-04-01 17:18:31 -07:00
909e6048c4 Added mliap package 2020-04-01 18:09:18 -06:00
927b1b05e5 ignore singularity container files in the entire repo 2020-04-01 20:08:00 -04:00
3329caa7f1 First pass at general ML pair style 2020-04-01 18:07:33 -06:00
0cf48c37e1 Add NVIDIA Singularity container 2020-04-01 17:41:40 -04:00
03988a9048 Add ROCm Singularity container 2020-04-01 17:29:07 -04:00
ccdf010ef0 Add Intel OpenCL Singularity container 2020-04-01 17:08:40 -04:00
dbdce3946b Update/Sync singularity container definition for Ubuntu 18.04 2020-04-01 16:35:00 -04:00
13da503704 Merge pull request #1974 from stanmoore1/makefile
Fix MPI environment variable issue in Makefile.kokkos
2020-04-01 14:06:13 -04:00
e1924c6064 Merge pull request #1969 from stanmoore1/team_size
Work around team_size issue in npair_kokkos
2020-04-01 14:03:32 -04:00
fd44f80022 Merge pull request #1973 from evoyiatzis/ext-fix-adapt
Small extension of bonds supported by fix adapt
2020-04-01 14:02:02 -04:00
a4a4562b03 KIM.cmake: remove _KIM_LIBDIR workaround 2020-04-01 11:56:34 -06:00
0358e9c4c9 KIM.cmake: switch to imported targets 2020-04-01 11:46:01 -06:00
e5c5645520 MSCG.cmake: create imported target for downloaded mscg 2020-04-01 10:36:07 -06:00
7059996356 USER-SCAFACOS.cmake: use imported target for downloaded scafacos 2020-04-01 09:02:51 -06:00
72200a9958 Fix MPI environment variable issue in Makefile.kokkos 2020-04-01 08:57:18 -06:00
9574a18a73 USER-SMD.cmake: use imported target for downloaded eigen3 2020-04-01 08:09:56 -06:00
22b90413d5 LATTE.cmake: create and use imported target 2020-04-01 07:27:58 -06:00
08e81d6a36 Update bond_fene.cpp 2020-04-01 15:15:52 +02:00
e93920bb5d Update bond_nonlinear.cpp 2020-04-01 15:15:25 +02:00
ba81e6a955 Update bond_morse.cpp 2020-04-01 15:15:00 +02:00
1157a2a4c2 Update bond_class2.cpp 2020-04-01 15:14:21 +02:00
596ec06960 Update fix_adapt.rst 2020-04-01 15:01:34 +02:00
ef112be870 Update bond_nonlinear.cpp 2020-04-01 14:54:17 +02:00
d0c1b7ea08 Update bond_nonlinear.h 2020-04-01 14:52:41 +02:00
9446f8f780 Update bond_fene.cpp 2020-04-01 14:51:23 +02:00
bd7deebca2 Update bond_fene.h 2020-04-01 14:50:32 +02:00
5bc7a24479 Update bond_class2.cpp 2020-04-01 14:49:04 +02:00
566e110e42 Update bond_class2.h 2020-04-01 14:48:13 +02:00
494750b426 Update bond_morse.cpp 2020-04-01 14:46:52 +02:00
c472f38f5f Update bond_morse.h 2020-04-01 14:44:54 +02:00
3dd9ad488f Turned on MLIAPModelSNAP 2020-03-31 21:58:43 -06:00
4202b4649b KOKKOS.cmake: create imported target for internal kokkos 2020-03-31 20:36:26 -06:00
2f4571e31d VORONOI.cmake: create imported target for internal voro 2020-03-31 20:00:17 -06:00
b645800537 cmake: mark MPI::MPI_CXX global 2020-03-31 19:59:33 -06:00
98c89363c6 Merge branch 'master' into chem_snap 2020-03-31 16:50:08 -07:00
d3d67cebe7 Chem Snap 2020-03-31 16:37:09 -07:00
099880e91b cmake: add missing size defines 2020-03-31 16:35:28 -06:00
53ce24fac1 cmake: remove LAMMPS_USE_MPI4WIN hacks 2020-03-31 16:12:16 -06:00
041941ed81 MPI4WIN.cmake: remove duplicated -D 2020-03-31 15:37:39 -06:00
05ecda3748 cmake: try to fix MPI4WIN build 2020-03-31 15:06:40 -06:00
ef0df90b48 Merge branch 'master' into cmake_clean_up 2020-03-31 14:42:28 -06:00
fbac800b75 Merge pull request #1968 from junghans/cmake_kokkos_3
cmake: fix up kokkos-3.0 update
2020-03-31 16:29:44 -04:00
119ba61c09 cmake: fix MPI linkage 2020-03-31 08:23:59 -06:00
8789ff6553 Merge branch 'master' into chem_snap 2020-03-30 23:39:06 -07:00
3ba83de700 Work around team_size issue in npair_kokkos 2020-03-30 16:26:46 -06:00
19a52dc506 Update lib/gpu/.gitignore 2020-03-30 17:36:22 -04:00
373b57cfdc Change 'echo -e' to 'printf' for greater compatibility 2020-03-30 17:36:00 -04:00
4f6dd381c3 Merge branch 'master' into gpu_hip 2020-03-30 17:15:55 -04:00
cfd8ea1e36 KOKKOS.cmake: added missing default. 2020-03-30 13:53:26 -06:00
1ceb335059 KOKKOS.cmake: make doc more clear 2020-03-30 12:29:19 -06:00
802909386b KOKKOS.cmake: fix a typo 2020-03-30 12:28:24 -06:00
dd7cb2b770 cmake: fix up kokkos-3.0 update 2020-03-30 11:51:30 -06:00
1316e93eb2 Merge pull request #1870 from stanmoore1/kk_2.99
Update Kokkos library to v3.0
2020-03-30 13:35:48 -04:00
22aab4406e Commit3 033020
- re-checked all validation problems, ready for PR
2020-03-30 09:32:46 -06:00
961c554ed6 Merge branch 'clean-master2' of github.com:julient31/lammps into neel-rework 2020-03-30 09:01:30 -06:00
547d29d030 Commit2 JT 300320
- regenerated all spin examples
2020-03-30 08:55:54 -06:00
3806222e04 make configuations summary more consistent, recover defines 2020-03-30 10:25:04 -04:00
51e3f9dcda Commit JT 033020
- modified all spin pairs (match nve)
- correct doc min_modify
- correct code max norm (square values)
- added draft nvt validation
2020-03-30 08:09:11 -06:00
9cdfcac069 Merge pull request #76 from jewettaij/bond-react_create_atoms
libraries for matrix algebra and point cloud registration
2020-03-28 23:33:44 -06:00
f30116311f cmake: add simpleC to CMakeLists.txt 2020-03-28 17:57:53 -06:00
fa2df0df0f cmake: clean up header install 2020-03-28 15:42:51 -06:00
b331b2db10 cmake: make incl. dir work under windows as well 2020-03-28 09:30:02 -06:00
4aadb554a3 cmake: replace incl. dir hack by even better hack 2020-03-28 08:43:13 -06:00
b245872bae cmake: replace include dir hack by a different hack 2020-03-28 08:28:41 -06:00
fb9f31580c cmake: install mpi.h in mpi/ subdir 2020-03-28 08:08:26 -06:00
635cca1e8d cmake: add info.h to install 2020-03-28 07:39:30 -06:00
aa76ed0b0e remove tab and trailing whitespace 2020-03-27 22:25:27 -04:00
c4440be392 there are no more fortran sources in "simple" package libraries 2020-03-27 22:12:40 -04:00
2a7f690bf2 refactor error code handler to avoid possible string overflows and handle out of range argument 2020-03-27 21:09:20 -04:00
d37e7a5025 fix whitespace issues 2020-03-27 21:08:43 -04:00
5a88db838d Merge pull request #1946 from yafshar/kim-property
Add new kim_property command
2020-03-27 20:58:52 -04:00
6de66b1140 fix whitespace issues 2020-03-27 19:12:10 -04:00
afc17b1d53 use american english spelling 2020-03-27 19:05:52 -04:00
ad029f567f Merge pull request #1965 from martok/meamc-docs
MEAM/C: Improve documentation, error messages
2020-03-27 18:54:07 -04:00
2d15071c9f Update Errors_messages.rst 2020-03-27 23:22:17 +01:00
24ed8749d2 a kim-property command example 2020-03-27 17:17:04 -05:00
06a9fda7a4 Merge pull request #1966 from rbberger/library-interface-update
Allow query of available styles from lib interface
2020-03-27 17:54:46 -04:00
89eb5fc65a cmake: fix build for shared libs 2020-03-27 15:35:05 -06:00
c49310721c Hide secret styles 2020-03-27 17:23:09 -04:00
055764c20a cmake: install exceptions.h as well 2020-03-27 15:20:10 -06:00
686a2c7a43 Support host execution 2020-03-27 15:19:40 -06:00
16ac65e8cf cmake: make mpi public again 2020-03-27 15:01:51 -06:00
3b1244831e Add Python::has_minimum_version 2020-03-27 16:28:43 -04:00
6f8915e0a5 cmake: updated COUPLE/simple cmake 2020-03-27 13:55:34 -06:00
1861c0f8ec Fix deprecated Kokkos code issue 2020-03-27 12:20:13 -06:00
e809bf6566 Fix merge issue 2020-03-27 11:08:20 -06:00
f7cfaec57d Fix team_size issue in comm_kokkos 2020-03-27 10:18:33 -06:00
758c812306 Allow query of available styles from lib interface
Adds the following new library functions:
- lammps_has_style()
- lammps_style_count()
- lammps_stlye_name()

The Info class now also has the following member functions:

- Info::has_style()
- Info::get_available_styles()
2020-03-26 22:45:18 -04:00
6b6dd07414 Fix runtime issues with pair_exp6_rx_kokkos 2020-03-26 17:12:08 -06:00
7a5f73137a Fix runtime issues with Kokkos vatom 2020-03-26 16:21:06 -06:00
b54697efb8 Fix runtime issue in atom_vec_sphere_kokko 2020-03-26 15:56:58 -06:00
5c0f027464 Fix team_size issue in comm_kokkos 2020-03-26 15:32:45 -06:00
f6a107c448 Fix team_size issues in pair_snap_kokkos 2020-03-26 15:29:01 -06:00
e88e8bdabe cmake: improve install of support libs 2020-03-26 15:00:46 -06:00
8456f3f2ec MEAM/C: refactor file reading with MPI, scope locals accordingly 2020-03-26 17:20:23 +01:00
9e0e046eb2 MEAM/C: improve error messages and documentation 2020-03-26 17:20:23 +01:00
e601fa4e8d cmake: add example CMakeLists.txt for xamples/COUPLE/simple 2020-03-26 08:42:00 -06:00
897f5b19be cmake: improve exported target a bit 2020-03-26 08:41:05 -06:00
be93ef7b20 update 2020-03-25 22:53:58 -04:00
25199e0e57 update 2020-03-25 22:37:26 -04:00
09097e14b9 update 2020-03-25 22:35:55 -04:00
4f0540b331 update 2020-03-25 22:24:26 -04:00
73b8c5ec6b USER-PLUMED.cmake: fix fftw3 linkage 2020-03-25 19:46:10 -06:00
a08cf6d609 cmake: mpi_stubs needs to be public 2020-03-25 19:41:34 -06:00
9c51bb6cb3 Merge pull request #4 from lammps/master
update
2020-03-25 21:25:33 -04:00
b60acaa657 MESSAGE.cmake: fix up 2020-03-25 19:19:00 -06:00
01a51d655c cmake: move kokkos to external project (part I) 2020-03-25 19:11:49 -06:00
9ac445005b Merge pull request #3 from lammps/master
update
2020-03-25 21:10:27 -04:00
c05e1871bf style issues 2020-03-25 20:26:39 -04:00
fa4ef70829 code issues 2020-03-25 20:18:07 -04:00
af6849f783 cmake: fix up MESSAGE.cmake 2020-03-25 18:10:52 -06:00
761de9b13c cmake: add more libs to export target 2020-03-25 18:05:36 -06:00
cad6332065 cmake: add gpu to export target 2020-03-25 18:01:01 -06:00
ad731869d7 cmake: fix atc compile 2020-03-25 16:18:19 -06:00
36b826348b Fix compile issues with Kokkos 2020-03-25 16:12:37 -06:00
568aaeca22 cmake: needs mpi 2020-03-25 15:04:20 -06:00
1e59101606 cmake: fix exported target 2020-03-25 14:52:27 -06:00
ad37c0a806 USER-SMD.cmake: fix a typo 2020-03-25 14:42:23 -06:00
50935b5cbc Fix typos 2020-03-25 14:23:45 -06:00
60864e38d1 Update Kokkos library in LAMMPS to v3.0 2020-03-25 14:08:39 -06:00
0252d8c210 Fix compile for UVM 2020-03-25 13:58:20 -06:00
e298978da0 Change Kokkos::Impl to std namespace 2020-03-25 13:58:12 -06:00
0025dfe1e3 Update Kokkos CUDA minimum verison 2020-03-25 13:56:18 -06:00
1e7e9369da Fix runtime error in Kokkos package 2020-03-25 13:56:07 -06:00
4eebcdfc0d Fix runtime issue in Kokkos 2020-03-25 13:55:51 -06:00
7a09636f9a Fix compile issue in pair_kokkos.h 2020-03-25 13:55:40 -06:00
299f79c919 Remove deprecated Kokkos code 2020-03-25 13:55:31 -06:00
2571b6058e LATTE.cmake: create and use imported target 2020-03-25 11:26:19 -06:00
58c9c4c64b USER-H5MD.cmake: make hdf5 incldir public 2020-03-25 10:14:42 -06:00
b9131fcd18 Merge remote-tracking branch 'origin/master' into cmake_clean_up 2020-03-25 09:36:36 -06:00
ee3249676e cmake: use OpenMP imported target 2020-03-25 09:09:59 -06:00
0e9f65e021 cmake: add exported target 2020-03-25 08:43:57 -06:00
2ac79d4483 Merge pull request #1963 from akohlmey/collected-small-fixes
Collected small changes for the next patch
2020-03-25 10:41:11 -04:00
b8464da71f cmake: remove FindLAMMPS.cmake 2020-03-25 07:45:21 -06:00
1192845ad5 avoid segmentation faults in universe/uloop variable increment 2020-03-25 08:19:24 -04:00
398c030925 whitespace cleanup 2020-03-25 06:52:37 -04:00
3704d90efb Merge branch 'master' into collected-small-fixes 2020-03-25 06:50:11 -04:00
91c1ae8077 Merge pull request #1962 from rbberger/small_fixes
Small fixes
2020-03-25 06:47:28 -04:00
9a25aae31f Merge pull request #1958 from weinbe2/snap-mem-reduce
SNAP optimizations - kernel fusion, memory reduction, misc perf improvements
2020-03-24 19:20:09 -04:00
431647d943 Add link to official WSL docs 2020-03-24 18:52:05 -04:00
0f35c1d009 Update ubuntu package name to libpng-dev 2020-03-24 18:43:20 -04:00
0da108f06f cmake: remove last include_directories() call 2020-03-24 14:50:38 -06:00
5eb77f2e9a FindNetCDF.cmake: fix target 2020-03-24 14:29:14 -06:00
99d4a226b5 USER-NETCDF.cmake: create and use imported targets 2020-03-24 12:33:36 -06:00
f5279a291e USER-QUIP.cmake: create and use imported target 2020-03-24 12:23:39 -06:00
d19f112c75 MSCG.cmake: fix up imported target 2020-03-24 12:18:10 -06:00
72c94f0fbf USER-SCAFACOS.cmake: use imported pkg-config target 2020-03-24 11:49:24 -06:00
d8b6d10f3b MSCG.cmake: create an use imported target 2020-03-24 11:42:36 -06:00
33a57ed215 cmake: some more include_directories() -> target_include_directories() 2020-03-24 11:36:21 -06:00
4736402dd9 cmake: atc needs mpi itself 2020-03-24 11:07:45 -06:00
51eb865d63 VORONOI.cmake: use VORO imported target 2020-03-24 11:05:25 -06:00
9b244b14a6 atc: needs lammps.h 2020-03-24 10:56:49 -06:00
31930139c6 USER-SMD.cmake: use Eigen3 imported target 2020-03-24 10:49:13 -06:00
f2ab654662 cmake: some include_directories() -> target_include_directories() 2020-03-24 10:41:19 -06:00
572502b33d cmake: add_definitions() -> target_compile_definitions() 2020-03-24 09:35:57 -06:00
0060473cee fix up some escaped '*' characters in "code-block" sections that do not need to be escaped 2020-03-24 11:35:21 -04:00
5fa99cb072 Comment cleanup 2020-03-23 21:33:11 -06:00
387c2d0507 Cleaned up comment. 2020-03-23 23:31:12 -04:00
36095bbfdf Tweak comment 2020-03-23 21:15:00 -06:00
8d0cb2a70a removed the "superpose3d" namespace, and renamed "namespace math_eigen" to "namespace MathEigen" (to imitate the style used in "math_extra.h"). 2020-03-23 14:19:04 -07:00
bcfc606efb SNAP optimizations, kernel fusion, large reduction of memory usage on the GPU, misc. performance optimizations. 2020-03-23 13:20:56 -07:00
e76afb33ed cmake: update to new target_link_libraries() signature 2020-03-23 12:06:58 -06:00
6209479797 Removed some tabs
Changed mathjax for multiline formula
2020-03-23 17:57:58 +01:00
0f00bb1ca6 Added new argument r0stop to fix restrain bond
Added new fix restrain lowerbound harmonic
2020-03-23 16:48:08 +01:00
d92b9ba8d0 cmake: mpi needs to be public due to DSO 2020-03-23 08:51:29 -06:00
9b8266173f cmake: JPEG imported target is >=cmake-3.12 only 2020-03-23 08:23:16 -06:00
6ee25db32a cmake: fftw needs to be public due to DSO 2020-03-23 08:00:51 -06:00
6e1f18961c Convert characters to UTF-8 2020-03-23 09:42:46 -04:00
a42f7163d2 cmake: move include up 2020-03-22 21:29:15 -06:00
98bfbbd576 fix typo in CMake module 2020-03-22 22:21:12 -04:00
591212af3a cmake: add back include path for now 2020-03-22 19:57:48 -06:00
3076e26707 cmake: create imported target for FFTW 2020-03-22 19:20:00 -06:00
e1f01d3e65 use consistent naming for c++11 style kspace thread 2020-03-22 21:14:26 -04:00
0e3f4f3de2 cmake: remove LAMMPS_DEPS 2020-03-22 19:07:23 -06:00
5828815b3e cmake: remove LAMMPS_LINK_LIBS 2020-03-22 18:55:53 -06:00
cd89a7c4b7 cmake: fix renamed target for exe 2020-03-22 18:03:07 -06:00
62cb760ee2 cmake: remove LIB_SOURCES and LMP_SOURCES 2020-03-22 14:42:29 -06:00
79b84c0847 more thorough checking if BUILD_OMP may be enabled by default. we need the OpenMP runtime, too. 2020-03-22 15:44:28 -04:00
f560cd6dd5 make certain, the molecular flag is always initialized 2020-03-21 01:08:09 -04:00
b533fdb31b Merge pull request #1952 from lammps/numdiff-doc
tweak the docs for the new fix numdiff command
2020-03-20 21:36:03 -04:00
c793db66d2 fix style related issues 2020-03-20 14:45:26 -04:00
a8fc2005d4 Merge branch 'master' into feature-cnt 2020-03-20 14:35:57 -04:00
53ccc4c607 fix code related issues 2020-03-20 14:21:24 -04:00
f60a7ace87 Merge pull request #2 from lammps/master
update the fork to the current state
2020-03-20 14:19:23 -04:00
6563331d6e rename to LAMMPS_OMP_COMPAT, improve docs 2020-03-20 13:21:21 -04:00
0bedebc083 migrate omp constructs to new macros
These changes were automatically generated using the script
posted in https://github.com/lammps/lammps/pull/1651#issuecomment-525814475
2020-03-20 12:47:03 -04:00
9a1b4a8edb Add infrastructure for openmp4 compat 2020-03-20 12:46:24 -04:00
aabee4b328 one more change 2020-03-20 07:27:28 -06:00
9ff71e2da0 fix a typo 2020-03-20 07:26:15 -06:00
8b0e5c66ea tweak the docs for the new fix numdiff command 2020-03-20 07:23:01 -06:00
54c2381632 Merge pull request #1947 from akohlmey/next_lammps_version
Step version string for next patch release
2020-03-19 18:57:27 -04:00
68dc62c512 Merge pull request #1932 from akohlmey/atc-doc-to-rst
Convert AtC documentation html files to reStructuredText
2020-03-19 17:04:35 -04:00
9cfa5506fd flags may be empty, compiler never, if used 2020-03-19 16:46:46 -04:00
9397a763e2 tweak MinGW preset settings to reduce linker warnings 2020-03-19 16:45:22 -04:00
87ac0dc547 Merge commit 'refs/pull/1950/head' of github.com:lammps/lammps into atc-doc-to-rst 2020-03-19 16:08:18 -04:00
a7f16f521f Merge branch 'master' into atc-doc-to-rst 2020-03-19 15:55:08 -04:00
fb9b5c6dd0 remove command copying (the now removed) doc/src/USER into some output folders 2020-03-19 15:55:05 -04:00
a541434e0a cmake: remove hard-coded liblinalg 2020-03-19 13:49:13 -06:00
6644caf817 fix rst formatting issues 2020-03-19 15:48:46 -04:00
223bfac229 remove ATC html files that are no longer needed 2020-03-19 15:44:53 -04:00
a6adf95603 final batch of converted AtC doc files 2020-03-19 15:36:45 -04:00
53883ec077 Merge branch 'atc-doc-to-rst' of github.com:akohlmey/lammps into atc-doc-to-rst 2020-03-19 14:39:15 -04:00
65b6b6f2f8 next batch of converted files 2020-03-19 14:39:00 -04:00
500982ac9c Merge pull request #1949 from akohlmey/cmake-mingw-portability
Improved CMake support for cross-compilation with MinGW
2020-03-19 13:54:17 -04:00
61ebf897e4 expand comment about MinGW cross-compiler hack 2020-03-19 13:31:23 -04:00
55b5753eea next batch of converted files. one more section to go. 2020-03-19 12:22:06 -04:00
84f89134d9 Merge branch 'master' into atc-doc-to-rst
# Conflicts:
#	doc/src/Errors_messages.rst
2020-03-19 11:28:02 -04:00
23509d0785 add missing entries for new pair styles 2020-03-19 11:09:41 -04:00
3d0fc4a112 update docs for updated CMake support with MinGW 2020-03-19 11:09:27 -04:00
38edf20d08 add CMake support for building LAMMPS for windows with MPI
- Handle the MPI support as an External project.
- Also we can enable a few more packages now, that depend on MPI
- Improved dependency tracking for parallel builds
- cross compiler build can now also work with ninja
2020-03-19 10:46:42 -04:00
b1af0a5bd8 add workaround in CMake support for building with MinGW cross-compilers 2020-03-19 09:00:36 -04:00
3bd529342e cross-compilation improvements 2020-03-19 09:00:36 -04:00
5fbb1fa331 small tweak to MinGW preset and correct corresponding entry in documentation 2020-03-19 09:00:36 -04:00
6c4a5a95e8 Merge pull request #1862 from akohlmey/restart-consistency
Add support to detect incomplete restart files and insufficient diskspace conditions
2020-03-19 08:51:57 -04:00
42cff9270c Merge branch 'master' into restart-consistency 2020-03-19 05:32:45 -04:00
245e200c48 Merge pull request #1945 from akohlmey/collected-small-changes
Collected small changes
2020-03-19 05:31:22 -04:00
b40bc3993d Merge branch 'master' into restart-consistency 2020-03-19 00:54:04 -04:00
53bc791b52 Merge branch 'collected-small-changes' of github.com:akohlmey/lammps into collected-small-changes 2020-03-19 00:51:30 -04:00
1fd956a696 fix bug when allocating and freeing newly added data structures 2020-03-19 00:51:14 -04:00
9825cd2569 silence compiler warnings 2020-03-19 00:50:30 -04:00
f589cdb8c6 Merge branch 'master' into collected-small-changes 2020-03-19 00:29:08 -04:00
130113927b add new preset "intel" to enable Intel compilers. Tweak Clang settings 2020-03-19 00:22:41 -04:00
b44d3afafe next batch of converted files 2020-03-18 23:41:37 -04:00
17dd794514 Merge pull request #1891 from charlessievers/fix_numerical_differentiation
New fix to compute properties by numerical differences
2020-03-18 23:31:18 -04:00
78a2f86235 whitespace fixes 2020-03-18 23:13:19 -04:00
060e4ff346 integrate fix numdiff into manual and remove bogus false positive from spellcheck 2020-03-18 23:09:43 -04:00
72b70a041d small tweaks to align fix numdiff with the rest of the manual 2020-03-18 23:04:02 -04:00
71582c99ca rearrange pointer variables to a more logical location, quell compiler warning and initialize all pointer 2020-03-18 22:51:16 -04:00
842fe150eb update coul/slater docs to align with recent changes in upstream 2020-03-18 21:07:57 -04:00
7ee63a0025 small spelling update 2020-03-18 21:02:40 -04:00
2714fad178 Merge branch 'master' into collected-small-changes
# Conflicts:
#	doc/src/Build_development.rst
2020-03-18 20:59:16 -04:00
164bf1b60e Merge pull request #1883 from evoyiatzis/master
Coulomb pair style with smeared out charges (coul/slater)
2020-03-18 20:52:47 -04:00
2b39c9968f Merge pull request #1913 from jrgissing/molecule_template_moleculeIDs
Molecule template: molecule-IDs and fragments
2020-03-18 20:31:29 -04:00
3e36acc533 Merge branch 'master' into restart-consistency
# Conflicts:
#	doc/src/fix_halt.rst
2020-03-18 20:30:00 -04:00
a569027a14 trip some excess padding to make the pages waste less space on small screens 2020-03-18 20:25:26 -04:00
d1388b4ea8 Merge pull request #1941 from e-kwsm/typo
Fix typos in comments and output.
2020-03-18 20:24:06 -04:00
9fa4d27bdd Merge commit 'refs/pull/1948/head' of github.com:lammps/lammps into collected-small-changes 2020-03-18 19:02:33 -04:00
986e5b746e new doc edits for refactored AtomVec styles 2020-03-18 16:40:29 -06:00
572eeae549 Move LAMMPS version string to side bar 2020-03-18 18:09:55 -04:00
8b75fb2950 initialize the python interpreter instance with python->init() 2020-03-18 16:56:47 -05:00
7824b3f4ab small html theme tweaks to unclutter top of page. move version string to navigation bar 2020-03-18 17:52:19 -04:00
b6ce32f651 step version string for next patch release 2020-03-18 17:18:46 -04:00
2cefddb16c avoid spelling errors 2020-03-18 17:16:47 -04:00
b903cc6dc7 remove excessive details about how to compile with cmake. refer to cmake docs. 2020-03-18 17:12:36 -04:00
c28b9f100c remove unused and broken function 2020-03-18 15:38:29 -04:00
460dd662e4 next chunk of converted atc doc files 2020-03-18 11:39:53 -04:00
ca1e1e2dff Convert British spelling to American 2020-03-18 23:09:23 +09:00
6054f29933 update false positives 2020-03-18 07:03:32 -04:00
1db2538239 use "command" instead of "cmd" 2020-03-18 07:02:49 -04:00
280d5cc6ae replace "xxxn't" with "xxx not" 2020-03-18 07:02:34 -04:00
38b1bf9ba5 add links to ctypes, ipython, and jupyter 2020-03-18 07:01:06 -04:00
f1679cd58c update false positives 2020-03-18 06:37:51 -04:00
5992bd24e7 some more converted atc fix_modify docs 2020-03-18 06:29:17 -04:00
d7cade9d46 Merge branch 'master' into molecule_template_moleculeIDs 2020-03-17 23:08:00 -06:00
d8a948d9b7 correct spelling 2020-03-17 21:13:03 -04:00
5109b7f1b1 correct incorrect spelling correction 2020-03-17 20:45:52 -04:00
9ebd1e4572 convert british spelling to american 2020-03-17 20:41:49 -04:00
0e764a3a48 correct spelling correction 2020-03-17 20:37:33 -04:00
7f53cbc1a0 fix grammar issue 2020-03-17 20:33:37 -04:00
e000c46c8c correct spelling 2020-03-17 20:29:18 -04:00
da0acd2790 update spelling false positives 2020-03-17 19:28:30 -04:00
4a5125f450 make behavior of CMAKE_TUNE_FLAGS more consistent and allow to turn it off 2020-03-17 19:16:02 -04:00
c1268bd1ec remove dead code 2020-03-17 18:55:05 -04:00
1d8e9ca014 include gcc sanitizer libraries 2020-03-17 18:53:28 -04:00
66f730b895 setting const on return value has no effect 2020-03-17 18:53:10 -04:00
f1e03aefc6 updating the pair potential docs, adding reference to OpenKIM 2020-03-17 16:07:22 -05:00
dae2bce6b0 we can use error->all() and also check the coordinate conversion for valid data 2020-03-17 16:53:22 -04:00
a7d2847140 parse image flags only for valid numbers and requize imz == 0 for 2d-systems 2020-03-17 16:43:34 -04:00
6f6855e831 do not advertise multiple targets in cmbuild wrapper 2020-03-17 15:57:33 -04:00
f893f4f8c7 set host specific optimizations in CMAKE_TUNE_FLAGS, so they can be conveniently overridden 2020-03-17 14:48:20 -04:00
5779731da3 provide cmbuild wrapper script for cmake. document it and add some improvements to CMake build docs 2020-03-17 13:04:38 -04:00
2c282b693e flag two more subroutines can trigger the variable tracking message and slow down compilation 2020-03-17 12:33:23 -04:00
b692da3b01 include building tools in "most" preset 2020-03-17 00:57:30 -04:00
3d66167f64 Merge pull request #1940 from junghans/fix_external_project_ninja
cmake: handle download with ninja thanks to requiring cmake version 3.10.
Also enable building Fortran targets with ninja-build version 1.10 and later/
2020-03-17 00:36:56 -04:00
3da1e127bf updating the false_positives with names causing warning 2020-03-16 08:42:11 -05:00
2d3423a493 updating the Packages_details, KIM package 2020-03-16 08:19:13 -05:00
cfc9fe7e39 updating the Commands_all, adding kim_property command 2020-03-16 08:18:19 -05:00
f203258ad5 updating the Build_extras, KIM package 2020-03-16 08:17:27 -05:00
dc373dbdeb updating the kim_commands doc 2020-03-16 08:15:59 -05:00
05b273d731 kim_property command
A new KIM command to make it as easy as possible to write
material properties computed in LAMMPS to standard KIM
property instance format.
2020-03-16 08:11:58 -05:00
4cdb904e54 next chunk of converted html files 2020-03-16 07:34:56 -04:00
0b293080c9 MSCG.cmake: fix build (hopefully) 2020-03-15 19:51:04 -06:00
c0b39e654f make MSCG library build compatible with using ninja 2020-03-15 19:07:26 -04:00
a4335904b6 need to recheck for MPI after enabling fortran to have MPI_Fortran_LIBRARIES set 2020-03-15 18:37:39 -04:00
d25b73f76d also report fortran MPI libs, if configured 2020-03-15 18:36:57 -04:00
0b6ab1d15a need to forward some (more) cmake settings to external projects. simplify KIM handling of fortran support. 2020-03-15 17:47:30 -04:00
f536451968 cmake: add generator to summary 2020-03-15 13:46:11 -06:00
266a755938 CheckIfNinjaSupportsFortran.cmake -> CheckGeneratorSupport.cmake 2020-03-15 13:45:47 -06:00
241f30fd53 added missing CheckIfNinjaSupportsFortran.cmake 2020-03-15 13:34:38 -06:00
9cf1d37556 cmake: move fortran check for ninja in an include 2020-03-14 07:21:06 -06:00
d60901e777 Merge remote-tracking branch 'origin/cmake_remove_ninja_warning' into fix_external_project_ninja 2020-03-14 07:05:29 -06:00
d941130e6a USER-SCAFACOS.cmake: fix build with ninja 2020-03-14 07:04:58 -06:00
ad9415d260 USER-PLUMED.cmake: fix build with ninja 2020-03-14 06:59:04 -06:00
9d3ca87953 MSCG.cmake: fix build with ninja 2020-03-14 06:52:06 -06:00
f9e2a2d120 LATTE.cmake: fix build with ninja 2020-03-14 06:51:00 -06:00
d0ec427293 KIM.cmake: fix build with ninja 2020-03-14 06:49:57 -06:00
649a8cc01a Fix typo 2020-03-14 13:57:48 +09:00
6cc7ac65a5 VORONOI.cmake: fix ninja build 2020-03-13 20:46:14 -06:00
b3040db1e7 Merge branch 'master' into atc-doc-to-rst
# Conflicts:
#	doc/src/fix_atc.rst
2020-03-13 21:12:12 -04:00
7c6353731e Merge pull request #1938 from akohlmey/doc-remove-backslash-underscore
Remove unneeded escapes in documentation source files
2020-03-13 21:01:04 -04:00
f1cc6c6e57 Merge pull request #1928 from akohlmey/collected-small-fixes
Collected small fixes and updates for the next patch release
2020-03-13 19:44:04 -04:00
6805113780 some more typesetting improvements 2020-03-13 19:41:33 -04:00
6d9064f98f Revert "fix bug in pair styles lubricate and lubricate/poly"
This reverts commit e368ae9f22.
As it contradicts the comments in the code above the segment.
2020-03-13 18:41:37 -04:00
097a4fb52e Merge branch 'doc-lammps-highlights' of github.com:rbberger/lammps into doc-remove-backslash-underscore 2020-03-13 18:39:40 -04:00
cdec46ba6a Some more code-blocks instead of parsed-literal 2020-03-13 18:38:47 -04:00
e4d6214d3b reformat source 2020-03-13 18:08:47 -04:00
f11e431300 some updates to building with cmake 2020-03-13 18:07:49 -04:00
8063088149 fix a couple of settings 2020-03-13 18:07:32 -04:00
cf21affd38 Add special highlights for commands which use IDs 2020-03-13 17:31:08 -04:00
a946a3b1b2 Merge pull request #1936 from rbberger/doc-fixes
Documentation updates
2020-03-13 17:07:05 -04:00
0c0308db3e some more fixups 2020-03-13 17:02:59 -04:00
a990f1dc89 some minor fixups 2020-03-13 16:42:08 -04:00
0b88950e03 replace '\_' with '_' in plain text where possible 2020-03-13 16:34:57 -04:00
924629538f restore support for triclinic cells with pppm/intel by calling the corresponding functions in PPPM in that case 2020-03-13 16:01:00 -04:00
4e525f1d56 PPPM in USER-INTEL does not support triclinic cells 2020-03-13 15:30:52 -04:00
1554aef454 Avoid syntax highlighting in blocks that don't specify language 2020-03-13 15:25:11 -04:00
8b8f928347 update documentation 2020-03-13 12:19:16 -05:00
14bade977e implement diameter/disc option for 2d simulations 2020-03-13 10:59:11 -05:00
e368ae9f22 fix bug in pair styles lubricate and lubricate/poly
Closes #1933
2020-03-13 11:11:27 -04:00
80d413b86c add reference to the fix_modify command overview in fix atc docs into all atc subcommand docs 2020-03-13 11:06:11 -04:00
5a81f69495 next set of converted AtC documentation 2020-03-13 10:19:12 -04:00
3574673901 four more atc subcommand doc files converted 2020-03-13 05:15:35 -04:00
0548dbc729 a couple more inputs and some formatting tuning/tweaking 2020-03-12 22:41:23 -04:00
3708c9f3f1 fix spelling issues 2020-03-12 21:32:06 -04:00
4df25d9c0b four more subcommands converted 2020-03-12 21:27:44 -04:00
e795d9ff6a added the "math_eigen.h" and "superpose3d.h" files 2020-03-12 17:33:50 -07:00
9f537f7f40 cmake: ninja-1.10 supports Fortran now 2020-03-12 14:34:46 -06:00
cbd8d07daf convert elementset AtC commands 2020-03-12 16:34:42 -04:00
0a21cdadb5 converted 4 more fix_modify atc commands 2020-03-12 15:49:05 -04:00
c139898f9f Convert a first set of AtC documentation html files to rst and add infrastructure files and links 2020-03-12 14:26:04 -04:00
fa7085be07 Merge pull request #1930 from giacomofiorin/remove-lepton-cxx11-check
Remove now unneeded check for C++11 in Lepton CMake build
2020-03-12 13:09:44 -04:00
437055f913 implement the scale keyword of fix adapt for diameter and charge 2020-03-12 11:11:38 -05:00
3b73b88b57 Merge pull request #1926 from akohlmey/doc-cleanup
Documentation cleanup
2020-03-12 11:49:54 -04:00
de6d1efe7a Remove now unneeded check for C++ standard in Lepton CMake build 2020-03-12 10:33:48 -04:00
010b1f7434 more conversion of parsed-literal to code-block and a bunch of other issues 2020-03-12 08:11:10 -04:00
e2b7054f74 include required header 2020-03-12 06:59:04 -04:00
4f0e9e2d26 some cleanup and consistency improvements in MESSAGE package code and docs 2020-03-12 06:51:06 -04:00
524b37598f correct various misspelled words and remove corresponding false positives 2020-03-12 06:25:42 -04:00
1372c20d94 Merge branch 'DOI' of github.com:e-kwsm/lammps into doc-cleanup 2020-03-12 05:43:44 -04:00
8af9d40392 Update DOI resolver
https://www.doi.org/doi_handbook/2_Numbering.html#htmlencoding
2020-03-12 16:53:24 +09:00
23a402ddd3 convert all remaining compute styles to use code-block instead of parsed literal 2020-03-12 01:56:13 -04:00
c6f846b925 converter tool for inlining external math is no longer needed 2020-03-12 01:20:30 -04:00
7e656b6cea convert more LAMMPS script examples to use code-block instead of parsed-literal 2020-03-12 01:11:38 -04:00
2775ebeb9d update trilinos URL 2020-03-12 00:47:00 -04:00
8a799c4b5f update cslib URLs to use https:// 2020-03-12 00:46:50 -04:00
30817162b9 update moltemplate URL to https:// 2020-03-12 00:42:23 -04:00
2c3d196ce8 remove broken link 2020-03-12 00:41:57 -04:00
3317f90940 update plumed URLs to use https:// 2020-03-12 00:32:44 -04:00
b961aa0542 update lammps.sandia.gov URLs to use https:// 2020-03-12 00:28:28 -04:00
6dd9a507ef update PyMol URLs 2020-03-12 00:21:20 -04:00
23569e67a0 update Ensight URL 2020-03-12 00:20:59 -04:00
e58aeebcce update URLs for pizza.py homepage 2020-03-12 00:13:58 -04:00
667c9f2a9f update AtomEye related URLs 2020-03-12 00:08:57 -04:00
cf48a0f01d use the name MacOS consistently 2020-03-11 19:32:43 -04:00
ddf14763f7 port diskfree detection in fix halt for MacOSX 2020-03-11 19:28:58 -04:00
e4489f58ca make forward declaration consistent with KIM-API code 2020-03-11 19:05:04 -04:00
d0f57289fc finish updating docs for fixes using code-block plus a few other improvements 2020-03-11 12:58:57 -04:00
5029bc9e1e more conversions from parsed-literal to code-block 2020-03-11 10:19:19 -04:00
8546bb51bf Layout images so they show up side-by-side in html and pdf and adapt to screen/paper size 2020-03-11 10:18:48 -04:00
e24feab5aa whitespace fix 2020-03-11 09:08:40 -04:00
68e5a18070 must try suffixes when recreating pair hybrid substyles from a restart 2020-03-11 08:45:35 -04:00
43a6c13f01 change 'groups' to 'fragments' 2020-03-10 21:11:34 -06:00
33996d9bac Merge pull request #1923 from akohlmey/collected_small_fixes
Collected small fixes for the next patch
2020-03-10 19:38:40 -04:00
b4919756d4 Fixed up delta note 2020-03-10 16:58:47 -06:00
a1188c035b Merge branch 'master' of https://github.com/charlessievers/lammps into fix_numerical_differentiation 2020-03-10 16:14:20 -06:00
7dafec1700 Removed misleading doc information and included errors 2020-03-10 16:12:02 -06:00
da2e6b2389 small cleaning 2020-03-10 21:55:17 +01:00
1f4725d652 replace parsed-literal with code-block where appropriate. typeset keywords in cursive 2020-03-10 16:54:04 -04:00
2d329a8b76 typeset symbols in water model howtos 2020-03-10 16:20:52 -04:00
ae9255e057 collapse multiple empty lines into a single empty line 2020-03-10 15:56:11 -04:00
e643e88913 remove trailing whitespace from documentation sources 2020-03-10 15:51:06 -04:00
e9f5b8246a whitespace fixes 2020-03-10 15:18:00 -04:00
5ffc12ffc0 Merge remote-tracking branch 'github/master' into collected_small_fixes 2020-03-10 15:16:07 -04:00
b9ff623c16 Merge pull request #1920 from jguenole/fire-debug
fire bug fix to avoid crashes due to lost atoms
2020-03-10 15:08:58 -04:00
7b7ca000b3 Merge pull request #1922 from weinbe2/snap-scratch
SNAP optimizations - hierarchical parallelism, scratch memory, data layout transformations
2020-03-10 15:07:46 -04:00
be037e222c Update pair_coul_slater.rst 2020-03-10 16:21:15 +01:00
9d7b15631d Add contributing author 2020-03-10 09:20:54 -06:00
30e997df69 Update false_positives.txt 2020-03-10 16:20:42 +01:00
4e31d622ce Whitespace and comment cleanup 2020-03-10 09:11:29 -06:00
f73e21f2ca Update false_positives.txt 2020-03-10 16:05:25 +01:00
b477d8920b Update pair_coul_slater.rst 2020-03-10 15:42:32 +01:00
8332afd2b2 one more spelling error 2020-03-10 15:27:51 +01:00
866899da21 correct spelling error in equation 2020-03-10 15:18:04 +01:00
35a63e21a0 Update pair_coul_slater.rst 2020-03-10 14:34:40 +01:00
4f917fff43 increase the Title underline 2020-03-10 11:51:17 +01:00
66c019e78b more explicitly describe how force/virial depend on random numbers 2020-03-10 06:43:13 -04:00
7959e3ff81 Move rst file to the correct location 2020-03-10 11:26:52 +01:00
6fb84eba32 Update false_positives.txt 2020-03-10 10:47:54 +01:00
3092ee89d3 Update Commands_pair.rst 2020-03-10 09:55:04 +01:00
6fb42a42b8 check for I/O error before closing restart file 2020-03-09 17:42:00 -04:00
cf64ba4059 whitespace cleanup 2020-03-09 16:31:53 -04:00
69a206f720 add diskfree check to fix halt 2020-03-09 16:23:20 -04:00
072ce8947b list errors and warnings from fix halt 2020-03-09 16:23:02 -04:00
50c75b3538 Merge branch 'master' into restart-consistency 2020-03-09 13:41:35 -04:00
903e33d86e Added atom map into example, enforce atom map added to fix_numdiff, added error statement to fix_numdiff.h 2020-03-09 10:33:04 -06:00
d2986b7495 update CMake presets 2020-03-09 11:04:26 -04:00
a0fb7c812c Merge branch 'master' into collected_small_fixes 2020-03-09 10:53:42 -04:00
3be6347ad4 Merge pull request #1924 from akohlmey/rename-user-meso
Rename USER-MESO package to USER-MESODPD
2020-03-09 10:53:22 -04:00
740717d114 add false positives 2020-03-09 10:00:14 -04:00
a6086c279b rename USER-MESO package to USER-MESODPD and update related files and folders 2020-03-09 09:48:49 -04:00
536e7a969a silence compiler warning and provide extra comment about optimization 2020-03-09 09:17:49 -04:00
45902772b7 Merge branch 'minimizer' of github.com:yafshar/lammps into collected_small_fixes 2020-03-09 09:15:40 -04:00
73186e4d26 correction to molecule-ID-increment logic 2020-03-08 16:06:49 -06:00
d717eeba66 Update molecule.rst 2020-03-07 22:57:44 -07:00
2304cdd30d let fix pour know about molecule template molecule IDs 2020-03-07 21:58:47 -07:00
21ae5ac533 groups in molecule templates: docs 2020-03-07 20:03:33 -07:00
475b7dc4f4 provide access to number of local data rows for fixes 2020-03-07 10:58:35 -05:00
6f1d913e7e simplify library interface code to extract peratom or local data from computes 2020-03-07 10:57:51 -05:00
943540b015 bugfix for extracting length of local data through python interface 2020-03-07 10:19:03 -05:00
b77837e3b0 documentation file for the coul/slater styles 2020-03-07 12:40:39 +01:00
337cee7b49 add groups to molecule templates 2020-03-06 22:51:42 -07:00
21e4d92507 another memory correction 2020-03-06 22:49:23 -07:00
1110124627 let 'fix deposit' know about molecule template molecule IDs 2020-03-06 22:04:16 -07:00
5c003b8db2 let create_atoms know about molecule template molecule IDs 2020-03-06 21:38:01 -07:00
e71d298f65 molecule template molecule IDs: error docs 2020-03-06 20:40:34 -07:00
bdbbe00ec7 Merge branch 'master' into feature-cnt 2020-03-06 18:41:38 -05:00
8c580c1d47 Merge pull request #1 from lammps/master
update fork to the state of the current master
2020-03-06 18:39:09 -05:00
a3eee419a1 minor optimization, avoiding double computation and extra communication 2020-03-06 09:01:28 -06:00
ddc36973f0 final reference info 2020-03-06 14:55:52 +01:00
a70aac2f24 Merge pull request #74 from lammps/master
rebase
2020-03-05 22:49:41 -07:00
0fb341f7eb Merge pull request #73 from lammps/master
rebase
2020-03-05 22:46:07 -07:00
980ef8095a include USER-REACTION in "most" preset 2020-03-05 22:57:17 -05:00
bc8fa088be Merge pull request #1822 from jrgissing/bond/react-new-examples-and-package
Bond/react: new examples and repackage
2020-03-05 22:49:53 -05:00
21f2ec3a25 Merge branch 'master' into bond/react-new-examples-and-package 2020-03-05 20:08:19 -07:00
8c48a27c1d fix another display issue in pair style srp docs 2020-03-05 15:39:13 -05:00
c38380afc2 bugfix and small tweak for pair style srp docs 2020-03-05 15:36:15 -05:00
1fb54c307c Merge pull request #1918 from akohlmey/collected-small-fixes
Collected small fixes for the next patch
2020-03-05 15:16:50 -05:00
54a37aa4ef fix spelling issue 2020-03-05 14:43:22 -05:00
0fba0b1bc1 handle empty build type 2020-03-05 14:39:40 -05:00
5a3a5d86d4 reduce compiler warnings and avoid clash with KOKKOS 2020-03-05 14:27:33 -05:00
606eaf61f7 Merge branch 'master' into fix_numerical_differentiation 2020-03-05 09:58:50 -07:00
36ec95c2f5 fixed typo in numdiff example input 2020-03-05 09:55:25 -07:00
fb3a8f5bb1 Merge pull request #1909 from giacomofiorin/colvars-update
Update Colvars to version 2020-02-27
2020-03-05 10:18:01 -05:00
b0c6641f1b tweak compiler flags for Intel and GNU 2020-03-05 10:16:38 -05:00
1642bf5afc always skip deprecated C++ MPI interface 2020-03-05 10:16:21 -05:00
2e8aeaef46 remove mentioning external tex files from contribution guide 2020-03-05 09:21:01 -05:00
d0160cc208 Merge pull request #1915 from akohlmey/cpp-11-cmake-3.10
Require C++11 and CMake 3.10
2020-03-05 09:14:46 -05:00
1ee67c20d9 comments 2020-03-05 11:57:01 +01:00
ca89c460bf remove space 2020-03-05 11:49:02 +01:00
022dd4a4e4 special v evaluation to limite dtv each time v is zeroed 2020-03-05 11:39:48 +01:00
27fdbfa8a1 minor modification of halfstepback with correct dt 2020-03-05 10:49:39 +01:00
ae045e4445 indented note block in fix_num_diff.rst 2020-03-04 19:48:12 -07:00
02bdccbae1 added yyy to false positives 2020-03-04 19:45:13 -07:00
be138d368e Merge branch 'master' into fix_numerical_differentiation 2020-03-04 19:11:39 -07:00
968f44601c Updated doc page with delta info and simplified example 2020-03-04 19:08:57 -07:00
6786efa224 Merge commit 'refs/pull/1916/head' of github.com:lammps/lammps into collected-small-fixes 2020-03-04 17:04:45 -05:00
14d17b3513 clean the superfluous newline
I believe this newline in the document is superfluous.
2020-03-04 16:41:27 -05:00
60bba3e238 Fix var name 2020-03-04 13:09:25 -07:00
ec87a51a61 put C++11 compliance check into CMake 2020-03-04 14:52:38 -05:00
7bbf070757 document new C++ and CMake requirements in manual 2020-03-04 14:37:51 -05:00
72a9ce0f32 Add loop chunking option to compute_orientorder_atom_kokkos 2020-03-04 12:31:37 -07:00
ab51ae854e require C++11 to compile LAMMPS 2020-03-04 14:28:47 -05:00
a972850b39 require CMake version 3.10. remove tests for older versions. 2020-03-04 14:28:33 -05:00
e9544218e6 some corrections to the building the manual documentation 2020-03-04 14:14:12 -05:00
3ca93f10b3 don't run atof() on a NULL pointer in case a potential file has an empty line 2020-03-04 14:00:52 -05:00
21f278f47f Merge branch 'master' of github.com:lammps/lammps into kk_compute_orientorder_atom 2020-03-04 09:08:53 -07:00
b55a6b0fd1 memory correction 2020-03-03 23:28:27 -07:00
b3425afef5 Merge pull request #72 from lammps/master
rebase
2020-03-03 23:12:46 -07:00
a184cb34ee merge master into chem_snap 2020-03-03 10:08:35 -08:00
cd61cfe8c7 SNAP optimizations, taking advantage of improved data layouts, scratch memory, and hierarchical parallelism. 2020-03-03 13:02:04 -05:00
6354777d09 Merge pull request #1914 from akohlmey/next_lammps_version
Step version string for next patch and stable version
2020-03-03 10:27:12 -05:00
a739b8c6b7 Commit JT 030320
- modified fix/precession for correct mag energy calc.
- reran all benchmark / examples in serial for verif
- to do: rerun mpi examples, and clean code
2020-03-03 07:32:13 -07:00
3eeb7547b5 step version string for next patch and stable version 2020-03-03 07:25:18 -05:00
c5ee78ca1d Merge pull request #1910 from akohlmey/documentation-fixes
Some more conversions and corrections for the LAMMPS manual
2020-03-03 06:25:44 -05:00
7d598ba8d7 synchronize list of hardware architectures supported by KOKKOS with list in cmake file 2020-03-03 03:33:23 -05:00
7f84de17bd Merge pull request #1912 from migueldiascosta/epyc_kokkos_arch
add EPYC to KOKKOS_ARCH_LIST
2020-03-03 03:32:03 -05:00
a4a5d24a69 add link to github support for subversion clients 2020-03-03 03:19:25 -05:00
0723bf3db7 setup issues with fix numdiff 2020-03-02 13:32:05 -07:00
9339bb085f Update molecule.rst 2020-03-02 01:06:42 -07:00
90bfa6b783 add molecule IDs to molecule templates
for when more than one molecule per file
2020-03-02 00:53:19 -07:00
8636e86f38 Merge pull request #70 from lammps/master
rebase
2020-03-01 22:39:08 -07:00
8f608f6a35 lo-level -> low-level 2020-03-01 10:30:06 -05:00
ff614957c6 encode some more mathematical expressions and symbols 2020-03-01 09:25:20 -05:00
2455e35fd8 typeset mixing rules with embedded math 2020-03-01 08:51:29 -05:00
8765b14377 add EPYC to KOKKOS_ARCH_LIST 2020-03-01 13:45:06 +08:00
8662733dcd convert the remainder of raw html typesetting in pair style smtbq 2020-02-29 14:45:39 -05:00
228a0bfa2e replace hi- with high- 2020-02-29 11:37:47 -05:00
6f47f110f1 use k_B consistently, fix some more math. convert some transcriptions to math 2020-02-29 11:37:31 -05:00
07fc624509 typeset reduced units 2020-02-29 06:41:28 -05:00
66a0e27edf some more cases where we can use embedded math 2020-02-29 04:57:44 -05:00
0e58c1b299 fix issues with restoring box-shifted coords 2020-02-28 12:55:27 -07:00
aaed572b01 Merge branch 'fix_numerical_differentiation' of github.com:charlessievers/lammps into charlie 2020-02-28 12:53:28 -07:00
cdb4275ced fix issue with restoring box-shifted atom coords 2020-02-28 12:53:04 -07:00
e6c9efe6bf convert lists to tables for more compact presentation 2020-02-28 18:52:13 +01:00
f02b2485fa tweak command overview table width so it is readable in PDF 2020-02-28 18:51:52 +01:00
71c11c32e3 replace more raw html code and add syntax highlighting 2020-02-28 18:00:43 +01:00
19d334908b replace raw html with embedded math expressions and fix related issues 2020-02-28 17:39:57 +01:00
7be004512f Update Colvars to version 2020-02-27
This update contains several small new features or usability improvements.
    Descriptions and authorship information can be accessed from the pull
    requests listed below.

    Allow setting sigma parameter directly for metadynamics
    https://github.com/Colvars/colvars/pull/325

    Remove default values for lowerWall and upperWall legacy keywords
    https://github.com/Colvars/colvars/pull/324

    biasActualColvar option to bypass extended-Lagragian for a bias
    https://github.com/Colvars/colvars/pull/321

    Flexible restart-reading
    https://github.com/Colvars/colvars/pull/320
2020-02-27 19:55:31 -05:00
03985454ed some more formatting and math conversion improvements 2020-02-27 18:18:49 -05:00
fbee5966f6 added cstring back to includes 2020-02-27 14:42:31 -07:00
7a720ee9cf removed cstring from includes and fixed style warnings 2020-02-27 13:54:29 -07:00
10fa9aa074 added cstring to includes 2020-02-27 11:37:02 -07:00
35f4a62566 Change final displace atom to reset atom to save on memory and computation 2020-02-27 11:31:33 -07:00
236535f61b fixed include, fixed numdiff forces getting called before initialization 2020-02-27 10:48:46 -07:00
67bfda532f mods to fix numdiff 2020-02-27 09:52:23 -07:00
d89db2ac2a files generated by the in.slater example script 2020-02-27 16:03:07 +01:00
7849de15b0 Create in.slater 2020-02-27 16:01:38 +01:00
fe1ac99ae7 bond/react: docs tweak 2020-02-26 20:08:58 -07:00
c31917186e Tweak error message 2020-02-26 14:34:42 -07:00
eb80fd3031 Add method to copy Kokkos neighbor list to CPU list 2020-02-26 14:26:46 -07:00
de9691a751 Update README 2020-02-26 14:06:38 +01:00
04e48999b2 Delete pair_coul_slater_cut.h
move this file to USER-MISC
2020-02-26 14:04:12 +01:00
895f7aa46d Delete pair_coul_slater_cut.cpp
move this file to USER-MISC
2020-02-26 14:03:43 +01:00
5be0f1525a source files for pair coul/slater
Source files for long- and short-range coulombic interactions which are smeared with an exponential function (slater-type of smearing)
2020-02-26 14:02:53 +01:00
49873f765c Added comment to credit myself 2020-02-25 16:53:04 -07:00
f18f2537e6 Updated error/warnings section 2020-02-25 16:35:54 -07:00
b0eb940b05 Added numdiff to false positives 2020-02-25 16:30:13 -07:00
72891aacb2 Fixed groups not working 2020-02-25 16:23:35 -07:00
809d481fd1 Merge branch 'master' of https://github.com/charlessievers/lammps into fix_numerical_differentiation 2020-02-25 15:35:53 -07:00
13bff07606 Added documentation, added an example, avoided position round off, added in compute_pe's compute_scalar, now fix produces per-atom array instead of global array 2020-02-25 15:32:37 -07:00
928ac7f271 Fix typo 2020-02-25 10:34:29 -07:00
a44e49e276 Add Kokkos version of compute coord/atom 2020-02-25 10:22:30 -07:00
a3c5c49a6b Make k_qnarray public 2020-02-25 10:20:21 -07:00
59370d797f Use more generic type for k_qnarray 2020-02-25 08:58:01 -07:00
c505058c5c Add flag for Kokkos computes 2020-02-24 15:43:29 -07:00
29075c8257 Fix compile issue 2020-02-24 13:31:13 -07:00
796e1ac4e9 Update docs 2020-02-24 13:29:22 -07:00
dd3d5f1f95 Merge branch 'master' of github.com:lammps/lammps into kk_compute_orientorder_atom 2020-02-24 13:28:06 -07:00
674781fe0e Add Kokkos version of compute orientorder/atom 2020-02-24 13:27:40 -07:00
09d0df43e2 Commit JT 022120
- added message for only one precession/spin (+doc)
- added a per pair/spin class emag table
2020-02-21 17:53:14 -07:00
361f7bb0fd Commit JT 022120
- added precession_spin management in compute_spin
- to do: add it for pairs
- make sure users only declare 1 precession/spin
2020-02-21 12:07:42 -07:00
95de4f38c9 Edit includes 2020-02-20 23:35:47 -07:00
f0cf7ba3c0 First draft of numerical difference fix 2020-02-20 23:15:53 -07:00
b9a9bebd37 delay change_box error check on per-atom restart data existing 2020-02-20 12:48:44 -07:00
3298a86bd9 Reduce redundant copying using UCL_H_Vec::view 2020-02-20 18:32:52 +03:00
9c507e6b81 Update Packages_details.rst 2020-02-17 21:53:14 -07:00
49e82e738d Update false_positives.txt 2020-02-17 21:50:54 -07:00
8b92252981 update user-misc readme 2020-02-17 21:42:22 -07:00
ec887b37da Merge branch 'master' of https://github.com/lammps/lammps into bond/react-new-examples-and-package 2020-02-17 21:34:20 -07:00
4b11e43660 Merge pull request #68 from lammps/master
rebase
2020-02-17 21:07:30 -07:00
02dde6e35f Merge pull request #67 from lammps/master
rebase
2020-02-17 21:04:27 -07:00
a7878096f0 Commit2 JT 021720
- small change in energy
- to do: check w and rework F
2020-02-17 17:35:59 -07:00
994e1318dd Commit JT 021720
- initial commit
- added corrected Neel, new E and w calc.
2020-02-17 16:59:01 -07:00
213bd9de3e Merge pull request #1 from evoyiatzis/evoyiatzis-slater
smeared charges for DPD
2020-02-15 17:47:45 +01:00
60305df69d source code for slater-type electrostatics 2020-02-15 17:40:12 +01:00
1430d1cb12 ...and one more 2020-02-08 15:30:13 -05:00
f82892c45a refactor one more fix 2020-02-08 15:28:10 -05:00
8f3c94f33b document new error message 2020-02-08 15:22:54 -05:00
5f68f3006f replace Fix::box_change_xxx variables with Fix::box_change bitmask and add check to Domain::init()
This allows a more specific tracking of whether multiple fixes are
modifying the same box parameter and error out in that case.
2020-02-08 15:12:26 -05:00
8c82c60f2f fix of style related issues 2020-02-07 13:29:05 -05:00
0204bf286b CNT package
The tubular potential model (TPM) force field for Carbon Nanotubes (CNTs) package.
2020-02-06 16:50:38 -05:00
e982f418d3 remove whitespace issues 2020-02-05 13:54:56 -05:00
244828d193 add map IDs check to dihedral constraint 2020-02-02 18:05:27 -07:00
33fc22b752 Fix echo in Makefile 2020-02-03 01:55:20 +03:00
b35c271a12 spelling error 2020-01-31 16:31:42 -05:00
aefaab5769 readme for user-misc 2020-01-31 16:00:16 -05:00
14dfe53837 doc edit 2020-01-31 15:54:01 -05:00
035fba10e5 fixed special_bonds requirements 2020-01-31 15:33:59 -05:00
9e8806bd22 Addition to lib/gpu/README for HIP 2020-01-31 21:26:52 +03:00
923ccaaff9 fixed error handling 2020-01-31 12:56:02 -05:00
6bb30a3312 revised doc for bond_style special 2020-01-31 12:26:00 -05:00
9b3a93d222 add bond_style special to the list 2020-01-31 11:30:41 -05:00
860e67873c rename lmp_restart.h to lmprestart.h to avoid confusing it with lmp_<machine> files 2020-01-31 11:18:08 -05:00
c021a2d185 multiple consistency improvements for restart files
- make defines and enumerators automatically consistent by moving them to a shared header file
- change VERSION_NUMERIC to FORMAT_REVISION (and corresponding function names)
- new class member revision in ReadRestart class to allow backward compatibility
- step current FORMAT_REVISION to 1
- write the magic string a the end of each restart
- add a check, that skips to the end of a file and checks for the magic string and then returns
  but do this only if FORMAT_REVISION is 1 or larger for backward compatibility
2020-01-31 10:49:59 -05:00
950300c86a Merge branch 'atomvec-custom' of github.com:lammps/lammps into atomvec-custom 2020-01-30 14:28:10 -07:00
d34f9af291 fixed bug with writing of data file velocities 2020-01-30 14:27:45 -07:00
58a03f12eb draft doc page for bond_style special 2020-01-30 15:25:55 -05:00
ddfdabf189 added bond style special 2020-01-30 14:16:59 -05:00
a35dc180bd bond/react: dihedral reaction constraint 2020-01-30 00:28:59 -07:00
34778c4919 Restore virtual keyword for Kokkos package 2020-01-29 14:10:42 -07:00
44178a335e Propagate rename to Kokkos styles 2020-01-29 13:56:34 -07:00
831c550397 Made if statement block verbose and cleaned it up 2020-01-29 10:51:59 -07:00
66c5fa2abd Merge 'gpu_hip_port' into master 2020-01-28 20:35:08 +03:00
453649453e Merge pull request #65 from jrgissing/master
rebase
2020-01-24 21:25:59 -07:00
e1e5a1e47b Merge pull request #64 from lammps/master
rebase
2020-01-24 21:22:29 -07:00
0bb0d6f265 Fix snap.cpp to not force more coeff if multielement and not alloy_flag 2020-01-24 15:54:19 -07:00
deb45f4bab Updated dbidrj to fix jjz position update and cleaned up random prints sna.cpp 2020-01-24 13:01:09 -07:00
b3a7aa6541 correct whitespace issue 2020-01-22 17:48:50 -05:00
25cdcc7592 Merge branch 'master' into fix-dummy 2020-01-22 17:25:52 -05:00
d897949ff8 bond/react: check for valid IDs in map file 2020-01-21 23:21:41 -07:00
3dc14a4246 Removed unnecessary ztmp calculations, fixed yi chemsnap multiplicity conditions, added zptr to remove additional idouble * idxz_max calculations. 2020-01-21 17:00:29 -07:00
b50f35edb7 Updated Snap to work with ChemSnap 2020-01-17 19:11:36 -07:00
683d6ce9b3 'install' USER-REACTION package 2020-01-09 21:11:30 -07:00
c3922c7e35 rename package USER-REACTION 2020-01-09 20:07:41 -07:00
a36acf5547 USER-REACT readme 2020-01-01 13:07:46 -05:00
a6eb3ad458 bond/react: update docs (repackage) 2020-01-01 13:06:10 -05:00
96fb374641 bond/react: create USER-REACT 2020-01-01 13:04:59 -05:00
1dc8d4acaa bond/react: repackage examples 2020-01-01 12:58:10 -05:00
293e5c3242 bond/react: tiny polystyrene example 2019-12-31 19:35:42 -05:00
895c6be182 bond/react: tiny epoxy example 2019-12-31 19:32:28 -05:00
f7e214ee8d Merge pull request #63 from lammps/master
rebase
2019-12-27 14:21:44 -05:00
ccc8f29d60 added support for USER-AWPMD package 2019-12-18 12:04:37 -07:00
b6374bacfb enable replicate to work with local ptrs 2019-12-18 08:56:03 -07:00
db6d272303 more additions to USER atom styles and bug fixes 2019-12-13 13:54:12 -07:00
9af08f2d54 small change for atom_style mdpd 2019-12-06 10:06:16 -07:00
c262d08e84 remove comments 2019-12-04 12:32:04 -05:00
f51ee40640 atom_vec.cpp 2019-12-03 11:24:12 -07:00
9e52980aaa all of remaining USER package styles except AWPMD 2019-12-03 11:15:16 -07:00
ccca80a6a5 changes to enable atom_style hybrid to work 2019-12-02 15:39:54 -07:00
4f6cb13592 added atom styles with bonus data, also a few USER packages 2019-11-27 16:03:50 -07:00
f5fb9f2012 Merge pull request #60 from lammps/master
rebase
2019-11-27 14:46:09 -08:00
06964c58de Merge branch 'master' into multi-comm-tiled
Conflicts resolved:
    src/comm_tiled.cpp
2019-11-27 12:12:03 -05:00
6c18e366d7 changes to start to make atom style hybrid work 2019-11-26 18:34:51 -07:00
3736af0aaf initial refactoring on AtomVec class 2019-11-26 13:42:32 -07:00
f2795f26b8 Merge branch 'master' into fix-dummy
sync with latest whitespace changes
2019-11-06 13:49:59 -07:00
6af726e589 undo a re-bug change - sigh 2019-11-06 10:26:13 -07:00
d34502669c fixed a typo 2019-11-06 09:38:38 -07:00
09e539cce1 make IDs of 2 fix neigh history instances unique 2019-11-06 08:35:31 -07:00
ca0cf23a4b fix a bug with indexing the replaced fix and optional args 2019-11-05 16:59:44 -07:00
d8ef5f6991 added internal fix dummy command to enable more control of fix ordering 2019-11-05 12:57:34 -07:00
49d9089a63 USER-PAFI examples 2019-05-22 13:50:07 +02:00
646d833027 USER-PAFI 2019-05-22 10:29:29 +02:00
a76ba95f5b comm_tiled_sendself_fix 2019-04-11 12:51:46 -06:00
0f88513f65 updated comm tiled to have multi 2019-01-21 12:29:31 -05:00
9a3f90294c updated comm tiled to have multi 2019-01-21 11:50:10 -05:00
7473 changed files with 1443063 additions and 2342163 deletions

3
.gitattributes vendored Normal file
View File

@ -0,0 +1,3 @@
.gitattributes export-ignore
.gitignore export-ignore
.github export-ignore

19
.github/CODEOWNERS vendored
View File

@ -10,6 +10,7 @@ lib/molfile/* @akohlmey
lib/qmmm/* @akohlmey lib/qmmm/* @akohlmey
lib/vtk/* @rbberger lib/vtk/* @rbberger
lib/kim/* @ellio167 lib/kim/* @ellio167
lib/mesont/* @iafoss
# whole packages # whole packages
src/COMPRESS/* @akohlmey src/COMPRESS/* @akohlmey
@ -22,10 +23,10 @@ src/SPIN/* @julient31
src/USER-CGDNA/* @ohenrich src/USER-CGDNA/* @ohenrich
src/USER-CGSDK/* @akohlmey src/USER-CGSDK/* @akohlmey
src/USER-COLVARS/* @giacomofiorin src/USER-COLVARS/* @giacomofiorin
src/USER-DPD/* @timattox
src/USER-INTEL/* @wmbrownintel src/USER-INTEL/* @wmbrownintel
src/USER-MANIFOLD/* @Pakketeretet2 src/USER-MANIFOLD/* @Pakketeretet2
src/USER-MEAMC/* @martok src/USER-MEAMC/* @martok
src/USER-MESONT/* @iafoss
src/USER-MOFFF/* @hheenen src/USER-MOFFF/* @hheenen
src/USER-MOLFILE/* @akohlmey src/USER-MOLFILE/* @akohlmey
src/USER-NETCDF/* @pastewka src/USER-NETCDF/* @pastewka
@ -46,7 +47,7 @@ src/GPU/pair_vashishta_gpu.* @andeplane
src/KOKKOS/pair_vashishta_kokkos.* @andeplane src/KOKKOS/pair_vashishta_kokkos.* @andeplane
src/MANYBODY/pair_vashishta_table.* @andeplane src/MANYBODY/pair_vashishta_table.* @andeplane
src/MANYBODY/pair_atm.* @sergeylishchuk src/MANYBODY/pair_atm.* @sergeylishchuk
src/USER-MISC/fix_bond_react.* @jrgissing src/USER-REACTION/fix_bond_react.* @jrgissing
src/USER-MISC/*_grem.* @dstelter92 src/USER-MISC/*_grem.* @dstelter92
src/USER-MISC/compute_stress_mop*.* @RomainVermorel src/USER-MISC/compute_stress_mop*.* @RomainVermorel
@ -112,17 +113,31 @@ src/fix_nh.* @athomps
src/info.* @akohlmey @rbberger src/info.* @akohlmey @rbberger
src/timer.* @akohlmey src/timer.* @akohlmey
src/min* @sjplimp @stanmoore1 src/min* @sjplimp @stanmoore1
src/utils.* @akohlmey @rbberger
src/math_eigen_impl.h @jewettaij
# tools # tools
tools/msi2lmp/* @akohlmey tools/msi2lmp/* @akohlmey
tools/emacs/* @HaoZeke tools/emacs/* @HaoZeke
tools/singularity/* @akohlmey @rbberger
tools/code_standard/* @rbberger
tools/valgrind/* @akohlmey
# tests
unittest/* @akohlmey @rbberger
# cmake # cmake
cmake/* @junghans @rbberger cmake/* @junghans @rbberger
cmake/Modules/Packages/USER-COLVARS.cmake @junghans @rbberger @giacomofiorin
cmake/Modules/Packages/KIM.cmake @junghans @rbberger @ellio167
cmake/presets/*.cmake @junghans @rbberger @akohlmey
# python # python
python/* @rbberger python/* @rbberger
# fortran
fortran/* @akohlmey
# docs # docs
doc/utils/*/* @rbberger doc/utils/*/* @rbberger
doc/Makefile @rbberger doc/Makefile @rbberger

View File

@ -67,15 +67,18 @@ How quickly your contribution will be integrated depends largely on how much eff
Here is a checklist of steps you need to follow to submit a single file or user package for our consideration. Following these steps will save both you and us time. See existing files in packages in the source directory for examples. If you are uncertain, please ask on the lammps-users mailing list. Here is a checklist of steps you need to follow to submit a single file or user package for our consideration. Following these steps will save both you and us time. See existing files in packages in the source directory for examples. If you are uncertain, please ask on the lammps-users mailing list.
* C++ source code must be compatible with the C++-11 standard. Packages may require a later standard, if justified.
* All source files you provide must compile with the most current version of LAMMPS with multiple configurations. In particular you need to test compiling LAMMPS from scratch with `-DLAMMPS_BIGBIG` set in addition to the default `-DLAMMPS_SMALLBIG` setting. Your code will need to work correctly in serial and in parallel using MPI. * All source files you provide must compile with the most current version of LAMMPS with multiple configurations. In particular you need to test compiling LAMMPS from scratch with `-DLAMMPS_BIGBIG` set in addition to the default `-DLAMMPS_SMALLBIG` setting. Your code will need to work correctly in serial and in parallel using MPI.
* For consistency with the rest of LAMMPS and especially, if you want your contribution(s) to be added to main LAMMPS code or one of its standard packages, it needs to be written in a style compatible with other LAMMPS source files. This means: 2-character indentation per level, no tabs, no trailing whitespace, no lines over 80 characters. I/O is done via the C-style stdio library, style class header files should not import any system headers, STL containers should be avoided in headers, and forward declarations used where possible or needed. All added code should be placed into the LAMMPS_NS namespace or a sub-namespace; global or static variables should be avoided, as they conflict with the modular nature of LAMMPS and the C++ class structure. There MUST NOT be any "using namespace XXX;" statements in headers. In the implementation file (<name>.cpp) system includes should be placed in angular brackets (<>) and for c-library functions the C++ style header files should be included (<cstdio> instead of <stdio.h>, or <cstring> instead of <string.h>). This all is so the developers can more easily understand, integrate, and maintain your contribution and reduce conflicts with other parts of LAMMPS. This basically means that the code accesses data structures, performs its operations, and is formatted similar to other LAMMPS source files, including the use of the error class for error and warning messages. * For consistency with the rest of LAMMPS and especially, if you want your contribution(s) to be added to main LAMMPS code or one of its standard packages, it needs to be written in a style compatible with other LAMMPS source files. This means: 2-character indentation per level, no tabs, no trailing whitespace, no lines over 80 characters. I/O is done via the C-style stdio library, style class header files should not import any system headers, STL containers should be avoided in headers, and forward declarations used where possible or needed. All added code should be placed into the LAMMPS_NS namespace or a sub-namespace; global or static variables should be avoided, as they conflict with the modular nature of LAMMPS and the C++ class structure. There MUST NOT be any "using namespace XXX;" statements in headers. In the implementation file (<name>.cpp) system includes should be placed in angular brackets (<>) and for c-library functions the C++ style header files should be included (<cstdio> instead of <stdio.h>, or <cstring> instead of <string.h>). This all is so the developers can more easily understand, integrate, and maintain your contribution and reduce conflicts with other parts of LAMMPS. This basically means that the code accesses data structures, performs its operations, and is formatted similar to other LAMMPS source files, including the use of the error class for error and warning messages.
* Source, style name, and documentation file should follow the following naming convention: style names should be lowercase and words separated by a forward slash; for a new fix style 'foo/bar', the class should be named FixFooBar, the name of the source files should be 'fix_foo_bar.h' and 'fix_foo_bar.cpp' and the corresponding documentation should be in a file 'fix_foo_bar.rst'. * Source, style name, and documentation file should follow the following naming convention: style names should be lowercase and words separated by a forward slash; for a new fix style 'foo/bar', the class should be named FixFooBar, the name of the source files should be 'fix_foo_bar.h' and 'fix_foo_bar.cpp' and the corresponding documentation should be in a file 'fix_foo_bar.rst'.
* If you want your contribution to be added as a user-contributed feature, and it is a single file (actually a `<name>.cpp` and `<name>.h` file) it can be rapidly added to the USER-MISC directory. Include the one-line entry to add to the USER-MISC/README file in that directory, along with the 2 source files. You can do this multiple times if you wish to contribute several individual features. * If you want your contribution to be added as a user-contributed feature, and it is a single file (actually a `<name>.cpp` and `<name>.h` file) it can be rapidly added to the USER-MISC directory. Include the one-line entry to add to the USER-MISC/README file in that directory, along with the 2 source files. You can do this multiple times if you wish to contribute several individual features.
* If you want your contribution to be added as a user-contribution and it is several related features, it is probably best to make it a user package directory with a name like USER-FOO. In addition to your new files, the directory should contain a README text file. The README should contain your name and contact information and a brief description of what your new package does. If your files depend on other LAMMPS style files also being installed (e.g. because your file is a derived class from the other LAMMPS class), then an Install.sh file is also needed to check for those dependencies. See other README and Install.sh files in other USER directories as examples. Send us a tarball of this USER-FOO directory. * If you want your contribution to be added as a user-contribution and it is several related features, it is probably best to make it a user package directory with a name like USER-FOO. In addition to your new files, the directory should contain a README text file. The README should contain your name and contact information and a brief description of what your new package does. If your files depend on other LAMMPS style files also being installed (e.g. because your file is a derived class from the other LAMMPS class), then an Install.sh file is also needed to check for those dependencies. See other README and Install.sh files in other USER directories as examples. Send us a tarball of this USER-FOO directory.
* Your new source files need to have the LAMMPS copyright, GPL notice, and your name and email address at the top, like other user-contributed LAMMPS source files. They need to create a class that is inside the LAMMPS namespace. If the file is for one of the USER packages, including USER-MISC, then we are not as picky about the coding style (see above). I.e. the files do not need to be in the same stylistic format and syntax as other LAMMPS files, though that would be nice for developers as well as users who try to read your code. * Your new source files need to have the LAMMPS copyright, GPL notice, and your name and email address at the top, like other user-contributed LAMMPS source files. They need to create a class that is inside the LAMMPS namespace. If the file is for one of the USER packages, including USER-MISC, then we are not as picky about the coding style (see above). I.e. the files do not need to be in the same stylistic format and syntax as other LAMMPS files, though that would be nice for developers as well as users who try to read your code.
* You **must** also create or extend a documentation file for each new command or style you are adding to LAMMPS. For simplicity and convenience, the documentation of groups of closely related commands or styles may be combined into a single file. This will be one file for a single-file feature. For a package, it might be several files. These are files in the [reStructuredText](https://docutils.sourceforge.io/rst.html) markup language, that are then converted to HTML and PDF. The tools for this conversion are included in the source distribution, and the translation can be as simple as doing "make html pdf" in the doc folder. Thus the documentation source files must be in the same format and style as other `<name>.rst` files in the lammps/doc/src directory for similar commands and styles; use one or more of them as a starting point. An introduction to reStructuredText can be found at [https://docutils.sourceforge.io/docs/user/rst/quickstart.html](https://docutils.sourceforge.io/docs/user/rst/quickstart.html). As appropriate, the text files can include mathematical expressions in MathJAX markup or links to equations (see doc/Eqs/*.tex for examples, we auto-create the associated JPG files), or figures (see doc/JPG for examples), or even additional PDF files with further details (see doc/PDF for examples). The doc page should also include literature citations as appropriate; see the bottom of doc/fix_nh.rst for examples and the earlier part of the same file for how to format the cite itself. The "Restrictions" section of the doc page should indicate that your command is only available if LAMMPS is built with the appropriate USER-MISC or USER-FOO package. See other user package doc files for examples of how to do this. The prerequisite for building the HTML format files are Python 3.x and virtualenv. Please run at least `make html` and `make spelling` and carefully inspect and proofread the resulting HTML format doc page as well as the output produced to the screen. Make sure that all spelling errors are fixed or the necessary false positives are added to the `doc/utils/sphinx-config/false_positives.txt` file. For new styles, those usually also need to be added to lists on the respective overview pages. This can be checked for also with `make style_check`. * You **must** also create or extend a documentation file for each new command or style you are adding to LAMMPS. For simplicity and convenience, the documentation of groups of closely related commands or styles may be combined into a single file. This will be one file for a single-file feature. For a package, it might be several files. These are files in the [reStructuredText](https://docutils.sourceforge.io/rst.html) markup language, that are then converted to HTML and PDF. The tools for this conversion are included in the source distribution, and the translation can be as simple as doing "make html pdf" in the doc folder. Thus the documentation source files must be in the same format and style as other `<name>.rst` files in the lammps/doc/src directory for similar commands and styles; use one or more of them as a starting point. An introduction to reStructuredText can be found at [https://docutils.sourceforge.io/docs/user/rst/quickstart.html](https://docutils.sourceforge.io/docs/user/rst/quickstart.html). The text files can include mathematical expressions and symbol in ".. math::" sections or ":math:" expressions or figures (see doc/JPG for examples), or even additional PDF files with further details (see doc/PDF for examples). The doc page should also include literature citations as appropriate; see the bottom of doc/fix_nh.rst for examples and the earlier part of the same file for how to format the cite itself. The "Restrictions" section of the doc page should indicate that your command is only available if LAMMPS is built with the appropriate USER-MISC or USER-FOO package. See other user package doc files for examples of how to do this. The prerequisite for building the HTML format files are Python 3.x and virtualenv. Please run at least `make html`, `make pdf` and `make spelling` and carefully inspect and proofread the resulting HTML format doc page as well as the output produced to the screen. Make sure that all spelling errors are fixed or the necessary false positives are added to the `doc/utils/sphinx-config/false_positives.txt` file. For new styles, those usually also need to be added to lists on the respective overview pages. This can be checked for also with `make style_check`.
* For a new package (or even a single command) you should include one or more example scripts demonstrating its use. These should run in no more than a couple minutes, even on a single processor, and not require large data files as input. See directories under examples/USER for examples of input scripts other users provided for their packages. These example inputs are also required for validating memory accesses and testing for memory leaks with valgrind * For a new package (or even a single command) you should include one or more example scripts demonstrating its use. These should run in no more than a couple minutes, even on a single processor, and not require large data files as input. See directories under examples/USER for examples of input scripts other users provided for their packages. These example inputs are also required for validating memory accesses and testing for memory leaks with valgrind
* If there is a paper of yours describing your feature (either the algorithm/science behind the feature itself, or its initial usage, or its implementation in LAMMPS), you can add the citation to the *.cpp source file. See src/USER-EFF/atom_vec_electron.cpp for an example. A LaTeX citation is stored in a variable at the top of the file and a single line of code that references the variable is added to the constructor of the class. Whenever a user invokes your feature from their input script, this will cause LAMMPS to output the citation to a log.cite file and prompt the user to examine the file. Note that you should only use this for a paper you or your group authored. E.g. adding a cite in the code for a paper by Nose and Hoover if you write a fix that implements their integrator is not the intended usage. That kind of citation should just be in the doc page you provide. * For new utility functions or class (i.e. anything that does not depend on a LAMMPS object), new unit tests should be added to the unittest tree.
* When adding a new LAMMPS style, a .yaml file with a test configuration and reference data should be added for the styles where a suitable tester program already exists (e.g. pair styles, bond styles, etc.).
* If there is a paper of yours describing your feature (either the algorithm/science behind the feature itself, or its initial usage, or its implementation in LAMMPS), you can add the citation to the <name>.cpp source file. See src/USER-EFF/atom_vec_electron.cpp for an example. A LaTeX citation is stored in a variable at the top of the file and a single line of code that references the variable is added to the constructor of the class. Whenever a user invokes your feature from their input script, this will cause LAMMPS to output the citation to a log.cite file and prompt the user to examine the file. Note that you should only use this for a paper you or your group authored. E.g. adding a cite in the code for a paper by Nose and Hoover if you write a fix that implements their integrator is not the intended usage. That kind of citation should just be in the doc page you provide.
Finally, as a general rule-of-thumb, the more clear and self-explanatory you make your documentation and README files, and the easier you make it for people to get started, e.g. by providing example scripts, the more likely it is that users will try out your new feature. Finally, as a general rule-of-thumb, the more clear and self-explanatory you make your documentation and README files, and the easier you make it for people to get started, e.g. by providing example scripts, the more likely it is that users will try out your new feature.

View File

@ -9,24 +9,24 @@ assignees: ''
**Summary** **Summary**
_Please provide a clear and concise description of what the bug is._ <!--Please provide a clear and concise description of what the bug is.-->
**LAMMPS Version and Platform** **LAMMPS Version and Platform**
_Please specify precisely which LAMMPS version this issue was detected with (the first line of the output) and what platform (operating system and its version, hardware) you are running on. If possible, test with the most recent LAMMPS patch version_ <!--Please specify precisely which LAMMPS version this issue was detected with (the first line of the output) and what platform (operating system and its version, hardware) you are running on. If possible, test with the most recent LAMMPS patch version-->
**Expected Behavior** **Expected Behavior**
_Describe the expected behavior. Quote from the LAMMPS manual where needed, or explain why the expected behavior is meaningful, especially when it differs from the manual_ <!--Describe the expected behavior. Quote from the LAMMPS manual where needed, or explain why the expected behavior is meaningful, especially when it differs from the manual-->
**Actual Behavior** **Actual Behavior**
_Describe the actual behavior, how it differs from the expected behavior, and how this can be observed. Try to be specific and do **not** use vague terms like "doesn't work" or "wrong result". Do not assume that the person reading this has any experience with or knowledge of your specific area of research._ <!--Describe the actual behavior, how it differs from the expected behavior, and how this can be observed. Try to be specific and do **not** use vague terms like "doesn't work" or "wrong result". Do not assume that the person reading this has any experience with or knowledge of your specific area of research.-->
**Steps to Reproduce** **Steps to Reproduce**
_Describe the steps required to (quickly) reproduce the issue. You can attach (small) files to the section below or add URLs where to download an archive with all necessary files. Please try to create an input set that is as minimal and small as possible and reproduces the bug as quickly as possible. **NOTE:** the less effort and time it takes to reproduce your reported bug, the more likely it becomes, that somebody will look into it and fix the problem._ <!--Describe the steps required to (quickly) reproduce the issue. You can attach (small) files to the section below or add URLs where to download an archive with all necessary files. Please try to create an input set that is as minimal and small as possible and reproduces the bug as quickly as possible. **NOTE:** the less effort and time it takes to reproduce your reported bug, the more likely it becomes, that somebody will look into it and fix the problem.-->
**Further Information, Files, and Links** **Further Information, Files, and Links**
_Put any additional information here, attach relevant text or image files and URLs to external sites, e.g. relevant publications_ <!--Put any additional information here, attach relevant text or image files and URLs to external sites, e.g. relevant publications-->

View File

@ -9,12 +9,12 @@ assignees: ''
**Summary** **Summary**
_Please provide a brief and concise description of the suggested feature or change_ <!--Please provide a brief and concise description of the suggested feature or change-->
**Detailed Description** **Detailed Description**
_Please explain how you would like to see LAMMPS enhanced, what feature(s) you are looking for, what specific problems this will solve. If possible, provide references to relevant background information like publications or web pages, and whether you are planning to implement the enhancement yourself or would like to participate in the implementation. If applicable add a reference to an existing bug report or issue that this will address._ <!--Please explain how you would like to see LAMMPS enhanced, what feature(s) you are looking for, what specific problems this will solve. If possible, provide references to relevant background information like publications or web pages, and whether you are planning to implement the enhancement yourself or would like to participate in the implementation. If applicable add a reference to an existing bug report or issue that this will address.-->
**Further Information, Files, and Links** **Further Information, Files, and Links**
_Put any additional information here, attach relevant text or image files and URLs to external sites, e.g. relevant publications_ <!--Put any additional information here, attach relevant text or image files and URLs to external sites, e.g. relevant publications-->

View File

@ -9,13 +9,13 @@ assignees: ''
**Summary** **Summary**
_Please provide a clear and concise description of what this issue report is about._ <!--Please provide a clear and concise description of what this issue report is about.-->
**LAMMPS Version and Platform** **LAMMPS Version and Platform**
_Please specify precisely which LAMMPS version this issue was detected with (the first line of the output) and what platform (operating system and its version, hardware) you are running on. If possible, test with the most recent LAMMPS patch version_ <!--Please specify precisely which LAMMPS version this issue was detected with (the first line of the output) and what platform (operating system and its version, hardware) you are running on. If possible, test with the most recent LAMMPS patch version-->
**Details** **Details**
_Please explain the issue in detail here_ <!--Please explain the issue in detail here-->

View File

@ -1,14 +1,14 @@
**Summary** **Summary**
_Briefly describe the new feature(s), enhancement(s), or bugfix(es) included in this pull request._ <!--Briefly describe the new feature(s), enhancement(s), or bugfix(es) included in this pull request.-->
**Related Issues** **Related Issue(s)**
_If this addresses an open GitHub issue for this project, please mention the issue number here, and describe the relation. Use the phrases `fixes #221` or `closes #135`, when you want an issue to be automatically closed when the pull request is merged_ <!--If this addresses an open GitHub issue for this project, please mention the issue number here, and describe the relation. Use the phrases `fixes #221` or `closes #135`, when you want an issue to be automatically closed when the pull request is merged-->
**Author(s)** **Author(s)**
_Please state name and affiliation of the author or authors that should be credited with the changes in this pull request. If this pull request adds new files to the distribution, please also provide a suitable "long-lived" e-mail address (ideally something that can outlive your institution's e-mail, in case you change jobs) for the *corresponding* author, i.e. the person the LAMMPS developers can contact directly with questions and requests related to maintenance and support of this contributed code._ <!--Please state name and affiliation of the author or authors that should be credited with the changes in this pull request. If this pull request adds new files to the distribution, please also provide a suitable "long-lived" e-mail address (ideally something that can outlive your institution's e-mail, in case you change jobs) for the *corresponding* author, i.e. the person the LAMMPS developers can contact directly with questions and requests related to maintenance and support of this contributed code.-->
**Licensing** **Licensing**
@ -16,15 +16,15 @@ By submitting this pull request, I agree, that my contribution will be included
**Backward Compatibility** **Backward Compatibility**
_Please state whether any changes in the pull request will break backward compatibility for inputs, and - if yes - explain what has been changed and why_ <!--Please state whether any changes in the pull request will break backward compatibility for inputs, and - if yes - explain what has been changed and why-->
**Implementation Notes** **Implementation Notes**
_Provide any relevant details about how the changes are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected_ <!--Provide any relevant details about how the changes are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected-->
**Post Submission Checklist** **Post Submission Checklist**
_Please check the fields below as they are completed **after** the pull request has been submitted. Delete lines that don't apply_ <!--Please check the fields below as they are completed **after** the pull request has been submitted. Delete lines that don't apply-->
- [ ] The feature or features in this pull request is complete - [ ] The feature or features in this pull request is complete
- [ ] Licensing information is complete - [ ] Licensing information is complete
@ -34,11 +34,12 @@ _Please check the fields below as they are completed **after** the pull request
- [ ] The added/updated documentation is integrated and tested with the documentation build system - [ ] The added/updated documentation is integrated and tested with the documentation build system
- [ ] The feature has been verified to work with the conventional build system - [ ] The feature has been verified to work with the conventional build system
- [ ] The feature has been verified to work with the CMake based build system - [ ] The feature has been verified to work with the CMake based build system
- [ ] Suitable tests have been added to the unittest tree.
- [ ] A package specific README file has been included or updated - [ ] A package specific README file has been included or updated
- [ ] One or more example input decks are included - [ ] One or more example input decks are included
**Further Information, Files, and Links** **Further Information, Files, and Links**
_Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. DOIs or webpages)_ <!--Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. DOIs or webpages)-->

View File

@ -9,34 +9,37 @@ assignees: ''
**Summary** **Summary**
_Briefly describe the bug or bugs, that are eliminated by this pull request._ <!--Briefly describe the bug(s) that are eliminated by this pull request.-->
**Related Issue(s)** **Related Issue(s)**
_If this request addresses or is related to an existing (open) GitHub issue, e.g. a bug report, mention the issue number number here following a pound sign (aka hashmark), e.g.`#222`._ <!--If this addresses an open GitHub issue for this project, please mention the issue number here, and describe the relation. Use the phrases `fixes #221` or `closes #135`, when you want an issue to be automatically closed when the pull request is merged-->
**Author(s)** **Author(s)**
_Please state name and affiliation of the author or authors that should be credited with the changes in this pull request_ <!--Please state name and affiliation of the author or authors that should be credited with the changes in this pull request. If this pull request adds new files to the distribution, please also provide a suitable "long-lived" e-mail address (ideally something that can outlive your institution's e-mail, in case you change jobs) for the *corresponding* author, i.e. the person the LAMMPS developers can contact directly with questions and requests related to maintenance and support of this contributed code.-->
**Licensing** **Licensing**
By submitting this pull request I implicitly accept, that my submission is subject to the same licensing terms as the files that are modified. By submitting this pull request, I agree, that my contribution will be included in LAMMPS and redistributed under either the GNU General Public License version 2 (GPL v2) or the GNU Lesser General Public License version 2.1 (LGPL v2.1).
**Backward Compatibility** **Backward Compatibility**
_Please state whether any changes in the pull request break backward compatibility for inputs, and - if yes - explain what has been changed and why_ <!--Please state whether any changes in the pull request will break backward compatibility for inputs, and - if yes - explain what has been changed and why-->
**Detailed Description** **Detailed Description**
_Provide any relevant details about how the fixed bug can be reproduced, how the changes are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected_ <!--Provide any relevant details about how the fixed bug can be reproduced, how the changes are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected-->
## Post Submission Checklist **Post Submission Checklist**
_Please check the fields below as they are completed *after* the pull request is submitted_ <!--Please check the fields below as they are completed **after** the pull request has been submitted. Delete lines that don't apply-->
- [ ] The code in this pull request is complete
- [ ] The feature or features in this pull request is complete
- [ ] Licensing information is complete
- [ ] Corresponding author information is complete
- [ ] The source code follows the LAMMPS formatting guidelines - [ ] The source code follows the LAMMPS formatting guidelines
- [ ] The feature has been verified to work with the conventional build system
- [ ] The feature has been verified to work with the CMake based build system
- [ ] Suitable tests have been added to the unittest tree.
## Further Information, Files, and Links
_Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. to download input decks for testing)_

View File

@ -9,27 +9,35 @@ assignees: ''
**Summary** **Summary**
_Briefly describe the included changes._ <!--Briefly describe the included changes.-->
**Related Issue(s)** **Related Issue(s)**
_If this request addresses or is related to an existing (open) GitHub issue, e.g. a bug report, mention the issue number number here following a pound sign (aka hashmark), e.g.`#222`. <!--If this addresses an open GitHub issue for this project, please mention the issue number here, and describe the relation. Use the phrases `fixes #221` or `closes #135`, when you want an issue to be automatically closed when the pull request is merged-->
**Author(s)** **Author(s)**
_Please state name and affiliation of the author or authors that should be credited with the changes in this pull request_ <!--Please state name and affiliation of the author or authors that should be credited with the changes in this pull request. If this pull request adds new files to the distribution, please also provide a suitable "long-lived" e-mail address (ideally something that can outlive your institution's e-mail, in case you change jobs) for the *corresponding* author, i.e. the person the LAMMPS developers can contact directly with questions and requests related to maintenance and support of this contributed code.-->
**Licensing** **Licensing**
By submitting this pull request I implicitly accept, that my submission is subject to the same licensing terms as the files that are modified. By submitting this pull request, I agree, that my contribution will be included in LAMMPS and redistributed under either the GNU General Public License version 2 (GPL v2) or the GNU Lesser General Public License version 2.1 (LGPL v2.1).
**Backward Compatibility**
<!--Please state whether any changes in the pull request will break backward compatibility for inputs, and - if yes - explain what has been changed and why-->
**Detailed Description** **Detailed Description**
_Provide any relevant details about the included changes._ <!--Provide any relevant details about how the changes are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected-->
## Post Submission Checklist **Post Submission Checklist**
_Please check the fields below as they are completed *after* the pull request is submitted_ <!--Please check the fields below as they are completed *after* the pull request is submitted-->
- [ ] The pull request is complete - [ ] The pull request is complete
- [ ] The source code follows the LAMMPS formatting guidelines - [ ] The source code follows the LAMMPS formatting guidelines
- [ ] The feature has been verified to work with the conventional build system
- [ ] The feature has been verified to work with the CMake based build system
- [ ] Suitable tests have been added to the unittest tree.

View File

@ -9,34 +9,31 @@ assignees: ''
**Summary** **Summary**
_Briefly describe the new feature(s) included in this pull request._ <!--Briefly describe the new feature(s) included in this pull request.-->
**Related Issues** **Related Issue(s)**
_If this addresses an existing (open) GitHub issue, e.g. a feature request, mention the issue number here following a pound sign (aka hashmark), e.g. `#331`._ <!--If this addresses an open GitHub issue for this project, please mention the issue number here, and describe the relation. Use the phrases `fixes #221` or `closes #135`, when you want an issue to be automatically closed when the pull request is merged-->
**Author(s)** **Author(s)**
_Please state name and affiliation of the author or authors that should be credited with the features added in this pull request. Please provide a suitable "long-lived" e-mail address (e.g. from gmail, yahoo, outlook, etc.) for the *corresponding* author, i.e. the person the LAMMPS developers can contact directly with questions and requests related to maintenance and support of this code. now and in the future_ <!--Please state name and affiliation of the author or authors that should be credited with the changes in this pull request. If this pull request adds new files to the distribution, please also provide a suitable "long-lived" e-mail address (ideally something that can outlive your institution's e-mail, in case you change jobs) for the *corresponding* author, i.e. the person the LAMMPS developers can contact directly with questions and requests related to maintenance and support of this contributed code.-->
**Licensing** **Licensing**
_Please add *yes* or *no* to the following two statements (please contact @lammps/core if you have questions about this)_ By submitting this pull request, I agree, that my contribution will be included in LAMMPS and redistributed under either the GNU General Public License version 2 (GPL v2) or the GNU Lesser General Public License version 2.1 (LGPL v2.1).
My contribution may be licensed as GPL v2 (default LAMMPS license):
My contribution may be licensed as LGPL (for use as a library with proprietary software):
**Backward Compatibility** **Backward Compatibility**
_Please state if any of the changes in this pull request will affect backward compatibility for inputs, and - if yes - explain what has been changed and why_ <!--Please state whether any changes in the pull request will break backward compatibility for inputs, and - if yes - explain what has been changed and why-->
**Implementation Notes** **Implementation Notes**
_Provide any relevant details about how the new features are implemented, how correctness was verified, what platforms (OS, compiler, MPI, hardware, number of processors, accelerator(s)) it was tested on_ <!--Provide any relevant details about how the new feature(s) are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected-->
## Post Submission Checklist **Post Submission Checklist**
_Please check the fields below as they are completed *after* the pull request has been submitted_ <!--Please check the fields below as they are completed **after** the pull request has been submitted. Delete lines that don't apply-->
- [ ] The feature or features in this pull request is complete - [ ] The feature or features in this pull request is complete
- [ ] Licensing information is complete - [ ] Licensing information is complete
@ -46,11 +43,12 @@ _Please check the fields below as they are completed *after* the pull request ha
- [ ] The added/updated documentation is integrated and tested with the documentation build system - [ ] The added/updated documentation is integrated and tested with the documentation build system
- [ ] The feature has been verified to work with the conventional build system - [ ] The feature has been verified to work with the conventional build system
- [ ] The feature has been verified to work with the CMake based build system - [ ] The feature has been verified to work with the CMake based build system
- [ ] Suitable tests have been added to the unittest tree.
- [ ] A package specific README file has been included or updated - [ ] A package specific README file has been included or updated
- [ ] One or more example input decks are included - [ ] One or more example input decks are included
## Further Information, Files, and Links **Further Information, Files, and Links**
_Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. DOIs or webpages)_ <!--Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. DOIs or webpages)-->

View File

@ -9,34 +9,46 @@ assignees: ''
**Summary** **Summary**
_Briefly describe what kind of updates or enhancements for a package or feature are included. If you are not the original author of the package or feature, please mention, whether your contribution was created independently or in collaboration/cooperation with the original author._ <!--Briefly describe what kind of updates or enhancements for a package or feature are included. If you are not the original author of the package or feature, please mention, whether your contribution was created independently or in collaboration/cooperation with the original author.-->
**Related Issue(s)**
<!--If this addresses an open GitHub issue for this project, please mention the issue number here, and describe the relation. Use the phrases `fixes #221` or `closes #135`, when you want an issue to be automatically closed when the pull request is merged-->
**Author(s)** **Author(s)**
_Please state name and affiliation of the author or authors that should be credited with the changes in this pull request_ <!--Please state name and affiliation of the author or authors that should be credited with the changes in this pull request-->
**Licensing** **Licensing**
By submitting this pull request I implicitly accept, that my submission is subject to the same licensing terms as the original package or feature(s) that are updated or amended by this pull request. By submitting this pull request, I agree, that my contribution will be included in LAMMPS and redistributed under either the GNU General Public License version 2 (GPL v2) or the GNU Lesser General Public License version 2.1 (LGPL v2.1).
**Backward Compatibility** **Backward Compatibility**
_Please state whether any changes in the pull request break backward compatibility for inputs, and - if yes - explain what has been changed and why_ <!--Please state whether any changes in the pull request will break backward compatibility for inputs, and - if yes - explain what has been changed and why-->
**Implementation Notes** **Implementation Notes**
_Provide any relevant details about how the changes are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected_ <!--Provide any relevant details about how the changes are implemented, how correctness was verified, how other features - if any - in LAMMPS are affected-->
**Post Submission Checklist** **Post Submission Checklist**
_Please check the fields below as they are completed_ <!--Please check the fields below as they are completed **after** the pull request has been submitted. Delete lines that don't apply-->
- [ ] The feature or features in this pull request is complete - [ ] The feature or features in this pull request is complete
- [ ] Suitable updates to the existing docs are included - [ ] Licensing information is complete
- [ ] One or more example input decks are included - [ ] Corresponding author information is complete
- [ ] The source code follows the LAMMPS formatting guidelines - [ ] The source code follows the LAMMPS formatting guidelines
- [ ] Suitable updates to the existing docs are included
- [ ] The updated documentation is integrated and tested with the documentation build system
- [ ] The feature has been verified to work with the conventional build system
- [ ] The feature has been verified to work with the CMake based build system
- [ ] Suitable tests have been updated or added to the unittest tree.
- [ ] A package specific README file has been updated
- [ ] One or more example input decks are included
**Further Information, Files, and Links** **Further Information, Files, and Links**
_Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. DOIs or webpages)_ <!--Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. DOIs or webpages)-->

29
.github/codecov.yml vendored Normal file
View File

@ -0,0 +1,29 @@
comment: false
coverage:
notify:
slack:
default:
url: "secret:HWZbvgtc6OD7F3v3PfrK3/rzCJvScbh69Fi1CkLwuHK0+wIBIHVR+Q5i7q6F9Ln4OChbiRGtYAEUUsT8/jmBu4qDpIi8mx746codc0z/Z3aafLd24pBrCEPLvdCfIZxqPnw3TuUgGhwmMDZf0+thg8YNUr/MbOZ7Li2L6+ZbYuA="
threshold: 10%
only_pulls: false
branches:
- "master"
flags:
- "unit"
paths:
- "src"
status:
project:
default:
branches:
- "master"
paths:
- "src"
informational: true
patch:
default:
branches:
- "master"
paths:
- "src"
informational: true

2
.gitignore vendored
View File

@ -9,6 +9,7 @@
*.d *.d
*.x *.x
*.exe *.exe
*.sif
*.dll *.dll
*.pyc *.pyc
__pycache__ __pycache__
@ -36,6 +37,7 @@ vgcore.*
ehthumbs.db ehthumbs.db
Thumbs.db Thumbs.db
.clang-format .clang-format
.lammps_history
#cmake #cmake
/build* /build*

38
README
View File

@ -22,28 +22,32 @@ more information about the code and its uses.
The LAMMPS distribution includes the following files and directories: The LAMMPS distribution includes the following files and directories:
README this file README this file
LICENSE the GNU General Public License (GPL) LICENSE the GNU General Public License (GPL)
bench benchmark problems bench benchmark problems
cmake CMake build system cmake CMake build files
doc documentation doc documentation
examples simple test problems examples simple test problems
lib libraries LAMMPS can be linked with fortran Fortran wrapper for LAMMPS
potentials interatomic potential files lib additional provided or external libraries
python Python wrapper on LAMMPS as a library potentials interatomic potential files
src source files python Python wrappers for LAMMPS
tools pre- and post-processing tools src source files
tools pre- and post-processing tools
Point your browser at any of these files to get started: Point your browser at any of these files to get started:
http://lammps.sandia.gov/doc/Manual.html the LAMMPS manual https://lammps.sandia.gov/doc/Manual.html LAMMPS user manual
http://lammps.sandia.gov/doc/Intro.html hi-level introduction https://lammps.sandia.gov/doc/Intro.html hi-level introduction
http://lammps.sandia.gov/doc/Build.html how to build LAMMPS https://lammps.sandia.gov/doc/Build.html how to build LAMMPS
http://lammps.sandia.gov/doc/Run_head.html how to run LAMMPS https://lammps.sandia.gov/doc/Run_head.html how to run LAMMPS
http://lammps.sandia.gov/doc/Developer.pdf LAMMPS developer guide https://lammps.sandia.gov/doc/Commands_all.html Table of available commands
https://lammps.sandia.gov/doc/pg_library.html LAMMPS programmer guide
https://lammps.sandia.gov/doc/Modify.html how to modify and extend LAMMPS
https://lammps.sandia.gov/doc/pg_developer.html LAMMPS developer guide
You can also create these doc pages locally: You can also create these doc pages locally:
% cd doc % cd doc
% make html # creates HTML pages in doc/html % make html # creates HTML pages in doc/html
% make pdf # creates Manual.pdf and Developer.pdf % make pdf # creates Manual.pdf

View File

@ -1,51 +0,0 @@
These are input scripts used to run versions of several of the
benchmarks in the top-level bench directory using the GPU accelerator
package. The results of running these scripts on two different machines
(a desktop with 2 Tesla GPUs and the ORNL Titan supercomputer) are shown
on the "GPU (Fermi)" section of the Benchmark page of the LAMMPS WWW
site: lammps.sandia.gov/bench.
Examples are shown below of how to run these scripts. This assumes
you have built 3 executables with the GPU package
installed, e.g.
lmp_linux_single
lmp_linux_mixed
lmp_linux_double
------------------------------------------------------------------------
To run on just CPUs (without using the GPU styles),
do something like the following:
mpirun -np 1 lmp_linux_double -v x 8 -v y 8 -v z 8 -v t 100 < in.lj
mpirun -np 12 lmp_linux_double -v x 16 -v y 16 -v z 16 -v t 100 < in.eam
The "xyz" settings determine the problem size. The "t" setting
determines the number of timesteps.
These mpirun commands run on a single node. To run on multiple
nodes, scale up the "-np" setting.
------------------------------------------------------------------------
To run with the GPU package, do something like the following:
mpirun -np 12 lmp_linux_single -sf gpu -v x 32 -v y 32 -v z 64 -v t 100 < in.lj
mpirun -np 8 lmp_linux_mixed -sf gpu -pk gpu 2 -v x 32 -v y 32 -v z 64 -v t 100 < in.eam
The "xyz" settings determine the problem size. The "t" setting
determines the number of timesteps. The "np" setting determines how
many MPI tasks (per node) the problem will run on. The numeric
argument to the "-pk" setting is the number of GPUs (per node); 1 GPU
is the default. Note that you can use more MPI tasks than GPUs (per
node) with the GPU package.
These mpirun commands run on a single node. To run on multiple nodes,
scale up the "-np" setting, and control the number of MPI tasks per
node via a "-ppn" setting.
------------------------------------------------------------------------
If the script has "titan" in its name, it was run on the Titan
supercomputer at ORNL.

View File

@ -1,24 +0,0 @@
# bulk Cu lattice
units metal
atom_style atomic
lattice fcc 3.615
region box block 0 $x 0 $y 0 $z
create_box 1 box
create_atoms 1 box
pair_style eam
pair_coeff 1 1 Cu_u3.eam
velocity all create 1600.0 376847 loop geom
neighbor 1.0 bin
neigh_modify every 1 delay 5 check yes
fix 1 all nve
timestep 0.005
thermo 50
run $t

View File

@ -1,37 +0,0 @@
# bulk Cu lattice
newton off
package gpu force/neigh 0 0 1
processors * * * grid numa
variable x index 1
variable y index 1
variable z index 1
variable xx equal 20*$x
variable yy equal 20*$y
variable zz equal 20*$z
units metal
atom_style atomic
lattice fcc 3.615
region box block 0 ${xx} 0 ${yy} 0 ${zz}
create_box 1 box
create_atoms 1 box
pair_style eam/gpu
pair_coeff 1 1 Cu_u3.eam
velocity all create 1600.0 376847 loop geom
neighbor 1.0 bin
neigh_modify every 1 delay 5 check yes
fix 1 all nve
timestep 0.005
thermo 50
run 15
run 100

View File

@ -1,22 +0,0 @@
# 3d Lennard-Jones melt
units lj
atom_style atomic
lattice fcc 0.8442
region box block 0 $x 0 $y 0 $z
create_box 1 box
create_atoms 1 box
mass 1 1.0
velocity all create 1.44 87287 loop geom
pair_style lj/cut 2.5
pair_coeff 1 1 1.0 1.0 2.5
neighbor 0.3 bin
neigh_modify delay 0 every 20 check no
fix 1 all nve
run $t

View File

@ -1,35 +0,0 @@
# 3d Lennard-Jones melt
newton off
package gpu force/neigh 0 0 1
processors * * * grid numa
variable x index 1
variable y index 1
variable z index 1
variable xx equal 20*$x
variable yy equal 20*$y
variable zz equal 20*$z
units lj
atom_style atomic
lattice fcc 0.8442
region box block 0 ${xx} 0 ${yy} 0 ${zz}
create_box 1 box
create_atoms 1 box
mass 1 1.0
velocity all create 1.44 87287 loop geom
pair_style lj/cut/gpu 2.5
pair_coeff 1 1 1.0 1.0 2.5
neighbor 0.3 bin
neigh_modify delay 0 every 20 check no
fix 1 all nve
run 15
run 100

View File

@ -1,30 +0,0 @@
# Rhodopsin model
units real
neigh_modify delay 5 every 1
atom_style full
atom_modify map hash
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long 8.0 10.0
pair_modify mix arithmetic
kspace_style pppm 1e-4
read_data data.rhodo
replicate $x $y $z
fix 1 all shake 0.0001 5 0 m 1.0 a 232
fix 2 all npt temp 300.0 300.0 100.0 &
z 0.0 0.0 1000.0 mtk no pchain 0 tchain 1
special_bonds charmm
thermo 50
thermo_style multi
timestep 2.0
run $t

View File

@ -1,39 +0,0 @@
# Rhodopsin model
newton off
package gpu force/neigh 0 0 1
processors * * * grid numa
variable x index 1
variable y index 1
variable z index 1
units real
neigh_modify delay 5 every 1
atom_style full
atom_modify map hash
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long/gpu 8.0 ${cutoff}
pair_modify mix arithmetic
kspace_style pppm/gpu 1e-4
read_data data.rhodo
replicate $x $y $z
fix 1 all shake 0.0001 5 0 m 1.0 a 232
fix 2 all npt temp 300.0 300.0 100.0 &
z 0.0 0.0 1000.0 mtk no pchain 0 tchain 1
special_bonds charmm
thermo 50
# thermo_style multi
timestep 2.0
run 15
run 100

View File

@ -1,42 +0,0 @@
# Rhodopsin model
newton off
package gpu force/neigh 0 0 1
partition yes 1 processors * * * grid twolevel ${grid} * * * &
part 1 2 multiple
partition yes 2 processors * * * part 1 2 multiple
variable x index 1
variable y index 1
variable z index 1
units real
neigh_modify delay 5 every 1
atom_style full
atom_modify map hash
bond_style harmonic
angle_style charmm
dihedral_style charmm
improper_style harmonic
pair_style lj/charmm/coul/long/gpu 8.0 ${cutoff}
pair_modify mix arithmetic
kspace_style pppm/gpu 1e-4
read_data data.rhodo
replicate $x $y $z
fix 1 all shake 0.0001 5 0 m 1.0 a 232
fix 2 all npt temp 300.0 300.0 100.0 &
z 0.0 0.0 1000.0 mtk no pchain 0 tchain 1
special_bonds charmm
thermo 50
# thermo_style multi
timestep 2.0
run_style verlet/split
run 15
run 100

View File

@ -1,2 +0,0 @@
rc = 4.0
delr = 0.1

1
bench/POTENTIALS/Ni.meam Symbolic link
View File

@ -0,0 +1 @@
../../potentials/Ni.meam

View File

@ -1,17 +0,0 @@
# Stillinger-Weber parameters for various elements and mixtures
# multiple entries can be added to this file, LAMMPS reads the ones it needs
# these entries are in LAMMPS "metal" units:
# epsilon = eV; sigma = Angstroms
# other quantities are unitless
# format of a single entry (one or more lines):
# element 1, element 2, element 3,
# epsilon, sigma, a, lambda, gamma, costheta0, A, B, p, q, tol
# Here are the original parameters in metal units, for Silicon from:
#
# Stillinger and Weber, Phys. Rev. B, v. 31, p. 5262, (1985)
#
Si Si Si 2.1683 2.0951 1.80 21.0 1.20 -0.333333333333
7.049556277 0.6022245584 4.0 0.0 0.0

1
bench/POTENTIALS/Si.sw Symbolic link
View File

@ -0,0 +1 @@
../../potentials/Si.sw

View File

@ -1,16 +0,0 @@
# Tersoff parameters for various elements and mixtures
# multiple entries can be added to this file, LAMMPS reads the ones it needs
# these entries are in LAMMPS "metal" units:
# A,B = eV; lambda1,lambda2,lambda3 = 1/Angstroms; R,D = Angstroms
# other quantities are unitless
# This is the Si parameterization from a particular Tersoff paper:
# J. Tersoff, PRB, 37, 6991 (1988)
# See the SiCGe.tersoff file for different Si variants.
# format of a single entry (one or more lines):
# element 1, element 2, element 3,
# m, gamma, lambda3, c, d, costheta0, n, beta, lambda2, B, R, D, lambda1, A
Si Si Si 3.0 1.0 1.3258 4.8381 2.0417 0.0000 22.956
0.33675 1.3258 95.373 3.0 0.2 3.2394 3264.7

1
bench/POTENTIALS/Si.tersoff Symbolic link
View File

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

View File

@ -1,24 +0,0 @@
# bulk Ni in MEAM
units metal
atom_style atomic
lattice fcc 3.52
region box block 0 20 0 20 0 20
create_box 1 box
create_atoms 1 box
pair_style meam
pair_coeff * * library.meam Ni4 Ni.meam Ni4
velocity all create 1600.0 376847 loop geom
neighbor 1.0 bin
neigh_modify delay 5 every 1
fix 1 all nve
timestep 0.005
thermo 50
run 100

View File

@ -1,22 +0,0 @@
# ReaxFF benchmark: simulation of PETN crystal, replicated unit cell
units real
atom_style charge
read_data data.reax
#replicate 7 8 10
replicate 7 8 5
velocity all create 300.0 9999
pair_style reax
pair_coeff * * ffield.reax 1 2 3 4
timestep 0.1
fix 2 all nve
thermo 10
thermo_style custom step temp ke pe pxx pyy pzz etotal
run 100

View File

@ -1,162 +0,0 @@
# meam data from vax files fcc,bcc,dia 11/4/92
# elt lat z ielement atwt
# alpha b0 b1 b2 b3 alat esub asub
# t0 t1 t2 t3 rozero ibar
'Sn5' 'dia' 4. 50 118.
5.09 5.00 16.0 04.0 5.0 6.483 3.14 1.00
1.0 2.00 5.756 -0.30 1. 0
'Sn' 'dia' 4. 50 118.
5.09 5.42 8.0 5.0 6.0 6.483 3.14 1.12
1.0 3.0 5.707 +0.30 1. 0
'Cu' 'fcc' 12. 29 63.54
5.10570729 3.634 2.20 6 2.20 3.62 3.54 1.07
1.0 3.13803254 2.49438711 2.95269237 1. 0
'Ag' 'fcc' 12. 47 107.870
5.89222008 4.456 2.20 6 2.20 4.08 2.85 1.06
1.0 5.54097609 2.45015783 1.28843988 1. 0
'Au' 'fcc' 12. 79 196.967
6.34090112 5.449 2.20 6 2.20 4.07 3.93 1.04
1.0 1.58956328 1.50776392 2.60609758 1. 0
'Ni1' 'fcc' 12. 28 58.71
4.99 2.45 2.20 6 2.20 3.52 4.45 1.10
1.0 3.57 1.60 3.70 1.0 0
'Ni2' 'fcc' 12. 28 58.71
4.99 2.45 2.20 6 2.20 3.52 4.45 1.10
1.0 3.57 1.60 3.70 1.0 3
'Ni3' 'fcc' 12. 28 58.71
4.99 2.45 1.50 6 1.50 3.52 4.45 1.10
1.0 3.57 1.60 3.70 1.0 3
'Ni4' 'fcc' 12. 28 58.71
4.99 2.45 1.50 6 1.50 3.52 4.45 1.10
1.0 3.57 1.60 3.70 1.0 0
'Ni' 'fcc' 12. 28 58.71
4.99 2.64 1.50 4.50 1.50 3.52 4.45 1.10
1.0 1.692 4.987 3.683 1.0 1
'Nix' 'fcc' 12. 28 58.71
4.99 2.64 1.50 4.50 1.50 3.52 4.45 1.10
1.0 0.00 0.000 3.683 1.0 1
'Ni' 'fcc' 12. 28 58.71
4.99 3.25 0.80 4 1.50 3.52 4.45 1.07
1.0 -4.052 13.14 3.786 1.0 1
'Pd' 'fcc' 12. 46 106.4
6.43230473 4.975 2.20 6 2.20 3.89 3.91 1.01
1.0 2.33573516 1.38343023 4.47989049 1. 0
'Pt' 'fcc' 12. 78 195.09
6.44221724 4.673 2.20 6 2.20 3.92 5.77 1.04
1.0 2.73335406 -1.3759593 3.29322278 1. 0
'Al' 'fcc' 12. 13 26.9815
4.61 2.21 2.20 6.0 2.20 4.05 3.58 1.07
1.0 -1.78 -2.21 8.01 0.6 0
'Al' 'fcc' 12. 13 26.9815
4.69 1.56 4.00 5.5 0.60 4.05 3.36 1.09
1.0 -0.251 -3.450 8.298 0.6 1
'Al' 'fcc' 12. 13 26.9815
4.69 1.58 1.00 6.0 0.60 4.05 3.36 1.09
1.0 -0.808 -2.614 8.298 0.6 1
'Pb' 'fcc' 12. 82 207.19
6.0564428 5.306 2.20 6 2.20 4.95 2.04 1.01
1.0 2.74022352 3.06323991 1.2 1. 0
'Rh' 'fcc' 12. 45 102.905
6.0045385 1.131 1.00 2 1.00 3.8 5.75 1.05
1.0 2.9900 4.60231784 4.8 1. 0
'Ir' 'fcc' 12. 77 192.2
6.52315787 1.13 1.00 2 1.00 3.84 6.93 1.05
1.0 1.50000 8.09942666 4.8 1. 0
'Li' 'bcc' 8. 3 6.939
2.97244804 1.425 1.00 1.00169907 1.00 3.509 1.65 0.87
1.0 0.26395017 0.44431129 -0.2 1. 0
'Na' 'bcc' 8. 11 22.9898
3.64280541 2.313 1.00 1.00173951 1.00 4.291 1.13 0.9
1.0 3.55398839 0.68807569 -0.2 1. 0
'K' 'bcc' 8. 19 39.102
3.90128376 2.687 1.00 1.00186667 1.00 5.344 0.94 0.92
1.0 5.09756981 0.69413264 -0.2 1. 0
'V' 'bcc' 8. 23 50.942
4.83265262 4.113 1.00 1.00095022 1.00 3.04 5.3 1
1.0 4.20161301 4.09946561 -1 1. 0
'Nb' 'bcc' 8. 41 92.906
4.79306197 4.374 1.00 1.00101441 1.00 3.301 7.47 1
1.0 3.75762849 3.82514598 -1 1. 0
'Ta' 'bcc' 8. 73 180.948
4.89528669 3.709 1.00 1.00099783 1.00 3.303 8.09 0.99
1.0 6.08617812 3.35255804 -2.9 1. 0
'Cr' 'bcc' 8. 24 51.996
5.12169218 3.224 1.00 1.00048646 1.00 2.885 4.1 0.94
1.0 -0.207535 12.2600006 -1.9 1. 0
'Mo' 'bcc' 8. 42 95.94
5.84872871 4.481 1.00 1.00065204 1.00 3.15 6.81 0.99
1.0 3.47727181 9.48582009 -2.9 1. 0
'W' 'bcc' 8. 74 183.85
5.62777409 3.978 1.00 1.00065894 1.00 3.165 8.66 0.98
1.0 3.16353338 8.24586928 -2.7 1. 0
'WL' 'bcc' 8 74 183.85
5.6831 6.54 1 1 1 3.1639 8.66 0.4
1 -0.6 0.3 -8.7 1 3
'Fe' 'bcc' 8. 26 55.847
5.07292627 2.935 1.00 1.00080073 1.00 2.866 4.29 0.89
1.0 5.13579244 4.12042448 -2.7 1. 0
'Si' 'dia' 4. 14 28.086
4.87 4.8 4.8 4.8 4.8 5.431 4.63 1.
1.0 3.30 5.105 -0.80 1. 1
'Si97' 'dia' 4. 14 28.086
4.87 4.4 5.5 5.5 5.5 5.431 4.63 1.
1.0 3.13 4.47 -1.80 2.05 0
'Si92' 'dia' 4. 14 28.086
4.87 4.4 5.5 5.5 5.5 5.431 4.63 1.
1.0 3.13 4.47 -1.80 2.35 0
'Six' 'dia' 4 14 28.086
4.87 4.4 5.5 5.5 5.5 5.431 4.63 1.0
1.0 2.05 4.47 -1.8 2.05 0
'Sixb' 'dia' 4 14 28.086
4.87 4.4 5.5 5.5 5.5 5.431 4.63 1.0
1.0 2.05 4.47 -1.8 2.5 0
'Mg' 'hcp' 12. 12 24.305
5.45 2.70 0.0 0.35 3.0 3.20 1.55 1.11
1.0 8.00 04.1 -02.0 1.0 0
'C' 'dia' 4. 6 12.0111
4.38 4.10 4.200 5.00 3.00 3.567 7.37 1.000
1.0 5.0 9.34 -1.00 2.25 1
'C' 'dia' 4. 6 12.0111
4.38 5.20 3.87 4.00 4.50 3.567 7.37 1.278
1.0 15. 2.09 -6.00 2.5 1
'C' 'dia' 4. 6 12.0111
4.38 4.50 4.00 3.50 4.80 3.567 7.37 1.00
1.0 10.5 1.54 -8.75 3.2 1
'C' 'dia' 4. 6 12.0111
4.38 3.30 2.80 1.50 3.20 3.567 7.37 1.00
1.0 10.3 1.54 -8.80 2.5 1
'C' 'dia' 4. 6 12.0111
4.38 4.60 3.45 4.00 4.20 3.567 7.37 1.061
1.0 15.0 1.74 -8.00 2.5 1
'C' 'dia' 4. 6 12.0111
4.38 4.50 4.00 3.50 4.80 3.567 7.37 1.00
1.0 10.5 1.54 -8.75 3.2 1
'h' 'dim' 1. 1 1.0079
2.96 2.70 3.5 3.4 3.4 0.74 2.235 2.27
1.0 0.19 0.00 0.00 20.00 0
'h' 'dim' 1. 1 1.0079
2.96 2.00 4.0 4.0 0.0 0.74 2.235 1.00
1.0 -0.60 -0.80 -0.0 01.0 1
'H' 'dim' 1. 1 1.0079
2.96 2.96 3.0 3.0 3.0 0.74 2.235 2.50
1.0 0.20 -0.10 0.0 0.5 0
'H' 'dim' 1. 1 1.0079
2.96 2.0 3.0 4.0 0.0 0.74 2.225 1.00
1.0 -0.5 -1.00 0.0 0.15 1
'H' 'dim' 1. 1 1.0079
2.96 2.00 2.0 2.0 2.0 0.74 2.235 1.00
1.0 -0.60 -0.80 -0.0 01.0 2
'Hni' 'dim' 1. 1 1.0079
2.96 2.96 3.0 3.0 3.0 0.74 2.235 2.50
1.0 0.2 -0.1 0.0 0.5 0
'Hni' 'dim' 1. 1 1.0079
2.96 2.96 3.0 2.0 3.0 0.74 2.235 36.4
1.0 0.2 6.0 0.0 22.8 0
'Vac' 'fcc' 12. 1 1.
0 0 0.0 0 0.0 1E+08 0 1
0 0 0 0 1. 0
'zz' 'zzz' 99. 1 1.
0 0 0.0 0 0.0 0. 0. 0.
0 0 0 0 1. 0

View File

@ -0,0 +1 @@
../../potentials/library.meam

View File

@ -1,84 +0,0 @@
LAMMPS (16 Mar 2018)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
using 1 OpenMP thread(s) per MPI task
# bulk Ni in MEAM
units metal
atom_style atomic
lattice fcc 3.52
Lattice spacing in x,y,z = 3.52 3.52 3.52
region box block 0 20 0 20 0 20
create_box 1 box
Created orthogonal box = (0 0 0) to (70.4 70.4 70.4)
1 by 1 by 1 MPI processor grid
create_atoms 1 box
Created 32000 atoms
Time spent = 0.00186539 secs
pair_style meam
WARNING: The pair_style meam command is unsupported. Please use pair_style meam/c instead (../pair_meam.cpp:51)
pair_coeff * * library.meam Ni4 Ni.meam Ni4
velocity all create 1600.0 376847 loop geom
neighbor 1.0 bin
neigh_modify delay 5 every 1
fix 1 all nve
timestep 0.005
thermo 50
run 100
Neighbor list info ...
update every 1 steps, delay 5 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5
ghost atom cutoff = 5
binsize = 2.5, bins = 29 29 29
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair meam, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
(2) pair meam, perpetual, half/full from (1)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
Per MPI rank memory allocation (min/avg/max) = 55.91 | 55.91 | 55.91 Mbytes
Step Temp E_pair E_mol TotEng Press
0 1600 -142400 0 -135782.09 20259.18
50 885.10702 -139411.51 0 -135750.54 32425.433
100 895.5097 -139454.3 0 -135750.3 31804.187
Loop time of 30.6278 on 1 procs for 100 steps with 32000 atoms
Performance: 1.410 ns/day, 17.015 hours/ns, 3.265 timesteps/s
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 30.088 | 30.088 | 30.088 | 0.0 | 98.24
Neigh | 0.48914 | 0.48914 | 0.48914 | 0.0 | 1.60
Comm | 0.015916 | 0.015916 | 0.015916 | 0.0 | 0.05
Output | 0.00022554 | 0.00022554 | 0.00022554 | 0.0 | 0.00
Modify | 0.025481 | 0.025481 | 0.025481 | 0.0 | 0.08
Other | | 0.009055 | | | 0.03
Nlocal: 32000 ave 32000 max 32000 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 13576 ave 13576 max 13576 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 780360 ave 780360 max 780360 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 1.56072e+06 ave 1.56072e+06 max 1.56072e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 1560720
Ave neighs/atom = 48.7725
Neighbor list builds = 8
Dangerous builds = 0
Total wall time: 0:00:30

View File

@ -1,84 +0,0 @@
LAMMPS (16 Mar 2018)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
using 1 OpenMP thread(s) per MPI task
# bulk Ni in MEAM
units metal
atom_style atomic
lattice fcc 3.52
Lattice spacing in x,y,z = 3.52 3.52 3.52
region box block 0 20 0 20 0 20
create_box 1 box
Created orthogonal box = (0 0 0) to (70.4 70.4 70.4)
1 by 2 by 2 MPI processor grid
create_atoms 1 box
Created 32000 atoms
Time spent = 0.000587463 secs
pair_style meam
WARNING: The pair_style meam command is unsupported. Please use pair_style meam/c instead (../pair_meam.cpp:51)
pair_coeff * * library.meam Ni4 Ni.meam Ni4
velocity all create 1600.0 376847 loop geom
neighbor 1.0 bin
neigh_modify delay 5 every 1
fix 1 all nve
timestep 0.005
thermo 50
run 100
Neighbor list info ...
update every 1 steps, delay 5 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 5
ghost atom cutoff = 5
binsize = 2.5, bins = 29 29 29
2 neighbor lists, perpetual/occasional/extra = 2 0 0
(1) pair meam, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
(2) pair meam, perpetual, half/full from (1)
attributes: half, newton on
pair build: halffull/newton
stencil: none
bin: none
Per MPI rank memory allocation (min/avg/max) = 17.41 | 17.41 | 17.41 Mbytes
Step Temp E_pair E_mol TotEng Press
0 1600 -142400 0 -135782.09 20259.18
50 885.10702 -139411.51 0 -135750.54 32425.433
100 895.5097 -139454.3 0 -135750.3 31804.187
Loop time of 8.21941 on 4 procs for 100 steps with 32000 atoms
Performance: 5.256 ns/day, 4.566 hours/ns, 12.166 timesteps/s
99.2% CPU use with 4 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 8.0277 | 8.0384 | 8.0504 | 0.3 | 97.80
Neigh | 0.12555 | 0.12645 | 0.12713 | 0.2 | 1.54
Comm | 0.024279 | 0.036776 | 0.048389 | 4.5 | 0.45
Output | 9.4414e-05 | 0.00011903 | 0.00018597 | 0.0 | 0.00
Modify | 0.01252 | 0.012608 | 0.012795 | 0.1 | 0.15
Other | | 0.005028 | | | 0.06
Nlocal: 8000 ave 8045 max 7947 min
Histogram: 1 0 0 1 0 0 0 1 0 1
Nghost: 6066.75 ave 6120 max 6021 min
Histogram: 1 0 1 0 0 0 1 0 0 1
Neighs: 195090 ave 196403 max 193697 min
Histogram: 1 0 0 1 0 0 0 1 0 1
FullNghs: 390180 ave 392616 max 387490 min
Histogram: 1 0 0 1 0 0 0 1 0 1
Total # of neighbors = 1560720
Ave neighs/atom = 48.7725
Neighbor list builds = 8
Dangerous builds = 0
Total wall time: 0:00:08

View File

@ -1,86 +0,0 @@
LAMMPS (16 Mar 2018)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
using 1 OpenMP thread(s) per MPI task
# ReaxFF benchmark: simulation of PETN crystal, replicated unit cell
units real
atom_style charge
read_data data.reax
orthogonal box = (0 0 0) to (9.49107 9.49107 6.99123)
1 by 1 by 1 MPI processor grid
reading atoms ...
58 atoms
#replicate 7 8 10
replicate 7 8 5
orthogonal box = (0 0 0) to (66.4375 75.9285 34.9562)
1 by 1 by 1 MPI processor grid
16240 atoms
Time spent = 0.000834942 secs
velocity all create 300.0 9999
pair_style reax
WARNING: The pair_style reax command is unsupported. Please switch to pair_style reax/c instead (../pair_reax.cpp:49)
pair_coeff * * ffield.reax 1 2 3 4
timestep 0.1
fix 2 all nve
thermo 10
thermo_style custom step temp ke pe pxx pyy pzz etotal
run 100
Neighbor list info ...
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 12 13 6
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair reax, perpetual
attributes: half, newton off
pair build: half/bin/newtoff
stencil: half/bin/3d/newtoff
bin: standard
Per MPI rank memory allocation (min/avg/max) = 115.8 | 115.8 | 115.8 Mbytes
Step Temp KinEng PotEng Pxx Pyy Pzz TotEng
0 300 14521.612 -1616144.2 22296.712 -29858.677 5721.0921 -1601622.5
10 298.98728 14472.591 -1616093.9 21955.847 -24067.096 7389.148 -1601621.3
20 294.76158 14268.045 -1615890.1 19179.258 -10513.494 10789.925 -1601622
30 288.56967 13968.323 -1615591.2 13854.377 5833.02 13949.731 -1601622.9
40 282.06725 13653.571 -1615278.2 6259.9845 19406.33 14947.939 -1601624.6
50 274.84112 13303.787 -1614931.9 -2009.6832 26964.336 13346.855 -1601628.2
60 266.20153 12885.585 -1614519.7 -8441.1641 28485.532 10195.429 -1601634.1
70 259.17085 12545.262 -1614184.2 -11426.993 24941.516 6572.2953 -1601638.9
80 259.73004 12572.33 -1614216.7 -10867.598 16928.461 3033.9021 -1601644.3
90 269.2352 13032.431 -1614679 -7962.3129 4931.5317 -280.22164 -1601646.6
100 280.67181 13586.024 -1615234.3 -3606.1519 -8769.8482 -2527.5887 -1601648.3
Loop time of 358.104 on 1 procs for 100 steps with 16240 atoms
Performance: 0.002 ns/day, 9947.338 hours/ns, 0.279 timesteps/s
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 358.07 | 358.07 | 358.07 | 0.0 | 99.99
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.01623 | 0.01623 | 0.01623 | 0.0 | 0.00
Output | 0.0013328 | 0.0013328 | 0.0013328 | 0.0 | 0.00
Modify | 0.012679 | 0.012679 | 0.012679 | 0.0 | 0.00
Other | | 0.006895 | | | 0.00
Nlocal: 16240 ave 16240 max 16240 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 32428 ave 32428 max 32428 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 6.69975e+06 ave 6.69975e+06 max 6.69975e+06 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 6699752
Ave neighs/atom = 412.546
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:06:02

View File

@ -1,86 +0,0 @@
LAMMPS (16 Mar 2018)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
using 1 OpenMP thread(s) per MPI task
# ReaxFF benchmark: simulation of PETN crystal, replicated unit cell
units real
atom_style charge
read_data data.reax
orthogonal box = (0 0 0) to (9.49107 9.49107 6.99123)
2 by 2 by 1 MPI processor grid
reading atoms ...
58 atoms
#replicate 7 8 10
replicate 7 8 5
orthogonal box = (0 0 0) to (66.4375 75.9285 34.9562)
2 by 2 by 1 MPI processor grid
16240 atoms
Time spent = 0.000491619 secs
velocity all create 300.0 9999
pair_style reax
WARNING: The pair_style reax command is unsupported. Please switch to pair_style reax/c instead (../pair_reax.cpp:49)
pair_coeff * * ffield.reax 1 2 3 4
timestep 0.1
fix 2 all nve
thermo 10
thermo_style custom step temp ke pe pxx pyy pzz etotal
run 100
Neighbor list info ...
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 12
ghost atom cutoff = 12
binsize = 6, bins = 12 13 6
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair reax, perpetual
attributes: half, newton off
pair build: half/bin/newtoff
stencil: half/bin/3d/newtoff
bin: standard
Per MPI rank memory allocation (min/avg/max) = 35.58 | 35.68 | 35.77 Mbytes
Step Temp KinEng PotEng Pxx Pyy Pzz TotEng
0 300 14521.612 -1616144.1 22296.712 -29858.677 5721.0922 -1601622.5
10 298.98728 14472.591 -1616093.8 21955.847 -24067.094 7389.149 -1601621.3
20 294.76158 14268.044 -1615890 19179.258 -10513.494 10789.925 -1601622
30 288.56967 13968.323 -1615591.2 13854.38 5833.0219 13949.731 -1601622.9
40 282.06725 13653.571 -1615278.2 6259.981 19406.327 14947.938 -1601624.7
50 274.84112 13303.787 -1614931.9 -2009.6844 26964.334 13346.855 -1601628.1
60 266.20153 12885.585 -1614519.8 -8441.1628 28485.533 10195.428 -1601634.2
70 259.17085 12545.262 -1614184.2 -11426.992 24941.517 6572.295 -1601639
80 259.73004 12572.33 -1614216.8 -10867.596 16928.464 3033.9024 -1601644.5
90 269.2352 13032.431 -1614679 -7962.3097 4931.5336 -280.21988 -1601646.5
100 280.67181 13586.024 -1615234.3 -3606.1482 -8769.8463 -2527.5874 -1601648.3
Loop time of 97.054 on 4 procs for 100 steps with 16240 atoms
Performance: 0.009 ns/day, 2695.944 hours/ns, 1.030 timesteps/s
99.0% CPU use with 4 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 94.83 | 95.764 | 96.883 | 9.2 | 98.67
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0.16123 | 1.2801 | 2.2132 | 79.9 | 1.32
Output | 0.00056076 | 0.00066662 | 0.00095987 | 0.0 | 0.00
Modify | 0.0048354 | 0.0049006 | 0.0049515 | 0.1 | 0.01
Other | | 0.004639 | | | 0.00
Nlocal: 4060 ave 4080 max 4040 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Nghost: 14972 ave 14992 max 14952 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Neighs: 1.8135e+06 ave 1.82186e+06 max 1.80514e+06 min
Histogram: 2 0 0 0 0 0 0 0 0 2
Total # of neighbors = 7253988
Ave neighs/atom = 446.674
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:01:38

View File

@ -1,69 +0,0 @@
#define PORTABLECOMMENTFLAG
#ifndef PORTABLECOMMENTFLAG
// This is just a way to have portable comments
// for both C++ and FORTRAN preprocessing.
/* ///:EOH~ */
/* */
/* This file contains array dimension parameters for all the main */
/* ReaxFF data structures, some of which need to be directly accessed */
/* by Grasp C++ functions. If they are set too small, the calculation */
/* will run out of allocated memory. If they are set too big, the machine */
/* will not be able to allocate enough memory. */
/* */
/* NNEIGHMAXDEF = Max number of neighbors / NATDEF */
/* NATDEF = Max number of atoms */
/* NATTOTDEF = Max number of global atoms */
/* NSORTDEF = Max number of atom types */
/* MBONDDEF = Max number of bonds connected to one atom */
/* NAVIBDEF = for 2nd derivatives */
/* NBOTYMDEF = Max number of bond types */
/* NVATYMDEF = Max number of valency angle types */
/* NTOTYMDEF = Max number of torsion angle types */
/* NHBTYMDEF = Max number of hydrogen bond types */
/* NODMTYMDEF = Max number of off-diagonal Morse types */
/* NBOALLMAXDEF = Max number of all bonds */
/* NBOMAXDEF = Max number of bonds */
/* NHBMAXDEF = Max number of hydrogen bonds */
/* NVAMAXDEF = Max number of valency angles */
/* NOPMAXDEF = Max number of out of plane angles */
/* NTOMAXDEF = Max number of torsion angles */
/* NPAMAXDEF = Max number of general parameters in force field */
/* NMOLMAXDEF = Max number of molecules in system */
/* NMOLSETDEF = Max number of molecules in training set */
/* MRESTRADEF = Max number of restraints */
/* MTREGDEF = Max number of temperature regimes */
/* MTZONEDEF = Max number of temperature zones */
/* MVREGDEF = Max number of volume regimes */
/* MVZONEDEF = Max number of volume zones */
/* MEREGDEF = Max number of electric field regimes */
/* MEZONEDEF = Max number of electric field zones */
#endif
#define NNEIGHMAXDEF 200
#define NATDEF 50000
#define NATTOTDEF 1
#define NSORTDEF 20
#define MBONDDEF 20
#define NAVIBDEF 50
#define NBOTYMDEF 200
#define NVATYMDEF 200
#define NTOTYMDEF 200
#define NHBTYMDEF 200
#define NODMTYMDEF 20
#define NBOALLMAXDEF 180000
#define NBOMAXDEF 90000
#define NHBMAXDEF 400000
#define NVAMAXDEF 300000
#define NOPMAXDEF 00010
#define NTOMAXDEF 200000
#define NPAMAXDEF 50
#define NMOLMAXDEF 2000
#define NMOLSETDEF 1500
#define MRESTRADEF 100
#define MTREGDEF 100
#define MTZONEDEF 5
#define MVREGDEF 100
#define MVZONEDEF 6
#define MEREGDEF 100
#define MEZONEDEF 3

File diff suppressed because it is too large Load Diff

View File

@ -1,48 +0,0 @@
# - Find liblammps
# Find the native liblammps headers and libraries.
#
# The following variables will set:
# LAMMPS_INCLUDE_DIRS - where to find lammps/library.h, etc.
# LAMMPS_LIBRARIES - List of libraries when using lammps.
# LAMMPS_API_DEFINES - lammps library api defines
# LAMMPS_VERSION - lammps library version
# LAMMPS_FOUND - True if liblammps found.
#
# In addition a LAMMPS::LAMMPS imported target is getting created.
#
# LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
# http://lammps.sandia.gov, Sandia National Laboratories
# Steve Plimpton, sjplimp@sandia.gov
#
# Copyright (2003) Sandia Corporation. Under the terms of Contract
# DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
# certain rights in this software. This software is distributed under
# the GNU General Public License.
#
# See the README file in the top-level LAMMPS directory.
#
find_package(PkgConfig)
pkg_check_modules(PC_LAMMPS liblammps@LAMMPS_LIB_SUFFIX@)
find_path(LAMMPS_INCLUDE_DIR lammps/library.h HINTS ${PC_LAMMPS_INCLUDE_DIRS} @CMAKE_INSTALL_FULL_INCLUDEDIR@)
set(LAMMPS_VERSION @LAMMPS_VERSION@)
set(LAMMPS_API_DEFINES @LAMMPS_API_DEFINES@)
find_library(LAMMPS_LIBRARY NAMES lammps@LAMMPS_LIB_SUFFIX@ HINTS ${PC_LAMMPS_LIBRARY_DIRS} @CMAKE_INSTALL_FULL_LIBDIR@)
set(LAMMPS_INCLUDE_DIRS "${LAMMPS_INCLUDE_DIR}")
set(LAMMPS_LIBRARIES "${LAMMPS_LIBRARY}")
include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set LAMMPS_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(LAMMPS REQUIRED_VARS LAMMPS_LIBRARY LAMMPS_INCLUDE_DIR VERSION_VAR LAMMPS_VERSION)
mark_as_advanced(LAMMPS_INCLUDE_DIR LAMMPS_LIBRARY)
if(LAMMPS_FOUND AND NOT TARGET LAMMPS::LAMMPS)
add_library(LAMMPS::LAMMPS UNKNOWN IMPORTED)
set_target_properties(LAMMPS::LAMMPS PROPERTIES IMPORTED_LOCATION "${LAMMPS_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${LAMMPS_INCLUDE_DIR}" INTERFACE_COMPILE_DEFINITIONS "${LAMMPS_API_DEFINES}")
endif()

View File

@ -0,0 +1,5 @@
include(CMakeFindDependencyMacro)
if(@BUILD_MPI@)
find_dependency(MPI REQUIRED CXX)
endif()
include("${CMAKE_CURRENT_LIST_DIR}/LAMMPS_Targets.cmake")

View File

@ -0,0 +1,21 @@
# ninja-build<1.10 does not support fortran.
if(CMAKE_GENERATOR STREQUAL "Ninja")
set(CMAKE_GENERATOR_SUPPORT_FORTRAN FALSE)
execute_process(COMMAND "${CMAKE_MAKE_PROGRAM}" --version
OUTPUT_VARIABLE NINJA_VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE
RESULT_VARIABLE _Ninja_version_result
)
if(_Ninja_version_result)
message(WARNING "Unable to determine ninja version: ${_Ninja_version_result}, assuming fortran isn't supported")
elseif(NINJA_VERSION VERSION_LESS "1.10")
message(WARNING "Ninja build tool too old, to compile Fortran code, please install ninja-1.10 or newer")
else()
set(CMAKE_GENERATOR_SUPPORT_FORTRAN TRUE)
endif()
else()
set(CMAKE_GENERATOR_SUPPORT_FORTRAN TRUE)
if(NOT CMAKE_GENERATOR STREQUAL "Unix Makefiles")
message(WARNING "Assuming fortran is supported for ${CMAKE_GENERATOR}")
endif()
endif()

View File

@ -3,11 +3,16 @@
# #
# Requires latest gcovr (for GCC 8.1 support):# # Requires latest gcovr (for GCC 8.1 support):#
# pip install git+https://github.com/gcovr/gcovr.git # pip install git+https://github.com/gcovr/gcovr.git
#
# For Python coverage the coverage package needs to be installed
############################################################################### ###############################################################################
if(ENABLE_COVERAGE) if(ENABLE_COVERAGE)
find_program(GCOVR_BINARY gcovr) find_program(GCOVR_BINARY gcovr)
find_package_handle_standard_args(GCOVR DEFAULT_MSG GCOVR_BINARY) find_package_handle_standard_args(GCOVR DEFAULT_MSG GCOVR_BINARY)
find_program(COVERAGE_BINARY coverage)
find_package_handle_standard_args(COVERAGE DEFAULT_MSG COVERAGE_BINARY)
if(GCOVR_FOUND) if(GCOVR_FOUND)
get_filename_component(ABSOLUTE_LAMMPS_SOURCE_DIR ${LAMMPS_SOURCE_DIR} ABSOLUTE) get_filename_component(ABSOLUTE_LAMMPS_SOURCE_DIR ${LAMMPS_SOURCE_DIR} ABSOLUTE)
@ -15,14 +20,61 @@ if(ENABLE_COVERAGE)
gen_coverage_xml gen_coverage_xml
COMMAND ${GCOVR_BINARY} -s -x -r ${ABSOLUTE_LAMMPS_SOURCE_DIR} --object-directory=${CMAKE_BINARY_DIR} -o coverage.xml COMMAND ${GCOVR_BINARY} -s -x -r ${ABSOLUTE_LAMMPS_SOURCE_DIR} --object-directory=${CMAKE_BINARY_DIR} -o coverage.xml
WORKING_DIRECTORY ${CMAKE_BINARY_DIR} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
COMMENT "Generating XML Coverage Report..." COMMENT "Generating XML coverage report..."
) )
set(COVERAGE_HTML_DIR ${CMAKE_BINARY_DIR}/coverage_html)
add_custom_target(coverage_html_folder
COMMAND ${CMAKE_COMMAND} -E make_directory ${COVERAGE_HTML_DIR})
add_custom_target( add_custom_target(
gen_coverage_html gen_coverage_html
COMMAND ${GCOVR_BINARY} -s --html --html-details -r ${ABSOLUTE_LAMMPS_SOURCE_DIR} --object-directory=${CMAKE_BINARY_DIR} -o coverage.html COMMAND ${GCOVR_BINARY} -s --html --html-details -r ${ABSOLUTE_LAMMPS_SOURCE_DIR} --object-directory=${CMAKE_BINARY_DIR} -o ${COVERAGE_HTML_DIR}/index.html
WORKING_DIRECTORY ${CMAKE_BINARY_DIR} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
COMMENT "Generating HTML Coverage Report..." COMMENT "Generating HTML coverage report..."
)
add_dependencies(gen_coverage_html coverage_html_folder)
add_custom_target(clean_coverage_html
${CMAKE_COMMAND} -E remove_directory ${COVERAGE_HTML_DIR}
COMMENT "Deleting HTML coverage report..."
)
add_custom_target(reset_coverage
${CMAKE_COMMAND} -E remove -f */*.gcda */*/*.gcda */*/*/*.gcda
*/*/*/*/*.gcda */*/*/*/*/*.gcda */*/*/*/*/*/*.gcda
*/*/*/*/*/*/*/*.gcda */*/*/*/*/*/*/*/*.gcda
*/*/*/*/*/*/*/*/*/*.gcda */*/*/*/*/*/*/*/*/*/*.gcda
WORKIND_DIRECTORY ${CMAKE_BINARY_DIR}
COMMENT "Deleting coverage data files..."
)
add_dependencies(reset_coverage clean_coverage_html)
endif()
if(COVERAGE_FOUND)
set(PYTHON_COVERAGE_HTML_DIR ${CMAKE_BINARY_DIR}/python_coverage_html)
add_custom_command(
OUTPUT ${CMAKE_BINARY_DIR}/unittest/python/.coverage
COMMAND ${COVERAGE_BINARY} combine
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/unittest/python
COMMENT "Combine Python coverage files..."
)
add_custom_target(
gen_python_coverage_html
COMMAND ${COVERAGE_BINARY} html -d ${PYTHON_COVERAGE_HTML_DIR}
DEPENDS ${CMAKE_BINARY_DIR}/unittest/python/.coverage
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/unittest/python
COMMENT "Generating HTML Python coverage report..."
)
add_custom_target(
gen_python_coverage_xml
COMMAND ${COVERAGE_BINARY} xml -o ${CMAKE_BINARY_DIR}/python_coverage.xml
DEPENDS ${CMAKE_BINARY_DIR}/unittest/python/.coverage
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/unittest/python
COMMENT "Generating XML Python coverage report..."
) )
endif() endif()
endif() endif()

View File

@ -0,0 +1,34 @@
if(CMAKE_VERSION VERSION_LESS 3.12)
find_package(PythonInterp 3.5 QUIET) # Deprecated since version 3.12
if(PYTHONINTERP_FOUND)
set(Python3_EXECUTABLE ${PYTHON_EXECUTABLE})
set(Python3_VERSION ${PYTHON_VERSION_STRING})
endif()
else()
find_package(Python3 COMPONENTS Interpreter QUIET)
endif()
if (Python3_EXECUTABLE)
if(Python3_VERSION VERSION_GREATER_EQUAL 3.5)
add_custom_target(
check-whitespace
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/whitespace.py .
WORKING_DIRECTORY ${LAMMPS_DIR}
COMMENT "Check for whitespace errors")
add_custom_target(
check-permissions
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/permissions.py .
WORKING_DIRECTORY ${LAMMPS_DIR}
COMMENT "Check for permission errors")
add_custom_target(
fix-whitespace
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/whitespace.py -f .
WORKING_DIRECTORY ${LAMMPS_DIR}
COMMENT "Fix whitespace errors")
add_custom_target(
fix-permissions
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/permissions.py -f .
WORKING_DIRECTORY ${LAMMPS_DIR}
COMMENT "Fix permission errors")
endif()
endif()

View File

@ -1,42 +1,107 @@
############################################################################### ###############################################################################
# Build documentation # Build documentation
############################################################################### ###############################################################################
option(BUILD_DOC "Build LAMMPS documentation" OFF) option(BUILD_DOC "Build LAMMPS HTML documentation" OFF)
if(BUILD_DOC)
include(ProcessorCount)
ProcessorCount(NPROCS)
find_package(PythonInterp 3 REQUIRED)
set(VIRTUALENV ${PYTHON_EXECUTABLE} -m virtualenv) if(BUILD_DOC)
# Sphinx 3.x requires at least Python 3.5
if(CMAKE_VERSION VERSION_LESS 3.12)
find_package(PythonInterp 3.5 REQUIRED)
set(VIRTUALENV ${PYTHON_EXECUTABLE} -m virtualenv -p ${PYTHON_EXECUTABLE})
else()
find_package(Python3 REQUIRED COMPONENTS Interpreter)
if(Python3_VERSION VERSION_LESS 3.5)
message(FATAL_ERROR "Python 3.5 and up is required to build the HTML documentation")
endif()
set(VIRTUALENV ${Python3_EXECUTABLE} -m virtualenv -p ${Python3_EXECUTABLE})
endif()
find_package(Doxygen 1.8.10 REQUIRED)
file(GLOB DOC_SOURCES ${LAMMPS_DOC_DIR}/src/[^.]*.rst) file(GLOB DOC_SOURCES ${LAMMPS_DOC_DIR}/src/[^.]*.rst)
add_custom_command( add_custom_command(
OUTPUT docenv OUTPUT docenv
COMMAND ${VIRTUALENV} docenv COMMAND ${VIRTUALENV} docenv
) )
set(DOCENV_BINARY_DIR ${CMAKE_BINARY_DIR}/docenv/bin) set(DOCENV_BINARY_DIR ${CMAKE_BINARY_DIR}/docenv/bin)
set(DOCENV_REQUIREMENTS_FILE ${LAMMPS_DOC_DIR}/utils/requirements.txt)
set(SPHINX_CONFIG_DIR ${LAMMPS_DOC_DIR}/utils/sphinx-config)
set(SPHINX_CONFIG_FILE_TEMPLATE ${SPHINX_CONFIG_DIR}/conf.py.in)
set(SPHINX_STATIC_DIR ${SPHINX_CONFIG_DIR}/_static)
# configuration and static files are copied to binary dir to avoid collisions with parallel builds
set(DOC_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/doc)
set(DOC_BUILD_CONFIG_FILE ${DOC_BUILD_DIR}/conf.py)
set(DOC_BUILD_STATIC_DIR ${DOC_BUILD_DIR}/_static)
set(DOXYGEN_BUILD_DIR ${DOC_BUILD_DIR}/doxygen)
set(DOXYGEN_XML_DIR ${DOXYGEN_BUILD_DIR}/xml)
# copy entire configuration folder to doc build directory
# files in _static are automatically copied during sphinx-build, so no need to copy them individually
file(COPY ${SPHINX_CONFIG_DIR}/ DESTINATION ${DOC_BUILD_DIR})
# configure paths in conf.py, since relative paths change when file is copied
configure_file(${SPHINX_CONFIG_FILE_TEMPLATE} ${DOC_BUILD_CONFIG_FILE})
add_custom_command( add_custom_command(
OUTPUT requirements.txt OUTPUT ${DOC_BUILD_DIR}/requirements.txt
DEPENDS docenv DEPENDS docenv ${DOCENV_REQUIREMENTS_FILE}
COMMAND ${CMAKE_COMMAND} -E copy ${LAMMPS_DOC_DIR}/utils/requirements.txt requirements.txt COMMAND ${CMAKE_COMMAND} -E copy ${DOCENV_REQUIREMENTS_FILE} ${DOC_BUILD_DIR}/requirements.txt
COMMAND ${DOCENV_BINARY_DIR}/pip install -r requirements.txt --upgrade COMMAND ${DOCENV_BINARY_DIR}/pip install --upgrade pip
COMMAND ${DOCENV_BINARY_DIR}/pip install --upgrade ${LAMMPS_DOC_DIR}/utils/converters COMMAND ${DOCENV_BINARY_DIR}/pip install --upgrade ${LAMMPS_DOC_DIR}/utils/converters
COMMAND ${DOCENV_BINARY_DIR}/pip install --use-feature=2020-resolver -r ${DOC_BUILD_DIR}/requirements.txt --upgrade
) )
# download mathjax distribution and unpack to folder "mathjax"
if(NOT EXISTS ${DOC_BUILD_STATIC_DIR}/mathjax/es5)
file(DOWNLOAD "https://github.com/mathjax/MathJax/archive/3.0.5.tar.gz"
"${CMAKE_CURRENT_BINARY_DIR}/mathjax.tar.gz"
EXPECTED_MD5 5d9d3799cce77a1a95eee6be04eb68e7)
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf mathjax.tar.gz WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
file(GLOB MATHJAX_VERSION_DIR ${CMAKE_CURRENT_BINARY_DIR}/MathJax-*)
execute_process(COMMAND ${CMAKE_COMMAND} -E rename ${MATHJAX_VERSION_DIR} ${DOC_BUILD_STATIC_DIR}/mathjax)
endif()
# for increased browser compatibility
if(NOT EXISTS ${DOC_BUILD_STATIC_DIR}/polyfill.js)
file(DOWNLOAD "https://polyfill.io/v3/polyfill.min.js?features=es6"
"${DOC_BUILD_STATIC_DIR}/polyfill.js")
endif()
# set up doxygen and add targets to run it
file(MAKE_DIRECTORY ${DOXYGEN_BUILD_DIR})
file(COPY ${LAMMPS_DOC_DIR}/doxygen/lammps-logo.png DESTINATION ${DOXYGEN_BUILD_DIR}/lammps-logo.png)
configure_file(${LAMMPS_DOC_DIR}/doxygen/Doxyfile.in ${DOXYGEN_BUILD_DIR}/Doxyfile)
get_target_property(LAMMPS_SOURCES lammps SOURCES)
add_custom_command(
OUTPUT ${DOXYGEN_XML_DIR}/index.xml
DEPENDS ${DOC_SOURCES} ${LAMMPS_SOURCES}
COMMAND Doxygen::doxygen ${DOXYGEN_BUILD_DIR}/Doxyfile WORKING_DIRECTORY ${DOXYGEN_BUILD_DIR}
COMMAND ${CMAKE_COMMAND} -E touch ${DOXYGEN_XML_DIR}/run.stamp
)
if(EXISTS ${DOXYGEN_XML_DIR}/run.stamp)
set(SPHINX_EXTRA_OPTS "-E")
else()
set(SPHINX_EXTRA_OPTS "")
endif()
add_custom_command( add_custom_command(
OUTPUT html OUTPUT html
DEPENDS ${DOC_SOURCES} docenv requirements.txt DEPENDS ${DOC_SOURCES} docenv ${DOC_BUILD_DIR}/requirements.txt ${DOXYGEN_XML_DIR}/index.xml ${BUILD_DOC_CONFIG_FILE}
COMMAND ${DOCENV_BINARY_DIR}/sphinx-build -j ${NPROCS} -b html -c ${LAMMPS_DOC_DIR}/utils/sphinx-config -d ${CMAKE_BINARY_DIR}/doctrees ${LAMMPS_DOC_DIR}/src html COMMAND ${DOCENV_BINARY_DIR}/sphinx-build ${SPHINX_EXTRA_OPTS} -b html -c ${DOC_BUILD_DIR} -d ${DOC_BUILD_DIR}/doctrees ${LAMMPS_DOC_DIR}/src ${DOC_BUILD_DIR}/html
COMMAND ${CMAKE_COMMAND} -E create_symlink Manual.html ${DOC_BUILD_DIR}/html/index.html
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LAMMPS_DOC_DIR}/src/PDF ${DOC_BUILD_DIR}/html/PDF
COMMAND ${CMAKE_COMMAND} -E remove -f ${DOXYGEN_XML_DIR}/run.stamp
) )
add_custom_target( add_custom_target(
doc ALL doc ALL
DEPENDS html DEPENDS html ${DOC_BUILD_STATIC_DIR}/mathjax/es5
SOURCES ${LAMMPS_DOC_DIR}/utils/requirements.txt ${DOC_SOURCES} SOURCES ${LAMMPS_DOC_DIR}/utils/requirements.txt ${DOC_SOURCES}
) )
install(DIRECTORY ${CMAKE_BINARY_DIR}/html DESTINATION ${CMAKE_INSTALL_DOCDIR}) install(DIRECTORY ${DOC_BUILD_DIR}/html DESTINATION ${CMAKE_INSTALL_DOCDIR})
endif() endif()

View File

@ -0,0 +1,16 @@
# - Find CUB
# Find the CUB header library
#
# CUB_INCLUDE_DIRS - where to find cub/cub.cuh
# CUB_FOUND - True if CUB found.
#
find_path(CUB_INCLUDE_DIR cub.cuh PATH_SUFFIXES cub)
include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set CUB_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(CUB DEFAULT_MSG CUB_INCLUDE_DIR)
mark_as_advanced(CUB_INCLUDE_DIR)

View File

@ -0,0 +1,46 @@
# Find clang-format
find_program(ClangFormat_EXECUTABLE NAMES clang-format
clang-format-10.0
clang-format-9.0
clang-format-8.0
clang-format-7.0
clang-format-6.0
DOC "clang-format executable")
mark_as_advanced(ClangFormat_EXECUTABLE)
if(ClangFormat_EXECUTABLE)
# find version
execute_process(COMMAND ${ClangFormat_EXECUTABLE} --version
OUTPUT_VARIABLE clang_format_version
ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE)
if(clang_format_version MATCHES "^clang-format version .*")
# Arch Linux
# clang-format version 10.0.0
# Ubuntu 18.04 LTS Output
# clang-format version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
string(REGEX REPLACE "clang-format version ([0-9.]+).*"
"\\1"
ClangFormat_VERSION
"${clang_format_version}")
elseif(clang_format_version MATCHES ".*LLVM version .*")
# CentOS 7 Output
# LLVM (http://llvm.org/):
# LLVM version 3.4.2
# Optimized build.
# Built Nov 1 2018 (15:06:24).
# Default target: x86_64-redhat-linux-gnu
# Host CPU: x86-64
string(REGEX REPLACE ".*LLVM version ([0-9.]+).*"
"\\1"
ClangFormat_VERSION
"${clang_format_version}")
else()
set(ClangFormat_VERSION "0.0")
endif()
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(ClangFormat REQUIRED_VARS ClangFormat_EXECUTABLE VERSION_VAR ClangFormat_VERSION)

View File

@ -14,14 +14,34 @@ find_path(FFTW3_INCLUDE_DIR fftw3.h HINTS ${PC_FFTW3_INCLUDE_DIRS})
find_library(FFTW3_LIBRARY NAMES fftw3 HINTS ${PC_FFTW3_LIBRARY_DIRS}) find_library(FFTW3_LIBRARY NAMES fftw3 HINTS ${PC_FFTW3_LIBRARY_DIRS})
find_library(FFTW3_OMP_LIBRARY NAMES fftw3_omp HINTS ${PC_FFTW3_LIBRARY_DIRS}) find_library(FFTW3_OMP_LIBRARY NAMES fftw3_omp HINTS ${PC_FFTW3_LIBRARY_DIRS})
set(FFTW3_INCLUDE_DIRS ${FFTW3_INCLUDE_DIR})
set(FFTW3_LIBRARIES ${FFTW3_LIBRARY})
set(FFTW3_OMP_LIBRARIES ${FFTW3_OMP_LIBRARY})
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set FFTW3_FOUND to TRUE # handle the QUIETLY and REQUIRED arguments and set FFTW3_FOUND to TRUE
# if all listed variables are TRUE # if all listed variables are TRUE
find_package_handle_standard_args(FFTW3 DEFAULT_MSG FFTW3_LIBRARY FFTW3_INCLUDE_DIR) find_package_handle_standard_args(FFTW3 DEFAULT_MSG FFTW3_LIBRARY FFTW3_INCLUDE_DIR)
# Copy the results to the output variables and target.
if(FFTW3_FOUND)
set(FFTW3_LIBRARIES ${FFTW3_LIBRARY} )
set(FFTW3_INCLUDE_DIRS ${FFTW3_INCLUDE_DIR} )
if(NOT TARGET FFTW3::FFTW3)
add_library(FFTW3::FFTW3 UNKNOWN IMPORTED)
set_target_properties(FFTW3::FFTW3 PROPERTIES
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
IMPORTED_LOCATION "${FFTW3_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${FFTW3_INCLUDE_DIRS}")
endif()
if(FFTW3_OMP_LIBRARY)
set(FFTW3_OMP_LIBRARIES ${FFTW3_OMP_LIBRARY})
if(NOT TARGET FFTW3::FFTW3_OMP)
add_library(FFTW3::FFTW3_OMP UNKNOWN IMPORTED)
set_target_properties(FFTW3::FFTW3_OMP PROPERTIES
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
IMPORTED_LOCATION "${FFTW3_OMP_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${FFTW3_INCLUDE_DIRS}")
endif()
endif()
endif()
mark_as_advanced(FFTW3_INCLUDE_DIR FFTW3_LIBRARY FFTW3_OMP_LIBRARY) mark_as_advanced(FFTW3_INCLUDE_DIR FFTW3_LIBRARY FFTW3_OMP_LIBRARY)

View File

@ -13,14 +13,34 @@ find_path(FFTW3F_INCLUDE_DIR fftw3.h HINTS ${PC_FFTW3F_INCLUDE_DIRS})
find_library(FFTW3F_LIBRARY NAMES fftw3f HINTS ${PC_FFTW3F_LIBRARY_DIRS}) find_library(FFTW3F_LIBRARY NAMES fftw3f HINTS ${PC_FFTW3F_LIBRARY_DIRS})
find_library(FFTW3F_OMP_LIBRARY NAMES fftw3f_omp HINTS ${PC_FFTW3F_LIBRARY_DIRS}) find_library(FFTW3F_OMP_LIBRARY NAMES fftw3f_omp HINTS ${PC_FFTW3F_LIBRARY_DIRS})
set(FFTW3F_INCLUDE_DIRS ${FFTW3F_INCLUDE_DIR})
set(FFTW3F_LIBRARIES ${FFTW3F_LIBRARY})
set(FFTW3F_OMP_LIBRARIES ${FFTW3F_OMP_LIBRARY})
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set FFTW3F_FOUND to TRUE # handle the QUIETLY and REQUIRED arguments and set FFTW3F_FOUND to TRUE
# if all listed variables are TRUE # if all listed variables are TRUE
find_package_handle_standard_args(FFTW3F DEFAULT_MSG FFTW3F_LIBRARY FFTW3F_INCLUDE_DIR) find_package_handle_standard_args(FFTW3F DEFAULT_MSG FFTW3F_LIBRARY FFTW3F_INCLUDE_DIR)
mark_as_advanced(FFTW3F_INCLUDE_DIR FFTW3F_LIBRARY) # Copy the results to the output variables and target.
if(FFTW3F_FOUND)
set(FFTW3F_LIBRARIES ${FFTW3F_LIBRARY} )
set(FFTW3F_INCLUDE_DIRS ${FFTW3F_INCLUDE_DIR} )
if(NOT TARGET FFTW3F::FFTW3F)
add_library(FFTW3F::FFTW3F UNKNOWN IMPORTED)
set_target_properties(FFTW3F::FFTW3F PROPERTIES
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
IMPORTED_LOCATION "${FFTW3F_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${FFTW3F_INCLUDE_DIRS}")
endif()
if(FFTW3F_OMP_LIBRARY)
set(FFTW3F_OMP_LIBRARIES ${FFTW3F_OMP_LIBRARY})
if(NOT TARGET FFTW3F::FFTW3F_OMP)
add_library(FFTW3F::FFTW3F_OMP UNKNOWN IMPORTED)
set_target_properties(FFTW3F::FFTW3F_OMP PROPERTIES
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
IMPORTED_LOCATION "${FFTW3F_OMP_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${FFTW3F_INCLUDE_DIRS}")
endif()
endif()
endif()
mark_as_advanced(FFTW3F_INCLUDE_DIR FFTW3F_LIBRARY FFTW3F_OMP_LIBRARY)

View File

@ -1,85 +0,0 @@
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the Common Development
# and Distribution License Version 1.0 (the "License").
#
# You can obtain a copy of the license at
# http://www.opensource.org/licenses/CDDL-1.0. See the License for the
# specific language governing permissions and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each file and
# include the License file in a prominent location with the name LICENSE.CDDL.
# If applicable, add the following below this CDDL HEADER, with the fields
# enclosed by brackets "[]" replaced with your own identifying information:
#
# Portions Copyright (c) [yyyy] [name of copyright owner]. All rights reserved.
#
# CDDL HEADER END
#
#
# Copyright (c) 2013--2019, Regents of the University of Minnesota.
# All rights reserved.
#
# Contributors:
# Richard Berger
# Christoph Junghans
# Ryan S. Elliott
#
# - Find KIM-API
#
# sets standard pkg_check_modules variables plus:
#
# KIM-API-CMAKE_C_COMPILER
# KIM-API-CMAKE_CXX_COMPILER
# KIM-API-CMAKE_Fortran_COMPILER
#
function(_KIMAPI_GET_VERSION _OUT_ver _version_hdr)
if(NOT EXISTS ${_version_hdr})
message(FATAL_ERROR "Header file ${_version_hdr} not found (check value of KIM-API_INCLUDE_DIR)")
endif()
foreach(_var KIM_VERSION_MAJOR KIM_VERSION_MINOR KIM_VERSION_PATCH)
file(STRINGS ${_version_hdr} _contents REGEX "#define ${_var}[ \t]+")
if(_contents)
string(REGEX REPLACE ".*#define ${_var}[ \t]+([0-9]+).*" "\\1" _${_var} "${_contents}")
if(${_${_var}} STREQUAL "")
message(FATAL_ERROR "Version parsing failed for ${_var} in ${_version_hdr}, got empty return!")
elseif(NOT ${_${_var}} MATCHES "^[0-9]+$")
message(FATAL_ERROR "Version parsing failed for ${_var} in ${_version_hdr}, excepted a number but got ${_${_var}}!")
endif()
else()
message(FATAL_ERROR "No ${_var} line found in include file ${_version_hdr}")
endif()
endforeach()
set(${_OUT_ver} ${_KIM_VERSION_MAJOR}.${_KIM_VERSION_MINOR}.${_KIM_VERSION_PATCH} PARENT_SCOPE)
endfunction()
if(KIM-API_FIND_QUIETLY)
set(REQ_OR_QUI "QUIET")
else()
set(REQ_OR_QUI "REQUIRED")
endif()
find_package(PkgConfig ${REQ_OR_QUI})
include(FindPackageHandleStandardArgs)
pkg_check_modules(KIM-API ${REQ_OR_QUI} libkim-api>=2.0)
if(KIM-API_FOUND)
pkg_get_variable(KIM-API-CMAKE_C_COMPILER libkim-api CMAKE_C_COMPILER)
pkg_get_variable(KIM-API-CMAKE_CXX_COMPILER libkim-api CMAKE_CXX_COMPILER)
pkg_get_variable(KIM-API_CMAKE_Fortran_COMPILER libkim-api CMAKE_Fortran_COMPILER)
endif()
if(KIM-API_INCLUDEDIR)
_KIMAPI_GET_VERSION(KIM-API_VERSION ${KIM-API_INCLUDEDIR}/KIM_Version.h)
else()
set(KIM-API_VERSION 0)
endif()
# handle the QUIETLY and REQUIRED arguments and set KIM-API_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(KIM-API REQUIRED_VARS KIM-API_LIBRARIES VERSION_VAR KIM-API_VERSION)

View File

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

View File

@ -10,13 +10,22 @@ find_path(MKL_INCLUDE_DIR mkl_dfti.h HINTS $ENV{MKLROOT}/include)
find_library(MKL_LIBRARY NAMES mkl_rt HINTS $ENV{MKLROOT}/lib $ENV{MKLROOT}/lib/intel64) find_library(MKL_LIBRARY NAMES mkl_rt HINTS $ENV{MKLROOT}/lib $ENV{MKLROOT}/lib/intel64)
set(MKL_LIBRARIES ${MKL_LIBRARY})
set(MKL_INCLUDE_DIRS ${MKL_INCLUDE_DIR})
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set MKL_FOUND to TRUE # handle the QUIETLY and REQUIRED arguments and set MKL_FOUND to TRUE
# if all listed variables are TRUE # if all listed variables are TRUE
find_package_handle_standard_args(MKL DEFAULT_MSG MKL_LIBRARY MKL_INCLUDE_DIR) find_package_handle_standard_args(MKL DEFAULT_MSG MKL_LIBRARY MKL_INCLUDE_DIR)
if(MKL_FOUND)
set(MKL_LIBRARIES ${MKL_LIBRARY})
set(MKL_INCLUDE_DIRS ${MKL_INCLUDE_DIR})
if(NOT TARGET MKL::MKL)
add_library(MKL::MKL UNKNOWN IMPORTED)
set_target_properties(MKL::MKL PROPERTIES
IMPORTED_LOCATION "${MKL_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${MKL_INCLUDE_DIR}")
endif()
endif()
mark_as_advanced(MKL_INCLUDE_DIR MKL_LIBRARY ) mark_as_advanced(MKL_INCLUDE_DIR MKL_LIBRARY )

View File

@ -10,13 +10,23 @@ find_path(MSCG_INCLUDE_DIR mscg.h PATH_SUFFIXES mscg)
find_library(MSCG_LIBRARY NAMES mscg) find_library(MSCG_LIBRARY NAMES mscg)
set(MSCG_LIBRARIES ${MSCG_LIBRARY})
set(MSCG_INCLUDE_DIRS ${MSCG_INCLUDE_DIR})
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set MSCG_FOUND to TRUE # handle the QUIETLY and REQUIRED arguments and set MSCG_FOUND to TRUE
# if all listed variables are TRUE # if all listed variables are TRUE
find_package_handle_standard_args(MSCG DEFAULT_MSG MSCG_LIBRARY MSCG_INCLUDE_DIR) find_package_handle_standard_args(MSCG DEFAULT_MSG MSCG_LIBRARY MSCG_INCLUDE_DIR)
# Copy the results to the output variables and target.
if(MSCG_FOUND)
set(MSCG_LIBRARIES ${MSCG_LIBRARY})
set(MSCG_INCLUDE_DIRS ${MSCG_INCLUDE_DIR})
if(NOT TARGET MSCG::MSCG)
add_library(MSCG::MSCG UNKNOWN IMPORTED)
set_target_properties(MSCG::MSCG PROPERTIES
IMPORTED_LOCATION "${MSCG_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${MSCG_INCLUDE_DIR}")
endif()
endif()
mark_as_advanced(MSCG_INCLUDE_DIR MSCG_LIBRARY ) mark_as_advanced(MSCG_INCLUDE_DIR MSCG_LIBRARY )

View File

@ -120,3 +120,14 @@ set (NETCDF_INCLUDE_DIRS ${NetCDF_includes})
include (FindPackageHandleStandardArgs) include (FindPackageHandleStandardArgs)
find_package_handle_standard_args (NetCDF find_package_handle_standard_args (NetCDF
DEFAULT_MSG NETCDF_LIBRARIES NETCDF_INCLUDE_DIRS NETCDF_HAS_INTERFACES) DEFAULT_MSG NETCDF_LIBRARIES NETCDF_INCLUDE_DIRS NETCDF_HAS_INTERFACES)
# Copy the results to the output variables and target.
if(NetCDF_FOUND)
if(NOT TARGET NetCDF::NetCDF)
add_library(NetCDF::NetCDF UNKNOWN IMPORTED)
set_target_properties(NetCDF::NetCDF PROPERTIES
IMPORTED_LOCATION "${NETCDF_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${NETCDF_INCLUDE_DIRS}"
INTERFACE_LINK_LIBRARIES "${NETCDF_LIBRARIES}")
endif()
endif()

View File

@ -53,3 +53,12 @@ include (FindPackageHandleStandardArgs)
find_package_handle_standard_args (PNetCDF DEFAULT_MSG PNETCDF_LIBRARIES PNETCDF_INCLUDES) find_package_handle_standard_args (PNetCDF DEFAULT_MSG PNETCDF_LIBRARIES PNETCDF_INCLUDES)
mark_as_advanced (PNETCDF_LIBRARIES PNETCDF_INCLUDES) mark_as_advanced (PNETCDF_LIBRARIES PNETCDF_INCLUDES)
if(PNetCDF_FOUND)
if(NOT TARGET PNetCDF::PNetCDF)
add_library(PNetCDF::PNetCDF UNKNOWN IMPORTED)
set_target_properties(PNetCDF::PNetCDF PROPERTIES
IMPORTED_LOCATION "${PNETCDF_LIBRARIES}"
INTERFACE_INCLUDE_DIRECTORIES "${PNETCDF_INCLUDES}")
endif()
endif()

View File

@ -7,12 +7,21 @@
find_library(QUIP_LIBRARY NAMES quip) find_library(QUIP_LIBRARY NAMES quip)
set(QUIP_LIBRARIES ${QUIP_LIBRARY})
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set QUIP_FOUND to TRUE # handle the QUIETLY and REQUIRED arguments and set QUIP_FOUND to TRUE
# if all listed variables are TRUE # if all listed variables are TRUE
find_package_handle_standard_args(QUIP DEFAULT_MSG QUIP_LIBRARY) find_package_handle_standard_args(QUIP DEFAULT_MSG QUIP_LIBRARY)
# Copy the results to the output variables and target.
if(QUIP_FOUND)
set(QUIP_LIBRARIES ${QUIP_LIBRARY})
if(NOT TARGET QUIP::QUIP)
add_library(QUIP::QUIP UNKNOWN IMPORTED)
set_target_properties(QUIP::QUIP PROPERTIES
IMPORTED_LOCATION "${QUIP_LIBRARY}")
endif()
endif()
mark_as_advanced(QUIP_LIBRARY) mark_as_advanced(QUIP_LIBRARY)

View File

@ -1,46 +0,0 @@
# - Find parts of TBB
# Find the native TBB headers and libraries.
#
# TBB_INCLUDE_DIRS - where to find tbb.h, etc.
# TBB_LIBRARIES - List of libraries when using tbb.
# TBB_FOUND - True if tbb found.
#
########################################################
# TBB
# TODO use more generic FindTBB
find_path(TBB_INCLUDE_DIR NAMES tbb/tbb.h PATHS $ENV{TBBROOT}/include)
find_library(TBB_LIBRARY NAMES tbb PATHS $ENV{TBBROOT}/lib/intel64/gcc4.7
$ENV{TBBROOT}/lib/intel64/gcc4.4
$ENV{TBBROOT}/lib/intel64/gcc4.1)
set(TBB_LIBRARIES ${TBB_LIBRARY})
set(TBB_INCLUDE_DIRS ${TBB_INCLUDE_DIR})
include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set TBB_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(TBB DEFAULT_MSG TBB_LIBRARY TBB_INCLUDE_DIR)
mark_as_advanced(TBB_INCLUDE_DIR TBB_LIBRARY )
########################################################
# TBB Malloc
find_path(TBB_MALLOC_INCLUDE_DIR NAMES tbb/tbb.h PATHS $ENV{TBBROOT}/include)
find_library(TBB_MALLOC_LIBRARY NAMES tbbmalloc PATHS $ENV{TBBROOT}/lib/intel64/gcc4.7
$ENV{TBBROOT}/lib/intel64/gcc4.4
$ENV{TBBROOT}/lib/intel64/gcc4.1)
set(TBB_MALLOC_LIBRARIES ${TBB_MALLOC_LIBRARY})
set(TBB_MALLOC_INCLUDE_DIRS ${TBB_MALLOC_INCLUDE_DIR})
include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set TBB_MALLOC_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(TBB_MALLOC DEFAULT_MSG TBB_MALLOC_LIBRARY TBB_MALLOC_INCLUDE_DIR)
mark_as_advanced(TBB_MALLOC_INCLUDE_DIR TBB_MALLOC_LIBRARY )

View File

@ -0,0 +1,36 @@
# - Find parts of TBB_MALLOC
# Find the native TBB_MALLOC headers and libraries.
#
# TBB_MALLOC_INCLUDE_DIRS - where to find tbb.h, etc.
# TBB_MALLOC_LIBRARIES - List of libraries when using tbb.
# TBB_MALLOC_FOUND - True if tbb found.
#
########################################################
# TBB Malloc
find_path(TBB_MALLOC_INCLUDE_DIR NAMES tbb/tbb.h PATHS $ENV{TBBROOT}/include)
find_library(TBB_MALLOC_LIBRARY NAMES tbbmalloc PATHS $ENV{TBBROOT}/lib/intel64/gcc4.8
$ENV{TBBROOT}/lib/intel64/gcc4.7
$ENV{TBBROOT}/lib/intel64/gcc4.4
$ENV{TBBROOT}/lib/intel64/gcc4.1)
include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set TBB_MALLOC_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(TBB_MALLOC DEFAULT_MSG TBB_MALLOC_LIBRARY TBB_MALLOC_INCLUDE_DIR)
if(TBB_MALLOC_FOUND)
set(TBB_MALLOC_LIBRARIES ${TBB_MALLOC_LIBRARY})
set(TBB_MALLOC_INCLUDE_DIRS ${TBB_MALLOC_INCLUDE_DIR})
if(NOT TARGET TBB::TBB_MALLOC)
add_library(TBB::TBB_MALLOC UNKNOWN IMPORTED)
set_target_properties(TBB::TBB_MALLOC PROPERTIES
IMPORTED_LOCATION "${TBB_MALLOC_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${TBB_MALLOC_INCLUDE_DIR}")
endif()
endif()
mark_as_advanced(TBB_MALLOC_INCLUDE_DIR TBB_MALLOC_LIBRARY )

View File

@ -10,13 +10,23 @@ find_path(VORO_INCLUDE_DIR voro++.hh PATH_SUFFIXES voro++)
find_library(VORO_LIBRARY NAMES voro++) find_library(VORO_LIBRARY NAMES voro++)
set(VORO_LIBRARIES ${VORO_LIBRARY})
set(VORO_INCLUDE_DIRS ${VORO_INCLUDE_DIR})
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set VORO_FOUND to TRUE # handle the QUIETLY and REQUIRED arguments and set VORO_FOUND to TRUE
# if all listed variables are TRUE # if all listed variables are TRUE
find_package_handle_standard_args(VORO DEFAULT_MSG VORO_LIBRARY VORO_INCLUDE_DIR) find_package_handle_standard_args(VORO DEFAULT_MSG VORO_LIBRARY VORO_INCLUDE_DIR)
# Copy the results to the output variables and target.
if(VORO_FOUND)
set(VORO_LIBRARIES ${VORO_LIBRARY})
set(VORO_INCLUDE_DIRS ${VORO_INCLUDE_DIR})
if(NOT TARGET VORO::VORO)
add_library(VORO::VORO UNKNOWN IMPORTED)
set_target_properties(VORO::VORO PROPERTIES
IMPORTED_LOCATION "${VORO_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${VORO_INCLUDE_DIR}")
endif()
endif()
mark_as_advanced(VORO_INCLUDE_DIR VORO_LIBRARY ) mark_as_advanced(VORO_INCLUDE_DIR VORO_LIBRARY )

View File

@ -0,0 +1,30 @@
# - Find libyaml
# Find the native Yaml headers and libraries.
#
# YAML_INCLUDE_DIRS - where to find yaml.h
# YAML_LIBRARIES - List of libraries when using libyaml
# YAML_FOUND - True if libyaml is found.
#
find_path(YAML_INCLUDE_DIR yaml.h PATH_SUFFIXES yaml)
find_library(YAML_LIBRARY NAMES yaml)
# handle the QUIET and REQUIRED arguments and
# set YAML_FOUND to TRUE if all variables are non-zero
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(YAML DEFAULT_MSG YAML_LIBRARY YAML_INCLUDE_DIR)
# Copy the results to the output variables and target.
if(YAML_FOUND)
set(YAML_LIBRARIES ${YAML_LIBRARY})
set(YAML_INCLUDE_DIRS ${YAML_INCLUDE_DIR})
if(NOT TARGET Yaml::Yaml)
add_library(Yaml::Yaml UNKNOWN IMPORTED)
set_target_properties(Yaml::Yaml PROPERTIES
IMPORTED_LOCATION "${YAML_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${YAML_INCLUDE_DIR}")
endif()
endif()
mark_as_advanced(YAML_INCLUDE_DIR YAML_LIBRARY)

View File

@ -1,8 +1,19 @@
find_path(ZMQ_INCLUDE_DIR zmq.h) find_path(ZMQ_INCLUDE_DIR zmq.h)
find_library(ZMQ_LIBRARY NAMES zmq) find_library(ZMQ_LIBRARY NAMES zmq)
set(ZMQ_LIBRARIES ${ZMQ_LIBRARY})
set(ZMQ_INCLUDE_DIRS ${ZMQ_INCLUDE_DIR})
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(ZMQ DEFAULT_MSG ZMQ_LIBRARY ZMQ_INCLUDE_DIR) find_package_handle_standard_args(ZMQ DEFAULT_MSG ZMQ_LIBRARY ZMQ_INCLUDE_DIR)
# Copy the results to the output variables and target.
if(ZMQ_FOUND)
set(ZMQ_LIBRARIES ${ZMQ_LIBRARY})
set(ZMQ_INCLUDE_DIRS ${ZMQ_INCLUDE_DIR})
if(NOT TARGET ZMQ::ZMQ)
add_library(ZMQ::ZMQ UNKNOWN IMPORTED)
set_target_properties(ZMQ::ZMQ PROPERTIES
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
IMPORTED_LOCATION "${ZMQ_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${ZMQ_INCLUDE_DIR}")
endif()
endif()

79
cmake/Modules/GTest.cmake Normal file
View File

@ -0,0 +1,79 @@
message(STATUS "Downloading and building Google Test library")
if(CMAKE_BUILD_TYPE STREQUAL Debug)
set(GTEST_LIB_POSTFIX d)
else()
set(GTEST_LIB_POSTFIX)
endif()
include(ExternalProject)
set(GTEST_URL "https://github.com/google/googletest/archive/release-1.10.0.tar.gz" CACHE STRING "URL for GTest tarball")
mark_as_advanced(GTEST_URL)
ExternalProject_Add(googletest
URL ${GTEST_URL}
URL_MD5 ecd1fa65e7de707cd5c00bdac56022cd
SOURCE_DIR "${CMAKE_BINARY_DIR}/gtest-src"
BINARY_DIR "${CMAKE_BINARY_DIR}/gtest-build"
CMAKE_ARGS ${CMAKE_REQUEST_PIC} ${CMAKE_EXTRA_GTEST_OPTS}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
BUILD_BYPRODUCTS <BINARY_DIR>/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gtest${GTEST_LIB_POSTFIX}.a
<BINARY_DIR>/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gmock${GTEST_LIB_POSTFIX}.a
<BINARY_DIR>/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gtest_main${GTEST_LIB_POSTFIX}.a
<BINARY_DIR>/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gmock_main${GTEST_LIB_POSTFIX}.a
LOG_DOWNLOAD ON
LOG_CONFIGURE ON
LOG_BUILD ON
INSTALL_COMMAND ""
TEST_COMMAND "")
ExternalProject_Get_Property(googletest SOURCE_DIR)
set(GTEST_INCLUDE_DIR ${SOURCE_DIR}/googletest/include)
set(GMOCK_INCLUDE_DIR ${SOURCE_DIR}/googlemock/include)
# workaround for CMake 3.10 on ubuntu 18.04
file(MAKE_DIRECTORY ${GTEST_INCLUDE_DIR})
file(MAKE_DIRECTORY ${GMOCK_INCLUDE_DIR})
ExternalProject_Get_Property(googletest BINARY_DIR)
set(GTEST_LIBRARY_PATH ${BINARY_DIR}/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gtest${GTEST_LIB_POSTFIX}.a)
set(GMOCK_LIBRARY_PATH ${BINARY_DIR}/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gmock${GTEST_LIB_POSTFIX}.a)
set(GTEST_MAIN_LIBRARY_PATH ${BINARY_DIR}/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gtest_main${GTEST_LIB_POSTFIX}.a)
set(GMOCK_MAIN_LIBRARY_PATH ${BINARY_DIR}/lib/${CMAKE_FIND_LIBRARY_PREFIXES}gmock_main${GTEST_LIB_POSTFIX}.a)
# Prevent GoogleTest from overriding our compiler/linker options
# when building with Visual Studio
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
find_package(Threads QUIET)
add_library(GTest::GTest UNKNOWN IMPORTED)
set_target_properties(GTest::GTest PROPERTIES
IMPORTED_LOCATION ${GTEST_LIBRARY_PATH}
INTERFACE_INCLUDE_DIRECTORIES ${GTEST_INCLUDE_DIR}
INTERFACE_LINK_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}")
add_dependencies(GTest::GTest googletest)
add_library(GTest::GMock UNKNOWN IMPORTED)
set_target_properties(GTest::GMock PROPERTIES
IMPORTED_LOCATION ${GMOCK_LIBRARY_PATH}
INTERFACE_INCLUDE_DIRECTORIES ${GMOCK_INCLUDE_DIR}
INTERFACE_LINK_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}")
add_dependencies(GTest::GMock googletest)
add_library(GTest::GTestMain UNKNOWN IMPORTED)
set_target_properties(GTest::GTestMain PROPERTIES
IMPORTED_LOCATION ${GTEST_MAIN_LIBRARY_PATH}
INTERFACE_INCLUDE_DIRECTORIES ${GTEST_INCLUDE_DIR}
INTERFACE_LINK_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}")
add_dependencies(GTest::GTestMain googletest)
add_library(GTest::GMockMain UNKNOWN IMPORTED)
set_target_properties(GTest::GMockMain PROPERTIES
IMPORTED_LOCATION ${GMOCK_MAIN_LIBRARY_PATH}
INTERFACE_INCLUDE_DIRECTORIES ${GMOCK_INCLUDE_DIR}
INTERFACE_LINK_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}")
add_dependencies(GTest::GMockMain googletest)

View File

@ -0,0 +1,3 @@
# utility script to call GenerateBinaryHeader function
include(${SOURCE_DIR}/Modules/LAMMPSUtils.cmake)
GenerateBinaryHeader(${VARNAME} ${HEADER_FILE} ${SOURCE_FILE})

View File

@ -69,3 +69,38 @@ macro(pkg_depends PKG1 PKG2)
message(FATAL_ERROR "${PKG1} package needs LAMMPS to be build with ${PKG2}") message(FATAL_ERROR "${PKG1} package needs LAMMPS to be build with ${PKG2}")
endif() endif()
endmacro() endmacro()
# CMake-only replacement for bin2c and xxd
function(GenerateBinaryHeader varname outfile infile)
message("Creating ${outfile}...")
file(WRITE ${outfile} "// CMake generated file\n")
file(READ ${infile} content HEX)
string(REGEX REPLACE "([0-9a-f][0-9a-f])" "0x\\1," content "${content}")
string(REGEX REPLACE ",$" "" content "${content}")
file(APPEND ${outfile} "const unsigned char ${varname}[] = { ${content} };\n")
file(APPEND ${outfile} "const unsigned int ${varname}_size = sizeof(${varname});\n")
endfunction(GenerateBinaryHeader)
# fetch missing potential files
function(FetchPotentials pkgfolder potfolder)
if (EXISTS "${pkgfolder}/potentials.txt")
set(LAMMPS_POTENTIALS_URL "https://download.lammps.org/potentials")
file(STRINGS "${pkgfolder}/potentials.txt" linelist REGEX "^[^#].")
foreach(line ${linelist})
string(FIND ${line} " " blank)
math(EXPR plusone "${blank}+1")
string(SUBSTRING ${line} 0 ${blank} pot)
string(SUBSTRING ${line} ${plusone} -1 sum)
if(EXISTS ${LAMMPS_POTENTIALS_DIR}/${pot})
file(MD5 "${LAMMPS_POTENTIALS_DIR}/${pot}" oldsum)
endif()
if(NOT sum STREQUAL oldsum)
message(STATUS "Checking external potential ${pot} from ${LAMMPS_POTENTIALS_URL}")
file(DOWNLOAD "${LAMMPS_POTENTIALS_URL}/${pot}.${sum}" "${CMAKE_BINARY_DIR}/${pot}"
EXPECTED_HASH MD5=${sum} SHOW_PROGRESS)
file(COPY "${CMAKE_BINARY_DIR}/${pot}" DESTINATION ${LAMMPS_POTENTIALS_DIR})
endif()
endforeach()
endif()
endfunction(FetchPotentials)

View File

@ -0,0 +1,30 @@
# Download and configure custom MPICH files for Windows
message(STATUS "Downloading and configuring MPICH-1.4.1 for Windows")
include(ExternalProject)
if (CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
ExternalProject_Add(mpi4win_build
URL https://download.lammps.org/thirdparty/mpich2-win64-devel.tar.gz
URL_MD5 4939fdb59d13182fd5dd65211e469f14
CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
BUILD_BYPRODUCTS <SOURCE_DIR>/lib/libmpi.a)
else()
ExternalProject_Add(mpi4win_build
URL https://download.lammps.org/thirdparty/mpich2-win32-devel.tar.gz
URL_MD5 a61d153500dce44e21b755ee7257e031
CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
BUILD_BYPRODUCTS <SOURCE_DIR>/lib/libmpi.a)
endif()
ExternalProject_get_property(mpi4win_build SOURCE_DIR)
file(MAKE_DIRECTORY "${SOURCE_DIR}/include")
add_library(MPI::MPI_CXX UNKNOWN IMPORTED)
set_target_properties(MPI::MPI_CXX PROPERTIES
IMPORTED_LOCATION "${SOURCE_DIR}/lib/libmpi.a"
INTERFACE_INCLUDE_DIRECTORIES "${SOURCE_DIR}/include"
INTERFACE_COMPILE_DEFINITIONS "MPICH_SKIP_MPICXX")
add_dependencies(MPI::MPI_CXX mpi4win_build)
# set variables for status reporting at the end of CMake run
set(MPI_CXX_INCLUDE_PATH "${SOURCE_DIR}/include")
set(MPI_CXX_COMPILE_DEFINITIONS "MPICH_SKIP_MPICXX")
set(MPI_CXX_LIBRARIES "${SOURCE_DIR}/lib/libmpi.a")

View File

@ -1,5 +1,10 @@
if(PKG_COMPRESS) find_package(ZLIB REQUIRED)
find_package(ZLIB REQUIRED) target_link_libraries(lammps PRIVATE ZLIB::ZLIB)
include_directories(${ZLIB_INCLUDE_DIRS})
list(APPEND LAMMPS_LINK_LIBS ${ZLIB_LIBRARIES}) find_package(PkgConfig REQUIRED)
pkg_check_modules(Zstd IMPORTED_TARGET libzstd>=1.4)
if(Zstd_FOUND)
target_compile_definitions(lammps PRIVATE -DLAMMPS_ZSTD)
target_link_libraries(lammps PRIVATE PkgConfig::Zstd)
endif() endif()

View File

@ -1,13 +1,11 @@
if(PKG_CORESHELL) set(CORESHELL_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/CORESHELL)
set(CORESHELL_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/CORESHELL) set(CORESHELL_SOURCES)
set(CORESHELL_SOURCES) set_property(GLOBAL PROPERTY "CORESHELL_SOURCES" "${CORESHELL_SOURCES}")
set_property(GLOBAL PROPERTY "CORESHELL_SOURCES" "${CORESHELL_SOURCES}")
# detects styles which have a CORESHELL version # detects styles which have a CORESHELL version
RegisterStylesExt(${CORESHELL_SOURCES_DIR} cs CORESHELL_SOURCES) RegisterStylesExt(${CORESHELL_SOURCES_DIR} cs CORESHELL_SOURCES)
get_property(CORESHELL_SOURCES GLOBAL PROPERTY CORESHELL_SOURCES) get_property(CORESHELL_SOURCES GLOBAL PROPERTY CORESHELL_SOURCES)
list(APPEND LIB_SOURCES ${CORESHELL_SOURCES}) target_sources(lammps PRIVATE ${CORESHELL_SOURCES})
include_directories(${CORESHELL_SOURCES_DIR}) target_include_directories(lammps PRIVATE ${CORESHELL_SOURCES_DIR})
endif()

View File

@ -1,194 +1,411 @@
if(PKG_GPU) set(GPU_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/GPU)
if (CMAKE_VERSION VERSION_LESS "3.1") set(GPU_SOURCES ${GPU_SOURCES_DIR}/gpu_extra.h
message(FATAL_ERROR "For the GPU package you need at least cmake-3.1") ${GPU_SOURCES_DIR}/fix_gpu.h
endif() ${GPU_SOURCES_DIR}/fix_gpu.cpp)
set(GPU_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/GPU)
set(GPU_SOURCES ${GPU_SOURCES_DIR}/gpu_extra.h
${GPU_SOURCES_DIR}/fix_gpu.h
${GPU_SOURCES_DIR}/fix_gpu.cpp)
set(GPU_API "opencl" CACHE STRING "API used by GPU package") set(GPU_API "opencl" CACHE STRING "API used by GPU package")
set(GPU_API_VALUES opencl cuda) set(GPU_API_VALUES opencl cuda hip)
set_property(CACHE GPU_API PROPERTY STRINGS ${GPU_API_VALUES}) set_property(CACHE GPU_API PROPERTY STRINGS ${GPU_API_VALUES})
validate_option(GPU_API GPU_API_VALUES) validate_option(GPU_API GPU_API_VALUES)
string(TOUPPER ${GPU_API} GPU_API) string(TOUPPER ${GPU_API} GPU_API)
set(GPU_PREC "mixed" CACHE STRING "LAMMPS GPU precision") set(GPU_PREC "mixed" CACHE STRING "LAMMPS GPU precision")
set(GPU_PREC_VALUES double mixed single) set(GPU_PREC_VALUES double mixed single)
set_property(CACHE GPU_PREC PROPERTY STRINGS ${GPU_PREC_VALUES}) set_property(CACHE GPU_PREC PROPERTY STRINGS ${GPU_PREC_VALUES})
validate_option(GPU_PREC GPU_PREC_VALUES) validate_option(GPU_PREC GPU_PREC_VALUES)
string(TOUPPER ${GPU_PREC} GPU_PREC) string(TOUPPER ${GPU_PREC} GPU_PREC)
if(GPU_PREC STREQUAL "DOUBLE") if(GPU_PREC STREQUAL "DOUBLE")
set(GPU_PREC_SETTING "DOUBLE_DOUBLE") set(GPU_PREC_SETTING "DOUBLE_DOUBLE")
elseif(GPU_PREC STREQUAL "MIXED") elseif(GPU_PREC STREQUAL "MIXED")
set(GPU_PREC_SETTING "SINGLE_DOUBLE") set(GPU_PREC_SETTING "SINGLE_DOUBLE")
elseif(GPU_PREC STREQUAL "SINGLE") elseif(GPU_PREC STREQUAL "SINGLE")
set(GPU_PREC_SETTING "SINGLE_SINGLE") set(GPU_PREC_SETTING "SINGLE_SINGLE")
endif()
file(GLOB GPU_LIB_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/[^.]*.cpp)
file(MAKE_DIRECTORY ${LAMMPS_LIB_BINARY_DIR}/gpu)
if(GPU_API STREQUAL "CUDA")
find_package(CUDA REQUIRED)
find_program(BIN2C bin2c)
if(NOT BIN2C)
message(FATAL_ERROR "Could not find bin2c, use -DBIN2C=/path/to/bin2c to help cmake finding it.")
endif()
option(CUDPP_OPT "Enable CUDPP_OPT" ON)
option(CUDA_MPS_SUPPORT "Enable tweaks to support CUDA Multi-process service (MPS)" OFF)
if(CUDA_MPS_SUPPORT)
set(GPU_CUDA_MPS_FLAGS "-DCUDA_PROXY")
endif()
set(GPU_ARCH "sm_30" CACHE STRING "LAMMPS GPU CUDA SM primary architecture (e.g. sm_60)")
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/[^.]*.cu ${CMAKE_CURRENT_SOURCE_DIR}/gpu/[^.]*.cu)
list(REMOVE_ITEM GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_pppm.cu)
cuda_include_directories(${LAMMPS_LIB_SOURCE_DIR}/gpu ${LAMMPS_LIB_BINARY_DIR}/gpu)
if(CUDPP_OPT)
cuda_include_directories(${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini)
file(GLOB GPU_LIB_CUDPP_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/[^.]*.cpp)
file(GLOB GPU_LIB_CUDPP_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/[^.]*.cu)
endif()
# build arch/gencode commands for nvcc based on CUDA toolkit version and use choice
# --arch translates directly instead of JIT, so this should be for the preferred or most common architecture
set(GPU_CUDA_GENCODE "-arch=${GPU_ARCH} ")
# Fermi (GPU Arch 2.x) is supported by CUDA 3.2 to CUDA 8.0
if((CUDA_VERSION VERSION_GREATER "3.1") AND (CUDA_VERSION VERSION_LESS "9.0"))
string(APPEND GPU_CUDA_GENCODE "-gencode arch=compute_20,code=[sm_20,compute_20] ")
endif()
# Kepler (GPU Arch 3.x) is supported by CUDA 5 and later
if(CUDA_VERSION VERSION_GREATER "4.9")
string(APPEND GPU_CUDA_GENCODE "-gencode arch=compute_30,code=[sm_30,compute_30] -gencode arch=compute_35,code=[sm_35,compute_35] ")
endif()
# Maxwell (GPU Arch 5.x) is supported by CUDA 6 and later
if(CUDA_VERSION VERSION_GREATER "5.9")
string(APPEND GPU_CUDA_GENCODE "-gencode arch=compute_50,code=[sm_50,compute_50] -gencode arch=compute_52,code=[sm_52,compute_52] ")
endif()
# Pascal (GPU Arch 6.x) is supported by CUDA 8 and later
if(CUDA_VERSION VERSION_GREATER "7.9")
string(APPEND GPU_CUDA_GENCODE "-gencode arch=compute_60,code=[sm_60,compute_60] -gencode arch=compute_61,code=[sm_61,compute_61] ")
endif()
# Volta (GPU Arch 7.0) is supported by CUDA 9 and later
if(CUDA_VERSION VERSION_GREATER "8.9")
string(APPEND GPU_CUDA_GENCODE "-gencode arch=compute_70,code=[sm_70,compute_70] ")
endif()
# Turing (GPU Arch 7.5) is supported by CUDA 10 and later
if(CUDA_VERSION VERSION_GREATER "9.9")
string(APPEND GPU_CUDA_GENCODE "-gencode arch=compute_75,code=[sm_75,compute_75] ")
endif()
cuda_compile_fatbin(GPU_GEN_OBJS ${GPU_LIB_CU} OPTIONS
-DUNIX -O3 --use_fast_math -Wno-deprecated-gpu-targets -DNV_KERNEL -DUCL_CUDADR ${GPU_CUDA_GENCODE} -D_${GPU_PREC_SETTING})
cuda_compile(GPU_OBJS ${GPU_LIB_CUDPP_CU} OPTIONS ${CUDA_REQUEST_PIC}
-DUNIX -O3 --use_fast_math -Wno-deprecated-gpu-targets -DUCL_CUDADR ${GPU_CUDA_GENCODE} -D_${GPU_PREC_SETTING})
foreach(CU_OBJ ${GPU_GEN_OBJS})
get_filename_component(CU_NAME ${CU_OBJ} NAME_WE)
string(REGEX REPLACE "^.*_lal_" "" CU_NAME "${CU_NAME}")
add_custom_command(OUTPUT ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
COMMAND ${BIN2C} -c -n ${CU_NAME} ${CU_OBJ} > ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
DEPENDS ${CU_OBJ}
COMMENT "Generating ${CU_NAME}_cubin.h")
list(APPEND GPU_LIB_SOURCES ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h)
endforeach()
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${LAMMPS_LIB_BINARY_DIR}/gpu/*_cubin.h")
add_library(gpu STATIC ${GPU_LIB_SOURCES} ${GPU_LIB_CUDPP_SOURCES} ${GPU_OBJS})
target_link_libraries(gpu ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
target_include_directories(gpu PRIVATE ${LAMMPS_LIB_BINARY_DIR}/gpu ${CUDA_INCLUDE_DIRS})
target_compile_definitions(gpu PRIVATE -D_${GPU_PREC_SETTING} -DMPI_GERYON -DUCL_NO_EXIT ${GPU_CUDA_MPS_FLAGS})
if(CUDPP_OPT)
target_include_directories(gpu PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini)
target_compile_definitions(gpu PRIVATE -DUSE_CUDPP)
endif()
list(APPEND LAMMPS_LINK_LIBS gpu)
add_executable(nvc_get_devices ${LAMMPS_LIB_SOURCE_DIR}/gpu/geryon/ucl_get_devices.cpp)
target_compile_definitions(nvc_get_devices PRIVATE -DUCL_CUDADR)
target_link_libraries(nvc_get_devices PRIVATE ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
target_include_directories(nvc_get_devices PRIVATE ${CUDA_INCLUDE_DIRS})
elseif(GPU_API STREQUAL "OPENCL")
find_package(OpenCL REQUIRED)
set(OCL_TUNE "generic" CACHE STRING "OpenCL Device Tuning")
set(OCL_TUNE_VALUES intel fermi kepler cypress generic)
set_property(CACHE OCL_TUNE PROPERTY STRINGS ${OCL_TUNE_VALUES})
validate_option(OCL_TUNE OCL_TUNE_VALUES)
string(TOUPPER ${OCL_TUNE} OCL_TUNE)
include(OpenCLUtils)
set(OCL_COMMON_HEADERS ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_preprocessor.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_aux_fun1.h)
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/[^.]*.cu)
list(REMOVE_ITEM GPU_LIB_CU
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne_lj.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_re_squared.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_re_squared_lj.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_zbl.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_mod.cu
)
foreach(GPU_KERNEL ${GPU_LIB_CU})
get_filename_component(basename ${GPU_KERNEL} NAME_WE)
string(SUBSTRING ${basename} 4 -1 KERNEL_NAME)
GenerateOpenCLHeader(${KERNEL_NAME} ${CMAKE_CURRENT_BINARY_DIR}/gpu/${KERNEL_NAME}_cl.h ${OCL_COMMON_HEADERS} ${GPU_KERNEL})
list(APPEND GPU_LIB_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/gpu/${KERNEL_NAME}_cl.h)
endforeach()
GenerateOpenCLHeader(gayberne ${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne.cu)
GenerateOpenCLHeader(gayberne_lj ${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_lj_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne_lj.cu)
GenerateOpenCLHeader(re_squared ${CMAKE_CURRENT_BINARY_DIR}/gpu/re_squared_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_re_squared.cu)
GenerateOpenCLHeader(re_squared_lj ${CMAKE_CURRENT_BINARY_DIR}/gpu/re_squared_lj_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_re_squared_lj.cu)
GenerateOpenCLHeader(tersoff ${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff.cu)
GenerateOpenCLHeader(tersoff_zbl ${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_zbl_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_zbl_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_zbl.cu)
GenerateOpenCLHeader(tersoff_mod ${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_mod_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_mod_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_mod.cu)
list(APPEND GPU_LIB_SOURCES
${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_lj_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/re_squared_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/re_squared_lj_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_zbl_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_mod_cl.h
)
add_library(gpu STATIC ${GPU_LIB_SOURCES})
target_link_libraries(gpu ${OpenCL_LIBRARIES})
target_include_directories(gpu PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/gpu ${OpenCL_INCLUDE_DIRS})
target_compile_definitions(gpu PRIVATE -D_${GPU_PREC_SETTING} -D${OCL_TUNE}_OCL -DMPI_GERYON -DUCL_NO_EXIT)
target_compile_definitions(gpu PRIVATE -DUSE_OPENCL)
list(APPEND LAMMPS_LINK_LIBS gpu)
add_executable(ocl_get_devices ${LAMMPS_LIB_SOURCE_DIR}/gpu/geryon/ucl_get_devices.cpp)
target_compile_definitions(ocl_get_devices PRIVATE -DUCL_OPENCL)
target_link_libraries(ocl_get_devices PRIVATE ${OpenCL_LIBRARIES})
target_include_directories(ocl_get_devices PRIVATE ${OpenCL_INCLUDE_DIRS})
endif()
# GPU package
FindStyleHeaders(${GPU_SOURCES_DIR} FIX_CLASS fix_ FIX)
set_property(GLOBAL PROPERTY "GPU_SOURCES" "${GPU_SOURCES}")
# detects styles which have GPU version
RegisterStylesExt(${GPU_SOURCES_DIR} gpu GPU_SOURCES)
get_property(GPU_SOURCES GLOBAL PROPERTY GPU_SOURCES)
list(APPEND LIB_SOURCES ${GPU_SOURCES})
include_directories(${GPU_SOURCES_DIR})
endif() endif()
file(GLOB GPU_LIB_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/[^.]*.cpp)
file(MAKE_DIRECTORY ${LAMMPS_LIB_BINARY_DIR}/gpu)
if(GPU_API STREQUAL "CUDA")
find_package(CUDA REQUIRED)
find_program(BIN2C bin2c)
if(NOT BIN2C)
message(FATAL_ERROR "Could not find bin2c, use -DBIN2C=/path/to/bin2c to help cmake finding it.")
endif()
option(CUDPP_OPT "Enable CUDPP_OPT" ON)
option(CUDA_MPS_SUPPORT "Enable tweaks to support CUDA Multi-process service (MPS)" OFF)
if(CUDA_MPS_SUPPORT)
set(GPU_CUDA_MPS_FLAGS "-DCUDA_PROXY")
endif()
set(GPU_ARCH "sm_50" CACHE STRING "LAMMPS GPU CUDA SM primary architecture (e.g. sm_60)")
# ensure that no *cubin.h files exist from a compile in the lib/gpu folder
file(GLOB GPU_LIB_OLD_CUBIN_HEADERS ${LAMMPS_LIB_SOURCE_DIR}/gpu/*_cubin.h)
if (GPU_LIB_OLD_CUBIN_HEADERS)
message(FATAL_ERROR "########################################################################\n"
"Found file(s) generated by the make-based build system in lib/gpu\n"
"Please run\n"
" make -C ${LAMMPS_LIB_SOURCE_DIR}/gpu -f Makefile.serial clean\n"
"to remove\n"
"########################################################################")
endif()
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/[^.]*.cu ${CMAKE_CURRENT_SOURCE_DIR}/gpu/[^.]*.cu)
list(REMOVE_ITEM GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_pppm.cu)
cuda_include_directories(${LAMMPS_LIB_SOURCE_DIR}/gpu ${LAMMPS_LIB_BINARY_DIR}/gpu)
if(CUDPP_OPT)
cuda_include_directories(${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini)
file(GLOB GPU_LIB_CUDPP_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/[^.]*.cpp)
file(GLOB GPU_LIB_CUDPP_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini/[^.]*.cu)
endif()
# build arch/gencode commands for nvcc based on CUDA toolkit version and use choice
# --arch translates directly instead of JIT, so this should be for the preferred or most common architecture
set(GPU_CUDA_GENCODE "-arch=${GPU_ARCH}")
# Fermi (GPU Arch 2.x) is supported by CUDA 3.2 to CUDA 8.0
if((CUDA_VERSION VERSION_GREATER_EQUAL "3.2") AND (CUDA_VERSION VERSION_LESS "9.0"))
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_20,code=[sm_20,compute_20] ")
endif()
# Kepler (GPU Arch 3.0) is supported by CUDA 5 to CUDA 10.2
if((CUDA_VERSION VERSION_GREATER_EQUAL "5.0") AND (CUDA_VERSION VERSION_LESS "11.0"))
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_30,code=[sm_30,compute_30] ")
endif()
# Kepler (GPU Arch 3.5) is supported by CUDA 5 to CUDA 11
if((CUDA_VERSION VERSION_GREATER_EQUAL "5.0") AND (CUDA_VERSION VERSION_LESS "12.0"))
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_35,code=[sm_35,compute_35]")
endif()
# Maxwell (GPU Arch 5.x) is supported by CUDA 6 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "6.0")
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_50,code=[sm_50,compute_50] -gencode arch=compute_52,code=[sm_52,compute_52]")
endif()
# Pascal (GPU Arch 6.x) is supported by CUDA 8 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "8.0")
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_60,code=[sm_60,compute_60] -gencode arch=compute_61,code=[sm_61,compute_61]")
endif()
# Volta (GPU Arch 7.0) is supported by CUDA 9 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "9.0")
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_70,code=[sm_70,compute_70]")
endif()
# Turing (GPU Arch 7.5) is supported by CUDA 10 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "10.0")
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_75,code=[sm_75,compute_75]")
endif()
# Ampere (GPU Arch 8.0) is supported by CUDA 11 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "11.0")
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_80,code=[sm_80,compute_80]")
endif()
if(CUDA_VERSION VERSION_GREATER_EQUAL "12.0")
message(WARNING "Unsupported CUDA version. Use at your own risk.")
endif()
cuda_compile_fatbin(GPU_GEN_OBJS ${GPU_LIB_CU} OPTIONS ${CUDA_REQUEST_PIC}
-DUNIX -O3 --use_fast_math -Wno-deprecated-gpu-targets -DNV_KERNEL -DUCL_CUDADR ${GPU_CUDA_GENCODE} -D_${GPU_PREC_SETTING})
cuda_compile(GPU_OBJS ${GPU_LIB_CUDPP_CU} OPTIONS ${CUDA_REQUEST_PIC}
-DUNIX -O3 --use_fast_math -Wno-deprecated-gpu-targets -DUCL_CUDADR ${GPU_CUDA_GENCODE} -D_${GPU_PREC_SETTING})
foreach(CU_OBJ ${GPU_GEN_OBJS})
get_filename_component(CU_NAME ${CU_OBJ} NAME_WE)
string(REGEX REPLACE "^.*_lal_" "" CU_NAME "${CU_NAME}")
add_custom_command(OUTPUT ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
COMMAND ${BIN2C} -c -n ${CU_NAME} ${CU_OBJ} > ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h
DEPENDS ${CU_OBJ}
COMMENT "Generating ${CU_NAME}_cubin.h")
list(APPEND GPU_LIB_SOURCES ${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h)
endforeach()
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${LAMMPS_LIB_BINARY_DIR}/gpu/*_cubin.h")
add_library(gpu STATIC ${GPU_LIB_SOURCES} ${GPU_LIB_CUDPP_SOURCES} ${GPU_OBJS})
target_link_libraries(gpu PRIVATE ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
target_include_directories(gpu PRIVATE ${LAMMPS_LIB_BINARY_DIR}/gpu ${CUDA_INCLUDE_DIRS})
target_compile_definitions(gpu PRIVATE -D_${GPU_PREC_SETTING} -DMPI_GERYON -DUCL_NO_EXIT ${GPU_CUDA_MPS_FLAGS})
if(CUDPP_OPT)
target_include_directories(gpu PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/gpu/cudpp_mini)
target_compile_definitions(gpu PRIVATE -DUSE_CUDPP)
endif()
target_link_libraries(lammps PRIVATE gpu)
add_executable(nvc_get_devices ${LAMMPS_LIB_SOURCE_DIR}/gpu/geryon/ucl_get_devices.cpp)
target_compile_definitions(nvc_get_devices PRIVATE -DUCL_CUDADR)
target_link_libraries(nvc_get_devices PRIVATE ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
target_include_directories(nvc_get_devices PRIVATE ${CUDA_INCLUDE_DIRS})
elseif(GPU_API STREQUAL "OPENCL")
if(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
# download and unpack support binaries for compilation of windows binaries.
set(LAMMPS_THIRDPARTY_URL "https://download.lammps.org/thirdparty")
file(DOWNLOAD "${LAMMPS_THIRDPARTY_URL}/opencl-win-devel.tar.gz" "${CMAKE_CURRENT_BINARY_DIR}/opencl-win-devel.tar.gz"
EXPECTED_MD5 2c00364888d5671195598b44c2e0d44d)
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf opencl-win-devel.tar.gz WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
add_library(OpenCL::OpenCL UNKNOWN IMPORTED)
if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "x86")
set_target_properties(OpenCL::OpenCL PROPERTIES IMPORTED_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/OpenCL/lib_win32/libOpenCL.dll")
elseif(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "x86_64")
set_target_properties(OpenCL::OpenCL PROPERTIES IMPORTED_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/OpenCL/lib_win64/libOpenCL.dll")
endif()
set_target_properties(OpenCL::OpenCL PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/OpenCL/include")
else()
find_package(OpenCL REQUIRED)
endif()
set(OCL_TUNE "generic" CACHE STRING "OpenCL Device Tuning")
set(OCL_TUNE_VALUES intel fermi kepler cypress generic)
set_property(CACHE OCL_TUNE PROPERTY STRINGS ${OCL_TUNE_VALUES})
validate_option(OCL_TUNE OCL_TUNE_VALUES)
string(TOUPPER ${OCL_TUNE} OCL_TUNE)
include(OpenCLUtils)
set(OCL_COMMON_HEADERS ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_preprocessor.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_aux_fun1.h)
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/[^.]*.cu)
list(REMOVE_ITEM GPU_LIB_CU
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne_lj.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_re_squared.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_re_squared_lj.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_zbl.cu
${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_mod.cu
)
foreach(GPU_KERNEL ${GPU_LIB_CU})
get_filename_component(basename ${GPU_KERNEL} NAME_WE)
string(SUBSTRING ${basename} 4 -1 KERNEL_NAME)
GenerateOpenCLHeader(${KERNEL_NAME} ${CMAKE_CURRENT_BINARY_DIR}/gpu/${KERNEL_NAME}_cl.h ${OCL_COMMON_HEADERS} ${GPU_KERNEL})
list(APPEND GPU_LIB_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/gpu/${KERNEL_NAME}_cl.h)
endforeach()
GenerateOpenCLHeader(gayberne ${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne.cu)
GenerateOpenCLHeader(gayberne_lj ${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_lj_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_gayberne_lj.cu)
GenerateOpenCLHeader(re_squared ${CMAKE_CURRENT_BINARY_DIR}/gpu/re_squared_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_re_squared.cu)
GenerateOpenCLHeader(re_squared_lj ${CMAKE_CURRENT_BINARY_DIR}/gpu/re_squared_lj_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_ellipsoid_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_re_squared_lj.cu)
GenerateOpenCLHeader(tersoff ${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff.cu)
GenerateOpenCLHeader(tersoff_zbl ${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_zbl_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_zbl_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_zbl.cu)
GenerateOpenCLHeader(tersoff_mod ${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_mod_cl.h ${OCL_COMMON_HEADERS} ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_mod_extra.h ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_tersoff_mod.cu)
list(APPEND GPU_LIB_SOURCES
${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/gayberne_lj_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/re_squared_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/re_squared_lj_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_zbl_cl.h
${CMAKE_CURRENT_BINARY_DIR}/gpu/tersoff_mod_cl.h
)
add_library(gpu STATIC ${GPU_LIB_SOURCES})
target_link_libraries(gpu PRIVATE OpenCL::OpenCL)
target_include_directories(gpu PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/gpu)
target_compile_definitions(gpu PRIVATE -D_${GPU_PREC_SETTING} -D${OCL_TUNE}_OCL -DMPI_GERYON -DUCL_NO_EXIT)
target_compile_definitions(gpu PRIVATE -DUSE_OPENCL)
target_link_libraries(lammps PRIVATE gpu)
add_executable(ocl_get_devices ${LAMMPS_LIB_SOURCE_DIR}/gpu/geryon/ucl_get_devices.cpp)
target_compile_definitions(ocl_get_devices PRIVATE -DUCL_OPENCL)
target_link_libraries(ocl_get_devices PRIVATE OpenCL::OpenCL)
elseif(GPU_API STREQUAL "HIP")
if(NOT DEFINED HIP_PATH)
if(NOT DEFINED ENV{HIP_PATH})
set(HIP_PATH "/opt/rocm/hip" CACHE PATH "Path to which HIP has been installed")
else()
set(HIP_PATH $ENV{HIP_PATH} CACHE PATH "Path to which HIP has been installed")
endif()
endif()
set(CMAKE_MODULE_PATH "${HIP_PATH}/cmake" ${CMAKE_MODULE_PATH})
find_package(HIP REQUIRED)
option(HIP_USE_DEVICE_SORT "Use GPU sorting" ON)
if(NOT DEFINED HIP_PLATFORM)
if(NOT DEFINED ENV{HIP_PLATFORM})
set(HIP_PLATFORM "hcc" CACHE PATH "HIP Platform to be used during compilation")
else()
set(HIP_PLATFORM $ENV{HIP_PLATFORM} CACHE PATH "HIP Platform used during compilation")
endif()
endif()
set(ENV{HIP_PLATFORM} ${HIP_PLATFORM})
if(HIP_PLATFORM STREQUAL "hcc")
set(HIP_ARCH "gfx906" CACHE STRING "HIP target architecture")
elseif(HIP_PLATFORM STREQUAL "nvcc")
find_package(CUDA REQUIRED)
set(HIP_ARCH "sm_50" CACHE STRING "HIP primary CUDA architecture (e.g. sm_60)")
# build arch/gencode commands for nvcc based on CUDA toolkit version and use choice
# --arch translates directly instead of JIT, so this should be for the preferred or most common architecture
set(HIP_CUDA_GENCODE "-arch=${HIP_ARCH}")
# Fermi (GPU Arch 2.x) is supported by CUDA 3.2 to CUDA 8.0
if((CUDA_VERSION VERSION_GREATER_EQUAL "3.2") AND (CUDA_VERSION VERSION_LESS "9.0"))
string(APPEND HIP_CUDA_GENCODE " -gencode arch=compute_20,code=[sm_20,compute_20]")
endif()
# Kepler (GPU Arch 3.0) is supported by CUDA 5 to CUDA 10.2
if((CUDA_VERSION VERSION_GREATER_EQUAL "5.0") AND (CUDA_VERSION VERSION_LESS "11.0"))
string(APPEND HIP_CUDA_GENCODE " -gencode arch=compute_30,code=[sm_30,compute_30]")
endif()
# Kepler (GPU Arch 3.5) is supported by CUDA 5 to CUDA 11.0
if((CUDA_VERSION VERSION_GREATER_EQUAL "5.0") AND (CUDA_VERSION VERSION_LESS "12.0"))
string(APPEND HIP_CUDA_GENCODE " -gencode arch=compute_35,code=[sm_35,compute_35]")
endif()
# Maxwell (GPU Arch 5.x) is supported by CUDA 6 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "6.0")
string(APPEND HIP_CUDA_GENCODE " -gencode arch=compute_50,code=[sm_50,compute_50] -gencode arch=compute_52,code=[sm_52,compute_52]")
endif()
# Pascal (GPU Arch 6.x) is supported by CUDA 8 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "8.0")
string(APPEND HIP_CUDA_GENCODE " -gencode arch=compute_60,code=[sm_60,compute_60] -gencode arch=compute_61,code=[sm_61,compute_61]")
endif()
# Volta (GPU Arch 7.0) is supported by CUDA 9 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "9.0")
string(APPEND HIP_CUDA_GENCODE " -gencode arch=compute_70,code=[sm_70,compute_70]")
endif()
# Turing (GPU Arch 7.5) is supported by CUDA 10 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "10.0")
string(APPEND HIP_CUDA_GENCODE " -gencode arch=compute_75,code=[sm_75,compute_75]")
endif()
# Ampere (GPU Arch 8.0) is supported by CUDA 11 and later
if(CUDA_VERSION VERSION_GREATER_EQUAL "11.0")
string(APPEND HIP_CUDA_GENCODE " -gencode arch=compute_80,code=[sm_80,compute_80]")
endif()
if(CUDA_VERSION VERSION_GREATER_EQUAL "12.0")
message(WARNING "Unsupported CUDA version. Use at your own risk.")
endif()
endif()
file(GLOB GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/[^.]*.cu ${CMAKE_CURRENT_SOURCE_DIR}/gpu/[^.]*.cu)
list(REMOVE_ITEM GPU_LIB_CU ${LAMMPS_LIB_SOURCE_DIR}/gpu/lal_pppm.cu)
set(GPU_LIB_CU_HIP "")
foreach(CU_FILE ${GPU_LIB_CU})
get_filename_component(CU_NAME ${CU_FILE} NAME_WE)
string(REGEX REPLACE "^.*lal_" "" CU_NAME "${CU_NAME}")
set(CU_CPP_FILE "${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}.cu.cpp")
set(CUBIN_FILE "${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}.cubin")
set(CUBIN_H_FILE "${LAMMPS_LIB_BINARY_DIR}/gpu/${CU_NAME}_cubin.h")
if(HIP_PLATFORM STREQUAL "hcc")
configure_file(${CU_FILE} ${CU_CPP_FILE} COPYONLY)
if(HIP_COMPILER STREQUAL "clang")
add_custom_command(OUTPUT ${CUBIN_FILE}
VERBATIM COMMAND ${HIP_HIPCC_EXECUTABLE} --genco --offload-arch=${HIP_ARCH} -O3 -ffast-math -DUSE_HIP -D_${GPU_PREC_SETTING} -I${LAMMPS_LIB_SOURCE_DIR}/gpu -o ${CUBIN_FILE} ${CU_CPP_FILE}
DEPENDS ${CU_CPP_FILE}
COMMENT "Generating ${CU_NAME}.cubin")
else()
add_custom_command(OUTPUT ${CUBIN_FILE}
VERBATIM COMMAND ${HIP_HIPCC_EXECUTABLE} --genco -t="${HIP_ARCH}" -f=\"-O3 -ffast-math -DUSE_HIP -D_${GPU_PREC_SETTING} -I${LAMMPS_LIB_SOURCE_DIR}/gpu\" -o ${CUBIN_FILE} ${CU_CPP_FILE}
DEPENDS ${CU_CPP_FILE}
COMMENT "Generating ${CU_NAME}.cubin")
endif()
elseif(HIP_PLATFORM STREQUAL "nvcc")
add_custom_command(OUTPUT ${CUBIN_FILE}
VERBATIM COMMAND ${HIP_HIPCC_EXECUTABLE} --fatbin --use_fast_math -DUSE_HIP -D_${GPU_PREC_SETTING} ${HIP_CUDA_GENCODE} -I${LAMMPS_LIB_SOURCE_DIR}/gpu -o ${CUBIN_FILE} ${CU_FILE}
DEPENDS ${CU_FILE}
COMMENT "Generating ${CU_NAME}.cubin")
endif()
add_custom_command(OUTPUT ${CUBIN_H_FILE}
COMMAND ${CMAKE_COMMAND} -D SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR} -D VARNAME=${CU_NAME} -D HEADER_FILE=${CUBIN_H_FILE} -D SOURCE_FILE=${CUBIN_FILE} -P ${CMAKE_CURRENT_SOURCE_DIR}/Modules/GenerateBinaryHeader.cmake
DEPENDS ${CUBIN_FILE}
COMMENT "Generating ${CU_NAME}_cubin.h")
list(APPEND GPU_LIB_SOURCES ${CUBIN_H_FILE})
endforeach()
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${LAMMPS_LIB_BINARY_DIR}/gpu/*_cubin.h ${LAMMPS_LIB_BINARY_DIR}/gpu/*.cu.cpp")
hip_add_library(gpu STATIC ${GPU_LIB_SOURCES})
target_include_directories(gpu PRIVATE ${LAMMPS_LIB_BINARY_DIR}/gpu)
target_compile_definitions(gpu PRIVATE -D_${GPU_PREC_SETTING} -DMPI_GERYON -DUCL_NO_EXIT)
target_compile_definitions(gpu PRIVATE -DUSE_HIP)
if(HIP_USE_DEVICE_SORT)
# add hipCUB
target_include_directories(gpu PRIVATE ${HIP_ROOT_DIR}/../include)
target_compile_definitions(gpu PRIVATE -DUSE_HIP_DEVICE_SORT)
if(HIP_PLATFORM STREQUAL "nvcc")
find_package(CUB)
if(CUB_FOUND)
set(DOWNLOAD_CUB_DEFAULT OFF)
else()
set(DOWNLOAD_CUB_DEFAULT ON)
endif()
option(DOWNLOAD_CUB "Download and compile the CUB library instead of using an already installed one" ${DOWNLOAD_CUB_DEFAULT})
if(DOWNLOAD_CUB)
message(STATUS "CUB download requested")
include(ExternalProject)
ExternalProject_Add(CUB
GIT_REPOSITORY https://github.com/NVlabs/cub
TIMEOUT 5
PREFIX "${CMAKE_CURRENT_BINARY_DIR}"
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
UPDATE_COMMAND ""
)
ExternalProject_get_property(CUB SOURCE_DIR)
set(CUB_INCLUDE_DIR ${SOURCE_DIR})
else()
find_package(CUB)
if(NOT CUB_FOUND)
message(FATAL_ERROR "CUB library not found. Help CMake to find it by setting CUB_INCLUDE_DIR, or set DOWNLOAD_VORO=ON to download it")
endif()
endif()
target_include_directories(gpu PRIVATE ${CUB_INCLUDE_DIR})
endif()
endif()
hip_add_executable(hip_get_devices ${LAMMPS_LIB_SOURCE_DIR}/gpu/geryon/ucl_get_devices.cpp)
target_compile_definitions(hip_get_devices PRIVATE -DUCL_HIP)
if(HIP_PLATFORM STREQUAL "nvcc")
target_compile_definitions(gpu PRIVATE -D__HIP_PLATFORM_NVCC__)
target_include_directories(gpu PRIVATE ${HIP_ROOT_DIR}/../include)
target_include_directories(gpu PRIVATE ${CUDA_INCLUDE_DIRS})
target_link_libraries(gpu PRIVATE ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
target_compile_definitions(hip_get_devices PRIVATE -D__HIP_PLATFORM_NVCC__)
target_include_directories(hip_get_devices PRIVATE ${HIP_ROOT_DIR}/include)
target_include_directories(hip_get_devices PRIVATE ${CUDA_INCLUDE_DIRS})
target_link_libraries(hip_get_devices PRIVATE ${CUDA_LIBRARIES} ${CUDA_CUDA_LIBRARY})
elseif(HIP_PLATFORM STREQUAL "hcc")
target_compile_definitions(gpu PRIVATE -D__HIP_PLATFORM_HCC__)
target_include_directories(gpu PRIVATE ${HIP_ROOT_DIR}/../include)
target_compile_definitions(hip_get_devices PRIVATE -D__HIP_PLATFORM_HCC__)
target_include_directories(hip_get_devices PRIVATE ${HIP_ROOT_DIR}/../include)
endif()
target_link_libraries(lammps PRIVATE gpu)
endif()
# GPU package
FindStyleHeaders(${GPU_SOURCES_DIR} FIX_CLASS fix_ FIX)
set_property(GLOBAL PROPERTY "GPU_SOURCES" "${GPU_SOURCES}")
# detects styles which have GPU version
RegisterStylesExt(${GPU_SOURCES_DIR} gpu GPU_SOURCES)
get_property(GPU_SOURCES GLOBAL PROPERTY GPU_SOURCES)
if(NOT BUILD_MPI)
# mpistubs is aliased to MPI::MPI_CXX, but older versions of cmake won't work forward the include path
target_link_libraries(gpu PRIVATE mpi_stubs)
else()
target_link_libraries(gpu PRIVATE MPI::MPI_CXX)
endif()
target_compile_definitions(gpu PRIVATE -DLAMMPS_${LAMMPS_SIZES})
set_target_properties(gpu PROPERTIES OUTPUT_NAME lammps_gpu${LAMMPS_MACHINE})
target_sources(lammps PRIVATE ${GPU_SOURCES})
target_include_directories(lammps PRIVATE ${GPU_SOURCES_DIR})

View File

@ -1,67 +1,63 @@
if(PKG_KIM) set(KIM-API_MIN_VERSION 2.1.3)
set(KIM-API_MIN_VERSION 2.1) find_package(CURL)
find_package(CURL) if(CURL_FOUND)
if(CURL_FOUND) if(CMAKE_VERSION VERSION_LESS 3.12)
include_directories(${CURL_INCLUDE_DIRS}) target_include_directories(lammps PRIVATE ${CURL_INCLUDE_DIRS})
list(APPEND LAMMPS_LINK_LIBS ${CURL_LIBRARIES}) target_link_libraries(lammps PRIVATE ${CURL_LIBRARIES})
add_definitions(-DLMP_KIM_CURL)
set(LMP_DEBUG_CURL OFF CACHE STRING "Set libcurl verbose mode on/off. If on, it displays a lot of verbose information about its operations.")
mark_as_advanced(LMP_DEBUG_CURL)
if(LMP_DEBUG_CURL)
add_definitions(-DLMP_DEBUG_CURL)
endif()
set(LMP_NO_SSL_CHECK OFF CACHE STRING "Tell libcurl to not verify the peer. If on, the connection succeeds regardless of the names in the certificate. Insecure - Use with caution!")
mark_as_advanced(LMP_NO_SSL_CHECK)
if(LMP_NO_SSL_CHECK)
add_definitions(-DLMP_NO_SSL_CHECK)
endif()
endif()
find_package(KIM-API QUIET)
if(KIM-API_FOUND)
if (KIM-API_VERSION VERSION_LESS ${KIM-API_MIN_VERSION})
if ("${DOWNLOAD_KIM}" STREQUAL "")
message(WARNING "Unsuitable KIM-API version \"${KIM-API_VERSION}\" found, but required is at least \"${KIM-API_MIN_VERSION}\". Default behavior set to download and build our own.")
endif()
set(DOWNLOAD_KIM_DEFAULT ON)
else()
set(DOWNLOAD_KIM_DEFAULT OFF)
endif()
else() else()
if ("${DOWNLOAD_KIM}" STREQUAL "") target_link_libraries(lammps PRIVATE CURL::libcurl)
message(WARNING "KIM-API package not found. Default behavior set to download and build our own")
endif()
set(DOWNLOAD_KIM_DEFAULT ON)
endif() endif()
option(DOWNLOAD_KIM "Download KIM-API from OpenKIM instead of using an already installed one" ${DOWNLOAD_KIM_DEFAULT}) target_compile_definitions(lammps PRIVATE -DLMP_KIM_CURL)
if(DOWNLOAD_KIM) set(LMP_DEBUG_CURL OFF CACHE STRING "Set libcurl verbose mode on/off. If on, it displays a lot of verbose information about its operations.")
if(CMAKE_GENERATOR STREQUAL "Ninja") mark_as_advanced(LMP_DEBUG_CURL)
message(FATAL_ERROR "Cannot build downloaded KIM-API library with Ninja build tool") if(LMP_DEBUG_CURL)
endif() target_compile_definitions(lammps PRIVATE -DLMP_DEBUG_CURL)
message(STATUS "KIM-API download requested - we will build our own") endif()
include(CheckLanguage) set(LMP_NO_SSL_CHECK OFF CACHE STRING "Tell libcurl to not verify the peer. If on, the connection succeeds regardless of the names in the certificate. Insecure - Use with caution!")
include(ExternalProject) mark_as_advanced(LMP_NO_SSL_CHECK)
enable_language(C) if(LMP_NO_SSL_CHECK)
check_language(Fortran) target_compile_definitions(lammps PRIVATE -DLMP_NO_SSL_CHECK)
if(NOT CMAKE_Fortran_COMPILER)
message(FATAL_ERROR "Compiling the KIM-API library requires a Fortran compiler")
endif()
ExternalProject_Add(kim_build
URL https://s3.openkim.org/kim-api/kim-api-2.1.3.txz
URL_MD5 6ee829a1bbba5f8b9874c88c4c4ebff8
BINARY_DIR build
CMAKE_ARGS -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER}
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
)
ExternalProject_get_property(kim_build INSTALL_DIR)
set(KIM-API_INCLUDE_DIRS ${INSTALL_DIR}/include/kim-api)
set(KIM-API_LDFLAGS ${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libkim-api${CMAKE_SHARED_LIBRARY_SUFFIX})
list(APPEND LAMMPS_DEPS kim_build)
else()
find_package(KIM-API ${KIM-API_MIN_VERSION} REQUIRED)
endif() endif()
list(APPEND LAMMPS_LINK_LIBS "${KIM-API_LDFLAGS}") endif()
include_directories(${KIM-API_INCLUDE_DIRS}) find_package(PkgConfig QUIET)
set(DOWNLOAD_KIM_DEFAULT ON)
if(PKG_CONFIG_FOUND)
pkg_check_modules(KIM-API QUIET libkim-api>=${KIM-API_MIN_VERSION})
if(KIM-API_FOUND)
set(DOWNLOAD_KIM_DEFAULT OFF)
endif()
endif()
option(DOWNLOAD_KIM "Download KIM-API from OpenKIM instead of using an already installed one" ${DOWNLOAD_KIM_DEFAULT})
if(DOWNLOAD_KIM)
message(STATUS "KIM-API download requested - we will build our own")
include(ExternalProject)
enable_language(C)
enable_language(Fortran)
ExternalProject_Add(kim_build
URL https://s3.openkim.org/kim-api/kim-api-2.1.3.txz
URL_MD5 6ee829a1bbba5f8b9874c88c4c4ebff8
BINARY_DIR build
CMAKE_ARGS ${CMAKE_REQUEST_PIC}
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER}
-DCMAKE_INSTALL_LIBDIR=lib
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
BUILD_BYPRODUCTS <INSTALL_DIR>/lib/libkim-api${CMAKE_SHARED_LIBRARY_SUFFIX}
)
ExternalProject_get_property(kim_build INSTALL_DIR)
file(MAKE_DIRECTORY ${INSTALL_DIR}/include/kim-api)
add_library(LAMMPS::KIM UNKNOWN IMPORTED)
set_target_properties(LAMMPS::KIM PROPERTIES
IMPORTED_LOCATION "${INSTALL_DIR}/lib/libkim-api${CMAKE_SHARED_LIBRARY_SUFFIX}"
INTERFACE_INCLUDE_DIRECTORIES "${INSTALL_DIR}/include/kim-api")
target_link_libraries(lammps PRIVATE LAMMPS::KIM)
add_dependencies(LAMMPS::KIM kim_build)
else()
find_package(PkgConfig REQUIRED)
pkg_check_modules(KIM-API REQUIRED IMPORTED_TARGET libkim-api>=${KIM-API_MIN_VERSION})
target_link_libraries(lammps PRIVATE PkgConfig::KIM-API)
endif() endif()

View File

@ -1,74 +1,119 @@
if(PKG_KOKKOS) ########################################################################
# TODO: this option needs to be documented when this works with a # consistency checks and Kokkos options/settings required by LAMMPS
# regular release version of KOKKOS, and a version compatibility check if(Kokkos_ENABLE_CUDA)
# of external KOKKOS lib versus what the KOKKOS package needs is required. message(STATUS "KOKKOS: Enabling CUDA LAMBDA function support")
option(EXTERNAL_KOKKOS "Build against external kokkos library") set(Kokkos_ENABLE_CUDA_LAMBDA ON CACHE BOOL "" FORCE)
if(EXTERNAL_KOKKOS) endif()
find_package(Kokkos REQUIRED) # Adding OpenMP compiler flags without the checks done for
list(APPEND LAMMPS_LINK_LIBS Kokkos::kokkos) # BUILD_OMP can result in compile failures. Enforce consistency.
else() if(Kokkos_ENABLE_OPENMP AND NOT BUILD_OMP)
set(LAMMPS_LIB_KOKKOS_SRC_DIR ${LAMMPS_LIB_SOURCE_DIR}/kokkos) message(FATAL_ERROR "Must enable BUILD_OMP with Kokkos_ENABLE_OPENMP")
set(LAMMPS_LIB_KOKKOS_BIN_DIR ${LAMMPS_LIB_BINARY_DIR}/kokkos) endif()
add_subdirectory(${LAMMPS_LIB_KOKKOS_SRC_DIR} ${LAMMPS_LIB_KOKKOS_BIN_DIR}) ########################################################################
set(Kokkos_INCLUDE_DIRS ${LAMMPS_LIB_KOKKOS_SRC_DIR}/core/src option(EXTERNAL_KOKKOS "Build against external kokkos library" OFF)
${LAMMPS_LIB_KOKKOS_SRC_DIR}/containers/src option(DOWNLOAD_KOKKOS "Download the KOKKOS library instead of using the bundled one" OFF)
${LAMMPS_LIB_KOKKOS_SRC_DIR}/algorithms/src if(DOWNLOAD_KOKKOS)
${LAMMPS_LIB_KOKKOS_BIN_DIR}) # extract Kokkos-related variables and values so we can forward them to the Kokkos library build
include_directories(${Kokkos_INCLUDE_DIRS}) get_cmake_property(_VARS VARIABLES)
list(APPEND LAMMPS_LINK_LIBS kokkos) list(FILTER _VARS INCLUDE REGEX ^Kokkos_)
foreach(_VAR IN LISTS _VARS)
list(APPEND KOKKOS_LIB_BUILD_ARGS "-D${_VAR}=${${_VAR}}")
endforeach()
message(STATUS "KOKKOS download requested - we will build our own")
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>")
if(CMAKE_REQUEST_PIC)
list(APPEND KOKKOS_LIB_BUILD_ARGS ${CMAKE_REQUEST_PIC})
endif() endif()
add_definitions(-DLMP_KOKKOS) # append other CMake variables that need to be forwarded to CMAKE_ARGS
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}")
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_INSTALL_LIBDIR=lib")
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}")
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}")
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD}")
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)
ExternalProject_Add(kokkos_build
URL https://github.com/kokkos/kokkos/archive/3.2.00.tar.gz
URL_MD5 81569170fe232e5e64ab074f7cca5e50
CMAKE_ARGS ${KOKKOS_LIB_BUILD_ARGS}
BUILD_BYPRODUCTS <INSTALL_DIR>/lib/libkokkoscore.a
)
ExternalProject_get_property(kokkos_build INSTALL_DIR)
file(MAKE_DIRECTORY ${INSTALL_DIR}/include)
add_library(LAMMPS::KOKKOS UNKNOWN IMPORTED)
set_target_properties(LAMMPS::KOKKOS PROPERTIES
IMPORTED_LOCATION "${INSTALL_DIR}/lib/libkokkoscore.a"
INTERFACE_INCLUDE_DIRECTORIES "${INSTALL_DIR}/include"
INTERFACE_LINK_LIBRARIES ${CMAKE_DL_LIBS})
target_link_libraries(lammps PRIVATE LAMMPS::KOKKOS)
add_dependencies(LAMMPS::KOKKOS kokkos_build)
elseif(EXTERNAL_KOKKOS)
find_package(Kokkos 3.2.00 REQUIRED CONFIG)
target_link_libraries(lammps PRIVATE Kokkos::kokkos)
else()
set(LAMMPS_LIB_KOKKOS_SRC_DIR ${LAMMPS_LIB_SOURCE_DIR}/kokkos)
set(LAMMPS_LIB_KOKKOS_BIN_DIR ${LAMMPS_LIB_BINARY_DIR}/kokkos)
add_subdirectory(${LAMMPS_LIB_KOKKOS_SRC_DIR} ${LAMMPS_LIB_KOKKOS_BIN_DIR})
set(KOKKOS_PKG_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/KOKKOS) set(Kokkos_INCLUDE_DIRS ${LAMMPS_LIB_KOKKOS_SRC_DIR}/core/src
set(KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/kokkos.cpp ${LAMMPS_LIB_KOKKOS_SRC_DIR}/containers/src
${KOKKOS_PKG_SOURCES_DIR}/atom_kokkos.cpp ${LAMMPS_LIB_KOKKOS_SRC_DIR}/algorithms/src
${KOKKOS_PKG_SOURCES_DIR}/atom_vec_kokkos.cpp ${LAMMPS_LIB_KOKKOS_BIN_DIR})
${KOKKOS_PKG_SOURCES_DIR}/comm_kokkos.cpp target_include_directories(lammps PRIVATE ${Kokkos_INCLUDE_DIRS})
${KOKKOS_PKG_SOURCES_DIR}/comm_tiled_kokkos.cpp target_link_libraries(lammps PRIVATE kokkos)
${KOKKOS_PKG_SOURCES_DIR}/min_kokkos.cpp endif()
${KOKKOS_PKG_SOURCES_DIR}/min_linesearch_kokkos.cpp target_compile_definitions(lammps PRIVATE -DLMP_KOKKOS)
${KOKKOS_PKG_SOURCES_DIR}/neighbor_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/neigh_list_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/neigh_bond_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/fix_nh_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/nbin_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/npair_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/npair_halffull_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/domain_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/modify_kokkos.cpp)
if(PKG_KSPACE) set(KOKKOS_PKG_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/KOKKOS)
list(APPEND KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/fft3d_kokkos.cpp set(KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/gridcomm_kokkos.cpp ${KOKKOS_PKG_SOURCES_DIR}/atom_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/remap_kokkos.cpp) ${KOKKOS_PKG_SOURCES_DIR}/atom_vec_kokkos.cpp
if(KOKKOS_ENABLE_CUDA) ${KOKKOS_PKG_SOURCES_DIR}/comm_kokkos.cpp
if(NOT ${FFT} STREQUAL "KISS") ${KOKKOS_PKG_SOURCES_DIR}/comm_tiled_kokkos.cpp
add_definitions(-DFFT_CUFFT) ${KOKKOS_PKG_SOURCES_DIR}/min_kokkos.cpp
list(APPEND LAMMPS_LINK_LIBS cufft) ${KOKKOS_PKG_SOURCES_DIR}/min_linesearch_kokkos.cpp
endif() ${KOKKOS_PKG_SOURCES_DIR}/neighbor_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/neigh_list_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/neigh_bond_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/fix_nh_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/nbin_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/npair_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/npair_halffull_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/domain_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/modify_kokkos.cpp)
if(PKG_KSPACE)
list(APPEND KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/fft3d_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/gridcomm_kokkos.cpp
${KOKKOS_PKG_SOURCES_DIR}/remap_kokkos.cpp)
if(Kokkos_ENABLE_CUDA)
if(NOT ${FFT} STREQUAL "KISS")
target_compile_definitions(lammps PRIVATE -DFFT_CUFFT)
target_link_libraries(lammps PRIVATE cufft)
endif() endif()
endif() endif()
set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}")
# detects styles which have KOKKOS version
RegisterStylesExt(${KOKKOS_PKG_SOURCES_DIR} kokkos KOKKOS_PKG_SOURCES)
# register kokkos-only styles
RegisterNBinStyle(${KOKKOS_PKG_SOURCES_DIR}/nbin_kokkos.h)
RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_kokkos.h)
RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_halffull_kokkos.h)
if(PKG_USER-DPD)
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
list(APPEND KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/npair_ssa_kokkos.cpp)
RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_ssa_kokkos.h)
set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}")
endif()
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
list(APPEND LIB_SOURCES ${KOKKOS_PKG_SOURCES})
include_directories(${KOKKOS_PKG_SOURCES_DIR})
endif() endif()
set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}")
# detects styles which have KOKKOS version
RegisterStylesExt(${KOKKOS_PKG_SOURCES_DIR} kokkos KOKKOS_PKG_SOURCES)
# register kokkos-only styles
RegisterNBinStyle(${KOKKOS_PKG_SOURCES_DIR}/nbin_kokkos.h)
RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_kokkos.h)
RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_halffull_kokkos.h)
if(PKG_USER-DPD)
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
list(APPEND KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/npair_ssa_kokkos.cpp)
RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_ssa_kokkos.h)
set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}")
endif()
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
target_sources(lammps PRIVATE ${KOKKOS_PKG_SOURCES})
target_include_directories(lammps PRIVATE ${KOKKOS_PKG_SOURCES_DIR})

View File

@ -1,60 +1,56 @@
if(PKG_KSPACE) option(FFT_SINGLE "Use single precision FFTs instead of double precision FFTs" OFF)
option(FFT_SINGLE "Use single precision FFTs instead of double precision FFTs" OFF) set(FFTW "FFTW3")
set(FFTW "FFTW3") if(FFT_SINGLE)
if(FFT_SINGLE) set(FFTW "FFTW3F")
set(FFTW "FFTW3F") target_compile_definitions(lammps PRIVATE -DFFT_SINGLE)
add_definitions(-DFFT_SINGLE) endif()
endif() find_package(${FFTW} QUIET)
find_package(${FFTW} QUIET) if(${FFTW}_FOUND)
if(${FFTW}_FOUND) set(FFT "FFTW3" CACHE STRING "FFT library for KSPACE package")
set(FFT "FFTW3" CACHE STRING "FFT library for KSPACE package") else()
else() set(FFT "KISS" CACHE STRING "FFT library for KSPACE package")
set(FFT "KISS" CACHE STRING "FFT library for KSPACE package") endif()
endif() set(FFT_VALUES KISS FFTW3 MKL)
set(FFT_VALUES KISS FFTW3 MKL) set_property(CACHE FFT PROPERTY STRINGS ${FFT_VALUES})
set_property(CACHE FFT PROPERTY STRINGS ${FFT_VALUES}) validate_option(FFT FFT_VALUES)
validate_option(FFT FFT_VALUES) string(TOUPPER ${FFT} FFT)
string(TOUPPER ${FFT} FFT)
if(FFT STREQUAL "FFTW3")
if(FFT STREQUAL "FFTW3") find_package(${FFTW} REQUIRED)
find_package(${FFTW} REQUIRED) target_compile_definitions(lammps PRIVATE -DFFT_FFTW3)
add_definitions(-DFFT_FFTW3) target_link_libraries(lammps PRIVATE ${FFTW}::${FFTW})
include_directories(${${FFTW}_INCLUDE_DIRS}) if(FFTW3_OMP_LIBRARIES OR FFTW3F_OMP_LIBRARIES)
list(APPEND LAMMPS_LINK_LIBS ${${FFTW}_LIBRARIES}) option(FFT_FFTW_THREADS "Use threaded FFTW library" ON)
if(FFTW3_OMP_LIBRARY OR FFTW3F_OMP_LIBRARY) else()
option(FFT_FFTW_THREADS "Use threaded FFTW library" ON) option(FFT_FFTW_THREADS "Use threaded FFT library" OFF)
else() endif()
option(FFT_FFTW_THREADS "Use threaded FFT library" OFF)
endif() if(FFT_FFTW_THREADS)
if(FFTW3_OMP_LIBRARIES OR FFTW3F_OMP_LIBRARIES)
if(FFT_FFTW_THREADS) target_compile_definitions(lammps PRIVATE -DFFT_FFTW_THREADS)
if(FFTW3_OMP_LIBRARY OR FFTW3F_OMP_LIBRARY) target_link_libraries(lammps PRIVATE ${FFTW}::${FFTW}_OMP)
add_definitions(-DFFT_FFTW_THREADS) else()
list(APPEND LAMMPS_LINK_LIBS ${${FFTW}_OMP_LIBRARIES}) message(FATAL_ERROR "Need OpenMP enabled FFTW3 library for FFT_THREADS")
else() endif()
message(FATAL_ERROR "Need OpenMP enabled FFTW3 library for FFT_THREADS") endif()
endif() elseif(FFT STREQUAL "MKL")
endif() find_package(MKL REQUIRED)
elseif(FFT STREQUAL "MKL") target_compile_definitions(lammps PRIVATE -DFFT_MKL)
find_package(MKL REQUIRED) option(FFT_MKL_THREADS "Use threaded MKL FFT" ON)
add_definitions(-DFFT_MKL) if(FFT_MKL_THREADS)
option(FFT_MKL_THREADS "Use threaded MKL FFT" ON) target_compile_definitions(lammps PRIVATE -DFFT_MKL_THREADS)
if(FFT_MKL_THREADS) endif()
add_definitions(-DFFT_MKL_THREADS) target_link_libraries(lammps PRIVATE MKL::MKL)
endif() else()
include_directories(${MKL_INCLUDE_DIRS}) # last option is KISSFFT
list(APPEND LAMMPS_LINK_LIBS ${MKL_LIBRARIES}) target_compile_definitions(lammps PRIVATE -DFFT_KISS)
else() endif()
# last option is KISSFFT
add_definitions(-DFFT_KISS) set(FFT_PACK "array" CACHE STRING "Optimization for FFT")
endif() set(FFT_PACK_VALUES array pointer memcpy)
set_property(CACHE FFT_PACK PROPERTY STRINGS ${FFT_PACK_VALUES})
set(FFT_PACK "array" CACHE STRING "Optimization for FFT") validate_option(FFT_PACK FFT_PACK_VALUES)
set(FFT_PACK_VALUES array pointer memcpy) if(NOT FFT_PACK STREQUAL "array")
set_property(CACHE FFT_PACK PROPERTY STRINGS ${FFT_PACK_VALUES}) string(TOUPPER ${FFT_PACK} FFT_PACK)
validate_option(FFT_PACK FFT_PACK_VALUES) target_compile_definitions(lammps PRIVATE -DFFT_PACK_${FFT_PACK})
if(NOT FFT_PACK STREQUAL "array")
string(TOUPPER ${FFT_PACK} FFT_PACK)
add_definitions(-DFFT_PACK_${FFT_PACK})
endif()
endif() endif()

View File

@ -1,38 +1,40 @@
if(PKG_LATTE) enable_language(Fortran)
enable_language(Fortran)
find_package(LATTE) # using lammps in a super-build setting
if(LATTE_FOUND) if(TARGET LATTE::latte)
set(DOWNLOAD_LATTE_DEFAULT OFF) target_link_libraries(lammps PRIVATE LATTE::latte)
else() return()
set(DOWNLOAD_LATTE_DEFAULT ON) endif()
endif()
option(DOWNLOAD_LATTE "Download the LATTE library instead of using an already installed one" ${DOWNLOAD_LATTE_DEFAULT}) find_package(LATTE 1.2.2 CONFIG)
if(DOWNLOAD_LATTE) if(LATTE_FOUND)
if (CMAKE_VERSION VERSION_LESS "3.7") # due to SOURCE_SUBDIR set(DOWNLOAD_LATTE_DEFAULT OFF)
message(FATAL_ERROR "For downlading LATTE you need at least cmake-3.7") else()
endif() set(DOWNLOAD_LATTE_DEFAULT ON)
if(CMAKE_GENERATOR STREQUAL "Ninja") endif()
message(FATAL_ERROR "Cannot build downloaded LATTE library with Ninja build tool") option(DOWNLOAD_LATTE "Download the LATTE library instead of using an already installed one" ${DOWNLOAD_LATTE_DEFAULT})
endif() if(DOWNLOAD_LATTE)
message(STATUS "LATTE download requested - we will build our own") message(STATUS "LATTE download requested - we will build our own")
include(ExternalProject) include(ExternalProject)
ExternalProject_Add(latte_build ExternalProject_Add(latte_build
URL https://github.com/lanl/LATTE/archive/v1.2.1.tar.gz URL https://github.com/lanl/LATTE/archive/v1.2.2.tar.gz
URL_MD5 85ac414fdada2d04619c8f936344df14 URL_MD5 820e73a457ced178c08c71389a385de7
SOURCE_SUBDIR cmake SOURCE_SUBDIR cmake
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> ${CMAKE_REQUEST_PIC} CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> ${CMAKE_REQUEST_PIC} -DCMAKE_INSTALL_LIBDIR=lib
-DBLAS_LIBRARIES=${BLAS_LIBRARIES} -DLAPACK_LIBRARIES=${LAPACK_LIBRARIES} -DBLAS_LIBRARIES=${BLAS_LIBRARIES} -DLAPACK_LIBRARIES=${LAPACK_LIBRARIES}
-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER} -DCMAKE_Fortran_FLAGS=${CMAKE_Fortran_FLAGS} -DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER} -DCMAKE_Fortran_FLAGS=${CMAKE_Fortran_FLAGS}
-DCMAKE_Fortran_FLAGS_${BTYPE}=${CMAKE_Fortran_FLAGS_${BTYPE}} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_Fortran_FLAGS_${BTYPE}=${CMAKE_Fortran_FLAGS_${BTYPE}} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
) -DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM} -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
ExternalProject_get_property(latte_build INSTALL_DIR) BUILD_BYPRODUCTS <INSTALL_DIR>/lib/liblatte.a
set(LATTE_LIBRARIES ${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/liblatte.a) )
list(APPEND LAMMPS_DEPS latte_build) ExternalProject_get_property(latte_build INSTALL_DIR)
else() add_library(LAMMPS::LATTE UNKNOWN IMPORTED)
find_package(LATTE) set_target_properties(LAMMPS::LATTE PROPERTIES
if(NOT LATTE_FOUND) IMPORTED_LOCATION "${INSTALL_DIR}/lib/liblatte.a"
message(FATAL_ERROR "LATTE library not found, help CMake to find it by setting LATTE_LIBRARY, or set DOWNLOAD_LATTE=ON to download it") INTERFACE_LINK_LIBRARIES "${LAPACK_LIBRARIES}")
endif() target_link_libraries(lammps PRIVATE LAMMPS::LATTE)
endif() add_dependencies(LAMMPS::LATTE latte_build)
list(APPEND LAMMPS_LINK_LIBS ${LATTE_LIBRARIES} ${LAPACK_LIBRARIES}) else()
find_package(LATTE 1.2.2 REQUIRED CONFIG)
target_link_libraries(lammps PRIVATE LATTE::latte)
endif() endif()

View File

@ -1,32 +1,32 @@
if(PKG_MESSAGE) if(LAMMPS_SIZES STREQUAL BIGBIG)
if(LAMMPS_SIZES STREQUAL BIGBIG) message(FATAL_ERROR "The MESSAGE Package is not compatible with -DLAMMPS_BIGBIG")
message(FATAL_ERROR "The MESSAGE Package is not compatible with -DLAMMPS_BIGBIG")
endif()
option(MESSAGE_ZMQ "Use ZeroMQ in MESSAGE package" OFF)
file(GLOB_RECURSE cslib_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/message/cslib/[^.]*.F
${LAMMPS_LIB_SOURCE_DIR}/message/cslib/[^.]*.c
${LAMMPS_LIB_SOURCE_DIR}/message/cslib/[^.]*.cpp)
add_library(cslib STATIC ${cslib_SOURCES})
if(BUILD_MPI)
target_compile_definitions(cslib PRIVATE -DMPI_YES)
set_target_properties(cslib PROPERTIES OUTPUT_NAME "csmpi")
else()
target_compile_definitions(cslib PRIVATE -DMPI_NO)
target_include_directories(cslib PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/message/cslib/src/STUBS_MPI)
set_target_properties(cslib PROPERTIES OUTPUT_NAME "csnompi")
endif()
if(MESSAGE_ZMQ)
target_compile_definitions(cslib PRIVATE -DZMQ_YES)
find_package(ZMQ REQUIRED)
target_include_directories(cslib PRIVATE ${ZMQ_INCLUDE_DIRS})
target_link_libraries(cslib PUBLIC ${ZMQ_LIBRARIES})
else()
target_compile_definitions(cslib PRIVATE -DZMQ_NO)
target_include_directories(cslib PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/message/cslib/src/STUBS_ZMQ)
endif()
list(APPEND LAMMPS_LINK_LIBS cslib)
include_directories(${LAMMPS_LIB_SOURCE_DIR}/message/cslib/src)
endif() endif()
option(MESSAGE_ZMQ "Use ZeroMQ in MESSAGE package" OFF)
file(GLOB_RECURSE cslib_SOURCES ${LAMMPS_LIB_SOURCE_DIR}/message/cslib/[^.]*.F
${LAMMPS_LIB_SOURCE_DIR}/message/cslib/[^.]*.c
${LAMMPS_LIB_SOURCE_DIR}/message/cslib/[^.]*.cpp)
add_library(cslib STATIC ${cslib_SOURCES})
target_compile_definitions(cslib PRIVATE -DLAMMPS_${LAMMPS_SIZES})
set_target_properties(cslib PROPERTIES OUTPUT_NAME lammps_cslib${LAMMPS_MACHINE})
if(BUILD_MPI)
target_compile_definitions(cslib PRIVATE -DMPI_YES)
set_target_properties(cslib PROPERTIES OUTPUT_NAME "csmpi")
target_link_libraries(cslib PRIVATE MPI::MPI_CXX)
else()
target_compile_definitions(cslib PRIVATE -DMPI_NO)
target_include_directories(cslib PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/message/cslib/src/STUBS_MPI)
set_target_properties(cslib PROPERTIES OUTPUT_NAME "csnompi")
endif()
if(MESSAGE_ZMQ)
target_compile_definitions(cslib PRIVATE -DZMQ_YES)
find_package(ZMQ REQUIRED)
target_link_libraries(cslib PUBLIC ZMQ::ZMQ)
else()
target_compile_definitions(cslib PRIVATE -DZMQ_NO)
target_include_directories(cslib PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/message/cslib/src/STUBS_ZMQ)
endif()
target_link_libraries(lammps PRIVATE cslib)
target_include_directories(lammps PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/message/cslib/src)

View File

@ -1,45 +1,45 @@
if(PKG_MSCG) find_package(GSL REQUIRED)
find_package(GSL REQUIRED) find_package(MSCG QUIET)
find_package(MSCG QUIET) if(MSGC_FOUND)
if(MSGC_FOUND) set(DOWNLOAD_MSCG_DEFAULT OFF)
set(DOWNLOAD_MSCG_DEFAULT OFF) else()
else() set(DOWNLOAD_MSCG_DEFAULT ON)
set(DOWNLOAD_MSCG_DEFAULT ON)
endif()
option(DOWNLOAD_MSCG "Download MSCG library instead of using an already installed one)" ${DOWNLOAD_MSCG_DEFAULT})
if(DOWNLOAD_MSCG)
if (CMAKE_VERSION VERSION_LESS "3.7") # due to SOURCE_SUBDIR
message(FATAL_ERROR "For downlading MSCG you need at least cmake-3.7")
endif()
if(CMAKE_GENERATOR STREQUAL "Ninja")
message(FATAL_ERROR "Cannot build downloaded MSCG library with Ninja build tool")
endif()
include(ExternalProject)
if(NOT LAPACK_FOUND)
set(EXTRA_MSCG_OPTS "-DLAPACK_LIBRARIES=${CMAKE_CURRENT_BINARY_DIR}/liblinalg.a")
endif()
ExternalProject_Add(mscg_build
URL https://github.com/uchicago-voth/MSCG-release/archive/1.7.3.1.tar.gz
URL_MD5 8c45e269ee13f60b303edd7823866a91
SOURCE_SUBDIR src/CMake
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> ${CMAKE_REQUEST_PIC} ${EXTRA_MSCG_OPTS}
BUILD_COMMAND make mscg INSTALL_COMMAND ""
)
ExternalProject_get_property(mscg_build BINARY_DIR)
set(MSCG_LIBRARIES ${BINARY_DIR}/libmscg.a)
ExternalProject_get_property(mscg_build SOURCE_DIR)
set(MSCG_INCLUDE_DIRS ${SOURCE_DIR}/src)
list(APPEND LAMMPS_DEPS mscg_build)
if(NOT LAPACK_FOUND)
file(MAKE_DIRECTORY ${MSCG_INCLUDE_DIRS})
add_dependencies(mscg_build linalg)
endif()
else()
find_package(MSCG)
if(NOT MSCG_FOUND)
message(FATAL_ERROR "MSCG not found, help CMake to find it by setting MSCG_LIBRARY and MSCG_INCLUDE_DIRS, or set DOWNLOAD_MSCG=ON to download it")
endif()
endif()
list(APPEND LAMMPS_LINK_LIBS ${MSCG_LIBRARIES} ${GSL_LIBRARIES} ${LAPACK_LIBRARIES})
include_directories(${MSCG_INCLUDE_DIRS})
endif() endif()
option(DOWNLOAD_MSCG "Download MSCG library instead of using an already installed one)" ${DOWNLOAD_MSCG_DEFAULT})
if(DOWNLOAD_MSCG)
include(ExternalProject)
ExternalProject_Add(mscg_build
URL https://github.com/uchicago-voth/MSCG-release/archive/1.7.3.1.tar.gz
URL_MD5 8c45e269ee13f60b303edd7823866a91
SOURCE_SUBDIR src/CMake
CMAKE_ARGS ${CMAKE_REQUEST_PIC} ${EXTRA_MSCG_OPTS}
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER}
-DBLAS_LIBRARIES=${BLAS_LIBRARIES} -DLAPACK_LIBRARIES=${LAPACK_LIBRARIES}
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
BUILD_COMMAND ${CMAKE_COMMAND} --build . --target mscg
INSTALL_COMMAND ""
BUILD_BYPRODUCTS <BINARY_DIR>/libmscg.a
)
ExternalProject_get_property(mscg_build BINARY_DIR)
ExternalProject_get_property(mscg_build SOURCE_DIR)
file(MAKE_DIRECTORY ${SOURCE_DIR}/src)
add_library(LAMMPS::MSCG UNKNOWN IMPORTED)
set_target_properties(LAMMPS::MSCG PROPERTIES
IMPORTED_LOCATION "${BINARY_DIR}/libmscg.a"
INTERFACE_INCLUDE_DIRECTORIES "${SOURCE_DIR}/src"
INTERFACE_LINK_LIBRARIES "${LAPACK_LIBRARIES}")
target_link_libraries(lammps PRIVATE LAMMPS::MSCG)
add_dependencies(LAMMPS::MSCG mscg_build)
else()
find_package(MSCG)
if(NOT MSCG_FOUND)
message(FATAL_ERROR "MSCG not found, help CMake to find it by setting MSCG_LIBRARY and MSCG_INCLUDE_DIR, or set DOWNLOAD_MSCG=ON to download it")
endif()
target_link_libraries(lammps PRIVATE MSCG::MSCG)
endif()
target_link_libraries(lammps PRIVATE GSL::gsl ${LAPACK_LIBRARIES})

View File

@ -1,13 +1,11 @@
if(PKG_OPT) set(OPT_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/OPT)
set(OPT_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/OPT) set(OPT_SOURCES)
set(OPT_SOURCES) set_property(GLOBAL PROPERTY "OPT_SOURCES" "${OPT_SOURCES}")
set_property(GLOBAL PROPERTY "OPT_SOURCES" "${OPT_SOURCES}")
# detects styles which have OPT version # detects styles which have OPT version
RegisterStylesExt(${OPT_SOURCES_DIR} opt OPT_SOURCES) RegisterStylesExt(${OPT_SOURCES_DIR} opt OPT_SOURCES)
get_property(OPT_SOURCES GLOBAL PROPERTY OPT_SOURCES) get_property(OPT_SOURCES GLOBAL PROPERTY OPT_SOURCES)
list(APPEND LIB_SOURCES ${OPT_SOURCES}) target_sources(lammps PRIVATE ${OPT_SOURCES})
include_directories(${OPT_SOURCES_DIR}) target_include_directories(lammps PRIVATE ${OPT_SOURCES_DIR})
endif()

View File

@ -1,6 +1,9 @@
if(PKG_PYTHON) if(CMAKE_VERSION VERSION_LESS 3.12)
find_package(PythonLibs REQUIRED) find_package(PythonLibs REQUIRED) # Deprecated since version 3.12
add_definitions(-DLMP_PYTHON) target_include_directories(lammps PRIVATE ${PYTHON_INCLUDE_DIRS})
include_directories(${PYTHON_INCLUDE_DIR}) target_link_libraries(lammps PRIVATE ${PYTHON_LIBRARIES})
list(APPEND LAMMPS_LINK_LIBS ${PYTHON_LIBRARY}) else()
find_package(Python REQUIRED COMPONENTS Development)
target_link_libraries(lammps PRIVATE Python::Python)
endif() endif()
target_compile_definitions(lammps PRIVATE -DLMP_PYTHON)

View File

@ -1,20 +1,18 @@
# Fix qeq/fire requires MANYBODY (i.e. COMB and COMB3) to be installed # Fix qeq/fire requires MANYBODY (i.e. COMB and COMB3) to be installed
if(PKG_QEQ) set(QEQ_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/QEQ)
set(QEQ_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/QEQ) file(GLOB QEQ_HEADERS ${QEQ_SOURCES_DIR}/fix*.h)
file(GLOB QEQ_HEADERS ${QEQ_SOURCES_DIR}/fix*.h) file(GLOB QEQ_SOURCES ${QEQ_SOURCES_DIR}/fix*.cpp)
file(GLOB QEQ_SOURCES ${QEQ_SOURCES_DIR}/fix*.cpp)
if(NOT PKG_MANYBODY) if(NOT PKG_MANYBODY)
list(REMOVE_ITEM QEQ_HEADERS ${QEQ_SOURCES_DIR}/fix_qeq_fire.h) list(REMOVE_ITEM QEQ_HEADERS ${QEQ_SOURCES_DIR}/fix_qeq_fire.h)
list(REMOVE_ITEM QEQ_SOURCES ${QEQ_SOURCES_DIR}/fix_qeq_fire.cpp) list(REMOVE_ITEM QEQ_SOURCES ${QEQ_SOURCES_DIR}/fix_qeq_fire.cpp)
endif()
set_property(GLOBAL PROPERTY "QEQ_SOURCES" "${QEQ_SOURCES}")
foreach(MY_HEADER ${QEQ_HEADERS})
AddStyleHeader(${MY_HEADER} FIX)
endforeach()
get_property(QEQ_SOURCES GLOBAL PROPERTY QEQ_SOURCES)
list(APPEND LIB_SOURCES ${QEQ_SOURCES})
include_directories(${QEQ_SOURCES_DIR})
endif() endif()
set_property(GLOBAL PROPERTY "QEQ_SOURCES" "${QEQ_SOURCES}")
foreach(MY_HEADER ${QEQ_HEADERS})
AddStyleHeader(${MY_HEADER} FIX)
endforeach()
get_property(QEQ_SOURCES GLOBAL PROPERTY QEQ_SOURCES)
target_sources(lammps PRIVATE ${QEQ_SOURCES})
target_include_directories(lammps PRIVATE ${QEQ_SOURCES_DIR})

View File

@ -1,42 +1,39 @@
if(PKG_USER-COLVARS) set(COLVARS_SOURCE_DIR ${LAMMPS_LIB_SOURCE_DIR}/colvars)
set(COLVARS_SOURCE_DIR ${LAMMPS_LIB_SOURCE_DIR}/colvars) file(GLOB COLVARS_SOURCES ${COLVARS_SOURCE_DIR}/[^.]*.cpp)
file(GLOB COLVARS_SOURCES ${COLVARS_SOURCE_DIR}/[^.]*.cpp) option(COLVARS_DEBUG "Debugging messages for Colvars (quite verbose)" OFF)
# Build Lepton by default # Build Lepton by default
set(COLVARS_LEPTON_DEFAULT ON) option(COLVARS_LEPTON "Build and link the Lepton library" ON)
# but not if C++11 is disabled per user request
if(DEFINED DISABLE_CXX11_REQUIREMENT)
if(DISABLE_CXX11_REQUIREMENT)
set(COLVARS_LEPTON_DEFAULT OFF)
endif()
endif()
option(COLVARS_LEPTON "Build and link the Lepton library" ${COLVARS_LEPTON_DEFAULT})
# Verify that the user's choice is consistent
if(DEFINED DISABLE_CXX11_REQUIREMENT)
if((DISABLE_CXX11_REQUIREMENT) AND (COLVARS_LEPTON))
message(FATAL_ERROR "Building the Lepton library requires C++11 or later.")
endif()
endif()
if(COLVARS_LEPTON)
set(LEPTON_DIR ${LAMMPS_LIB_SOURCE_DIR}/colvars/lepton)
file(GLOB LEPTON_SOURCES ${LEPTON_DIR}/src/[^.]*.cpp)
add_library(lepton STATIC ${LEPTON_SOURCES})
target_include_directories(lepton PRIVATE ${LEPTON_DIR}/include)
endif()
add_library(colvars STATIC ${COLVARS_SOURCES})
target_include_directories(colvars PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/colvars)
list(APPEND LAMMPS_LINK_LIBS colvars)
if(COLVARS_LEPTON)
list(APPEND LAMMPS_LINK_LIBS lepton)
target_compile_options(colvars PRIVATE -DLEPTON)
target_include_directories(colvars PUBLIC ${LEPTON_DIR}/include)
endif()
if(COLVARS_LEPTON)
set(LEPTON_DIR ${LAMMPS_LIB_SOURCE_DIR}/colvars/lepton)
file(GLOB LEPTON_SOURCES ${LEPTON_DIR}/src/[^.]*.cpp)
add_library(lepton STATIC ${LEPTON_SOURCES})
# Change the define below to LEPTON_BUILDING_SHARED_LIBRARY when linking Lepton as a DLL with MSVC
target_compile_definitions(lepton PRIVATE -DLEPTON_BUILDING_STATIC_LIBRARY)
set_target_properties(lepton PROPERTIES OUTPUT_NAME lammps_lepton${LAMMPS_MACHINE})
target_include_directories(lepton PRIVATE ${LEPTON_DIR}/include)
endif()
add_library(colvars STATIC ${COLVARS_SOURCES})
target_compile_definitions(colvars PRIVATE -DCOLVARS_LAMMPS)
set_target_properties(colvars PROPERTIES OUTPUT_NAME lammps_colvars${LAMMPS_MACHINE})
target_include_directories(colvars PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/colvars)
# The line below is needed to locate math_eigen_impl.h
target_include_directories(colvars PRIVATE ${LAMMPS_SOURCE_DIR})
target_link_libraries(lammps PRIVATE colvars)
if(COLVARS_DEBUG)
# Need to export the macro publicly to also affect the proxy
target_compile_definitions(colvars PUBLIC -DCOLVARS_DEBUG)
endif()
if(COLVARS_LEPTON)
target_link_libraries(lammps PRIVATE lepton)
target_compile_definitions(colvars PRIVATE -DLEPTON)
# Disable the line below when linking Lepton as a DLL with MSVC
target_compile_definitions(colvars PRIVATE -DLEPTON_USE_STATIC_LIBRARIES)
target_include_directories(colvars PUBLIC ${LEPTON_DIR}/include)
endif() endif()

View File

@ -1,8 +1,5 @@
if(PKG_USER-H5MD) enable_language(C)
enable_language(C)
find_package(HDF5 REQUIRED) find_package(HDF5 REQUIRED)
target_link_libraries(h5md ${HDF5_LIBRARIES}) target_link_libraries(h5md PRIVATE ${HDF5_LIBRARIES})
target_include_directories(h5md PRIVATE ${HDF5_INCLUDE_DIRS}) target_include_directories(h5md PUBLIC ${HDF5_INCLUDE_DIRS})
include_directories(${HDF5_INCLUDE_DIRS})
endif()

View File

@ -1,118 +1,109 @@
if(PKG_USER-INTEL) check_include_file_cxx(immintrin.h FOUND_IMMINTRIN)
check_include_file_cxx(immintrin.h FOUND_IMMINTRIN) if(NOT FOUND_IMMINTRIN)
if(NOT FOUND_IMMINTRIN) message(FATAL_ERROR "immintrin.h header not found, Intel package won't work without it")
message(FATAL_ERROR "immintrin.h header not found, Intel package won't work without it")
endif()
add_definitions(-DLMP_USER_INTEL)
set(INTEL_ARCH "cpu" CACHE STRING "Architectures used by USER-INTEL (cpu or knl)")
set(INTEL_ARCH_VALUES cpu knl)
set_property(CACHE INTEL_ARCH PROPERTY STRINGS ${INTEL_ARCH_VALUES})
validate_option(INTEL_ARCH INTEL_ARCH_VALUES)
string(TOUPPER ${INTEL_ARCH} INTEL_ARCH)
find_package(Threads QUIET)
if(Threads_FOUND)
set(INTEL_LRT_MODE "threads" CACHE STRING "Long-range threads mode (none, threads, or c++11)")
else()
set(INTEL_LRT_MODE "none" CACHE STRING "Long-range threads mode (none, threads, or c++11)")
endif()
set(INTEL_LRT_VALUES none threads c++11)
set_property(CACHE INTEL_LRT_MODE PROPERTY STRINGS ${INTEL_LRT_VALUES})
validate_option(INTEL_LRT_MODE INTEL_LRT_VALUES)
string(TOUPPER ${INTEL_LRT_MODE} INTEL_LRT_MODE)
if(INTEL_LRT_MODE STREQUAL "THREADS")
if(Threads_FOUND)
add_definitions(-DLMP_INTEL_USELRT)
list(APPEND LAMMPS_LINK_LIBS ${CMAKE_THREAD_LIBS_INIT})
else()
message(FATAL_ERROR "Must have working threads library for Long-range thread support")
endif()
endif()
if(INTEL_LRT_MODE STREQUAL "C++11")
add_definitions(-DLMP_INTEL_USERLRT -DLMP_INTEL_LRT11)
endif()
if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 16)
message(FATAL_ERROR "USER-INTEL needs at least a 2016 Intel compiler, found ${CMAKE_CXX_COMPILER_VERSION}")
endif()
else()
message(WARNING "USER-INTEL gives best performance with Intel compilers")
endif()
find_package(TBB QUIET)
if(TBB_FOUND)
list(APPEND LAMMPS_LINK_LIBS ${TBB_MALLOC_LIBRARIES})
else()
add_definitions(-DLMP_INTEL_NO_TBB)
if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
message(WARNING "USER-INTEL with Intel compilers should use TBB malloc libraries")
endif()
endif()
find_package(MKL QUIET)
if(MKL_FOUND)
add_definitions(-DLMP_USE_MKL_RNG)
list(APPEND LAMMPS_LINK_LIBS ${MKL_LIBRARIES})
else()
message(STATUS "Pair style dpd/intel will be faster with MKL libraries")
endif()
if((NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows") AND (NOT ${LAMMPS_MEMALIGN} STREQUAL "64") AND (NOT ${LAMMPS_MEMALIGN} STREQUAL "128") AND (NOT ${LAMMPS_MEMALIGN} STREQUAL "256"))
message(FATAL_ERROR "USER-INTEL only supports memory alignment of 64, 128 or 256 on this platform")
endif()
if(INTEL_ARCH STREQUAL "KNL")
if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
message(FATAL_ERROR "Must use Intel compiler with USER-INTEL for KNL architecture")
endif()
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -xHost -qopenmp -qoffload")
set(MIC_OPTIONS "-qoffload-option,mic,compiler,\"-fp-model fast=2 -mGLOB_default_function_attrs=\\\"gather_scatter_loop_unroll=4\\\"\"")
add_compile_options(-xMIC-AVX512 -qoffload -fno-alias -ansi-alias -restrict -qoverride-limits ${MIC_OPTIONS})
add_definitions(-DLMP_INTEL_OFFLOAD)
else()
if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
if(CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 17.3 OR CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 17.4)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -xCOMMON-AVX512")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -xHost")
endif()
include(CheckCXXCompilerFlag)
foreach(_FLAG -O2 -fp-model fast=2 -no-prec-div -qoverride-limits -qopt-zmm-usage=high -qno-offload -fno-alias -ansi-alias -restrict)
check_cxx_compiler_flag("${__FLAG}" COMPILER_SUPPORTS${_FLAG})
if(COMPILER_SUPPORTS${_FLAG})
add_compile_options(${_FLAG})
endif()
endforeach()
else()
add_compile_options(-O3 -ffast-math)
endif()
endif()
# collect sources
set(USER-INTEL_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-INTEL)
set(USER-INTEL_SOURCES ${USER-INTEL_SOURCES_DIR}/fix_intel.cpp
${USER-INTEL_SOURCES_DIR}/fix_nh_intel.cpp
${USER-INTEL_SOURCES_DIR}/intel_buffers.cpp
${USER-INTEL_SOURCES_DIR}/nbin_intel.cpp
${USER-INTEL_SOURCES_DIR}/npair_intel.cpp)
set_property(GLOBAL PROPERTY "USER-INTEL_SOURCES" "${USER-INTEL_SOURCES}")
# detect styles which have a USER-INTEL version
RegisterStylesExt(${USER-INTEL_SOURCES_DIR} intel USER-INTEL_SOURCES)
RegisterNBinStyle(${USER-INTEL_SOURCES_DIR}/nbin_intel.h)
RegisterNPairStyle(${USER-INTEL_SOURCES_DIR}/npair_intel.h)
RegisterFixStyle(${USER-INTEL_SOURCES_DIR}/fix_intel.h)
get_property(USER-INTEL_SOURCES GLOBAL PROPERTY USER-INTEL_SOURCES)
if(PKG_KSPACE)
list(APPEND USER-INTEL_SOURCES ${USER-INTEL_SOURCES_DIR}/verlet_lrt_intel.cpp)
RegisterIntegrateStyle(${USER-INTEL_SOURCES_DIR}/verlet_lrt_intel.h)
endif()
list(APPEND LIB_SOURCES ${USER-INTEL_SOURCES})
include_directories(${USER-INTEL_SOURCES_DIR})
endif() endif()
target_compile_definitions(lammps PRIVATE -DLMP_USER_INTEL)
set(INTEL_ARCH "cpu" CACHE STRING "Architectures used by USER-INTEL (cpu or knl)")
set(INTEL_ARCH_VALUES cpu knl)
set_property(CACHE INTEL_ARCH PROPERTY STRINGS ${INTEL_ARCH_VALUES})
validate_option(INTEL_ARCH INTEL_ARCH_VALUES)
string(TOUPPER ${INTEL_ARCH} INTEL_ARCH)
find_package(Threads QUIET)
if(Threads_FOUND)
set(INTEL_LRT_MODE "threads" CACHE STRING "Long-range threads mode (none, threads, or c++11)")
else()
set(INTEL_LRT_MODE "none" CACHE STRING "Long-range threads mode (none, threads, or c++11)")
endif()
set(INTEL_LRT_VALUES none threads c++11)
set_property(CACHE INTEL_LRT_MODE PROPERTY STRINGS ${INTEL_LRT_VALUES})
validate_option(INTEL_LRT_MODE INTEL_LRT_VALUES)
string(TOUPPER ${INTEL_LRT_MODE} INTEL_LRT_MODE)
if(INTEL_LRT_MODE STREQUAL "THREADS")
if(Threads_FOUND)
target_compile_definitions(lammps PRIVATE -DLMP_INTEL_USELRT)
target_link_libraries(lammps PRIVATE Threads::Threads)
else()
message(FATAL_ERROR "Must have working threads library for Long-range thread support")
endif()
endif()
if(INTEL_LRT_MODE STREQUAL "C++11")
target_compile_definitions(lammps PRIVATE -DLMP_INTEL_USELRT -DLMP_INTEL_LRT11)
endif()
if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 16)
message(FATAL_ERROR "USER-INTEL needs at least a 2016 Intel compiler, found ${CMAKE_CXX_COMPILER_VERSION}")
endif()
else()
message(WARNING "USER-INTEL gives best performance with Intel compilers")
endif()
find_package(TBB_MALLOC QUIET)
if(TBB_MALLOC_FOUND)
target_link_libraries(lammps PRIVATE TBB::TBB_MALLOC)
else()
target_compile_definitions(lammps PRIVATE -DLMP_INTEL_NO_TBB)
if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
message(WARNING "USER-INTEL with Intel compilers should use TBB malloc libraries")
endif()
endif()
find_package(MKL QUIET)
if(MKL_FOUND)
target_compile_definitions(lammps PRIVATE -DLMP_USE_MKL_RNG)
target_link_libraries(lammps PRIVATE MKL::MKL)
else()
message(STATUS "Pair style dpd/intel will be faster with MKL libraries")
endif()
if((NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows") AND (NOT ${LAMMPS_MEMALIGN} STREQUAL "64") AND (NOT ${LAMMPS_MEMALIGN} STREQUAL "128") AND (NOT ${LAMMPS_MEMALIGN} STREQUAL "256"))
message(FATAL_ERROR "USER-INTEL only supports memory alignment of 64, 128 or 256 on this platform")
endif()
if(INTEL_ARCH STREQUAL "KNL")
if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
message(FATAL_ERROR "Must use Intel compiler with USER-INTEL for KNL architecture")
endif()
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -xHost -qopenmp -qoffload")
set(MIC_OPTIONS "-qoffload-option,mic,compiler,\"-fp-model fast=2 -mGLOB_default_function_attrs=\\\"gather_scatter_loop_unroll=4\\\"\"")
target_compile_options(lammps PRIVATE -xMIC-AVX512 -qoffload -fno-alias -ansi-alias -restrict -qoverride-limits ${MIC_OPTIONS})
target_compile_definitions(lammps PRIVATE -DLMP_INTEL_OFFLOAD)
else()
if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
include(CheckCXXCompilerFlag)
foreach(_FLAG -O2 -fp-model fast=2 -no-prec-div -qoverride-limits -qopt-zmm-usage=high -qno-offload -fno-alias -ansi-alias -restrict)
check_cxx_compiler_flag("${_FLAG}" COMPILER_SUPPORTS${_FLAG})
if(COMPILER_SUPPORTS${_FLAG})
target_compile_options(lammps PRIVATE ${_FLAG})
endif()
endforeach()
endif()
endif()
# collect sources
set(USER-INTEL_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-INTEL)
set(USER-INTEL_SOURCES ${USER-INTEL_SOURCES_DIR}/fix_intel.cpp
${USER-INTEL_SOURCES_DIR}/fix_nh_intel.cpp
${USER-INTEL_SOURCES_DIR}/intel_buffers.cpp
${USER-INTEL_SOURCES_DIR}/nbin_intel.cpp
${USER-INTEL_SOURCES_DIR}/npair_intel.cpp)
set_property(GLOBAL PROPERTY "USER-INTEL_SOURCES" "${USER-INTEL_SOURCES}")
# detect styles which have a USER-INTEL version
RegisterStylesExt(${USER-INTEL_SOURCES_DIR} intel USER-INTEL_SOURCES)
RegisterNBinStyle(${USER-INTEL_SOURCES_DIR}/nbin_intel.h)
RegisterNPairStyle(${USER-INTEL_SOURCES_DIR}/npair_intel.h)
RegisterFixStyle(${USER-INTEL_SOURCES_DIR}/fix_intel.h)
get_property(USER-INTEL_SOURCES GLOBAL PROPERTY USER-INTEL_SOURCES)
if(PKG_KSPACE)
list(APPEND USER-INTEL_SOURCES ${USER-INTEL_SOURCES_DIR}/verlet_lrt_intel.cpp)
RegisterIntegrateStyle(${USER-INTEL_SOURCES_DIR}/verlet_lrt_intel.h)
endif()
target_sources(lammps PRIVATE ${USER-INTEL_SOURCES})
target_include_directories(lammps PRIVATE ${USER-INTEL_SOURCES_DIR})

View File

@ -1,14 +1,9 @@
if(PKG_USER-MOLFILE) set(MOLFILE_INCLUDE_DIR "${LAMMPS_LIB_SOURCE_DIR}/molfile" CACHE STRING "Path to VMD molfile plugin headers")
if (CMAKE_VERSION VERSION_LESS "3.10") # due to INTERFACE without a library set(MOLFILE_INCLUDE_DIRS "${MOLFILE_INCLUDE_DIR}")
message(FATAL_ERROR "For configuring USER-MOLFILE you need CMake 3.10 or later") add_library(molfile INTERFACE)
endif() target_include_directories(molfile INTERFACE ${MOLFILE_INCLUDE_DIRS})
# no need to link with -ldl on windows
set(MOLFILE_INCLUDE_DIRS "${LAMMPS_LIB_SOURCE_DIR}/molfile" CACHE STRING "Path to VMD molfile plugin headers") if(NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
add_library(molfile INTERFACE) target_link_libraries(molfile INTERFACE ${CMAKE_DL_LIBS})
target_include_directories(molfile INTERFACE ${MOLFILE_INCLUDE_DIRS})
# no need to link with -ldl on windows
if(NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
target_link_libraries(molfile INTERFACE ${CMAKE_DL_LIBS})
endif()
list(APPEND LAMMPS_LINK_LIBS molfile)
endif() endif()
target_link_libraries(lammps PRIVATE molfile)

View File

@ -1,24 +1,26 @@
if(PKG_USER-NETCDF) # USER-NETCDF can use NetCDF, Parallel NetCDF (PNetCDF), or both. At least one necessary.
# USER-NETCDF can use NetCDF, Parallel NetCDF (PNetCDF), or both. At least one necessary. # NetCDF library enables dump style "netcdf", while PNetCDF enables dump style "netcdf/mpiio"
# NetCDF library enables dump sytle "netcdf", while PNetCDF enables dump style "netcdf/mpiio"
# may use NetCDF or PNetCDF with MPI, but must have NetCDF without
if(NOT BUILD_MPI)
find_package(NetCDF REQUIRED)
else()
find_package(NetCDF) find_package(NetCDF)
if(NETCDF_FOUND) if(NETCDF_FOUND)
find_package(PNetCDF) find_package(PNetCDF)
else(NETCDF_FOUND) else()
find_package(PNetCDF REQUIRED) find_package(PNetCDF REQUIRED)
endif(NETCDF_FOUND) endif()
if(NETCDF_FOUND)
include_directories(${NETCDF_INCLUDE_DIRS})
list(APPEND LAMMPS_LINK_LIBS ${NETCDF_LIBRARIES})
add_definitions(-DLMP_HAS_NETCDF)
endif(NETCDF_FOUND)
if(PNETCDF_FOUND)
include_directories(${PNETCDF_INCLUDES})
list(APPEND LAMMPS_LINK_LIBS ${PNETCDF_LIBRARIES})
add_definitions(-DLMP_HAS_PNETCDF)
endif(PNETCDF_FOUND)
add_definitions(-DNC_64BIT_DATA=0x0020)
endif() endif()
if(NETCDF_FOUND)
target_link_libraries(lammps PRIVATE NetCDF::NetCDF)
target_compile_definitions(lammps PRIVATE -DLMP_HAS_NETCDF)
endif(NETCDF_FOUND)
if(PNETCDF_FOUND)
target_link_libraries(lammps PRIVATE PNetCDF::PNetCDF)
target_compile_definitions(lammps PRIVATE -DLMP_HAS_PNETCDF)
endif(PNETCDF_FOUND)
target_compile_definitions(lammps PRIVATE -DNC_64BIT_DATA=0x0020)

View File

@ -1,42 +1,40 @@
if(PKG_USER-OMP) set(USER-OMP_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-OMP)
set(USER-OMP_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-OMP) set(USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/thr_data.cpp
set(USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/thr_data.cpp ${USER-OMP_SOURCES_DIR}/thr_omp.cpp
${USER-OMP_SOURCES_DIR}/thr_omp.cpp ${USER-OMP_SOURCES_DIR}/fix_omp.cpp
${USER-OMP_SOURCES_DIR}/fix_omp.cpp ${USER-OMP_SOURCES_DIR}/fix_nh_omp.cpp
${USER-OMP_SOURCES_DIR}/fix_nh_omp.cpp ${USER-OMP_SOURCES_DIR}/fix_nh_sphere_omp.cpp
${USER-OMP_SOURCES_DIR}/fix_nh_sphere_omp.cpp ${USER-OMP_SOURCES_DIR}/domain_omp.cpp)
${USER-OMP_SOURCES_DIR}/domain_omp.cpp) target_compile_definitions(lammps PRIVATE -DLMP_USER_OMP)
add_definitions(-DLMP_USER_OMP) set_property(GLOBAL PROPERTY "OMP_SOURCES" "${USER-OMP_SOURCES}")
set_property(GLOBAL PROPERTY "OMP_SOURCES" "${USER-OMP_SOURCES}")
# detects styles which have USER-OMP version # detects styles which have USER-OMP version
RegisterStylesExt(${USER-OMP_SOURCES_DIR} omp OMP_SOURCES) RegisterStylesExt(${USER-OMP_SOURCES_DIR} omp OMP_SOURCES)
RegisterFixStyle(${USER-OMP_SOURCES_DIR}/fix_omp.h) RegisterFixStyle(${USER-OMP_SOURCES_DIR}/fix_omp.h)
get_property(USER-OMP_SOURCES GLOBAL PROPERTY OMP_SOURCES) get_property(USER-OMP_SOURCES GLOBAL PROPERTY OMP_SOURCES)
# manually add package dependent source files from USER-OMP that do not provide styles # manually add package dependent source files from USER-OMP that do not provide styles
if(PKG_ASPHERE) if(PKG_ASPHERE)
list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/fix_nh_asphere_omp.cpp) list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/fix_nh_asphere_omp.cpp)
endif() endif()
if(PKG_RIGID) if(PKG_RIGID)
list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/fix_rigid_nh_omp.cpp) list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/fix_rigid_nh_omp.cpp)
endif() endif()
if(PKG_USER-REAXC) if(PKG_USER-REAXC)
list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/reaxc_bond_orders_omp.cpp list(APPEND USER-OMP_SOURCES ${USER-OMP_SOURCES_DIR}/reaxc_bond_orders_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_hydrogen_bonds_omp.cpp ${USER-OMP_SOURCES_DIR}/reaxc_hydrogen_bonds_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_nonbonded_omp.cpp ${USER-OMP_SOURCES_DIR}/reaxc_nonbonded_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_bonds_omp.cpp ${USER-OMP_SOURCES_DIR}/reaxc_bonds_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_init_md_omp.cpp ${USER-OMP_SOURCES_DIR}/reaxc_init_md_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_torsion_angles_omp.cpp ${USER-OMP_SOURCES_DIR}/reaxc_torsion_angles_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_forces_omp.cpp ${USER-OMP_SOURCES_DIR}/reaxc_forces_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_multi_body_omp.cpp ${USER-OMP_SOURCES_DIR}/reaxc_multi_body_omp.cpp
${USER-OMP_SOURCES_DIR}/reaxc_valence_angles_omp.cpp) ${USER-OMP_SOURCES_DIR}/reaxc_valence_angles_omp.cpp)
endif() endif()
list(APPEND LIB_SOURCES ${USER-OMP_SOURCES}) target_sources(lammps PRIVATE ${USER-OMP_SOURCES})
include_directories(${USER-OMP_SOURCES_DIR}) target_include_directories(lammps PRIVATE ${USER-OMP_SOURCES_DIR})
endif()

View File

@ -1,91 +1,98 @@
if(PKG_USER-PLUMED) set(PLUMED_MODE "static" CACHE STRING "Linkage mode for Plumed2 library")
set(PLUMED_MODE "static" CACHE STRING "Linkage mode for Plumed2 library") set(PLUMED_MODE_VALUES static shared runtime)
set(PLUMED_MODE_VALUES static shared runtime) set_property(CACHE PLUMED_MODE PROPERTY STRINGS ${PLUMED_MODE_VALUES})
set_property(CACHE PLUMED_MODE PROPERTY STRINGS ${PLUMED_MODE_VALUES}) validate_option(PLUMED_MODE PLUMED_MODE_VALUES)
validate_option(PLUMED_MODE PLUMED_MODE_VALUES) string(TOUPPER ${PLUMED_MODE} PLUMED_MODE)
string(TOUPPER ${PLUMED_MODE} PLUMED_MODE)
set(PLUMED_LINK_LIBS "") set(PLUMED_LINK_LIBS)
if(PLUMED_MODE STREQUAL "STATIC") if(PLUMED_MODE STREQUAL "STATIC")
find_package(LAPACK REQUIRED) find_package(LAPACK REQUIRED)
find_package(BLAS REQUIRED) find_package(BLAS REQUIRED)
find_package(GSL REQUIRED) find_package(GSL REQUIRED)
list(APPEND LAPACK_LIBRARIES ${BLAS_LIBRARIES}) list(APPEND PLUMED_LINK_LIBS ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES} GSL::gsl)
list(APPEND PLUMED_LINK_LIBS ${LAPACK_LIBRARIES} ${GSL_LIBRARIES}) find_package(ZLIB QUIET)
find_package(ZLIB QUIET) if(ZLIB_FOUND)
if(ZLIB_FOUND) list(APPEND PLUMED_LINK_LIBS ZLIB::ZLIB)
list(APPEND PLUMED_LINK_LIBS ${ZLIB_LIBRARIES})
endif()
endif() endif()
find_package(FFTW3 QUIET)
find_package(PkgConfig QUIET) if(FFTW3_FOUND)
set(DOWNLOAD_PLUMED_DEFAULT ON) list(APPEND PLUMED_LINK_LIBS FFTW3::FFTW3)
if(PKG_CONFIG_FOUND)
pkg_check_modules(PLUMED QUIET plumed)
if(PLUMED_FOUND)
set(DOWNLOAD_PLUMED_DEFAULT OFF)
endif()
endif() endif()
option(DOWNLOAD_PLUMED "Download Plumed package instead of using an already installed one" ${DOWNLOAD_PLUMED_DEFAULT})
if(DOWNLOAD_PLUMED)
if(CMAKE_GENERATOR STREQUAL "Ninja")
message(FATAL_ERROR "Cannot build downloaded Plumed library with Ninja build tool")
endif()
if(BUILD_MPI)
set(PLUMED_CONFIG_MPI "--enable-mpi")
set(PLUMED_CONFIG_CC ${CMAKE_MPI_C_COMPILER})
set(PLUMED_CONFIG_CXX ${CMAKE_MPI_CXX_COMPILER})
else()
set(PLUMED_CONFIG_MPI "--disable-mpi")
set(PLUMED_CONFIG_CC ${CMAKE_C_COMPILER})
set(PLUMED_CONFIG_CXX ${CMAKE_CXX_COMPILER})
endif()
if(BUILD_OMP)
set(PLUMED_CONFIG_OMP "--enable-openmp")
else()
set(PLUMED_CONFIG_OMP "--disable-openmp")
endif()
message(STATUS "PLUMED download requested - we will build our own")
include(ExternalProject)
ExternalProject_Add(plumed_build
URL https://github.com/plumed/plumed2/releases/download/v2.6.0/plumed-src-2.6.0.tgz
URL_MD5 204d2edae58d9b10ba3ad460cad64191
BUILD_IN_SOURCE 1
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=<INSTALL_DIR>
${CONFIGURE_REQUEST_PIC}
--enable-modules=all
${PLUMED_CONFIG_MPI}
${PLUMED_CONFIG_OMP}
CXX=${PLUMED_CONFIG_CXX}
CC=${PLUMED_CONFIG_CC}
)
ExternalProject_get_property(plumed_build INSTALL_DIR)
set(PLUMED_INSTALL_DIR ${INSTALL_DIR})
list(APPEND LAMMPS_DEPS plumed_build)
if(PLUMED_MODE STREQUAL "STATIC")
add_definitions(-D__PLUMED_WRAPPER_CXX=1)
list(APPEND LAMMPS_LINK_LIBS ${PLUMED_INSTALL_DIR}/lib/libplumed.a ${PLUMED_LINK_LIBS} ${CMAKE_DL_LIBS})
elseif(PLUMED_MODE STREQUAL "SHARED")
list(APPEND LAMMPS_LINK_LIBS ${PLUMED_INSTALL_DIR}/lib/libplumed${CMAKE_SHARED_LIBRARY_SUFFIX} ${PLUMED_INSTALL_DIR}/lib/libplumedKernel${CMAKE_SHARED_LIBRARY_SUFFIX} ${CMAKE_DL_LIBS})
elseif(PLUMED_MODE STREQUAL "RUNTIME")
add_definitions(-D__PLUMED_HAS_DLOPEN=1 -D__PLUMED_DEFAULT_KERNEL=${PLUMED_INSTALL_DIR}/lib/libplumedKernel${CMAKE_SHARED_LIBRARY_SUFFIX})
list(APPEND LAMMPS_LINK_LIBS ${PLUMED_INSTALL_DIR}/lib/libplumedWrapper.a -rdynamic ${CMAKE_DL_LIBS})
endif()
set(PLUMED_INCLUDE_DIRS "${PLUMED_INSTALL_DIR}/include")
else()
find_package(PkgConfig REQUIRED)
pkg_check_modules(PLUMED REQUIRED plumed)
if(PLUMED_MODE STREQUAL "STATIC")
add_definitions(-D__PLUMED_WRAPPER_CXX=1)
include(${PLUMED_LIBDIR}/plumed/src/lib/Plumed.cmake.static)
elseif(PLUMED_MODE STREQUAL "SHARED")
include(${PLUMED_LIBDIR}/plumed/src/lib/Plumed.cmake.shared)
elseif(PLUMED_MODE STREQUAL "RUNTIME")
add_definitions(-D__PLUMED_HAS_DLOPEN=1 -D__PLUMED_DEFAULT_KERNEL=${PLUMED_LIBDIR}/libplumedKernel${CMAKE_SHARED_LIBRARY_SUFFIX})
include(${PLUMED_LIBDIR}/plumed/src/lib/Plumed.cmake.runtime)
endif()
list(APPEND LAMMPS_LINK_LIBS ${PLUMED_LOAD})
endif()
include_directories(${PLUMED_INCLUDE_DIRS})
endif() endif()
find_package(PkgConfig QUIET)
set(DOWNLOAD_PLUMED_DEFAULT ON)
if(PKG_CONFIG_FOUND)
pkg_check_modules(PLUMED QUIET plumed)
if(PLUMED_FOUND)
set(DOWNLOAD_PLUMED_DEFAULT OFF)
endif()
endif()
option(DOWNLOAD_PLUMED "Download Plumed package instead of using an already installed one" ${DOWNLOAD_PLUMED_DEFAULT})
if(DOWNLOAD_PLUMED)
if(BUILD_MPI)
set(PLUMED_CONFIG_MPI "--enable-mpi")
set(PLUMED_CONFIG_CC ${CMAKE_MPI_C_COMPILER})
set(PLUMED_CONFIG_CXX ${CMAKE_MPI_CXX_COMPILER})
else()
set(PLUMED_CONFIG_MPI "--disable-mpi")
set(PLUMED_CONFIG_CC ${CMAKE_C_COMPILER})
set(PLUMED_CONFIG_CXX ${CMAKE_CXX_COMPILER})
endif()
if(BUILD_OMP)
set(PLUMED_CONFIG_OMP "--enable-openmp")
else()
set(PLUMED_CONFIG_OMP "--disable-openmp")
endif()
message(STATUS "PLUMED download requested - we will build our own")
if(PLUMED_MODE STREQUAL "STATIC")
set(PLUMED_BUILD_BYPRODUCTS "<INSTALL_DIR>/lib/libplumed.a")
elseif(PLUMED_MODE STREQUAL "SHARED")
set(PLUMED_BUILD_BYPRODUCTS "<INSTALL_DIR>/lib/libplumed${CMAKE_SHARED_LIBRARY_SUFFIX};<INSTALL_DIR>/lib/libplumedKernel${CMAKE_SHARED_LIBRARY_SUFFIX}")
elseif(PLUMED_MODE STREQUAL "RUNTIME")
set(PLUMED_BUILD_BYPRODUCTS "<INSTALL_DIR>/lib/libplumedWrapper.a")
endif()
include(ExternalProject)
ExternalProject_Add(plumed_build
URL https://github.com/plumed/plumed2/releases/download/v2.6.1/plumed-src-2.6.1.tgz
URL_MD5 89a9a450fc6025299fe16af235957163
BUILD_IN_SOURCE 1
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=<INSTALL_DIR>
${CONFIGURE_REQUEST_PIC}
--enable-modules=all
${PLUMED_CONFIG_MPI}
${PLUMED_CONFIG_OMP}
CXX=${PLUMED_CONFIG_CXX}
CC=${PLUMED_CONFIG_CC}
BUILD_BYPRODUCTS ${PLUMED_BUILD_BYPRODUCTS}
)
ExternalProject_get_property(plumed_build INSTALL_DIR)
add_library(LAMMPS::PLUMED UNKNOWN IMPORTED)
add_dependencies(LAMMPS::PLUMED plumed_build)
if(PLUMED_MODE STREQUAL "STATIC")
set_target_properties(LAMMPS::PLUMED PROPERTIES IMPORTED_LOCATION ${INSTALL_DIR}/lib/libplumed.a INTERFACE_LINK_LIBRARIES "${PLUMED_LINK_LIBS};${CMAKE_DL_LIBS}")
elseif(PLUMED_MODE STREQUAL "SHARED")
set_target_properties(LAMMPS::PLUMED PROPERTIES IMPORTED_LOCATION ${INSTALL_DIR}/lib/libplumed${CMAKE_SHARED_LIBRARY_SUFFIX} INTERFACE_LINK_LIBRARIES "${INSTALL_DIR}/lib/libplumedKernel${CMAKE_SHARED_LIBRARY_SUFFIX};${CMAKE_DL_LIBS}")
elseif(PLUMED_MODE STREQUAL "RUNTIME")
set_target_properties(LAMMPS::PLUMED PROPERTIES INTERFACE_COMPILE_DEFINITIONS "__PLUMED_DEFAULT_KERNEL=${INSTALL_DIR}/lib/libplumedKernel${CMAKE_SHARED_LIBRARY_SUFFIX}")
set_target_properties(LAMMPS::PLUMED PROPERTIES IMPORTED_LOCATION ${INSTALL_DIR}/lib/libplumedWrapper.a INTERFACE_LINK_LIBRARIES "${CMAKE_DL_LIBS}")
endif()
set_target_properties(LAMMPS::PLUMED PROPERTIES INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include)
file(MAKE_DIRECTORY ${INSTALL_DIR}/include)
else()
find_package(PkgConfig REQUIRED)
pkg_check_modules(PLUMED REQUIRED plumed)
add_library(LAMMPS::PLUMED INTERFACE IMPORTED)
if(PLUMED_MODE STREQUAL "STATIC")
include(${PLUMED_LIBDIR}/plumed/src/lib/Plumed.cmake.static)
elseif(PLUMED_MODE STREQUAL "SHARED")
include(${PLUMED_LIBDIR}/plumed/src/lib/Plumed.cmake.shared)
elseif(PLUMED_MODE STREQUAL "RUNTIME")
set_target_properties(LAMMPS::PLUMED PROPERTIES INTERFACE_COMPILE_DEFINITIONS "__PLUMED_DEFAULT_KERNEL=${PLUMED_LIBDIR}/libplumedKernel${CMAKE_SHARED_LIBRARY_SUFFIX}")
include(${PLUMED_LIBDIR}/plumed/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}")
endif()
target_link_libraries(lammps PRIVATE LAMMPS::PLUMED)

View File

@ -1,13 +1,6 @@
if(PKG_USER-QMMM) enable_language(C)
enable_language(C)
if(NOT BUILD_LIB) add_library(qmmm STATIC ${LAMMPS_LIB_SOURCE_DIR}/qmmm/libqmmm.c)
message(FATAL_ERROR "Building a QM/MM executable with USER-QMMM requires BUILD_LIB=yes") set_target_properties(qmmm PROPERTIES OUTPUT_NAME lammps_qmmm${LAMMPS_MACHINE})
endif() target_link_libraries(lammps PRIVATE qmmm)
if(NOT BUILD_SHARED_LIBS) target_include_directories(qmmm PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/qmmm)
message(WARNING "It is recommended to use BUILD_SHARED_LIBS=yes with USER-QMMM")
endif()
add_library(qmmm STATIC ${LAMMPS_LIB_SOURCE_DIR}/qmmm/libqmmm.c)
list(APPEND LAMMPS_LINK_LIBS qmmm)
target_include_directories(qmmm PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/qmmm)
endif()

View File

@ -1,5 +1,3 @@
if(PKG_USER-QUIP) enable_language(Fortran)
enable_language(Fortran) find_package(QUIP REQUIRED)
find_package(QUIP REQUIRED) target_link_libraries(lammps PRIVATE QUIP::QUIP ${LAPACK_LIBRARIES})
list(APPEND LAMMPS_LINK_LIBS ${QUIP_LIBRARIES} ${LAPACK_LIBRARIES})
endif()

View File

@ -1,62 +1,65 @@
if(PKG_USER-SCAFACOS) enable_language(Fortran)
enable_language(Fortran) enable_language(C)
enable_language(C)
find_package(GSL REQUIRED) find_package(GSL REQUIRED)
find_package(PkgConfig QUIET) find_package(PkgConfig QUIET)
set(DOWNLOAD_SCAFACOS_DEFAULT ON) find_package(MPI REQUIRED)
if(PKG_CONFIG_FOUND) set(DOWNLOAD_SCAFACOS_DEFAULT ON)
pkg_check_modules(SCAFACOS QUIET scafacos) if(PKG_CONFIG_FOUND)
if(SCAFACOS_FOUND) pkg_check_modules(SCAFACOS QUIET scafacos)
set(DOWNLOAD_SCAFACOS_DEFAULT OFF) if(SCAFACOS_FOUND)
endif() set(DOWNLOAD_SCAFACOS_DEFAULT OFF)
endif() endif()
option(DOWNLOAD_SCAFACOS "Download ScaFaCoS library instead of using an already installed one" ${DOWNLOAD_SCAFACOS_DEFAULT}) endif()
if(DOWNLOAD_SCAFACOS) option(DOWNLOAD_SCAFACOS "Download ScaFaCoS library instead of using an already installed one" ${DOWNLOAD_SCAFACOS_DEFAULT})
if(CMAKE_GENERATOR STREQUAL "Ninja") if(DOWNLOAD_SCAFACOS)
message(FATAL_ERROR "Cannot build downloaded ScaFaCoS library with Ninja build tool") message(STATUS "ScaFaCoS download requested - we will build our own")
endif()
message(STATUS "ScaFaCoS download requested - we will build our own") # version 1.0.1 needs a patch to compile and linke cleanly with GCC 10 and later.
include(ExternalProject) file(DOWNLOAD https://download.lammps.org/thirdparty/scafacos-1.0.1-fix.diff ${CMAKE_CURRENT_BINARY_DIR}/scafacos-1.0.1.fix.diff
ExternalProject_Add(scafacos_build EXPECTED_HASH MD5=4baa1333bb28fcce102d505e1992d032)
URL https://github.com/scafacos/scafacos/releases/download/v1.0.1/scafacos-1.0.1.tar.gz
URL_MD5 bd46d74e3296bd8a444d731bb10c1738 include(ExternalProject)
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=<INSTALL_DIR> --disable-doc ExternalProject_Add(scafacos_build
--enable-fcs-solvers=fmm,p2nfft,direct,ewald,p3m URL https://github.com/scafacos/scafacos/releases/download/v1.0.1/scafacos-1.0.1.tar.gz
--with-internal-fftw --with-internal-pfft URL_MD5 bd46d74e3296bd8a444d731bb10c1738
--with-internal-pnfft ${CONFIGURE_REQUEST_PIC} PATCH_COMMAND patch -p1 < ${CMAKE_CURRENT_BINARY_DIR}/scafacos-1.0.1.fix.diff
FC=${CMAKE_MPI_Fortran_COMPILER} CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=<INSTALL_DIR> --disable-doc
CXX=${CMAKE_MPI_CXX_COMPILER} --enable-fcs-solvers=fmm,p2nfft,direct,ewald,p3m
CC=${CMAKE_MPI_C_COMPILER} --with-internal-fftw --with-internal-pfft
F77= --with-internal-pnfft ${CONFIGURE_REQUEST_PIC}
) FC=${CMAKE_MPI_Fortran_COMPILER}
ExternalProject_get_property(scafacos_build INSTALL_DIR) CXX=${CMAKE_MPI_CXX_COMPILER}
set(SCAFACOS_BUILD_DIR ${INSTALL_DIR}) CC=${CMAKE_MPI_C_COMPILER}
set(SCAFACOS_INCLUDE_DIRS ${SCAFACOS_BUILD_DIR}/include) F77=
list(APPEND LAMMPS_DEPS scafacos_build) BUILD_BYPRODUCTS
# list and order from pkg_config file of ScaFaCoS build <INSTALL_DIR>/lib/libfcs.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs.a) <INSTALL_DIR>/lib/libfcs_direct.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_direct.a) <INSTALL_DIR>/lib/libfcs_ewald.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_ewald.a) <INSTALL_DIR>/lib/libfcs_fmm.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_fmm.a) <INSTALL_DIR>/lib/libfcs_p2nfft.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_p2nfft.a) <INSTALL_DIR>/lib/libfcs_p3m.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_p3m.a) <INSTALL_DIR>/lib/libfcs_near.a
list(APPEND LAMMPS_LINK_LIBS ${GSL_LIBRARIES}) <INSTALL_DIR>/lib/libfcs_gridsort.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_near.a) <INSTALL_DIR>/lib/libfcs_resort.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_gridsort.a) <INSTALL_DIR>/lib/libfcs_redist.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_resort.a) <INSTALL_DIR>/lib/libfcs_common.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_redist.a) <INSTALL_DIR>/lib/libfcs_pnfft.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_common.a) <INSTALL_DIR>/lib/libfcs_pfft.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_pnfft.a) <INSTALL_DIR>/lib/libfcs_fftw3_mpi.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_pfft.a) <INSTALL_DIR>/lib/libfcs_fftw3.a
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_fftw3_mpi.a) )
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_BUILD_DIR}/lib/libfcs_fftw3.a) ExternalProject_get_property(scafacos_build INSTALL_DIR)
list(APPEND LAMMPS_LINK_LIBS ${MPI_Fortran_LIBRARIES}) file(MAKE_DIRECTORY ${INSTALL_DIR}/include)
list(APPEND LAMMPS_LINK_LIBS ${MPI_C_LIBRARIES}) add_library(LAMMPS::SCAFACOS UNKNOWN IMPORTED)
else() set_target_properties(LAMMPS::SCAFACOS PROPERTIES
find_package(PkgConfig REQUIRED) IMPORTED_LOCATION "${INSTALL_DIR}/lib/libfcs.a"
pkg_check_modules(SCAFACOS REQUIRED scafacos) INTERFACE_INCLUDE_DIRECTORIES "${INSTALL_DIR}/include"
list(APPEND LAMMPS_LINK_LIBS ${SCAFACOS_LDFLAGS}) INTERFACE_LINK_LIBRARIES "${INSTALL_DIR}/lib/libfcs.a;${INSTALL_DIR}/lib/libfcs_direct.a;${INSTALL_DIR}/lib/libfcs_ewald.a;${INSTALL_DIR}/lib/libfcs_fmm.a;${INSTALL_DIR}/lib/libfcs_p2nfft.a;${INSTALL_DIR}/lib/libfcs_p3m.a;GSL::gsl;${INSTALL_DIR}/lib/libfcs_near.a;${INSTALL_DIR}/lib/libfcs_gridsort.a;${INSTALL_DIR}/lib/libfcs_resort.a;${INSTALL_DIR}/lib/libfcs_redist.a;${INSTALL_DIR}/lib/libfcs_common.a;${INSTALL_DIR}/lib/libfcs_pnfft.a;${INSTALL_DIR}/lib/libfcs_pfft.a;${INSTALL_DIR}/lib/libfcs_fftw3_mpi.a;${INSTALL_DIR}/lib/libfcs_fftw3.a;MPI::MPI_Fortran;MPI::MPI_C")
endif() target_link_libraries(lammps PRIVATE LAMMPS::SCAFACOS)
include_directories(${SCAFACOS_INCLUDE_DIRS}) add_dependencies(LAMMPS::SCAFACOS scafacos_build)
else()
find_package(PkgConfig REQUIRED)
pkg_check_modules(SCAFACOS REQUIRED IMPORTED_TARGET scafacos)
target_link_libraries(lammps PRIVATE PkgConfig::SCAFACOS)
endif() endif()

View File

@ -1,13 +1,13 @@
# Fix rigid/meso requires RIGID to be installed # Fix rigid/meso requires RIGID to be installed
if(PKG_USER-SDPD) set(USER-SDPD_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-SDPD)
set(USER-SDPD_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/USER-SDPD)
get_property(hlist GLOBAL PROPERTY FIX) get_property(hlist GLOBAL PROPERTY FIX)
if(NOT PKG_RIGID) if(NOT PKG_RIGID)
list(REMOVE_ITEM hlist ${USER-SDPD_SOURCES_DIR}/fix_rigid_meso.h) list(REMOVE_ITEM hlist ${USER-SDPD_SOURCES_DIR}/fix_rigid_meso.h)
list(REMOVE_ITEM LIB_SOURCES ${USER-SDPD_SOURCES_DIR}/fix_rigid_meso.cpp) get_target_property(LAMMPS_SOURCES lammps SOURCES)
endif() list(REMOVE_ITEM LAMMPS_SOURCES ${USER-SDPD_SOURCES_DIR}/fix_rigid_meso.cpp)
set_property(GLOBAL PROPERTY FIX "${hlist}") set_property(TARGET lammps PROPERTY SOURCES ${LAMMPS_SOURCES})
include_directories(${USER-SDPD_SOURCES_DIR})
endif() endif()
set_property(GLOBAL PROPERTY FIX "${hlist}")
target_include_directories(lammps PRIVATE ${USER-SDPD_SOURCES_DIR})

View File

@ -1,28 +1,28 @@
if(PKG_USER-SMD) find_package(Eigen3 NO_MODULE)
find_package(Eigen3 NO_MODULE) if(EIGEN3_FOUND)
if(EIGEN3_FOUND) set(DOWNLOAD_EIGEN3_DEFAULT OFF)
set(DOWNLOAD_EIGEN3_DEFAULT OFF) else()
else() set(DOWNLOAD_EIGEN3_DEFAULT ON)
set(DOWNLOAD_EIGEN3_DEFAULT ON) endif()
endif() option(DOWNLOAD_EIGEN3 "Download Eigen3 instead of using an already installed one)" ${DOWNLOAD_EIGEN3_DEFAULT})
option(DOWNLOAD_EIGEN3 "Download Eigen3 instead of using an already installed one)" ${DOWNLOAD_EIGEN3_DEFAULT}) if(DOWNLOAD_EIGEN3)
if(DOWNLOAD_EIGEN3) message(STATUS "Eigen3 download requested - we will build our own")
message(STATUS "Eigen3 download requested - we will build our own") include(ExternalProject)
include(ExternalProject) ExternalProject_Add(Eigen3_build
ExternalProject_Add(Eigen3_build URL https://gitlab.com/libeigen/eigen/-/archive/3.3.7/eigen-3.3.7.tar.gz
URL http://bitbucket.org/eigen/eigen/get/3.3.7.tar.gz URL_MD5 9e30f67e8531477de4117506fe44669b
URL_MD5 f2a417d083fe8ca4b8ed2bc613d20f07 CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND ""
CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND "" )
) ExternalProject_get_property(Eigen3_build SOURCE_DIR)
ExternalProject_get_property(Eigen3_build SOURCE_DIR) add_library(LAMMPS::EIGEN3 INTERFACE IMPORTED)
set(EIGEN3_INCLUDE_DIR ${SOURCE_DIR}) set_target_properties(LAMMPS::EIGEN3 PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${SOURCE_DIR}")
list(APPEND LAMMPS_DEPS Eigen3_build) target_link_libraries(lammps PRIVATE LAMMPS::EIGEN3)
else() add_dependencies(LAMMPS::EIGEN3 Eigen3_build)
find_package(Eigen3 NO_MODULE) else()
mark_as_advanced(Eigen3_DIR) find_package(Eigen3 NO_MODULE)
if(NOT EIGEN3_FOUND) mark_as_advanced(Eigen3_DIR)
message(FATAL_ERROR "Eigen3 not found, help CMake to find it by setting EIGEN3_INCLUDE_DIR, or set DOWNLOAD_EIGEN3=ON to download it") if(NOT EIGEN3_FOUND)
endif() message(FATAL_ERROR "Eigen3 not found, help CMake to find it by setting EIGEN3_INCLUDE_DIR, or set DOWNLOAD_EIGEN3=ON to download it")
endif() endif()
include_directories(${EIGEN3_INCLUDE_DIR}) target_link_libraries(lammps PRIVATE Eigen3::Eigen)
endif() endif()

View File

@ -1,6 +1,4 @@
if(PKG_USER-VTK) find_package(VTK REQUIRED NO_MODULE)
find_package(VTK REQUIRED NO_MODULE) include(${VTK_USE_FILE})
include(${VTK_USE_FILE}) target_compile_definitions(lammps PRIVATE -DLAMMPS_VTK)
add_definitions(-DLAMMPS_VTK) target_link_libraries(lammps PRIVATE ${VTK_LIBRARIES})
list(APPEND LAMMPS_LINK_LIBS ${VTK_LIBRARIES})
endif()

View File

@ -1,45 +1,48 @@
if(PKG_VORONOI) find_package(VORO)
find_package(VORO) if(VORO_FOUND)
if(VORO_FOUND) set(DOWNLOAD_VORO_DEFAULT OFF)
set(DOWNLOAD_VORO_DEFAULT OFF) else()
else() set(DOWNLOAD_VORO_DEFAULT ON)
set(DOWNLOAD_VORO_DEFAULT ON) endif()
endif() option(DOWNLOAD_VORO "Download and compile the Voro++ library instead of using an already installed one" ${DOWNLOAD_VORO_DEFAULT})
option(DOWNLOAD_VORO "Download and compile the Voro++ library instead of using an already installed one" ${DOWNLOAD_VORO_DEFAULT}) if(DOWNLOAD_VORO)
if(DOWNLOAD_VORO) message(STATUS "Voro++ download requested - we will build our own")
if(CMAKE_GENERATOR STREQUAL "Ninja") include(ExternalProject)
message(FATAL_ERROR "Cannot build downloaded Voro++ library with Ninja build tool")
endif() if(BUILD_SHARED_LIBS)
message(STATUS "Voro++ download requested - we will build our own") set(VORO_BUILD_CFLAGS "${CMAKE_SHARED_LIBRARY_CXX_FLAGS} ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${BTYPE}}")
include(ExternalProject) else()
set(VORO_BUILD_CFLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${BTYPE}}")
if(BUILD_SHARED_LIBS) endif()
set(VORO_BUILD_CFLAGS "${CMAKE_SHARED_LIBRARY_CXX_FLAGS} ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${BTYPE}}") if(APPLE)
else() get_filename_component(VORO_CXX ${CMAKE_CXX_COMPILER} NAME_WE)
set(VORO_BUILD_CFLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${BTYPE}}") set(VORO_BUILD_OPTIONS CXX=${VORO_CXX} CFLAGS=${VORO_BUILD_CFLAGS})
endif() else()
if(APPLE) set(VORO_BUILD_OPTIONS CXX=${CMAKE_CXX_COMPILER} CFLAGS=${VORO_BUILD_CFLAGS})
get_filename_component(VORO_CXX ${CMAKE_CXX_COMPILER} NAME_WE) endif()
set(VORO_BUILD_OPTIONS CXX=${VORO_CXX} CFLAGS=${VORO_BUILD_CFLAGS})
else() ExternalProject_Add(voro_build
set(VORO_BUILD_OPTIONS CXX=${CMAKE_CXX_COMPILER} CFLAGS=${VORO_BUILD_CFLAGS}) URL https://download.lammps.org/thirdparty/voro++-0.4.6.tar.gz
endif() URL_MD5 2338b824c3b7b25590e18e8df5d68af9
PATCH_COMMAND patch -b -p0 < ${LAMMPS_LIB_SOURCE_DIR}/voronoi/voro-make.patch
ExternalProject_Add(voro_build CONFIGURE_COMMAND ""
URL https://download.lammps.org/thirdparty/voro++-0.4.6.tar.gz BUILD_COMMAND make ${VORO_BUILD_OPTIONS}
URL_MD5 2338b824c3b7b25590e18e8df5d68af9 BUILD_IN_SOURCE 1
CONFIGURE_COMMAND "" BUILD_COMMAND make ${VORO_BUILD_OPTIONS} BUILD_IN_SOURCE 1 INSTALL_COMMAND "" INSTALL_COMMAND ""
) BUILD_BYPRODUCTS <SOURCE_DIR>/src/libvoro++.a
ExternalProject_get_property(voro_build SOURCE_DIR) )
set(VORO_LIBRARIES ${SOURCE_DIR}/src/libvoro++.a) ExternalProject_get_property(voro_build SOURCE_DIR)
set(VORO_INCLUDE_DIRS ${SOURCE_DIR}/src) file(MAKE_DIRECTORY ${SOURCE_DIR}/src)
list(APPEND LAMMPS_DEPS voro_build) add_library(LAMMPS::VORO UNKNOWN IMPORTED)
else() set_target_properties(LAMMPS::VORO PROPERTIES
find_package(VORO) IMPORTED_LOCATION "${SOURCE_DIR}/src/libvoro++.a"
if(NOT VORO_FOUND) INTERFACE_INCLUDE_DIRECTORIES "${SOURCE_DIR}/src")
message(FATAL_ERROR "Voro++ library not found. Help CMake to find it by setting VORO_LIBRARY and VORO_INCLUDE_DIR, or set DOWNLOAD_VORO=ON to download it") target_link_libraries(lammps PRIVATE LAMMPS::VORO)
endif() add_dependencies(LAMMPS::VORO voro_build)
endif() else()
include_directories(${VORO_INCLUDE_DIRS}) find_package(VORO)
list(APPEND LAMMPS_LINK_LIBS ${VORO_LIBRARIES}) if(NOT VORO_FOUND)
message(FATAL_ERROR "Voro++ library not found. Help CMake to find it by setting VORO_LIBRARY and VORO_INCLUDE_DIR, or set DOWNLOAD_VORO=ON to download it")
endif()
target_link_libraries(lammps PRIVATE VORO::VORO)
endif() endif()

View File

@ -2,51 +2,54 @@
# Testing # Testing
############################################################################### ###############################################################################
option(ENABLE_TESTING "Enable testing" OFF) option(ENABLE_TESTING "Enable testing" OFF)
if(ENABLE_TESTING AND BUILD_EXE) if(ENABLE_TESTING)
enable_testing() find_program(VALGRIND_BINARY NAMES valgrind)
option(LAMMPS_TESTING_SOURCE_DIR "Location of lammps-testing source directory" "") # generate custom suppression file
option(LAMMPS_TESTING_GIT_TAG "Git tag of lammps-testing" "master") file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/lammps.supp "\n")
mark_as_advanced(LAMMPS_TESTING_SOURCE_DIR LAMMPS_TESTING_GIT_TAG) file(GLOB VALGRIND_SUPPRESSION_FILES ${LAMMPS_TOOLS_DIR}/valgrind/[^.]*.supp)
foreach(SUPP ${VALGRIND_SUPPRESSION_FILES})
file(READ ${SUPP} SUPPRESSIONS)
file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/lammps.supp "${SUPPRESSIONS}")
endforeach()
set(VALGRIND_DEFAULT_OPTIONS "--leak-check=full --show-leak-kinds=all --track-origins=yes --suppressions=${CMAKE_BINARY_DIR}/lammps.supp")
if (CMAKE_VERSION VERSION_GREATER "3.10.3" AND NOT LAMMPS_TESTING_SOURCE_DIR) set(MEMORYCHECK_COMMAND "${VALGRIND_BINARY}" CACHE FILEPATH "Memory Check Command")
include(FetchContent) set(MEMORYCHECK_COMMAND_OPTIONS "${VALGRIND_DEFAULT_OPTIONS}" CACHE STRING "Memory Check Command Options")
FetchContent_Declare(lammps-testing # check if a faster linker is available.
GIT_REPOSITORY https://github.com/lammps/lammps-testing.git # only verified with GNU and Clang compilers and new CMake
GIT_TAG ${LAMMPS_TESTING_GIT_TAG} if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.13)
) if((${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
OR (${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang"))
FetchContent_GetProperties(lammps-testing) include(CheckCXXCompilerFlag)
if(NOT lammps-testing_POPULATED) set(CMAKE_CUSTOM_LINKER_DEFAULT default)
message(STATUS "Downloading tests...") check_cxx_compiler_flag(-fuse-ld=lld HAVE_LLD_LINKER_FLAG)
FetchContent_Populate(lammps-testing) check_cxx_compiler_flag(-fuse-ld=gold HAVE_GOLD_LINKER_FLAG)
check_cxx_compiler_flag(-fuse-ld=bfd HAVE_BFD_LINKER_FLAG)
find_program(HAVE_LLD_LINKER_BIN lld ld.lld)
find_program(HAVE_GOLD_LINKER_BIN ld.gold)
find_program(HAVE_BFD_LINKER_BIN ld.bfd)
if(HAVE_LLD_LINKER_FLAG AND HAVE_LLD_LINKER_BIN)
set(CMAKE_CUSTOM_LINKER_DEFAULT lld)
elseif(HAVE_GOLD_LINKER_FLAG AND HAVE_GOLD_LINKER_BIN)
set(CMAKE_CUSTOM_LINKER_DEFAULT gold)
elseif(HAVE_BFD_LINKER_FLAG AND HAVE_BFD_LINKER_BIN)
set(CMAKE_CUSTOM_LINKER_DEFAULT bfd)
endif()
set(CMAKE_CUSTOM_LINKER_VALUES lld gold bfd default)
set(CMAKE_CUSTOM_LINKER ${CMAKE_CUSTOM_LINKER_DEFAULT} CACHE STRING "Choose a custom linker for faster linking (lld, gold, bfd, default)")
validate_option(CMAKE_CUSTOM_LINKER CMAKE_CUSTOM_LINKER_VALUES)
mark_as_advanced(CMAKE_CUSTOM_LINKER)
if(NOT "${CMAKE_CUSTOM_LINKER}" STREQUAL "default")
target_link_options(lammps PUBLIC -fuse-ld=${CMAKE_CUSTOM_LINKER})
endif()
endif() endif()
set(LAMMPS_TESTING_SOURCE_DIR ${lammps-testing_SOURCE_DIR})
elseif(NOT LAMMPS_TESTING_SOURCE_DIR)
message(WARNING "Full test-suite requires CMake >= 3.11 or copy of\n"
"https://github.com/lammps/lammps-testing in LAMMPS_TESTING_SOURCE_DIR")
endif() endif()
add_test(ShowHelp ${CMAKE_BINARY_DIR}/${LAMMPS_BINARY} -help) include(CTest)
if(EXISTS ${LAMMPS_TESTING_SOURCE_DIR}) enable_testing()
message(STATUS "Running test discovery...") get_filename_component(LAMMPS_UNITTEST_DIR ${LAMMPS_SOURCE_DIR}/../unittest ABSOLUTE)
get_filename_component(LAMMPS_UNITTEST_BIN ${CMAKE_BINARY_DIR}/unittest ABSOLUTE)
file(GLOB_RECURSE TEST_SCRIPTS ${LAMMPS_TESTING_SOURCE_DIR}/tests/core/*/in.*) add_subdirectory(${LAMMPS_UNITTEST_DIR} ${LAMMPS_UNITTEST_BIN})
foreach(script_path ${TEST_SCRIPTS})
get_filename_component(TEST_NAME ${script_path} EXT)
get_filename_component(SCRIPT_NAME ${script_path} NAME)
get_filename_component(PARENT_DIR ${script_path} DIRECTORY)
string(SUBSTRING ${TEST_NAME} 1 -1 TEST_NAME)
string(REPLACE "-" "_" TEST_NAME ${TEST_NAME})
string(REPLACE "+" "_" TEST_NAME ${TEST_NAME})
set(TEST_NAME "test_core_${TEST_NAME}_serial")
add_test(${TEST_NAME} ${CMAKE_BINARY_DIR}/${LAMMPS_BINARY} -in ${SCRIPT_NAME})
set_tests_properties(${TEST_NAME} PROPERTIES WORKING_DIRECTORY ${PARENT_DIR})
endforeach()
list(LENGTH TEST_SCRIPTS NUM_TESTS)
message(STATUS "Found ${NUM_TESTS} tests.")
endif()
endif() endif()

46
cmake/Modules/Tools.cmake Normal file
View File

@ -0,0 +1,46 @@
if(BUILD_TOOLS)
add_executable(binary2txt ${LAMMPS_TOOLS_DIR}/binary2txt.cpp)
target_compile_definitions(binary2txt PRIVATE -DLAMMPS_${LAMMPS_SIZES})
install(TARGETS binary2txt DESTINATION ${CMAKE_INSTALL_BINDIR})
include(CheckGeneratorSupport)
if(CMAKE_GENERATOR_SUPPORT_FORTRAN)
include(CheckLanguage)
check_language(Fortran)
if(CMAKE_Fortran_COMPILER)
enable_language(Fortran)
add_executable(chain.x ${LAMMPS_TOOLS_DIR}/chain.f)
target_link_libraries(chain.x PRIVATE ${CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES})
install(TARGETS chain.x DESTINATION ${CMAKE_INSTALL_BINDIR})
else()
message(WARNING "No suitable Fortran compiler found, skipping build of 'chain.x'")
endif()
else()
message(WARNING "CMake build doesn't support fortran, skipping build of 'chain.x'")
endif()
enable_language(C)
get_filename_component(MSI2LMP_SOURCE_DIR ${LAMMPS_TOOLS_DIR}/msi2lmp/src ABSOLUTE)
file(GLOB MSI2LMP_SOURCES ${MSI2LMP_SOURCE_DIR}/[^.]*.c)
add_executable(msi2lmp ${MSI2LMP_SOURCES})
target_link_libraries(msi2lmp PRIVATE ${MATH_LIBRARIES})
install(TARGETS msi2lmp DESTINATION ${CMAKE_INSTALL_BINDIR})
install(FILES ${LAMMPS_DOC_DIR}/msi2lmp.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
endif()
if(BUILD_LAMMPS_SHELL)
find_package(PkgConfig REQUIRED)
pkg_check_modules(READLINE IMPORTED_TARGET REQUIRED readline)
if(NOT LAMMPS_EXCEPTIONS)
message(WARNING "The LAMMPS shell needs LAMMPS_EXCEPTIONS enabled for full functionality")
endif()
add_executable(lammps-shell ${LAMMPS_TOOLS_DIR}/lammps-shell/lammps-shell.cpp)
# 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()
target_link_libraries(lammps-shell PRIVATE lammps PkgConfig::READLINE)
install(TARGETS lammps-shell EXPORT LAMMPS_Targets DESTINATION ${CMAKE_INSTALL_BINDIR})
endif()

View File

@ -3,17 +3,19 @@ set(temp_git_commit "(unknown)")
set(temp_git_branch "(unknown)") set(temp_git_branch "(unknown)")
set(temp_git_describe "(unknown)") set(temp_git_describe "(unknown)")
set(temp_git_info "false") set(temp_git_info "false")
if(GIT_FOUND AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../.git)
message(STATUS "Git Directory: ${LAMMPS_DIR}/.git")
if(GIT_FOUND AND EXISTS ${LAMMPS_DIR}/.git)
set(temp_git_info "true") set(temp_git_info "true")
execute_process(COMMAND ${GIT_EXECUTABLE} -C ${CMAKE_CURRENT_SOURCE_DIR}/.. rev-parse HEAD execute_process(COMMAND ${GIT_EXECUTABLE} -C ${LAMMPS_DIR} rev-parse HEAD
OUTPUT_VARIABLE temp_git_commit OUTPUT_VARIABLE temp_git_commit
ERROR_QUIET ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE) OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${GIT_EXECUTABLE} -C ${CMAKE_CURRENT_SOURCE_DIR}/.. rev-parse --abbrev-ref HEAD execute_process(COMMAND ${GIT_EXECUTABLE} -C ${LAMMPS_DIR} rev-parse --abbrev-ref HEAD
OUTPUT_VARIABLE temp_git_branch OUTPUT_VARIABLE temp_git_branch
ERROR_QUIET ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE) OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND ${GIT_EXECUTABLE} -C ${CMAKE_CURRENT_SOURCE_DIR}/.. describe --dirty=-modified execute_process(COMMAND ${GIT_EXECUTABLE} -C ${LAMMPS_DIR} describe --dirty=-modified
OUTPUT_VARIABLE temp_git_describe OUTPUT_VARIABLE temp_git_describe
ERROR_QUIET ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE) OUTPUT_STRIP_TRAILING_WHITESPACE)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
[
{ include: [ "<bits/types/struct_rusage.h>", private, "<sys/resource.h>", public ] },
{ include: [ "<bits/exception.h>", public, "<exception>", public ] },
{ include: [ "@<Eigen/.*>", private, "<Eigen/Eigen>", public ] },
{ include: [ "@<gtest/.*>", private, "\"gtest/gtest.h\"", public ] },
{ include: [ "@<gmock/.*>", private, "\"gmock/gmock.h\"", public ] },
]

View File

@ -18,12 +18,6 @@
# myapp_CFLAGS = $(LAMMPS_CFLAGS) # myapp_CFLAGS = $(LAMMPS_CFLAGS)
# myapp_LDADD = $(LAMMPS_LIBS) # myapp_LDADD = $(LAMMPS_LIBS)
# Use this in CMake:
# CMakeLists.txt:
# find_package(PkgConfig)
# pkg_check_modules(LAMMPS IMPORTED_TARGET lammps)
# target_link_libraries(<lib> PkgConfig::LAMMPS)
prefix=@CMAKE_INSTALL_PREFIX@ prefix=@CMAKE_INSTALL_PREFIX@
libdir=@CMAKE_INSTALL_FULL_LIBDIR@ libdir=@CMAKE_INSTALL_FULL_LIBDIR@
includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
@ -31,8 +25,8 @@ includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
Name: liblammps@LAMMPS_MACHINE@ Name: liblammps@LAMMPS_MACHINE@
Description: Large-scale Atomic/Molecular Massively Parallel Simulator Library Description: Large-scale Atomic/Molecular Massively Parallel Simulator Library
URL: http://lammps.sandia.gov URL: http://lammps.sandia.gov
Version: @LAMMPS_VERSION@ Version: @PROJECT_VERSION@
Requires: Requires:
Libs: -L${libdir} -llammps@LAMMPS_LIB_SUFFIX@ Libs: -L${libdir} -llammps@LAMMPS_MACHINE@
Libs.private: -lm Libs.private: -lm
Cflags: -I${includedir} @LAMMPS_API_DEFINES@ Cflags: -I${includedir} @LAMMPS_API_DEFINES@

View File

@ -2,16 +2,16 @@
# an existing package selection without losing any other settings # an existing package selection without losing any other settings
set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
GRANULAR KIM KOKKOS KSPACE LATTE MANYBODY MC MISC MESSAGE MOLECULE GRANULAR KIM KOKKOS KSPACE LATTE MANYBODY MC MISC MESSAGE MLIAP
MPIIO MSCG OPT PERI POEMS PYTHON QEQ REPLICA RIGID SHOCK SNAP SPIN MOLECULE MPIIO MSCG OPT PERI POEMS PYTHON QEQ REPLICA RIGID SHOCK
SRD VORONOI SNAP SPIN SRD VORONOI
USER-ADIOS USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-CGSDK USER-ADIOS USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-CGSDK
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP
USER-H5MD USER-INTEL USER-LB USER-MANIFOLD USER-MEAMC USER-MESO USER-H5MD USER-INTEL USER-LB USER-MANIFOLD USER-MEAMC USER-MESODPD
USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP USER-MESONT USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP
USER-PHONON USER-PLUMED USER-PTM USER-QMMM USER-QTB USER-QUIP USER-PHONON USER-PLUMED USER-PTM USER-QMMM USER-QTB USER-QUIP
USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-REACTION USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ
USER-TALLY USER-UEF USER-VTK USER-YAFF) USER-SPH USER-TALLY USER-UEF USER-VTK USER-YAFF)
foreach(PKG ${ALL_PACKAGES}) foreach(PKG ${ALL_PACKAGES})
set(PKG_${PKG} OFF CACHE BOOL "" FORCE) set(PKG_${PKG} OFF CACHE BOOL "" FORCE)

View File

@ -4,16 +4,16 @@
# with just a working C++ compiler and an MPI library. # with just a working C++ compiler and an MPI library.
set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
GRANULAR KIM KOKKOS KSPACE LATTE MANYBODY MC MISC MESSAGE MOLECULE GRANULAR KIM KOKKOS KSPACE LATTE MANYBODY MC MISC MESSAGE MLIAP
MPIIO MSCG OPT PERI POEMS PYTHON QEQ REPLICA RIGID SHOCK SNAP SPIN MOLECULE MPIIO MSCG OPT PERI POEMS PYTHON QEQ REPLICA RIGID SHOCK
SRD VORONOI SNAP SPIN SRD VORONOI
USER-ADIOS USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-CGSDK USER-ADIOS USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-CGSDK
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP
USER-H5MD USER-INTEL USER-LB USER-MANIFOLD USER-MEAMC USER-MESO USER-H5MD USER-INTEL USER-LB USER-MANIFOLD USER-MEAMC USER-MESODPD
USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP USER-MESONT USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP
USER-PHONON USER-PLUMED USER-PTM USER-QMMM USER-QTB USER-QUIP USER-PHONON USER-PLUMED USER-PTM USER-QMMM USER-QTB USER-QUIP
USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-REACTION USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ
USER-TALLY USER-UEF USER-VTK USER-YAFF) USER-SPH USER-TALLY USER-UEF USER-VTK USER-YAFF)
foreach(PKG ${ALL_PACKAGES}) foreach(PKG ${ALL_PACKAGES})
set(PKG_${PKG} ON CACHE BOOL "" FORCE) set(PKG_${PKG} ON CACHE BOOL "" FORCE)

View File

@ -2,7 +2,7 @@
set(CMAKE_CXX_COMPILER "clang++" CACHE STRING "" FORCE) set(CMAKE_CXX_COMPILER "clang++" CACHE STRING "" FORCE)
set(CMAKE_C_COMPILER "clang" CACHE STRING "" FORCE) set(CMAKE_C_COMPILER "clang" CACHE STRING "" FORCE)
set(CMAKE_CXX_FLAGS "-Wall -Wextra -g -O2 -DNDEBG" CACHE STRING "" FORCE) set(CMAKE_CXX_FLAGS "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
set(MPI_CXX "clang++" CACHE STRING "" FORCE) set(MPI_CXX "clang++" CACHE STRING "" FORCE)
set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE) set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE)
unset(HAVE_OMP_H_INCLUDE CACHE) unset(HAVE_OMP_H_INCLUDE CACHE)
@ -13,5 +13,5 @@ set(OpenMP_C_LIB_NAMES "omp" CACHE STRING "" FORCE)
set(OpenMP_CXX "clang++" CACHE STRING "" FORCE) set(OpenMP_CXX "clang++" CACHE STRING "" FORCE)
set(OpenMP_CXX_FLAGS "-fopenmp" CACHE STRING "" FORCE) set(OpenMP_CXX_FLAGS "-fopenmp" CACHE STRING "" FORCE)
set(OpenMP_CXX_LIB_NAMES "omp" CACHE STRING "" FORCE) set(OpenMP_CXX_LIB_NAMES "omp" CACHE STRING "" FORCE)
set(OpenMP_omp_LIBRARY "/usr/lib64/libomp.so" CACHE PATH "" FORCE) set(OpenMP_omp_LIBRARY "libomp.so" CACHE PATH "" FORCE)

View File

@ -0,0 +1,17 @@
# preset that turns on packages with automatic downloads of sources of potentials
# compilation of libraries like Plumed or ScaFaCoS can take a considerable amount of time.
set(ALL_PACKAGES KIM LATTE MSCG VORONOI USER-PLUMED USER-SCAFACOS USER-SMD USER-MESONT)
foreach(PKG ${ALL_PACKAGES})
set(PKG_${PKG} ON CACHE BOOL "" FORCE)
endforeach()
set(DOWNLOAD_KIM ON CACHE BOOL "" FORCE)
set(DOWNLOAD_LATTE ON CACHE BOOL "" FORCE)
set(DOWNLOAD_MSCG ON CACHE BOOL "" FORCE)
set(DOWNLOAD_VORO ON CACHE BOOL "" FORCE)
set(DOWNLOAD_EIGEN3 ON CACHE BOOL "" FORCE)
set(DOWNLOAD_PLUMED ON CACHE BOOL "" FORCE)
set(DOWNLOAD_SCAFACOS ON CACHE BOOL "" FORCE)

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