hdiff output

r28132/heurist.src 2017-01-21 10:34:09.762250000 +0000 r28131/heurist.src 2017-01-21 10:34:11.306250000 +0000
 55: C 55: C
 56: C Passed variables 56: C Passed variables
 57:       INTEGER ISTEP 57:       INTEGER ISTEP
 58:       REAL*8 X(*),Y(*),Z(*),WMAIN(*) 58:       REAL*8 X(*),Y(*),Z(*),WMAIN(*)
 59:       INTEGER LDYNAM 59:       INTEGER LDYNAM
 60:       REAL*8 XOLD(*),YOLD(*),ZOLD(*),VX(*),VY(*),VZ(*) 60:       REAL*8 XOLD(*),YOLD(*),ZOLD(*),VX(*),VY(*),VZ(*)
 61: C 61: C
 62: C Local variables : 62: C Local variables :
 63:       INTEGER  I,ISLCT,NEEDED,TRANSF 63:       INTEGER  I,ISLCT,NEEDED,TRANSF
 64: C Update-decision variables : 64: C Update-decision variables :
 65:       LOGICAL  QEURIS,QDONB,QDOHB,QDOIM,QDOXT 65:       LOGICAL  QEURIS,QDONB,QDOHB,QDOIM,QDOXT,RESETLBFGS
  66:       COMMON /CONTRL/ RESETLBFGS
 66: C Heuristic update-testing variables : 67: C Heuristic update-testing variables :
 67:       REAL*8   SQRBUF,REURIS 68:       REAL*8   SQRBUF,REURIS
 68:       REAL*8   DDUMY1,DDUMY2,DDUMY3 69:       REAL*8   DDUMY1,DDUMY2,DDUMY3
 69: ##IF MBOND 70: ##IF MBOND
 70:       REAL*8 MBEURIS 71:       REAL*8 MBEURIS
 71: ##ENDIF 72: ##ENDIF
 72: C 73: C
 73: C Don't update anything if just starting (avoid duplicate updates). 74: C Don't update anything if just starting (avoid duplicate updates).
 74:       IF(ISTEP.LE.0) RETURN 75:       IF(ISTEP.LE.0) RETURN
 75: C 76: C
247: ##ENDIF248: ##ENDIF
248: C249: C
249: C JG 5/02250: C JG 5/02
250:        IF (RCENT) THEN251:        IF (RCENT) THEN
251:           CALL CRDMOV(NATOM,X,Y,Z,XOLD,YOLD,ZOLD,252:           CALL CRDMOV(NATOM,X,Y,Z,XOLD,YOLD,ZOLD,
252:      &   NRES,IBASE)253:      &   NRES,IBASE)
253:        ENDIF                      254:        ENDIF                      
254: C255: C
255:         IF(PRNLEV.GE.4) WRITE(OUTU,100) 'Nonbond',ISTEP256:         IF(PRNLEV.GE.4) WRITE(OUTU,100) 'Nonbond',ISTEP
256:         CALL NBONDS(X,Y,Z,BNBND,LNBND,BIMAG,LIMAG)257:         CALL NBONDS(X,Y,Z,BNBND,LNBND,BIMAG,LIMAG)
 258:         RESETLBFGS=.TRUE.
257: C QC:UW_031205259: C QC:UW_031205
258: ##IF PARALLEL260: ##IF PARALLEL
259:         IF(MYNOD.EQ.0) THEN261:         IF(MYNOD.EQ.0) THEN
260: ##ENDIF262: ##ENDIF
261:         if(qsccnb) call mkmmlst         !##SCCDFTB263:         if(qsccnb) call mkmmlst         !##SCCDFTB
262: ##IF PARALLEL264: ##IF PARALLEL
263:         ENDIF265:         ENDIF
264: ##ENDIF266: ##ENDIF
265: C QC:UW_031205_END267: C QC:UW_031205_END
266:         TOTUPD = TOTUPD + 1268:         TOTUPD = TOTUPD + 1


