Fix dHdl and foreign energy clearing at checkpointing
[alexxy/gromacs.git] / src / gromacs / mdlib / mdebin_bar.cpp
index a0db60909977cca9e8698b79871310818362bda6..4589a85683fa4177f7c215ad53196b6ee0379128 100644 (file)
@@ -3,7 +3,8 @@
  *
  * Copyright (c) 1991-2000, University of Groningen, The Netherlands.
  * Copyright (c) 2001-2004, The GROMACS development team.
- * Copyright (c) 2013,2014,2015,2016,2017,2018,2019, by the GROMACS development team, led by
+ * Copyright (c) 2013,2014,2015,2016,2017 by the GROMACS development team.
+ * Copyright (c) 2018,2019,2020, by the GROMACS development team, led by
  * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
  * and including many others, as listed in the AUTHORS file in the
  * top-level source directory and at http://www.gromacs.org.
@@ -729,7 +730,7 @@ void mde_delta_h_coll_update_energyhistory(const t_mde_delta_h_coll* dhc, energy
     {
         std::vector<real>& dh = deltaH->dh[i];
         dh.resize(dhc->dh[i].ndh);
-        std::copy(dh.begin(), dh.end(), dhc->dh[i].dh);
+        std::copy(dhc->dh[i].dh, dhc->dh[i].dh + dhc->dh[i].ndh, dh.begin());
     }
     deltaH->start_time   = dhc->start_time;
     deltaH->start_lambda = dhc->start_lambda;