|Gromacs| 2016.3 Release Notes ------------------------------ This version was released on March 14, 2017. These release notes document the changes that have taken place in |Gromacs| since version 2016.2 to fix known issues. It also incorporates all fixes made in version 5.1.4 and several since. Fixes where mdrun could behave incorrectly ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Fixed mdrun with separate PME ranks hanging upon exit """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" A recent fix for another issue led to mdrun hanging while communicating with PME ranks to coordinate end-of-run performance statistics. :issue:`2131` Fixed handling of previous virials with md-vv integrator """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" These quantities get written to checkpoint files only for the Trotter pressure-coupling integrators that need them, but they were being copied in do_md for all Trotter integrators. This meant that an appending restart of md-vv plus nose-hoover plus no pressure coupling truncated off a correct edr frame and wrote one with zero virial and wrong pressure. And in the same case, a no-append restart writes a duplicate frame that does not agree with the one written before termination. :issue:`1793` Fixed an incorrect check that nstlog != 0 for expanded ensembles """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" The original version was accidentally reversed, causing it to fail when nstlog was not equal to 0. Fixes for ``gmx`` tools ^^^^^^^^^^^^^^^^^^^^^^^ Fixed ``gmx tune_pme`` detection of GPU support """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Fixed spacing in ``gmx tune_pme`` call to thread-MPI mdrun """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Fixed minor issues in ``gmx traj -av -af`` """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Made the description of the xvg y-axis more useful. Also works for option ``-af``. :issue:`2133` Removed rogue printing to xvg file in gmx mindist """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" ``gmx mindist -xvg`` none is now adhered to, and printing is preceded by a comment. :issue:`2129` Fixed bug in ``gmx solvate -shell`` if it yielded 0 SOL. """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" In the transition from genbox to solvate, some incorrect logic was introduced. :issue:`2119` Corrected output of ``gmx do_dssp -sc`` """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" This code has always written a probability, and not a percentage, so fixed the label. It still fits within the expected 8-character field. :issue:`2120` Improved documentation ^^^^^^^^^^^^^^^^^^^^^^ Made several minor improvements to documentation and messages to users """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Removed documentation of unimplemented ``gmx trjconv -clustercenter``. Introduced system preparation section to user guide, to create somewhere to document the use and limitations of vdwradii.dat. Enchanced documentation of solvate and insert-molecules, similarly. :issue:`2094` Documented that we now support AMD GCN on Mesa/LLVM """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" AMD GPUs using Mesa 17.0+ and LLVM 4.0+ run |Gromacs| using OpenCL. Documented running Clang static analyzer manually """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Portability enhancements ^^^^^^^^^^^^^^^^^^^^^^^^ Enabled avx512 in the |Gromacs| FFTW build only if the compiler supports it """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Enabling avx512 requires GCC 4.9 or newer or Clang 3.9 or newer. Since we support compilers older than those, we can not afford to enable avx512 in ``GMX_BUILD_OWN_FFTW=on`` unconditionally. Worked around false positives in SIMD test from bug in xlc 13.1.5 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" atan2(0,0) should return 0.0, which the |Gromacs| simd implementation does. However, since at least one compiler produces -nan for the standard library version it's better to compare with the known correct value rather than calling std:atan2(0,0). :issue:`2102` Fixed compile with icc of ``GMX_SIMD=None`` """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" ICC defines invsqrt in math.h