diff --git a/patches/qespresso-5.0.2.diff/PW/src/plugin_forces.f90 b/patches/qespresso-5.0.2.diff/PW/src/plugin_forces.f90 index 2eb91290e4..db2d6c40e0 100644 --- a/patches/qespresso-5.0.2.diff/PW/src/plugin_forces.f90 +++ b/patches/qespresso-5.0.2.diff/PW/src/plugin_forces.f90 @@ -19,19 +19,21 @@ SUBROUTINE plugin_forces() USE plugin_flags ! USE cell_base, ONLY : alat, at - USE ions_base, ONLY : tau, nat,amass + USE ions_base, ONLY : tau, nat, amass, ityp USE force_mod, ONLY : force,sigma USE control_flags, ONLY : istep USE ener, ONLY : etot ! IMPLICIT NONE ! - INTEGER:: i,j + INTEGER:: i,j,ia REAL(DP) :: at_plumed(3,3) REAL(DP) :: virial(3,3) REAL(DP) :: volume REAL(DP), ALLOCATABLE :: tau_plumed(:,:) + REAL(DP) :: masses_plumed(nat) ! + masses_plumed = 0.0_DP IF(use_plumed) then IF(ionode)THEN at_plumed=alat*at; ! the cell, rescaled properly @@ -44,9 +46,12 @@ SUBROUTINE plugin_forces() -at_plumed(1,2)*at_plumed(3,3)*at_plumed(2,1) & -at_plumed(1,3)*at_plumed(3,1)*at_plumed(2,2) virial=-sigma*volume - + ! the masses in QE are stored per type, see q-e//Modules/ions_base.f90 + do ia=1,nat + masses_plumed(ia)=amass(ityp(ia)) + end do CALL plumed_f_gcmd("setStep"//char(0),istep) - CALL plumed_f_gcmd("setMasses"//char(0),amass) + CALL plumed_f_gcmd("setMasses"//char(0),masses_plumed) CALL plumed_f_gcmd("setForces"//char(0),force) CALL plumed_f_gcmd("setPositions"//char(0),tau_plumed) CALL plumed_f_gcmd("setBox"//char(0),at_plumed) diff --git a/patches/qespresso-7.0.diff/PW/src/plugin_initialization.f90 b/patches/qespresso-7.0.diff/PW/src/plugin_initialization.f90 index ed5ae7a26d..0b41434353 100644 --- a/patches/qespresso-7.0.diff/PW/src/plugin_initialization.f90 +++ b/patches/qespresso-7.0.diff/PW/src/plugin_initialization.f90 @@ -51,7 +51,7 @@ SUBROUTINE plugin_initialization() call plumed_f_gcmd("setPlumedDat"//char(0),"plumed.dat"//char(0)) call plumed_f_gcmd("setLogFile"//char(0),"PLUMED.OUT"//char(0)) call plumed_f_gcmd("setNatoms"//char(0),nat) - call plumed_f_gcmd("setMDEngine"//char(0),"qespresso"); + call plumed_f_gcmd("setMDEngine"//char(0),"qespresso"//char(0)); call plumed_f_gcmd("setTimestep"//char(0),dt); call plumed_f_gcmd("init"//char(0),0); diff --git a/patches/qespresso-7.2.diff/PW/src/plugin_initialization.f90 b/patches/qespresso-7.2.diff/PW/src/plugin_initialization.f90 index ed5ae7a26d..0b41434353 100644 --- a/patches/qespresso-7.2.diff/PW/src/plugin_initialization.f90 +++ b/patches/qespresso-7.2.diff/PW/src/plugin_initialization.f90 @@ -51,7 +51,7 @@ SUBROUTINE plugin_initialization() call plumed_f_gcmd("setPlumedDat"//char(0),"plumed.dat"//char(0)) call plumed_f_gcmd("setLogFile"//char(0),"PLUMED.OUT"//char(0)) call plumed_f_gcmd("setNatoms"//char(0),nat) - call plumed_f_gcmd("setMDEngine"//char(0),"qespresso"); + call plumed_f_gcmd("setMDEngine"//char(0),"qespresso"//char(0)); call plumed_f_gcmd("setTimestep"//char(0),dt); call plumed_f_gcmd("init"//char(0),0);