r28132/mylbfgs.f 2017-01-21 10:34:10.966250000 +0000 r28131/mylbfgs.f 2017-01-21 10:34:12.246250000 +0000
111: C111: C
112: C     SAVE 112: C     SAVE 
113:       SAVE W, DIAG, ITER, POINT, ISPT, IYPT, NPT113:       SAVE W, DIAG, ITER, POINT, ISPT, IYPT, NPT
114: !}}}114: !}}}
115:       DOUBLE PRECISION deltacart_vstat(6)115:       DOUBLE PRECISION deltacart_vstat(6)
116:       LOGICAL DOINTERNALSTRANSFORM116:       LOGICAL DOINTERNALSTRANSFORM
117: ! hk286 - local rigid body                                                      117: ! hk286 - local rigid body                                                      
118:       DOUBLE PRECISION :: XCOORDS(3*NATOMS), XRIGIDCOORDS(DEGFREEDOMS)118:       DOUBLE PRECISION :: XCOORDS(3*NATOMS), XRIGIDCOORDS(DEGFREEDOMS)
119: ! cs778 reset lbfgs when charmm updating nonbond list119: ! cs778 reset lbfgs when charmm updating nonbond list
120:       LOGICAL RESETLBFGS120:       LOGICAL RESETLBFGS
121:       COMMON /CRESETLBFGS/ RESETLBFGS121:       COMMON /CONTRL/ RESETLBFGS
122: 122: 
123:       DOINTERNALSTRANSFORM = intwrap_useinternals()123:       DOINTERNALSTRANSFORM = intwrap_useinternals()
124:       if(DOINTERNALSTRANSFORM) print *, "Doing optimization in internals"124:       if(DOINTERNALSTRANSFORM) print *, "Doing optimization in internals"
125: 125: 
126:       IF (.NOT.ALLOCATED(DIAG)) ALLOCATE(DIAG(N))       ! SAVE doesn't work otherwise for pgi and ifort126:       IF (.NOT.ALLOCATED(DIAG)) ALLOCATE(DIAG(N))       ! SAVE doesn't work otherwise for pgi and ifort
127:       IF (.NOT.ALLOCATED(W)) ALLOCATE(W(N*(2*M+1)+2*M)) ! SAVE doesn't work otherwise for pgi and ifort127:       IF (.NOT.ALLOCATED(W)) ALLOCATE(W(N*(2*M+1)+2*M)) ! SAVE doesn't work otherwise for pgi and ifort
128:       IF (SIZE(W,1).NE.N*(2*M+1)+2*M) THEN ! mustn't call mylbfgs with changing number of variables!!!128:       IF (SIZE(W,1).NE.N*(2*M+1)+2*M) THEN ! mustn't call mylbfgs with changing number of variables!!!
129:          PRINT '(A,I10,A,I10,A)', ' mylbfgs> ERROR, dimension of W=',SIZE(W,1),' but N*(2*M+1)+2*M=',N*(2*M+1)+2*M129:          PRINT '(A,I10,A,I10,A)', ' mylbfgs> ERROR, dimension of W=',SIZE(W,1),' but N*(2*M+1)+2*M=',N*(2*M+1)+2*M
130:          STOP130:          STOP
131:       ENDIF131:       ENDIF


