debugging 5Dia
authorEmilia Lubecka <emilia.lubecka@ug.edu.pl>
Thu, 15 Feb 2018 19:01:00 +0000 (20:01 +0100)
committerEmilia Lubecka <emilia.lubecka@ug.edu.pl>
Thu, 15 Feb 2018 19:01:00 +0000 (20:01 +0100)
source/unres/MD.f90
source/unres/Makefile
source/unres/REMD.f90
source/unres/cinfo.f90
source/unres/energy.f90
source/unres/io_config.f90
source/unres/unres.f90

index daa06e0..e780cff 100644 (file)
 !      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
           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
           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)
 !      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
        
         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)
         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
                                                              
        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
            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
index 42a1c56..35dcfa0 100644 (file)
@@ -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
index e2db478..80fde57 100644 (file)
         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
       endif
       deallocate(Gcopy)
 #endif
+!write(iout,*) "end setup_MD_matr"
       return
       end subroutine setup_MD_matrices
 !-----------------------------------------------------------------------------
index 79644a8..1fe7e86 100644 (file)
@@ -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 ++++'
index d770307..0dbcd9c 100644 (file)
       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)
         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)
           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
       !-----------------------------------------------------------------------------
index e51336b..d47759c 100644 (file)
         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)
index eea3923..12368af 100644 (file)
       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