alexxy/gromacs.git
4 years agoGROMACS version 2019.4
Paul Bauer [Wed, 25 Sep 2019 09:47:18 +0000 (11:47 +0200)]
GROMACS version 2019.4

Set DOI strings.
Updated regressiontest hash

Change-Id: Ic63b9942083b122a3d5ce509da51a29a65aa89a6

4 years agoFix chain ID handling in make_ndx
Paul Bauer [Wed, 25 Sep 2019 14:36:01 +0000 (16:36 +0200)]
Fix chain ID handling in make_ndx

The tool was still using the oldest possible way to read in structure
files, leading to issues with the chain IDs being overwritten and
replaced with the default id.

Fixes #3070
Refs #3113

Change-Id: I25112103a043d0266fe64c7619fe8e4abc56ffa5

4 years agoAlways output correct kinetic at last step
Berk Hess [Mon, 30 Sep 2019 09:19:23 +0000 (11:19 +0200)]
Always output correct kinetic at last step

When the last step did not coincide with an energy calculation step,
the kinetic energy and temperature written to the energy and log
file were incorrect when using the leap frog integrator.

Fixes #2950

Change-Id: I9a0bc2280235f233a37cd3b2cd03d9d5067bd4f9

4 years agoActually fix gmx wham with angle geometries
Berk Hess [Mon, 30 Sep 2019 07:38:44 +0000 (09:38 +0200)]
Actually fix gmx wham with angle geometries

A previous fix for converting the force constant in gmx wham
for angle and dihedral geometry applied an incorrect conversion
factor.

Fixes #2609 and #3094

Change-Id: I0aa9b848c7fa62306ccf15b327a650b1ad88e03f

4 years agoFix gro file output with index groups
Mark Abraham [Thu, 26 Sep 2019 17:54:20 +0000 (19:54 +0200)]
Fix gro file output with index groups

The bug was found with editconf, but the issue was present in writing
of any gro file for which index groups were used (not just index
groups supplied by the user).

Fixes #3107

Change-Id: I3fc586c69066a354b3210d9616125ef666f1ce26

4 years agoLimit Zen nbnxm kernel choice to Zen 1
Berk Hess [Mon, 23 Sep 2019 11:33:21 +0000 (13:33 +0200)]
Limit Zen nbnxm kernel choice to Zen 1

Changed the Zen flag in gmx_hw_info_t to a Zen1 flag, so Zen 2,
and newer, is treated as a generic x86 AVX2 architecture.

Change-Id: I5a0fd73973416bbd8cd46422a6f22f1ad95d9924

4 years agoworkaround for rhel bug #1749463, cmake bug #18349
Christoph Junghans [Thu, 19 Sep 2019 22:54:41 +0000 (16:54 -0600)]
workaround for rhel bug #1749463, cmake bug #18349

MPI_C_COMPILE_FLAGS is a list instead of a string
see: https://gitlab.kitware.com/cmake/cmake/issues/18349
We mainly want to workaround this issue as RHEL 8 triggers it:
https://bugzilla.redhat.com/show_bug.cgi?id=1749463

This issue is fixed in cmake-3.12.3

Change-Id: I14c1c0a4f33f26b128d55baa1b0455f8a463a999

4 years agoFix incorrect shift forces for CMAP
Berk Hess [Sat, 21 Sep 2019 09:36:32 +0000 (11:36 +0200)]
Fix incorrect shift forces for CMAP

The shift force indices were inverted for the second and third
atom in the CMAP term, leading to incorrect virial and pressure
contributions when these atoms resided in different periodic images.

Fixes #2845 and #2867

Change-Id: I1946a1d375d6c62e4e6d23ee25b92b42a3d4a6f7

4 years agoFix CPU detection and SIMD on modern Mac/cmake combos
Erik Lindahl [Fri, 30 Aug 2019 19:39:21 +0000 (21:39 +0200)]
Fix CPU detection and SIMD on modern Mac/cmake combos

With recent versions of cmake on Mac, the CPU detection
program failed to compile since it was very fragile (buggy)
with respect to how compiler flags were defined - and that
in turn will mean losing all SIMD support.
This will fix the build, and it also adds a more vocal warning
if the CPU detection code cannot be compiled at all.

Change-Id: Idcdc8b59a4252b3faf8572311d2ca63a4d2a1bc0

4 years agoFix incorrect rvdw on GPU with rvdw<rcoulomb
Berk Hess [Mon, 19 Aug 2019 15:50:20 +0000 (17:50 +0200)]
Fix incorrect rvdw on GPU with rvdw<rcoulomb

When rvdw < rcoulomb was set in the mdp file, rvdw would initially
be set to rcoulomb on the GPU. With default mdrun settings,
the correct rvdw would be set after 2*nstlist steps by PME tuning.

TODO: Add an mdrun test case with rvdw<rcoulomb, refs #3062

Fixes #3056

Change-Id: I7243f27e75e46adedd668822dcd6b9045ef98a3f

4 years agoFix grompp constraints=all-angles with constraints
Berk Hess [Mon, 26 Aug 2019 14:46:00 +0000 (16:46 +0200)]
Fix grompp constraints=all-angles with constraints

