hdiff output

r33331/cycle2.f90 2017-09-20 23:30:18.847090416 +0100 r33330/cycle2.f90 2017-09-20 23:30:19.327096762 +0100
 18: ! 18: !
 19:  19: 
 20: SUBROUTINE CYCLE2 20: SUBROUTINE CYCLE2
 21: USE COMMONS 21: USE COMMONS
 22: USE PORFUNCS 22: USE PORFUNCS
 23: USE UTILS,ONLY : GETUNIT 23: USE UTILS,ONLY : GETUNIT
 24: IMPLICIT NONE 24: IMPLICIT NONE
 25: DOUBLE PRECISION SPOINTS(3*NATOMS), FPOINTS(3*NATOMS), DPRAND, MINFRQ 25: DOUBLE PRECISION SPOINTS(3*NATOMS), FPOINTS(3*NATOMS), DPRAND, MINFRQ
 26: INTEGER J1, J2, J3, PID(NCPU), MINS(NCPU), MINF(NCPU), STATUS, NCYCLES, NMINOLD, NTSOLD, ISTAT, & 26: INTEGER J1, J2, J3, PID(NCPU), MINS(NCPU), MINF(NCPU), STATUS, NCYCLES, NMINOLD, NTSOLD, ISTAT, &
 27:   & NEWJOB, PIDDONE, MINID(NCPU), LUNIT, NSPCHECK, XYZUNIT, & 27:   & NEWJOB, PIDDONE, MINID(NCPU), LUNIT, NSPCHECK, XYZUNIT, &
 28:   & ADDMINXYZCHECK, CONNDOING, CONNATTEMPTS, L1, L2, CONNECTPAIRDONE 28:   & ADDMINXYZCHECK, CONNDOING, CONNATTEMPTS, L1, L2
 29: INTEGER NAVAIL, NUSED, NDUMMY, NCONNTOTAL 29: INTEGER NAVAIL, NUSED, NDUMMY, NCONNTOTAL
 30: LOGICAL KILLED, STOPCYCLE, CHANGEPD, OPTEST, NOMORE, LTEST1, LTEST2, MINFRQSDUMP, TSFRQSDUMP 30: LOGICAL KILLED, STOPCYCLE, CHANGEPD, OPTEST, NOMORE, LTEST1, LTEST2, MINFRQSDUMP, TSFRQSDUMP
 31: CHARACTER(LEN=10) CONNSTR 31: CHARACTER(LEN=10) CONNSTR
 32: CHARACTER(LEN=5) SDUMMY 32: CHARACTER(LEN=5) SDUMMY
 33: CHARACTER(LEN=80) SLEEPSTRING1, SLEEPSTRING2 33: CHARACTER(LEN=80) SLEEPSTRING1, SLEEPSTRING2
 34:  34: 
 35: IF (.NOT.ALLOCATED(FROZEN)) ALLOCATE(FROZEN(NATOMS)) 35: IF (.NOT.ALLOCATED(FROZEN)) ALLOCATE(FROZEN(NATOMS))
 36: WRITE(SLEEPSTRING1,'(A,F20.10)') 'sleep ',SLEEPTIME1 36: WRITE(SLEEPSTRING1,'(A,F20.10)') 'sleep ',SLEEPTIME1
 37: WRITE(SLEEPSTRING2,'(A,F20.10)') 'sleep ',SLEEPTIME2 37: WRITE(SLEEPSTRING2,'(A,F20.10)') 'sleep ',SLEEPTIME2
 38: NAVAIL=0 38: NAVAIL=0
 39: IF (CHECKSPT) NSPCHECK=CHECKSPS-1 39: IF (CHECKSPT) NSPCHECK=CHECKSPS-1
 40: IF (ADDMINXYZT) THEN 40: IF (ADDMINXYZT) THEN
 41:    XYZUNIT=GETUNIT() 41:    XYZUNIT=GETUNIT()
 42:    OPEN(XYZUNIT,FILE=TRIM(ADJUSTL(ADDMINXYZNAME)),STATUS='OLD') 42:    OPEN(XYZUNIT,FILE=TRIM(ADJUSTL(ADDMINXYZNAME)),STATUS='OLD')
 43: ENDIF 43: ENDIF
 44: ADDMINXYZCHECK=0 44: ADDMINXYZCHECK=0
 45: CONNECTPAIRDONE=0 
 46: NMINOLD=NMIN; NTSOLD=NTS 45: NMINOLD=NMIN; NTSOLD=NTS
 47: IF ((NPFOLD.GT.0).AND.(.NOT.DIJPAIRT)) CALL PFOLD 46: IF ((NPFOLD.GT.0).AND.(.NOT.DIJPAIRT)) CALL PFOLD
 48: OPEN(UNIT=1,FILE='commit.data',STATUS='UNKNOWN') 47: OPEN(UNIT=1,FILE='commit.data',STATUS='UNKNOWN')
 49: WRITE(1,'(G20.10)') GPFOLD(1:NMIN) 48: WRITE(1,'(G20.10)') GPFOLD(1:NMIN)
 50: CLOSE(1) 49: CLOSE(1)
 51: IF (NEWCONNECTIONST) THEN 50: IF (NEWCONNECTIONST) THEN
 52:    CONNDOING=CONNMINSTART 51:    CONNDOING=CONNMINSTART
 53:    CONNATTEMPTS=0 52:    CONNATTEMPTS=0
 54:    DO J1=1,NMIN 53:    DO J1=1,NMIN
 55:       NCONNTOTAL=0 54:       NCONNTOTAL=0
