hdiff output

r32807/key.f90 2017-06-16 14:30:15.156482781 +0100 r32806/key.f90 2017-06-16 14:30:16.276497463 +0100
 18:      &        NTRAPPOW, MAXINTIMAGE, CHECKDID, CHECKREPINTERVAL, INTFREEZEMIN, INTNTRIESMAX, INTIMAGEINCR, & 18:      &        NTRAPPOW, MAXINTIMAGE, CHECKDID, CHECKREPINTERVAL, INTFREEZEMIN, INTNTRIESMAX, INTIMAGEINCR, &
 19:      &        NCONSTRAINTFIX, INTIMAGECHECK, NREPULSIVEFIX, NRANROT, NENDDUP, LOCALPERMNEIGH, & 19:      &        NCONSTRAINTFIX, INTIMAGECHECK, NREPULSIVEFIX, NRANROT, NENDDUP, LOCALPERMNEIGH, &
 20:      &        LOCALPERMMAXSEP, NONEDAPBC, STRUC, QCHEMESNAO, QCHEMESNMO, QCHEMESNZERO, QCHEMESNELEC, PMPATHINR, & 20:      &        LOCALPERMMAXSEP, NONEDAPBC, STRUC, QCHEMESNAO, QCHEMESNMO, QCHEMESNZERO, QCHEMESNELEC, PMPATHINR, &
 21:      &        MULTISUNIT, MULTIFUNIT,NIMAGEINST,NGLJ,ST_TSSTEP,LANSTEP,NONFREEZE, & 21:      &        MULTISUNIT, MULTIFUNIT,NIMAGEINST,NGLJ,ST_TSSTEP,LANSTEP,NONFREEZE, &
 22:      &        MCPATHBINS,MCPATHEQUIL,MCPATHSTEPS,MCPATHPRTFRQ,MCPATHTS,MCPATHSCHECK,RPHSLICES,RPHQBINS, & 22:      &        MCPATHBINS,MCPATHEQUIL,MCPATHSTEPS,MCPATHPRTFRQ,MCPATHTS,MCPATHSCHECK,RPHSLICES,RPHQBINS, &
 23:      &        ITWIST, JTWIST, KTWIST, LTWIST, MCPATHSTART, MCPATHBLOCK, MCPATHOVER, NCPU, MCPATHDOBLOCK, MCMERGES, MCMERGEQ, & 23:      &        ITWIST, JTWIST, KTWIST, LTWIST, MCPATHSTART, MCPATHBLOCK, MCPATHOVER, NCPU, MCPATHDOBLOCK, MCMERGES, MCMERGEQ, &
 24:      &        MCMERGEI,GAUSSIANCHARGE,GAUSSIANMULTI,ITG03, REDOTS, QCIPERMCHECKINT, & 24:      &        MCMERGEI,GAUSSIANCHARGE,GAUSSIANMULTI,ITG03, REDOTS, QCIPERMCHECKINT, &
 25:      &        MLPIN, MLPSTART, MLPOUT, MLPHIDDEN, MLPDATA, NMLP, N_TO_ALIGN, DJWRBID, STM, NHEXAMERS, & 25:      &        MLPIN, MLPSTART, MLPOUT, MLPHIDDEN, MLPDATA, NMLP, N_TO_ALIGN, DJWRBID, STM, NHEXAMERS, &
 26:      &        MLQIN, MLQSTART, MLQOUT, MLQDATA, NMLQ, & 26:      &        MLQIN, MLQSTART, MLQOUT, MLQDATA, NMLQ, &
 27:      &        QCIADDREP, QCIBONDS, QCISECOND, MAXNACTIVE, QCIIMAGE, NADDTARGET, NUMNN, MULTI_COUNT, MULTI_LAST, MULTI_STEP, & 27:      &        QCIADDREP, QCIBONDS, QCISECOND, MAXNACTIVE, QCIIMAGE, NADDTARGET, NUMNN, MULTI_COUNT, MULTI_LAST, MULTI_STEP, &
 28:      &        NDOF, RECCOUNT, MLPPROBPOS 28:      &        NDOF, RECCOUNT
 29:  29: 
 30:       LOGICAL :: DTEST, MASST, RTEST, EFSTEPST, VECTORST, SUMMARYT, DUMPV, DUMPMAG, FREEZE, FREEZERANGE, GRADSQ, & 30:       LOGICAL :: DTEST, MASST, RTEST, EFSTEPST, VECTORST, SUMMARYT, DUMPV, DUMPMAG, FREEZE, FREEZERANGE, GRADSQ, &
 31:      &        PGRAD, VALUEST, ADMT, BFGSMINT, BFGSTST, CHECKINDEX, TOSI, CONTAINER, & 31:      &        PGRAD, VALUEST, ADMT, BFGSMINT, BFGSTST, CHECKINDEX, TOSI, CONTAINER, &
 32:      &        GAUSSIAN, CADPAC, PRESSURE, FTEST, DCHECK, CP2K, DFTP, CPMD, CPMDC, FREEZERES, DF1T, & 32:      &        GAUSSIAN, CADPAC, PRESSURE, FTEST, DCHECK, CP2K, DFTP, CPMD, CPMDC, FREEZERES, DF1T, &
 33:      &        VARIABLES, FIELDT, OHT, IHT, TDT, D5HT, TWOENDS, PV, FRACTIONAL, BLNT, HYBRIDMINT, & 33:      &        VARIABLES, FIELDT, OHT, IHT, TDT, D5HT, TWOENDS, PV, FRACTIONAL, BLNT, HYBRIDMINT, &
 34:      &        INDEXT, LANCZOST, NOSHIFT, GAMESSUS, GAMESSUK, PVTS, RIGIDBODY, CASTEP, ONETEP, QCHEM, QCHEMES, VASP, & 34:      &        INDEXT, LANCZOST, NOSHIFT, GAMESSUS, GAMESSUK, PVTS, RIGIDBODY, CASTEP, ONETEP, QCHEM, QCHEMES, VASP, &
 35:      &        BFGSSTEP, BULKT, HUPDATE, NOHESS, READV, NOIT, THOMSONT, SIO2T, SIO2C6T, BISECTT, BISECTDEBUG, & 35:      &        BFGSSTEP, BULKT, HUPDATE, NOHESS, READV, NOIT, THOMSONT, SIO2T, SIO2C6T, BISECTT, BISECTDEBUG, &
 36:      &        TOSIC6, TOSIPOL, FIXIMAGE, DFTBT, CHECKCONT, CHECKDT, SHIFTED, READSP, DUMPSP, NOFRQS, & 36:      &        TOSIC6, TOSIPOL, FIXIMAGE, DFTBT, CHECKCONT, CHECKDT, SHIFTED, READSP, DUMPSP, NOFRQS, &
 37:      &        ALLSTEPS, ALLVECTORS, MWVECTORS, WELCH, BINARY, READHESS, MOVIE, NORESET, TWOD, & 37:      &        ALLSTEPS, ALLVECTORS, MWVECTORS, WELCH, BINARY, READHESS, MOVIE, NORESET, TWOD, &
 38:      &        DOUBLET, REOPT, PARALLEL, LINEMIN, FIXD, KEEPINDEX, BSMIN, PRINTPTS, RKMIN, REPELTST,& 38:      &        DOUBLET, REOPT, PARALLEL, LINEMIN, FIXD, KEEPINDEX, BSMIN, PRINTPTS, RKMIN, REPELTST,&