When using the mdp option constraints=all-angles, angles involving
bonds supplied as constraints in the topology would be removed,
but not replaced by angle constraints.

Fixes #3067

Change-Id: I7db390785a23c67abb30ae98e12272f88f5d5af7

4 years agoDefault to AVX2_256 SIMD for Zen2
Erik Lindahl [Thu, 22 Aug 2019 21:42:15 +0000 (23:42 +0200)]
Default to AVX2_256 SIMD for Zen2

From Zen2, we should no longer use the previous
hack with 128-bit AVX2 since the microarchitecture
can now execute two full-width AVX2 instructions
per cycle. Rather than specializing for Zen2, the
logic has been changed so we only apply the 128-bit
optimization for the chips where we know it helps
(Zen and Zen+, based on the model numbers), while
we default to full-width AVX2 for all other AMD
CPUs - which for now is only Zen2.

Fixes #3061.

Change-Id: I66017b200cd627bb9792f53ee39dd80d8e05965a

4 years agoFix missing bonded forces with CUDA GPUs and DD
Berk Hess [Tue, 20 Aug 2019 06:56:43 +0000 (08:56 +0200)]
Fix missing bonded forces with CUDA GPUs and DD

Fixes issue #3063

Change-Id: Ibce7fa741a7d2171f61968f22a758b40f79a8759

4 years agoFix for MSVC+CUDA
Mark Abraham [Tue, 23 Jul 2019 19:46:51 +0000 (21:46 +0200)]
Fix for MSVC+CUDA

MSVC finds it hard to deal with template parameter packs in a few
situations. We don't test with MSVC+CUDA, but a user reports this works in that case.

Change-Id: Id576482facaaf40972ba4fd55b2afcba3113d0e8

4 years agoMade gmx disre work with non-consecutively labeled restraints
Berk Hess [Tue, 14 May 2019 14:17:21 +0000 (16:17 +0200)]
Made gmx disre work with non-consecutively labeled restraints

gmx disre assumed restraint were consecutively labeled starting at 0.

Refs #2953

Change-Id: I7d9c14d43854c88cb1cdec89fc297c64cbea8783

4 years agoSolve issue with demux.pl
yongwangCPH [Tue, 9 Jul 2019 13:57:59 +0000 (15:57 +0200)]
Solve issue with demux.pl

Changes printout format to resolve discontinuous trajectories
after 100ns simulation length when exchange stride is not a multiple
of 1 ps.

Change-Id: If6bd4d578ba08f9d4fd814b80e69896caf9079eb

4 years agoFix segmentation fault with cosine pulling
Berk Hess [Mon, 29 Jul 2019 11:45:34 +0000 (13:45 +0200)]
Fix segmentation fault with cosine pulling

Both grompp and mdrun would fail with a segmentation fault when
using cosine-weighted COM pulling.

Fixes #3023

Change-Id: I6342a579251d21ba07a42d23ce578ae1e20c3286

4 years agoFixed small bug in gmx anaeig
David van der Spoel [Mon, 8 Jul 2019 08:24:29 +0000 (09:24 +0100)]
Fixed small bug in gmx anaeig

Poor use of variable names led to a small bug.

Fixes #2972
Change-Id: I244eac13dbaeeb0eac2be6531e579a125f4a66d3

4 years agoFix link to acpype repository
Paul Bauer [Tue, 9 Jul 2019 08:31:45 +0000 (10:31 +0200)]
Fix link to acpype repository

Fix as reported on the user mailing list.

Change-Id: Ifdba6a60857360346653d3c9caaa929094bebae5

4 years agoFix issues found by clang-tidy 7
Paul Bauer [Mon, 8 Jul 2019 08:57:39 +0000 (10:57 +0200)]
Fix issues found by clang-tidy 7

Same issues as found for the master branch after switching the build
to run on a different machine.

Change-Id: Icf7589eae5ebc77d7974181e4faeea9e9fe8b9d7

4 years agoClarify wording of release notes
Mark Abraham [Tue, 2 Jul 2019 13:19:54 +0000 (15:19 +0200)]
Clarify wording of release notes

A query on gmx-users indicated that the previous wording was confusing
- someone thought it might have meant normal nonbonded interactions
didn't work.

Change-Id: I0481c42ae1667bb5841e9541551dd98f5650c3ae

4 years agoFix bug in gmx xpm2ps
Paul Bauer [Mon, 1 Jul 2019 09:17:04 +0000 (11:17 +0200)]
Fix bug in gmx xpm2ps

When not providing the name for a library input file the program would
try to create a null string and fail with an assertion failure.

Fixes #3012

Change-Id: Ifd69af5420cdac2f624246aee09f36219b3f6aeb

4 years agoDisable PME GPU on Apple OpenCL
Szilárd Páll [Thu, 25 Apr 2019 09:16:29 +0000 (11:16 +0200)]
Disable PME GPU on Apple OpenCL

Apple's OpenCL compiler seems to be unable to build a functional clFFT
which leads to a runtime error that aborts the runs rather than falling
back to PME-CPU. Hence this commit disabled PME-GPU on all Apple
platform builds.

Fixes #2941 #2719

Change-Id: I6afd19a56ced2e49d16ab598cd91527e6f73a1db

