From a1d3c339d7f33569bc7c74a3dcbf8e3ca91abf79 Mon Sep 17 00:00:00 2001
From: Carlo Camilloni <carlo.camilloni@gmail.com>
Date: Wed, 22 Jun 2016 09:41:50 +0200
Subject: [PATCH] GMX507: patch updated to flush on checkpointing

---
 patches/gromacs-5.0.7.diff/src/programs/mdrun/md.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/patches/gromacs-5.0.7.diff/src/programs/mdrun/md.c b/patches/gromacs-5.0.7.diff/src/programs/mdrun/md.c
index 57f06b074..2d211367e 100644
--- a/patches/gromacs-5.0.7.diff/src/programs/mdrun/md.c
+++ b/patches/gromacs-5.0.7.diff/src/programs/mdrun/md.c
@@ -1154,6 +1154,8 @@ double do_md(FILE *fplog, t_commrec *cr, int nfile, const t_filenm fnm[],
             /* PLUMED */
             plumedNeedsEnergy=0;
             if(plumedswitch){
+              int pversion=0;
+              plumed_cmd(plumedmain,"getApiVersion",&pversion);
               long int lstep=step; plumed_cmd(plumedmain,"setStepLong",&lstep);
               plumed_cmd(plumedmain,"setPositions",&state->x[0][0]);
               plumed_cmd(plumedmain,"setMasses",&mdatoms->massT[0]);
@@ -1161,6 +1163,8 @@ double do_md(FILE *fplog, t_commrec *cr, int nfile, const t_filenm fnm[],
               plumed_cmd(plumedmain,"setBox",&state->box[0][0]);
               plumed_cmd(plumedmain,"prepareCalc",NULL);
               plumed_cmd(plumedmain,"setStopFlag",&plumedWantsToStop);
+              int checkp=0; if(bCPT) checkp=1;
+              if(pversion>3) plumed_cmd(plumedmain,"doCheckPoint",&checkp);
               plumed_cmd(plumedmain,"setForces",&f[0][0]);
               plumed_cmd(plumedmain,"isEnergyNeeded",&plumedNeedsEnergy);
               clear_mat(plumed_vir);
-- 
GitLab