151:       CALL GETCUPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)150:       CALL GETCUPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)
152: !  ELSEIF (PTAUT) THEN151: !  ELSEIF (PTAUT) THEN
153: !     CALL GETPPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)152: !     CALL GETPPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)
154:    ELSEIF (SHORTCUTT) THEN153:    ELSEIF (SHORTCUTT) THEN
155:       CALL GETSPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)154:       CALL GETSPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)
156:    ELSEIF (UNTRAPT) THEN155:    ELSEIF (UNTRAPT) THEN
157:       CALL GETUPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)156:       CALL GETUPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)
158:    ELSEIF (FREEPAIRT) THEN157:    ELSEIF (FREEPAIRT) THEN
159:       CALL GETFREEPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)158:       CALL GETFREEPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)
160:    ELSEIF (CONNECTPAIRST) THEN159:    ELSEIF (CONNECTPAIRST) THEN
161:       CONNECTPAIRDONE=CONNECTPAIRDONE+1160:       IF (.NOT.NOMORE) THEN
162:       IF (CONNECTPAIRDONE.LE.NCONNECTPAIRS) THEN161:          IF (NPAIRDONE.GE.NCONNECTPAIRS) THEN
163:          IF (CONNECTPAIRDONE.GE.NCONNECTPAIRS) THEN 
164:             NOMORE=.TRUE.162:             NOMORE=.TRUE.
165:             PRINT '(A)','cycle2> Completed sweep through all available pairs of minima'163:             PRINT '(A)','cycle2> Completed sweep through all available pairs of minima'
166:          ELSE164:          ELSE
167:             CALL GETNCONN ! must call this first to set NCONNMAX - used for declarations in GETCONNECTPAIR165:             CALL GETNCONN ! must call this first to set NCONNMAX - used for declarations in GETCONNECTPAIR
168:             CALL GETCONNECTPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)166:             CALL GETCONNECTPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)
169:          ENDIF167:          ENDIF
170:       ENDIF168:       ENDIF
171:    ELSEIF (USEPAIRST) THEN169:    ELSEIF (USEPAIRST) THEN
172:       CALL GETNCONN ! must call this first to set NCONNMAX - used for declarations in GETUSEPAIR170:       CALL GETNCONN ! must call this first to set NCONNMAX - used for declarations in GETUSEPAIR
173:       CALL GETUSEPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)171:       CALL GETUSEPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)
237:    ELSE235:    ELSE
238:       CALL GETPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)236:       CALL GETPAIR(NAVAIL,NUSED,MINS(J3),MINF(J3),SPOINTS,FPOINTS)
239:    ENDIF237:    ENDIF
240:    IF (ADDMINXYZT) THEN 238:    IF (ADDMINXYZT) THEN 
241:       IF (ADDMINXYZCHECK.LE.NMINADDXYZ) CALL ADDMINXYZODATA(J3,SPOINTS) 239:       IF (ADDMINXYZCHECK.LE.NMINADDXYZ) CALL ADDMINXYZODATA(J3,SPOINTS) 
242:    ELSEIF (CHECKSPT) THEN 240:    ELSEIF (CHECKSPT) THEN 
243:       IF (NSPCHECK.LE.CHECKSPF) CALL CHECKSPODATA(J3,SPOINTS) 241:       IF (NSPCHECK.LE.CHECKSPF) CALL CHECKSPODATA(J3,SPOINTS) 
244:    ELSEIF (NEWCONNECTIONST) THEN 242:    ELSEIF (NEWCONNECTIONST) THEN 
245:       IF (.NOT.NOMORE) CALL NEWCONNODATA(J3,SPOINTS) 243:       IF (.NOT.NOMORE) CALL NEWCONNODATA(J3,SPOINTS) 
246:    ELSEIF (CONNECTPAIRST) THEN 244:    ELSEIF (CONNECTPAIRST) THEN 
247:       IF (CONNECTPAIRDONE.LE.NCONNECTPAIRS) CALL CONNECTODATA(J3,SPOINTS,FPOINTS)245:       IF (.NOT.NOMORE) CALL CONNECTODATA(J3,SPOINTS,FPOINTS)
248:    ELSE246:    ELSE
249:       CALL CONNECTODATA(J3,SPOINTS,FPOINTS)247:       CALL CONNECTODATA(J3,SPOINTS,FPOINTS)
250:    ENDIF248:    ENDIF
251:    CALL FLUSH(6) ! the child process may duplicate output without this line!249:    CALL FLUSH(6) ! the child process may duplicate output without this line!
252:    IF (.NOT.(NOMORE.OR.(CHECKSPT.AND.(NSPCHECK.GT.CHECKSPF)).OR.(ADDMINXYZT.AND.(ADDMINXYZCHECK.GT.NMINADDXYZ)) &250:    IF (.NOT.(NOMORE.OR.(CHECKSPT.AND.(NSPCHECK.GT.CHECKSPF)).OR.(ADDMINXYZT.AND.(ADDMINXYZCHECK.GT.NMINADDXYZ)))) THEN
253:  &                 .OR.(CONNECTPAIRST.AND.(CONNECTPAIRDONE.GT.NCONNECTPAIRS)))) THEN 
254:       IF (CHECKSPT) MINID(J3)=NSPCHECK251:       IF (CHECKSPT) MINID(J3)=NSPCHECK
255:       IF (ADDMINXYZT) MINID(J3)=ADDMINXYZCHECK252:       IF (ADDMINXYZT) MINID(J3)=ADDMINXYZCHECK
256:       IF (CONNECTPAIRST) MINID(J3)=CONNECTPAIRDONE 
257:       CALL FORK_SUBR(PID(J3)) ! PID is zero in the child, non-zero in the parent253:       CALL FORK_SUBR(PID(J3)) ! PID is zero in the child, non-zero in the parent
258:       IF (DEBUG.AND.(PID(J3).NE.0)) WRITE(*,'(A,I8)') 'cycle2> forked connect run process id=',PID(J3)254:       IF (DEBUG.AND.(PID(J3).NE.0)) WRITE(*,'(A,I8)') 'cycle2> forked connect run process id=',PID(J3)
259:       CALL FLUSH(6) 255:       CALL FLUSH(6) 
260: !     IF (PID(J3).NE.0) WRITE(*,'(A,I8)') 'cycle2> forked connect run process id=',PID(J3)256: !     IF (PID(J3).NE.0) WRITE(*,'(A,I8)') 'cycle2> forked connect run process id=',PID(J3)
261: !     IF (PID(J3).EQ.0) THEN257: !     IF (PID(J3).EQ.0) THEN
262: !        WRITE(*,'(A,I8)') 'cycle2> I am the child! PID=',PID(J3)258: !        WRITE(*,'(A,I8)') 'cycle2> I am the child! PID=',PID(J3)
263: !        CALL GETPID_SUBR(CHILDPID)259: !        CALL GETPID_SUBR(CHILDPID)
264: !        PRINT *,'CHILDPID=',CHILDPID260: !        PRINT *,'CHILDPID=',CHILDPID
265: !     ENDIF261: !     ENDIF
266: !     PRINT '(A,2I8)','cycle2> J3,PID=',J3,PID(J3)262: !     PRINT '(A,2I8)','cycle2> J3,PID=',J3,PID(J3)
285: 281: 
286:    IF (NAVAIL.EQ.0) THEN282:    IF (NAVAIL.EQ.0) THEN
287:       IF (SLEEPTIME1.GT.0.0D0) CALL SYSTEM(TRIM(ADJUSTL(SLEEPSTRING1))) ! to allow jobs to catch up for demos283:       IF (SLEEPTIME1.GT.0.0D0) CALL SYSTEM(TRIM(ADJUSTL(SLEEPSTRING1))) ! to allow jobs to catch up for demos
288:    ENDIF284:    ENDIF
289:    KILLED=.FALSE.285:    KILLED=.FALSE.
290:    CALL FLUSH(6) ! the child process may duplicate output without this line!286:    CALL FLUSH(6) ! the child process may duplicate output without this line!
291:    CALL FLUSH(6)287:    CALL FLUSH(6)
292:    IF (CONNECTPAIRST.OR.CHECKSPT.OR.ADDMINXYZT) THEN288:    IF (CONNECTPAIRST.OR.CHECKSPT.OR.ADDMINXYZT) THEN
293:       DO J2=1,NCPU289:       DO J2=1,NCPU
294:          IF (MINID(J2).GT.0) GOTO 113290:          IF (MINID(J2).GT.0) GOTO 113
295:          PRINT '(A,I6,I10)','J2,MINID=',J2,MINID(J2) 
296:       ENDDO291:       ENDDO
297: 292: 
298:       PRINT '(A)','cycle2> No more candidates to run'293:       PRINT '(A)','cycle2> No more candidates to run'
299:       STOP294:       STOP
300:    ENDIF295:    ENDIF
301: 113 CONTINUE296: 113 CONTINUE
302:    CALL WAIT_SUBR(PIDDONE,STATUS)297:    CALL WAIT_SUBR(PIDDONE,STATUS)
303: 11 CONTINUE298: 11 CONTINUE
304: !  PRINT '(A,5I8)','cycle2> PIDDONE,STATUS,PID=',PIDDONE,STATUS,PID(1:NCPU)299: !  PRINT '(A,5I8)','cycle2> PIDDONE,STATUS,PID=',PIDDONE,STATUS,PID(1:NCPU)
305:    CALL FLUSH(6) ! the child process may duplicate output without this line!300:    CALL FLUSH(6) ! the child process may duplicate output without this line!
320:       GOTO 10   315:       GOTO 10   
321: !     STOP316: !     STOP
322:    ELSE317:    ELSE
323: 112   CALL FLUSH(6) ! the child process may duplicate output without this line!318: 112   CALL FLUSH(6) ! the child process may duplicate output without this line!
324:       PRINT '(A,I20)','cycle2> WARNING - WAIT returned system error code ',-PIDDONE319:       PRINT '(A,I20)','cycle2> WARNING - WAIT returned system error code ',-PIDDONE
325: !320: !
326: ! Try calling wait again to see if this fixes things. 321: ! Try calling wait again to see if this fixes things. 
327: ! For very short OPTIM jobs WAIT may have trouble keeping up!322: ! For very short OPTIM jobs WAIT may have trouble keeping up!
328: !323: !
329:       CALL MYSYSTEM(STATUS,DEBUG,' sleep 1')324:       CALL MYSYSTEM(STATUS,DEBUG,' sleep 1')
330:       IF (CHECKSPT.OR.ADDMINXYZT.OR.CONNECTPAIRST) THEN325:       IF (CHECKSPT.OR.ADDMINXYZT) THEN
331:          DO J2=1,NCPU326:          DO J2=1,NCPU
332:             IF (MINID(J2).GT.0) GOTO 114327:             IF (MINID(J2).GT.0) GOTO 114
333:          ENDDO328:          ENDDO
334:          PRINT '(A)','cycle2> No more candidates to check'329:          PRINT '(A)','cycle2> No more candidates to check'
335:          CLOSE(513)330:          CLOSE(513)
336:          STOP331:          STOP
337:       ENDIF332:       ENDIF
338: 114   CONTINUE333: 114   CONTINUE
339:       CALL WAIT_SUBR(PIDDONE,STATUS)334:       CALL WAIT_SUBR(PIDDONE,STATUS)
340:       PRINT '(2(A,I8))','cycle2> on calling wait again pid=',PIDDONE,' status=',STATUS335:       PRINT '(2(A,I8))','cycle2> on calling wait again pid=',PIDDONE,' status=',STATUS
500:                CONNATTEMPTS=0495:                CONNATTEMPTS=0
501:                IF (CONNDOING.GT.NMIN) THEN496:                IF (CONNDOING.GT.NMIN) THEN
502:                   PRINT '(A)','cycle2> Completed sweep through all available minima'497:                   PRINT '(A)','cycle2> Completed sweep through all available minima'
503:                   NOMORE=.TRUE.498:                   NOMORE=.TRUE.
504:                ENDIF499:                ENDIF
505:             ENDIF500:             ENDIF
506:          ENDIF501:          ENDIF
507:       ELSEIF (FREEPAIRT) THEN502:       ELSEIF (FREEPAIRT) THEN
508:          CALL GETFREEPAIR(NAVAIL,NUSED,MINS(NEWJOB),MINF(NEWJOB),SPOINTS,FPOINTS)503:          CALL GETFREEPAIR(NAVAIL,NUSED,MINS(NEWJOB),MINF(NEWJOB),SPOINTS,FPOINTS)
509:       ELSEIF (CONNECTPAIRST) THEN504:       ELSEIF (CONNECTPAIRST) THEN
510:          CONNECTPAIRDONE=CONNECTPAIRDONE+1505:          IF (.NOT.NOMORE) THEN
511:          IF (CONNECTPAIRDONE.LE.NCONNECTPAIRS) THEN506:             IF (NPAIRDONE.GE.NCONNECTPAIRS) THEN
512:             IF (CONNECTPAIRDONE.GE.NCONNECTPAIRS) THEN 
513:                NOMORE=.TRUE.507:                NOMORE=.TRUE.
514:                PRINT '(A)','cycle2> Completed sweep through all available pairs of minima'508:                PRINT '(A)','cycle2> Completed sweep through all available pairs of minima'
515:             ELSE509:             ELSE
516:                CALL GETNCONN ! must call this first to set NCONNMAX - used for declarations in GETCONNECTPAIR510:                CALL GETNCONN ! must call this first to set NCONNMAX - used for declarations in GETCONNECTPAIR
517:                CALL GETCONNECTPAIR(NAVAIL,NUSED,MINS(NEWJOB),MINF(NEWJOB),SPOINTS,FPOINTS)511:                CALL GETCONNECTPAIR(NAVAIL,NUSED,MINS(NEWJOB),MINF(NEWJOB),SPOINTS,FPOINTS)
518:             ENDIF512:             ENDIF
519:          ENDIF513:          ENDIF
520:       ELSEIF (USEPAIRST) THEN514:       ELSEIF (USEPAIRST) THEN
521:          CALL GETNCONN ! must call this first to set NCONNMAX - used for declarations in GETUSEPAIR515:          CALL GETNCONN ! must call this first to set NCONNMAX - used for declarations in GETUSEPAIR
522:          CALL GETUSEPAIR(NAVAIL,NUSED,MINS(NEWJOB),MINF(NEWJOB),SPOINTS,FPOINTS)516:          CALL GETUSEPAIR(NAVAIL,NUSED,MINS(NEWJOB),MINF(NEWJOB),SPOINTS,FPOINTS)
540:          CALL GETPAIR(NAVAIL,NUSED,MINS(NEWJOB),MINF(NEWJOB),SPOINTS,FPOINTS)534:          CALL GETPAIR(NAVAIL,NUSED,MINS(NEWJOB),MINF(NEWJOB),SPOINTS,FPOINTS)
541:       ENDIF535:       ENDIF
542: 536: 
543: !     WRITE(*,'(2(A,I6),A,F12.1,A,F12.3,A,I8)') 'cycle2> connecting minima ',MINS(NEWJOB),' and ', &537: !     WRITE(*,'(2(A,I6),A,F12.1,A,F12.3,A,I8)') 'cycle2> connecting minima ',MINS(NEWJOB),' and ', &
544: ! &      MINF(NEWJOB), ' distance=',DISTANCE,' |Pfold diff|=',ABS(GPFOLD(MINS(NEWJOB))-GPFOLD(MINF(NEWJOB))),' rejects=',NREJ538: ! &      MINF(NEWJOB), ' distance=',DISTANCE,' |Pfold diff|=',ABS(GPFOLD(MINS(NEWJOB))-GPFOLD(MINF(NEWJOB))),' rejects=',NREJ
545:       IF (CHECKSPT) THEN 539:       IF (CHECKSPT) THEN 
546:          IF (NSPCHECK.LE.CHECKSPF) CALL CHECKSPODATA(NEWJOB,SPOINTS) 540:          IF (NSPCHECK.LE.CHECKSPF) CALL CHECKSPODATA(NEWJOB,SPOINTS) 
547:       ELSEIF (NEWCONNECTIONST) THEN 541:       ELSEIF (NEWCONNECTIONST) THEN 
548:          IF (.NOT.NOMORE) CALL NEWCONNODATA(NEWJOB,SPOINTS) 542:          IF (.NOT.NOMORE) CALL NEWCONNODATA(NEWJOB,SPOINTS) 
549:       ELSEIF (CONNECTPAIRST) THEN 543:       ELSEIF (CONNECTPAIRST) THEN 
550:          IF (CONNECTPAIRDONE.LE.NCONNECTPAIRS) CALL CONNECTODATA(NEWJOB,SPOINTS,FPOINTS)544:          IF (.NOT.NOMORE) CALL CONNECTODATA(NEWJOB,SPOINTS,FPOINTS)
551:       ELSEIF (ADDMINXYZT) THEN 545:       ELSEIF (ADDMINXYZT) THEN 
552:          IF (ADDMINXYZCHECK.LE.NMINADDXYZ) CALL ADDMINXYZODATA(NEWJOB,SPOINTS) 546:          IF (ADDMINXYZCHECK.LE.NMINADDXYZ) CALL ADDMINXYZODATA(NEWJOB,SPOINTS) 
553:       ELSE547:       ELSE
554:          CALL CONNECTODATA(NEWJOB,SPOINTS,FPOINTS)548:          CALL CONNECTODATA(NEWJOB,SPOINTS,FPOINTS)
555:       ENDIF549:       ENDIF
556:       CALL FLUSH(6) ! the child process may duplicate output without this line!550:       CALL FLUSH(6) ! the child process may duplicate output without this line!
557:       IF (.NOT.(NOMORE.OR.(CHECKSPT.AND.(NSPCHECK.GT.CHECKSPF)).OR.(ADDMINXYZT.AND.(ADDMINXYZCHECK.GT.NMINADDXYZ)))) THEN551:       IF (.NOT.(NOMORE.OR.(CHECKSPT.AND.(NSPCHECK.GT.CHECKSPF)).OR.(ADDMINXYZT.AND.(ADDMINXYZCHECK.GT.NMINADDXYZ)))) THEN
558:          IF (CHECKSPT) MINID(NEWJOB)=NSPCHECK552:          IF (CHECKSPT) MINID(NEWJOB)=NSPCHECK
559:          IF (ADDMINXYZT) MINID(NEWJOB)=ADDMINXYZCHECK553:          IF (ADDMINXYZT) MINID(NEWJOB)=ADDMINXYZCHECK
560:          CALL FORK_SUBR(PID(NEWJOB))554:          CALL FORK_SUBR(PID(NEWJOB))


