Parrinello-Rahman barostat for modular simulator (leap-frog)
authorPascal Merz <pascal.merz@me.com>
Sun, 22 Sep 2019 07:37:29 +0000 (01:37 -0600)
committerPascal Merz <pascal.merz@me.com>
Mon, 23 Sep 2019 15:50:35 +0000 (09:50 -0600)
commitbb621b833b0f88258761bfd8b034df332b7a02d5
treef42aa608f87991da0c6213378eb0f95b4b80d3b5
parent6983f2be5af4c8a0839a1b26a1f4862241c672f0
Parrinello-Rahman barostat for modular simulator (leap-frog)

This introduces the Parrinello-Rahman barostat for the leap-frog
version of the modular simulator. Mirroring the implementation in
the legacy do_md, this does not support md-vv. Implementing the
pressure coupling requires the virial calculation to be synchronized
with the pressure coupling, so this is included in the energy
signaller.

As the new integrator framework is not used by default, this
patch adds equivalence tests for md Parrinello-Rahman pressure
coupling.

Change-Id: Iaadd78a3da1ee2b04978ab7c7a7caecbb03181e2
src/gromacs/modularsimulator/energyelement.cpp
src/gromacs/modularsimulator/energyelement.h
src/gromacs/modularsimulator/modularsimulator.cpp
src/gromacs/modularsimulator/parrinellorahmanbarostat.cpp [new file with mode: 0644]
src/gromacs/modularsimulator/parrinellorahmanbarostat.h [new file with mode: 0644]
src/gromacs/modularsimulator/propagator.cpp
src/gromacs/modularsimulator/propagator.h
src/gromacs/modularsimulator/signallers.cpp
src/gromacs/modularsimulator/signallers.h
src/programs/mdrun/tests/simulator.cpp