hdiff output

r30241/commons.f90 2016-07-06 15:36:48.500210855 +0100 r30240/commons.f90 2016-07-06 15:36:50.368236111 +0100
 96:      &        ZETT2, RESTART, CONJG, NEWRESTART, AVOID, NATBT, DIFFRACTT, CHRMMT, INTMINT, LB2T, &  96:      &        ZETT2, RESTART, CONJG, NEWRESTART, AVOID, NATBT, DIFFRACTT, CHRMMT, INTMINT, LB2T, & 
 97:      &        PTMC, BINSTRUCTURES, PROGRESS, MODEL1T, NEWRESTART_MD, CHANGE_TEMP, NOCISTRANS, CHECKCHIRALITY, & 97:      &        PTMC, BINSTRUCTURES, PROGRESS, MODEL1T, NEWRESTART_MD, CHANGE_TEMP, NOCISTRANS, CHECKCHIRALITY, &
 98:      &        GBT, GBDT, GBDPT, GEMT, LINRODT, RADIFT, CAPBINT, DBPT, DBPTDT, DMBLMT, DMBLPYT, EFIELDT, PAHAT, STOCKAAT, MORSEDPT, & 98:      &        GBT, GBDT, GBDPT, GEMT, LINRODT, RADIFT, CAPBINT, DBPT, DBPTDT, DMBLMT, DMBLPYT, EFIELDT, PAHAT, STOCKAAT, MORSEDPT, &
 99:      &        MSGBT, MSTBINT, MMRSDPT, MSSTOCKT, LWOTPT, NCAPT, NPAHT, NTIPT, PAHW99T, ELLIPSOIDT, GAYBERNET,&  99:      &        MSGBT, MSTBINT, MMRSDPT, MSSTOCKT, LWOTPT, NCAPT, NPAHT, NTIPT, PAHW99T, ELLIPSOIDT, GAYBERNET,& 
