hdiff output

r29885/isotropic_potentials.f90 2016-02-01 12:30:16.577488886 +0000 r29884/isotropic_potentials.f90 2016-02-01 12:30:17.165496708 +0000
 53:                 J3=3*J1 53:                 J3=3*J1
 54:                 R2(J1,J1)=0.0D0 54:                 R2(J1,J1)=0.0D0
 55:                 R8(J1,J1)=0.0D0 55:                 R8(J1,J1)=0.0D0
 56:                 R14(J1,J1)=0.0D0 56:                 R14(J1,J1)=0.0D0
 57:                 G(J1,J1)=0.0D0 57:                 G(J1,J1)=0.0D0
 58:                 F(J1,J1)=0.0D0 58:                 F(J1,J1)=0.0D0
 59:                 DO J2=J1+1,N 59:                 DO J2=J1+1,N
 60:                     J4=3*J2 60:                     J4=3*J2
 61:  61: 
 62:                     R2(J2,J1)=(X(J3-2)-X(J4-2))**2+(X(J3-1)-X(J4-1))**2+(X(J3)-X(J4))**2 62:                     R2(J2,J1)=(X(J3-2)-X(J4-2))**2+(X(J3-1)-X(J4-1))**2+(X(J3)-X(J4))**2
  63:                     write(*,*) "Atom pair, distance", J1, J2, R2(J2,J1)
 63:                     R2(J2,J1)=1.0D0/R2(J2,J1) 64:                     R2(J2,J1)=1.0D0/R2(J2,J1)
 64:                     R6=R2(J2,J1)**3 65:                     R6=R2(J2,J1)**3
  66:                     write(*,*) "Energy", SIG6*R6*(SIG6*R6-1.0D0)
 65:                     TMP_ENERGY=TMP_ENERGY+SIG6*R6*(SIG6*R6-1.0D0) 67:                     TMP_ENERGY=TMP_ENERGY+SIG6*R6*(SIG6*R6-1.0D0)
 66:  68: 
 67:                     ! Set up storage arrays to use in the gradient- and hessian-calculating routines 69:                     ! Set up storage arrays to use in the gradient- and hessian-calculating routines
 68:                     R8(J2,J1)=R2(J2,J1)**4 70:                     R8(J2,J1)=R2(J2,J1)**4
 69:                     R14(J2,J1)=R8(J2,J1)*R8(J2,J1)/R2(J2,J1) 71:                     R14(J2,J1)=R8(J2,J1)*R8(J2,J1)/R2(J2,J1)
 70:                     R2(J1,J2)=R2(J2,J1) 72:                     R2(J1,J2)=R2(J2,J1)
 71:                     G(J2,J1)=-24.0D0*(2.0D0*SIG6*R6-1.0D0)*R2(J1,J2)*SIG6*R6 73:                     G(J2,J1)=-24.0D0*(2.0D0*SIG6*R6-1.0D0)*R2(J1,J2)*SIG6*R6
 72:                     G(J1,J2)=G(J2,J1) 74:                     G(J1,J2)=G(J2,J1)
 73:                     F(J2,J1)=672.0D0*R14(J2,J1)*SIG12-192.0D0*R8(J2,J1)*SIG6 75:                     F(J2,J1)=672.0D0*R14(J2,J1)*SIG12-192.0D0*R8(J2,J1)*SIG6
 74:                     F(J1,J2)=F(J2,J1) 76:                     F(J1,J2)=F(J2,J1)