r33331/main.F 2017-09-20 23:30:19.095093693 +0100 r33330/main.F 2017-09-20 23:30:19.591100247 +0100
514:          ELSE514:          ELSE
515:             PRINT '(A)','Exact calculation of persistences'515:             PRINT '(A)','Exact calculation of persistences'
516:          ENDIF516:          ENDIF
517:          IF (ALLCOMPONENTST) PRINT '(A)','Persistence information will be reported for all valid minima'517:          IF (ALLCOMPONENTST) PRINT '(A)','Persistence information will be reported for all valid minima'
518:       ELSEIF (NEWCONNECTIONST) THEN518:       ELSEIF (NEWCONNECTIONST) THEN
519:          PRINT '(A)','Database will be extended using single-ended transition state searches'519:          PRINT '(A)','Database will be extended using single-ended transition state searches'
520:          PRINT '(A,F12.3)','Minima will be perturbed using random Cartesian displacements up to magnitude ',PERTVALUE520:          PRINT '(A,F12.3)','Minima will be perturbed using random Cartesian displacements up to magnitude ',PERTVALUE
521:          PRINT '(4(A,I10))','Minima will be perturbed starting from ',CONNMINSTART,521:          PRINT '(4(A,I10))','Minima will be perturbed starting from ',CONNMINSTART,
522:      &                     ' in order until they have ',CONNECTIONS,522:      &                     ' in order until they have ',CONNECTIONS,
523:      &                     ' connections up to a maximum ',MAXTSATTEMPTS,' attempts each'523:      &                     ' connections up to a maximum ',MAXTSATTEMPTS,' attempts each'
524:       ELSEIF (USEPAIRST) THEN 
525:          PRINT '(A,A)','Pairs of minima will be chosen from the sequence in file ',TRIM(ADJUSTL(USEPAIRSFILE)) 
526:       ELSEIF (CONNECTPAIRST) THEN 
527:          PRINT '(A,A)','Pairs of minima will be taken from the file ',TRIM(ADJUSTL(CONNECTPAIRSFILE)) 
528:       ELSEIF (NATTEMPT.GT.0) THEN524:       ELSEIF (NATTEMPT.GT.0) THEN
529:          PRINT '(A,F12.3)','Pairs of minima will be chosen based upon a minimum committor probability difference of ',PSCALE525:          PRINT '(A,F12.3)','Pairs of minima will be chosen based upon a minimum committor probability difference of ',PSCALE
530:          IF (NPAIRFRQ.LT.1) THEN526:          IF (NPAIRFRQ.LT.1) THEN
531:             PRINT '(A,F12.3)','Pairs will not be recalculated unless we run out of possibilities'527:             PRINT '(A,F12.3)','Pairs will not be recalculated unless we run out of possibilities'
532:          ELSE528:          ELSE
533:             PRINT '(A,I10,A)','Pairs will be recalculated every ',NPAIRFRQ,' cycles'529:             PRINT '(A,I10,A)','Pairs will be recalculated every ',NPAIRFRQ,' cycles'
534:          ENDIF530:          ENDIF
 531:       ELSEIF (USEPAIRST) THEN
 532:          PRINT '(A,A)','Pairs of minima will be chosen from the sequence in file ',TRIM(ADJUSTL(USEPAIRSFILE))
 533:       ELSEIF (CONNECTPAIRST) THEN
 534:          PRINT '(A,A)','Pairs of minima will be taken from the file ',TRIM(ADJUSTL(CONNECTPAIRSFILE))