4 years agoPrepare for 2019.4
Paul Bauer [Wed, 12 Jun 2019 07:40:58 +0000 (09:40 +0200)]
Prepare for 2019.4

Reset DOI strings.

Change-Id: I1b5112bda4beb17e0f33276f60b8354b159858f0

4 years agoVersion 2019.3
Paul Bauer [Wed, 12 Jun 2019 07:36:58 +0000 (09:36 +0200)]
Version 2019.3

Added DOI strings.
Updated regressiontest hash.

Change-Id: If0a3389653dc3594a69886c8a9031af0dc9ddff2

4 years agoMerge branch release-2018 into release-2019
Paul Bauer [Fri, 14 Jun 2019 04:54:44 +0000 (06:54 +0200)]
Merge branch release-2018 into release-2019

Change-Id: I50c1c93898246a8cbb9198227e1e77d483393bab

4 years agoFix qsort not being defined on Apple Clang
Paul Bauer [Wed, 12 Jun 2019 13:44:08 +0000 (15:44 +0200)]
Fix qsort not being defined on Apple Clang

Change-Id: Iffcf002d44ef8f6d174886afc67d6926aa8f2faf

4 years agoInitialize all of gmx_domdec_comm_t
Mark Abraham [Wed, 29 May 2019 16:11:02 +0000 (18:11 +0200)]
Initialize all of gmx_domdec_comm_t

Many fields were left uninitizalized when C++ new was used, rather
than snew. All fields are now initialized to zero, false, or nullptr,
in some cases via aggregate initializations of arrays.  Moved the
field documentation to the line before the field and its initializer,
which reads better.

The initializers require another call to snew be replaced with one to
new[].

Fixes #2960

Change-Id: Ide917a47c667a8237519c2f4600bbce48c48f948

4 years agoFix residue and molecule indexing in selections
Paul Bauer [Tue, 14 May 2019 12:46:05 +0000 (14:46 +0200)]
Fix residue and molecule indexing in selections

The residue and molecule indexing did not account for the global
indices when building blocks from selections.

Also fixed a docs formatting issue noticed while working on the fix.

Fixes #2951

Change-Id: Ifa16f032822f5d96b6ff747333a7aed60b9a414d

4 years agoExtend information for gmxcpp syntax error.
Paul Bauer [Wed, 5 Jun 2019 14:04:17 +0000 (16:04 +0200)]
Extend information for gmxcpp syntax error.

Fixes #2911

Change-Id: I6d22c95d32993d5d640bf20031bfdc9c04c99604

4 years agoAllow AWH geometry 'direction' to be periodic
Berk Hess [Mon, 13 May 2019 12:39:16 +0000 (14:39 +0200)]
Allow AWH geometry 'direction' to be periodic

When an AWH dimension with pull geometry 'direction' has an interval
length (nearly) matching the periodic unit cell dimension, it is now
made periodic.

Fixes #2946

Change-Id: I9a09b8eb7464e04bd3d72059324bceb590e531f5

4 years agoAdd check for too many grid points in hbond
Paul Bauer [Mon, 3 Jun 2019 15:30:37 +0000 (17:30 +0200)]
Add check for too many grid points in hbond

Fixes #2962

Change-Id: I61e80f8f254f1b5a0d968af087a87361fe4554ae

4 years agoFix gmx wham with angle geometries
Berk Hess [Mon, 10 Jun 2019 09:12:28 +0000 (11:12 +0200)]
Fix gmx wham with angle geometries

Fixes #2609

Change-Id: I36156e1d8bb98499e4357eadc4ca56384da433a5

4 years agoFix reference SIMD memory alignment
Berk Hess [Tue, 14 May 2019 09:53:24 +0000 (11:53 +0200)]
Fix reference SIMD memory alignment

Fixes #2952

Change-Id: I86b82c3259986c12c59c0b741df705b4774efe05

5 years agoFix missing intermolecular interactions with DD
Berk Hess [Wed, 15 May 2019 11:43:07 +0000 (13:43 +0200)]
Fix missing intermolecular interactions with DD

When running with domain decomposition, all intermolecular interactions
(when present) were ignored.

Fixes #2953

Change-Id: I98783f4175b40fdfa6ad035323e0897e8caaee5c

5 years agoVersion 2018.7
Paul Bauer [Mon, 13 May 2019 08:40:23 +0000 (10:40 +0200)]
Version 2018.7

Updated regressiontest hash as usual.

Change-Id: Ibdd47ea72906e7696c67b5e2be6d327bf0d5deae

5 years agoWork around gcc 7 avx512 bug
Berk Hess [Thu, 16 May 2019 07:54:02 +0000 (09:54 +0200)]
Work around gcc 7 avx512 bug

Due to an avx512 loop vectorization bug in gcc 7, many non-bonded
interactions could be ignored when running with more than 16 OpenMP
threads.

Fixes #2762

Change-Id: I3e03fde7114542bbd43069166a6c74937fc0f986

5 years agoAdd more info for wrong line endings
Paul Bauer [Tue, 21 May 2019 08:31:42 +0000 (10:31 +0200)]
Add more info for wrong line endings