r32807/keywords.f 2017-06-16 14:30:15.388485822 +0100 r32806/keywords.f 2017-06-16 14:30:16.500500400 +0100
969: !969: !
970: ! Neural network potential970: ! Neural network potential
971: !971: !
972:          MLP3T=.FALSE.972:          MLP3T=.FALSE.
973:          MLPB3T=.FALSE.973:          MLPB3T=.FALSE.
974:          MLPB3NEWT=.FALSE.974:          MLPB3NEWT=.FALSE.
975:          MLPVB3T=.FALSE.975:          MLPVB3T=.FALSE.
976:          NOREGBIAS=.FALSE.976:          NOREGBIAS=.FALSE.
977:          MLPNEWREG=.FALSE.977:          MLPNEWREG=.FALSE.
978:          MLPPROB=.FALSE.978:          MLPPROB=.FALSE.
979:          MLPPROBPOS=1.0D0 
980:          MLPDONE=.FALSE.979:          MLPDONE=.FALSE.
981:          MLPNORM=.FALSE.980:          MLPNORM=.FALSE.
982:          MLPLAMBDA=0.0D0981:          MLPLAMBDA=0.0D0
983:          MLPDATSTART=1982:          MLPDATSTART=1
984: !983: !
985: ! ML quadratic function984: ! ML quadratic function
986: !985: !
987:          MLQT=.FALSE.986:          MLQT=.FALSE.
988:          MLQPROB=.FALSE.987:          MLQPROB=.FALSE.
989:          MLQDONE=.FALSE.988:          MLQDONE=.FALSE.
4260:                   J2=NINT(1.0D0*(MLPHIDDEN+J1*(MLPOUT-1)-MLPOUT)/(MLPHIDDEN-1)) ! unfrozen weight for hidden node J1 to output4259:                   J2=NINT(1.0D0*(MLPHIDDEN+J1*(MLPOUT-1)-MLPOUT)/(MLPHIDDEN-1)) ! unfrozen weight for hidden node J1 to output
4261:                   J3=MLPHIDDEN*MLPIN+(J2-1)*MLPHIDDEN+J14260:                   J3=MLPHIDDEN*MLPIN+(J2-1)*MLPHIDDEN+J1
4262:                   PRINT '(A,I10,A,I10,A,I10)','keywords> Unfrozen weight ',J3,' hidden node ',J1,' to output ',J24261:                   PRINT '(A,I10,A,I10,A,I10)','keywords> Unfrozen weight ',J3,' hidden node ',J1,' to output ',J2
4263:                   FROZEN(J3)=.FALSE.4262:                   FROZEN(J3)=.FALSE.
4264:                ENDDO4263:                ENDDO
4265:             ENDIF4264:             ENDIF
4266:          ELSE IF (WORD.EQ.'MLPNEWREG') THEN4265:          ELSE IF (WORD.EQ.'MLPNEWREG') THEN
4267:             MLPNEWREG=.TRUE.4266:             MLPNEWREG=.TRUE.
4268:          ELSE IF (WORD.EQ.'MLPPROB') THEN4267:          ELSE IF (WORD.EQ.'MLPPROB') THEN
4269:             MLPPROB=.TRUE.4268:             MLPPROB=.TRUE.
4270:             IF (NITEMS.GT.1) CALL READI(MLPPROBPOS) 
4271:             WRITE(*,'(A,I6)')  
4272:      &    'keywords> Will calculate ROC and AUC values assuming positive outcome (counting from 1) is indexed ',MLPPROBPOS 
4273: ! 4269: ! 
4274: ! MLPNORM directs OPTIM to rescale the input data columns by dividing each one by the4270: ! MLPNORM directs OPTIM to rescale the input data columns by dividing each one by the
4275: ! average of the mean magnitude4271: ! average of the mean magnitude
4276: ! 4272: ! 
4277:          ELSE IF (WORD.EQ.'MLPNORM') THEN4273:          ELSE IF (WORD.EQ.'MLPNORM') THEN
4278:             MLPNORM=.TRUE.4274:             MLPNORM=.TRUE.
4279:             IF (MLPDONE) THEN4275:             IF (MLPDONE) THEN
4280:                WRITE(*,'(A)') 'keyword> ERROR *** please put MLPNORM before MLP keyword in odata to ensure correct io'4276:                LUNIT=GETUNIT()
4281:                STOP4277:                OPEN(LUNIT,FILE='MLPdata',STATUS='OLD')
 4278:                ALLOCATE(MLPMEAN(MLPIN))
 4279:                MLPMEAN(1:MLPIN)=0.0D0
 4280:                DO J1=1,MLPDATA+MLPDATSTART-1
 4281:                   IF (J1.GE.MLPDATSTART) THEN
 4282:                      J2=J1-MLPDATSTART+1
 4283:                      READ(LUNIT,*) MLPDAT(J2,1:MLPIN),MLPOUTCOME(J2)
 4284:                      MLPOUTCOME(J2)=MLPOUTCOME(J2)+1 ! to shift the range to 1 to 4
 4285:                      DO J3=1,MLPIN
 4286:                         MLPMEAN(J3)=MLPMEAN(J3)+ABS(MLPDAT(J2,J3))
 4287:                      ENDDO
 4288:                   ELSE
 4289:                      READ(LUNIT,*) DUMMY
 4290:                   ENDIF
 4291:                ENDDO