100:      &        MULTPAHAT, PAPT, PAPBINT, PAPJANT, PTSTSTT, SHIFTED, SILANET, TDHDT, DDMT, WATERDCT, WATERKZT, CHECKDT, CHECKMARKOVT,& 100:      &        MULTPAHAT, PAPT, PAPBINT, PAPJANT, PTSTSTT, SHIFTED, SILANET, TDHDT, DDMT, WATERDCT, WATERKZT, CHECKDT, CHECKMARKOVT,& 
101:      &        TETHER, HISTSMOOTH, VISITPROP, ARMT, FixedEndMoveT, FIXCOM, RESTORET, QUADT, AMHT, MOVESHELLT, QDT, QD2T, &101:      &        TETHER, HISTSMOOTH, VISITPROP, ARMT, FixedEndMoveT, FIXCOM, RESTORET, QUADT, AMHT, MOVESHELLT, QDT, QD2T, &
102:      &        PARAMONOVPBCX, PARAMONOVPBCY, PARAMONOVPBCZ, PARAMONOVCUTOFF, GAYBERNEDCT, UNFREEZERES, FREEZEALL, &102:      &        PARAMONOVPBCX, PARAMONOVPBCY, PARAMONOVPBCZ, PARAMONOVCUTOFF, GAYBERNEDCT, UNFREEZERES, FREEZEALL, &
103:      &        PROJIT, PROJIHT, LEAPDIHE, DUMPQUT, DUMPBESTT, LJSITE, BLJSITE, LJSITEATTR, DUMPSTEPST, &103:      &        PROJIT, PROJIHT, LEAPDIHE, DUMPQUT, DUMPBESTT, LJSITE, BLJSITE, LJSITEATTR, DUMPSTEPST, &
104:      &        AMBERT, RANDOMSEEDT, PYGPERIODICT, LJCAPSIDT, PYBINARYT, SWAPMOVEST, MOVABLEATOMST, LIGMOVET,DUMPSTRUCTURES, &104:      &        AMBERT, RANDOMSEEDT, PYGPERIODICT, LJCAPSIDT, PYBINARYT, SWAPMOVEST, MOVABLEATOMST, LIGMOVET,DUMPSTRUCTURES, &
105:      &        LJSITECOORDST, VGW, ACKLANDT, G46, DF1T, PULLT, LOCALSAMPLET, CSMT, A9INTET, INTERESTORE, COLDFUSION, &105:      &        LJSITECOORDST, VGW, ACKLANDT, G46, DF1T, PULLT, LOCALSAMPLET, CSMT, A9INTET, INTERESTORE, COLDFUSION, &
106:      &        CSMGUIDET, MULTISITEPYT, CHAPERONINT, AVOIDRESEEDT, OHCELLT, UNFREEZEFINALQ, PERCOLATET, PERCT, PERCACCEPTED, PERCCOMPMARKOV, &106:      &        CSMGUIDET, MULTISITEPYT, CHAPERONINT, AVOIDRESEEDT, OHCELLT, UNFREEZEFINALQ, PERCOLATET, PERCT, PERCACCEPTED,&
107:      &        GENALT, MINDENSITYT, RESTRICTREGION, RESTRICTREGIONTEST, RESTRICTCYL, ACK1, ACK2, HARMONICF,&107:      &        GENALT, MINDENSITYT, RESTRICTREGION, RESTRICTREGIONTEST, RESTRICTCYL, ACK1, ACK2, HARMONICF,&
108:      &        HARMONICDONTMOVE, DUMPUNIQUE, FREEZESAVE, TBP, RBSYMT, PTMCDUMPSTRUCT, PTMCDUMPENERT, PYCOLDFUSION, MONITORT,&108:      &        HARMONICDONTMOVE, DUMPUNIQUE, FREEZESAVE, TBP, RBSYMT, PTMCDUMPSTRUCT, PTMCDUMPENERT, PYCOLDFUSION, MONITORT,&
109:      &        CHARMMDFTBT, PERMINVOPT, BLOCKMOVET, MAXERISE_SET, PYT, BINARY_EXAB, CHIROT, SANDBOXT, &109:      &        CHARMMDFTBT, PERMINVOPT, BLOCKMOVET, MAXERISE_SET, PYT, BINARY_EXAB, CHIROT, SANDBOXT, &
110:      &        RESERVOIRT, DISTOPT, ONEDAPBCT, ONEDPBCT, TWODAPBCT, TWODPBCT, THREEDAPBCT, THREEDPBCT, RATIOT, &110:      &        RESERVOIRT, DISTOPT, ONEDAPBCT, ONEDPBCT, TWODAPBCT, TWODPBCT, THREEDAPBCT, THREEDPBCT, RATIOT, &
111:      &        PTRANDOM, PTINTERVAL, PTSINGLE, PTSETS, CHEMSHIFT, CHEMSHIFT2, CSH, DEBUGss2029, UNIFORMMOVE, RANSEEDT, &111:      &        PTRANDOM, PTINTERVAL, PTSINGLE, PTSETS, CHEMSHIFT, CHEMSHIFT2, CSH, DEBUGss2029, UNIFORMMOVE, RANSEEDT, &
112:      &        TTM3T, NOINVERSION, RIGIDCONTOURT, UPDATERIGIDREFT, HYBRIDMINT, COMPRESSRIGIDT, MWFILMT, &112:      &        TTM3T, NOINVERSION, RIGIDCONTOURT, UPDATERIGIDREFT, HYBRIDMINT, COMPRESSRIGIDT, MWFILMT, &
113:      &        SUPPRESST, MFETT, POLIRT, QUIPT, SWPOTT, MWPOTT, REPMATCHT, GLJT, MLJT, READMASST, SPECMASST, NEWTSALLIST, &113:      &        SUPPRESST, MFETT, POLIRT, QUIPT, SWPOTT, MWPOTT, REPMATCHT, GLJT, MLJT, READMASST, SPECMASST, NEWTSALLIST, &
114:      &        PHI4MODELT, CUDAT, CUDATIMET, AMBER12T, ENERGY_DECOMPT, NEWMOVEST, DUMPMINT, MBPOLT, MOLECULART, GCBHT, SEMIGRAND_MUT, USEROT, & 114:      &        PHI4MODELT, CUDAT, CUDATIMET, AMBER12T, ENERGY_DECOMPT, NEWMOVEST, DUMPMINT, MBPOLT, MOLECULART, GCBHT, SEMIGRAND_MUT, USEROT, & 
115:      &        SAVEMULTIMINONLY, GRADPROBLEMT, INTLJT, CONDATT, QCIPERMCHECK, &115:      &        SAVEMULTIMINONLY, GRADPROBLEMT, INTLJT, CONDATT, QCIPERMCHECK, &
116:      &        INTCONSTRAINTT, INTFREEZET, CHECKCONINT, CONCUTABST, CONCUTFRACT, INTERPCOSTFUNCTION, &116:      &        INTCONSTRAINTT, INTFREEZET, CHECKCONINT, CONCUTABST, CONCUTFRACT, INTERPCOSTFUNCTION, &