Adds  some more info for users that encounter preprocessing errors due
to wring line endings.

Change-Id: Id76404befdf598438f1b1fa5da98812cc31e3c5f

5 years agoFix PQR formatting
Paul Bauer [Tue, 21 May 2019 08:14:36 +0000 (10:14 +0200)]
Fix PQR formatting

Was still broken after the last fix a few months ago.

Fixes #2955

Change-Id: I55b1296918c723654db505d1797114e1358e5aeb

5 years agoFix membrane embedding
Paul Bauer [Thu, 9 May 2019 14:17:37 +0000 (16:17 +0200)]
Fix membrane embedding

Refactoring forgot to allocate some data, causing a segmentation fault.
More refactoring used wrong data, causing a crash further on.
Even more refactoring lead to invalid memory access.

Fixes #2947

Change-Id: I61ad3125102b50c0338e0935a75cd7b1de95bc3f

5 years agoFix SHAKE dH/dlambda contributions
Berk Hess [Thu, 23 May 2019 08:27:03 +0000 (10:27 +0200)]
Fix SHAKE dH/dlambda contributions

The constraint contributions to dH/dlambda would be incorrect
with more than one SHAKE block.

Refs #2434 abd #2879

Change-Id: I0cb30a9f61893ce57d76bac34e7352fe307efe4e

5 years agoRevert "Fixed dvdlambda for SHAKE + FE"
Mark Abraham [Thu, 16 May 2019 07:17:04 +0000 (09:17 +0200)]
Revert "Fixed dvdlambda for SHAKE + FE"

This broke normal simulations with SHAKE and does not seem
to fix anything with FEP simulations either.

This reverts commit 33093601ff229ed8c8a40e73866a7ff351e8963b.

Fixes #2879

Change-Id: Ib6e9b4fe2b65811e9f64c37e842fd0ed9cdb055c

5 years agoAdd check for allocating too many interactions
Paul Bauer [Tue, 21 May 2019 07:57:47 +0000 (09:57 +0200)]
Add check for allocating too many interactions

Also change argument to nbnxn reallocation function from int to
std::size_t to avoid signed integer overflow.

Fixes #2932

Change-Id: I97bdd825ba1e4d81b65b4e4c037f980164c571f2

5 years agoFix equation typo
Mark Abraham [Mon, 20 May 2019 21:28:33 +0000 (23:28 +0200)]
Fix equation typo

Change-Id: Ica8b72f0e423255c410aee3238aadfdc52f4d317

5 years agoCorrect user guide postion restraint virial
Berk Hess [Mon, 13 May 2019 13:56:19 +0000 (15:56 +0200)]
Correct user guide postion restraint virial

Corrected comment in the user guide note on virial and pressure
with position restraints and refcoord-scaling none or com.

Refs #2942

Change-Id: I3cdb5a01640c388f1c4222b1a43b342ac55fd882

5 years agoPrepare for 2018.7
Paul Bauer [Mon, 13 May 2019 08:30:54 +0000 (10:30 +0200)]
Prepare for 2018.7

Also add the release note update for Redmine issue 2845.

Change-Id: I63c6ef4bf4ea2d78741ab3bf77079ea257f1a205

5 years agoAdd an example of using an MPI wrapper compiler
Mark Abraham [Tue, 7 May 2019 07:09:56 +0000 (09:09 +0200)]
Add an example of using an MPI wrapper compiler

A long-time GROMACS user reported not being able to make an MPI build,
and this might help clue people in.

Change-Id: Ie3f442e126561bb5c6e1ae71fee650f2e18c21aa

5 years agoRemoved non-existent AWH mdp option
Berk Hess [Fri, 3 May 2019 13:23:37 +0000 (15:23 +0200)]
Removed non-existent AWH mdp option

Removed non-existent mdp option awh1-dim1-period from user guide.

Fixes #2940

Change-Id: I96c4f1e636e0d171561dcfcf1e17e7f0ce419f8b

5 years agoFix FPE in do_steep
Paul Bauer [Thu, 25 Apr 2019 11:50:14 +0000 (13:50 +0200)]
Fix FPE in do_steep

Fixes error when running non-interacting system in steepest decent
minimization.

Fixes #2917

Change-Id: Iaff794ab6c2d41e8c4b3d89feeafae6ae2372ddf

5 years agoPrepare for version 2019.3
Paul Bauer [Thu, 11 Apr 2019 08:49:50 +0000 (10:49 +0200)]
Prepare for version 2019.3

Reset DOI strings

Change-Id: Iddbafb48832b28eb862a9a7cbe632e9e7a6fdbf7

5 years agoVersion 2019.2
Paul Bauer [Thu, 11 Apr 2019 08:35:46 +0000 (10:35 +0200)]
Version 2019.2

Set DOI strings.
Updated regressiontest hash.

Change-Id: I87dd50fd154c4f10a04e48be0c4fbe60964395ff

5 years agoFix off-by-one error in gmx cluster
Paul Bauer [Mon, 15 Apr 2019 15:51:57 +0000 (17:51 +0200)]
Fix off-by-one error in gmx cluster

The writing of indices for linking frames to clusters was of by one.

Also fixed naming to refer to indices and not indexes

Fixes #2926