r28132/nbonds.src 2017-01-21 10:34:10.230250000 +0000 r28131/nbonds.src 2017-01-21 10:34:11.638250000 +0000
 81:       INTEGER BIGGST,BIGGR,MAXJNB,MXJNBG,OLDLST,NTRNSX,IVAL 81:       INTEGER BIGGST,BIGGR,MAXJNB,MXJNBG,OLDLST,NTRNSX,IVAL
 82:       INTEGER MAXJMB,MXJMBG 82:       INTEGER MAXJMB,MXJMBG
 83:       SAVE    MAXJMB,MXJMBG 83:       SAVE    MAXJMB,MXJMBG
 84:       INTEGER RSCMX,RSCMY,RSCMZ,RSQ,RSPOT,RSDX,RSDY,RSDZ 84:       INTEGER RSCMX,RSCMY,RSCMZ,RSQ,RSPOT,RSDX,RSDY,RSDZ
 85:       INTEGER RSGXX,RSGYY,RSGZZ,RSGXY,RSGYZ,RSGZX 85:       INTEGER RSGXX,RSGYY,RSGZZ,RSGXY,RSGYZ,RSGZX
 86:       INTEGER RSQXX,RSQYY,RSQZZ,RSQXY,RSQYZ,RSQZX 86:       INTEGER RSQXX,RSQYY,RSQZZ,RSQXY,RSQYZ,RSQZX
 87:       INTEGER RSFX,RSFY,RSFZ,RSXMAX,RSYMAX,RSZMAX,RSDISP 87:       INTEGER RSFX,RSFY,RSFZ,RSXMAX,RSYMAX,RSZMAX,RSDISP
 88:       REAL*8 ERXN,RMXGES,RVAL,RFACT 88:       REAL*8 ERXN,RMXGES,RVAL,RFACT
 89:       LOGICAL CMPLTD,LSLOWNB 89:       LOGICAL CMPLTD,LSLOWNB
 90:       INTEGER I 90:       INTEGER I
 91:       LOGICAL RESETLBFGS 
 92:       COMMON /CRESETLBFGS/ RESETLBFGS 
 93:  
 94: C  --added RJP------------------------- 91: C  --added RJP-------------------------
 95:       INTEGER PNTNER,PNTDIS,PARTNN,PARTND,ORDCBN,XOO 92:       INTEGER PNTNER,PNTDIS,PARTNN,PARTND,ORDCBN,XOO
 96:       INTEGER YOO,ZOO,DUMMYX,HAFMAR,MEANX,MEANY 93:       INTEGER YOO,ZOO,DUMMYX,HAFMAR,MEANX,MEANY
 97:       INTEGER MEANZ,LSTN0 94:       INTEGER MEANZ,LSTN0
 98:       REAL*8 NUMER2,DENOM2,NUMER3,DENOM3 95:       REAL*8 NUMER2,DENOM2,NUMER3,DENOM3
 99:       REAL*8 P3,M2,NACLCU,MEMFAC,RNUMNOD 96:       REAL*8 P3,M2,NACLCU,MEMFAC,RNUMNOD
100:       INTEGER IMAXJNB,CCMAXJNB,CCMXJNBG 97:       INTEGER IMAXJNB,CCMAXJNB,CCMXJNBG
101:       SAVE CCMAXJNB,CCMXJNBG 98:       SAVE CCMAXJNB,CCMXJNBG
102:       INTEGER MAXACL,TEMPN,TEMPN2,MXNCUB 99:       INTEGER MAXACL,TEMPN,TEMPN2,MXNCUB
103:       SAVE MAXACL100:       SAVE MAXACL
216:   23        FORMAT(' <NBONDS>: Image data structure is not defined.')213:   23        FORMAT(' <NBONDS>: Image data structure is not defined.')
217:             NTRNSX=0214:             NTRNSX=0
218:          ENDIF215:          ENDIF
219:       ENDIF216:       ENDIF
220: ##ENDIF217: ##ENDIF
221: C218: C
222: ##IF LOOKUP219: ##IF LOOKUP
223: C Turn on energy calculation if necessary220: C Turn on energy calculation if necessary
224:       IF(QLOOKUP .AND. IWWENR.EQ. -1) IWWENR= 1 221:       IF(QLOOKUP .AND. IWWENR.EQ. -1) IWWENR= 1 
225: ##ENDIF 222: ##ENDIF 
226:       RESETLBFGS=.TRUE. 
227:       IF(PRNLEV.GE.5) WRITE(OUTU,2000) NBXMOD223:       IF(PRNLEV.GE.5) WRITE(OUTU,2000) NBXMOD
228:  2000 FORMAT(' Generating nonbond list with Exclusion mode =',I2)224:  2000 FORMAT(' Generating nonbond list with Exclusion mode =',I2)
229: C225: C
230: C=======================================================================226: C=======================================================================
231: C227: C
232: C  Check for conflicting options in nonbond usage.228: C  Check for conflicting options in nonbond usage.
233: C229: C
234: C    CHARMM Developers: Please keep this section up to date!230: C    CHARMM Developers: Please keep this section up to date!
235: C231: C
236: C Nonbond Methods Support table:232: C Nonbond Methods Support table:


