hdiff output

r33354/geopt.f 2017-09-27 10:30:09.950361559 +0100 r33353/geopt.f 2017-09-27 10:30:10.178364602 +0100
120:          NSTEP=ITDONE120:          NSTEP=ITDONE
121:          IF (.NOT.MFLAG) THEN121:          IF (.NOT.MFLAG) THEN
122:             PRINT '(A,I8,A)',' geopt> switching to LBFGS minimisation after ',NSTEP,' hybrid minimisation steps'122:             PRINT '(A,I8,A)',' geopt> switching to LBFGS minimisation after ',NSTEP,' hybrid minimisation steps'
123:             KNOWE=.FALSE.123:             KNOWE=.FALSE.
124:             KNOWG=.FALSE.124:             KNOWG=.FALSE.
125:             IF (INTWRAP_USEINTERNALS()) THEN125:             IF (INTWRAP_USEINTERNALS()) THEN
126:                CALL MYLBFGS(NINTS,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,126:                CALL MYLBFGS(NINTS,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,
127:      1                      .TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)127:      1                      .TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)
128:             ELSE128:             ELSE
129:                CALL MYLBFGS(NOPT,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,129:                CALL MYLBFGS(NOPT,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,
130:      1                      .TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)130:      1                      .TRUE.,ITDONE,DEBUG,VNEW,.FALSE.,.FALSE.)
131:             ENDIF131:             ENDIF
132:             NSTEP=NSTEP+ITDONE132:             NSTEP=NSTEP+ITDONE
133:          ENDIF133:          ENDIF
134:       ELSE IF ((BFGSMINT.AND.(.NOT.BFGSTST).AND.(.NOT.BFGSSTEP).AND. 134:       ELSE IF ((BFGSMINT.AND.(.NOT.BFGSTST).AND.(.NOT.BFGSSTEP).AND. 
135:      &                    (.NOT.(INR.EQ.1)).AND.(.NOT.(INR.EQ.2))).OR.(BFGSTST.AND.(HINDEX.EQ.0))) THEN135:      &                    (.NOT.(INR.EQ.1)).AND.(.NOT.(INR.EQ.2))).OR.(BFGSTST.AND.(HINDEX.EQ.0))) THEN
136:          IF (UNRST.OR.INTWRAP_USEINTERNALS()) THEN136:          IF (UNRST.OR.INTWRAP_USEINTERNALS()) THEN
137:             CALL MYLBFGS(NINTS,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,137:             CALL MYLBFGS(NINTS,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,
138:      1                   .TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)138:      1                   .TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)
139:          ELSE139:          ELSE
140:             IF (CUDAT) THEN140:             IF (CUDAT) THEN
141:                CALL CUDA_LBFGS_WRAPPER(NOPT,MUPDATE,Q,MFLAG,ENERGY,RMS,BFGSSTEPS,ITDONE,.FALSE.)141:                CALL CUDA_LBFGS_WRAPPER(NOPT,MUPDATE,Q,MFLAG,ENERGY,RMS,BFGSSTEPS,ITDONE,.FALSE.)
142:                WRITE(*,'(A,G25.17)') ' geopt> Final energy is ',ENERGY142:                WRITE(*,'(A,G25.17)') ' geopt> Final energy is ',ENERGY
143:             ELSE143:             ELSE
144:                CALL MYLBFGS(NOPT,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,144:                CALL MYLBFGS(NOPT,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,
145:      1                   .TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)145:      1                   .TRUE.,ITDONE,DEBUG,VNEW,.FALSE.,.FALSE.)
146:             END IF146:             END IF
147:          ENDIF147:          ENDIF
148: C148: C
149: C  ******** great circle interpolation between end points ********************149: C  ******** great circle interpolation between end points ********************
150: C150: C
151:       ELSE IF (GREATCIRCLET.AND.(.NOT.CONNECTT)) THEN151:       ELSE IF (GREATCIRCLET.AND.(.NOT.CONNECTT)) THEN
152:           IF (UNRST) THEN152:           IF (UNRST) THEN
153:              PRINT *,'not available'153:              PRINT *,'not available'
154:              CALL FLUSH(6)154:              CALL FLUSH(6)
155:              STOP155:              STOP
218: C            NOSHIFT=.TRUE.218: C            NOSHIFT=.TRUE.
219:              BFGSSTEP=.FALSE.219:              BFGSSTEP=.FALSE.
220:              BFGSTST=.FALSE.220:              BFGSTST=.FALSE.
221:              IF (.NOT.BFGSMINT) WRITE(*,'(A,26X,F20.10)') ' Energy after pushoff=  ',ENERGY221:              IF (.NOT.BFGSMINT) WRITE(*,'(A,26X,F20.10)') ' Energy after pushoff=  ',ENERGY
222:              IF (BFGSMINT) THEN222:              IF (BFGSMINT) THEN
223:                 IF (UNRST.OR.INTWRAP_USEINTERNALS()) THEN223:                 IF (UNRST.OR.INTWRAP_USEINTERNALS()) THEN
224:                    CALL MYLBFGS(NINTS,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,224:                    CALL MYLBFGS(NINTS,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,
225:      1                       BFGSSTEPS,.TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)225:      1                       BFGSSTEPS,.TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)
226:                 ELSE226:                 ELSE
227:                    CALL MYLBFGS(NOPT,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,227:                    CALL MYLBFGS(NOPT,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,
228:      1                          .TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)228:      1                          .TRUE.,ITDONE,DEBUG,VNEW,.FALSE.,.FALSE.)
229:                 ENDIF229:                 ENDIF
230:              ELSE IF (BSMIN.OR.RKMIN) THEN230:              ELSE IF (BSMIN.OR.RKMIN) THEN
231:                 CALL ODESD(NSTEPS,Q,MFLAG,ITDONE,.TRUE.)231:                 CALL ODESD(NSTEPS,Q,MFLAG,ITDONE,.TRUE.)
232:              ENDIF232:              ENDIF
233:           ENDIF233:           ENDIF
234: 234: 
235: C235: C
236: C Using xmylbfgs to locate the lowest eigenvalue and the corresponding eigenvector236: C Using xmylbfgs to locate the lowest eigenvalue and the corresponding eigenvector
237: C237: C
238:       ELSE IF (EIGENONLY) THEN238:       ELSE IF (EIGENONLY) THEN
276:       ELSE IF ((BSMIN.OR.RKMIN).AND.(.NOT.BFGSTST).AND.(.NOT.BFGSSTEP).AND.276:       ELSE IF ((BSMIN.OR.RKMIN).AND.(.NOT.BFGSTST).AND.(.NOT.BFGSSTEP).AND.
277:      &          (.NOT.(INR.EQ.1)).AND.(.NOT.(INR.EQ.2))) THEN277:      &          (.NOT.(INR.EQ.1)).AND.(.NOT.(INR.EQ.2))) THEN
278:          CALL ODESD(NSTEPS,Q,MFLAG,ITDONE,.TRUE.)278:          CALL ODESD(NSTEPS,Q,MFLAG,ITDONE,.TRUE.)
279:          IF (.NOT.MFLAG) THEN279:          IF (.NOT.MFLAG) THEN
280:             BSMIN=.FALSE.280:             BSMIN=.FALSE.
281:             RKMIN=.FALSE.281:             RKMIN=.FALSE.
282:             BFGSMINT=.TRUE.282:             BFGSMINT=.TRUE.
283:             KNOWE=.FALSE.283:             KNOWE=.FALSE.
284:             KNOWG=.FALSE.284:             KNOWG=.FALSE.
285:             CALL MYLBFGS(NOPT,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,285:             CALL MYLBFGS(NOPT,MUPDATE,Q,.FALSE.,MFLAG,ENERGY,RMS2,EREAL,RMS,BFGSSTEPS,
286:      1                   .TRUE.,ITDONE,.TRUE.,VNEW,.FALSE.,.FALSE.)286:      1                   .TRUE.,ITDONE,DEBUG,VNEW,.FALSE.,.FALSE.)
287:          ENDIF287:          ENDIF
288:       ELSE288:       ELSE
289: C289: C
290: C  *************** EF optimization (or Page-McIver second order SD) ***************290: C  *************** EF optimization (or Page-McIver second order SD) ***************
291: C291: C
292:          NEWINR=INR292:          NEWINR=INR
293:          CALL EFOL(Q,MFLAG,NSTEPS,ENERGY,ITDONE,EVALMIN,.TRUE.,DIAG,NEWINR)293:          CALL EFOL(Q,MFLAG,NSTEPS,ENERGY,ITDONE,EVALMIN,.TRUE.,DIAG,NEWINR)
294:       ENDIF294:       ENDIF
295: C295: C
296: C  *************** End of optimisation possibilities. Checkindex if required. *****296: C  *************** End of optimisation possibilities. Checkindex if required. *****


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0