hdiff output

r31751/geopt.f 2017-01-21 10:37:08.086250000 +0000 r31750/geopt.f 2017-01-21 10:37:08.618250000 +0000
1547:       END  ! END GEOPT!1547:       END  ! END GEOPT!
1548: 1548: 
1549:       SUBROUTINE MASSWT(NATOMS,ATMASS,Q,VNEW,STEST)1549:       SUBROUTINE MASSWT(NATOMS,ATMASS,Q,VNEW,STEST)
1550:       USE MODHESS1550:       USE MODHESS
1551:       IMPLICIT NONE1551:       IMPLICIT NONE
1552:       INTEGER NATOMS, J1, J2, J3, J41552:       INTEGER NATOMS, J1, J2, J3, J4
1553:       LOGICAL STEST1553:       LOGICAL STEST
1554:       DOUBLE PRECISION ATMASS(NATOMS),Q(3*NATOMS),VNEW(3*NATOMS),AMASS,BMASS,PMASS1554:       DOUBLE PRECISION ATMASS(NATOMS),Q(3*NATOMS),VNEW(3*NATOMS),AMASS,BMASS,PMASS
1555: 1555: 
1556:       IF (SIZE(HESS,2).LT.3*NATOMS) RETURN ! for example, for 2D XY model1556:       IF (SIZE(HESS,2).LT.3*NATOMS) RETURN ! for example, for 2D XY model
1557:  
1558:       IF (.NOT.ALLOCATED(HESS)) THEN1557:       IF (.NOT.ALLOCATED(HESS)) THEN
1559:          PRINT '(A)','masswt2> ERROR - HESS has not been allocated. Do you need NOFRQS, ENDHESS, or ENDNUMHESS in odata?'1558:          PRINT '(A)','masswt2> ERROR - HESS has not been allocated. Do you need NOFRQS, ENDHESS, or ENDNUMHESS in odata?'
1560:          STOP1559:          STOP
1561:       ENDIF1560:       ENDIF
1562:       DO J1=1,NATOMS1561:       DO J1=1,NATOMS
1563: !        PRINT *,'J1,ATMASS=',J1,ATMASS(J1)1562: !        PRINT *,'J1,ATMASS=',J1,ATMASS(J1)
1564:          AMASS=1.0D0/SQRT(ATMASS(J1))1563:          AMASS=1.0D0/SQRT(ATMASS(J1))
1565:          BMASS=SQRT(ATMASS(J1))1564:          BMASS=SQRT(ATMASS(J1))
1566:          J3=3*J11565:          J3=3*J1
1567:          Q(J3-2)=BMASS*Q(J3-2)1566:          Q(J3-2)=BMASS*Q(J3-2)
1612:       RETURN1611:       RETURN
1613:       END1612:       END
1614: 1613: 
1615:       SUBROUTINE MASSWT2(NATOMS,ATMASS,Q,VNEW,STEST)1614:       SUBROUTINE MASSWT2(NATOMS,ATMASS,Q,VNEW,STEST)
1616:       USE MODHESS1615:       USE MODHESS
1617:       IMPLICIT NONE1616:       IMPLICIT NONE
1618:       INTEGER NATOMS, J1, J2, J3, J41617:       INTEGER NATOMS, J1, J2, J3, J4
1619:       LOGICAL STEST1618:       LOGICAL STEST
1620:       DOUBLE PRECISION ATMASS(NATOMS),Q(3*NATOMS),VNEW(3*NATOMS),AMASS,BMASS,PMASS1619:       DOUBLE PRECISION ATMASS(NATOMS),Q(3*NATOMS),VNEW(3*NATOMS),AMASS,BMASS,PMASS
1621: 1620: 
1622:       IF (SIZE(HESS,2).LT.3*NATOMS) RETURN ! for example, for 2D XY model or VARIABLES 
1623:       IF (.NOT.ALLOCATED(HESS)) THEN1621:       IF (.NOT.ALLOCATED(HESS)) THEN
1624:          PRINT '(A)','masswt2> ERROR - HESS has not been allocated. Do you need NOFRQS, ENDHESS, or ENDNUMHESS in odata?'1622:          PRINT '(A)','masswt2> ERROR - HESS has not been allocated. Do you need NOFRQS, ENDHESS, or ENDNUMHESS in odata?'
1625:          STOP1623:          STOP
1626:       ENDIF1624:       ENDIF
1627:       DO J1=1,NATOMS1625:       DO J1=1,NATOMS
1628:          AMASS=1/SQRT(ATMASS(J1))1626:          AMASS=1/SQRT(ATMASS(J1))
1629:          BMASS=SQRT(ATMASS(J1))1627:          BMASS=SQRT(ATMASS(J1))
1630:          J3=3*J11628:          J3=3*J1
1631: C DAE don't mass weight the coordinates or gradients1629: C DAE don't mass weight the coordinates or gradients
1632:          IF (STEST) THEN1630:          IF (STEST) THEN