Change-Id: I67d7f8cae56734e425c84460080de8896f6239cb

5 years agoMake mdrun -nsteps work again.
Berk Hess [Fri, 8 Mar 2019 12:53:04 +0000 (13:53 +0100)]
Make mdrun -nsteps work again.

The mdrun -nsteps option was only functional in some cases,
because it modified ir->nsteps after the checkpoint loading
modified it.
Note that this option is deprecated, but is should either work
or be removed.

Fixes #2881

Change-Id: Ib611b0e007171f8a351f61f3ecc9b1bda5248486

5 years agoUpdate 2019 release notes for issue 2845
Berk Hess [Mon, 15 Apr 2019 11:31:31 +0000 (13:31 +0200)]
Update 2019 release notes for issue 2845

We now know that issue reported in 2845 is not actually related to
LJ force switching. So the "fix" in 2019.1 fixes a bug, but the
issue 2845. This is now reported in the release notes for 2019.1
and 2019.2.

Change-Id: I000c518850f970c0f9cc331df22afaa24d9a27bc

5 years agoAdd user guide note on AVX512 throttle in GPU runs
Szilárd Páll [Mon, 15 Apr 2019 09:50:35 +0000 (11:50 +0200)]
Add user guide note on AVX512 throttle in GPU runs

Refs #2793

Change-Id: I161f5b92a8a34989ecc1d49410033f9ea8f91164

5 years agoFix pdb-related issues
Berk Hess [Sat, 13 Apr 2019 10:00:06 +0000 (12:00 +0200)]
Fix pdb-related issues

In editconf, if a PDB input was read, chain IDs are known, and should
be written if the output is also PDB. This now works again, after
being broken in commit 8dd3c9ae88004054b3.

This required adding missing tpr support to readConfAndAtoms(), which
also fixes that pdb2gmx, insert-molecules, and solvate could not read
tpr files. Those are the only tools that directly or indirectly called
readConfAndAtoms with a .tpr file.

Fixes #2900

Change-Id: I883777be945023a7e69260b22e76df54477828ee

5 years agoDisallow pull geometry direction-periodic with AWH
Berk Hess [Mon, 15 Apr 2019 09:31:19 +0000 (11:31 +0200)]
Disallow pull geometry direction-periodic with AWH

Fixes #2923

Change-Id: Ic309a5598c69e82824d80270466a2de7b00e7d41

5 years agoFix self-consistency tests of hwloc data structures
Mark Abraham [Tue, 9 Apr 2019 12:51:44 +0000 (14:51 +0200)]
Fix self-consistency tests of hwloc data structures

These relied on assumptions of regularity that have been shown to be
violated in practice. The new tests check that there is a bijective
mapping of logical processors to valid hardware thread descriptors.

Fixes #2921

Change-Id: I31e998b7a2881c05dfb5c7c8b46550489cbdefd6

5 years agoImprove warning messages about duplicate definitions
Mark Abraham [Fri, 12 Apr 2019 16:27:29 +0000 (18:27 +0200)]
Improve warning messages about duplicate definitions

Because the warning is fatal, the wording with "overriding" is
misleading. An override only occurs if the warning is suppressed.

Email on gmx-users made clear that the word "overriding" is not clear
enough for all users to understand that more than one definition was
provided. They do not necessarily know that grompp has already read in
the force field definition. Typically a self-contained molecule .itp
file might override definitions found in the force-field (whether
duplicate or different). In such cases, the user needs to consider
what their intentions are and to express them clearly.

Change-Id: Ie73f1dbe1233d6fd0df41628c770b8f2ad1f1b1b

5 years agoFix typo in AVX512 detection code
Mark Abraham [Tue, 9 Apr 2019 12:50:47 +0000 (14:50 +0200)]
Fix typo in AVX512 detection code

Change-Id: I2fb425a1649ac7d06480831016d6c35e7e63ce6f

5 years agoFixed manual for dihedral restraints.
David van der Spoel [Fri, 29 Mar 2019 12:31:11 +0000 (13:31 +0100)]
Fixed manual for dihedral restraints.

The equations in the manual for dihedral restraints were incorrect
and inconsistent with the code in bonded.cpp.

Change-Id: I335f72cf81990e636366ae75f890df85c5053388

5 years agoFixes bug in l-bfgs.
Морозов Дмитрий [Wed, 3 Apr 2019 12:02:21 +0000 (15:02 +0300)]
Fixes bug in l-bfgs.

l-bfgs should now work excatly as it was in 4.6.5,
up-to some numerical precision in forces and energies.

Fixes #2641

Change-Id: I11a85a4241cc933fef94e2095dd8c3cbbb28b01b

5 years agoRevert "Temporarily disable ARM HPC compiler in post-submit"
Szilárd Páll [Thu, 4 Apr 2019 16:59:20 +0000 (18:59 +0200)]
Revert "Temporarily disable ARM HPC compiler in post-submit"

This reverts commit 2e63850dc17bc9f718344e68cd245c9c96a2256b.

Reason for revert: build slave software issues resolved.

Change-Id: I2a04afeeb51fe0177631c1bf55bed52ea2b0ea63