r28132/ocharmm.src 2017-01-21 10:34:10.606250000 +0000 r28131/ocharmm.src 2017-01-21 10:34:11.954250000 +0000
 42: C      DOUBLE PRECISION X(MXATMS),Y(MXATMS),Z(MXATMS),WMAIN(MXATMS),DX(MXATMS),DY(MXATMS),DZ(MXATMS) 42: C      DOUBLE PRECISION X(MXATMS),Y(MXATMS),Z(MXATMS),WMAIN(MXATMS),DX(MXATMS),DY(MXATMS),DZ(MXATMS)
 43:       DOUBLE PRECISION DD1(9*MXATMS*MXATMS) 43:       DOUBLE PRECISION DD1(9*MXATMS*MXATMS)
 44:       LOGICAL GRADT, SECT, VALFAIL 44:       LOGICAL GRADT, SECT, VALFAIL
 45:       INTEGER J1, J2,I1, NDUMMY 45:       INTEGER J1, J2,I1, NDUMMY
 46:       INTEGER IPT(3*MXATMS) 46:       INTEGER IPT(3*MXATMS)
 47:       INTEGER I,IP,IDD1,NDD1,ICALL,NCALLS 47:       INTEGER I,IP,IDD1,NDD1,ICALL,NCALLS
 48:       INTEGER DDM, DDTROT, ISPACE, NTOT 48:       INTEGER DDM, DDTROT, ISPACE, NTOT
 49:       INTEGER ATOMNOS(4), IMPNO  49:       INTEGER ATOMNOS(4), IMPNO 
 50:       REAL*8 N 50:       REAL*8 N
 51:       CHARACTER*8 VALRESNAME 51:       CHARACTER*8 VALRESNAME
  52:       LOGICAL RESETLBFGS
  53:       COMMON /CONTRL/ RESETLBFGS      
 52:       NCHENCALLS=NCHENCALLS+1 54:       NCHENCALLS=NCHENCALLS+1
 53: C 55: C
 54: C dae NDD1 is dimension of second derivative matrix for charmm 56: C dae NDD1 is dimension of second derivative matrix for charmm
 55: C     print *,'charmm NATOMS NOPT',NATOMS,NOPT 57: C     print *,'charmm NATOMS NOPT',NATOMS,NOPT
 56:       NDD1=3*NATOMS 58:       NDD1=3*NATOMS
 57:         DO J1=1,NATOMS 59:         DO J1=1,NATOMS
 58:            X(J1)=CART(3*(J1-1)+1) 60:            X(J1)=CART(3*(J1-1)+1)
 59:            Y(J1)=CART(3*(J1-1)+2) 61:            Y(J1)=CART(3*(J1-1)+2)
 60:            Z(J1)=CART(3*(J1-1)+3) 62:            Z(J1)=CART(3*(J1-1)+3)
 61: C          print *,'X Y Z', J1,X(J1), Y(J1), Z(J1) 63: C          print *,'X Y Z', J1,X(J1), Y(J1), Z(J1)
 82: C To be on the safe side, update the list every 1000th call to the 84: C To be on the safe side, update the list every 1000th call to the
 83: C CHARMM potential 85: C CHARMM potential
 84: C 86: C
 85: C csw34> Again, skip the call to NBONDS if we're using FULLY QM SCC-DFTB with CHARMM. 87: C csw34> Again, skip the call to NBONDS if we're using FULLY QM SCC-DFTB with CHARMM.
 86: C        If you're using QM/MM, either recode or don't use CHARMMDFTB keyword! 88: C        If you're using QM/MM, either recode or don't use CHARMMDFTB keyword!
 87:       IF (.NOT.CHARMMDFTBT) THEN 89:       IF (.NOT.CHARMMDFTBT) THEN
 88:          IF(NCHENCALLS.EQ.100) THEN 90:          IF(NCHENCALLS.EQ.100) THEN
 89: C          IF(DEBUG) WRITE(*,'(A,I5)')'OCHARMM> nonbonded-list update, NCHENCALLS=', NCHENCALLS 91: C          IF(DEBUG) WRITE(*,'(A,I5)')'OCHARMM> nonbonded-list update, NCHENCALLS=', NCHENCALLS
 90:            CALL NBONDS(X,Y,Z,BNBND,LNBND,BIMAG,LIMAG) 92:            CALL NBONDS(X,Y,Z,BNBND,LNBND,BIMAG,LIMAG)
 91:            NCHENCALLS=0 93:            NCHENCALLS=0
  94:            RESETLBFGS=.TRUE.
 92:          ELSE 95:          ELSE
 93:            CALL UPDECI(1,X,Y,Z,WMAIN,0,0,0,0,0,0,0) 96:            CALL UPDECI(1,X,Y,Z,WMAIN,0,0,0,0,0,0,0)
 94:          ENDIF 97:          ENDIF
 95:       ENDIF 98:       ENDIF
 96:       IF ( (LACE2) .AND. (MOD(NCHENCALLS,ACEUPSTEP).EQ.0) ) THEN 99:       IF ( (LACE2) .AND. (MOD(NCHENCALLS,ACEUPSTEP).EQ.0) ) THEN
 97:         ACEUP=.TRUE.100:         ACEUP=.TRUE.
 98:       ENDIF101:       ENDIF
 99: C102: C
