hdiff output

r33322/intlbfgs.f90 2017-09-18 14:30:12.528656336 +0100 r33321/intlbfgs.f90 2017-09-18 14:30:13.236665696 +0100
 22:      & NCONSTRAINT, CONI, CONJ, CONDISTREF, INTCONMAX, & 22:      & NCONSTRAINT, CONI, CONJ, CONDISTREF, INTCONMAX, &
 23:      & INTCONSTRAINREPCUT, REPCON, INTCONSTRAINTREP, INTREPSEP, NREPI, NREPJ, & 23:      & INTCONSTRAINREPCUT, REPCON, INTCONSTRAINTREP, INTREPSEP, NREPI, NREPJ, &
 24:      & CONDISTREFLOCAL, INTCONFRAC, CONACTIVE, REPI, & 24:      & CONDISTREFLOCAL, INTCONFRAC, CONACTIVE, REPI, &
 25:      & REPJ, NREPMAX, ATOMACTIVE, NCONSTRAINTON, CONION, CONJON, CONDISTREFLOCALON, CONDISTREFON, & 25:      & REPJ, NREPMAX, ATOMACTIVE, NCONSTRAINTON, CONION, CONJON, CONDISTREFLOCALON, CONDISTREFON, &
 26:      & NREPCUT, REPCUT, CHECKCONINT, INTCONSTEPS, INTRELSTEPS, MAXCONE, COLDFUSIONLIMIT, & 26:      & NREPCUT, REPCUT, CHECKCONINT, INTCONSTEPS, INTRELSTEPS, MAXCONE, COLDFUSIONLIMIT, &
 27:      & INTSTEPS1, DUMPINTXYZ, DUMPINTXYZFREQ, DUMPINTEOS, DUMPINTEOSFREQ, & 27:      & INTSTEPS1, DUMPINTXYZ, DUMPINTXYZFREQ, DUMPINTEOS, DUMPINTEOSFREQ, &
 28:      & IMSEPMIN, IMSEPMAX, MAXINTIMAGE, INTFREEZET, INTFREEZETOL, FREEZE, & 28:      & IMSEPMIN, IMSEPMAX, MAXINTIMAGE, INTFREEZET, INTFREEZETOL, FREEZE, &
 29:      & INTFROZEN, CHECKREPINTERVAL, NNREPULSIVE, INTFREEZEMIN, INTIMAGECHECK, & 29:      & INTFROZEN, CHECKREPINTERVAL, NNREPULSIVE, INTFREEZEMIN, INTIMAGECHECK, &
 30:      & CONCUT, CONCUTLOCAL, KINT, REPIFIX, REPJFIX, NREPULSIVEFIX, & 30:      & CONCUT, CONCUTLOCAL, KINT, REPIFIX, REPJFIX, NREPULSIVEFIX, &
 31:      & NCONSTRAINTFIX, CONIFIX, CONJFIX, QCIPERMCHECK, QCIPERMCHECKINT, BULKT, TWOD, RIGIDBODY, & 31:      & NCONSTRAINTFIX, CONIFIX, CONJFIX, QCIPERMCHECK, QCIPERMCHECKINT, BULKT, TWOD, RIGIDBODY, &
 32:      & QCIADDREP, QCIXYZ, WHOLEDNEB, QCIIMAGE, FROZEN 32:      & QCIADDREP, QCIXYZ, WHOLEDNEB, QCIIMAGE
 33: USE COMMONS, ONLY: NATOMS, DEBUG, PARAM1, PARAM2, PARAM3 33: USE COMMONS, ONLY: NATOMS, DEBUG, PARAM1, PARAM2, PARAM3
 34: USE MODCHARMM, ONLY : CHRMMT 34: USE MODCHARMM, ONLY : CHRMMT
 35:  35: 
 36: IMPLICIT NONE  36: IMPLICIT NONE 
 37:  37: 
 38: DOUBLE PRECISION, INTENT(IN) :: QSTART(3*NATOMS), QFINISH(3*NATOMS)  ! The two end points 38: DOUBLE PRECISION, INTENT(IN) :: QSTART(3*NATOMS), QFINISH(3*NATOMS)  ! The two end points
 39: INTEGER D, U 39: INTEGER D, U
 40: DOUBLE PRECISION DIST, DIST2, RMAT(3,3) 40: DOUBLE PRECISION DIST, DIST2, RMAT(3,3)
 41: DOUBLE PRECISION DMAX, DF, DMIN, LOCALSTEP, ADMAX, DUMMYX, DUMMYY, DUMMYZ 41: DOUBLE PRECISION DMAX, DF, DMIN, LOCALSTEP, ADMAX, DUMMYX, DUMMYY, DUMMYZ
 42: INTEGER NDECREASE, NFAIL, NMAXINT, NMININT, JMAX, JMIN, INTIMAGESAVE, NOFF, J1, J2, NQDONE, JA1, JA2 42: INTEGER NDECREASE, NFAIL, NMAXINT, NMININT, JMAX, JMIN, INTIMAGESAVE, NOFF, J1, J2, NQDONE, JA1, JA2