535:       ENDIF535:       ENDIF
536:       IF (DUMMYTST) THEN536:       IF (DUMMYTST) THEN
537:          IF (BHINTERPT) PRINT '(A)','Dummy ts entries will be created for closest pairs of minima found via basin-hopping.'537:          IF (BHINTERPT) PRINT '(A)','Dummy ts entries will be created for closest pairs of minima found via basin-hopping.'
538:          IF (BISECTT) PRINT '(A)','Dummy ts entries will be created for pairs of minima found by bisection.'538:          IF (BISECTT) PRINT '(A)','Dummy ts entries will be created for pairs of minima found by bisection.'
539:       ENDIF539:       ENDIF
540:       IF (CLOSEFILEST) PRINT '(A)','The min.data and ts.data files will not be kept open'540:       IF (CLOSEFILEST) PRINT '(A)','The min.data and ts.data files will not be kept open'
541:       IF (INTLJT) THEN541:       IF (INTLJT) THEN
542:          PRINT '(A,F15.5)',   'Using interpLJ potential metric'542:          PRINT '(A,F15.5)',   'Using interpLJ potential metric'
543:          PRINT '(A,F20.10)',  'minimum distance difference for internal minimum=',INTLJDEL543:          PRINT '(A,F20.10)',  'minimum distance difference for internal minimum=',INTLJDEL
544:          PRINT '(A,F20.10)',  'multiplying factor for internal minimum penalty function=',INTLJEPS544:          PRINT '(A,F20.10)',  'multiplying factor for internal minimum penalty function=',INTLJEPS


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0