hdiff output

r30251/finalio.f90 2016-07-06 15:36:38.128070620 +0100 r30250/finalio.f90 2016-07-06 15:36:38.484075436 +0100
214:         WRITE(MYUNIT2,*) NATOMS214:         WRITE(MYUNIT2,*) NATOMS
215:         !ds656> With PRINT_MINDATA we want to discard "minima"215:         !ds656> With PRINT_MINDATA we want to discard "minima"
216:         ! with negative eigenvalues, and so we print the number216:         ! with negative eigenvalues, and so we print the number
217:         ! of atoms after checking the Hessian.217:         ! of atoms after checking the Hessian.
218:      ENDIF218:      ENDIF
219:      !        IF (CSMT.AND.DEBUG) WRITE(MYUNIT,'(A,I6,2G20.10)') 'finalio> J1,QMIN,QMINAV=',J1,QMIN(J1),QMINAV(J1)219:      !        IF (CSMT.AND.DEBUG) WRITE(MYUNIT,'(A,I6,2G20.10)') 'finalio> J1,QMIN,QMINAV=',J1,QMIN(J1),QMINAV(J1)
220:      !220:      !
221:      ! ds656> Either append point group or print stuff for HSA221:      ! ds656> Either append point group or print stuff for HSA
222:      IF(PRINT_MINDATA.OR.PRINT_PTGRP) THEN222:      IF(PRINT_MINDATA.OR.PRINT_PTGRP) THEN
223:         !223:         !
224:         WRITE(MYUNIT,'(A,I5,A)') &224:         WRITE(MYUNIT,'(A,I4)') &
225:              'finalio> ---| Pot-processing minimum ',J1,' |-----------'225:              'finalio> Determining point group of minimum ', J1
226:         !226:         !
227:         CM(1:3) = 0.0D0; NSYMOPS=0; SYMOPS(:,:,:) = 0.0D0227:         CM(1:3) = 0.0D0; NSYMOPS=0; SYMOPS(:,:,:) = 0.0D0
228:         J3=1 ! Determine majority label/species228:         J3=1 ! Determine majority label/species
229:         DO J2=2,NSPECIES(0)229:         DO J2=2,NSPECIES(0)
230:            IF(NSPECIES(J2) > NSPECIES(J3)) J3 = J2230:            IF(NSPECIES(J2) > NSPECIES(J3)) J3 = J2
231:         ENDDO231:         ENDDO
232:         ! Determine the overall point-group (for ALL species!).232:         ! Determine the overall point-group (for ALL species!).
233:         CALL PGSYM( NATOMS, QMINP(J1,1:3*NATOMS), &233:         CALL PGSYM( NATOMS, QMINP(J1,1:3*NATOMS), &
234:              QMINT(J1,1:NATOMS), PGSYMTOLS, 2, J3,&234:              QMINT(J1,1:NATOMS), PGSYMTOLS, 2, J3,&
235:              CM, NSYMOPS, SYMOPS, FPGRP )235:              CM, NSYMOPS, SYMOPS, FPGRP )
288:               DO J5=1,3288:               DO J5=1,3
289:                  COMBO_COORDS(3*(J4-1)+J5) = &289:                  COMBO_COORDS(3*(J4-1)+J5) = &
290:                       MIEF_SITES(ISITES(J4),J5)290:                       MIEF_SITES(ISITES(J4),J5)
291:               ENDDO291:               ENDDO
292:            ENDDO292:            ENDDO
293:            !293:            !
294:            COMBO_LABELS(NSITES+1:COMBO_N) = QMINT(J1,1:NATOMS)294:            COMBO_LABELS(NSITES+1:COMBO_N) = QMINT(J1,1:NATOMS)
295:            COMBO_COORDS(3*NSITES+1:3*COMBO_N) = &295:            COMBO_COORDS(3*NSITES+1:3*COMBO_N) = &
296:                 QMINP(J1,1:3*NATOMS)296:                 QMINP(J1,1:3*NATOMS)
297:            !297:            !
298:            WRITE(MYUNIT,'(A,I4,A)') &298:            WRITE(MYUNIT,'(A,I4,A,I4,A)') &
299:                 'finalio> Diagnosing point group including ', &299:                 'finalio> Determining point group of minimum ',&
300:                 NSITES,' MIEF sites.'300:                 J1,' including ', NSITES, ' MIEF sites.'
301:            !301:            !
302:            CALL PGSYM( COMBO_N, COMBO_COORDS(1:3*COMBO_N), &302:            CALL PGSYM( COMBO_N, COMBO_COORDS(1:3*COMBO_N), &
303:                 COMBO_LABELS(1:COMBO_N), PGSYMTOLS, 2, J3,&303:                 COMBO_LABELS(1:COMBO_N), PGSYMTOLS, 2, J3,&
304:                 CM, NSYMOPS, SYMOPS, FPGRP )              304:                 CM, NSYMOPS, SYMOPS, FPGRP )              
305:            !305:            !
306:            DEALLOCATE(COMBO_COORDS, COMBO_LABELS)306:            DEALLOCATE(COMBO_COORDS, COMBO_LABELS)
307:            !307:            !
308:         ENDIF308:         ENDIF
309:         !309:         !
310:         IF(PRINT_PTGRP) THEN ! Just append point group310:         IF(PRINT_PTGRP) THEN ! Just append point group
321:            IF (MIEFT) NUM_ZERO_EVS=0321:            IF (MIEFT) NUM_ZERO_EVS=0
322:            !322:            !
323:            IF (ALLOCATED(HESS)) DEALLOCATE(HESS)323:            IF (ALLOCATED(HESS)) DEALLOCATE(HESS)
324:            ALLOCATE(HESS(3*NATOMS,3*NATOMS))324:            ALLOCATE(HESS(3*NATOMS,3*NATOMS))
325:            IF(NSPECIES(0)>1) & ! ds656> this also sets ATMASS325:            IF(NSPECIES(0)>1) & ! ds656> this also sets ATMASS
326:                 CALL SET_ATOMLISTS(QMINT(J1,1:NATOMS),1)326:                 CALL SET_ATOMLISTS(QMINT(J1,1:NATOMS),1)
327:            CALL POTENTIAL(QMINP(J1,1:3*NATOMS), EVALS, EDUMMY, &327:            CALL POTENTIAL(QMINP(J1,1:3*NATOMS), EVALS, EDUMMY, &
328:                 .TRUE., .TRUE.) ! EVALS is dummy for gradient here328:                 .TRUE., .TRUE.) ! EVALS is dummy for gradient here
329:            IF(ABS(EDUMMY-QMIN(J1)) > ECONV) THEN329:            IF(ABS(EDUMMY-QMIN(J1)) > ECONV) THEN
330:               WRITE(MYUNIT,'(A)') &330:               WRITE(MYUNIT,'(A)') &
331:                    'finalio> WARNING: Unexpected energy value! Configuration changed on final requench?'331:                    'finalio> WARNING: Unexpected energy value!'
332:            ENDIF332:            ENDIF
333:            CALL MASSWT() ! Weight the Hessian by mass. 333:            CALL MASSWT() ! Weight the Hessian by mass. 
334:            !334:            !
335:            WRITE(MYUNIT, '(A)') &335:            WRITE(MYUNIT, '(A,I6)') &
336:                 'finalio> Using DSYEV to calculate Hessian eigenvalues'336:                 'finalio> Using DSYEV to calculate Hessian eigenvalues for minimum ', J1
337:            CALL DSYEV('N','U',3*NATOMS,HESS,3*NATOMS,EVALS,&337:            CALL DSYEV('N','U',3*NATOMS,HESS,3*NATOMS,EVALS,&
338:                 WORK,9*NATOMS,INFO)338:                 WORK,9*NATOMS,INFO)
339:            IF(INFO /= 0) THEN339:            IF(INFO /= 0) THEN
340:               WRITE(MYUNIT,'(A,I2)') &340:               WRITE(MYUNIT,'(A,I2)') &
341:                    'finalio> ***WARNING*** DSYEV error status', INFO341:                    'finalio> ***WARNING*** DSYEV error status', INFO
342:            ENDIF342:            ENDIF
343:            J3=0343:            J3=0
344:            WRITE(MYUNIT,'(A,I6,A)',ADVANCE='NO') &344:            WRITE(MYUNIT,'(A,I6,A)',ADVANCE='NO') &
345:                 'finalio> ',3*NATOMS,' Hessian eigenvalues:'345:                 'finalio> ',3*NATOMS,' Hessian eigenvalues:'
346:            DO J2=1,3*NATOMS346:            DO J2=1,3*NATOMS


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0