Révision 8 utils/Xyz2Path.f90

Xyz2Path.f90 (revision 8)
53 53
          REAL(8) ::    VB(MaxNat),VA(MaxNat),VD(MaxNat),VCOM(MaxNat)
54 54

  
55 55
          REAL(8) :: MRot(3,3), Rmsd
56
          LOGICAL FExist,FRot,FAlign,Debug
56
          LOGICAL FExist,FRot,FAlign,Debug,DebugRMSD
57 57

  
58 58
          INTEGER(4) :: ConvertNumAt
59 59
          external ConvertNumAt
......
92 92
             196.97D0, 200.59D0,                                             &
93 93
             204.37D0, 207.19D0,208.98D0,210.D0,210.D0,222.D0 /)
94 94

  
95
          Debug=.FALSE.
96
          DebugRMSD=.FALSE.
95 97

  
96 98
          AU2PS=1./41341.37
97 99
          NbPrint=100
......
100 102
          Conv=1.
101 103
          FRot=.TRUE.
102 104
          FAlign=.TRUE.
103
          Debug=.FALSE.
104 105
          NbDist=0
105 106
          NbAngle=0
106 107
          NbDie=0
......
201 202
!           WRITE(*,*) nnn
202 203
           if (nnn.gt.0) then
203 204

  
204
          call CalcRmsd(nnn, geos1, geos,MRot,rmsd,FRot,FAlign,debug)
205
          if (debug) THEN
206
             WRITE(*,*) "Debug ref geom: geos1"
207
             DO I=1,nnn
208
                WRITE(*,'(1X,I5,1X,F5.1,3(1X,F12.6))') I,mass(I),geos1(:,I)
209
             END DO
210
          END IF
211

  
212
          call CalcRmsd(nnn, geos1, geos,MRot,rmsd,FRot,FAlign,debugRMSD)
213

  
214
          if (debug) THEN
215
             WRITE(*,*) "Debug Geos aligned on geos1,rmsd=",rmsd
216
             DO I=1,nnn
217
                WRITE(*,'(1X,I5,1X,F5.1,3(1X,F12.6))') I,mass(I),geos(:,I)
218
             END DO
219
          END IF
220

  
205 221
         ds=0.
206 222
           DO I=1,nnn
207 223
             DO J=1,3
208 224
             ds=ds+mass(I)*(geos(J,I)-geos1(J,I))**2
209
!            write(*,*) I,J,geos(J,I),Geos1(J,I),ds
210 225
             geos1(J,I)=Geos(J,I)
211 226
              END DO
227
             if (debug) write(*,*) I,ds
212 228
            END DO
229
            if (debug) WRITE(*,*) "Debug, ds",sqrt(ds)
213 230
           s=s+sqrt(ds)
214 231

  
215 232
! We convert coordinates in a0 into Angstroem

Formats disponibles : Unified diff