r31751/path.f 2017-01-21 10:37:08.342250000 +0000 r31750/path.f 2017-01-21 10:37:08.890250000 +0000
1985:               IF (DIAG(1).LT.DIAG(DEGFREEDOMS)) THEN1985:               IF (DIAG(1).LT.DIAG(DEGFREEDOMS)) THEN
1986:                  CALL EIGENSORT_VAL_ASC(DIAG(1:DEGFREEDOMS),HESS(1:DEGFREEDOMS,1:DEGFREEDOMS),DEGFREEDOMS,DEGFREEDOMS)1986:                  CALL EIGENSORT_VAL_ASC(DIAG(1:DEGFREEDOMS),HESS(1:DEGFREEDOMS,1:DEGFREEDOMS),DEGFREEDOMS,DEGFREEDOMS)
1987:               ENDIF1987:               ENDIF
1988:               CALL SYMMETRY(HORDER,.FALSE.,Q,INERTIA) ! sn402: I think this needs to be here?1988:               CALL SYMMETRY(HORDER,.FALSE.,Q,INERTIA) ! sn402: I think this needs to be here?
1989:             ELSE1989:             ELSE
1990:                IF (ENDNUMHESS) THEN1990:                IF (ENDNUMHESS) THEN
1991:                    CALL MAKENUMHESS(Q,NATOMS)1991:                    CALL MAKENUMHESS(Q,NATOMS)
1992:                ELSEIF (.NOT.NOFRQS) THEN1992:                ELSEIF (.NOT.NOFRQS) THEN
1993:                    CALL POTENTIAL(Q,E,VNEW,.TRUE.,.TRUE.,RMS,.FALSE.,.FALSE.)1993:                    CALL POTENTIAL(Q,E,VNEW,.TRUE.,.TRUE.,RMS,.FALSE.,.FALSE.)
1994:                ENDIF1994:                ENDIF
1995:                IF (VARIABLES) THEN1995:                CALL SYMMETRY(HORDER,.FALSE.,Q,INERTIA)
1996:                    HORDER=1 
1997:                    FPGRP='C1' 
1998:                ELSE 
1999:                    CALL SYMMETRY(HORDER,.FALSE.,Q,INERTIA) 
2000:                ENDIF 
2001:                IF (.NOT.NOFRQS) CALL MASSWT2(NATOMS,ATMASS,Q,VNEW,.TRUE.)1996:                IF (.NOT.NOFRQS) CALL MASSWT2(NATOMS,ATMASS,Q,VNEW,.TRUE.)
2002:             ENDIF1997:             ENDIF
2003:          ENDIF1998:          ENDIF
2004: 1999: 
2005:          ! Dump the Hessian to a file, if we're doing that.2000:          ! Dump the Hessian to a file, if we're doing that.
2006:          IF (HESSDUMPT) THEN2001:          IF (HESSDUMPT) THEN
2007:             LUNIT=GETUNIT()2002:             LUNIT=GETUNIT()
2008:             OPEN(LUNIT,FILE=TRIM(ADJUSTL(HESSDUMP_FNAME)),STATUS='UNKNOWN',POSITION ='APPEND')2003:             OPEN(LUNIT,FILE=TRIM(ADJUSTL(HESSDUMP_FNAME)),STATUS='UNKNOWN',POSITION ='APPEND')
2009:             WRITE(LUNIT,'(6G20.10)') HESS(1:NOPT,1:NOPT)2004:             WRITE(LUNIT,'(6G20.10)') HESS(1:NOPT,1:NOPT)
2010:             CLOSE(LUNIT)2005:             CLOSE(LUNIT)


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0