5 years agoFix segmentation fault with simulated annealing
Paul Bauer [Thu, 28 Feb 2019 09:39:57 +0000 (10:39 +0100)]
Fix segmentation fault with simulated annealing

Fix contributed by Daniel Fragiadakis.

Fixes #2871

Change-Id: I237d49f9996eb2ae869d59e4c39a6c2d33c9ece7

5 years agoTemporarily disable ARM HPC compiler in post-submit
Szilárd Páll [Mon, 1 Apr 2019 19:51:32 +0000 (21:51 +0200)]
Temporarily disable ARM HPC compiler in post-submit

Change-Id: I27a6699109e5d7ce3576200a3a977b7a63a305aa

5 years agoBetter document GMX_OPENMP_MAX_THREADS
Szilárd Páll [Mon, 25 Feb 2019 15:29:57 +0000 (16:29 +0100)]
Better document GMX_OPENMP_MAX_THREADS

Change-Id: I2c44f8b2331d69fde5fa242b5e53132813a2cb31

5 years agoFix UB vector usage
Roland Schulz [Tue, 26 Mar 2019 00:24:39 +0000 (17:24 -0700)]
Fix UB vector usage

Fixes a buffer overflow for c_simdBestPairAlignment=2.

Found with _LIBCPP_DEBUG=1.

Change-Id: Ib21ca875244673b27748a01373e7fc10252a7c44

5 years agoPrevented FFTW build errors with clang and AVX-512
Mark Abraham [Tue, 19 Mar 2019 09:23:18 +0000 (10:23 +0100)]
Prevented FFTW build errors with clang and AVX-512

FFTW hard-codes the inclusion of files that does not work with its
AVX-512 flags when using thee clang compiler, so in this case
GROMACS should compile without AVX-512 support.

Updated release notes, but didn't update the install guide for this
niche case.

Fixes #2892

Change-Id: Ida18fad66e654511937d51ee58f42440de2a321d

5 years agoProvide reminder of which nvcc is in use
Mark Abraham [Wed, 13 Mar 2019 08:59:27 +0000 (09:59 +0100)]
Provide reminder of which nvcc is in use

FindCUDA.cmake + the user might have combined to find an unexpected
nvcc, so we help everyone help themselves by outputting it here,
particularly if they report problems on the users list.

Change-Id: Ic951fa219c9133760a3c97ad2a92d65d64f03bfb

5 years agoFix formatting error in user guide reference
Paul Bauer [Tue, 12 Mar 2019 10:27:58 +0000 (11:27 +0100)]
Fix formatting error in user guide reference

Change-Id: I02a25bb81f9c30ee7ddf7ed6f3757cb494ac4f06

5 years agoAdd grompp warning with use of GROMOS FF
Berk Hess [Thu, 7 Mar 2019 17:41:25 +0000 (18:41 +0100)]
Add grompp warning with use of GROMOS FF

Replaced GROMOS-based simulation database entry with similar
OPLS-based one, since our test systems should not trigger warnings
unless that is the intent of the test.

Refs #2884

Change-Id: I55afcf7ea5b423fa27792acebe09ea520b475974

5 years agoFix ICC warnings
Roland Schulz [Fri, 8 Mar 2019 15:52:29 +0000 (07:52 -0800)]
Fix ICC warnings

Change-Id: I5170eacf9ac7590d2d72dbb1dac3316a1b2e8ab0

5 years agoAdd error when manual cannot be built
Paul Bauer [Sun, 24 Feb 2019 06:44:49 +0000 (07:44 +0100)]
Add error when manual cannot be built

Added error message informing the user why a manual build is not
possible if Sphinx is not installed.

Change-Id: I74765960ea5f5f642771e75ac349cf2b55d360a9

5 years agoRelax OpenCL gather kernel barrier on AMD
Szilárd Páll [Tue, 9 Oct 2018 00:56:23 +0000 (02:56 +0200)]
Relax OpenCL gather kernel barrier on AMD

Not needed on arch with >32 execution width.

Refs #2519

Change-Id: I4c8f2cff405cd3044bd60b99f01bcdd918dc5d0e

5 years agoMake OpenCL dummyKernel to require a input parameter
Jukka Maatta [Wed, 27 Feb 2019 15:03:52 +0000 (17:03 +0200)]
Make OpenCL dummyKernel to require a input parameter

This is a tentative fix for OpenCL error with mdrun on MacOS.
MacOS seems to require that kernel functions have at least one parameter.
Otherwise clBuildProgram fails with error -11.

Here dummyKernel takes an empty pointer in the definition.
We then pass an empty pointer to dummyKernel with clSetKernelArg.

Fixes #2865

Change-Id: Ib7c08eeeb2ec6d8a43bfe703cf1b273819a45a29

5 years agoKeep niche CMake variables as advanced
Mark Abraham [Tue, 26 Feb 2019 21:41:26 +0000 (13:41 -0800)]
Keep niche CMake variables as advanced

Change-Id: I99781749d9f4f481f7943a27c415af6b5c4ef5bc

5 years agoAdd new line to trjconv notice to users
Mark Abraham [Tue, 26 Feb 2019 22:38:21 +0000 (14:38 -0800)]
Add new line to trjconv notice to users