157:    CLOSE(LUNIT)157:    CLOSE(LUNIT)
158: ELSE158: ELSE
159:    XYZ(1:(3*NATOMS))=QSTART(1:(3*NATOMS))159:    XYZ(1:(3*NATOMS))=QSTART(1:(3*NATOMS))
160:    XYZ((3*NATOMS)*(INTIMAGE+1)+1:(3*NATOMS)*(INTIMAGE+2))=QFINISH(1:(3*NATOMS))160:    XYZ((3*NATOMS)*(INTIMAGE+1)+1:(3*NATOMS)*(INTIMAGE+2))=QFINISH(1:(3*NATOMS))
161:    DO J1=1,INTIMAGE+2161:    DO J1=1,INTIMAGE+2
162:       XYZ((J1-1)*(3*NATOMS)+1:J1*(3*NATOMS))=((INTIMAGE+2-J1)*QSTART(1:(3*NATOMS))+(J1-1)*QFINISH(1:(3*NATOMS)))/(INTIMAGE+1)162:       XYZ((J1-1)*(3*NATOMS)+1:J1*(3*NATOMS))=((INTIMAGE+2-J1)*QSTART(1:(3*NATOMS))+(J1-1)*QFINISH(1:(3*NATOMS)))/(INTIMAGE+1)
163:    ENDDO163:    ENDDO
164: ENDIF164: ENDIF
165: 165: 
166: NQCIFREEZE=0166: NQCIFREEZE=0
167: ! IF (FREEZE) THEN167: IF (FREEZE) THEN
168: !    WRITE(*,'(A)') ' intlbfgs> ERROR *** QCI has not been coded for frozen atoms yet'168:    WRITE(*,'(A)') ' intlbfgs> ERROR *** QCI has not been coded for frozen atoms yet'
169: !    STOP     169:    STOP     
170: ! ENDIF170: ENDIF
171: IF (ALLOCATED(INTFROZEN)) DEALLOCATE(INTFROZEN)171: IF (ALLOCATED(INTFROZEN)) DEALLOCATE(INTFROZEN)
172: ALLOCATE(INTFROZEN(NATOMS))172: ALLOCATE(INTFROZEN(NATOMS))
173: INTFROZEN(1:NATOMS)=.FALSE.173: INTFROZEN(1:NATOMS)=.FALSE.
174: DLIST(1:NATOMS)=-1174: DLIST(1:NATOMS)=-1
175: DMOVED(1:NATOMS)=1.0D100175: DMOVED(1:NATOMS)=1.0D100
176: IF (INTFREEZET) THEN176: IF (INTFREEZET) THEN
177:    DUMMY=INTFREEZETOL**2177:    DUMMY=INTFREEZETOL**2
178:    DO J1=1,NATOMS178:    DO J1=1,NATOMS
179:       DF=(XYZ(3*(J1-1)+1)-XYZ((INTIMAGE+1)*3*NATOMS+3*(J1-1)+1))**2 &179:       DF=(XYZ(3*(J1-1)+1)-XYZ((INTIMAGE+1)*3*NATOMS+3*(J1-1)+1))**2 &
180:   &     +(XYZ(3*(J1-1)+2)-XYZ((INTIMAGE+1)*3*NATOMS+3*(J1-1)+2))**2 &180:   &     +(XYZ(3*(J1-1)+2)-XYZ((INTIMAGE+1)*3*NATOMS+3*(J1-1)+2))**2 &
181:   &     +(XYZ(3*(J1-1)+3)-XYZ((INTIMAGE+1)*3*NATOMS+3*(J1-1)+3))**2181:   &     +(XYZ(3*(J1-1)+3)-XYZ((INTIMAGE+1)*3*NATOMS+3*(J1-1)+3))**2
182:       IF ((DF.LT.DUMMY).OR.FROZEN(J1)) THEN182:       IF (DF.LT.DUMMY) THEN
183:          NQCIFREEZE=NQCIFREEZE+1183:          NQCIFREEZE=NQCIFREEZE+1
184:          INTFROZEN(J1)=.TRUE.184:          INTFROZEN(J1)=.TRUE.
185:          IF (DEBUG) WRITE(*,'(A,I6,A,F12.6,A,I6)') &185:          IF (DEBUG) WRITE(*,'(A,I6,A,F12.6,A,I6)') &
186:   &            ' intlbfgs> atom ',J1,' moves less than threshold: dist^2=',DF,' total=',NQCIFREEZE186:   &            ' intlbfgs> atom ',J1,' moves less than threshold: dist^2=',DF,' total=',NQCIFREEZE
187:       ENDIF187:       ENDIF
188:       sortd: DO J2=1,J1188:       sortd: DO J2=1,J1
189:          IF (DF.LT.DMOVED(J2)) THEN189:          IF (DF.LT.DMOVED(J2)) THEN
190:             DO J3=J1,J2+1,-1190:             DO J3=J1,J2+1,-1
191:                DMOVED(J3)=DMOVED(J3-1)191:                DMOVED(J3)=DMOVED(J3-1)
192:                DLIST(J3)=DLIST(J3-1)192:                DLIST(J3)=DLIST(J3-1)
1695:          ATOMACTIVE(NEWATOM)=.TRUE.1695:          ATOMACTIVE(NEWATOM)=.TRUE.
1696:          NACTIVE=NACTIVE+11696:          NACTIVE=NACTIVE+1
1697:          IF (MAXNACTIVE.EQ.0) MAXNACTIVE=NATOMS1697:          IF (MAXNACTIVE.EQ.0) MAXNACTIVE=NATOMS
1698: !1698: !
1699: ! Freeze atoms that became active more than NACTIVE-MAXNACTIVE events ago.1699: ! Freeze atoms that became active more than NACTIVE-MAXNACTIVE events ago.
1700: ! For example, with MAXNACTIVE=5 and 40 active atoms, we would freeze those 1700: ! For example, with MAXNACTIVE=5 and 40 active atoms, we would freeze those 
1701: ! turned on first, second, up to the 35th in the TURNONORDER list.1701: ! turned on first, second, up to the 35th in the TURNONORDER list.
1702: !1702: !
1703:          IF (DEBUG) WRITE(*,'(A,I6)') 'doaddatom> Number of active atoms is now ',NACTIVE1703:          IF (DEBUG) WRITE(*,'(A,I6)') 'doaddatom> Number of active atoms is now ',NACTIVE
1704:          IF (NACTIVE.GT.MAXNACTIVE) THEN1704:          IF (NACTIVE.GT.MAXNACTIVE) THEN
1705: !           WRITE(*,'(A)') 'doaddatom> TURNONORDER:'1705:             WRITE(*,'(A)') 'doaddatom> TURNONORDER:'
1706: !           WRITE(*,'(5I6)') TURNONORDER(1:NACTIVE-1)1706:             WRITE(*,'(5I6)') TURNONORDER(1:NACTIVE-1)
1707:             NDUMMY=TURNONORDER(NACTIVE-MAXNACTIVE)1707:             NDUMMY=TURNONORDER(NACTIVE-MAXNACTIVE)
1708:             IF (INTFROZEN(NDUMMY)) THEN1708:             IF (INTFROZEN(NDUMMY)) THEN
1709:                IF (DEBUG) WRITE(*,'(A,I6,A,2I6)') ' doaddatom> Not turning off frozen active atom ',NDUMMY,' already frozen'1709:                IF (DEBUG) WRITE(*,'(A,I6,A,2I6)') ' doaddatom> Not turning off frozen active atom ',NDUMMY,' already frozen'
1710:             ELSE1710:             ELSE
1711:                IF (DEBUG) WRITE(*,'(A,I6,A,2I6)') ' doaddatom> Freezing active atom ',NDUMMY1711:                IF (DEBUG) WRITE(*,'(A,I6,A,2I6)') ' doaddatom> Freezing active atom ',NDUMMY
1712:                INTFROZEN(NDUMMY)=.TRUE.1712:                INTFROZEN(NDUMMY)=.TRUE.
1713: !1713: !
1714: ! Turn off constraints and repulsions between frozen atoms.1714: ! Turn off constraints and repulsions between frozen atoms.
1715: !1715: !
1716:                DO J2=1,NCONSTRAINT1716:                DO J2=1,NCONSTRAINT