r29885/multipot.f90 2016-02-01 12:30:16.769491440 +0000 r29884/multipot.f90 2016-02-01 12:30:17.357499262 +0000
292:             LOGICAL, INTENT(IN)           :: GTEST, STEST292:             LOGICAL, INTENT(IN)           :: GTEST, STEST
293:         END SUBROUTINE POT293:         END SUBROUTINE POT
294:     END INTERFACE294:     END INTERFACE
295: 295: 
296:     NDEGS = 3*TMP_NATOMS296:     NDEGS = 3*TMP_NATOMS
297: 297: 
298:     DO J1 = 1, NDEGS  ! Loop over all the atoms with this kind of potential298:     DO J1 = 1, NDEGS  ! Loop over all the atoms with this kind of potential
299:         TMP_X(J1) = X(DEGS_BY_POT(POTID,J1))299:         TMP_X(J1) = X(DEGS_BY_POT(POTID,J1))
300:     ENDDO300:     ENDDO
301: 301: 
302: !    IF(DEBUG) THEN302:     IF(DEBUG) THEN
303: !        WRITE(*,*) "Calling potential", POTTYPES(J1)303:         WRITE(*,*) "Calling potential", POTTYPES(J1)
304: !        WRITE(*,*) "Degrees of freedom being used:"304:         WRITE(*,*) "Degrees of freedom being used:"
305: !        WRITE(*,*) DEGS_BY_POT(POTID,:NDEGS)305:         WRITE(*,*) DEGS_BY_POT(POTID,:NDEGS)
306: !    ENDIF306:     ENDIF
307: 307: 
308:     ! The advantage of this slightly tortuous method is that we only need to call POT once. Compare with the pairwise308:     ! The advantage of this slightly tortuous method is that we only need to call POT once. Compare with the pairwise
309:     ! routine, where we need to make a function call for every pair of atoms in the system.309:     ! routine, where we need to make a function call for every pair of atoms in the system.
310:     CALL POT(TMP_NATOMS, TMP_X, POTPARAMS(POTID,:), TMP_E, TMP_G, TMP_HESS, GTEST, STEST)310:     CALL POT(TMP_NATOMS, TMP_X, POTPARAMS(POTID,:), TMP_E, TMP_G, TMP_HESS, GTEST, STEST)
311: 311: 
312:     ENERGY = ENERGY + TMP_E*POTSCALES(POTID)312:     ENERGY = ENERGY + TMP_E*POTSCALES(POTID)
313: 313: 
314:     ! Unpack the gradient, if it is being calculated314:     ! Unpack the gradient, if it is being calculated
315:     IF(GTEST) THEN315:     IF(GTEST) THEN
316:         DO J1 = 1,NDEGS316:         DO J1 = 1,NDEGS


r29885/potential.f 2016-02-01 12:30:16.969494100 +0000 r29884/potential.f 2016-02-01 12:30:17.553501869 +0000
 25:          USE MODCHARMM 25:          USE MODCHARMM
 26:          use PORFUNCS 26:          use PORFUNCS
 27:          use SDWATER, ONLY : SDPOTENTIAL, SDGRAD, SDHESS 27:          use SDWATER, ONLY : SDPOTENTIAL, SDGRAD, SDHESS
 28:          USE MCY, ONLY : MCYPOT=>POTENTIAL 28:          USE MCY, ONLY : MCYPOT=>POTENTIAL
 29:          USE BOWMANWATER, ONLY : BOWMANPOT 29:          USE BOWMANWATER, ONLY : BOWMANPOT
 30:          USE FINITE_DIFFERENCES 30:          USE FINITE_DIFFERENCES
 31:          USE MODAMBER9,only : ifswitch,goodstructure1,irespa,cisarray1,checkcistransalways,checkcistransalwaysdna, 31:          USE MODAMBER9,only : ifswitch,goodstructure1,irespa,cisarray1,checkcistransalways,checkcistransalwaysdna,
 32:      1   checkcistransalwaysrna 32:      1   checkcistransalwaysrna
 33:          ! hk286 33:          ! hk286
 34:          USE GENRIGID 34:          USE GENRIGID
 35:          USE MULTIPOT, ONLY: MULTIPOT_CALL 35:          USE MULTIPOT
 36:          USE CHIRALITY, ONLY: CIS_TRANS_CHECK, CHIRALITY_CHECK 36:          USE CHIRALITY, ONLY: CIS_TRANS_CHECK, CHIRALITY_CHECK
 37:          USE AMBER12_INTERFACE_MOD, ONLY: AMBER12_ENERGY_AND_GRADIENT, POT_ENE_REC_C, AMBER12_NUM_HESS 37:          USE AMBER12_INTERFACE_MOD, ONLY: AMBER12_ENERGY_AND_GRADIENT, POT_ENE_REC_C, AMBER12_NUM_HESS
 38:          USE MODCUDALBFGS, ONLY: CUDA_ENEGRAD_WRAPPER 38:          USE MODCUDALBFGS, ONLY: CUDA_ENEGRAD_WRAPPER
 39:          ! use AMHGLOBALS 39:          ! use AMHGLOBALS
 40:  40: 
 41:          IMPLICIT NONE 41:          IMPLICIT NONE
 42:  42: 
 43:          DOUBLE PRECISION COORDS(NOPT) 43:          DOUBLE PRECISION COORDS(NOPT)
 44:          DOUBLE PRECISION ENERGY 44:          DOUBLE PRECISION ENERGY
 45:          DOUBLE PRECISION VNEW(NOPT) 45:          DOUBLE PRECISION VNEW(NOPT)


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0