This line can be the final terminal output, and it looks ugly to give
the user a prompt on the same line.

Change-Id: Ie3830ba9a86979ab60094271894ebd1651aa6f34

5 years agoCorrect grompp index file error message
Berk Hess [Tue, 26 Feb 2019 14:07:18 +0000 (15:07 +0100)]
Correct grompp index file error message

Change-Id: I6b59c6d7e1d3a33054836f16d879d40e109eb8ee

5 years agoVersion 2018.6
Paul Bauer [Wed, 20 Feb 2019 10:09:13 +0000 (11:09 +0100)]
Version 2018.6

Added release notes for one change.
Updated regresiiontest hash.

Change-Id: Ifa207f9b270e835ba8c942e87e1fe156e6d204e0

5 years agoFix mass Delta H double counting
Berk Hess [Wed, 13 Feb 2019 08:55:35 +0000 (09:55 +0100)]
Fix mass Delta H double counting

With separate mass lambda parameters, the perturbed mass contribution
to Delta H (not dH/dlambda) was double counted. This was due to an
incorrect fix for issue #2703 for missing Delta H contribution.

Refs #2703
Fixes #2849

Change-Id: I1349260e1e90a17a6b7dbe0d239d9474dcfa928c

5 years agoFix incorrect LJ repulsion force switching on GPUs
Berk Hess [Thu, 31 Jan 2019 21:47:53 +0000 (22:47 +0100)]
Fix incorrect LJ repulsion force switching on GPUs

When using a CUDA or OpenCL GPU, the coefficient for the second order
term for the LJ repulsion in the force (not energy) switching function,
called 'A' in the manual, had the wrong sign in both the force-only
kernels and the force+energy kernels.
Note that the dispersion force switching was correct.

Cherry picked from 2019

Fixes #2845

Change-Id: Ib5c250a1f370d4c0a4fd652bf6efa03e70e18748

5 years agoFix release notes formatting
Paul Bauer [Fri, 15 Feb 2019 14:00:29 +0000 (15:00 +0100)]
Fix release notes formatting

Change-Id: Icea8712088068c14dbfcb20e403dd68f9aa11227

5 years agoPrepare for 2019.2
Paul Bauer [Wed, 13 Feb 2019 12:54:24 +0000 (13:54 +0100)]
Prepare for 2019.2

Reset doi strings.

Change-Id: I497ce4e5afe3a0f776dfba107e45d74bc51d4cc8

5 years agoDisable instruction fusion on Power8
Szilárd Páll [Thu, 7 Feb 2019 13:12:17 +0000 (14:12 +0100)]
Disable instruction fusion on Power8

The -mpower8-fusion flag seems to be the source of incorrect code; not
confirmed, but likely a codegen issue that also affects Power9 with the
similar flag used.

Fixes #2747 #2746 #2734

Change-Id: I56f50e54db47f4fe30c42488f4c4f79ac474518a

5 years agoChange icc-18 to no-hwloc
Paul Bauer [Sat, 9 Feb 2019 12:34:53 +0000 (13:34 +0100)]
Change icc-18 to no-hwloc

Made to avoid issue with hwloc installation on bs-nix1310.

Change-Id: I824aa9b64db86814df10328141dbd0fd47470e02

5 years agoVersion 2019.1
Paul Bauer [Wed, 13 Feb 2019 12:49:51 +0000 (13:49 +0100)]
Version 2019.1

Updated regression test hash.
Set DOI strings.

Change-Id: If56a4e81c853af49ebe6a908bb9cc8883d24a7bc

5 years agoImproved diagnostics when PME cannot run on GPUs
Mark Abraham [Thu, 14 Feb 2019 16:01:25 +0000 (17:01 +0100)]
Improved diagnostics when PME cannot run on GPUs

Fixes #2789, #2823

Change-Id: Iff7609a3774c11329d36bd8557b741a4d29f7c5a

5 years agoFix tune_pme
Paul Bauer [Thu, 14 Feb 2019 15:38:09 +0000 (16:38 +0100)]
Fix tune_pme

There was an issue with the file option for the tpr file being empty
that caused a segmentation fault.

Fixes #2827

Change-Id: I2702898d071d6e9325fa2e7ebb223b9043b7109e

5 years agoFix mass Delta H double counting
Berk Hess [Wed, 13 Feb 2019 08:55:35 +0000 (09:55 +0100)]
Fix mass Delta H double counting

With separate mass lambda parameters, the perturbed mass contribution
to Delta H (not dH/dlambda) was double counted. This was due to an
incorrect fix for issue #2703 for missing Delta H contribution.

Refs #2703
Fixes #2849

Change-Id: I1349260e1e90a17a6b7dbe0d239d9474dcfa928c

5 years agoExtend performance considerations on bonded offload
Szilárd Páll [Fri, 15 Feb 2019 01:09:39 +0000 (02:09 +0100)]
Extend performance considerations on bonded offload

Refs #2793

Change-Id: I4a8ae8554cf2aad540eb4eb485898f8cabeb3966

5 years agoFix use of selections referring to index groups
Mark Abraham [Tue, 29 Jan 2019 11:56:31 +0000 (12:56 +0100)]
Fix use of selections referring to index groups

