alexxy/gromacs.git
11 years agodon't execute any mpi_info/mpiname in the path
Szilard Pall [Fri, 2 Nov 2012 02:27:52 +0000 (03:27 +0100)]
don't execute any mpi_info/mpiname in the path

During MPI setup, the gmxManageMPI.cmake script uses mpi_info/mpiname to
check for and warn about potentially problematic versions. However,
executing these binatries without any path can lead to false positive
warnings e.g. in case if the MPI installation in used does not provide
mpi_info, but another MPI installation's mpi_info is in the path
(which is the case with MacPorts OpenMPI + Xcode's MPI).

To avoid these false positives we don't execute any other
mpi_info/mpiname but the ones found at the same path where the MPI
compiler wrapper resides (if any).

Change-Id: Icd2091dd952f4a140b92045f95a8d0187c1a354f

11 years agoFix DEB/RPM cpack generation
Roland Schulz [Sun, 21 Oct 2012 22:03:40 +0000 (18:03 -0400)]
Fix DEB/RPM cpack generation

Change-Id: I4df6bf81d91f2027ee2b1849edafbaac717f3704

11 years agoActually disable GPU when compiling in double
Christoph Junghans [Thu, 1 Nov 2012 03:40:51 +0000 (21:40 -0600)]
Actually disable GPU when compiling in double

Change-Id: Iefb877f066c5f1b923bb7771323fedff9c1b85dc

11 years agofix internal/external OpenMP thread affinity clash
Szilard Pall [Mon, 24 Sep 2012 21:54:50 +0000 (23:54 +0200)]
fix internal/external OpenMP thread affinity clash

Thread affinity set by the OpenMP library, either automatically or
requested by the user through environment variables, can conflict with
the mdrun internal affinity setting.
To avoid performance degradation, as Intel OpenMP has affinity setting
on by default, we will explicitly disable it unless the user manually
set OpenMP affinity through one of the KMP_AFFINITY or GOMP_CPU_AFFINITY
environment variables. If any of these variables is set, we honor the
externally set affinity and turn off the internal one.

Change-Id: I78c6347154d6f11695ee04243db17bbb2e5cb0a7

11 years agoFix that no OpenMP flags are used with GMX_OPENMP=no
Roland Schulz [Mon, 8 Oct 2012 21:14:47 +0000 (17:14 -0400)]
Fix that no OpenMP flags are used with GMX_OPENMP=no

If OpenMP flags were set because find_package(OpenMP) could
find something but GMX_OPENMP was false (either set by user
or because find_package(OpenMP) was only partial succesful)
then compiler or linker flags was set which were not needed.
This could cause undefined OpenMP linker errors with
GMX_OPENMP=no.

Fixes part of #1021

Change-Id: I9b66a8c89a84374081886cd2eeb46c87664c1e39

11 years agoFix usage of CMAKE_REQUIRED_*
Roland Schulz [Fri, 19 Oct 2012 02:14:20 +0000 (22:14 -0400)]
Fix usage of CMAKE_REQUIRED_*

Always reset all variables.
Only require libm if it is avaiable (only on Unix)

Also prefer usage of _finite. ICC on Windows gives warnings
for isfinite (we don't inlude mathimf.h).

Fixes #998

Change-Id: Ib7c064aaf6d26d2ab96f5e88345091a2eb096998

11 years agoMerge "fixed incorrect PME load balancing limitation" into release-4-6
Roland Schulz [Fri, 26 Oct 2012 19:13:46 +0000 (21:13 +0200)]
Merge "fixed incorrect PME load balancing limitation" into release-4-6

11 years agoMerge "enable GMX_PREFER_STATIC_LIBS CMake option on Mac OS X" into release-4-6
Christoph Junghans [Fri, 26 Oct 2012 18:52:14 +0000 (20:52 +0200)]
Merge "enable GMX_PREFER_STATIC_LIBS CMake option on Mac OS X" into release-4-6

11 years agoMerge "fix false positive gcc 4.7 warning in libxdrf" into release-4-6
Christoph Junghans [Fri, 26 Oct 2012 18:50:39 +0000 (20:50 +0200)]
Merge "fix false positive gcc 4.7 warning in libxdrf" into release-4-6

11 years agofixed incorrect PME load balancing limitation
Berk Hess [Fri, 26 Oct 2012 16:24:18 +0000 (18:24 +0200)]
fixed incorrect PME load balancing limitation

PME load balancing would not work with -dlb=auto but DD-DLB not active (yet).
Also fixed incorrect cut-off in PME DLB limited message.

Change-Id: I717981743403de36c747108e0c3e907d6213be10

11 years agoMerge "set the default for nstdhdl to 100" into release-4-6
Roland Schulz [Fri, 26 Oct 2012 14:55:26 +0000 (16:55 +0200)]
Merge "set the default for nstdhdl to 100" into release-4-6

11 years agoset the default for nstdhdl to 100
Berk Hess [Fri, 26 Oct 2012 13:03:19 +0000 (15:03 +0200)]
set the default for nstdhdl to 100

The default for nstdhdl was 10, which was not a multiple of the default
for nstcalcenergy (100). This caused a warning in grompp. Also 100 should
still result in correlated samples.
Removed nstfep from mdp_opt.html.

Change-Id: If9969f27b9dafb71a7c4a81b929ff3f9455f4cf8

11 years agofixed incorrect group energies with nbnxn CPU kernels
Berk Hess [Thu, 25 Oct 2012 11:35:18 +0000 (13:35 +0200)]
fixed incorrect group energies with nbnxn CPU kernels

Fixed two energy group indexing errors in the nbnxn CPU kernels.
The code has now been generalized and we avoid code duplication.

Change-Id: I524d0d2c86b54a92ae124f2c067ccef3daac1515

11 years agoMerge "fix CUDA non-bonded kernel pointer assignment" into release-4-6
Roland Schulz [Thu, 25 Oct 2012 18:40:27 +0000 (20:40 +0200)]
Merge "fix CUDA non-bonded kernel pointer assignment" into release-4-6

11 years agofix false positive gcc 4.7 warning in libxdrf
Szilárd Páll [Thu, 25 Oct 2012 12:06:00 +0000 (14:06 +0200)]
fix false positive gcc 4.7 warning in libxdrf

Change-Id: Ied3b07dca011ca142455c328cba25b0b01eadb8c

11 years agoenable GMX_PREFER_STATIC_LIBS CMake option on Mac OS X
Szilárd Páll [Wed, 24 Oct 2012 00:44:10 +0000 (02:44 +0200)]
enable GMX_PREFER_STATIC_LIBS CMake option on Mac OS X

Change-Id: Ifa01573e514bc1a167095023e26c77829eda7b42

11 years agofixed bondfree.c thread safety with free energy
Berk Hess [Fri, 12 Oct 2012 12:54:22 +0000 (14:54 +0200)]
fixed bondfree.c thread safety with free energy

Change-Id: Ib9e60f1282fab98b6a930d19bd45fe21049964ce

11 years agoMerge "moved part of nbnxn_search.c to nbnxn_atomdata.c" into release-4-6
Roland Schulz [Tue, 23 Oct 2012 20:17:20 +0000 (22:17 +0200)]
Merge "moved part of nbnxn_search.c to nbnxn_atomdata.c" into release-4-6

11 years agoMerge "fixed incorrect LJ energy with GPU and PME load balancing" into release-4-6
Roland Schulz [Tue, 23 Oct 2012 17:43:46 +0000 (19:43 +0200)]
Merge "fixed incorrect LJ energy with GPU and PME load balancing" into release-4-6

11 years agomoved part of nbnxn_search.c to nbnxn_atomdata.c
Berk Hess [Thu, 11 Oct 2012 16:14:05 +0000 (18:14 +0200)]
moved part of nbnxn_search.c to nbnxn_atomdata.c

Change-Id: I257c4e9256373b6ddad80a99b31ce1b6789c928c

11 years agoReplace sprintf with snprintf to make safe
Roland Schulz [Tue, 23 Oct 2012 07:23:24 +0000 (03:23 -0400)]
Replace sprintf with snprintf to make safe

The sprintf could cause buffer overflows for large numbers.

Change-Id: I3cc3554710e199c9f961bd68b444836863a9469f

11 years agofixed incorrect LJ energy with GPU and PME load balancing
Berk Hess [Mon, 22 Oct 2012 14:55:26 +0000 (16:55 +0200)]
fixed incorrect LJ energy with GPU and PME load balancing

Change-Id: Ied66016e0596aa8fb37f8ba2bc0cf5554d00f0ba

11 years agoMerge "added OpenMP parallelization for virtual sites" into release-4-6
Roland Schulz [Tue, 23 Oct 2012 03:08:08 +0000 (05:08 +0200)]
Merge "added OpenMP parallelization for virtual sites" into release-4-6

11 years agoadded OpenMP parallelization for virtual sites
Berk Hess [Thu, 18 Oct 2012 16:44:25 +0000 (18:44 +0200)]
added OpenMP parallelization for virtual sites

Change-Id: I67fd26a815358d4e6f08fea486a7e0932b629d23

11 years agofix CUDA non-bonded kernel pointer assignment
Szilard Pall [Mon, 22 Oct 2012 15:19:01 +0000 (17:19 +0200)]
fix CUDA non-bonded kernel pointer assignment

The plain cut-off kernel pointer was incorrectly set which caused kernel
launch error.

Change-Id: Id4d71c4e04e8775134ee95e5ebb8c79cda7e8bf8

11 years agoFix minor OpenMP issue for md-vv update
Roland Schulz [Sat, 13 Oct 2012 00:23:04 +0000 (20:23 -0400)]
Fix minor OpenMP issue for md-vv update

Conflicting writes to alpha. But because alpha is anyhow the same
value for all threads didn't cause a problem.

Change-Id: Icefbfa4454c38300629344057f1b5feb0ca8b01d

11 years agoFix clang 3.2 unintialized variable warnings
Roland Schulz [Fri, 19 Oct 2012 14:48:43 +0000 (10:48 -0400)]
Fix clang 3.2 unintialized variable warnings

All but gmx_sorient were false positives

Change-Id: I3a38b44ad377a929a469a6c6858c81bd77372cb1

11 years agoMerge "[tools] Allow g_dist to use default index group" into release-4-6
Roland Schulz [Fri, 19 Oct 2012 23:22:41 +0000 (01:22 +0200)]
Merge "[tools] Allow g_dist to use default index group" into release-4-6

11 years agoMerge "renamed constraint variables rmdr to vir_r_m_dr" into release-4-6
Kasson [Fri, 19 Oct 2012 23:13:05 +0000 (01:13 +0200)]
Merge "renamed constraint variables rmdr to vir_r_m_dr" into release-4-6

11 years agoMerge "renamed pme_switch... to pme_loadbal..." into release-4-6
Roland Schulz [Fri, 19 Oct 2012 18:26:28 +0000 (20:26 +0200)]
Merge "renamed pme_switch... to pme_loadbal..." into release-4-6

11 years agoMerge "Added thread affinity API to thread_mpi." into release-4-6
Roland Schulz [Thu, 18 Oct 2012 23:44:34 +0000 (01:44 +0200)]
Merge "Added thread affinity API to thread_mpi." into release-4-6

11 years agorenamed constraint variables rmdr to vir_r_m_dr
Berk Hess [Thu, 18 Oct 2012 10:12:22 +0000 (12:12 +0200)]
renamed constraint variables rmdr to vir_r_m_dr

Change-Id: Ie332cfdcae3f5b0c0067d8c9a337367395f6065f

11 years agoadded OpenMP parallelization to LINCS projection
Berk Hess [Fri, 12 Oct 2012 14:07:15 +0000 (16:07 +0200)]
added OpenMP parallelization to LINCS projection

Also fixed thread-safety of the LINCS warnings.

Change-Id: I77ded70e745f1e1a75ac1c2d54a34ab56c019770

11 years ago[tools] Allow g_dist to use default index group
Alexey Shvetsov [Thu, 18 Oct 2012 09:27:47 +0000 (13:27 +0400)]
[tools] Allow g_dist to use default index group

This should fix #1002

Change-Id: I93db5821bd2eb333f89c21d84f8f52eabc2a7dc3
Signed-off-by: Alexey Shvetsov <alexxy@omrb.pnpi.spb.ru>
11 years agorenamed pme_switch... to pme_loadbal...
Berk Hess [Tue, 16 Oct 2012 14:30:42 +0000 (16:30 +0200)]
renamed pme_switch... to pme_loadbal...

Also added and updated the mdrun PME load balacing reporting.

Change-Id: Ifa633ee9e1fc6a22f7792bbb6af7ad7da6192d14

11 years agoMerge "Make Gromacs compile without C++ compiler" into release-4-6
Kasson [Wed, 17 Oct 2012 01:32:43 +0000 (03:32 +0200)]
Merge "Make Gromacs compile without C++ compiler" into release-4-6

11 years agoMerge "made pair-search with GPU 20% faster" into release-4-6
Roland Schulz [Tue, 16 Oct 2012 17:30:39 +0000 (19:30 +0200)]
Merge "made pair-search with GPU 20% faster" into release-4-6

11 years agoMade g_tune_pme read (ns/day) from 4.6 md.log output files
Carsten Kutzner [Tue, 16 Oct 2012 13:32:17 +0000 (15:32 +0200)]
Made g_tune_pme read (ns/day) from 4.6 md.log output files

Change-Id: I8a3f804ac71cd13b3e060aa7b42032fbbbd93dcd

11 years agomade pair-search with GPU 20% faster
Berk Hess [Tue, 16 Oct 2012 08:42:10 +0000 (10:42 +0200)]
made pair-search with GPU 20% faster

Also replaced more numbers by symbolic constants.

Change-Id: Ida0ef5c46b3fd1d6b4d8006598194e19a943b660

11 years agoAdded thread affinity API to thread_mpi.
Sander Pronk [Fri, 12 Oct 2012 16:29:54 +0000 (18:29 +0200)]
Added thread affinity API to thread_mpi.

thread_mpi can now set thread affinity on Linux and Windows. Currently
that is limited to setting the affinity of any thread (including those
not started with thread_mpi) to any single core. The OS's core numbering
is maintained.

Change-Id: If0b7aa443f7da206b320a2bde5bd771a441fb2cb

11 years agoMerge "Fixing issues with replica exchange" into release-4-6
David van der Spoel [Sat, 13 Oct 2012 19:31:04 +0000 (21:31 +0200)]
Merge "Fixing issues with replica exchange" into release-4-6

11 years agoFixed install-xxx functionality broken in 9628e27d
Mark Abraham [Sat, 13 Oct 2012 00:00:48 +0000 (11:00 +1100)]
Fixed install-xxx functionality broken in 9628e27d

Only the CPack component definitions needed fixing, inasmuch as they
are what is used for the "make install-xxx" functionality. I separated
"libraries" component into "libraries", "libraries-gmxpreprocess" and
"libraries-gmxana" for, respectively, the core gmx/md/etc. libraries,
and those particular to src/kernel programs and src/tools programs.
Now "make install-xxx" correctly compiles, links and installs only the
required dependencies, and the wrong dependencies introduced in the
above commit are removed.

Fixes #1015

Change-Id: I3e848e69d126305943370d1f294e44d5389e1934

11 years agoMerge "Fix illegal barrier in worksharing" into release-4-6
Berk Hess [Fri, 12 Oct 2012 12:46:18 +0000 (14:46 +0200)]
Merge "Fix illegal barrier in worksharing" into release-4-6

11 years agoFix illegal barrier in worksharing
Roland Schulz [Fri, 12 Oct 2012 04:54:02 +0000 (00:54 -0400)]
Fix illegal barrier in worksharing

According to section 2.10 of the OpenMP standard:
  A barrier region may not be closely nested inside a worksharing
  ... region.

Replaced parallel-for with parallel plus gmx_omp_get_thread_num.

Fixes #937

Change-Id: Ief31f2097fb084d405e5981913cce2c2bfee868c

11 years agoFixing issues with replica exchange
Michael Shirts [Tue, 11 Sep 2012 03:11:49 +0000 (23:11 -0400)]
Fixing issues with replica exchange

Avoids unnecessary communication, clarifies variable names, restores
exchange statistics removed in c7a82654, fixes memory leaks, and some
other minor house-keeping noticed by Mark Abraham.

Fixes #1001

Change-Id: I8a9032e5946117d87f672e16cba525c5ed9720f9

11 years agofixed header for 3rd party apps
Christoph Junghans [Wed, 10 Oct 2012 15:41:58 +0000 (17:41 +0200)]
fixed header for 3rd party apps

Change-Id: Iaeb900134bfd5cdba2584c256ba04e0208f9ee84

11 years agoMake Gromacs compile without C++ compiler
Roland Schulz [Mon, 8 Oct 2012 23:05:48 +0000 (19:05 -0400)]
Make Gromacs compile without C++ compiler

Fixes that OpenMP is enabled if C compiler supports OpenMP
but C++ compiler does not.

Partially fixes #1021

Change-Id: I4bb109801ee57aac4826881022c34240768a841e

11 years agomade non-bonded potential shifts mdp options
Berk Hess [Mon, 8 Oct 2012 20:38:43 +0000 (22:38 +0200)]
made non-bonded potential shifts mdp options

Change-Id: I03e500c28ebd677917571cca7a7551523f9eb3af

11 years agoFix incorrect free
Roland Schulz [Sat, 6 Oct 2012 22:59:36 +0000 (18:59 -0400)]
Fix incorrect free

introduced by 23ca07b5 / 7b6508e8

Change-Id: I713827221923270f8ba94b3ed33ee126f3ce084c

11 years agofixed backward compatibility of tpr files with dihres
Berk Hess [Mon, 1 Oct 2012 13:31:13 +0000 (15:31 +0200)]
fixed backward compatibility of tpr files with dihres

Change-Id: Ic3104db7fd401d7bf7022da1aeeea49ca8955320

11 years agoAdded two #defines that state the gromacs API + program version.
Sander Pronk [Tue, 2 Oct 2012 13:27:46 +0000 (15:27 +0200)]
Added two #defines that state the gromacs API + program version.

Added two #defines in a new CMake-generated header file version.h:
GMX_API_VERSION, and GMX_VERSION so third-party tools can provide some
backward compatibility through

  #if !defined(GMX_API_VERSION) || (GMX_API_VERSION < 40600)
    ....  <do 4.5 specific stuff>
  #elif (GMX_API_VERSION < 40700)
    ....  <do 4.6 specific stuff>
  #endif

For now (pre-5.0), version.h is included in typedefs.h, which should
already be included in most gromacs-compatible code.

The API version is a separate CMake variable that currently gets its
value from the major+minor release version.

Change-Id: I9898cf378216d63c1456ce6566a2e42774fc1a0c

11 years agoimproved the energy conservation with SETTLE
Berk Hess [Mon, 24 Sep 2012 16:51:54 +0000 (18:51 +0200)]
improved the energy conservation with SETTLE

Change-Id: Ib1c7dce6a353d80b396b86597ef842a6f4dc6d30

11 years agoadded Verlet scheme and NxN non-bonded functionality
Szilard Pall [Tue, 2 Oct 2012 10:27:00 +0000 (12:27 +0200)]
added Verlet scheme and NxN non-bonded functionality

This commit implements a new "Verlet" cutoff scheme which uses
a exact cut-offs and standard Verlet lists with an automatically
calculated buffer.

The Verlet code-path supports full multi-level heterogeneous
parallelization using MPI/thread-MPI, OpenMP multi-threading,
and GPU acceleration for the non-bonded calculations.

The non-bonded calculations with the Verlet scheme support highly
optimized CPU SIMD acceleration using SSE/AVX and GPU acceleration using
NVIDIA CUDA. The CPU kernels have been tested on and optimized for most
x86 architectures including recent ones like Intel Sandy/Ivy-Bridge and
AMD Bulldozer. The CUDA GPU kernels support hardware of compute
capability 2.0 and above and are optimized for both Fermi and Kepler
architectures.

The new search code has been added in nbnxn_search.c, new non-bonded
kernels in nbnxn_kernels and nbnxn_cuda:
- plain-C kernels: reference CPU implementation and reference GPU
  (emulation)
- x86 128- and 256-bit SIMD kernels (SSE2, SSE4.1, AVX_128, AVX_256
  intrinsics)
- CUDA (two versions: for recent and legacy toolkit/drivers)

This commit also implements some additional optimizations targeting
performance:
- SSE acceleration for dihedrals;
- automated PP/PME load balancing called "PME tuning" which optimizes
  the electrostatics cut-off to improve load balance between CPU and GPU
  or separate PP and PME processes;
- hardware detection and automated run-configuration selection.

Change-Id: I3e1a15331c174265ec086565b978ffd079df2aaa

11 years agoMerge release-4-5-patches into release-4-6
Roland Schulz [Mon, 1 Oct 2012 13:20:00 +0000 (09:20 -0400)]
Merge release-4-5-patches into release-4-6

Conflicts:
src/gmxlib/confio.c
src/gmxlib/copyrite.c
src/gmxlib/statutil.c
src/kernel/readir.c
src/kernel/repl_ex.c
src/kernel/runner.c

Change-Id: I3828c50f8166a6095ee64672cfd4380d3e4c86f6

11 years agoFix problems found by cppcheck 1.56
Roland Schulz [Sun, 30 Sep 2012 19:57:59 +0000 (15:57 -0400)]
Fix problems found by cppcheck 1.56

Doesn't fix all problems. New suppressions in Jenkins for 4.6
(so that I can upgrade without having to fix all):

  --suppress=uninitvar:src/gmxlib/md5.c --suppress=nullPointer:src/mdlib/mdebin_bar.c --suppress=nullPointer:src/gmxlib/oenv.c --suppress=nullPointer:src/gmxlib/selection/selhelp.c \
  --suppress=memleak:src/tools/levenmar.c --suppress=selfAssignment:src/gmxlib/nonbonded/nb_kernel_bluegene/* \
  --suppress=invalidPointerCast:src/gmxlib/checkpoint.c --suppress=invalidPointerCast:src/gmxlib/nonbonded/nb_kernel_sse2_single/* --suppress=invalidPointerCast:src/mdlib/fftpack.c \
  --suppress=obsoleteFunctionsusleep:*.c --suppress=obsoleteFunctionsctime_r:*.c --suppress=invalidPrintfArgType_sint:*.c invalidPrintfArgType_uint:*.c

The remaining nullPointer are false positives as far as I know.
Problems found in 4.6 (haven't run cppcheck on 4.5) but
applied to 4.5 because it is also affected.

Change-Id: I5c0b4bce52a0c9ff6ef4ba51721cdf5baff42814

11 years agoMerge "Fixed an off-by-one error in atom counting in gmx_dist." into release-4-5...
Christoph Junghans [Thu, 27 Sep 2012 20:13:40 +0000 (22:13 +0200)]
Merge "Fixed an off-by-one error in atom counting in gmx_dist." into release-4-5-patches

11 years agoMerge "Fix insolidangle selections near poles." into release-4-5-patches
Teemu Murtola [Thu, 27 Sep 2012 17:56:52 +0000 (19:56 +0200)]
Merge "Fix insolidangle selections near poles." into release-4-5-patches

11 years agoFixed an off-by-one error in atom counting in gmx_dist.
Sander Pronk [Wed, 26 Sep 2012 18:12:48 +0000 (20:12 +0200)]
Fixed an off-by-one error in atom counting in gmx_dist.

Replaced atom number in gmx_rmpbc with total number, so it can
accomodate distances between parts of molecules.

Change-Id: I6279c6ae6d61fd761c4d8d37a01c7d856742e6b8

11 years agoMerge "Fix REMD use of gmx_large_int_t for #steps variable" into release-4-5-patches
Christoph Junghans [Tue, 25 Sep 2012 01:45:03 +0000 (03:45 +0200)]
Merge "Fix REMD use of gmx_large_int_t for #steps variable" into release-4-5-patches

11 years agoAdd pdbname selection keyword.
Teemu Murtola [Mon, 24 Sep 2012 04:48:01 +0000 (07:48 +0300)]
Add pdbname selection keyword.

As a supporting change, remove trailing space from t_pdbinfo.atomnm, as
the trailing whitespace does not seem to be used anywhere.
This makes it possible to use it easily in the selection code.

Fixes #1007; fix backported from Iac36bda8.

Also includes changes from 8bddac3 to make the backport easier.

Change-Id: Iac36bda8a84d0a6c131445e7f47ad91d7209fb10

11 years agoMerge "Fixed segfault with FE code for older tpr files." into release-4-6
Kasson [Mon, 24 Sep 2012 04:55:31 +0000 (06:55 +0200)]
Merge "Fixed segfault with FE code for older tpr files." into release-4-6

11 years agoFix REMD use of gmx_large_int_t for #steps variable
Mark Abraham [Mon, 24 Sep 2012 02:06:37 +0000 (12:06 +1000)]
Fix REMD use of gmx_large_int_t for #steps variable

Change-Id: I0a72a8b838de4d018c2715f9d620a86134969206

11 years agoFixes for numeric and position selection variables.
Teemu Murtola [Tue, 18 Sep 2012 05:11:47 +0000 (08:11 +0300)]
Fixes for numeric and position selection variables.

Fixed handling of numeric and position selection variables in cases
where they were referenced multiple times.

Backported from Ifbb585ca.

Fixes #1006.

Change-Id: Ieaa479b4b870e044dc269339be57f6b33533c46e

11 years agoMade construction of parallel filenames less noisy
Mark Abraham [Mon, 17 Sep 2012 13:45:35 +0000 (23:45 +1000)]
Made construction of parallel filenames less noisy

Berk introduced this in 6b4a52fc, but it is not essential to the
function there, is not very useful for the user, and spams the stdout
with every possible filename for every simulation in (say) a
multi-simulation.

Change-Id: Ifd017c3907f6a46a4f86ac9bc06c5983a5dea946

11 years agoFix insolidangle selections near poles.
Teemu Murtola [Fri, 14 Sep 2012 17:28:29 +0000 (20:28 +0300)]
Fix insolidangle selections near poles.

- Correctly treat cases where a point is so close the one of the poles
  that it completely covers one or more bins in the zenith angle
  direction.
- Adjust update_surface_bin() to be more robust to rounding errors and
  easier to understand by simplifying the code used for wrapping angles
  to [-pi, pi] interval.  Problems were triggered here by the first
  change.
- Update comments.

Fixes #1004.

Change-Id: I2707f775793fabb64ea197bdae5fbfe68d6a8933

11 years agoMerge "Fix some memory leaks." into release-4-5-patches
Kasson [Sat, 15 Sep 2012 15:04:38 +0000 (17:04 +0200)]
Merge "Fix some memory leaks." into release-4-5-patches

11 years agoMerge "Adapted NMR related data to new pdb format." into release-4-5-patches
David van der Spoel [Sat, 15 Sep 2012 12:52:22 +0000 (14:52 +0200)]
Merge "Adapted NMR related data to new pdb format." into release-4-5-patches

11 years agoMerge "fixed recent bug with grompp check for P-R P-coupling" into release-4-5-patches
Christoph Junghans [Fri, 14 Sep 2012 15:47:05 +0000 (17:47 +0200)]
Merge "fixed recent bug with grompp check for P-R P-coupling" into release-4-5-patches

11 years agofixed recent bug with grompp check for P-R P-coupling
Berk Hess [Thu, 13 Sep 2012 16:34:12 +0000 (18:34 +0200)]
fixed recent bug with grompp check for P-R P-coupling

Fix for recent commit 57dac834

Change-Id: I5bc631d6db848c8702a65c42ae27f096804abbf7

11 years agoBackport of md-vv rerun check from c7a82654f2eb8992
Roland Schulz [Thu, 13 Sep 2012 16:41:47 +0000 (12:41 -0400)]
Backport of md-vv rerun check from c7a82654f2eb8992

Rerun in parallel with md-vv is broken. The check was added
in c7a82654f2eb8992 but also affects 4.5.

Fixes #1003

Change-Id: Ie0e200a8328b2baecd2eba9eea1453c65a668633

11 years agoFixed a deadlock in tMPI_Comm_free()
Sander Pronk [Thu, 13 Sep 2012 09:26:09 +0000 (11:26 +0200)]
Fixed a deadlock in tMPI_Comm_free()

Fixes a deadlock on overcommitted systems while calling tMPI_Comm_free(),
as first noticed by Roland.

Brings tMPI_Barrier()'s use of atomic variables and memory barriers
in line with the rest of the thread_mpi code.

Change-Id: I86613cdf3c657e907f1168feb544e534889d0557

11 years agoFix some memory leaks.
Teemu Murtola [Thu, 13 Sep 2012 04:20:42 +0000 (07:20 +0300)]
Fix some memory leaks.

Fixes part of #1004.

Change-Id: I22280999c5c3c40e8efae45461bd53bae8e2ff40

11 years agoSet valid build information if gmx_detectcpu fails
Roland Schulz [Wed, 5 Sep 2012 10:57:56 +0000 (06:57 -0400)]
Set valid build information if gmx_detectcpu fails

If gmx_detectcpu failed the error message was written
into the build info which could cause a compiler error.

Change-Id: Id7e367595c14270dc8fa91daa97ce13a4c686057

11 years agoMerge "Don't fail linking if man page building fails" into release-4-6
Mark Abraham [Wed, 12 Sep 2012 00:17:28 +0000 (02:17 +0200)]
Merge "Don't fail linking if man page building fails" into release-4-6

11 years agoupdated references
Christoph Junghans [Mon, 10 Sep 2012 23:07:21 +0000 (17:07 -0600)]
updated references

Change-Id: I74a53433b31c0d50524e0edb5865a8ef9fca1956

11 years agoMerge "Update use of CPack components and add install targets" into release-4-6
Roland Schulz [Mon, 10 Sep 2012 13:01:01 +0000 (15:01 +0200)]
Merge "Update use of CPack components and add install targets" into release-4-6

11 years agoCorrected REMD citation
Mark Abraham [Mon, 10 Sep 2012 09:52:22 +0000 (19:52 +1000)]
Corrected REMD citation

The Fukushima paper relates exclusively to MC and spin glasses.

Change-Id: I58c4eafbe41b0cbd1f3e4afac6f34458ed27eea2

11 years agoMerge "Fix VMD plugins on Windows" into release-4-6
Christoph Junghans [Fri, 7 Sep 2012 19:29:06 +0000 (21:29 +0200)]
Merge "Fix VMD plugins on Windows" into release-4-6

11 years agoMerge "Check that gmx_detectcpu runs correctly" into release-4-6
Christoph Junghans [Fri, 7 Sep 2012 19:28:31 +0000 (21:28 +0200)]
Merge "Check that gmx_detectcpu runs correctly" into release-4-6

11 years agoAdapted NMR related data to new pdb format.
David van der Spoel [Fri, 7 Sep 2012 19:13:22 +0000 (21:13 +0200)]
Adapted NMR related data to new pdb format.

Since gromacs had adopted the pdb output format to
some standard, the script to convert xplor files
with NMR restratints, such as can be downloaded from
the pdb do not work anymore. The script and accompanying
table have been updated to work with the new pdb format
and simultaneously the extra argument for a residue offset
has been removed. Now the script can be run like
xplor2gmx.pl conf.pdb < restraints.md > disre.itp

Change-Id: I7c3c8bd49b002e2bf0760f4226c913aa36d64611

11 years agoFix illegal call to MPI without being initialized
Roland Schulz [Thu, 6 Sep 2012 19:42:04 +0000 (15:42 -0400)]
Fix illegal call to MPI without being initialized

Introduced by babdd87ca126

Change-Id: I428ef8ce706cc3a23fc980fa54c3e26e7a6d68b2

11 years agoMerge "Fixed .g96 trajectory reading." into release-4-5-patches
Roland Schulz [Thu, 6 Sep 2012 17:04:48 +0000 (19:04 +0200)]
Merge "Fixed .g96 trajectory reading." into release-4-5-patches

11 years agoDon't fail linking if man page building fails
Roland Schulz [Wed, 5 Sep 2012 14:01:26 +0000 (10:01 -0400)]
Don't fail linking if man page building fails

If building of man page fails because binary cannot be
executed (e.g. undetected cross-compile) then fail
silently. A warning is printed when installing.
Only affects deverloper version (not source from cpack).

Change-Id: I9201d44a103602bb26a29b03d14ce08a0089540a

11 years agoCheck that gmx_detectcpu runs correctly
Roland Schulz [Wed, 5 Sep 2012 10:04:00 +0000 (06:04 -0400)]
Check that gmx_detectcpu runs correctly

If it doesn't run correctly set acceleration to None and
print warning. Same as check whether it compiled, which already
existed.

Change-Id: I59a2d531c41f931d162725540d5483b39aa7a3df

11 years agoFixed an undefined return value in tMPI_Scan()
Sander Pronk [Wed, 5 Sep 2012 09:36:23 +0000 (11:36 +0200)]
Fixed an undefined return value in tMPI_Scan()

As caught by Szilárd, the tMPI_Scan() return value was undefined
for rank==0. Also removed an unused variable in tMPI_Thread_create().

Change-Id: I0b15f55089f50e0c237635ad322c7d38ce82c275

11 years agoMerge "Fixes too many backup files for *.nroff files" into release-4-6
Christoph Junghans [Tue, 4 Sep 2012 16:42:00 +0000 (18:42 +0200)]
Merge "Fixes too many backup files for *.nroff files" into release-4-6

11 years agoMade tutorial slightly less confusing.
David van der Spoel [Tue, 4 Sep 2012 13:27:57 +0000 (15:27 +0200)]
Made tutorial slightly less confusing.

Change-Id: Ief3132a54770e8b3c3b69b24b5582ba321ccc5fd

11 years agoFixed .g96 trajectory reading.
Sander Pronk [Mon, 3 Sep 2012 11:58:25 +0000 (13:58 +0200)]
Fixed .g96 trajectory reading.

The line variable in .g96 configuration reading can now be made
persistent - and is done so for reading .g96 trajectories.

This commit fixes #781

Change-Id: If2005a00bb925b41802c4b0dc92e66eb5635f22c

11 years agoMerge "Document correct comm_mode option" into release-4-5-patches
Kasson [Mon, 3 Sep 2012 10:53:57 +0000 (12:53 +0200)]
Merge "Document correct comm_mode option" into release-4-5-patches

11 years agoMerge "Improved pdb2gmx output" into release-4-5-patches
Kasson [Mon, 3 Sep 2012 10:51:40 +0000 (12:51 +0200)]
Merge "Improved pdb2gmx output" into release-4-5-patches

11 years agoMerge branch 'release-4-5-patches' into release-4-6
Szilard Pall [Mon, 3 Sep 2012 10:40:56 +0000 (12:40 +0200)]
Merge branch 'release-4-5-patches' into release-4-6

Conflicts:
src/mdlib/tpi.c

Change-Id: I1b5d92291ece7cf3194b4e1d88cd686a5aa18696

11 years agoFix VMD plugins on Windows
Roland Schulz [Mon, 3 Sep 2012 02:49:27 +0000 (22:49 -0400)]
Fix VMD plugins on Windows

VMD libraries are named *.so even on Windows

Change-Id: I4502af3a716b79820502c70fcfe2fc68749a77fc

11 years agoFix stack error in grompp
Roland Schulz [Sun, 2 Sep 2012 16:26:22 +0000 (12:26 -0400)]
Fix stack error in grompp

vsiteatoms array was one to short

Fixes #997

Change-Id: I0897694dfc431a20bd1ebf769b24d09038d588b2

11 years agoUpdate use of CPack components and add install targets
Mark Abraham [Wed, 22 Aug 2012 08:21:34 +0000 (18:21 +1000)]
Update use of CPack components and add install targets

* Removed component runtime and replaced it with component "scripts",
a component for each tool, and the component group tools. This means
CPack is capable of dealing with a single tool, or with the whole
group.
* Moved gmxpreprocess library to libraries component.
* Created CPack dependencies so that shared libraries accompany
executables.
* Created non-CPack install targets for each GROMACS tool, e.g.
"make install-grompp". Shared libraries are installed with these
tools as appropriate. Using library suffices could be right here,
but that's the user's problem to solve.

Development, regression testing and bug testing is more convenient if
you can easily build and install just a subset of tools. This could
always have been done with CMake black magic, but these targets makes
lives easier. Also users can now easily install MPI or
double-precision flavours of selected tools as suitable.

Change-Id: I1053f7ff91d50169ac930f1ac5b84378d3ab2e67

11 years agoImproved pdb2gmx output
Mark Abraham [Fri, 31 Aug 2012 03:43:29 +0000 (13:43 +1000)]
Improved pdb2gmx output

Now there is explicit feedback that pdb2gmx is starting generating
hydrogens and termini, which can help the user deduce that problems
lie with those databases, and not necessarily the residue topology
database.

Change-Id: Ie4100b8586d6389a6965ea8cb09eb24cc4e7d3d9

11 years agoFixes too many backup files for *.nroff files
Roland Schulz [Thu, 30 Aug 2012 03:34:21 +0000 (23:34 -0400)]
Fixes too many backup files for *.nroff files

Problem introduced by 26bd5f7ac7af. nroff files are generated
automatically and one could get erorr message when 99 backup files
existed.

Change-Id: Ia0a5c7e04064a0d304266e1dc6af347d3e846864

11 years agobug fix for pme.c MPI_COMM_NULL fix dcf8b67e
Berk Hess [Wed, 29 Aug 2012 16:00:08 +0000 (18:00 +0200)]
bug fix for pme.c MPI_COMM_NULL fix dcf8b67e

Change-Id: Idb233db1337bcb881041caec96572e5df6183e6e

11 years agoDocument correct comm_mode option
Mark Abraham [Tue, 28 Aug 2012 01:16:19 +0000 (11:16 +1000)]
Document correct comm_mode option

Change-Id: I18d9896c51d486dfcc52e4d15b052d65de91426d

11 years agoNewer version of thread_mpi, with various fixes, including tMPI_Scan()
Sander Pronk [Tue, 21 Aug 2012 11:10:45 +0000 (13:10 +0200)]
Newer version of thread_mpi, with various fixes, including tMPI_Scan()

- Implements tMPI_Scan()
- Many doxygen fixes
- removed unused variables from atomic operations
- Added C++11 compatible thread and mutex class

Change-Id: I4cce48627fa846da3c599a7de64d3898c358390b

11 years agoFixed segfault with FE code for older tpr files.
Sander Pronk [Thu, 23 Aug 2012 09:16:05 +0000 (11:16 +0200)]
Fixed segfault with FE code for older tpr files.

Full all_lambda array wasn't allocated for gmx 4.5 tpr files, even
though the rest of the code depends on it.

Change-Id: I3e4b6273d9e769a430fffc95e3a9c94fb672f6f3