r30241/compress.f 2016-07-06 15:36:48.872215884 +0100 r30240/compress.f 2016-07-06 15:36:50.744241193 +0100
 13: C   GNU General Public License for more details. 13: C   GNU General Public License for more details.
 14: C 14: C
 15: C   You should have received a copy of the GNU General Public License 15: C   You should have received a copy of the GNU General Public License
 16: C   along with this program; if not, write to the Free Software 16: C   along with this program; if not, write to the Free Software
 17: C   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 17: C   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 18: C 18: C
 19: C 19: C
 20: C  Add energy and gradient correction terms for compression 20: C  Add energy and gradient correction terms for compression
 21: C 21: C
 22:       SUBROUTINE COMPRESS(X,V,ENERGY,GTEST) 22:       SUBROUTINE COMPRESS(X,V,ENERGY,GTEST)
 23:       USE COMMONS 23:       USE commons
 24:       USE GENRIGID, ONLY: NRIGIDBODY, RIGIDINIT 
 25:       IMPLICIT NONE 24:       IMPLICIT NONE
 26:       LOGICAL GTEST 25:       LOGICAL GTEST
 27:       INTEGER J1, J3, NMOL 26:       INTEGER J1, J3, NMOL
 28:       DOUBLE PRECISION X(3*NATOMS), DIST, V(3*NATOMS), ENERGY, XMASS, YMASS, ZMASS 27:       DOUBLE PRECISION X(3*NATOMS), DIST, V(3*NATOMS), ENERGY, XMASS, YMASS, ZMASS
 29:  28: 
 30: C jwrm2> for rigid body angle axis system, only the first half of X is the body position 29: C jwrm2> for rigid body angle axis system, only the first half of X is the body position
 31: C        Note, as written this is a harmonic potential acting on the centre of the rigid 30: C        Note, as written this is a harmonic potential acting on the centre of the rigid
 32: C        body, NOT on each site of the rigid body  31: C        body, NOT on each site of the rigid body 
 33:       NMOL = NATOMS 32:       NMOL = NATOMS
 34:       IF (RIGID) NMOL = NATOMS/2 33:       IF (RIGID) NMOL = NATOMS/2
 35:       IF (RIGIDINIT) NMOL = NRIGIDBODY 
 36:  34: 
 37: C Find centre of mass 35: C Find centre of mass
 38:       XMASS=0.0D0 36:       XMASS=0.0D0
 39:       YMASS=0.0D0 37:       YMASS=0.0D0
 40:       ZMASS=0.0D0 38:       ZMASS=0.0D0
 41:       DO J1=1,NMOL 39:       DO J1=1,NMOL
 42:          XMASS=XMASS+X(3*(J1-1)+1) 40:          XMASS=XMASS+X(3*(J1-1)+1)
 43:          YMASS=YMASS+X(3*(J1-1)+2) 41:          YMASS=YMASS+X(3*(J1-1)+2)
 44:          ZMASS=ZMASS+X(3*(J1-1)+3) 42:          ZMASS=ZMASS+X(3*(J1-1)+3)
 45:       ENDDO 43:       ENDDO


r30241/keywords.f 2016-07-06 15:36:49.256221076 +0100 r30240/keywords.f 2016-07-06 15:36:51.128246386 +0100
4819:             CALL READA(UNSTRING)4819:             CALL READA(UNSTRING)
4820:             IF (TRIM(ADJUSTL(UNSTRING)).EQ.'GMIN') REPMATCHT=.TRUE.4820:             IF (TRIM(ADJUSTL(UNSTRING)).EQ.'GMIN') REPMATCHT=.TRUE.
4821:          ENDIF4821:          ENDIF
4822: 4822: 
4823:       ELSE IF (WORD.EQ.'PBGLUE') THEN4823:       ELSE IF (WORD.EQ.'PBGLUE') THEN
4824:          PBGLUET=.TRUE.4824:          PBGLUET=.TRUE.
4825: 4825: 
4826:       ELSE IF (WORD.EQ.'PERCOLATE') THEN4826:       ELSE IF (WORD.EQ.'PERCOLATE') THEN
4827:          PERCOLATET=.TRUE.4827:          PERCOLATET=.TRUE.
4828:          PERCACCEPTED=.FALSE.4828:          PERCACCEPTED=.FALSE.
4829:          PERCCOMPMARKOV=.FALSE. 
4830:          IF (NITEMS.GT.1) CALL READF(PERCCUT)4829:          IF (NITEMS.GT.1) CALL READF(PERCCUT)
4831:          IF (NITEMS.GT.2) CALL READF(K_COMP)4830:          IF (NITEMS.GT.2) CALL READF(K_COMP)
4832:          IF (NITEMS.GT.3) CALL READF(GUIDECUT)4831:          IF (NITEMS.GT.3) CALL READF(GUIDECUT)
4833: 4832: 
4834:       ELSE IF (WORD.EQ.'PERIODIC') THEN4833:       ELSE IF (WORD.EQ.'PERIODIC') THEN
4835:          PERIODIC=.TRUE.4834:          PERIODIC=.TRUE.
4836:          CALL READF(XX)4835:          CALL READF(XX)
4837:          BOXLX=XX4836:          BOXLX=XX
4838:          BOX3D(1) = XX4837:          BOX3D(1) = XX
4839:          IF (NITEMS.GT.2) THEN4838:          IF (NITEMS.GT.2) THEN


