From 1dfe1b9eb49a9afb1d57487900fb51790141b887 Mon Sep 17 00:00:00 2001 From: Adam Liwo Date: Fri, 12 Jun 2015 16:23:42 +0200 Subject: [PATCH] Fixed the homology gradient in finegrain mode --- source/unres/src_MD/Makefile_MPICH_ifort | 12 ++++++------ source/unres/src_MD/energy_p_new_barrier.F | 14 +++++++++++++- source/unres/src_MD/gradient_p.F | 8 ++++---- source/wham/src/enecalc1.F | 2 +- 4 files changed, 24 insertions(+), 12 deletions(-) diff --git a/source/unres/src_MD/Makefile_MPICH_ifort b/source/unres/src_MD/Makefile_MPICH_ifort index a747321..d6ae5dd 100644 --- a/source/unres/src_MD/Makefile_MPICH_ifort +++ b/source/unres/src_MD/Makefile_MPICH_ifort @@ -1,6 +1,6 @@ ################################################################### -#INSTALL_DIR = /users/software/mpich-1.2.7p1_intel-10.1_em64_ssh -INSTALL_DIR = /users/software/mpich2-1.4.1p1_intel +INSTALL_DIR = /users/software/mpich-1.2.7p1_intel-10.1_em64_ssh +#INSTALL_DIR = /users/software/mpich2-1.4.1p1_intel FC= ifort @@ -15,8 +15,8 @@ FFLAGSE = -c -O3 -ipo -opt_report -I$(INSTALL_DIR)/include #FFLAGSE = ${FFLAGS1} # -lmpl necessary in mpich -LIBS = -L$(INSTALL_DIR)/lib -lmpich xdrf/libxdrf.a -lmpl -CB -#LIBS = -L$(INSTALL_DIR)/lib -lmpich xdrf/libxdrf.a -CB +#LIBS = -L$(INSTALL_DIR)/lib -lmpich xdrf/libxdrf.a -lmpl -CB +LIBS = -L$(INSTALL_DIR)/lib -lmpich xdrf/libxdrf.a -CB ARCH = LINUX PP = /lib/cpp -P @@ -68,8 +68,8 @@ GAB: ${object} xdrf/libxdrf.a E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ -DSPLITELE -DLANG0 -E0LL2Y: BIN = ../../../bin/unres/MD/unres_ifort_MPICH2_E0LL2Y.exe -#E0LL2Y: BIN = ../../../bin/unres/MD/unres_ifort_MPICH_E0LL2Y.exe +#E0LL2Y: BIN = ../../../bin/unres/MD/unres_ifort_MPICH2_E0LL2Y.exe +E0LL2Y: BIN = ../../../bin/unres/MD/unres_ifort_MPICH_E0LL2Y.exe E0LL2Y: ${object} xdrf/libxdrf.a cc -o compinfo compinfo.c ./compinfo | true diff --git a/source/unres/src_MD/energy_p_new_barrier.F b/source/unres/src_MD/energy_p_new_barrier.F index 60cb90b..002f211 100644 --- a/source/unres/src_MD/energy_p_new_barrier.F +++ b/source/unres/src_MD/energy_p_new_barrier.F @@ -543,6 +543,7 @@ cMS$ATTRIBUTES C :: proc_proc include 'COMMON.TIME1' include 'COMMON.MAXGRAD' include 'COMMON.SCCOR' + include 'COMMON.MD' #ifdef TIMING #ifdef MPI time01=MPI_Wtime() @@ -813,6 +814,14 @@ c enddo #endif enddo enddo + if (constr_homology.gt.0) then + do i=1,nct + do j=1,3 + gradc(j,i,icg)=gradc(j,i,icg)+duscdiff(j,i) + gradx(j,i,icg)=gradx(j,i,icg)+duscdiffx(j,i) + enddo + enddo + endif #ifdef DEBUG write (iout,*) "gloc before adding corr" do i=1,4*nres @@ -6330,8 +6339,11 @@ c grad_theta3=sum_sgtheta/sum_gtheta 1/*theta(i)? s. line below c grad_theta3=sum_sgtheta/sum_gtheta c c Final value of gradient using same var as in Econstr_back - dutheta(i-2)=sum_sgtheta/sum_gtheta*waga_theta + gloc(nphi+i-2,icg)=gloc(nphi+i-2,icg) + & +sum_sgtheta/sum_gtheta*waga_theta & *waga_homology(iset) +c dutheta(i-2)=sum_sgtheta/sum_gtheta*waga_theta +c & *waga_homology(iset) c dutheta(i)=sum_sgtheta/sum_gtheta c c Uconst_back=Uconst_back+waga_theta*utheta(i) ! waga_theta added as weight diff --git a/source/unres/src_MD/gradient_p.F b/source/unres/src_MD/gradient_p.F index 8606ba4..dd59b31 100644 --- a/source/unres/src_MD/gradient_p.F +++ b/source/unres/src_MD/gradient_p.F @@ -318,15 +318,15 @@ c If performing constraint dynamics, add the gradients of the constraint energy write (iout,*) i,(duscdiffx(j,i),j=1,3) enddo #endif -c if(usampl.and.totT.gt.eq_time) then - if(usampl.and.totT.gt.eq_time .or. constr_homology.gt.0) then + if(usampl.and.totT.gt.eq_time) then +c if(usampl.and.totT.gt.eq_time .or. constr_homology.gt.0) then c c Setting suited bounds for HM restrs c do i=1,nct do j=1,3 - gradc(j,i,icg)=gradc(j,i,icg)+dudconst(j,i)+duscdiff(j,i) - gradx(j,i,icg)=gradx(j,i,icg)+dudxconst(j,i)+duscdiffx(j,i) + gradc(j,i,icg)=gradc(j,i,icg)+dudconst(j,i) + gradx(j,i,icg)=gradx(j,i,icg)+dudxconst(j,i) enddo #ifdef DEBUG write (iout,*) "i",i," gradc",(gradc(j,i,icg),j=1,3) diff --git a/source/wham/src/enecalc1.F b/source/wham/src/enecalc1.F index c8901ad..0f7d34c 100644 --- a/source/wham/src/enecalc1.F +++ b/source/wham/src/enecalc1.F @@ -519,7 +519,7 @@ c else c & potE(i,iparm),-entfac(i),rms_nat,iscore & potE(i,nparmset),-entfac(i),rms_nat,iscore c endif - write (iout,'(2i5,3e15.5)') i,me,potE(i,iparm),-entfac(i) +c write (iout,'(2i5,3e15.5)') i,me,potE(i,iparm),-entfac(i) #ifndef MPI if (cxfile) call cxwrite(ixdrf,csingle,potE(i,nparmset), & -entfac(i),rms_nat,iscore) -- 1.7.9.5