4282: 4292: 
4283: !              LUNIT=GETUNIT()4293:                CLOSE(LUNIT)
4284: !              OPEN(LUNIT,FILE='MLPdata',STATUS='OLD')4294:                MLPMEAN(1:MLPIN)=MLPMEAN(1:MLPIN)/MLPDATA
4285: !              ALLOCATE(MLPMEAN(MLPIN))4295:                PRINT '(A)','keyword> Rescaling inputs by mean absolute values:'
4286: !              MLPMEAN(1:MLPIN)=0.0D04296:                PRINT '(6G20.10)',MLPMEAN(1:MLPIN)
4287: !              DO J1=1,MLPDATA+MLPDATSTART-14297:                DO J1=1,MLPIN
4288: !                 IF (J1.GE.MLPDATSTART) THEN4298:                   MLPDAT(1:MLPDATA,J1)=MLPDAT(1:MLPDATA,J1)/MLPMEAN(J1)
4289: !                    J2=J1-MLPDATSTART+14299:                ENDDO
4290: !                    READ(LUNIT,*) MLPDAT(J2,1:MLPIN),MLPOUTCOME(J2)4300:                DEALLOCATE(MLPMEAN)
4291: !                    MLPOUTCOME(J2)=MLPOUTCOME(J2)+1 ! to shift the range to 1 to 4 
4292: !                    DO J3=1,MLPIN 
4293: !                       MLPMEAN(J3)=MLPMEAN(J3)+ABS(MLPDAT(J2,J3)) 
4294: !                    ENDDO 
4295: !                 ELSE 
4296: !                    READ(LUNIT,*) DUMMY 
4297: !                 ENDIF 
4298: !              ENDDO 
4299:  
4300: !              CLOSE(LUNIT) 
4301: !              MLPMEAN(1:MLPIN)=MLPMEAN(1:MLPIN)/MLPDATA 
4302: !              PRINT '(A)','keyword> Rescaling inputs by mean absolute values:' 
4303: !              PRINT '(6G20.10)',MLPMEAN(1:MLPIN) 
4304: !              DO J1=1,MLPIN 
4305: !                 MLPDAT(1:MLPDATA,J1)=MLPDAT(1:MLPDATA,J1)/MLPMEAN(J1) 
4306: !              ENDDO 
4307: !              DEALLOCATE(MLPMEAN) 
4308:             ENDIF4301:             ENDIF
4309:          ELSE IF (WORD.EQ.'MLQ') THEN4302:          ELSE IF (WORD.EQ.'MLQ') THEN
4310:             MLQT=.TRUE.4303:             MLQT=.TRUE.
4311:             CALL READI(MLQIN)      ! number of inputs (data items after outcome)4304:             CALL READI(MLQIN)      ! number of inputs (data items after outcome)
4312:             CALL READI(MLQSTART) ! starting position in data list, not counting outcome4305:             CALL READI(MLQSTART) ! starting position in data list, not counting outcome
4313:             CALL READI(MLQOUT)4306:             CALL READI(MLQOUT)
4314:             CALL READI(MLQDATA)4307:             CALL READI(MLQDATA)
4315:             IF (NITEMS.GT.4) CALL READF(MLQLAMBDA)4308:             IF (NITEMS.GT.4) CALL READF(MLQLAMBDA)
4316:             WRITE(*,'(A,4I8,G20.10)') ' keywords> MLQ Nin, Ninstart, Nout, Ndata, lambda=',4309:             WRITE(*,'(A,4I8,G20.10)') ' keywords> MLQ Nin, Ninstart, Nout, Ndata, lambda=',
4317:      &                                MLQIN,MLQSTART,MLQOUT,MLQDATA,MLQLAMBDA4310:      &                                MLQIN,MLQSTART,MLQOUT,MLQDATA,MLQLAMBDA