100: ##IF C35 C36103: ##IF C35 C36
101:       ATOMNOS(1:4) = 0104:       ATOMNOS(1:4) = 0
290:       USE key, ONLY: CHARMMDFTBT293:       USE key, ONLY: CHARMMDFTBT
291:       IMPLICIT NONE294:       IMPLICIT NONE
292: ##INCLUDE '~/charmmcode/fcm/dimens.fcm'295: ##INCLUDE '~/charmmcode/fcm/dimens.fcm'
293: C##INCLUDE '~/charmmcode/fcm/coord.fcm'296: C##INCLUDE '~/charmmcode/fcm/coord.fcm'
294: ##INCLUDE '~/charmmcode/fcm/bases.fcm'297: ##INCLUDE '~/charmmcode/fcm/bases.fcm'
295: ##INCLUDE '~/charmmcode/fcm/exfunc.fcm'298: ##INCLUDE '~/charmmcode/fcm/exfunc.fcm'
296: ##INCLUDE '~/charmmcode/fcm/heap.fcm'299: ##INCLUDE '~/charmmcode/fcm/heap.fcm'
297:       DOUBLE PRECISION CART(3*NATOMS)300:       DOUBLE PRECISION CART(3*NATOMS)
298:       DOUBLE PRECISION X(MXATMS),Y(MXATMS),Z(MXATMS)301:       DOUBLE PRECISION X(MXATMS),Y(MXATMS),Z(MXATMS)
299:       INTEGER J1302:       INTEGER J1
 303:       LOGICAL RESETLBFGS
 304:       COMMON /CONTRL/ RESETLBFGS
300: 305: 
301: C csw34> If running SCC-DFTB potential with entirely QM atoms, skip the nonbonded list update 306: C csw34> If running SCC-DFTB potential with entirely QM atoms, skip the nonbonded list update 
302: C        as we're not using it!307: C        as we're not using it!
303:       IF (.NOT.CHARMMDFTBT) THEN308:       IF (.NOT.CHARMMDFTBT) THEN
304: C        IF(DEBUG) WRITE(*,'(A,I5)')'UPDATENBONDS> nonbonded-list update, NCHENCALLS=', NCHENCALLS309: C        IF(DEBUG) WRITE(*,'(A,I5)')'UPDATENBONDS> nonbonded-list update, NCHENCALLS=', NCHENCALLS
305: 310: 
306:          DO J1=1,NATOMS311:          DO J1=1,NATOMS
307:             X(J1)=CART(3*(J1-1)+1)312:             X(J1)=CART(3*(J1-1)+1)
308:             Y(J1)=CART(3*(J1-1)+2)313:             Y(J1)=CART(3*(J1-1)+2)
309:             Z(J1)=CART(3*(J1-1)+3)314:             Z(J1)=CART(3*(J1-1)+3)
310:          ENDDO315:          ENDDO
311: 316: 
312:          CALL NBONDS(X,Y,Z,BNBND,LNBND,BIMAG,LIMAG)317:          CALL NBONDS(X,Y,Z,BNBND,LNBND,BIMAG,LIMAG)
 318:          RESETLBFGS=.TRUE.
313:          NCHENCALLS=0319:          NCHENCALLS=0
314:       ENDIF320:       ENDIF
315:       RETURN321:       RETURN
316:       END322:       END
317: 323: 
318:       SUBROUTINE GETETERM324:       SUBROUTINE GETETERM
319: C325: C
320: C routine that extracts the energy terms from the ETERM common block.326: C routine that extracts the energy terms from the ETERM common block.
321: C Obviously will only give you value the last time it was calculated 327: C Obviously will only give you value the last time it was calculated 
322: C328: C


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0