Selections that refer only to groups in an index file do not require a
topology file. This (and other behaviours) was inadvertently broken
by the wrong implementation of the default constructor, because that
constructor is used in setting up the analysis environment.

The default constructor of TopologyInformation should establish the
intended invariant, namely that until a topology is loaded, topology
getters should return nullptr.

Fixed that constructor, and fixed the unit test that verifies that
behaviour. Since that test was added at the same time as a change to
the implementation of TopologyInformation in commit 264458c9, the
broken invariant wasn't noticed.

Added a test also to gmx rdf that verifies that the selection
behaviour is fixed.

Fixes #2847

Change-Id: I2149616e0248c6d5cdd5657a8292d2c3346614b9

5 years agoRevert changes to implementation of insert-molecules and solvate
Mark Abraham [Wed, 13 Feb 2019 14:24:04 +0000 (15:24 +0100)]
Revert changes to implementation of insert-molecules and solvate

This is a partial reversion of 5181f8d1, which made an inappropriate
dependency from preparation tools to TopologyInformation, which is
intended for analysis tools. This is needed in order to fix some
actual analysis tools that were broken by related changes to
TopologyInformation.

Unfortunately in 5181f8d1 readConformation was replaced with
TopologyInformation, and the former is no longer available. Instead,
readConfAndTopology is used in the same way that it was originally
used to implement readConformation. So the behaviour is reverted
even though the code looks different.

Refs #2847, #1862

Change-Id: I6e4900eea38b5c2e1b85b0d48427dabe26b09f9d

5 years agoImproved electric-field docs
Mark Abraham [Wed, 13 Feb 2019 17:44:26 +0000 (18:44 +0100)]
Improved electric-field docs

Change-Id: Ib1c6aa260f54a3933b1d80e375dc6ee007317473

5 years agoDisable instruction fusion on Power8
Szilárd Páll [Thu, 7 Feb 2019 13:12:17 +0000 (14:12 +0100)]
Disable instruction fusion on Power8

The -mpower8-fusion flag seems to be the source of incorrect code; not
confirmed, but likely a codegen issue that also affects Power9 with the
similar flag used.

Fixes #2747 #2746 #2734

Change-Id: I56f50e54db47f4fe30c42488f4c4f79ac474518a

5 years agoMove simulated tempering default setting
Paul Bauer [Tue, 5 Feb 2019 14:55:55 +0000 (15:55 +0100)]
Move simulated tempering default setting

Setting the default value for the simulated tempering when nstexpanded
was not specified in the mdp file was done before the values for the
temperature coupling are known. Moved this to a new location where the
value is known instead.

Added message to user in this case.

Refs #2754

Change-Id: I194829d5a817019da6d63a075e0dd7f4af8a4735

5 years agoDisallow rerun with perturbed masses or constraints
Berk Hess [Fri, 8 Feb 2019 09:57:48 +0000 (10:57 +0100)]
Disallow rerun with perturbed masses or constraints

Since rerun no longer integrates, free-energy contributions due to
changing masses and constraints are no longer computed. Now rerun
exits with a fatal error when such a system is provided.

Fixes #2849

Change-Id: Ic1550fce22f68c573b52d6895e1e61398b671e51

5 years agoRequire a 64-bit platform for OpenCL
Szilárd Páll [Sun, 6 Jan 2019 10:51:26 +0000 (11:51 +0100)]
Require a 64-bit platform for OpenCL

GROMACS requires a 64-bit OpenCL implementation as the PME code assumes
8-byte size cl_mem. Therefore, we require a 64-bit platform,
where pointers and therefore cl_mem will be of the assumed size.

Fixes #2821

Change-Id: I5fa60419a948e2cfdb344e7611b197550f866262

5 years agoFix segfault with EM, DD and group scheme
Berk Hess [Wed, 6 Feb 2019 12:39:55 +0000 (13:39 +0100)]
Fix segfault with EM, DD and group scheme

Resetting to an old DD state during EM would leave the cg sorting array
used with the group scheme in an invalid state. This could cause
out of bounds vector access one DD step after rejecting an EM step.

When merging this into master branch, prefer to change to use ssize
rather than the static_cast.

Fixes #2813

Change-Id: I7f13b46d7ff5352ce41838b813c46f2e90c93b1c

5 years agoFix incorrect LJ repulsion force switching on GPUs
Berk Hess [Thu, 31 Jan 2019 21:47:53 +0000 (22:47 +0100)]
Fix incorrect LJ repulsion force switching on GPUs

When using a CUDA or OpenCL GPU, the coefficient for the second order
term for the LJ repulsion in the force (not energy) switching function,
called 'A' in the manual, had the wrong sign in both the force-only
kernels and the force+energy kernels.
Note that the dispersion force switching was correct.

Fixes #2845

Change-Id: Ib5c250a1f370d4c0a4fd652bf6efa03e70e18748

5 years agoMerge remote branch release-2018 into release-2019
Mark Abraham [Wed, 30 Jan 2019 12:30:19 +0000 (13:30 +0100)]
Merge remote branch release-2018 into release-2019

Change-Id: Ie5a4add2fe010bc94c00418a728f01d3aac6cb9d