r33322/modcudabfgsts.f90 2017-09-18 14:30:12.756659350 +0100 r33321/modcudabfgsts.f90 2017-09-18 14:30:13.468668763 +0100
157:             STOP157:             STOP
158:         END IF158:         END IF
159: 159: 
160:         DOINTERNALSTRANSFORM = INTWRAP_USEINTERNALS()160:         DOINTERNALSTRANSFORM = INTWRAP_USEINTERNALS()
161: 161: 
162:         IF (MASST .OR. CHECKINDEX .OR. REVERSEUPHILLT .OR. GRADSQ .OR. READV .OR. DUMPV .OR. &162:         IF (MASST .OR. CHECKINDEX .OR. REVERSEUPHILLT .OR. GRADSQ .OR. READV .OR. DUMPV .OR. &
163:             EIGENONLY .OR. FIXD .OR. CHECKOVERLAPT .OR. CHECKNEGATIVET .OR. REDOPATH .OR. REOPT.OR.BFGSSTEP.OR. &163:             EIGENONLY .OR. FIXD .OR. CHECKOVERLAPT .OR. CHECKNEGATIVET .OR. REDOPATH .OR. REOPT.OR.BFGSSTEP.OR. &
164:             REPELTST .OR. NOIT .OR. VARIABLES .OR. (FIXAFTER .GT. 0) .OR. PV .OR. (IVEC .NE. 0) .OR. CPMD .OR. DRAGT .OR. & 164:             REPELTST .OR. NOIT .OR. VARIABLES .OR. (FIXAFTER .GT. 0) .OR. PV .OR. (IVEC .NE. 0) .OR. CPMD .OR. DRAGT .OR. & 
165:             TWOENDS .OR. DOINTERNALSTRANSFORM .OR. BONDSFROMFILE .OR. DUMPMAG .OR. (NSTEPMIN .GT. 0)) THEN165:             TWOENDS .OR. DOINTERNALSTRANSFORM .OR. BONDSFROMFILE .OR. DUMPMAG .OR. (NSTEPMIN .GT. 0)) THEN
166:             WRITE(*,'(A)') " modcudabfgsts> Keywords MASS, CHECKINDEX, REVERSEUPHILLT, GRADSQ, READVEC, &166:             WRITE(*,'(A)') " modcudabfgsts> Keywords MASS, CHECKINDEX, REVERSEUPHILLT, GRADSQ, READVEC, &
167:                                  DUMPVECTOR, FIXD, EIGENONLY, CHECKOVERLAP, CHECKNEGATIVE, REDOPATH, REOPT, BFGSSTEP, REPELTST, &167:                                  DUMPVECTOR, FIXD, EIGENONLY, CHECKOVERLAPT, CHECKNEGATIVET, REDOPATH, REOPT, BFGSSTEP, REPELTST, &
168:                                  NOIT, VARIABLES, FIXAFTER, PV, MODE, MODEDOWN, CPMD, DRAG, TWOENDS, INTMIN, BONDSFROMFILE, & 168:                                  NOIT, VARIABLES, FIXAFTER, PV, MODE, MODEDOWN, CPMD, DRAG, TWOENDS, INTMIN, BONDSFROMFILE, & 
169:                                  DUMPMAG, STEPMIN are not yet supported. & 169:                                  DUMPMAG, STEPMIN are not yet supported. & 
170:                                  Contact rgm38 if you would like a feature to be added. "170:                                  Contact rgm38 if you would like a feature to be added. "
171:             WRITE(*,'(A)') " modcudabfgsts> Disclaimer: this list might not be exhaustive! "171:             WRITE(*,'(A)') " modcudabfgsts> Disclaimer: this list might not be exhaustive! "
172:             STOP172:             STOP
173:         END IF173:         END IF
174: 174: 
175:         IF (PRINTPTS) THEN175:         IF (PRINTPTS) THEN
176:             WRITE(*,'(A)') " modcudabfgsts> Keyword NOPOINTS must be used. & 176:             WRITE(*,'(A)') " modcudabfgsts> Keyword NOPOINTS must be used. & 
177:                                  Functionality to print coordinates/energies will be added at some point in the future. "177:                                  Functionality to print coordinates/energies will be added at some point in the future. "