r32807/MLPB3.f90 2017-06-16 14:30:14.708476907 +0100 r32806/MLPB3.f90 2017-06-16 14:30:15.828491590 +0100
378:    DO J1=1,NMLP378:    DO J1=1,NMLP
379:       DO J2=1,J1-1379:       DO J2=1,J1-1
380:          HESS(J2,J1)=HESS(J1,J2)380:          HESS(J2,J1)=HESS(J1,J2)
381:       ENDDO381:       ENDDO
382:    ENDDO382:    ENDDO
383: ENDIF383: ENDIF
384: 384: 
385: END SUBROUTINE MLPB3385: END SUBROUTINE MLPB3
386: 386: 
387: SUBROUTINE ROC(PSAVE,AREA)387: SUBROUTINE ROC(PSAVE,AREA)
388: USE KEY, ONLY : MLPDATA, MLPOUTCOME, MLPOUT, MLPPROBPOS388: USE KEY, ONLY : MLPDATA, MLPOUTCOME, MLPOUT
389: IMPLICIT NONE389: IMPLICIT NONE
390: INTEGER J1, NVALS, J2390: INTEGER J1, NVALS, J2
391: DOUBLE PRECISION TPR, FPR, AREA, TPRPREV, FPRPREV, NPOS, NNEG, PTHRESH391: DOUBLE PRECISION TPR, FPR, AREA, TPRPREV, FPRPREV, NPOS, NNEG, PTHRESH
392: DOUBLE PRECISION PSAVE(MLPDATA,MLPOUT)392: DOUBLE PRECISION PSAVE(MLPDATA,MLPOUT)
393: 393: 
394: NVALS=100394: NVALS=100
395: AREA=0.0D0395: AREA=0.0D0
396: DO J1=0,NVALS396: DO J1=0,NVALS
397:    PTHRESH=J1/(1.0D0*NVALS)397:    PTHRESH=J1/(1.0D0*NVALS)
398:    TPRPREV=TPR398:    TPRPREV=TPR
399:    FPRPREV=FPR399:    FPRPREV=FPR
400:    TPR=0.0D0400:    TPR=0.0D0
401:    FPR=0.0D0401:    FPR=0.0D0
402:    NPOS=0.0D0402:    NPOS=0.0D0
403:    NNEG=0.0D0403:    NNEG=0.0D0
404:    DO J2=1,MLPDATA404:    DO J2=1,MLPDATA
405:       IF (ABS(MLPOUTCOME(J2)-MLPPROBPOS).LT.1.0D-3) THEN    ! positive outcome: survival405:       IF (MLPOUTCOME(J2).LT.1.5D0) THEN    ! positive outcome: survival
406:          NPOS=NPOS+1.0D0406:          NPOS=NPOS+1.0D0
407:          IF (PSAVE(J2,MLPPROBPOS).GT.PTHRESH) THEN   ! positive classifier, correct407:          IF (PSAVE(J2,1).GT.PTHRESH) THEN   ! positive classifier, correct
408:             TPR=TPR+1.0D0408:             TPR=TPR+1.0D0
409:          ENDIF409:          ENDIF
410:       ELSE410:       ELSE
411:          NNEG=NNEG+1.0D0411:          NNEG=NNEG+1.0D0
412:          IF (PSAVE(J2,MLPPROBPOS).GT.PTHRESH) THEN ! positive classifier, but wrong412:          IF (PSAVE(J2,1).GT.PTHRESH) THEN ! positive classifier, but wrong
413:             FPR=FPR+1.0D0413:             FPR=FPR+1.0D0
414:          ENDIF414:          ENDIF
415:       ENDIF415:       ENDIF
416:    ENDDO416:    ENDDO
417:    TPR=TPR/MAX(NPOS,1.0D0)417:    TPR=TPR/MAX(NPOS,1.0D0)
418:    FPR=FPR/MAX(NNEG,1.0D0)418:    FPR=FPR/MAX(NNEG,1.0D0)
419:    IF (J1.GT.0) AREA=AREA+(TPR+TPRPREV)*ABS(FPR-FPRPREV)/2.0D0 
420:    PRINT '(4G20.10)',FPR,TPR,PTHRESH,AREA419:    PRINT '(4G20.10)',FPR,TPR,PTHRESH,AREA
 420:    IF (J1.GT.0) AREA=AREA+(TPR+TPRPREV)*ABS(FPR-FPRPREV)/2.0D0
