From a5189f6bb38b0708d043a694919b39f8f4a820a6 Mon Sep 17 00:00:00 2001 From: Emilia Lubecka Date: Thu, 15 Feb 2018 20:01:00 +0100 Subject: [PATCH] debugging 5Dia --- source/unres/MD.f90 | 20 ++++++++++-------- source/unres/Makefile | 9 ++++---- source/unres/REMD.f90 | 7 +++++-- source/unres/cinfo.f90 | 8 ++++---- source/unres/energy.f90 | 49 ++------------------------------------------ source/unres/io_config.f90 | 5 +++++ source/unres/unres.f90 | 6 +++--- 7 files changed, 35 insertions(+), 69 deletions(-) diff --git a/source/unres/MD.f90 b/source/unres/MD.f90 index daa06e0..e780cff 100644 --- a/source/unres/MD.f90 +++ b/source/unres/MD.f90 @@ -2706,12 +2706,14 @@ ! include 'COMMON.NAMES' ! include 'COMMON.TIME1' real(kind=8) :: xv,sigv,lowb,highb ,Ek1 +#define DEBUG #ifdef FIVEDIAG real(kind=8) ,allocatable, dimension(:) :: DDU1,DDU2,DL2,DL1,xsolv,DML,rs real(kind=8) :: sumx #ifdef DEBUG real(kind=8) ,allocatable, dimension(:) :: rsold real (kind=8),allocatable,dimension(:,:) :: matold + integer :: iti #endif #endif integer :: i,j,ii,k,ind,mark,imark,mnum @@ -2965,7 +2967,7 @@ write (iout,*) "k",k," ii",ii,"EK1",EK1 if (itype(i,1).ne.10 .and. itype(i,mnum).ne.ntyp1_molec(mnum)& .and.(mnum.ne.5))& - Ek1=Ek1+0.5d0*Isc(iabs(itype(i,mnum),mnum))*(d_t_work(ii)-d_t_work(ii-3))**2 + Ek1=Ek1+0.5d0*Isc(iabs(itype(i,mnum)),mnum)*(d_t_work(ii)-d_t_work(ii-3))**2 Ek1=Ek1+0.5d0*msc(iabs(itype(i,mnum)),mnum)*d_t_work(ii)**2 enddo write (iout,*) "i",i," ii",ii @@ -2990,8 +2992,8 @@ d_t(k,j)=d_t_work(ind) ind=ind+1 enddo - mnum=molnum(i) - if (itype(i,1).ne.10 .and. itype(i,mnum).ne.ntyp1_molec(mnum)& + mnum=molnum(j) + if (itype(j,1).ne.10 .and. itype(j,mnum).ne.ntyp1_molec(mnum)& .and.(mnum.ne.5)) then do k=1,3 d_t(k,j+nres)=d_t_work(ind) @@ -3078,8 +3080,8 @@ ! write (iout,*) "Kinetic energy",Ek,EK1," kinetic temperature",& ! 2.0d0/(dimen3*Rb)*EK,2.0d0/(dimen3*Rb)*EK1 ! call flush(iout) +! write(iout,*) "end init MD" return -#undef DEBUG end subroutine random_vel !----------------------------------------------------------------------------- #ifndef LANG0 @@ -3868,7 +3870,7 @@ call angmom(cm,L) ! write(iout,*) "The angular momentum before adjustment:" -! write(iout,*) (L(j),j=1,3) +! write(iout,*) (L(j),j=1,3) Im(2,1)=Im(1,2) Im(3,1)=Im(1,3) @@ -3878,7 +3880,7 @@ do i=1,3 do j=1,3 Imcp(i,j)=Im(i,j) - Id(i,j)=0.0d0 + Id(i,j)=0.0d0 enddo enddo @@ -3945,7 +3947,7 @@ enddo call angmom(cm,L) ! write(iout,*) "The angular momentum after adjustment:" -! write(iout,*) (L(j),j=1,3) +! write(iout,*) (L(j),j=1,3) return end subroutine inertia_tensor @@ -4026,8 +4028,8 @@ enddo endif call vecpr(pr(1),v(1),vp) -! write (iout,*) "i",i," iti",iti," pr",(pr(j),j=1,3), -! & " v",(v(j),j=1,3)," vp",(vp(j),j=1,3) +! write (iout,*) "i",i," iti",iti," pr",(pr(j),j=1,3),& +! " v",(v(j),j=1,3)," vp",(vp(j),j=1,3) do j=1,3 L(j)=L(j)+mscab*vp(j) enddo diff --git a/source/unres/Makefile b/source/unres/Makefile index 42a1c56..35dcfa0 100644 --- a/source/unres/Makefile +++ b/source/unres/Makefile @@ -90,10 +90,11 @@ GAB: ${data} ${objects} ${FC} ${OPT} ${data} ${objects} cinfo.o -o ${EXE_FILE} E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ - -DSPLITELE -DLANG0 -#-DFIVEDIAG -E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_F90_EL.exe -#E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_5DiaF90_EL.exe + -DSPLITELE -DLANG0 -DFIVEDIAG +#E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_F90_EL.exe +E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_5DiaF90_EL.exe +#E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_5DiaF90_ELcb.exe +#E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_5DiaF90_EL.diag.exe E0LL2Y: ${data} ${objects} cc -o compinfo compinfo.c ./compinfo | true diff --git a/source/unres/REMD.f90 b/source/unres/REMD.f90 index e2db478..80fde57 100644 --- a/source/unres/REMD.f90 +++ b/source/unres/REMD.f90 @@ -452,8 +452,10 @@ ind=1 do i=nnt,nct mnum=molnum(i) - if (iabs(itype(i,1)).ne.10 .and.iabs(itype(i,mnum)).ne.ntyp1 & - .and.mnum.eq.5) then +! if (iabs(itype(i,1)).ne.10 .and.iabs(itype(i,mnum)).ne.ntyp1 & +! .and.mnum.eq.5) then + if (iabs(itype(i,1)).ne.10 .and. & + iabs(itype(i,mnum)).ne.ntyp1_molec(mnum) .and. mnum.ne.5) then DU1(ind)=-isc(iabs(itype(i,1)),1) DU1(ind+1)=0.0d0 ind=ind+2 @@ -808,6 +810,7 @@ endif deallocate(Gcopy) #endif +!write(iout,*) "end setup_MD_matr" return end subroutine setup_MD_matrices !----------------------------------------------------------------------------- diff --git a/source/unres/cinfo.f90 b/source/unres/cinfo.f90 index 79644a8..1fe7e86 100644 --- a/source/unres/cinfo.f90 +++ b/source/unres/cinfo.f90 @@ -1,11 +1,11 @@ ! DO NOT EDIT THIS FILE - IT HAS BEEN GENERATED BY COMPINFO.C -! 0 40376 95 +! 0 40376 143 subroutine cinfo ! include 'COMMON.IOUNITS' use io_units write(iout,*)'++++ Compile info ++++' - write(iout,*)'Version 0.40376 build 95' - write(iout,*)'compiled Tue Feb 6 15:54:51 2018' + write(iout,*)'Version 0.40376 build 143' + write(iout,*)'compiled Thu Feb 15 19:23:50 2018' write(iout,*)'compiled by emilial@piasek4' write(iout,*)'OS name: Linux ' write(iout,*)'OS release: 3.2.0-126-generic ' @@ -33,7 +33,7 @@ write(iout,*)'4P: CPPFLAGS = -DLINUX -DPGI -DAMD64 -DUNRES -D...' write(iout,*)'4P: EXE_FILE = ../../bin/unres_4P_F90_EL.exe' write(iout,*)'E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD...' - write(iout,*)'E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_F90_E...' + write(iout,*)'E0LL2Y: EXE_FILE = ../../bin/unres_E0LL2Y_5DiaF...' write(iout,*)'NEWGRAD: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAM...' write(iout,*)'NEWGRAD: EXE_FILE = ../../bin/unres_E0LL2Y_F90_...' write(iout,*)'++++ End of compile info ++++' diff --git a/source/unres/energy.f90 b/source/unres/energy.f90 index d770307..0dbcd9c 100644 --- a/source/unres/energy.f90 +++ b/source/unres/energy.f90 @@ -11794,27 +11794,13 @@ write(iout,*) 'Calling CHECK_ECARTINT.' nf=0 icall=0 - write (iout,*) "Before geom_to_var" call geom_to_var(nvar,x) - write (iout,*) "after geom_to_var" write (iout,*) "split_ene ",split_ene call flush(iout) if (.not.split_ene) then - write(iout,*) 'Calling CHECK_ECARTINT if' call etotal(energia) -!elwrite(iout,*) 'Calling CHECK_ECARTINT if' etot=energia(0) - write (iout,*) "etot",etot - call flush(iout) -!el call enerprint(energia) -!elwrite(iout,*) 'Calling CHECK_ECARTINT if' - call flush(iout) - write (iout,*) "enter cartgrad" - call flush(iout) call cartgrad -!elwrite(iout,*) 'Calling CHECK_ECARTINT if' - write (iout,*) "exit cartgrad" - call flush(iout) icall =1 do i=1,nres write (iout,'(i5,3f10.5)') i,(gradxorr(j,i),j=1,3) @@ -11822,7 +11808,6 @@ do j=1,3 grad_s(j,0)=gcart(j,0) enddo -!elwrite(iout,*) 'Calling CHECK_ECARTINT if' do i=1,nres do j=1,3 grad_s(j,i)=gcart(j,i) @@ -11830,19 +11815,12 @@ enddo enddo else -write(iout,*) 'Calling CHECK_ECARTIN else.' !- split gradient check call zerograd call etotal_long(energia) !el call enerprint(energia) - call flush(iout) - write (iout,*) "enter cartgrad" - call flush(iout) call cartgrad - write (iout,*) "exit cartgrad" - call flush(iout) icall =1 - write (iout,*) "longrange grad" do i=1,nres write (iout,'(i5,3f10.5,5x,3f10.5)') i,(gcart(j,i),j=1,3),& (gxcart(j,i),j=1,3) @@ -11859,14 +11837,8 @@ write(iout,*) 'Calling CHECK_ECARTIN else.' call zerograd call etotal_short(energia) call enerprint(energia) - call flush(iout) - write (iout,*) "enter cartgrad" - call flush(iout) call cartgrad - write (iout,*) "exit cartgrad" - call flush(iout) icall =1 - write (iout,*) "shortrange grad" do i=1,nres write (iout,'(i5,3f10.5,5x,3f10.5)') i,(gcart(j,i),j=1,3),& (gxcart(j,i),j=1,3) @@ -12049,12 +12021,7 @@ write(iout,*) 'Calling CHECK_ECARTIN else.' call etotal(energia) etot=energia(0) !el call enerprint(energia) - call flush(iout) - write (iout,*) "enter cartgrad" - call flush(iout) call cartgrad - write (iout,*) "exit cartgrad" - call flush(iout) icall =1 do i=1,nres write (iout,'(i5,3f10.5)') i,(gradxorr(j,i),j=1,3) @@ -12074,14 +12041,8 @@ write(iout,*) 'Calling CHECK_ECARTIN else.' call zerograd call etotal_long(energia) !el call enerprint(energia) - call flush(iout) - write (iout,*) "enter cartgrad" - call flush(iout) call cartgrad - write (iout,*) "exit cartgrad" - call flush(iout) icall =1 - write (iout,*) "longrange grad" do i=1,nres write (iout,'(i5,3f10.5,5x,3f10.5)') i,(gcart(j,i),j=1,3),& (gxcart(j,i),j=1,3) @@ -12098,14 +12059,8 @@ write(iout,*) 'Calling CHECK_ECARTIN else.' call zerograd call etotal_short(energia) !el call enerprint(energia) - call flush(iout) - write (iout,*) "enter cartgrad" - call flush(iout) call cartgrad - write (iout,*) "exit cartgrad" - call flush(iout) icall =1 - write (iout,*) "shortrange grad" do i=1,nres write (iout,'(i5,3f10.5,5x,3f10.5)') i,(gcart(j,i),j=1,3),& (gxcart(j,i),j=1,3) @@ -16231,7 +16186,7 @@ write(iout,*) 'Calling CHECK_ECARTIN else.' ! This subrouting calculates total Cartesian coordinate gradient. ! The subroutine chainbuild_cart and energy MUST be called beforehand. ! -!el#define DEBUG +#define DEBUG #ifdef TIMING time00=MPI_Wtime() #endif @@ -16333,7 +16288,7 @@ write(iout,*) 'Calling CHECK_ECARTIN else.' #ifdef TIMING time_cartgrad=time_cartgrad+MPI_Wtime()-time00 #endif - !el#undef DEBUG +#undef DEBUG return end subroutine cartgrad !----------------------------------------------------------------------------- diff --git a/source/unres/io_config.f90 b/source/unres/io_config.f90 index e51336b..d47759c 100644 --- a/source/unres/io_config.f90 +++ b/source/unres/io_config.f90 @@ -806,6 +806,11 @@ endif enddo #else + mp(:)=0.0d0 + ip(:)=0.0d0 + msc(:,:)=0.0d0 + isc(:,:)=0.0d0 + allocate(msc(ntyp+1,5)) !(ntyp+1) allocate(isc(ntyp+1,5)) !(ntyp+1) allocate(restok(ntyp+1,5)) !(ntyp+1) diff --git a/source/unres/unres.f90 b/source/unres/unres.f90 index eea3923..12368af 100644 --- a/source/unres/unres.f90 +++ b/source/unres/unres.f90 @@ -165,9 +165,9 @@ print *,'Start MD' call alloc_MD_arrays print *,'After MD alloc' -! if (me.eq.king .or. .not. out1file) & -! write (iout,*) "Calling chainbuild" -! call chainbuild + if (me.eq.king .or. .not. out1file) & + write (iout,*) "Calling chainbuild" + call chainbuild call MD return end subroutine exec_MD -- 1.7.9.5