r33322/OPTIM.F 2017-09-18 14:30:12.296653269 +0100 r33321/OPTIM.F 2017-09-18 14:30:12.996662523 +0100
663:                   CALL TSUMMARY663:                   CALL TSUMMARY
664:                   CALL FLUSH(6)664:                   CALL FLUSH(6)
665:                   GOTO 765665:                   GOTO 765
666:                ENDIF666:                ENDIF
667:             ENDIF667:             ENDIF
668:             IF (AMBER12T.AND.CHIRALENDPOINTS) THEN668:             IF (AMBER12T.AND.CHIRALENDPOINTS) THEN
669:                CALL CHIRALITY_CHECK(FIN,GOODENDPOINT)669:                CALL CHIRALITY_CHECK(FIN,GOODENDPOINT)
670:                IF (.NOT.GOODENDPOINT) THEN670:                IF (.NOT.GOODENDPOINT) THEN
671:                   PRINT '(A)', ' OPTIM> Chirality change in endpoints'671:                   PRINT '(A)', ' OPTIM> Chirality change in endpoints'
672:                   STOP672:                   STOP
673:                ELSE 
674:                   WRITE(*,'(A)') ' tryconnect> finish endpoint passed chirality check' 
675:                ENDIF 
676:             ENDIF 
677:             IF (AMBER12T.AND.NOCISTRANS) THEN ! check the finish geometry for cis/trans wrt start 
678:                CALL CIS_TRANS_CHECK(FIN,GOODENDPOINT) 
679:                IF (.NOT.GOODENDPOINT) THEN 
680:                   WRITE(*,'(A)')  
681:      &     ' tryconnect> Cis-trans isomerisation of a peptide bond detected in finish end point (wrt. the original structure), quit'  
682:                   STOP 
683:                ELSE 
684:                   WRITE(*,'(A)') ' tryconnect> finish endpoint cis/trans consistent with starting geometry' 
685:                ENDIF673:                ENDIF
686:             ENDIF674:             ENDIF
687:             CALL MINPERMDIST(Q,FIN,NATOMS,DEBUG,PARAM1,PARAM2,PARAM3,BULKT,TWOD,DIST,DIST2,RIGIDBODY,RMAT)675:             CALL MINPERMDIST(Q,FIN,NATOMS,DEBUG,PARAM1,PARAM2,PARAM3,BULKT,TWOD,DIST,DIST2,RIGIDBODY,RMAT)
688:             IF (PERMDISTINIT) PERMDIST=.FALSE.676:             IF (PERMDISTINIT) PERMDIST=.FALSE.
689:             IF (ATOMMATCHINIT) ATOMMATCHDIST=.FALSE.677:             IF (ATOMMATCHINIT) ATOMMATCHDIST=.FALSE.
690:             IF (BISECTT) THEN678:             IF (BISECTT) THEN
691:                CALL BISECT_OPT(NATOMS,EINITIAL,Q,EFINAL,FIN,DIST)679:                CALL BISECT_OPT(NATOMS,EINITIAL,Q,EFINAL,FIN,DIST)
692:             ELSE680:             ELSE
693:                IF (ALLOCATED(SAVES)) DEALLOCATE(SAVES)681:                IF (ALLOCATED(SAVES)) DEALLOCATE(SAVES)
694:                IF (ALLOCATED(SAVEF)) DEALLOCATE(SAVEF)682:                IF (ALLOCATED(SAVEF)) DEALLOCATE(SAVEF)


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0