421: ENDDO421: ENDDO
422: ! PRINT '(A,I6,A,G20.10)','# finished ROC analysis for ',MLPDATA,' data values, AUC=',AREA422: ! PRINT '(A,I6,A,G20.10)','# finished ROC analysis for ',MLPDATA,' data values, AUC=',AREA
423: 423: 
424: END SUBROUTINE ROC424: END SUBROUTINE ROC
425: 425: 


r32807/MLQ.f90 2017-06-16 14:30:14.928479787 +0100 r32806/MLQ.f90 2017-06-16 14:30:16.048494474 +0100
168:    DO J1=1,NMLQ168:    DO J1=1,NMLQ
169:       DO J2=1,J1-1169:       DO J2=1,J1-1
170:          HESS(J2,J1)=HESS(J1,J2)170:          HESS(J2,J1)=HESS(J1,J2)
171:       ENDDO171:       ENDDO
172:    ENDDO172:    ENDDO
173: ENDIF173: ENDIF
174: 174: 
175: END SUBROUTINE MLQ175: END SUBROUTINE MLQ
176: 176: 
177: SUBROUTINE ROCMLQ(PSAVE,AREA)177: SUBROUTINE ROCMLQ(PSAVE,AREA)
178: USE KEY, ONLY : MLQDATA, MLQOUTCOME, MLQOUT, MLPPROBPOS178: USE KEY, ONLY : MLQDATA, MLQOUTCOME, MLQOUT
179: IMPLICIT NONE179: IMPLICIT NONE
180: INTEGER J1, NVALS, J2180: INTEGER J1, NVALS, J2
181: DOUBLE PRECISION TPR, FPR, AREA, TPRPREV, FPRPREV, NPOS, NNEG, PTHRESH181: DOUBLE PRECISION TPR, FPR, AREA, TPRPREV, FPRPREV, NPOS, NNEG, PTHRESH
182: DOUBLE PRECISION PSAVE(MLQDATA,MLQOUT)182: DOUBLE PRECISION PSAVE(MLQDATA,MLQOUT)
183: 183: 
184: NVALS=100184: NVALS=100
185: AREA=0.0D0185: AREA=0.0D0
186: DO J1=0,NVALS186: DO J1=0,NVALS
187:    PTHRESH=J1/(1.0D0*NVALS)187:    PTHRESH=J1/(1.0D0*NVALS)
188:    TPRPREV=TPR188:    TPRPREV=TPR
189:    FPRPREV=FPR189:    FPRPREV=FPR
190:    TPR=0.0D0190:    TPR=0.0D0
191:    FPR=0.0D0191:    FPR=0.0D0
192:    NPOS=0.0D0192:    NPOS=0.0D0
193:    NNEG=0.0D0193:    NNEG=0.0D0
194:    DO J2=1,MLQDATA194:    DO J2=1,MLQDATA
195:       IF (ABS(MLQOUTCOME(J2)-MLPPROBPOS).LT.1.0D-3) THEN    ! positive outcome: survival195:       IF (MLQOUTCOME(J2).LT.1.5D0) THEN    ! positive outcome: survival
196:          NPOS=NPOS+1.0D0196:          NPOS=NPOS+1.0D0
197:          IF (PSAVE(J2,MLPPROBPOS).GT.PTHRESH) THEN   ! positive classifier, correct197:          IF (PSAVE(J2,1).GT.PTHRESH) THEN   ! positive classifier, correct
198:             TPR=TPR+1.0D0198:             TPR=TPR+1.0D0
199:          ENDIF199:          ENDIF
200:       ELSE200:       ELSE
201:          NNEG=NNEG+1.0D0201:          NNEG=NNEG+1.0D0
202:          IF (PSAVE(J2,MLPPROBPOS).GT.PTHRESH) THEN ! positive classifier, but wrong202:          IF (PSAVE(J2,1).GT.PTHRESH) THEN ! positive classifier, but wrong
203:             FPR=FPR+1.0D0203:             FPR=FPR+1.0D0
204:          ENDIF204:          ENDIF
205:       ENDIF205:       ENDIF
206:    ENDDO206:    ENDDO
207:    TPR=TPR/MAX(NPOS,1.0D0)207:    TPR=TPR/MAX(NPOS,1.0D0)
208:    FPR=FPR/MAX(NNEG,1.0D0)208:    FPR=FPR/MAX(NNEG,1.0D0)
209:    PRINT '(4G20.10)',FPR,TPR,PTHRESH,AREA209:    PRINT '(4G20.10)',FPR,TPR,PTHRESH,AREA
210:    IF (J1.GT.0) AREA=AREA+(TPR+TPRPREV)*ABS(FPR-FPRPREV)/2.0D0210:    IF (J1.GT.0) AREA=AREA+(TPR+TPRPREV)*ABS(FPR-FPRPREV)/2.0D0
211: ENDDO211: ENDDO
212: ! PRINT '(A,I6,A,G20.10)','# finished ROC analysis for ',MLQDATA,' data values, AUC=',AREA212: ! PRINT '(A,I6,A,G20.10)','# finished ROC analysis for ',MLQDATA,' data values, AUC=',AREA