r30241/mc.F 2016-07-06 15:36:49.612225889 +0100 r30240/mc.F 2016-07-06 15:36:51.512251578 +0100
 51:       INTEGER :: NSYMCALL=0, NULLMOVES(NPAR), NULLMOVEST(NPAR), NSWAPS=0 51:       INTEGER :: NSYMCALL=0, NULLMOVES(NPAR), NULLMOVEST(NPAR), NSWAPS=0
 52:       DOUBLE PRECISION POTEL, SCALEFAC, RANDOM, DPRAND, DPRAND_UNIVERSAL, SAVECOORDS(3*NATOMSALLOC), TEMPCOORDS(3*NATOMSALLOC), 52:       DOUBLE PRECISION POTEL, SCALEFAC, RANDOM, DPRAND, DPRAND_UNIVERSAL, SAVECOORDS(3*NATOMSALLOC), TEMPCOORDS(3*NATOMSALLOC),
 53:      1                 TIME, SPOTEL(NSUPER), SCOORDS(3*NATOMSALLOC,NSUPER), SCREENC(3*NATOMSALLOC), 53:      1                 TIME, SPOTEL(NSUPER), SCOORDS(3*NATOMSALLOC,NSUPER), SCREENC(3*NATOMSALLOC),
 54:      2                 EPPREV(NPAR), QSTART, QFINISH, RANNJ, RMIN, RMINO, RCOORDS(3*NATOMSALLOC),ELASTSYM(NPAR), 54:      2                 EPPREV(NPAR), QSTART, QFINISH, RANNJ, RMIN, RMINO, RCOORDS(3*NATOMSALLOC),ELASTSYM(NPAR),
 55:      3                 RCOORDSO(3*NATOMSALLOC), RVAT(NATOMSALLOC), RVATO(NATOMSALLOC), EPSSAVE, EBEST(NPAR), GCEBEST(NPAR),  55:      3                 RCOORDSO(3*NATOMSALLOC), RVAT(NATOMSALLOC), RVATO(NATOMSALLOC), EPSSAVE, EBEST(NPAR), GCEBEST(NPAR), 
 56:      4                 GCEBESTP(NPAR), 56:      4                 GCEBESTP(NPAR),
 57:      4                 BESTCOORDS(3*NATOMSALLOC,NPAR), RMSD, VINIT, CTE, TEMPTRAJ(0:NPAR-1), GCBESTCOORDS(3*NATOMSALLOC,NPAR), 57:      4                 BESTCOORDS(3*NATOMSALLOC,NPAR), RMSD, VINIT, CTE, TEMPTRAJ(0:NPAR-1), GCBESTCOORDS(3*NATOMSALLOC,NPAR),
 58:      5                 T, BETA(0:NPAR-1), GRAD(3*NATOMSALLOC), E, W, GCBESTCOORDSP(3*NATOMSALLOC,NPAR), 58:      5                 T, BETA(0:NPAR-1), GRAD(3*NATOMSALLOC), E, W, GCBESTCOORDSP(3*NATOMSALLOC,NPAR),
 59:      &                 DUMMY1, DUMMY2, DUMMY3, INTE, OPOTEL, GCBESTVAT(NATOMSALLOC,NPAR), GCBESTVATP(NATOMSALLOC,NPAR),  59:      &                 DUMMY1, DUMMY2, DUMMY3, INTE, OPOTEL, GCBESTVAT(NATOMSALLOC,NPAR), GCBESTVATP(NATOMSALLOC,NPAR), 
 60:      &                 XMASS, YMASS, ZMASS, CMMAX 60:      &                 XMASS, YMASS, ZMASS, CMMAX
 61:       LOGICAL CHANGEDE, RES1, RES2, COMPON, QUENCHCOMP 61:       LOGICAL CHANGEDE, RES1, RES2
 62:       LOGICAL CHIRALFAIL,AMIDEFAIL, LOGDUMMY, DISTOK 62:       LOGICAL CHIRALFAIL,AMIDEFAIL, LOGDUMMY, DISTOK
 63:       CHARACTER FNAME*9 63:       CHARACTER FNAME*9
 64:       CHARACTER (LEN= 3)  ISTR 64:       CHARACTER (LEN= 3)  ISTR
 65:       CHARACTER (LEN=20) QUENCHNUM, QUNAME 65:       CHARACTER (LEN=20) QUENCHNUM, QUNAME
 66:       CHARACTER (LEN=20) BESTNAME 66:       CHARACTER (LEN=20) BESTNAME
 67:       LOGICAL  CHANGED 67:       LOGICAL  CHANGED
 68: c  AMH  68: c  AMH 
 69:       INTEGER :: GLY_COUNT,III,I2,I500,SNAPCOUNT 69:       INTEGER :: GLY_COUNT,III,I2,I500,SNAPCOUNT
 70:       DOUBLE PRECISION prcord(NATOMSALLOC,3,3,3) 70:       DOUBLE PRECISION prcord(NATOMSALLOC,3,3,3)
 71:       DOUBLE PRECISION :: mctemp 71:       DOUBLE PRECISION :: mctemp
 72: !  csw34> PAIRDIST variables 72: !  csw34> PAIRDIST variables
 73:       INTEGER :: PAIRCOUNTER 73:       INTEGER :: PAIRCOUNTER
 74:       DOUBLE PRECISION, EXTERNAL :: PAIRDISTANCE 74:       DOUBLE PRECISION, EXTERNAL :: PAIRDISTANCE
 75:       DOUBLE PRECISION :: ATOM1(3),ATOM2(3) 75:       DOUBLE PRECISION :: ATOM1(3),ATOM2(3)
 76:  76: 
 77:       LOGICAL EVAP, ATEST, STAY, evapreject, LOPEN, COMPLETE 77:       LOGICAL EVAP, ATEST, STAY, evapreject, LOPEN, COMPLETE
 78:       COMMON /CO/ COMPON 
 79:       COMMON /EV/ EVAP, evapreject 78:       COMMON /EV/ EVAP, evapreject
 80:       COMMON /MYPOT/ POTEL 79:       COMMON /MYPOT/ POTEL
 81:       COMMON /TOT/ NQTOT 80:       COMMON /TOT/ NQTOT
 82:       COMMON /Q4C/ QSTART, QFINISH 81:       COMMON /Q4C/ QSTART, QFINISH
 83:  82: 
 84:       character(len=10)       :: datechar,timechar,zonechar 83:       character(len=10)       :: datechar,timechar,zonechar
 85:       integer                 :: values(8),itime1 84:       integer                 :: values(8),itime1
 86:       DOUBLE PRECISION :: DISTGROUPX2,DISTGROUPY2,DISTGROUPZ2,DISTGROUPCENTRE,DUMMY 85:       DOUBLE PRECISION :: DISTGROUPX2,DISTGROUPY2,DISTGROUPZ2,DISTGROUPCENTRE,DUMMY
 87:       integer :: J6, L, M, SUMSQUAREDIFF, SUMSQUAREDIFF1D, HBONDDIFF 86:       integer :: J6, L, M, SUMSQUAREDIFF, SUMSQUAREDIFF1D, HBONDDIFF
 88:       INTEGER GETUNIT 87:       INTEGER GETUNIT