r32807/potential.f 2017-06-16 14:30:15.608488706 +0100 r32806/potential.f 2017-06-16 14:30:16.728503388 +0100
520: !               CALL MLPVB3(COORDS, VNEW, ENERGY, .TRUE., .TRUE.)520: !               CALL MLPVB3(COORDS, VNEW, ENERGY, .TRUE., .TRUE.)
521: !               PRINT '(A,I8)','SIZE(HESS)=',SIZE(HESS)521: !               PRINT '(A,I8)','SIZE(HESS)=',SIZE(HESS)
522: !               HESSDUM(1:NMLP,1:NMLP)=HESS(1:NMLP,1:NMLP)522: !               HESSDUM(1:NMLP,1:NMLP)=HESS(1:NMLP,1:NMLP)
523: !               DO J1=1,NATOMS523: !               DO J1=1,NATOMS
524: !                  COORDS(J1)=COORDS(J1)+DIFF524: !                  COORDS(J1)=COORDS(J1)+DIFF
525: !                  CALL MLPVB3(COORDS,VPLUS,EPLUS,.FALSE.,.FALSE.)525: !                  CALL MLPVB3(COORDS,VPLUS,EPLUS,.FALSE.,.FALSE.)
526: !                  COORDS(J1)=COORDS(J1)-2.0D0*DIFF526: !                  COORDS(J1)=COORDS(J1)-2.0D0*DIFF
527: !                  CALL MLPVB3(COORDS,VMINUS,EMINUS,.FALSE.,.FALSE.)527: !                  CALL MLPVB3(COORDS,VMINUS,EMINUS,.FALSE.,.FALSE.)
528: !                  COORDS(J1)=COORDS(J1)+DIFF528: !                  COORDS(J1)=COORDS(J1)+DIFF
529: !                  IF ((ABS(VNEW(J1)).NE.0.0D0).AND. 529: !                  IF ((ABS(VNEW(J1)).NE.0.0D0).AND. 
530: !    &               (ABS(100.0D0*(VNEW(J1)-(EPLUS-EMINUS)/(2.0D0*DIFF))/VNEW(J1)).GT.1.0D0)) THEN530: !     &               (ABS(100.0D0*(VNEW(J1)-(EPLUS-EMINUS)/(2.0D0*DIFF))/VNEW(J1)).GT.1.0D0)) THEN
531: !                     WRITE(*,'(A,I5,2F20.10,A)') 'anal and num ',J1,VNEW(J1),(EPLUS-EMINUS)/(2.0D0*DIFF),'   X'531: !                     WRITE(*,'(A,I5,2F20.10,A)') 'anal and num ',J1,VNEW(J1),(EPLUS-EMINUS)/(2.0D0*DIFF),'   X'
532: !                  ELSE532: !                  ELSE
533: !                     WRITE(*,'(A,I5,2F20.10,A)') 'anal and num ',J1,VNEW(J1),(EPLUS-EMINUS)/(2.0D0*DIFF)533: !                     WRITE(*,'(A,I5,2F20.10)') 'anal and num ',J1,VNEW(J1),(EPLUS-EMINUS)/(2.0D0*DIFF)
534: !                  ENDIF534: !                  ENDIF
535: !               ENDDO535: !               ENDDO
536: !               PRINT*,'analytic and numerical second derivatives:'536: !               PRINT*,'analytic and numerical second derivatives:'
537: !               DO J1=1,NATOMS537: !               DO J1=1,NATOMS
538: !                  COORDS(J1)=COORDS(J1)+DIFF538: !                  COORDS(J1)=COORDS(J1)+DIFF
539: !                  CALL MLPVB3(COORDS,VPLUS,EPLUS,.TRUE.,.FALSE.)539: !                  CALL MLPVB3(COORDS,VPLUS,EPLUS,.TRUE.,.FALSE.)
540: !                  COORDS(J1)=COORDS(J1)-2.0D0*DIFF540: !                  COORDS(J1)=COORDS(J1)-2.0D0*DIFF
541: !                  CALL MLPVB3(COORDS,VMINUS,EMINUS,.TRUE.,.FALSE.)541: !                  CALL MLPVB3(COORDS,VMINUS,EMINUS,.TRUE.,.FALSE.)
542: !                  COORDS(J1)=COORDS(J1)+DIFF542: !                  COORDS(J1)=COORDS(J1)+DIFF
543: !                  DO J2=1,NATOMS543: !                  DO J2=1,NATOMS
544: !                     IF ((ABS(HESS(J1,J2)).NE.0.0D0).AND. 544: !                     IF ((ABS(HESS(J1,J2)).NE.0.0D0).AND. 
545: !    &                  (ABS(100.0D0*(HESS(J1,J2)-(VPLUS(J2)-VMINUS(J2))/(2.0D0*DIFF))/HESS(J1,J2)).GT.1.0D0)) THEN545: !     &                  (ABS(100.0D0*(HESS(J1,J2)-(VPLUS(J2)-VMINUS(J2))/(2.0D0*DIFF))/HESS(J1,J2)).GT.1.0D0)) THEN
546: !                     WRITE(*,'(2I5,2G20.10,A)') J1,J2,HESS(J1,J2),(VPLUS(J2)-VMINUS(J2))/(2.0D0*DIFF),'   X'546: !                     WRITE(*,'(2I5,2G20.10,A)') J1,J2,HESS(J1,J2),(VPLUS(J2)-VMINUS(J2))/(2.0D0*DIFF),'   X'
547: !                     ELSE547: !                     ELSE
548: !                        WRITE(*,'(2I5,2G20.10,A)') J1,J2,HESS(J1,J2),(VPLUS(J2)-VMINUS(J2))/(2.0D0*DIFF)548: !                        WRITE(*,'(2I5,2G20.10,A)') J1,J2,HESS(J1,J2),(VPLUS(J2)-VMINUS(J2))/(2.0D0*DIFF)
549: !                     ENDIF549: !                     ENDIF
550: !                  ENDDO550: !                  ENDDO
551: !                ENDDO551: !                ENDDO
552: !                STOP552: !                STOP
553:             ELSEIF (MLPB3T) THEN553:             ELSEIF (MLPB3T) THEN
554:                CALL MLPB3(COORDS, VNEW, ENERGY, GTEST, SSTEST)554:                CALL MLPB3(COORDS, VNEW, ENERGY, GTEST, SSTEST)
555:             ELSEIF (MLP3T) THEN555:             ELSEIF (MLP3T) THEN


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0