331:       WRITE(MYUNIT,'(A,I10,A,G20.10,A,I5,A,G12.5,A,G20.10,A,F11.1)') 'Qu ',NQ(JP),' E=',330:       WRITE(MYUNIT,'(A,I10,A,G20.10,A,I5,A,G12.5,A,G20.10,A,F11.1)') 'Qu ',NQ(JP),' E=',
332:      1           POTEL,' steps=',ITERATIONS,' RMS=',RMS,' Markov E=',POTEL,' t=',TIME-TSTART331:      1           POTEL,' steps=',ITERATIONS,' RMS=',RMS,' Markov E=',POTEL,' t=',TIME-TSTART
333:       CALL FLUSH(MYUNIT)332:       CALL FLUSH(MYUNIT)
334: 333: 
335:  334:  
336: !  EPREV saves the previous energy in the Markov chain.335: !  EPREV saves the previous energy in the Markov chain.
337: !  EBEST and JBEST record the lowest energy since the last reseeding and the336: !  EBEST and JBEST record the lowest energy since the last reseeding and the
338: !  step it was attained at. BESTCOORDS contains the corresponding coordinates.337: !  step it was attained at. BESTCOORDS contains the corresponding coordinates.
339:  338:  
340:       EPREV(JP)=POTEL339:       EPREV(JP)=POTEL
341: ! jwrm2> if we're using percolate with compression, we need to know whether EPREV was calculated with compression on 
342:       IF (DEBUG .AND. PERCOLATET) PERCCOMPMARKOV = COMPON 
343: ! jwrm2> end 
344:       EPPREV(JP)=0.0D0340:       EPPREV(JP)=0.0D0
345:       ELASTSYM(JP)=0.0D0341:       ELASTSYM(JP)=0.0D0
346:       IF (.NOT.RESTORET) EBEST(JP)=POTEL342:       IF (.NOT.RESTORET) EBEST(JP)=POTEL
347:       BESTCOORDS(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)343:       BESTCOORDS(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)
348:       JBEST(JP)=0344:       JBEST(JP)=0
349:       RMIN=POTEL345:       RMIN=POTEL
350:       RCOORDS(1:3*NATOMS)=COORDS(1:3*NATOMS,1)346:       RCOORDS(1:3*NATOMS)=COORDS(1:3*NATOMS,1)
351:       COORDSO(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)347:       COORDSO(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)
352:       VATO(1:NATOMS,JP)=VAT(1:NATOMS,JP)348:       VATO(1:NATOMS,JP)=VAT(1:NATOMS,JP)
353:       EPSSPHERE=EPSSAVE349:       EPSSPHERE=EPSSAVE
453: !     csw34> Added initial call to check_cistrans_protein to store cis/trans info for initial structure449: !     csw34> Added initial call to check_cistrans_protein to store cis/trans info for initial structure
454:          IF (AMBERT.AND.NOCISTRANS.AND.(.NOT.NOCISTRANSDNA).AND.(.NOT.NOCISTRANSRNA)) THEN450:          IF (AMBERT.AND.NOCISTRANS.AND.(.NOT.NOCISTRANSDNA).AND.(.NOT.NOCISTRANSRNA)) THEN
455:             WRITE(MYUNIT,'(A)') ' mc> Storing cis/trans information for initial structure'451:             WRITE(MYUNIT,'(A)') ' mc> Storing cis/trans information for initial structure'
456:             CALL check_cistrans_protein(COORDS(:,1),NATOMS,LOGDUMMY,MINOMEGA,cisarray1)452:             CALL check_cistrans_protein(COORDS(:,1),NATOMS,LOGDUMMY,MINOMEGA,cisarray1)
457:          ENDIF453:          ENDIF
458: !  EPREV saves the previous energy in the Markov chain.454: !  EPREV saves the previous energy in the Markov chain.
459: !  EBEST and JBEST record the lowest energy since the last reseeding and the455: !  EBEST and JBEST record the lowest energy since the last reseeding and the
460: !  step it was attained at. BESTCOORDS contains the corresponding coordinates.456: !  step it was attained at. BESTCOORDS contains the corresponding coordinates.
461:  457:  
462:          EPREV(JP)=POTEL458:          EPREV(JP)=POTEL
463: ! jwrm2> if we're using percolate with compression, we need to know whether EPREV was calculated with compression on 
464:          IF (DEBUG .AND. PERCOLATET) PERCCOMPMARKOV = COMPON 
465: ! jwrm2> end 
466:          EPPREV(JP)=0.0D0459:          EPPREV(JP)=0.0D0
467:          ELASTSYM(JP)=0.0D0460:          ELASTSYM(JP)=0.0D0
468:          IF (.NOT.RESTORET) EBEST(JP)=POTEL461:          IF (.NOT.RESTORET) EBEST(JP)=POTEL
469:          BESTCOORDS(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)462:          BESTCOORDS(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)
470:          JBEST(JP)=0463:          JBEST(JP)=0
471:          RMIN=POTEL464:          RMIN=POTEL
472:          RCOORDS(1:3*NATOMS)=COORDS(1:3*NATOMS,1)465:          RCOORDS(1:3*NATOMS)=COORDS(1:3*NATOMS,1)
473:          COORDSO(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)466:          COORDSO(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)
474:          VATO(1:NATOMS,JP)=VAT(1:NATOMS,JP)467:          VATO(1:NATOMS,JP)=VAT(1:NATOMS,JP)
475: !hk286 - otherwise NEWRESTART is always called when the keyword RESTORE is also used468: !hk286 - otherwise NEWRESTART is always called when the keyword RESTORE is also used
1956:                         EPREV(JP)=HBONDESAVE1949:                         EPREV(JP)=HBONDESAVE
1957: !                        WRITE(MYUNIT,'(A)') " HBONDMATRIX> Markov energy reset to pass sanity checks"1950: !                        WRITE(MYUNIT,'(A)') " HBONDMATRIX> Markov energy reset to pass sanity checks"
1958:                      ENDIF1951:                      ENDIF
1959:                   ENDIF1952:                   ENDIF
1960:                ENDIF1953:                ENDIF
1961: !1954: !
1962: !  Sanity check to make sure the Markov energy agrees with COORDSO. 1955: !  Sanity check to make sure the Markov energy agrees with COORDSO. 
1963: !  Stop if not true.1956: !  Stop if not true.
1964: !1957: !
1965:                IF ((DEBUG.OR.CHECKMARKOVT).AND.(.NOT.(HBONDMATRIX.OR.PERMOPT.OR.PERMINVOPT.OR.FEBHT.OR.QALCST.OR.MODULART))) THEN1958:                IF ((DEBUG.OR.CHECKMARKOVT).AND.(.NOT.(HBONDMATRIX.OR.PERMOPT.OR.PERMINVOPT.OR.FEBHT.OR.QALCST.OR.MODULART))) THEN
1966: ! jwrm2> If we're using percolate, we need to set compression to whether it was on or not when calculating the Markov energy 
1967:                   QUENCHCOMP = COMPON 
1968:                   IF (PERCOLATET) COMPON = PERCCOMPMARKOV 
1969:                   CALL POTENTIAL(COORDSO(:,JP),GRAD,OPOTEL,.FALSE.,.FALSE.)1959:                   CALL POTENTIAL(COORDSO(:,JP),GRAD,OPOTEL,.FALSE.,.FALSE.)
1970:                   IF (ABS(OPOTEL-EPREV(JP)).GT.ABS(ECONV)) THEN1960:                   IF (ABS(OPOTEL-EPREV(JP)).GT.ABS(ECONV)) THEN
1971:                      IF (EVAP) THEN1961:                      IF (EVAP) THEN
1972:                         WRITE(MYUNIT,'(3(A,G20.10))') 'mc> WARNING - energy for saved coordinates ',OPOTEL,1962:                         WRITE(MYUNIT,'(3(A,G20.10))') 'mc> WARNING - energy for saved coordinates ',OPOTEL,
1973:      &                     ' differs from Markov energy ',EPREV(JP),' because an atom moved outside the container'1963:      &                     ' differs from Markov energy ',EPREV(JP),' because an atom moved outside the container'
1974:                      ELSE1964:                      ELSE
1975:                         WRITE(MYUNIT,'(2(A,G20.10))') 'mc> ERROR - energy for coordinates in COORDSO=',OPOTEL,1965:                         WRITE(MYUNIT,'(2(A,G20.10))') 'mc> ERROR - energy for coordinates in COORDSO=',OPOTEL,
1976:      &                                                 ' but Markov energy=',EPREV(JP)1966:      &                                                 ' but Markov energy=',EPREV(JP)
1977:                         IF (.NOT.(CHEMSHIFT2)) STOP1967:                         IF (.NOT.(CHEMSHIFT2)) STOP
1978:                      ENDIF1968:                      ENDIF
2012: !                    IF (RESTART) WRITE(MYUNIT,'(A,I6,A)') ' relaxation time set to ',NRELAX,' steps'2002: !                    IF (RESTART) WRITE(MYUNIT,'(A,I6,A)') ' relaxation time set to ',NRELAX,' steps'
2013:                      JACCPREV=J12003:                      JACCPREV=J1
2014:                   ENDIF2004:                   ENDIF
2015:                   IF (QDONE.EQ.1) THEN2005:                   IF (QDONE.EQ.1) THEN
2016:                      NSUCCESS(JP)=NSUCCESS(JP)+12006:                      NSUCCESS(JP)=NSUCCESS(JP)+1
2017:                   ELSE2007:                   ELSE
2018:                      NFAIL(JP)=NFAIL(JP)+12008:                      NFAIL(JP)=NFAIL(JP)+1
2019:                   ENDIF2009:                   ENDIF
2020:                   EPPREV(JP)=EPREV(JP)2010:                   EPPREV(JP)=EPREV(JP)
2021:                   EPREV(JP)=POTEL2011:                   EPREV(JP)=POTEL
2022: ! jwrm2> if we're using percolate with compression, we need to know whether EPREV was calculated with compression on 
2023:                   IF (DEBUG .AND. PERCOLATET) PERCCOMPMARKOV = QUENCHCOMP 
2024: ! jwrm2> end 
2025: ! HBONDMATRIX 2012: ! HBONDMATRIX 
2026: ! csw34> If quench is part of existing group, update the Markov energy 2013: ! csw34> If quench is part of existing group, update the Markov energy 
2027:                   IF ((AMBERT.OR.AMBER12T.OR.(CUDAT.AND.(CUDAPOT.EQ.'A'))).AND.HBONDMATRIX.AND.HBONDMATCH) THEN2014:                   IF ((AMBERT.OR.AMBER12T.OR.(CUDAT.AND.(CUDAPOT.EQ.'A'))).AND.HBONDMATRIX.AND.HBONDMATCH) THEN
2028:                      HBONDMARKOV(HBONDMATCHN)=POTEL  2015:                      HBONDMARKOV(HBONDMATCHN)=POTEL  
2029: ! csw34> Update the group max energy if necessary2016: ! csw34> Update the group max energy if necessary
2030:                      IF (POTEL.GT.HBONDMAXE(HBONDMATCHN)) THEN2017:                      IF (POTEL.GT.HBONDMAXE(HBONDMATCHN)) THEN
2031:                         WRITE(MYUNIT,'(A,I3,A,G20.10)') ' HBONDMATRIX> New highest energy structure for group ',2018:                         WRITE(MYUNIT,'(A,I3,A,G20.10)') ' HBONDMATRIX> New highest energy structure for group ',
2032:      &                                                  HBONDMATCHN,' found. E=',POTEL2019:      &                                                  HBONDMATCHN,' found. E=',POTEL
2033:                         HBONDMAXE(HBONDMATCHN)=POTEL2020:                         HBONDMAXE(HBONDMATCHN)=POTEL
2034:                      ENDIF2021:                      ENDIF


r30241/potential.f90 2016-07-06 15:36:49.976230810 +0100 r30240/potential.f90 2016-07-06 15:36:51.876256498 +0100
1243:       CLOSE(91)1243:       CLOSE(91)
1244:       OPEN (UNIT=91, FILE='STATIS', STATUS='OLD')1244:       OPEN (UNIT=91, FILE='STATIS', STATUS='OLD')
1245:       READ(91,*) (GRAD(J3), J3=1, 3*NATOMS)1245:       READ(91,*) (GRAD(J3), J3=1, 3*NATOMS)
1246:       CLOSE(91)1246:       CLOSE(91)
1247:       WRITE(91,'(3F20.10)') (GRAD(J3), J3=1, 3*NATOMS)1247:       WRITE(91,'(3F20.10)') (GRAD(J3), J3=1, 3*NATOMS)
1248:    END IF1248:    END IF
1249: 1249: 
1250: !   IF (SQUEEZET) CALL SQUEEZE(X, GRAD, EREAL, GRADT)1250: !   IF (SQUEEZET) CALL SQUEEZE(X, GRAD, EREAL, GRADT)
1251: 1251: 
1252:    IF (K_COMP == 0.0D0) COMPON=.FALSE.1252:    IF (K_COMP == 0.0D0) COMPON=.FALSE.
1253:    IF (COMPON) THEN1253:    IF (COMPON) CALL COMPRESS(X, GRAD, EREAL, GRADT)
1254:       IF (RIGIDINIT .AND. ATOMRIGIDCOORDT) THEN 
1255: ! jwrm2> Need rigid body coordinates for compress 
1256:          XRIGIDCOORDS(:) = 0.D0 
1257:          CALL TRANSFORMCTORIGID(X, XRIGIDCOORDS) 
1258:          CALL COMPRESS(XRIGIDCOORDS, GRAD, EREAL, GRADT) 
1259:       ELSE 
1260:          CALL COMPRESS(X, GRAD, EREAL, GRADT) 
1261:       END IF 
1262:    END IF 
1263: 1254: 
1264: ! Apply twist forces, if appropriate1255: ! Apply twist forces, if appropriate
1265:    IF (TWISTT) THEN1256:    IF (TWISTT) THEN
1266:       CALL TWIST(X(1:3*NATOMS), NATOMS, GRAD(1:3*NATOMS), EREAL, GRADT)1257:       CALL TWIST(X(1:3*NATOMS), NATOMS, GRAD(1:3*NATOMS), EREAL, GRADT)
1267:    END IF1258:    END IF
1268: 1259: 
1269: ! ds656> Apply a substrate field for keyword MIE_FIELD1260: ! ds656> Apply a substrate field for keyword MIE_FIELD
1270:    IF(MIEFT) CALL MIEF(X,GRAD,EREAL,GRADT,SECT,.FALSE.)1261:    IF(MIEFT) CALL MIEF(X,GRAD,EREAL,GRADT,SECT,.FALSE.)
1271: 1262: 
1272: !1263: !


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0