Index: src/Std_ori.f90
===================================================================
--- src/Std_ori.f90	(revision 11)
+++ src/Std_ori.f90	(revision 12)
@@ -1,127 +0,0 @@
-subroutine Std_ori(natom,rx,ry,rz,a,b,c,rmass)
-  !c
-  !c      rotational constants for all replicas by inline diagonalization
-  !c      of inertial tensor
-  !c
-!!!!!!! Input
-! natom    : number of atoms
-! rx,ry,rz : arrays natom with cartesian coordinates of natom particles
-! rmass    : vector of length natom with particle masses
-!
-!!!!!!! Output
-! a,b,c    : rotational constants a, b, and c
-!
-!!!!!! Dependencies
-! tensor: calculate the inertial tensor
-! Jacobi, trie : diaganalization subroutines
-
-  implicit none
-
-  INTEGER, PARAMETER :: KINT=KIND(1)
-  INTEGER, PARAMETER :: KREAL=KIND(1.0D0)
-
-  INTEGER(KINT), INTENT(IN) :: Natom
-  REAL(KREAL), INTENT(INOUT) :: rx(Natom),ry(Natom),rz(Natom)
-  REAL(KREAL), INTENT(IN) :: rmass(Natom)
-  REAL(KREAL), INTENT(OUT) :: a,b,c
-
-  real(KREAL) :: Tinert(3,3),D(3),V(3,3),CoordG(3)
-  real(KREAL) :: ca,sa,na,cb,sb,nb
-
-  INTEGER(KINT) :: I
-  REAL(KREAL) :: Vt,Rxt,Ryt
-
-  call tensor(natom,rx,ry,rz,Tinert,CoordG,rmass)
-  call Jacobi(Tinert,3,D,V,3)
-  call Trie(3,D,V,3)
-
-!1000 FORMAT(3F15.3)
-!1010 FORMAT(4F15.3)
-
-  a=D(1)
-!     WRITE(*,1010) a,(V(i,1),i=1,3)
-  b=D(2)
-!     WRITE(*,1010) b,(V(i,2),i=1,3)
-  c=D(3)
-!     WRITE(*,1010) c,(V(i,3),i=1,3)
-
-!C On commence par mettre le centre de masse a l'origine
-
-  Do I=1,natom
-!     WRITE(*,*) 'DBG Tensor', I, rx(I),rY(I),rz(I)
-     rx(i)=rx(i)-CoordG(1)
-     ry(i)=ry(i)-CoordG(2)
-     rz(i)=rz(i)-CoordG(3)
-!     WRITE(*,*) 'DBG Tensor', I, rx(I),rY(I),rz(I)
-  END DO
-
-  ! C Ensuite, on va faire coincider les axes d'inertie avec x,y,z
-  ! C Pour etre coherent, et bien que ce ne soit pas le plus logique,
-  ! C on classe les vecteurs dans le sens croissant, et on fait coincider
-  ! C les axes dans l'ordre x,y,z pour l'instant.
-
-  ! C Coincidation du premier axe avec x
-  ! C Rotation autour de z pour l'amener dans le plan xOz
-  ! C puis Rotation autour de y pour l'amener suivant x
-  na=sqrt(V(1,1)*V(1,1)+V(2,1)*V(2,1))
-  nb=1
-  if (na.gt.1D-10) then
-     ca=V(1,1)/na
-     sa=-V(2,1)/na
-  else
-     ca=1
-     sa=0
-  END IF
-  cb=na/nb
-  sb=-V(3,1)/nb
-  DO I=1,natom
-     rxt=rx(i)
-     rx(i)=rx(i)*ca-ry(i)*sa
-     ry(i)=rxt*sa+ry(i)*ca
-     rxt=rx(i)
-     rx(i)=rx(i)*cb-rz(i)*sb
-     rz(i)=rxt*sb+rz(i)*cb
-  END DO
-
-  !C on applique aussi la rotation aux deux autres axes...
-  Vt=V(1,2)
-  V(1,2)=V(1,2)*ca-V(2,2)*sa
-  V(2,2)=Vt*sa+V(2,2)*ca
-  Vt=V(1,2)
-  V(1,2)=V(1,2)*cb-V(3,2)*sb
-  V(3,2)=Vt*sb+V(3,2)*cb
-
-  !c     WRITE(IOOUT,1010) b,(V(i,2),i=1,3)
-
-  !c      Vt=V(1,3)
-  !c      V(1,3)=V(1,3)*ca-V(2,3)*sa
-  !c      V(2,3)=Vt*sa+V(2,3)*ca
-  !c      Vt=V(1,3)
-  !c      V(1,3)=V(1,3)*cb-V(3,3)*sb
-  !c      V(3,3)=Vt*sb+V(3,3)*cb
-  !c     WRITE(IOOUT,1010) c,(V(i,3),i=1,3)
-
-  !C et on repart pour le 2e axe sur y
-  !C commes les vecteurs sont orthonormes, il est
-  !C deja dans le plan yOz d'ou une seule rotation
-  !c      na=sqrt(V(2,2)*V(2,2)+V(3,2)*V(3,2))
-  na=1
-  nb=1
-  ca=V(2,2)/na
-  sa=-V(3,2)/na
-  !c      write(IOOUT,*) 'ca:',ca,sa,cb,sb,na
-  DO I=1,natom
-     ryt=ry(i)
-     ry(i)=ry(i)*ca-rz(i)*sa
-     rz(i)=ryt*sa+rz(i)*ca
-  END DO
-  !C on applique aussi la rotation au dernier axe...
-  !c      Vt=V(2,3)
-  !c      V(2,3)=V(2,3)*ca-V(3,3)*sa
-  !c      V(3,3)=Vt*sa+V(3,3)*ca
-  !c      WRITE(IOOUT,1010) c,(V(i,3),i=1,3)
-
-  !C et le 3e axe est deja sur z car  ils sont orthogonaux...
-
-  return
-end subroutine Std_ori
Index: src/egrad_chamfre.f90
===================================================================
--- src/egrad_chamfre.f90	(revision 11)
+++ src/egrad_chamfre.f90	(revision 12)
@@ -1,896 +0,0 @@
-!*************############### Attention  ###############*************
-!(a) Two parameters aa and br(3,3) must be provided in main program
-!(b) At first, z=0 for the outmost surface 
-!(c) The units of all parameters are not atomic units, but angstrom, eV etc.
-!(d) Before using this routine, you must confirm that the energy is CONSISTENT with its derivative. 
-!                        This check of consistency is VERY IMPORTANT for energy conservation in MD.
-!!!
-!!  xa, ya,za present the positions of atoms. v is the energy of the system. dvdr present the force along the x,y,z directions.
-!!
-subroutine egrad_chamfre(Nat,V,Geom,Grad)
-! WAS xa,ya,za,v,dvdr)
-
-
-  use Path_module, only : Lat_a,Lat_b,order,renum
-  use Io_module
-
-
-   IMPLICIT NONE
-
-       INTEGER(KINT), INTENT(IN) :: Nat
-       REAL(KREAL), INTENT(OUT) :: V,grad(Nat*3)
-       REAL(KREAL), INTENT(IN) :: Geom(Nat,3)
-
-!     Bohr --> Angstr
-!      real(KREAL), parameter :: BOHR   = 0.52917726D+00
-
-!! PFL 2010 Nov. 28 ->
-! for now I keep this old F77 scheme. This has to be replaced by ALLOCATABLE
-! things
-! <- PFL 2010 Nov 28.
-  REAL(KREAL) :: xa(100),ya(100),za(100),dvdr(100,3)
-  REAL(KREAL) :: rshort,rlong,zshort,zlong
-  REAL(KREAL), SAVE :: rnc, rnn, rhh, rch, rnh, ann(100), anc(100), anh(100), ach(100), ahh(100)
-  REAL(KREAL) :: dv(100,10,3),df(100,10,3)
-  REAL(KREAL) :: px(9000),py(9000),pz(9000),tmp,temp,rtemp,yf
-  INTEGER(KINT) :: ka(9000),kx(9000),ky(9000),itx,ity,nf(100),mf(100,500)
-  REAL(KREAL) :: xi(3), xj(3), rij, er, eb
-  REAL(KREAL) :: fcut, tf
-  INTEGER(KINT) :: np,nq,nh,nc
-  INTEGER(KINT) :: i, j, nn, m, n, mid, n1, im, jm, n2,n3,n4, iat
-  LOGICAL, SAVE :: First=.TRUE.
-  LOGICAL :: debug, FExist
-
-  common/zdis/zshort,zlong
-  common/rdistanc/rshort,rlong
-
-
-  INTERFACE
-     function valid(string) result (isValid)
-       CHARACTER(*), intent(in) :: string
-       logical                  :: isValid
-     END function VALID
-     
-  END INTERFACE
-
-!**********************************************
-
-
-  debug=valid('egrad_chamfre')
-
- if (debug) Call Header('Entering Egrad_chamfre')
-
-  v=0.0;dvdr=0.0
-!******prepare the parameters of REBO potential
-!rshort=3.5 
-!rlong=3.9
-zshort=3.5
-zlong=4.5
-
-rnn=3.2    !! to adjust
-rnc=3.5    !! to adjust
-rnh=3.0    !! to adjust
-rch=3.2    !! to adjust
-rhh=3.2    !! to adjust
-
-!rph=rlong
-
- if (First) THEN
-    First=.FALSE.
-    INQUIRE(FILE="parameter.dat",EXIST=FExist)
-    if (.NOT.Fexist) THEN
-       WRITE(*,*) "!!!!!!!!!!!! ERROR !!!!!!!!!!!!!!!!"
-       WRITE(*,*) "!!   egrad_chamfre             !!!!"
-       WRITE(*,*) "The file parameter.dat does not exists."
-       WRITE(*,*) "!!   egrad_chamfre             !!!!"
-       WRITE(*,*) "!!!!!!!!!!!! ERROR !!!!!!!!!!!!!!!!"
-       STOP
-    END IF
-open(1,file="parameter.dat")
-do i=1,5   !Ni-Ni
-read(1,*)ann(i)
-enddo
-
-do i=1,5   !Ni-C
-read(1,*)anc(i)
-enddo
-
-do i=1,5   !Ni-H
-read(1,*)anh(i)
-enddo
-
-do i=1,5   !H-H
-read(1,*)ahh(i)
-enddo
-do i=1,5  !C-H
-read(1,*)ach(i)
-enddo
-!********LONG INTERACTION **********
-!do i=1,2
-!read(1,*)a(i)
-!enddo
-close(1)
-END IF
-!************************************
-np=45
-nh=4
-nc=1
-nq=np+nh+nc
-!************************************
-
- DO I=1,Nat
-    Iat=Order(I)
-    xa(I)=Geom(Iat,1)
-    ya(I)=Geom(Iat,2)
-    za(I)=Geom(Iat,3)
- END DO
-
-px=0.0;py=0.0;pz=0.0
-nn=0
- do m=-1,1
-    do n=-1,1
-       do i=1,nq
-          if(m==0.and.n==0.and.i==1)mid=nn
-            nn=nn+1
-            px(nn)=xa(i)+m*lat_a(1)+n*lat_b(1)
-            py(nn)=ya(i)+m*lat_a(2)+n*lat_b(2)
-            pz(nn)=za(i)
-            ka(nn)=i;kx(nn)=m;ky(nn)=n
-       enddo
-    enddo
- enddo
-!***********************xyz file required for MS input
- open(123,file="111.xyz",ACCESS='APPEND')
-    write(123,*)nn
-    write(123,*)
-   do i=1,nn
-       if(ka(i)<(np+1))then
-            write(123,10)'Ni',px(i),py(i),pz(i)
-       elseif (ka(i)<np+5) then
-            write(123,10)'H',px(i),py(i),pz(i)
-       else
-            write(123,10)'C',px(i),py(i),pz(i)
-  10 format(a6,3f15.8)
-       endif
-   enddo
- close(123)
-!******************************************
- do i=1,nq
-    tmp=px(i);px(i)=px(i+mid);px(i+mid)=tmp
-    tmp=py(i);py(i)=py(i+mid);py(i+mid)=tmp
-    tmp=pz(i);pz(i)=pz(i+mid);pz(i+mid)=tmp
-    itx=kx(i);kx(i)=kx(i+mid);kx(i+mid)=itx
-    ity=ky(i);ky(i)=ky(i+mid);ky(i+mid)=ity
- enddo
- mid=0
-!******************************************
-  nf=0;mf=0
-    do i=1,nq
-        nf(i)=0
-           do j=1,nn
-             temp=sqrt((px(i)-px(j))**2+(py(i)-py(j))**2+(pz(i)-pz(j))**2)
-!
-!rtemp=rlong
-    if (ka(i+mid)<np+1.and.ka(j+mid)<np+1)then     ! Ni-Ni
-       
-        rtemp=rnn
-   endif
-    if (ka(i+mid)<np+1.and.ka(j+mid)>np.and.ka(j+mid)<np+5)then  ! Ni-H
-          
-           rtemp=rnh
-     endif
-    if (ka(i+mid)<np+1.and.ka(j+mid)>np+4) then   ! Ni-C
-           
-           rtemp=rnc
-     endif
-      if (ka(i+mid)>np.and.ka(i+mid)<np+5.and.ka(j+mid)>np+4)  then ! H-C
-           
-            rtemp=rch
-     endif
-    if (ka(i+mid)>np.and.ka(i+mid)<np+5.and.ka(j+mid)>np.and.ka(j+mid)<np+5)then  ! H-H
-         
-          rtemp=rhh
-   endif
-    if (ka(i+mid)>np.and.ka(i+mid)<np+5.and.ka(j+mid)<np+1) then  ! H-Ni
-            
-             rtemp=rnh
-       endif
-    if (ka(i+mid)>np+4.and.ka(j+mid)<np+1) then !  C-Ni
-            
-             rtemp=rnc
-     endif
-    if (ka(i+mid)>np+4.and.ka(j+mid)>np.and.ka(j+mid)<np+5) then ! C-H
-             
-              rtemp=rch
-     endif
-
-      if(temp>0.1.and.temp<rtemp)then
-         nf(i)=nf(i)+1
-         mf(i,nf(i))=j
-      endif
-!
-    enddo
-  !write(*,*)nf(i)
- enddo
-!**************************************
-!stop
-
-!*************************************Starting to calculate the sum
-  yf=0.0;dvdr=0.0
-   do i=1,nq
-      er=0.0;eb=0.0
-      dv=0.0;df=0.0
-      do j=1,nf(i)
-
-             xi(1)=px(i);      xi(2)=py(i);      xi(3)=pz(i)
-             xj(1)=px(mf(i,j));xj(2)=py(mf(i,j));xj(3)=pz(mf(i,j))
-             rij=sqrt((xj(1)-xi(1))**2.0+(xj(2)-xi(2))**2.0+(xj(3)-xi(3))**2.0)
-             n1=ka(i)/(np+1);n2=ka(mf(i,j))/(np+1)    !!!  Ni 46  H  50  C
-             n3=ka(i)/(np+5);n4=ka(mf(i,j))/(np+5)
-  
- !**********************************Ni-Ni interaction
- ! **********
-         if(n1==0.and.n3==0.and.n2==0.and.n4==0)then     !Ni-Ni
-           call fctNiNi(rnn,rij,fcut)
-           call dfcutNiNi(rnn,rij,tf)
-            eb=eb+ann(5)*exp(-2.0*ann(1)*(rij/ann(3)-1.0))*fcut
-            er=er+ann(4)*exp(-1.0*ann(2)*(rij/ann(3)-1.0))*fcut
-
-!Calculation of FORCE
-do im=1,3
-   dv(i,1,im)=dv(i,1,im)+ann(4)*exp(-1.0*ann(2)*(rij/ann(3)-1.0))*fcut &
-        *(-ann(2)/ann(3))*(xi(im)-xj(im))/rij
-   dv(i,2,im)=dv(i,2,im)+ann(5)*exp(-2.0*ann(1)*(rij/ann(3)-1.0))*fcut
-   dv(i,3,im)=dv(i,3,im)+ann(5)*exp(-2.0*ann(1)*(rij/ann(3)-1.0))*fcut &
-        *(-2.0*ann(1)/ann(3))*(xi(im)-xj(im))/rij
-   dv(ka(mf(i+mid,j)),1,im)=dv(ka(mf(i+mid,j)),1,im)+ann(4)*exp(-1.0*ann(2) &
-     *(rij/ann(3)-1.0))*fcut*(-ann(2)/ann(3))*(xj(im)-xi(im))/rij
-   dv(ka(mf(i+mid,j)),2,im)=dv(ka(mf(i+mid,j)),2,im)+ann(5)*exp(-2.0*ann(1) &
-     *(rij/ann(3)-1.0))*fcut
-   dv(ka(mf(i+mid,j)),3,im)=dv(ka(mf(i+mid,j)),3,im)+ann(5)*exp(-2.0*ann(1) &
-        *(rij/ann(3)-1.0))*fcut*(-2.0*ann(1)/ann(3))*(xj(im)-xi(im))/rij
-
-   df(i,1,im)=df(i,1,im)+ann(4)*exp(-1.0*ann(2)*(rij/ann(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(i,2,im)=df(i,2,im)+ann(5)*exp(-2.0*ann(1)*(rij/ann(3)-1.0))*fcut
-   df(i,3,im)=df(i,3,im)+ann(5)*exp(-2.0*ann(1)*(rij/ann(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(ka(mf(i+mid,j)),1,im)=df(ka(mf(i+mid,j)),1,im)+ann(4)*exp(-1.0*ann(2) &
-     *(rij/ann(3)-1.0))*tf*(xj(im)-xi(im))/rij
-   df(ka(mf(i+mid,j)),2,im)=df(ka(mf(i+mid,j)),2,im)+ann(5)*exp(-2.0*ann(1) &
-        *(rij/ann(3)-1.0))*fcut
-   df(ka(mf(i+mid,j)),3,im)=df(ka(mf(i+mid,j)),3,im)+ann(5)*exp(-2.0*ann(1) &
-        *(rij/ann(3)-1.0))*tf*(xj(im)-xi(im))/rij
-enddo
-!
-endif
-
- !**********************************Ni-H interaction
-! **********
-         if(n1==0.and.n3==0.and.n2==1.and.n4==0)then     !Ni-H
-           call fctNiH(rnh,rij,fcut)
-           call dfcutNiH(rnh,rij,tf)
-             eb=eb+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut
-             er=er+anh(4)*exp(-1.0*anh(2)*(rij/anh(3)-1.0))*fcut
-
-!Calculation of FORCE
-do im=1,3
-   dv(i,1,im)=dv(i,1,im)+anh(4)*exp(-1.0*anh(2)*(rij/anh(3)-1.0))*fcut &
-        *(-anh(2)/anh(3))*(xi(im)-xj(im))/rij
-   dv(i,2,im)=dv(i,2,im)+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut
-   dv(i,3,im)=dv(i,3,im)+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut &
-        *(-2.0*anh(1)/anh(3))*(xi(im)-xj(im))/rij
-   dv(ka(mf(i+mid,j)),1,im)=dv(ka(mf(i+mid,j)),1,im)+anh(4)* &
-        exp(-1.0*anh(2)*(rij/anh(3)-1.0))*fcut*(-anh(2)/anh(3)) &
-        *(xj(im)-xi(im))/rij
-   dv(ka(mf(i+mid,j)),2,im)=dv(ka(mf(i+mid,j)),2,im)+anh(5)* &
-        exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut
-   dv(ka(mf(i+mid,j)),3,im)=dv(ka(mf(i+mid,j)),3,im)+anh(5)* &
-        exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut*(-2.0*anh(1)/anh(3)) &
-        *(xj(im)-xi(im))/rij
-
-   df(i,1,im)=df(i,1,im)+anh(4)*exp(-1.0*anh(2)*(rij/anh(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(i,2,im)=df(i,2,im)+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut
-   df(i,3,im)=df(i,3,im)+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(ka(mf(i+mid,j)),1,im)=df(ka(mf(i+mid,j)),1,im)+anh(4)*exp(-1.0*anh(2) &
-        *(rij/anh(3)-1.0))*tf*(xj(im)-xi(im))/rij
-   df(ka(mf(i+mid,j)),2,im)=df(ka(mf(i+mid,j)),2,im)+anh(5)*exp(-2.0*anh(1) &
-        *(rij/anh(3)-1.0))*fcut
-   df(ka(mf(i+mid,j)),3,im)=df(ka(mf(i+mid,j)),3,im)+anh(5)*exp(-2.0*anh(1) &
-        *(rij/anh(3)-1.0))*tf*(xj(im)-xi(im))/rij
-enddo
-!
-!
-             endif
-
-!**********************************Ni-C interaction
-! **********
-         if(n1==0.and.n3==0.and.n2==1.and.n4==1)then     !Ni-C
-           call fctNiC(rnc,rij,fcut)
-           call dfcutNiC(rnc,rij,tf)
-            eb=eb+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*fcut
-            er=er+anc(4)*exp(-1.0*anc(2)*(rij/anc(3)-1.0))*fcut
-
-!Calculation of FORCE
-do im=1,3
-   dv(i,1,im)=dv(i,1,im)+anc(4)*exp(-1.0*anc(2)*(rij/anc(3)-1.0))*fcut &
-        *(-anc(2)/anc(3))*(xi(im)-xj(im))/rij
-   dv(i,2,im)=dv(i,2,im)+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*fcut
-   dv(i,3,im)=dv(i,3,im)+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*fcut &
-        *(-2.0*anc(1)/anc(3))*(xi(im)-xj(im))/rij
-   dv(ka(mf(i+mid,j)),1,im)=dv(ka(mf(i+mid,j)),1,im)+anc(4)*exp(-1.0* &
-        anc(2)*(rij/anc(3)-1.0))*fcut*(-anc(2)/anc(3))*(xj(im)-xi(im))/rij
-   dv(ka(mf(i+mid,j)),2,im)=dv(ka(mf(i+mid,j)),2,im)+anc(5)*exp(-2.0* &
-        anc(1)*(rij/anc(3)-1.0))*fcut
-   dv(ka(mf(i+mid,j)),3,im)=dv(ka(mf(i+mid,j)),3,im)+anc(5)*exp(-2.0* &
-        anc(1)*(rij/anc(3)-1.0))*fcut*(-2.0*anc(1)/anc(3))*(xj(im)-xi(im))/rij
-   
-   df(i,1,im)=df(i,1,im)+anc(4)*exp(-1.0*anc(2)*(rij/anc(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(i,2,im)=df(i,2,im)+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*fcut
-   df(i,3,im)=df(i,3,im)+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(ka(mf(i+mid,j)),1,im)=df(ka(mf(i+mid,j)),1,im)+anc(4)*exp(-1.0* &
-        anc(2)*(rij/anc(3)-1.0))*tf*(xj(im)-xi(im))/rij
-   df(ka(mf(i+mid,j)),2,im)=df(ka(mf(i+mid,j)),2,im)+anc(5)*exp(-2.0* &
-        anc(1)*(rij/anc(3)-1.0))*fcut
-   df(ka(mf(i+mid,j)),3,im)=df(ka(mf(i+mid,j)),3,im)+anc(5)*exp(-2.0* &
-        anc(1)*(rij/anc(3)-1.0))*tf*(xj(im)-xi(im))/rij
-enddo
-!
-               endif
-!!**********************************H-Ni interaction
-! **********
-         if(n1==1.and.n3==0.and.n2==0.and.n4==0)then        ! H-Ni
-           call fctNiH(rnh,rij,fcut)
-           call dfcutNiH(rnh,rij,tf)
-             eb=eb+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut
-             er=er+anh(4)*exp(-1.0*anh(2)*(rij/anh(3)-1.0))*fcut
-
-!Calculation of FORCE
-do im=1,3
-   dv(i,1,im)=dv(i,1,im)+anh(4)*exp(-1.0*anh(2)*(rij/anh(3)-1.0))*fcut &
-        *(-anh(2)/anh(3))*(xi(im)-xj(im))/rij
-   dv(i,2,im)=dv(i,2,im)+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut
-   dv(i,3,im)=dv(i,3,im)+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut &
-        *(-2.0*anh(1)/anh(3))*(xi(im)-xj(im))/rij
-   dv(ka(mf(i+mid,j)),1,im)=dv(ka(mf(i+mid,j)),1,im)+anh(4)*exp(-1.0*anh(2) &
-     *(rij/anh(3)-1.0))*fcut*(-anh(2)/anh(3))*(xj(im)-xi(im))/rij
-   dv(ka(mf(i+mid,j)),2,im)=dv(ka(mf(i+mid,j)),2,im)+anh(5)*exp(-2.0* & 
-        anh(1)*(rij/anh(3)-1.0))*fcut
-   dv(ka(mf(i+mid,j)),3,im)=dv(ka(mf(i+mid,j)),3,im)+anh(5)*exp(-2.0* &
-        anh(1)*(rij/anh(3)-1.0))*fcut*(-2.0*anh(1)/anh(3))*(xj(im)-xi(im))/rij
-
-   df(i,1,im)=df(i,1,im)+anh(4)*exp(-1.0*anh(2)*(rij/anh(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(i,2,im)=df(i,2,im)+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*fcut
-   df(i,3,im)=df(i,3,im)+anh(5)*exp(-2.0*anh(1)*(rij/anh(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(ka(mf(i+mid,j)),1,im)=df(ka(mf(i+mid,j)),1,im)+anh(4)*exp(-1.0* &
-        anh(2)*(rij/anh(3)-1.0))*tf*(xj(im)-xi(im))/rij
-   df(ka(mf(i+mid,j)),2,im)=df(ka(mf(i+mid,j)),2,im)+anh(5)*exp(-2.0* &
-        anh(1)*(rij/anh(3)-1.0))*fcut
-   df(ka(mf(i+mid,j)),3,im)=df(ka(mf(i+mid,j)),3,im)+anh(5)*exp(-2.0* &
-        anh(1)*(rij/anh(3)-1.0))*tf*(xj(im)-xi(im))/rij
-enddo
-!
-              endif
-!!**********************************H-H interaction
-! **********
-        if(n1==1.and.n3==0.and.n2==1.and.n4==0)then   !H-H
-           call fctHH(rhh,rij,fcut)
-           call dfcutHH(rhh,rij,tf)
-              eb=eb+ahh(5)*exp(-2.0*ahh(1)*(rij/ahh(3)-1.0))*fcut
-              er=er+ahh(4)*exp(-1.0*ahh(2)*(rij/ahh(3)-1.0))*fcut
-
-!Calculation of FORCE
-do im=1,3
-   dv(i,1,im)=dv(i,1,im)+ahh(4)*exp(-1.0*ahh(2)*(rij/ahh(3)-1.0))*fcut &
-        *(-ahh(2)/ahh(3))*(xi(im)-xj(im))/rij
-   dv(i,2,im)=dv(i,2,im)+ahh(5)*exp(-2.0*ahh(1)*(rij/ahh(3)-1.0))*fcut
-   dv(i,3,im)=dv(i,3,im)+ahh(5)*exp(-2.0*ahh(1)*(rij/ahh(3)-1.0))*fcut &
-       *(-2.0*ahh(1)/ahh(3))*(xi(im)-xj(im))/rij
-   dv(ka(mf(i+mid,j)),1,im)=dv(ka(mf(i+mid,j)),1,im)+ahh(4)*exp(-1.0* &
-       ahh(2)*(rij/ahh(3)-1.0))*fcut*(-ahh(2)/ahh(3))*(xj(im)-xi(im))/rij
-   dv(ka(mf(i+mid,j)),2,im)=dv(ka(mf(i+mid,j)),2,im)+ahh(5)*exp(-2.0* &
-       ahh(1)*(rij/ahh(3)-1.0))*fcut
-   dv(ka(mf(i+mid,j)),3,im)=dv(ka(mf(i+mid,j)),3,im)+ahh(5)*exp(-2.0* &
-       ahh(1)*(rij/ahh(3)-1.0))*fcut*(-2.0*ahh(1)/ahh(3))*(xj(im)-xi(im))/rij
-   
-   df(i,1,im)=df(i,1,im)+ahh(4)*exp(-1.0*ahh(2)*(rij/ahh(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(i,2,im)=df(i,2,im)+ahh(5)*exp(-2.0*ahh(1)*(rij/ahh(3)-1.0))*fcut
-   df(i,3,im)=df(i,3,im)+ahh(5)*exp(-2.0*ahh(1)*(rij/ahh(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-   df(ka(mf(i+mid,j)),1,im)=df(ka(mf(i+mid,j)),1,im)+ahh(4)*exp(-1.0* &
-        ahh(2)*(rij/ahh(3)-1.0))*tf*(xj(im)-xi(im))/rij
-   df(ka(mf(i+mid,j)),2,im)=df(ka(mf(i+mid,j)),2,im)+ahh(5)*exp(-2.0* &
-        ahh(1)*(rij/ahh(3)-1.0))*fcut
-   df(ka(mf(i+mid,j)),3,im)=df(ka(mf(i+mid,j)),3,im)+ahh(5)*exp(-2.0* &
-        ahh(1)*(rij/ahh(3)-1.0))*tf*(xj(im)-xi(im))/rij
-enddo
-!
-             endif
-
-
-!!**********************************H-C interaction
-! **********
-        if(n1==1.and.n3==0.and.n2==1.and.n4==1)then   !H-C
-            call fctCH(rch,rij,fcut)
-            call dfcutCH(rch,rij,tf)
-             eb=eb+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*fcut
-             er=er+ach(4)*exp(-1.0*ach(2)*(rij/ach(3)-1.0))*fcut
-
-!Calculation of FORCE
-do im=1,3
-dv(i,1,im)=dv(i,1,im)+ach(4)*exp(-1.0*ach(2)*(rij/ach(3)-1.0))*fcut &
-        *(-ach(2)/ach(3))*(xi(im)-xj(im))/rij
-dv(i,2,im)=dv(i,2,im)+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*fcut
-dv(i,3,im)=dv(i,3,im)+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*fcut &
-        *(-2.0*ach(1)/ach(3))*(xi(im)-xj(im))/rij
-dv(ka(mf(i+mid,j)),1,im)=dv(ka(mf(i+mid,j)),1,im)+ach(4)*exp(-1.0* &
-        ach(2)*(rij/ach(3)-1.0))*fcut*(-ach(2)/ach(3))*(xj(im)-xi(im))/rij
-dv(ka(mf(i+mid,j)),2,im)=dv(ka(mf(i+mid,j)),2,im)+ach(5)*exp(-2.0* &
-        ach(1)*(rij/ach(3)-1.0))*fcut
-dv(ka(mf(i+mid,j)),3,im)=dv(ka(mf(i+mid,j)),3,im)+ach(5)*exp(-2.0* &
-        ach(1)*(rij/ach(3)-1.0))*fcut*(-2.0*ach(1)/ach(3))*(xj(im)-xi(im))/rij
-
-df(i,1,im)=df(i,1,im)+ach(4)*exp(-1.0*ach(2)*(rij/ach(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-df(i,2,im)=df(i,2,im)+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*fcut
-df(i,3,im)=df(i,3,im)+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-df(ka(mf(i+mid,j)),1,im)=df(ka(mf(i+mid,j)),1,im)+ach(4)*exp(-1.0* &
-        ach(2)*(rij/ach(3)-1.0))*tf*(xj(im)-xi(im))/rij
-df(ka(mf(i+mid,j)),2,im)=df(ka(mf(i+mid,j)),2,im)+ach(5)*exp(-2.0* &
-        ach(1)*(rij/ach(3)-1.0))*fcut
-df(ka(mf(i+mid,j)),3,im)=df(ka(mf(i+mid,j)),3,im)+ach(5)*exp(-2.0* &
-        ach(1)*(rij/ach(3)-1.0))*tf*(xj(im)-xi(im))/rij
-enddo
-!
-                endif
-!!**********************************C-Ni interaction
-! **********
-        if(n1==1.and.n3==1.and.n2==0.and.n4==0)then   !C-Ni
-            call fctNiC(rnc,rij,fcut)
-            call dfcutNiC(rnc,rij,tf)
-             eb=eb+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*fcut
-             er=er+anc(4)*exp(-1.0*anc(2)*(rij/anc(3)-1.0))*fcut
-
-!Calculation of FORCE
-do im=1,3
-dv(i,1,im)=dv(i,1,im)+anc(4)*exp(-1.0*anc(2)*(rij/anc(3)-1.0))*fcut &
-        *(-anc(2)/anc(3))*(xi(im)-xj(im))/rij
-dv(i,2,im)=dv(i,2,im)+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*fcut
-dv(i,3,im)=dv(i,3,im)+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*fcut &
-        *(-2.0*anc(1)/anc(3))*(xi(im)-xj(im))/rij
-dv(ka(mf(i+mid,j)),1,im)=dv(ka(mf(i+mid,j)),1,im)+anc(4)*exp(-1.0* &
-        anc(2)*(rij/anc(3)-1.0))*fcut*(-anc(2)/anc(3))*(xj(im)-xi(im))/rij
-dv(ka(mf(i+mid,j)),2,im)=dv(ka(mf(i+mid,j)),2,im)+anc(5)*exp(-2.0* &
-        anc(1)*(rij/anc(3)-1.0))*fcut
-dv(ka(mf(i+mid,j)),3,im)=dv(ka(mf(i+mid,j)),3,im)+anc(5)*exp(-2.0* &
-        anc(1)*(rij/anc(3)-1.0))*fcut*(-2.0*anc(1)/anc(3))*(xj(im)-xi(im))/rij
-
-df(i,1,im)=df(i,1,im)+anc(4)*exp(-1.0*anc(2)*(rij/anc(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-df(i,2,im)=df(i,2,im)+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*fcut
-df(i,3,im)=df(i,3,im)+anc(5)*exp(-2.0*anc(1)*(rij/anc(3)-1.0))*tf &
-        *(xi(im)-xj(im))/rij
-df(ka(mf(i+mid,j)),1,im)=df(ka(mf(i+mid,j)),1,im)+anc(4)*exp(-1.0* &
-        anc(2)*(rij/anc(3)-1.0))*tf*(xj(im)-xi(im))/rij
-df(ka(mf(i+mid,j)),2,im)=df(ka(mf(i+mid,j)),2,im)+anc(5)*exp(-2.0* &
-        anc(1)*(rij/anc(3)-1.0))*fcut
-df(ka(mf(i+mid,j)),3,im)=df(ka(mf(i+mid,j)),3,im)+anc(5)*exp(-2.0* &
-        anc(1)*(rij/anc(3)-1.0))*tf*(xj(im)-xi(im))/rij
-enddo
-!
-
-               endif
-!!**********************************C-H interaction
-! **********
-       if(n1==1.and.n3==1.and.n2==1.and.n4==0)then   !C-H
-           call fctCH(rch,rij,fcut)
-           call dfcutCH(rch,rij,tf)
-             eb=eb+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*fcut
-             er=er+ach(4)*exp(-1.0*ach(2)*(rij/ach(3)-1.0))*fcut
-
-
-   !Calculation of FORCE
-do im=1,3
-dv(i,1,im)=dv(i,1,im)+ach(4)*exp(-1.0*ach(2)*(rij/ach(3)-1.0))*fcut &
-       *(-ach(2)/ach(3))*(xi(im)-xj(im))/rij
-dv(i,2,im)=dv(i,2,im)+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*fcut
-dv(i,3,im)=dv(i,3,im)+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*fcut &
-       *(-2.0*ach(1)/ach(3))*(xi(im)-xj(im))/rij
-dv(ka(mf(i+mid,j)),1,im)=dv(ka(mf(i+mid,j)),1,im)+ach(4)*exp(-1.0* &
-       ach(2)*(rij/ach(3)-1.0))*fcut*(-ach(2)/ach(3))*(xj(im)-xi(im))/rij
-dv(ka(mf(i+mid,j)),2,im)=dv(ka(mf(i+mid,j)),2,im)+ach(5)*exp(-2.0* &
-       ach(1)*(rij/ach(3)-1.0))*fcut
-dv(ka(mf(i+mid,j)),3,im)=dv(ka(mf(i+mid,j)),3,im)+ach(5)*exp(-2.0* &
-       ach(1)*(rij/ach(3)-1.0))*fcut*(-2.0*ach(1)/ach(3))*(xj(im)-xi(im))/rij
-
-df(i,1,im)=df(i,1,im)+ach(4)*exp(-1.0*ach(2)*(rij/ach(3)-1.0))*tf &
-       *(xi(im)-xj(im))/rij
-df(i,2,im)=df(i,2,im)+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*fcut
-df(i,3,im)=df(i,3,im)+ach(5)*exp(-2.0*ach(1)*(rij/ach(3)-1.0))*tf &
-       *(xi(im)-xj(im))/rij
-df(ka(mf(i+mid,j)),1,im)=df(ka(mf(i+mid,j)),1,im)+ach(4)*exp(-1.0* &
-       ach(2)*(rij/ach(3)-1.0))*tf*(xj(im)-xi(im))/rij
-df(ka(mf(i+mid,j)),2,im)=df(ka(mf(i+mid,j)),2,im)+ach(5)*exp(-2.0* &
-       ach(1)*(rij/ach(3)-1.0))*fcut
-df(ka(mf(i+mid,j)),3,im)=df(ka(mf(i+mid,j)),3,im)+ach(5)*exp(-2.0* &
-       ach(1)*(rij/ach(3)-1.0))*tf*(xj(im)-xi(im))/rij
-enddo
-!
-
-        endif
-  !!***************************ONE end****************      
-
-enddo
-!!******** CALCULATION ENERGY
-!
-        yf=yf+er-sqrt(eb)
-!!*********
-       do im=1,3
-            dvdr(i,im)=dvdr(i,im)+dv(i,1,im)-0.5/(dv(i,2,im))**0.5*dv(i,3,im)
-            dvdr(i,im)=dvdr(i,im)+df(i,1,im)-0.5/(df(i,2,im))**0.5*df(i,3,im)
-         do j=1,nf(i+mid)
-             jm=ka(mf(i+mid,j))
-             dvdr(jm,im)=dvdr(jm,im)+dv(jm,1,im)-0.5/(dv(i,2,im))**0.5*dv(jm,3,im)
-             dvdr(jm,im)=dvdr(jm,im)+df(jm,1,im)-0.5/(df(i,2,im))**0.5*df(jm,3,im)
-         enddo
-       enddo
-!
-enddo
-!!*****************************TWO ENDS**************************
-!***************************************Long-ranged interaction
-!do i=nq-4,nq
-!     zi=pz(i+mid) !-0.3*aa*br(3,3)
-!     call fct2(zshort,zlong,zi,fcut2)
- !    call dfcut2(zshort,zlong,zi,tf)
- !    yf=yf+fcut2*(a(6)-a(7)/zi**2.0)
-
- !  dvdr(i,3)=dvdr(i,3)+fcut2*(a(7)*2.0/zi**3.0)+tf*(a(6)-a(7)/zi**2.0)
-
-!enddo
-!*******************************************************************
-  v=yf 
-   do im=1,3
-      do jm=1,nq
-          dvdr(jm,im)=dvdr(jm,im)  
-      enddo
-  enddo
-
-!PFL: We convert dvdr into Grad
-      do jm=1,nq
-          Iat=Jm
-          if (renum) Iat=order(jm)
-          Grad(3*Iat-2:3*Iat)=dvdr(jm,1:3)
-      enddo
-  
- if (debug) WRITE(*,*) "EGRAD_CHAMFRE, E=",V
-  
- if (debug) call Header('Egrad_chamfre OVER')
-
-!********************************************ENDENDENDENDENDENDENDEND
-return
-end subroutine egrad_chamfre
-
-!******************************************
-!**********PARAMETERS**********************
-subroutine fctNiNi(r2,r,fcut)
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
- REAL(KREAL) :: r2,r,fcut,r1,pi
-pi=4.0*atan(1.0)
-r1=r2-0.5
-
-if(r<=r1)then
-fcut=1.0
-endif
-if(r>r1.and.r<=r2)then
-fcut=(1.0+cos(pi*(r-r1)/(r2-r1)))/2.0
-endif
-if(r>r2)then
-fcut=0.0
-endif
-return
-end subroutine fctNiNi
-!!************
-subroutine dfcutNiNi(r2,r,df)
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-  REAL(KREAL) :: r, r2,df,pi,r1
-pi=4.0*atan(1.0)
-r1=r2-0.5
-
-if(r<=r1)then
-df=0.0
-endif
-if(r>r1.and.r<=r2)then
-df=-pi/2.0/(r2-r1)*sin(pi*(r-r1)/(r2-r1))
-endif
-if(r>r2)then
-df=0.0
-endif
-return
-end subroutine dfcutNiNi
-
-
-!!************
-subroutine fctNiH(r2,r,fcut)
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
- REAL(KREAL) ::r2,r,fcut
-REAL(KREAL) ::rshort,rlong,r1,pi
-
- rshort=2.7
- rlong=3.0
- pi=4.0*atan(1.0)
- r1=rshort
- r2=rlong
-if(r<=r1)then
- fcut=1.0
-endif
-if(r>r1.and.r<=r2)then
- fcut=(1.0+cos(pi*(r-r1)/(r2-r1)))/2.0
-endif
-if(r>r2)then
- fcut=0.0
-endif
-return
-end subroutine fctNiH
-!!**********
-
-subroutine dfcutNiH(r2,r,df)
-
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-
-REAL(KREAL) ::r2,r,df
-REAL(KREAL) ::rshort,rlong,r1,pi
-
- rshort=2.7
- rlong=3.0
- pi=4.0*atan(1.0)
- r1=rshort
- r2=rlong
-if(r<=r1)then
- df=0.0
-endif
-if(r>r1.and.r<=r2)then
- df=-pi/2.0/(r2-r1)*sin(pi*(r-r1)/(r2-r1))
-endif
-if(r>r2)then
- df=0.0
-endif
-return
-end subroutine dfcutNiH
-
-!!************
-subroutine fctNiC(r2,r,fcut)
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-
-REAL(KREAL) ::r2,r,fcut
-REAL(KREAL) ::rshort,rlong,r1,pi
-
- rshort=3.2
- rlong=3.5
- pi=4.0*atan(1.0)
- r1=rshort
- r2=rlong
-if(r<=r1)then
- fcut=1.0
-endif
-if(r>r1.and.r<=r2)then
- fcut=(1.0+cos(pi*(r-r1)/(r2-r1)))/2.0
-endif
-if(r>r2)then
- fcut=0.0
-endif
-return
-end subroutine fctNiC
-
-!!***********
-subroutine dfcutNiC(r2,r,df)
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-     
-REAL(KREAL) ::r2,r,df
-REAL(KREAL) ::rshort,rlong,r1,pi
-
- rshort=3.2
- rlong=3.5
- pi=4.0*atan(1.0)
- r1=rshort
- r2=rlong
-if(r<=r1)then
- df=0.0
-endif
-if(r>r1.and.r<=r2)then
- df=-pi/2.0/(r2-r1)*sin(pi*(r-r1)/(r2-r1))
-endif
-if(r>r2)then
- df=0.0
-endif
-return
-end subroutine dfcutNiC
-
-!!************
-subroutine fctCH(r2,r,fcut)
-
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-
-REAL(KREAL) ::r2,r,fcut
-REAL(KREAL) ::rshort,rlong,r1,pi
-
- rshort=2.1
- rlong=3.2
- pi=4.0*atan(1.0)
- r1=rshort
- r2=rlong
-if(r<=r1)then
- fcut=1.0
-endif
-if(r>r1.and.r<=r2)then
- fcut=(1.0+cos(pi*(r-r1)/(r2-r1)))/2.0
-endif
-if(r>r2)then
- fcut=0.0
-endif
-return
-end subroutine fctCH
-!!*****************
-
-subroutine dfcutCH(r2,r,df)
-
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-     
-REAL(KREAL) ::r2,r,df
-REAL(KREAL) ::rshort,rlong,r1,pi
-
- rshort=2.1
- rlong=3.2
- pi=4.0*atan(1.0)
- r1=rshort
- r2=rlong
-if(r<=r1)then
- df=0.0
-endif
-if(r>r1.and.r<=r2)then
- df=-pi/2.0/(r2-r1)*sin(pi*(r-r1)/(r2-r1))
-endif
-if(r>r2)then
- df=0.0
-endif
-return
-end subroutine dfcutCH
-!!************
-subroutine fctHH(r2,r,fcut)
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-
-REAL(KREAL) ::r2,r,fcut,r1,pi
-pi=4.0*atan(1.0)
-r1=r2-1.1
-if(r<=r1)then
- fcut=1.0
-endif
-if(r>r1.and.r<=r2)then
- fcut=(1.0+cos(pi*(r-r1)/(r2-r1)))/2.0
-endif
-if(r>r2)then
- fcut=0.0
-endif
-return
-end subroutine fctHH
-!!************
-subroutine dfcutHH(r2,r,df)
-
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-
-REAL(KREAL) ::r2,r,df,r1,pi
-pi=4.0*atan(1.0)
-r1=r2-1.1
-if(r<=r1)then
- df=0.0
-endif
-if(r>r1.and.r<=r2)then
- df=-pi/2.0/(r2-r1)*sin(pi*(r-r1)/(r2-r1))
-endif
-if(r>r2)then
- df=0.0
-endif
-return
-end subroutine dfcutHH
-
-!!*********************LONG INTERACTION
-
-subroutine dfcut2(zshort,zlong,r,df)
-
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-
-REAL(KREAL) ::zshort,zlong,r,df,pi, r1, r2
-
-pi=4.0*atan(1.0)
-
-r1=zshort
-r2=zlong
-
-if(r<=r1)then
-df=0.0
-endif
-if(r>r1.and.r<=r2)then
-df=pi/2.0/(r2-r1)*sin(pi*(r-r1)/(r2-r1))
-endif
-if(r>r2)then
-df=0.0
-endif
-
-return
-end subroutine dfcut2
-
-subroutine fct2(zshort,zlong,r,fcut)
-
-   IMPLICIT NONE
-!     integer, parameter :: KINT = kind(1)
-     integer, parameter :: KREAL = kind(1.0d0)
-
-
-REAL(KREAL) ::zshort,zlong,r,fcut,pi,r1,r2
-
-pi=4.0*atan(1.0)
-
-r1=zshort
-r2=zlong
-
-if(r<=r1)then
-fcut=0.0
-endif
-if(r>r1.and.r<=r2)then
-fcut=1.0-(1.0+cos(pi*(r-r1)/(r2-r1)))/2.0
-endif
-if(r>r2)then
-fcut=1.0
-endif
-
-return
-end subroutine fct2
-
Index: src/refsor.f90
===================================================================
--- src/refsor.f90	(revision 11)
+++ src/refsor.f90	(revision 12)
@@ -1,458 +0,0 @@
-!!! Downloaded from http://www.fortran-2000.com/rank/index.html
-!!! on October 13th, 2010
-
-!PFL 2010 Oct 13->
-! I deleted the 'module' part to keep only
-! the Double subroutine.
-
-! Module m_refsor
-! ! PFL 2010 Oct 13 ->
-! !Integer, Parameter :: kdp = selected_real_kind(15)
-! Integer, Parameter :: kdp = KIND(1.0D0)
-! ! <- PFL 2010 Oct 13
-! public :: refsor
-! private :: kdp
-! private :: R_refsor, I_refsor, D_refsor
-! private :: R_inssor, I_inssor, D_inssor
-! private :: R_subsor, I_subsor, D_subsor
-! interface refsor
-!   module procedure d_refsor, r_refsor, i_refsor
-! end interface refsor
-! contains
-
-! Subroutine D_refsor (XDONT)
- Subroutine Drefsor (XDONT)
-!  Sorts XDONT into ascending order - Quicksort
-! __________________________________________________________
-!  Quicksort chooses a "pivot" in the set, and explores the
-!  array from both ends, looking for a value > pivot with the
-!  increasing index, for a value <= pivot with the decreasing
-!  index, and swapping them when it has found one of each.
-!  The array is then subdivided in 2 ([3]) subsets:
-!  { values <= pivot} {pivot} {values > pivot}
-!  One then call recursively the program to sort each subset.
-!  When the size of the subarray is small enough, one uses an
-!  insertion sort that is faster for very small sets.
-!  Michel Olagnon - Apr. 2000
-! __________________________________________________________
-! __________________________________________________________
-
-   use VarTypes
-
-  interface
-
-     Recursive Subroutine D_subsor (XDONT, IDEB1, IFIN1)
-
-       use VarTypes 
-
-       IMPLICIT NONE
-
-       Real(KREAL), dimension (:), Intent (InOut) :: XDONT
-       Integer(KINT), Intent (In) :: IDEB1, IFIN1
-
-       Integer(KINT), Parameter :: NINS = 16 ! Max for insertion sort
-       Integer(KINT) :: ICRS, IDEB, IDCR, IFIN, IMIL
-       Real(KREAL) :: XPIV, XWRK
-     end Subroutine D_subsor
-
-     Subroutine D_inssor (XDONT)
-
-       use VarTypes 
-  
-       IMPLICIT NONE
-       Real(KREAL), dimension (:), Intent (InOut) :: XDONT
-       
-       Integer(KINT) :: ICRS, IDCR
-       Real(KREAL) :: XWRK
-
-     End Subroutine D_inssor
-
-  end interface
-
-      Real (KREAL), Dimension (:), Intent (InOut) :: XDONT
-! __________________________________________________________
-!
-!
-      Call D_subsor (XDONT, 1, Size (XDONT))
-      Call D_inssor (XDONT)
-      Return
-    End Subroutine Drefsor
-
-Recursive Subroutine D_subsor (XDONT, IDEB1, IFIN1)
-!  Sorts XDONT from IDEB1 to IFIN1
-! __________________________________________________________
-
-  use VarTypes 
-
-  IMPLICIT NONE
-
-      Real(KREAL), dimension (:), Intent (InOut) :: XDONT
-      Integer(KINT), Intent (In) :: IDEB1, IFIN1
-! __________________________________________________________
-      Integer(KINT), Parameter :: NINS = 16 ! Max for insertion sort
-      Integer(KINT) :: ICRS, IDEB, IDCR, IFIN, IMIL
-      Real(KREAL) :: XPIV, XWRK
-!
-      IDEB = IDEB1
-      IFIN = IFIN1
-!
-!  If we don't have enough values to make it worth while, we leave
-!  them unsorted, and the final insertion sort will take care of them
-!
-      If ((IFIN - IDEB) > NINS) Then
-         IMIL = (IDEB+IFIN) / 2
-!
-!  One chooses a pivot, median of 1st, last, and middle values
-!
-         If (XDONT(IMIL) < XDONT(IDEB)) Then
-            XWRK = XDONT (IDEB)
-            XDONT (IDEB) = XDONT (IMIL)
-            XDONT (IMIL) = XWRK
-         End If
-         If (XDONT(IMIL) > XDONT(IFIN)) Then
-            XWRK = XDONT (IFIN)
-            XDONT (IFIN) = XDONT (IMIL)
-            XDONT (IMIL) = XWRK
-            If (XDONT(IMIL) < XDONT(IDEB)) Then
-               XWRK = XDONT (IDEB)
-               XDONT (IDEB) = XDONT (IMIL)
-               XDONT (IMIL) = XWRK
-            End If
-         End If
-         XPIV = XDONT (IMIL)
-!
-!  One exchanges values to put those > pivot in the end and
-!  those <= pivot at the beginning
-!
-         ICRS = IDEB
-         IDCR = IFIN
-         ECH2: Do
-            Do
-               ICRS = ICRS + 1
-               If (ICRS >= IDCR) Then
-!
-!  the first  >  pivot is IDCR
-!  the last   <= pivot is ICRS-1
-!  Note: If one arrives here on the first iteration, then
-!        the pivot is the maximum of the set, the last value is equal
-!        to it, and one can reduce by one the size of the set to process,
-!        as if XDONT (IFIN) > XPIV
-!
-                  Exit ECH2
-!
-               End If
-               If (XDONT(ICRS) > XPIV) Exit
-            End Do
-            Do
-               If (XDONT(IDCR) <= XPIV) Exit
-               IDCR = IDCR - 1
-               If (ICRS >= IDCR) Then
-!
-!  The last value < pivot is always ICRS-1
-!
-                  Exit ECH2
-               End If
-            End Do
-!
-            XWRK = XDONT (IDCR)
-            XDONT (IDCR) = XDONT (ICRS)
-            XDONT (ICRS) = XWRK
-         End Do ECH2
-!
-!  One now sorts each of the two sub-intervals
-!
-         Call D_subsor (XDONT, IDEB1, ICRS-1)
-         Call D_subsor (XDONT, IDCR, IFIN1)
-      End If
-      Return
-    End Subroutine D_subsor
-
-   Subroutine D_inssor (XDONT)
-!  Sorts XDONT into increasing order (Insertion sort)
-! __________________________________________________________
-
-  use VarTypes 
-  
-  IMPLICIT NONE
-      Real(KREAL), dimension (:), Intent (InOut) :: XDONT
-! __________________________________________________________
-      Integer(KINT) :: ICRS, IDCR
-      Real(KREAL) :: XWRK
-!
-      Do ICRS = 2, Size (XDONT)
-         XWRK = XDONT (ICRS)
-         If (XWRK >= XDONT(ICRS-1)) Cycle
-         XDONT (ICRS) = XDONT (ICRS-1)
-         Do IDCR = ICRS - 2, 1, - 1
-            If (XWRK >= XDONT(IDCR)) Exit
-            XDONT (IDCR+1) = XDONT (IDCR)
-         End Do
-         XDONT (IDCR+1) = XWRK
-      End Do
-!
-      Return
-!
-End Subroutine D_inssor
-
-
-! !
-! Subroutine R_refsor (XDONT)
-! !  Sorts XDONT into ascending order - Quicksort
-! ! __________________________________________________________
-! !  Quicksort chooses a "pivot" in the set, and explores the
-! !  array from both ends, looking for a value > pivot with the
-! !  increasing index, for a value <= pivot with the decreasing
-! !  index, and swapping them when it has found one of each.
-! !  The array is then subdivided in 2 ([3]) subsets:
-! !  { values <= pivot} {pivot} {values > pivot}
-! !  One then call recursively the program to sort each subset.
-! !  When the size of the subarray is small enough, one uses an
-! !  insertion sort that is faster for very small sets.
-! !  Michel Olagnon - Apr. 2000
-! ! __________________________________________________________
-! ! _________________________________________________________
-!       Real, Dimension (:), Intent (InOut) :: XDONT
-! ! __________________________________________________________
-! !
-! !
-!       Call R_subsor (XDONT, 1, Size (XDONT))
-!       Call R_inssor (XDONT)
-!       Return
-! End Subroutine R_refsor
-
-! Recursive Subroutine R_subsor (XDONT, IDEB1, IFIN1)
-! !  Sorts XDONT from IDEB1 to IFIN1
-! ! __________________________________________________________
-!       Real, dimension (:), Intent (InOut) :: XDONT
-!       Integer, Intent (In) :: IDEB1, IFIN1
-! ! __________________________________________________________
-!       Integer, Parameter :: NINS = 16 ! Max for insertion sort
-!       Integer :: ICRS, IDEB, IDCR, IFIN, IMIL
-!       Real :: XPIV, XWRK
-! !
-!       IDEB = IDEB1
-!       IFIN = IFIN1
-! !
-! !  If we don't have enough values to make it worth while, we leave
-! !  them unsorted, and the final insertion sort will take care of them
-! !
-!       If ((IFIN - IDEB) > NINS) Then
-!          IMIL = (IDEB+IFIN) / 2
-! !
-! !  One chooses a pivot, median of 1st, last, and middle values
-! !
-!          If (XDONT(IMIL) < XDONT(IDEB)) Then
-!             XWRK = XDONT (IDEB)
-!             XDONT (IDEB) = XDONT (IMIL)
-!             XDONT (IMIL) = XWRK
-!          End If
-!          If (XDONT(IMIL) > XDONT(IFIN)) Then
-!             XWRK = XDONT (IFIN)
-!             XDONT (IFIN) = XDONT (IMIL)
-!             XDONT (IMIL) = XWRK
-!             If (XDONT(IMIL) < XDONT(IDEB)) Then
-!                XWRK = XDONT (IDEB)
-!                XDONT (IDEB) = XDONT (IMIL)
-!                XDONT (IMIL) = XWRK
-!             End If
-!          End If
-!          XPIV = XDONT (IMIL)
-! !
-! !  One exchanges values to put those > pivot in the end and
-! !  those <= pivot at the beginning
-! !
-!          ICRS = IDEB
-!          IDCR = IFIN
-!          ECH2: Do
-!             Do
-!                ICRS = ICRS + 1
-!                If (ICRS >= IDCR) Then
-! !
-! !  the first  >  pivot is IDCR
-! !  the last   <= pivot is ICRS-1
-! !  Note: If one arrives here on the first iteration, then
-! !        the pivot is the maximum of the set, the last value is equal
-! !        to it, and one can reduce by one the size of the set to process,
-! !        as if XDONT (IFIN) > XPIV
-! !
-!                   Exit ECH2
-! !
-!                End If
-!                If (XDONT(ICRS) > XPIV) Exit
-!             End Do
-!             Do
-!                If (XDONT(IDCR) <= XPIV) Exit
-!                IDCR = IDCR - 1
-!                If (ICRS >= IDCR) Then
-! !
-! !  The last value < pivot is always ICRS-1
-! !
-!                   Exit ECH2
-!                End If
-!             End Do
-! !
-!             XWRK = XDONT (IDCR)
-!             XDONT (IDCR) = XDONT (ICRS)
-!             XDONT (ICRS) = XWRK
-!          End Do ECH2
-! !
-! !  One now sorts each of the two sub-intervals
-! !
-!          Call R_subsor (XDONT, IDEB1, ICRS-1)
-!          Call R_subsor (XDONT, IDCR, IFIN1)
-!       End If
-!       Return
-!    End Subroutine R_subsor
-!    Subroutine R_inssor (XDONT)
-! !  Sorts XDONT into increasing order (Insertion sort)
-! ! __________________________________________________________
-!       Real, dimension (:), Intent (InOut) :: XDONT
-! ! __________________________________________________________
-!       Integer :: ICRS, IDCR
-!       Real :: XWRK
-! !
-!       Do ICRS = 2, Size (XDONT)
-!          XWRK = XDONT (ICRS)
-!          If (XWRK >= XDONT(ICRS-1)) Cycle
-!          XDONT (ICRS) = XDONT (ICRS-1)
-!          Do IDCR = ICRS - 2, 1, - 1
-!             If (XWRK >= XDONT(IDCR)) Exit
-!             XDONT (IDCR+1) = XDONT (IDCR)
-!          End Do
-!          XDONT (IDCR+1) = XWRK
-!       End Do
-! !
-!       Return
-! !
-! End Subroutine R_inssor
-! !
-! Subroutine I_refsor (XDONT)
-! !  Sorts XDONT into ascending order - Quicksort
-! ! __________________________________________________________
-! !  Quicksort chooses a "pivot" in the set, and explores the
-! !  array from both ends, looking for a value > pivot with the
-! !  increasing index, for a value <= pivot with the decreasing
-! !  index, and swapping them when it has found one of each.
-! !  The array is then subdivided in 2 ([3]) subsets:
-! !  { values <= pivot} {pivot} {values > pivot}
-! !  One then call recursively the program to sort each subset.
-! !  When the size of the subarray is small enough, one uses an
-! !  insertion sort that is faster for very small sets.
-! !  Michel Olagnon - Apr. 2000
-! ! __________________________________________________________
-! ! __________________________________________________________
-!       Integer, Dimension (:), Intent (InOut)  :: XDONT
-! ! __________________________________________________________
-! !
-! !
-!       Call I_subsor (XDONT, 1, Size (XDONT))
-!       Call I_inssor (XDONT)
-!       Return
-! End Subroutine I_refsor
-! Recursive Subroutine I_subsor (XDONT, IDEB1, IFIN1)
-! !  Sorts XDONT from IDEB1 to IFIN1
-! ! __________________________________________________________
-!       Integer, dimension (:), Intent (InOut) :: XDONT
-!       Integer, Intent (In) :: IDEB1, IFIN1
-! ! __________________________________________________________
-!       Integer, Parameter :: NINS = 16 ! Max for insertion sort
-!       Integer :: ICRS, IDEB, IDCR, IFIN, IMIL
-!       Integer :: XPIV, XWRK
-! !
-!       IDEB = IDEB1
-!       IFIN = IFIN1
-! !
-! !  If we don't have enough values to make it worth while, we leave
-! !  them unsorted, and the final insertion sort will take care of them
-! !
-!       If ((IFIN - IDEB) > NINS) Then
-!          IMIL = (IDEB+IFIN) / 2
-! !
-! !  One chooses a pivot, median of 1st, last, and middle values
-! !
-!          If (XDONT(IMIL) < XDONT(IDEB)) Then
-!             XWRK = XDONT (IDEB)
-!             XDONT (IDEB) = XDONT (IMIL)
-!             XDONT (IMIL) = XWRK
-!          End If
-!          If (XDONT(IMIL) > XDONT(IFIN)) Then
-!             XWRK = XDONT (IFIN)
-!             XDONT (IFIN) = XDONT (IMIL)
-!             XDONT (IMIL) = XWRK
-!             If (XDONT(IMIL) < XDONT(IDEB)) Then
-!                XWRK = XDONT (IDEB)
-!                XDONT (IDEB) = XDONT (IMIL)
-!                XDONT (IMIL) = XWRK
-!             End If
-!          End If
-!          XPIV = XDONT (IMIL)
-! !
-! !  One exchanges values to put those > pivot in the end and
-! !  those <= pivot at the beginning
-! !
-!          ICRS = IDEB
-!          IDCR = IFIN
-!          ECH2: Do
-!             Do
-!                ICRS = ICRS + 1
-!                If (ICRS >= IDCR) Then
-! !
-! !  the first  >  pivot is IDCR
-! !  the last   <= pivot is ICRS-1
-! !  Note: If one arrives here on the first iteration, then
-! !        the pivot is the maximum of the set, the last value is equal
-! !        to it, and one can reduce by one the size of the set to process,
-! !        as if XDONT (IFIN) > XPIV
-! !
-!                   Exit ECH2
-! !
-!                End If
-!                If (XDONT(ICRS) > XPIV) Exit
-!             End Do
-!             Do
-!                If (XDONT(IDCR) <= XPIV) Exit
-!                IDCR = IDCR - 1
-!                If (ICRS >= IDCR) Then
-! !
-! !  The last value < pivot is always ICRS-1
-! !
-!                   Exit ECH2
-!                End If
-!             End Do
-! !
-!             XWRK = XDONT (IDCR)
-!             XDONT (IDCR) = XDONT (ICRS)
-!             XDONT (ICRS) = XWRK
-!          End Do ECH2
-! !
-! !  One now sorts each of the two sub-intervals
-! !
-!          Call I_subsor (XDONT, IDEB1, ICRS-1)
-!          Call I_subsor (XDONT, IDCR, IFIN1)
-!       End If
-!       Return
-!    End Subroutine I_subsor
-!    Subroutine I_inssor (XDONT)
-! !  Sorts XDONT into increasing order (Insertion sort)
-! ! __________________________________________________________
-!       Integer, dimension (:), Intent (InOut) :: XDONT
-! ! __________________________________________________________
-!       Integer :: ICRS, IDCR
-!       Integer :: XWRK
-! !
-!       Do ICRS = 2, Size (XDONT)
-!          XWRK = XDONT (ICRS)
-!          If (XWRK >= XDONT(ICRS-1)) Cycle
-!          XDONT (ICRS) = XDONT (ICRS-1)
-!          Do IDCR = ICRS - 2, 1, - 1
-!             If (XWRK >= XDONT(IDCR)) Exit
-!             XDONT (IDCR+1) = XDONT (IDCR)
-!          End Do
-!          XDONT (IDCR+1) = XWRK
-!       End Do
-! !
-!       Return
-! !
-! End Subroutine I_inssor
-! !
-! end module m_refsor
Index: src/m_mrgrnk.f90
===================================================================
--- src/m_mrgrnk.f90	(revision 11)
+++ src/m_mrgrnk.f90	(revision 12)
@@ -1,649 +0,0 @@
-!!! Downloaded from http://www.fortran-2000.com/rank/index.html
-!!! on October 13th, 2010
-
-Module m_mrgrnk
-! PFL 2010 Oct 13 ->
-!Integer, Parameter :: kdp = selected_real_kind(15)
-Integer, Parameter :: kdp = KIND(1.0D0)
-! <- PFL 2010 Oct 13
-public :: mrgrnk
-private :: kdp
-private :: R_mrgrnk, I_mrgrnk, D_mrgrnk
-interface mrgrnk
-  module procedure D_mrgrnk, R_mrgrnk, I_mrgrnk
-end interface mrgrnk
-contains
-
- Subroutine D_mrgrnk (XDONT, IRNGT)
-! Subroutine Dmrgrnk (XDONT, IRNGT)
-! __________________________________________________________
-!   MRGRNK = Merge-sort ranking of an array
-!   For performance reasons, the first 2 passes are taken
-!   out of the standard loop, and use dedicated coding.
-! __________________________________________________________
-! __________________________________________________________
-
-   use VarTypes
- 
-   IMPLICIT NONE
-
-
-  interface
-     function valid(string) result (isValid)
-       logical                  :: isValid
-       character(*), intent(in) :: string
-     end function valid
-  end interface
-
-
-
-      Real (KREAL), Dimension (:), Intent (In) :: XDONT
-      Integer(KINT), Dimension (:), Intent (Out) :: IRNGT
-! __________________________________________________________
-      Real (KREAL) :: XVALA, XVALB
-!
-      Integer(KINT), ALLOCATABLE :: JWRKT(:) ! SIZE(IRNGT)
-      Integer(KINT) :: LMTNA, LMTNC, IRNG1, IRNG2
-      Integer(KINT) :: NVAL, IIND, IWRKD, IWRK, IWRKF, JINDA, IINDA, IINDB
-
-      LOGICAL :: Debug
-
-      Debug=Valid("MRGRNK")
-
-  if (debug) WRITE(*,*) "================================= Entering DMRGRNK ==============="
-!
-      NVAL = Min (SIZE(XDONT), SIZE(IRNGT))
-      if (debug) WRITE(*,*) "D_mrgrnk",NVAL, Size(XDONT),SIZE(IRNGT)
-      Select Case (NVAL)
-      Case (:0)
-         Return
-      Case (1)
-         IRNGT (1) = 1
-         Return
-      Case Default
-         Continue
-      End Select
-
-      if (debug) WRITE(*,*) "D_mrgrnk, XDONT",XDONT
-      if (debug) WRITE(*,*) "D_mrgrnk, IRNGT",IRNGT
-
-      ALLOCATE(JWRKT(SIZE(IRNGT)))
-!
-!  Fill-in the index array, creating ordered couples
-!
-      Do IIND = 2, NVAL, 2
-         If (XDONT(IIND-1) <= XDONT(IIND)) Then
-            IRNGT (IIND-1) = IIND - 1
-            IRNGT (IIND) = IIND
-         Else
-            IRNGT (IIND-1) = IIND
-            IRNGT (IIND) = IIND - 1
-         End If
-      End Do
-      If (Modulo(NVAL, 2) /= 0) Then
-         IRNGT (NVAL) = NVAL
-      End If
-!
-!  We will now have ordered subsets A - B - A - B - ...
-!  and merge A and B couples into     C   -   C   - ...
-!
-      LMTNA = 2
-      LMTNC = 4
-!
-!  First iteration. The length of the ordered subsets goes from 2 to 4
-!
-      Do
-         If (NVAL <= 2) Exit
-!
-!   Loop on merges of A and B into C
-!
-         Do IWRKD = 0, NVAL - 1, 4
-            If ((IWRKD+4) > NVAL) Then
-               If ((IWRKD+2) >= NVAL) Exit
-!
-!   1 2 3
-!
-               If (XDONT(IRNGT(IWRKD+2)) <= XDONT(IRNGT(IWRKD+3))) Exit
-!
-!   1 3 2
-!
-               If (XDONT(IRNGT(IWRKD+1)) <= XDONT(IRNGT(IWRKD+3))) Then
-                  IRNG2 = IRNGT (IWRKD+2)
-                  IRNGT (IWRKD+2) = IRNGT (IWRKD+3)
-                  IRNGT (IWRKD+3) = IRNG2
-!
-!   3 1 2
-!
-               Else
-                  IRNG1 = IRNGT (IWRKD+1)
-                  IRNGT (IWRKD+1) = IRNGT (IWRKD+3)
-                  IRNGT (IWRKD+3) = IRNGT (IWRKD+2)
-                  IRNGT (IWRKD+2) = IRNG1
-               End If
-               Exit
-            End If
-!
-!   1 2 3 4
-!
-            If (XDONT(IRNGT(IWRKD+2)) <= XDONT(IRNGT(IWRKD+3))) Cycle
-!
-!   1 3 x x
-!
-            If (XDONT(IRNGT(IWRKD+1)) <= XDONT(IRNGT(IWRKD+3))) Then
-               IRNG2 = IRNGT (IWRKD+2)
-               IRNGT (IWRKD+2) = IRNGT (IWRKD+3)
-               If (XDONT(IRNG2) <= XDONT(IRNGT(IWRKD+4))) Then
-!   1 3 2 4
-                  IRNGT (IWRKD+3) = IRNG2
-               Else
-!   1 3 4 2
-                  IRNGT (IWRKD+3) = IRNGT (IWRKD+4)
-                  IRNGT (IWRKD+4) = IRNG2
-               End If
-!
-!   3 x x x
-!
-            Else
-               IRNG1 = IRNGT (IWRKD+1)
-               IRNG2 = IRNGT (IWRKD+2)
-               IRNGT (IWRKD+1) = IRNGT (IWRKD+3)
-               If (XDONT(IRNG1) <= XDONT(IRNGT(IWRKD+4))) Then
-                  IRNGT (IWRKD+2) = IRNG1
-                  If (XDONT(IRNG2) <= XDONT(IRNGT(IWRKD+4))) Then
-!   3 1 2 4
-                     IRNGT (IWRKD+3) = IRNG2
-                  Else
-!   3 1 4 2
-                     IRNGT (IWRKD+3) = IRNGT (IWRKD+4)
-                     IRNGT (IWRKD+4) = IRNG2
-                  End If
-               Else
-!   3 4 1 2
-                  IRNGT (IWRKD+2) = IRNGT (IWRKD+4)
-                  IRNGT (IWRKD+3) = IRNG1
-                  IRNGT (IWRKD+4) = IRNG2
-               End If
-            End If
-         End Do
-!
-!  The Cs become As and Bs
-!
-         LMTNA = 4
-         Exit
-      End Do
-!
-!  Iteration loop. Each time, the length of the ordered subsets
-!  is doubled.
-!
-      Do
-         If (LMTNA >= NVAL) Exit
-         IWRKF = 0
-         LMTNC = 2 * LMTNC
-!
-!   Loop on merges of A and B into C
-!
-         Do
-            IWRK = IWRKF
-            IWRKD = IWRKF + 1
-            JINDA = IWRKF + LMTNA
-            IWRKF = IWRKF + LMTNC
-            If (IWRKF >= NVAL) Then
-               If (JINDA >= NVAL) Exit
-               IWRKF = NVAL
-            End If
-            IINDA = 1
-            IINDB = JINDA + 1
-!
-!   Shortcut for the case when the max of A is smaller
-!   than the min of B. This line may be activated when the
-!   initial set is already close to sorted.
-!
-!          IF (XDONT(IRNGT(JINDA)) <= XDONT(IRNGT(IINDB))) CYCLE
-!
-!  One steps in the C subset, that we build in the final rank array
-!
-!  Make a copy of the rank array for the merge iteration
-!
-            JWRKT (1:LMTNA) = IRNGT (IWRKD:JINDA)
-!
-            XVALA = XDONT (JWRKT(IINDA))
-            XVALB = XDONT (IRNGT(IINDB))
-!
-            Do
-               IWRK = IWRK + 1
-!
-!  We still have unprocessed values in both A and B
-!
-               If (XVALA > XVALB) Then
-                  IRNGT (IWRK) = IRNGT (IINDB)
-                  IINDB = IINDB + 1
-                  If (IINDB > IWRKF) Then
-!  Only A still with unprocessed values
-                     IRNGT (IWRK+1:IWRKF) = JWRKT (IINDA:LMTNA)
-                     Exit
-                  End If
-                  XVALB = XDONT (IRNGT(IINDB))
-               Else
-                  IRNGT (IWRK) = JWRKT (IINDA)
-                  IINDA = IINDA + 1
-                  If (IINDA > LMTNA) Exit! Only B still with unprocessed values
-                  XVALA = XDONT (JWRKT(IINDA))
-               End If
-!
-            End Do
-         End Do
-!
-!  The Cs become As and Bs
-!
-         LMTNA = 2 * LMTNA
-      End Do
-
-      DEALLOCATE(JWRKT)
-  if (debug) WRITE(*,*) "================================= Exiting DMRGRNK ==============="
-!
-      Return
-!
-    End Subroutine D_mrgrnk
-
-Subroutine R_mrgrnk (XDONT, IRNGT)
-! __________________________________________________________
-!   MRGRNK = Merge-sort ranking of an array
-!   For performance reasons, the first 2 passes are taken
-!   out of the standard loop, and use dedicated coding.
-! __________________________________________________________
-! _________________________________________________________
-      Real, Dimension (:), Intent (In) :: XDONT
-      Integer, Dimension (:), Intent (Out) :: IRNGT
-! __________________________________________________________
-      Real :: XVALA, XVALB
-!
-      Integer, Dimension (SIZE(IRNGT)) :: JWRKT
-      Integer :: LMTNA, LMTNC, IRNG1, IRNG2
-      Integer :: NVAL, IIND, IWRKD, IWRK, IWRKF, JINDA, IINDA, IINDB
-!
-
-      NVAL = Min (SIZE(XDONT), SIZE(IRNGT))
-!      if (debug) WRITE(*,*) "R_MRGRNK:", NVAL
-      Select Case (NVAL)
-      Case (:0)
-         Return
-      Case (1)
-         IRNGT (1) = 1
-         Return
-      Case Default
-         Continue
-      End Select
-!
-!  Fill-in the index array, creating ordered couples
-!
-      Do IIND = 2, NVAL, 2
-         If (XDONT(IIND-1) <= XDONT(IIND)) Then
-            IRNGT (IIND-1) = IIND - 1
-            IRNGT (IIND) = IIND
-         Else
-            IRNGT (IIND-1) = IIND
-            IRNGT (IIND) = IIND - 1
-         End If
-      End Do
-      If (Modulo(NVAL, 2) /= 0) Then
-         IRNGT (NVAL) = NVAL
-      End If
-!
-!  We will now have ordered subsets A - B - A - B - ...
-!  and merge A and B couples into     C   -   C   - ...
-!
-      LMTNA = 2
-      LMTNC = 4
-!
-!  First iteration. The length of the ordered subsets goes from 2 to 4
-!
-      Do
-         If (NVAL <= 2) Exit
-!
-!   Loop on merges of A and B into C
-!
-         Do IWRKD = 0, NVAL - 1, 4
-            If ((IWRKD+4) > NVAL) Then
-               If ((IWRKD+2) >= NVAL) Exit
-!
-!   1 2 3
-!
-               If (XDONT(IRNGT(IWRKD+2)) <= XDONT(IRNGT(IWRKD+3))) Exit
-!
-!   1 3 2
-!
-               If (XDONT(IRNGT(IWRKD+1)) <= XDONT(IRNGT(IWRKD+3))) Then
-                  IRNG2 = IRNGT (IWRKD+2)
-                  IRNGT (IWRKD+2) = IRNGT (IWRKD+3)
-                  IRNGT (IWRKD+3) = IRNG2
-!
-!   3 1 2
-!
-               Else
-                  IRNG1 = IRNGT (IWRKD+1)
-                  IRNGT (IWRKD+1) = IRNGT (IWRKD+3)
-                  IRNGT (IWRKD+3) = IRNGT (IWRKD+2)
-                  IRNGT (IWRKD+2) = IRNG1
-               End If
-               Exit
-            End If
-!
-!   1 2 3 4
-!
-            If (XDONT(IRNGT(IWRKD+2)) <= XDONT(IRNGT(IWRKD+3))) Cycle
-!
-!   1 3 x x
-!
-            If (XDONT(IRNGT(IWRKD+1)) <= XDONT(IRNGT(IWRKD+3))) Then
-               IRNG2 = IRNGT (IWRKD+2)
-               IRNGT (IWRKD+2) = IRNGT (IWRKD+3)
-               If (XDONT(IRNG2) <= XDONT(IRNGT(IWRKD+4))) Then
-!   1 3 2 4
-                  IRNGT (IWRKD+3) = IRNG2
-               Else
-!   1 3 4 2
-                  IRNGT (IWRKD+3) = IRNGT (IWRKD+4)
-                  IRNGT (IWRKD+4) = IRNG2
-               End If
-!
-!   3 x x x
-!
-            Else
-               IRNG1 = IRNGT (IWRKD+1)
-               IRNG2 = IRNGT (IWRKD+2)
-               IRNGT (IWRKD+1) = IRNGT (IWRKD+3)
-               If (XDONT(IRNG1) <= XDONT(IRNGT(IWRKD+4))) Then
-                  IRNGT (IWRKD+2) = IRNG1
-                  If (XDONT(IRNG2) <= XDONT(IRNGT(IWRKD+4))) Then
-!   3 1 2 4
-                     IRNGT (IWRKD+3) = IRNG2
-                  Else
-!   3 1 4 2
-                     IRNGT (IWRKD+3) = IRNGT (IWRKD+4)
-                     IRNGT (IWRKD+4) = IRNG2
-                  End If
-               Else
-!   3 4 1 2
-                  IRNGT (IWRKD+2) = IRNGT (IWRKD+4)
-                  IRNGT (IWRKD+3) = IRNG1
-                  IRNGT (IWRKD+4) = IRNG2
-               End If
-            End If
-         End Do
-!
-!  The Cs become As and Bs
-!
-         LMTNA = 4
-         Exit
-      End Do
-!
-!  Iteration loop. Each time, the length of the ordered subsets
-!  is doubled.
-!
-      Do
-         If (LMTNA >= NVAL) Exit
-         IWRKF = 0
-         LMTNC = 2 * LMTNC
-!
-!   Loop on merges of A and B into C
-!
-         Do
-            IWRK = IWRKF
-            IWRKD = IWRKF + 1
-            JINDA = IWRKF + LMTNA
-            IWRKF = IWRKF + LMTNC
-            If (IWRKF >= NVAL) Then
-               If (JINDA >= NVAL) Exit
-               IWRKF = NVAL
-            End If
-            IINDA = 1
-            IINDB = JINDA + 1
-!
-!   Shortcut for the case when the max of A is smaller
-!   than the min of B. This line may be activated when the
-!   initial set is already close to sorted.
-!
-!          IF (XDONT(IRNGT(JINDA)) <= XDONT(IRNGT(IINDB))) CYCLE
-!
-!  One steps in the C subset, that we build in the final rank array
-!
-!  Make a copy of the rank array for the merge iteration
-!
-            JWRKT (1:LMTNA) = IRNGT (IWRKD:JINDA)
-!
-            XVALA = XDONT (JWRKT(IINDA))
-            XVALB = XDONT (IRNGT(IINDB))
-!
-            Do
-               IWRK = IWRK + 1
-!
-!  We still have unprocessed values in both A and B
-!
-               If (XVALA > XVALB) Then
-                  IRNGT (IWRK) = IRNGT (IINDB)
-                  IINDB = IINDB + 1
-                  If (IINDB > IWRKF) Then
-!  Only A still with unprocessed values
-                     IRNGT (IWRK+1:IWRKF) = JWRKT (IINDA:LMTNA)
-                     Exit
-                  End If
-                  XVALB = XDONT (IRNGT(IINDB))
-               Else
-                  IRNGT (IWRK) = JWRKT (IINDA)
-                  IINDA = IINDA + 1
-                  If (IINDA > LMTNA) Exit! Only B still with unprocessed values
-                  XVALA = XDONT (JWRKT(IINDA))
-               End If
-!
-            End Do
-         End Do
-!
-!  The Cs become As and Bs
-!
-         LMTNA = 2 * LMTNA
-      End Do
-!
-      Return
-!
-End Subroutine R_mrgrnk
-Subroutine I_mrgrnk (XDONT, IRNGT)
-! __________________________________________________________
-!   MRGRNK = Merge-sort ranking of an array
-!   For performance reasons, the first 2 passes are taken
-!   out of the standard loop, and use dedicated coding.
-! __________________________________________________________
-! __________________________________________________________
-      Integer, Dimension (:), Intent (In)  :: XDONT
-      Integer, Dimension (:), Intent (Out) :: IRNGT
-! __________________________________________________________
-      Integer :: XVALA, XVALB
-!
-      Integer, Dimension (SIZE(IRNGT)) :: JWRKT
-      Integer :: LMTNA, LMTNC, IRNG1, IRNG2
-      Integer :: NVAL, IIND, IWRKD, IWRK, IWRKF, JINDA, IINDA, IINDB
-!
-      NVAL = Min (SIZE(XDONT), SIZE(IRNGT))
-!      WRITE(*,*) "I_mrgrnk",NVAL
-      Select Case (NVAL)
-      Case (:0)
-         Return
-      Case (1)
-         IRNGT (1) = 1
-         Return
-      Case Default
-         Continue
-      End Select
-!
-!  Fill-in the index array, creating ordered couples
-!
-      Do IIND = 2, NVAL, 2
-         If (XDONT(IIND-1) <= XDONT(IIND)) Then
-            IRNGT (IIND-1) = IIND - 1
-            IRNGT (IIND) = IIND
-         Else
-            IRNGT (IIND-1) = IIND
-            IRNGT (IIND) = IIND - 1
-         End If
-      End Do
-      If (Modulo(NVAL, 2) /= 0) Then
-         IRNGT (NVAL) = NVAL
-      End If
-!
-!  We will now have ordered subsets A - B - A - B - ...
-!  and merge A and B couples into     C   -   C   - ...
-!
-      LMTNA = 2
-      LMTNC = 4
-!
-!  First iteration. The length of the ordered subsets goes from 2 to 4
-!
-      Do
-         If (NVAL <= 2) Exit
-!
-!   Loop on merges of A and B into C
-!
-         Do IWRKD = 0, NVAL - 1, 4
-            If ((IWRKD+4) > NVAL) Then
-               If ((IWRKD+2) >= NVAL) Exit
-!
-!   1 2 3
-!
-               If (XDONT(IRNGT(IWRKD+2)) <= XDONT(IRNGT(IWRKD+3))) Exit
-!
-!   1 3 2
-!
-               If (XDONT(IRNGT(IWRKD+1)) <= XDONT(IRNGT(IWRKD+3))) Then
-                  IRNG2 = IRNGT (IWRKD+2)
-                  IRNGT (IWRKD+2) = IRNGT (IWRKD+3)
-                  IRNGT (IWRKD+3) = IRNG2
-!
-!   3 1 2
-!
-               Else
-                  IRNG1 = IRNGT (IWRKD+1)
-                  IRNGT (IWRKD+1) = IRNGT (IWRKD+3)
-                  IRNGT (IWRKD+3) = IRNGT (IWRKD+2)
-                  IRNGT (IWRKD+2) = IRNG1
-               End If
-               Exit
-            End If
-!
-!   1 2 3 4
-!
-            If (XDONT(IRNGT(IWRKD+2)) <= XDONT(IRNGT(IWRKD+3))) Cycle
-!
-!   1 3 x x
-!
-            If (XDONT(IRNGT(IWRKD+1)) <= XDONT(IRNGT(IWRKD+3))) Then
-               IRNG2 = IRNGT (IWRKD+2)
-               IRNGT (IWRKD+2) = IRNGT (IWRKD+3)
-               If (XDONT(IRNG2) <= XDONT(IRNGT(IWRKD+4))) Then
-!   1 3 2 4
-                  IRNGT (IWRKD+3) = IRNG2
-               Else
-!   1 3 4 2
-                  IRNGT (IWRKD+3) = IRNGT (IWRKD+4)
-                  IRNGT (IWRKD+4) = IRNG2
-               End If
-!
-!   3 x x x
-!
-            Else
-               IRNG1 = IRNGT (IWRKD+1)
-               IRNG2 = IRNGT (IWRKD+2)
-               IRNGT (IWRKD+1) = IRNGT (IWRKD+3)
-               If (XDONT(IRNG1) <= XDONT(IRNGT(IWRKD+4))) Then
-                  IRNGT (IWRKD+2) = IRNG1
-                  If (XDONT(IRNG2) <= XDONT(IRNGT(IWRKD+4))) Then
-!   3 1 2 4
-                     IRNGT (IWRKD+3) = IRNG2
-                  Else
-!   3 1 4 2
-                     IRNGT (IWRKD+3) = IRNGT (IWRKD+4)
-                     IRNGT (IWRKD+4) = IRNG2
-                  End If
-               Else
-!   3 4 1 2
-                  IRNGT (IWRKD+2) = IRNGT (IWRKD+4)
-                  IRNGT (IWRKD+3) = IRNG1
-                  IRNGT (IWRKD+4) = IRNG2
-               End If
-            End If
-         End Do
-!
-!  The Cs become As and Bs
-!
-         LMTNA = 4
-         Exit
-      End Do
-!
-!  Iteration loop. Each time, the length of the ordered subsets
-!  is doubled.
-!
-      Do
-         If (LMTNA >= NVAL) Exit
-         IWRKF = 0
-         LMTNC = 2 * LMTNC
-!
-!   Loop on merges of A and B into C
-!
-         Do
-            IWRK = IWRKF
-            IWRKD = IWRKF + 1
-            JINDA = IWRKF + LMTNA
-            IWRKF = IWRKF + LMTNC
-            If (IWRKF >= NVAL) Then
-               If (JINDA >= NVAL) Exit
-               IWRKF = NVAL
-            End If
-            IINDA = 1
-            IINDB = JINDA + 1
-!
-!   Shortcut for the case when the max of A is smaller
-!   than the min of B. This line may be activated when the
-!   initial set is already close to sorted.
-!
-!          IF (XDONT(IRNGT(JINDA)) <= XDONT(IRNGT(IINDB))) CYCLE
-!
-!  One steps in the C subset, that we build in the final rank array
-!
-!  Make a copy of the rank array for the merge iteration
-!
-            JWRKT (1:LMTNA) = IRNGT (IWRKD:JINDA)
-!
-            XVALA = XDONT (JWRKT(IINDA))
-            XVALB = XDONT (IRNGT(IINDB))
-!
-            Do
-               IWRK = IWRK + 1
-!
-!  We still have unprocessed values in both A and B
-!
-               If (XVALA > XVALB) Then
-                  IRNGT (IWRK) = IRNGT (IINDB)
-                  IINDB = IINDB + 1
-                  If (IINDB > IWRKF) Then
-!  Only A still with unprocessed values
-                     IRNGT (IWRK+1:IWRKF) = JWRKT (IINDA:LMTNA)
-                     Exit
-                  End If
-                  XVALB = XDONT (IRNGT(IINDB))
-               Else
-                  IRNGT (IWRK) = JWRKT (IINDA)
-                  IINDA = IINDA + 1
-                  If (IINDA > LMTNA) Exit! Only B still with unprocessed values
-                  XVALA = XDONT (JWRKT(IINDA))
-               End If
-!
-            End Do
-         End Do
-!
-!  The Cs become As and Bs
-!
-         LMTNA = 2 * LMTNA
-      End Do
-!
-      Return
-!
-End Subroutine I_mrgrnk
-end module m_mrgrnk
Index: src/cmshft.f90
===================================================================
--- src/cmshft.f90	(revision 11)
+++ src/cmshft.f90	(revision 12)
@@ -1,71 +0,0 @@
-subroutine cmshft(natom,rx,ry,rz,rmass,cmx,cmy,cmz,ishift)
-  !c
-  !c      shifts all x, y, and z coordinates passed in rx,ry,rz to keep
-  !c      the center of mass at the origin if ishift is not zero. otherwise
-  !c      cmx, cmy, and cmz return the center of mass coordinates and no
-  !c      shift is performed. coordinate and mass units arbitrary.
-  !c
-
-  use VarTypes
-  use Io_module
-
-  IMPLICIT NONE
-
-  
-! Number of atoms
-  INTEGER(KINT), INTENT(IN) :: NAtom
-! Coordinates and masses 
-  REAL(KREAL), DIMENSION(NAtom) :: rx,ry,rz,rmass
-! Center of mass coordinates
-  real(KREAL) :: cmx,cmy,cmz
-! Flag if user wants to shift center of mass to origin
-  INTEGER(KINT) :: IShift
-
-  REAL(KREAL), parameter :: zero=0.d0,one=1.d0
-  INTEGER(KINT) :: j
-  REAL(KREAL) :: TmassI, tmass
-
-  if(natom.le.0) then
-     if(IOOUT.gt.0) write(IOOUT,'(/2a/)')  &
-          '  *** error, illegal array dimension in cmshft,', &
-          ' return without action ***'
-     return
-  end if
-  !c
-  !c      calculate center of mass coordinates
-  !c
-  tmass=rmass(1)
-  do j=2,natom
-     tmass=tmass+rmass(j)
-  END DO
-  !c
-  !c     DO i=1,natom
-  !c       write(IOOUT,'(4F15.3)') rmass(i),rx(i),ry(i),rz(i)
-  !c     END DO
-
-  cmx=zero
-  cmy=zero
-  cmz=zero
-  do j=1,natom
-     cmx=rmass(j)*rx(j)+cmx
-     cmy=rmass(j)*ry(j)+cmy
-     cmz=rmass(j)*rz(j)+cmz
-  END DO
-
-  tmassi=one/tmass
-  cmx=cmx*tmassi
-  cmy=cmy*tmassi
-  cmz=cmz*tmassi
-  !c
-  !c      optional shift of all cartesian coordinates
-  !c
-  if(ishift.ne.0) then
-     do j=1,natom
-        rx(j)=rx(j)-cmx
-        ry(j)=ry(j)-cmy
-        rz(j)=rz(j)-cmz
-     END DO
-  end if
-
-  return
-end subroutine cmshft
Index: src/Tensor.f90
===================================================================
--- src/Tensor.f90	(revision 11)
+++ src/Tensor.f90	(revision 12)
@@ -1,105 +0,0 @@
-subroutine tensor(natom,rx,ry,rz,Tinert,CoordG,rmass)
-  ! c
-  ! c      elements of inertial tensor for a set of atomic systems.
-  ! c
-  ! c      rx,ry,rz : arrays natom with cartesian coordinates of natom particles; input
-  ! c      txx,tyy,tzz,txy,txz,tyz: elements of inertial tensors ; output
-  ! c      a,b,c    :  returning center of mass coordinates.
-  ! c      rmass    : vector of length natom with particle masses; input
-  ! c      natom    : number of particles per system; input
-  ! c      IOOUT     : unit number for messages, silent for IOOUT.le.0; input
-  ! c      subroutines called: cmshft                   m. lewerenz jul/92
-  ! c
-
-  use Io_module
-
-  IMPLICIT NONE
-
-  REAL(KREAL), parameter :: zero=0.d0
-
-  INTEGER(KINT), INTENT(IN) :: Natom
-  real(KREAL) :: rx(Natom),ry(Natom),rz(Natom),rmass(Natom)
-  real(KREAL) :: a,b,c,Tinert(3,3),CoordG(3)
-
-  INTEGER(KINT) :: jover, J
-  REAL(KREAL) :: Txx, Tyy, Tzz, Txy, Txz, Tyz, Txxi
-  REAL(KREAL) :: Ryb, Rzc, Rxa, Rmj2, ryb2, rzc2, rxa2, Rmj
-
-
-  if(natom.le.0) then
-     if(IOOUT.gt.0) write(IOOUT,'(/2a/)')   &
-          '  *** error, illegal array dimension(s) in tensor,', &
-          ' return without action ***'
-  else if(natom.eq.1) then
-     a=rx(1)
-     b=ry(1)
-     c=rz(1)
-     txx=zero
-     tyy=zero
-     tzz=zero
-     txy=zero
-     txz=zero
-     tyz=zero
-  else
-     !c
-     !c      first center of mass coordinates, then tensor elements
-     !c
-     call cmshft(natom,rx,ry,rz,rmass,a,b,c,0)
-     CoordG(1)=a
-     CoordG(2)=b
-     CoordG(3)=c
-
-     jover=mod(natom,2)
-     if(jover.eq.0) then
-        txx=zero
-        tyy=zero
-        tzz=zero
-        txy=zero
-        txz=zero
-        tyz=zero
-     else
-        rmj=rmass(1)
-        ryb=b-ry(1)
-        rzc=c-rz(1)
-        tyz=-rmj*ryb*rzc
-        rxa=a-rx(1)
-        txz=(-rmj*rxa)*rzc
-        txy=(-rmj*rxa)*ryb
-        txx=rmj*((ryb*ryb)+(rzc*rzc))
-        tyy=rmj*((rxa*rxa)+(rzc*rzc))
-        tzz=rmj*((rxa*rxa)+(ryb*ryb))
-     end if
-!c
-!c      force vectorization of inner loop if necessary (ibm-3090)
-!c
-     do j=jover+1,natom,2
-        rmj=rmass(j)
-        rmj2=rmass(j+1)
-        ryb=b-ry(j)
-        rzc=c-rz(j)
-        txxi=txx+rmj*((ryb*ryb)+(rzc*rzc))
-        ryb2=b-ry(j+1)
-        rzc2=c-rz(j+1)
-        txx=txxi+rmj2*((ryb2*ryb2)+(rzc2*rzc2))
-        tyz=tyz-rmj*ryb*rzc-rmj2*ryb2*rzc2
-        rxa=a-rx(j)
-        rxa2=a-rx(j+1)
-        txy=txy-(rmj*rxa)*ryb-(rmj2*rxa2)*ryb2
-        txz=txz-(rmj*rxa)*rzc-(rmj2*rxa2)*rzc2
-        tyy=tyy+rmj*((rxa*rxa)+(rzc*rzc))  &
-             +rmj2*((rxa2*rxa2)+(rzc2*rzc2))
-        tzz=tzz+rmj*((rxa*rxa)+(ryb*ryb))   &
-             +rmj2*((rxa2*rxa2)+(ryb2*ryb2)) 
-     END DO
-  end if
-  Tinert(1,1)=txx
-  Tinert(1,2)=txy
-  Tinert(1,3)=txz
-  Tinert(2,1)=txy
-  Tinert(2,2)=tyy
-  Tinert(2,3)=tyz
-  Tinert(3,1)=txz
-  Tinert(3,2)=tyz
-  Tinert(3,3)=tzz
-  return
-end subroutine tensor
Index: src/Ginvse.f90
===================================================================
--- src/Ginvse.f90	(revision 11)
+++ src/Ginvse.f90	(revision 12)
@@ -1,262 +0,0 @@
-
-SUBROUTINE GINVSE(A, MA, NA, AIN, NAIN, M, N, TOL, V, NV, FAIL, NOUT)
-
-  Use Io_module
-  ! INVERSE.OF.A = V * INVERSE.OF.S * TRANSPOSE.OF.U
-  ! VIA SINGULAR VALUE DECOMPOSITION USING ALGORITHMS 1 AND 2 OF
-  ! NASH J C, COMPACT NUMERICAL METHODS FOR COMPUTERS, 1979,
-  !    ADAM HILGER, BRISTOL OR HALSTED PRESS, N.Y.
-  !
-  !
-  ! CALLING SEQUENCE
-  !
-  !    CALL GINVSE (A,MA,NA,AIN,NAIN,M,N,TOL,V,NV,FAIL,NOUT)
-  !
-  ! A      = MATRIX OF SIZE M BY N TO BE 'INVERTED'
-  !          A IS DESTROYED BY THIS ROUTINE AND BECOMES THE
-  !          U MATRIX OF THE SINGULAR VALUE DECOMPOSITION
-  ! MA     = ROW DIMENSION OF ARRAY A
-  !          UNCHANGED BY THIS SUB-PROGRAM
-  ! NA     = COLUMN DIMENSION OF ARRAY A
-  !          UNCHANGED BY THIS SUB-PROGRAM
-  ! AIN    = COMPUTED 'INVERSE' (N ROWS BY M COLS.)
-  ! NAIN   = ROW DIMENSION OF ARRAY AIN
-  !          ( COLUMN DIMENSION ASSUMED TO BE AT LEAST M )
-  !          UNCHANGED BY THIS SUB-PROGRAM
-  ! M      = NUMBER OF ROWS IN MATRIX A AND
-  !          THE NUMBER OF COLUMNS IN MATRIX AIN
-  ! N      = NUMBER OF COLUMNS IN MATRIX A AND
-  !          THE NUMBER OF ROWS IN MATRIX AIN
-  !          UNCHANGED BY THIS SUB-PROGRAM
-  ! TOL    = MACHINE PRECISION FOR COMPUTING ENVIRONMENT
-  !          UNCHANGED BY THIS SUB-PROGRAM
-  ! V      = WORK MATRIX WHICH BECOMES THE V MATRIX (N BY N)
-  !          OF THE SINGULAR VALUE DECOMPOSITION
-  ! NV     = DIMENSIONS OF V  (BOTH ROWS AND COLUMNS)
-  !          UNCHANGED BY THIS SUB-PROGRAM
-  ! FAIL   = ERROR FLAG - .TRUE. IMPLIES FAILURE OF GINVSE
-  ! NOUT   = OUTPUT CHANNEL NUMBER
-  !          UNCHANGED BY THIS SUB-PROGRAM
-  !
-  ! NOTE.  THIS ROUTINE IS NOT DESIGNED TO PRODUCE A 'GOOD'
-  !     GENERALIZED INVERSE. IT IS MEANT ONLY TO FURNISH TEST
-  !     DATA FOR THE ROUTINES  GMATX, ZIELKE, AND PTST
-  !
-  INTEGER(KINT), INTENT(IN) :: MA, NA, NAIN,N, M,NV, NOUT
-  INTEGER(KINT) :: ICOUNT, NM1, I, J, JP1, K,SWEEP, LIMIT
-  LOGICAL, INTENT(INOUT) :: FAIL
-  REAL(KREAL), INTENT(IN) :: TOL
-  REAL(KREAL) :: P, Q, R, VV, C, S, TEMP
-  REAL(KREAL), INTENT(INOUT) :: V(NV,NV)
-  REAL(KREAL), INTENT(INOUT) :: AIN(NAIN,M)
-  REAL(KREAL), INTENT(INOUT) :: A(MA,NA)
-
-  LOGICAL :: debug
-  INTERFACE
-     function valid(string) result (isValid)
-       CHARACTER(*), intent(in) :: string
-       logical                  :: isValid
-     END function VALID
-
-  END INTERFACE
-
-  debug=valid('Ginvse')
-  if (debug) WRITE(*,*) '=======Entering Ginvse======='
-
-  !Print *, 'A='
-  DO J=1,MA
-     !WRITE(*,'(50(1X,F10.2))') AIN(:,J)
-     !Print *, A(:,J)
-  END DO
-  !Print *, 'End of A'
-  !
-  ! INITIALLY SET FAIL=.FALSE. TO IMPLY CORRECT EXECUTION
-  !
-  FAIL = .FALSE.
-  !
-  ! TESTS ON VALIDITY OF DIMENSIONS
-  !
-  IF (M.LT.2 .OR. MA.LT.2 .OR. N.LT.2 .OR. NA.LT.2) GO TO 230
-  IF (N.GT.NA) GO TO 210
-  IF (M.GT.MA) GO TO 220
-  !
-  ! N MUST NOT EXCEED M, OTHERWISE GINVSE WILL FAIL
-  !
-  IF (N.GT.M) GO TO 200
-  !
-  ! SWEEP COUNTER  INITIALIZED TO ZERO
-  !
-  SWEEP = 0
-  !
-  ! SET SWEEP LIMIT
-  !
-  LIMIT = MAX0(N,6)
-  !
-  ! MAX0(N,6) WAS  CHOSEN FROM EXPERIENCE
-  !
-  !
-  ! V(I,J) INITIALLY N BY N IDENTITY
-  !
-  DO 20 I=1,N
-     DO 10 J=1,N
-        V(I,J) = 0.0
-10      CONTINUE
-        V(I,I) = 1.0
-20      CONTINUE
-        !
-        ! INITIALIZE ROTATION COUNTER (COUNTS DOWN TO 0)
-        !
-30      ICOUNT = N*(N-1)/2
-        !
-        ! COUNT SWEEP
-        !
-        SWEEP = SWEEP + 1
-        NM1 = N - 1
-        DO 110 J=1,NM1
-           JP1 = J + 1
-           DO 100 K=JP1,N
-              P = 0.
-              Q = 0.
-              R = 0.
-              DO 40 I=1,M
-                 !
-           ! TEST FOR AND AVOID UNDERFLOW
-           ! NOT NEEDED FOR MACHINES WHICH UNDERFLOW TO ZERO WITHOUT
-           ! ERROR MESSAGE
-           !
-           IF (ABS(A(I,J)).GE.TOL) Q = Q + A(I,J)*A(I,J)
-           !Print *, '1 Q=',Q
-           !Print *, 'A(',I,J,')=',A(I,J)
-           IF (ABS(A(I,K)).GE.TOL) R = R + A(I,K)*A(I,K)
-           IF (ABS(A(I,J)/TOL)*ABS(A(I,K)/TOL).GE.1.0) P = P + A(I,J)*A(I,K)
-40         CONTINUE
-           !Print *, '2 Q=',Q
-           IF (Q.GE.R) GO TO 50
-           C = 0.
-           S = 1.
-           GO TO 60
-50         IF (ABS(Q).LT.TOL .AND. ABS(R).LT.TOL) GO TO 90
-           IF (R.EQ.0.0) GO TO 90
-           IF ((P/Q)*(P/R).LT.TOL) GO TO 90
-           !
-           ! CALCULATE THE SINE AND COSINE OF THE ANGLE OF ROTATION
-           !
-           !Print *, '3 Q=',Q
-           !Print *, 'R=',R
-           Q = Q - R
-           VV = SQRT(4.*P*P+Q*Q)
-           !Print *, 'VV=',VV
-           !Print *, 'P=',P
-           !Print *, 'Q=',Q
-           C = SQRT((VV+Q)/(2.*VV))
-           !Print *, 'C=', C
-           S = P/(VV*C)
-           !Print *, 'S=', S
-           !
-           ! APPLY THE ROTATION TO A
-           !
-60         DO 70 I=1,M
-              R = A(I,J)
-              A(I,J) = R*C + A(I,K)*S
-              A(I,K) = -R*S + A(I,K)*C
-70            CONTINUE
-              !if (debug) WRITE(*,*) '=======After rotation of A======='
-              !
-              ! APPLY THE ROTATION TO V
-              !
-              DO 80 I=1,N
-                 R = V(I,J)
-                 V(I,J) = R*C + V(I,K)*S
-                 !Print *, 'V(I,J)=', V(I,J)
-                 !Print *, 'R=', R
-                 V(I,K) = -R*S + V(I,K)*C
-                 !Print *, 'V(I,K)=', V(I,K)
-80               CONTINUE
-                 GO TO 100
-90               ICOUNT = ICOUNT - 1
-100              CONTINUE
-110              CONTINUE
-                 !if (debug) WRITE(*,*) '=======After rotation of V======='
-                 !
-                 ! PRINT THE NUMBER OF SWEEPS AND ROTATIONS
-                 !
-                 IF (NOUT.GT.0) WRITE (NOUT,9997) SWEEP, ICOUNT
-                 !
-                 ! CHECK NUMBER OF SWEEPS AND ROTATIONS (TERMINATION TEST)
-                 !
-                 IF (ICOUNT.GT.0 .AND. SWEEP.LT.LIMIT) GO TO 30
-                 IF (SWEEP.GE.LIMIT .AND. NOUT.GT.0) WRITE (NOUT,9996)
-                 DO 160 J=1,N
-                    Q = 0.
-                    DO 120 I=1,M
-                       Q = Q + A(I,J)*A(I,J)
-120                    CONTINUE
-                       !
-                       ! ARBITRARY RANK DECISION
-                       !
-                       IF (J.EQ.1) VV = 1.0E-3*SQRT(Q)
-                       IF (SQRT(Q).LE.VV) GO TO 140
-                       DO 130 I=1,M
-                          A(I,J) = A(I,J)/Q
-130                       CONTINUE
-                          GO TO 160
-140                       DO 150 I=1,M
-                             A(I,J) = 0.0
-150                          CONTINUE
-160                          CONTINUE
-
-                                   !if (debug) WRITE(*,*) '=======After termination test======='
-
-                                   DO 190 I=1,N
-                                      DO 180 J=1,M
-                                         TEMP = 0.0
-                                         DO 170 K=1,N
-                                            TEMP = TEMP + V(I,K)*A(J,K)
-                                            !Print *, 'V(I,K)*A(J,K)=', V(I,K)*A(J,K)
-                                            !Print *, 'V(I,K)=', V(I,K)
-                                            !Print *, 'A(J,K)=', A(J,K)
-170    CONTINUE
-       AIN(I,J) = TEMP
-       !Print *, 'AIN(I,J)=', AIN(I,J)
-180    CONTINUE
-190    CONTINUE
-       RETURN
-
-       !Print *, 'AIN='
-       !DO J=1,NAIN
-       !WRITE(*,'(50(1X,F10.2))') AIN(:,J)
-       !Print *, AIN(:,J)
-       !END DO
-       !Print *, 'End of AIN'
-
-       !
-       ! IF AN ERROR OCCURED THE APPROPRIATE MESSAGE IS PRINTED
-       !    AND FAIL IS SET TO  .TRUE.
-       !
-200    IF (NOUT.GT.0) WRITE (NOUT,9995)
-       FAIL = .TRUE.
-       RETURN
-210    IF (NOUT.GT.0) WRITE (NOUT,9999) N, NA
-       FAIL = .TRUE.
-       RETURN
-220    IF (NOUT.GT.0) WRITE (NOUT,9998) M, MA
-       FAIL = .TRUE.
-       RETURN
-230    IF (NOUT.GT.0) WRITE (NOUT,9994) M, MA, N, NA
-       FAIL = .TRUE.
-       RETURN
-       !
-       ! * * * * * * * * * * * * * * * * * * *
-                                            !
-9999    FORMAT (11H0**ERROR** , I5, 24H EXCEEDS ALLOWABLE VALUE,23H FOR N IN GINVSE   NA= , I5, 5(/))
-9998        FORMAT (11H0**ERROR** , I5, 24H EXCEEDS ALLOWABLE VALUE,23H FOR M IN GINVSE   MA= , I5, 5(/))
-9997        FORMAT (8H SWEEP =, I4, 2H  , I4, 19H JACOBI ROTATIONS P,8HERFORMED)
-9996        FORMAT (21H SWEEP LIMIT REACHED )
-9995        FORMAT (38H0**ERROR** N GREATER THAN M IS INVALID,21H AND GINVSE WILL FAIL, 5(/))
-9994        FORMAT (46H0**ERROR** SOME DIMENSIONS ARE LESS THAN TWO I,8HN GINVSE &
-                 /10X, 3HM =, I5, 5H MA =,I5, 4H N =, I5,5H NA =, I5, 5(/))
-            !
-            ! * * * END OF SUBROUTINE GINVSE * * *
-            !
-          END SUBROUTINE GINVSE
-  
Index: src/Step_DIIS.f90
===================================================================
--- src/Step_DIIS.f90	(revision 11)
+++ src/Step_DIIS.f90	(revision 12)
@@ -2,8 +2,43 @@
 !C  XPARAM = input parameter vector (Geometry).
 !C  Grad = input gradient vector.
       SUBROUTINE Step_DIIS(XP,XPARAM,GP,GRAD,HP,HEAT,Hess,NVAR,FRST)
-    !SUBROUTINE DIIS(XPARAM,STEP,GRAD,HP,HEAT,Hess,NVAR,FRST)
-!      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
+
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       IMPLICIT NONE
       integer, parameter :: KINT = kind(1)
       integer, parameter :: KREAL = kind(1.0d0)
Index: src/ConvertZmat_cart.f90
===================================================================
--- src/ConvertZmat_cart.f90	(revision 11)
+++ src/ConvertZmat_cart.f90	(revision 12)
@@ -4,6 +4,37 @@
 
         SUBROUTINE ConvertZmat_cart(iat,ind_zmat,val_zmat,x,y,z)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
         use Path_module, only : Nat, KINT, KREAL
 
         IMPLICIT NONE
Index: src/ReadInput_gaussian.f90
===================================================================
--- src/ReadInput_gaussian.f90	(revision 11)
+++ src/ReadInput_gaussian.f90	(revision 12)
@@ -2,6 +2,37 @@
 
 ! This routine reads an input template for Gaussian
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use VarTypes
   use Path_module
   use Io_module
Index: src/WriteList.f90
===================================================================
--- src/WriteList.f90	(revision 11)
+++ src/WriteList.f90	(revision 12)
@@ -1,4 +1,34 @@
  SUBROUTINE WriteList(Input,Unit)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
 ! This routine reads an input template for Siesta
 
Index: src/Step_GEDIIS_All.f90
===================================================================
--- src/Step_GEDIIS_All.f90	(revision 11)
+++ src/Step_GEDIIS_All.f90	(revision 12)
@@ -1,8 +1,44 @@
      ! Geom = input parameter vector (Geometry), Grad = input gradient vector, HEAT is Energy(Geom)
       SUBROUTINE Step_GEDIIS_All(NGeomF,IGeom,Step,Geom,Grad,HEAT,Hess,NCoord,allocation_flag,Tangent)
-      !SUBROUTINE Step_GEDIIS(Geom_new,Geom,Grad,HEAT,Hess,NCoord,FRST)
+
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
     use Io_module
-    use Path_module, only : Nom, Atome, OrderInv, indzmat, Pi, Nat, Vfree
+    use Path_module, only :  Vfree
       IMPLICIT NONE
 
       INTEGER(KINT) :: NGeomF,IGeom
Index: src/Header.f90
===================================================================
--- src/Header.f90	(revision 11)
+++ src/Header.f90	(revision 12)
@@ -1,6 +1,37 @@
       subroutine Header(String)
 ! This short subroutine print a header in a nice way
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
          IMPLICIT NONE
 
 
@@ -17,7 +48,7 @@
          CHARACTER(70) :: Head1,Sep
          CHARACTER(70) :: String2
          INTEGER :: LenS,Len1,Pos1
-         INTEGER :: I,N,Idx,PosB,PosE
+         INTEGER :: Idx,PosE
          LOGICAL :: Debug
 
 
Index: src/CalcRmsd.f90
===================================================================
--- src/CalcRmsd.f90	(revision 11)
+++ src/CalcRmsd.f90	(revision 12)
@@ -27,6 +27,36 @@
 ! License along with this library; if not, write to the Free Software
 ! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 !----------------------------------------------------------------------------
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
       subroutine CalcRmsd(Nat,x0,y0,z0, x2,y2,z2,U,rmsd,FRot,FAlign)
 !-----------------------------------------------------------------------
Index: src/ZmatBuild.f90
===================================================================
--- src/ZmatBuild.f90	(revision 11)
+++ src/ZmatBuild.f90	(revision 12)
@@ -14,13 +14,42 @@
 ! after the atom was added to ind_zmat for the three first atoms,
 ! but before for all others. Now, it starts at zero and it
 ! is increased before the atom is added to ind_zmat
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
-      use Path_module, only : Nat, NMaxL, max_Z, KINT, KREAL,Pi
+      use Path_module, only : Nat, NMaxL,  KINT, KREAL,Pi
       use Io_module
 
       IMPLICIT NONE
 
-
       INTEGER(KINT) :: Izm,I,IAf,IAt,IAt0,J,Jat
       INTEGER(KINT) :: n1, NMaxCF, NMinCP, VCF
       INTEGER(KINT) :: IAta,IAtd,IAtDh,IAti,IAtv,ICat
Index: src/Path.f90
===================================================================
--- src/Path.f90	(revision 11)
+++ src/Path.f90	(revision 12)
@@ -1,6 +1,39 @@
 ! This programs generates and optimizes a reaction path
 ! between at least two endpoints.
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
 !
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
+
+!
 ! It uses NAMELIST for input, see below !
 !
 ! v3.0
@@ -228,6 +261,14 @@
 ! AnaList: list of variables, if present and if AnaGeom=T then Opt'n Path
 ! will read it and print the values of the variable in a Path.dat file
 ! If AnaGeom is T but Analist is not given, then Path.dat just contains the energy. 
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+! 2014 March Opt'n Path v1.50 Released under AGPL
+! We used this release to clean the source files (and delete some unused files!)
+! The Chamfre reactive Force field is not public and has been removed:
+! if you want it, contact optnpath@gmail.com to see how to get it.
+! it was anyway an old version of CH4+Ni(111) with old parameters.
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
 PROGRAM PathOpt
 
@@ -280,7 +321,7 @@
 
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
-  LOGICAL :: Debug, Fini,Flag_Opt_Geom,TChk
+  LOGICAL :: Debug, Fini,Flag_Opt_Geom
 
 !  INTEGER(KINT), EXTERNAL :: Iargc
   INTEGER(KINT), EXTERNAL ::  ConvertNumAt
@@ -396,10 +437,15 @@
   ! 
   ! We print the Version info in file
   !
-  WRITE(*,'(1X,A)') "Opt'n Path v1.49 (c) PFL/PD 2007-2013"
+  WRITE(*,'(1X,A)') "Opt'n Path v1.50 (c) PFL/PD 2003-2014"
+  WRITE(*,'(1X,A)') "Contact: optnpath@gmail.com"
 
   ! We read the files  names
 !  SELECT CASE (iargc())
+
+
+
+
   SELECT CASE (command_argument_count())
   CASE (2)
      call getarg(1,FileIn)
@@ -422,227 +468,227 @@
 ! 4) edit file.txt to keep only the following lines, and to reformat a bit
 ! 5) awk '{print "WRITE(*,*) \"" $0 "\""}' file.txt > help
 ! 5) cut&paste help in Path.f90 ...
-   WRITE(*,*) " &path"
-   WRITE(*,*) " nat=3, ! Number of atoms"
-   WRITE(*,*) " ngeomi=3, ! Number of initial geometries"
-   WRITE(*,*) " ngeomf=12, !Number of geometries along the path"
-   WRITE(*,*) " OptReac=.T., ! Do you want to optimize the reactants ?"
-   WRITE(*,*) " OptProd=.T., ! Optimize the products"
-   WRITE(*,*) " coord='zmat', ! We use Z-matrix coordinates"
-   WRITE(*,*) " maxcyc=31, ! Max number of iterations"
-   WRITE(*,*) " IReparam=2,! re-distribution of points along the path every 2 iterations"
-   WRITE(*,*) " ISpline=50, ! Start using spline interpolation at iteration 50"
-   WRITE(*,*) " Hinv=.T. , ! Use inverse of the Hessian internally (default: T)"
-   WRITE(*,*) " MW=T, ! Works in Mass Weighted coordiante (default T)"
-   WRITE(*,*) " PathName='Path_HCN_zmat_test', ! Name of the file used for path outputs"
-   WRITE(*,*) " prog='gaussian',! we use G03 to get energy and gradients"
-   WRITE(*,*) " SMax=0.1 ! Displacement cannot exceed 0.1 atomic units (or mass weighted at. unit)"
-   WRITE(*,*) " /"
-   WRITE(*,*) "  3"
-   WRITE(*,*) " Energy : 0.04937364"
-   WRITE(*,*) " H 0.0000 0.0000 0.0340"
-   WRITE(*,*) " C 0.0000 0.0000 1.1030"
-   WRITE(*,*) " N 0.0000 0.0000 2.2631"
-   WRITE(*,*) "  3"
-   WRITE(*,*) " Energy : 0.04937364"
-   WRITE(*,*) " H 0.0000 1.1000 1.1030"
-   WRITE(*,*) " C 0.0000 0.0000 1.1030"
-   WRITE(*,*) " N 0.0000 0.0000 2.2631"
-   WRITE(*,*) "3"
-   WRITE(*,*) " CNH"
-   WRITE(*,*) "H 0.000000 0.000000 3.3"
-   WRITE(*,*) "C 0.000000 0.000000 1.1"
-   WRITE(*,*) "N 0.000000 0.000000 2.26"
-   WRITE(*,*) "%chk=Test"
-   WRITE(*,*) "#P AM1 FORCE"
-   WRITE(*,*) " HCN est bien"
-   WRITE(*,*) ""
-   WRITE(*,*) "0,1"
-   WRITE(*,*) "H 0.000000 0.000000 0.000000"
-   WRITE(*,*) "C 0.000000 0.000000 1.000"
-   WRITE(*,*) "N 0.000000 0.000000 3.00"
-   WRITE(*,*) ""
-   WRITE(*,*) "*******"
-   WRITE(*,*) "* Compulsory variables are:"
-   WRITE(*,*) "*******"
-   WRITE(*,*) "NGeomi: Number of geometries defining the Initial path"
-   WRITE(*,*) "NGeomf: Number of geometries defining the Final path"
-   WRITE(*,*) "Nat: Number of atoms"
-   WRITE(*,*) ""
-   WRITE(*,*) "*******"
-   WRITE(*,*) "* Other options:"
-   WRITE(*,*) "*******"
-   WRITE(*,*) "Input: String that indicates the type of the input geometries. Accepted values are: Cart (or"
-   WRITE(*,*) "    Xmol or Xyz), Vasp, Turbomole or Siesta."
-   WRITE(*,*) "Prog: string that indicates the program that will be used for energy and gradient calculations."
-   WRITE(*,*) "    Accepted values are: Gaussian, Mopac, Vasp, Turbomole, Siesta or Ext."
-   WRITE(*,*) ""
-   WRITE(*,*) ""
-   WRITE(*,*) "        - In case of a Gaussian calculations, input must be set to Cart. One example of a gaus-"
-   WRITE(*,*) "          sian input should be added at the end of the input file.See example file Test_HCN_zmat_g03.path."
-   WRITE(*,*) "        - In the case of a VASP calculation, if input is set to Cart, then the preamble of a"
-   WRITE(*,*) "          VASP calculation s"
-   WRITE(*,*) "        - Mopac: Examples using sequential call to MOPAC2009 to calculate the energies and"
-   WRITE(*,*) "          forces along the path. hould be added at the end of the input file. See example file"
-   WRITE(*,*) "          Test_VASP_cart.path. In the case of a VASP calculation, one should also give value"
-   WRITE(*,*) "          of the RunMode variable ."
-   WRITE(*,*) "        - In the case of a SIESTA calculation, an example of a Siesta input file should be added"
-   WRITE(*,*) "          at the end of the input file. See Test_Siesta.path."
-   WRITE(*,*) ""
-   WRITE(*,*) "RunMode: When running on a multi-processor machine, this indicates wether Opt'n Path"
-   WRITE(*,*) "    should calculate the energy and gradient of the whole path in parallel or not. User has"
-   WRITE(*,*) "    two options. One is to calculate the energy and gradient of each point sequentially. This"
-   WRITE(*,*) "    is usefull when running on one (or two) processors. In this case, RunMode should be put"
-   WRITE(*,*) "    to SERIAL.When running in parallel with 8 or more processors, one can use VASP to"
-   WRITE(*,*) "    calculate simultaneously the energies and gradients for all points, as in a normal NEB cal-"
-   WRITE(*,*) "    culation. In this case, RunMode must be set to PARA. For now, this is usefull only for VASP."
-   WRITE(*,*) ""
-   WRITE(*,*) "ProgExe: Name (with full path) of the executable to be used to get energies and gradients."
-   WRITE(*,*) "    For example, if VASP is used in parallel, one might have something like:"
-   WRITE(*,*) "    ProgExe='/usr/local/mpich/bin/mpirun -machinefile machine -np 8 ~/bin/VASP_46'."
-   WRITE(*,*) "    Another option that I use, is to put ProgExe='./run_vasp' and I put every option needed"
-   WRITE(*,*) "    to run VASP into the run_vasp file."
-   WRITE(*,*) "EReac: (REAL) By default, Opt'n Path does not compute the energy of the reactants and"
-   WRITE(*,*) "    products. This thus indicates the reactants energy to Opt'n Path to have better plots at"
-   WRITE(*,*) "    the end."
-   WRITE(*,*) "EProd: (REAL) By default, Opt'n Path does not compute the energy of the reactants and"
-   WRITE(*,*) "    products. This thus indicates the products energy to Opt'n Path to have better plots."
-   WRITE(*,*) ""
-   WRITE(*,*) "PathName: Prefix used to save the path. Default is Path."
-   WRITE(*,*) "Poscar: string that will be used as the prefix for the different POSCAR files in a VASP calcu-"
-   WRITE(*,*) "    lations. Usefull only if PathOnly=.TRUE., not used for internal calculations."
-   WRITE(*,*) "CalcName: Prefix for the files used for the energy and gradient calculations"
-   WRITE(*,*) ""
-   WRITE(*,*) "ISuffix: Suffix for the input file used for energy and gradient calculations. The full inputfile"
-   WRITE(*,*) "    name will thus be CalcName.ISuffix."
-   WRITE(*,*) "OSuffix: Suffix for the output file used for energy and gradient calculations. The full outputfile"
-   WRITE(*,*) "    name will thus be CalcName.OSuffix."
-   WRITE(*,*) ""
-   WRITE(*,*) "IGeomRef: Index of the geometry used to construct the internal coordinates. Valid only for"
-   WRITE(*,*) "     Coord=Zmat, Hybrid or Mixed."
-   WRITE(*,*) "Fact: REAL used to define if two atoms are linked. If d(A,B) =< fact* (rcov(A) + rcov(B)),"
-   WRITE(*,*) "     then A and B are considered Linked."
-   WRITE(*,*) ""
-   WRITE(*,*) "debugFile: Name of the file that indicates which subroutine should print debug info."
-   WRITE(*,*) "Coord: System of coordinates to use. Possible choices are:"
-   WRITE(*,*) "        - CART (or Xyz): works in cartesian"
-   WRITE(*,*) "        - Zmat: works in internal coordinates (Zmat)"
-   WRITE(*,*) "        - Mixed: frozen atoms, as well as atoms defined by the 'cart' array(see below) are"
-   WRITE(*,*) "          describe in CARTESIAN, whereas the others are described in Zmat"
-   WRITE(*,*) "        - Baker: use of Baker coordinates, also called delocalized internal coordinates"
-   WRITE(*,*) "        - Hybrid: geometries are described in zmat, but the gradient are used in cartesian"
-   WRITE(*,*) "Step_method: method to compute the step for optimizing a geometry; choices are:"
-   WRITE(*,*) ""
-   WRITE(*,*) "        - RFO: Rational function optimization"
-   WRITE(*,*) "        - GDIIS: Geometry optimization using direct inversion in the iterative supspace"
-   WRITE(*,*) "HUpdate: method to update the hessian. By default, it is Murtagh-Sargent Except for geom-"
-   WRITE(*,*) "     etry optimization where it is BFGS."
-   WRITE(*,*) "MaxCyc: maximum number of iterations for the path optimization"
-   WRITE(*,*) ""
-   WRITE(*,*) "Smax: Maximum length of a step during path optimization"
-   WRITE(*,*) "SThresh: Step Threshold to consider that the path is stationary"
-   WRITE(*,*) "GThresh: Gradient Threshold to consider that the path is stationary, only orthogonal part is"
-   WRITE(*,*) "     taken"
-   WRITE(*,*) ""
-   WRITE(*,*) "FTan: We moving the path, this gives the proportion of the displacement tangent to the path"
-   WRITE(*,*) "     that is kept. FTan=1. corresponds to the full displacement, whereas FTan=0. gives a"
-   WRITE(*,*) "     displacement orthogonal to the path."
-   WRITE(*,*) "IReparam: The path is not reparameterised at each iteration. This gives the frequency of"
-   WRITE(*,*) "     reparameterization."
-   WRITE(*,*) "IReparamT: When the path is not reparameterised at each iteration, this gives the frequency"
-   WRITE(*,*) "     of reparameterization of the tangents."
-   WRITE(*,*) ""
-   WRITE(*,*) "ISpline: By default, a linear interpolation is used to generate the path. This option indicates"
-   WRITE(*,*) "     the first step where spline interpolation is used."
-   WRITE(*,*) "BoxTol: Real between 0. and 1. When doing periodic calculations, it might happen that an"
-   WRITE(*,*) "     atom moves out of the unit cell. Path detects this by comparing the displacement to"
-   WRITE(*,*) "     boxtol: if an atom moves by more than Boxtol, then it is moved back into the unit cell."
-   WRITE(*,*) "     Default value: 0.5."
-   WRITE(*,*) "FrozTol: (Real) This indicates the threshold to determine wether an atom moves between two"
-   WRITE(*,*) "     images. Default is 1e-4."
-   WRITE(*,*) ""
-   WRITE(*,*) "OptGeom: This INTEGER indicates the index of the geometry you want to optimize. If"
-   WRITE(*,*) "    OptGeom is set, then Opt'n Path performs a geometry optimization instead of a path"
-   WRITE(*,*) "    interpolation."
-   WRITE(*,*) "GeomFile: Name of the file to print the geometries and their energy during a geometry opti-"
-   WRITE(*,*) "    mization. If this variable is not given then nothing is printed."
-   WRITE(*,*) "AnaFile: Name of the file to print the values of the geometrical parameters that are monitored"
-   WRITE(*,*) "    if AnaGeom=.TRUE.. Default is PathName.dat"
-   WRITE(*,*) ""
-   WRITE(*,*) "GplotFile: Name of the gnuplot file to plot the evolution of the geometrical parameters that"
-   WRITE(*,*) "    are monitored if AnaGeom=.TRUE.. Default is PathName.gplot"
-   WRITE(*,*) ""
-   WRITE(*,*) "*******"
-   WRITE(*,*) "* Arrays:"
-   WRITE(*,*) "*******"
-   WRITE(*,*) ""
-   WRITE(*,*) "Rcov: Array containing the covalent radii of the first 86 elements. You can modify it using,"
-   WRITE(*,*) "    rcov(6)=0.8."
-   WRITE(*,*) "Mass: Array containing the atomic mass of the first 86 elements."
-   WRITE(*,*) "AtTypes: Name of the different atoms used in a VASP calculations. If not given, Opt'n Path will"
-   WRITE(*,*) "    read the POTCAR file."
-   WRITE(*,*) ""
-   WRITE(*,*) "*******"
-   WRITE(*,*) "* Flags:"
-   WRITE(*,*) "*******"
-   WRITE(*,*) ""
-   WRITE(*,*) "MW: Flag. True if one wants to work in Mass Weighted coordinates. Default=.TRUE."
-   WRITE(*,*) "Renum: Flag. True if one wants to reoder the atoms in the initial order. default is .TRUE."
-   WRITE(*,*) "    unless for Coord equals CART."
-   WRITE(*,*) ""
-   WRITE(*,*) "OptProd: True if one wants to optimize the geometry of the products."
-   WRITE(*,*) "OptReac: True if one wants to optimize the geometry of the reactants."
-   WRITE(*,*) "CalcEProd: if TRUE the product energy will be computed. Default is FALSE. Not Compatible"
-   WRITE(*,*) "    with RunMode=Para."
-   WRITE(*,*) "CalcEReac: if TRUE the reactants energy will be computed. Default is FALSE. Not Compat-"
-   WRITE(*,*) "    ible with RunMode=Para."
-   WRITE(*,*) ""
-   WRITE(*,*) "PathOnly: TRUE if one wants to generate the initial path, and stops."
-   WRITE(*,*) "Align: If .FALSE., successive geometries along the path are not aligned on each other before"
-   WRITE(*,*) "    path interpolation. Default is .TRUE. if there are 4 atoms or more."
-   WRITE(*,*) "Hinv: if True, then Hessian inversed is used."
-   WRITE(*,*) "IniHup: if True, then Hessian inverse is extrapolated using the initial path calculations."
-   WRITE(*,*) ""
-   WRITE(*,*) "HupNeighbour: if True, then Hessian inverse is extrapolated using the neighbouring points of"
-   WRITE(*,*) "    the path."
-   WRITE(*,*) "FFrozen: True if one wants to freeze the positions of some atoms. If True, a &frozenlist"
-   WRITE(*,*) "    namelist containing the list of frozen atoms must be given. If VASP is used, and frozen is"
-   WRITE(*,*) "    not given here, the program will use the F flags of the input geometry"
-   WRITE(*,*) "FCart: True if one wants to describe some atoms using cartesian coordinates. *** Only used in"
-   WRITE(*,*) "    'mixed' calculations. *** If True, a &cartlist namelist containing the list of cart atoms"
-   WRITE(*,*) "    must be given. By default, only frozen atoms are described in cartesian coordinates."
-   WRITE(*,*) ""
-   WRITE(*,*) "Autocart: True if you want to let the program choosing the cartesian atoms."
-   WRITE(*,*) "VMD: TRUE if you want to use VMD to look at the Path. Used only for VASP for now."
-   WRITE(*,*) ""
-   WRITE(*,*) "WriteVASP: TRUE if you want to print the images coordinates in POSCAR files. See also"
-   WRITE(*,*) "      the POSCAR option. This can be used only if prog or input=VASP."
-   WRITE(*,*) "AnaGeom: If TRUE, Opt'n Path will create a file .dat for geometries analysis. If True, "
-   WRITE(*,*) "Opt'n Path will look for the AnaList namelist after the Path Namelist."
-   WRITE(*,*) "DynMaxStep: if TRUE, the maximum allowed step is updated at each step, for each geometry."
-   WRITE(*,*) "      If energy goes up, Smax = Smax*0.8, if not Smax = Smax*1.2. It is ensured that the"
-   WRITE(*,*) "      dynamical Smax is within [0.5*SMax_0 ,2*Smax_0 ]."
-   WRITE(*,*) ""
-   WRITE(*,*) "*******"
-   WRITE(*,*) "* Additional namelists:"
-   WRITE(*,*) "*******"
-   WRITE(*,*) ""
-   WRITE(*,*) "&cartlist list= ... &end This gives the list of atoms that are described using cartesian coor-"
-   WRITE(*,*) "      dinates. Read only if FCart=.TRUE.. To indicate an atom range, from 1 to 5 for example,"
-   WRITE(*,*) "      one can put 1 -5 in the list. For example:"
-   WRITE(*,*) "      &cartlist list = 1 2 6 12 -20 &end"
-   WRITE(*,*) "      will described atoms 1, 2, 6, 12, 13, 14, 15, 16, 17, 18, 19 and 20 in cartesian."
-   WRITE(*,*) "&Frozenlist list= ... &end This gives the list of atoms that are frozen during optimization."
-   WRITE(*,*) "      Read only if FFrozen=.TRUE.. To indicate an atom range, from 1 to 5 for example, one"
-   WRITE(*,*) "      can put 1 -5 in the list."
-   WRITE(*,*) ""
-   WRITE(*,*) "&Analist nb= ... &end list of variables for geometry analysis. If present and if Ana-"
-   WRITE(*,*) "      Geom=T then Opt'n Path will read it and print the values of the variable in a .dat file If"
-   WRITE(*,*) "      AnaGeom is T but Analist is not given, then Path.dat just contains the energy. Analist"
-   WRITE(*,*) "      contains the number of variables to monitor: Nb, and is followed by the description of the"
-   WRITE(*,*) "      variables among: b(ond) At1 At2 a(ngle) At1 At2 At3 d(ihedral) At1 At2 At3 At4 c NbAt"
-   WRITE(*,*) "      At1 At2 At3 At4 At5... to create a center of mass. The centers of mass are added at the"
-   WRITE(*,*) "      end of the real atoms of the system."
+        WRITE(*,*) " &path"
+        WRITE(*,*) " nat=3, ! Number of atoms"
+        WRITE(*,*) " ngeomi=3, ! Number of initial geometries"
+        WRITE(*,*) " ngeomf=12, !Number of geometries along the path"
+        WRITE(*,*) " OptReac=.T., ! Do you want to optimize the reactants ?"
+        WRITE(*,*) " OptProd=.T., ! Optimize the products"
+        WRITE(*,*) " coord='zmat', ! We use Z-matrix coordinates"
+        WRITE(*,*) " maxcyc=31, ! Max number of iterations"
+        WRITE(*,*) " IReparam=2,! re-distribution of points along the path every 2 iterations"
+        WRITE(*,*) " ISpline=50, ! Start using spline interpolation at iteration 50"
+        WRITE(*,*) " Hinv=.T. , ! Use inverse of the Hessian internally (default: T)"
+        WRITE(*,*) " MW=T, ! Works in Mass Weighted coordiante (default T)"
+        WRITE(*,*) " PathName='Path_HCN_zmat_test', ! Name of the file used for path outputs"
+        WRITE(*,*) " prog='gaussian',! we use G03 to get energy and gradients"
+        WRITE(*,*) " SMax=0.1 ! Displacement cannot exceed 0.1 atomic units (or mass weighted at. unit)"
+        WRITE(*,*) " /"
+        WRITE(*,*) "  3"
+        WRITE(*,*) " Energy : 0.04937364"
+        WRITE(*,*) " H 0.0000 0.0000 0.0340"
+        WRITE(*,*) " C 0.0000 0.0000 1.1030"
+        WRITE(*,*) " N 0.0000 0.0000 2.2631"
+        WRITE(*,*) "  3"
+        WRITE(*,*) " Energy : 0.04937364"
+        WRITE(*,*) " H 0.0000 1.1000 1.1030"
+        WRITE(*,*) " C 0.0000 0.0000 1.1030"
+        WRITE(*,*) " N 0.0000 0.0000 2.2631"
+        WRITE(*,*) "3"
+        WRITE(*,*) " CNH"
+        WRITE(*,*) "H 0.000000 0.000000 3.3"
+        WRITE(*,*) "C 0.000000 0.000000 1.1"
+        WRITE(*,*) "N 0.000000 0.000000 2.26"
+        WRITE(*,*) "%chk=Test"
+        WRITE(*,*) "#P AM1 FORCE"
+        WRITE(*,*) " HCN est bien"
+        WRITE(*,*) ""
+        WRITE(*,*) "0,1"
+        WRITE(*,*) "H 0.000000 0.000000 0.000000"
+        WRITE(*,*) "C 0.000000 0.000000 1.000"
+        WRITE(*,*) "N 0.000000 0.000000 3.00"
+        WRITE(*,*) ""
+        WRITE(*,*) "*******"
+        WRITE(*,*) "* Compulsory variables are:"
+        WRITE(*,*) "*******"
+        WRITE(*,*) "NGeomi: Number of geometries defining the Initial path"
+        WRITE(*,*) "NGeomf: Number of geometries defining the Final path"
+        WRITE(*,*) "Nat: Number of atoms"
+        WRITE(*,*) ""
+        WRITE(*,*) "*******"
+        WRITE(*,*) "* Other options:"
+        WRITE(*,*) "*******"
+        WRITE(*,*) "Input: String that indicates the type of the input geometries. Accepted values are: Cart (or"
+        WRITE(*,*) "    Xmol or Xyz), Vasp, Turbomole or Siesta."
+        WRITE(*,*) "Prog: string that indicates the program that will be used for energy and gradient calculations."
+        WRITE(*,*) "    Accepted values are: Gaussian, Mopac, Vasp, Turbomole, Siesta or Ext."
+        WRITE(*,*) ""
+        WRITE(*,*) ""
+        WRITE(*,*) "        - In case of a Gaussian calculations, input must be set to Cart. One example of a gaus-"
+        WRITE(*,*) "          sian input should be added at the end of the input file.See example file Test_HCN_zmat_g03.path."
+        WRITE(*,*) "        - In the case of a VASP calculation, if input is set to Cart, then the preamble of a"
+        WRITE(*,*) "          VASP calculation s"
+        WRITE(*,*) "        - Mopac: Examples using sequential call to MOPAC2009 to calculate the energies and"
+        WRITE(*,*) "          forces along the path. hould be added at the end of the input file. See example file"
+        WRITE(*,*) "          Test_VASP_cart.path. In the case of a VASP calculation, one should also give value"
+        WRITE(*,*) "          of the RunMode variable ."
+        WRITE(*,*) "        - In the case of a SIESTA calculation, an example of a Siesta input file should be added"
+        WRITE(*,*) "          at the end of the input file. See Test_Siesta.path."
+        WRITE(*,*) ""
+        WRITE(*,*) "RunMode: When running on a multi-processor machine, this indicates wether Opt'n Path"
+        WRITE(*,*) "    should calculate the energy and gradient of the whole path in parallel or not. User has"
+        WRITE(*,*) "    two options. One is to calculate the energy and gradient of each point sequentially. This"
+        WRITE(*,*) "    is usefull when running on one (or two) processors. In this case, RunMode should be put"
+        WRITE(*,*) "    to SERIAL.When running in parallel with 8 or more processors, one can use VASP to"
+        WRITE(*,*) "    calculate simultaneously the energies and gradients for all points, as in a normal NEB cal-"
+        WRITE(*,*) "    culation. In this case, RunMode must be set to PARA. For now, this is usefull only for VASP."
+        WRITE(*,*) ""
+        WRITE(*,*) "ProgExe: Name (with full path) of the executable to be used to get energies and gradients."
+        WRITE(*,*) "    For example, if VASP is used in parallel, one might have something like:"
+        WRITE(*,*) "    ProgExe='/usr/local/mpich/bin/mpirun -machinefile machine -np 8 ~/bin/VASP_46'."
+        WRITE(*,*) "    Another option that I use, is to put ProgExe='./run_vasp' and I put every option needed"
+        WRITE(*,*) "    to run VASP into the run_vasp file."
+        WRITE(*,*) "EReac: (REAL) By default, Opt'n Path does not compute the energy of the reactants and"
+        WRITE(*,*) "    products. This thus indicates the reactants energy to Opt'n Path to have better plots at"
+        WRITE(*,*) "    the end."
+        WRITE(*,*) "EProd: (REAL) By default, Opt'n Path does not compute the energy of the reactants and"
+        WRITE(*,*) "    products. This thus indicates the products energy to Opt'n Path to have better plots."
+        WRITE(*,*) ""
+        WRITE(*,*) "PathName: Prefix used to save the path. Default is Path."
+        WRITE(*,*) "Poscar: string that will be used as the prefix for the different POSCAR files in a VASP calcu-"
+        WRITE(*,*) "    lations. Usefull only if PathOnly=.TRUE., not used for internal calculations."
+        WRITE(*,*) "CalcName: Prefix for the files used for the energy and gradient calculations"
+        WRITE(*,*) ""
+        WRITE(*,*) "ISuffix: Suffix for the input file used for energy and gradient calculations. The full inputfile"
+        WRITE(*,*) "    name will thus be CalcName.ISuffix."
+        WRITE(*,*) "OSuffix: Suffix for the output file used for energy and gradient calculations. The full outputfile"
+        WRITE(*,*) "    name will thus be CalcName.OSuffix."
+        WRITE(*,*) ""
+        WRITE(*,*) "IGeomRef: Index of the geometry used to construct the internal coordinates. Valid only for"
+        WRITE(*,*) "     Coord=Zmat, Hybrid or Mixed."
+        WRITE(*,*) "Fact: REAL used to define if two atoms are linked. If d(A,B) =< fact* (rcov(A) + rcov(B)),"
+        WRITE(*,*) "     then A and B are considered Linked."
+        WRITE(*,*) ""
+        WRITE(*,*) "debugFile: Name of the file that indicates which subroutine should print debug info."
+        WRITE(*,*) "Coord: System of coordinates to use. Possible choices are:"
+        WRITE(*,*) "        - CART (or Xyz): works in cartesian"
+        WRITE(*,*) "        - Zmat: works in internal coordinates (Zmat)"
+        WRITE(*,*) "        - Mixed: frozen atoms, as well as atoms defined by the 'cart' array(see below) are"
+        WRITE(*,*) "          describe in CARTESIAN, whereas the others are described in Zmat"
+        WRITE(*,*) "        - Baker: use of Baker coordinates, also called delocalized internal coordinates"
+        WRITE(*,*) "        - Hybrid: geometries are described in zmat, but the gradient are used in cartesian"
+        WRITE(*,*) "Step_method: method to compute the step for optimizing a geometry; choices are:"
+        WRITE(*,*) ""
+        WRITE(*,*) "        - RFO: Rational function optimization"
+        WRITE(*,*) "        - GDIIS: Geometry optimization using direct inversion in the iterative supspace"
+        WRITE(*,*) "HUpdate: method to update the hessian. By default, it is Murtagh-Sargent Except for geom-"
+        WRITE(*,*) "     etry optimization where it is BFGS."
+        WRITE(*,*) "MaxCyc: maximum number of iterations for the path optimization"
+        WRITE(*,*) ""
+        WRITE(*,*) "Smax: Maximum length of a step during path optimization"
+        WRITE(*,*) "SThresh: Step Threshold to consider that the path is stationary"
+        WRITE(*,*) "GThresh: Gradient Threshold to consider that the path is stationary, only orthogonal part is"
+        WRITE(*,*) "     taken"
+        WRITE(*,*) ""
+        WRITE(*,*) "FTan: We moving the path, this gives the proportion of the displacement tangent to the path"
+        WRITE(*,*) "     that is kept. FTan=1. corresponds to the full displacement, whereas FTan=0. gives a"
+        WRITE(*,*) "     displacement orthogonal to the path."
+        WRITE(*,*) "IReparam: The path is not reparameterised at each iteration. This gives the frequency of"
+        WRITE(*,*) "     reparameterization."
+        WRITE(*,*) "IReparamT: When the path is not reparameterised at each iteration, this gives the frequency"
+        WRITE(*,*) "     of reparameterization of the tangents."
+        WRITE(*,*) ""
+        WRITE(*,*) "ISpline: By default, a linear interpolation is used to generate the path. This option indicates"
+        WRITE(*,*) "     the first step where spline interpolation is used."
+        WRITE(*,*) "BoxTol: Real between 0. and 1. When doing periodic calculations, it might happen that an"
+        WRITE(*,*) "     atom moves out of the unit cell. Path detects this by comparing the displacement to"
+        WRITE(*,*) "     boxtol: if an atom moves by more than Boxtol, then it is moved back into the unit cell."
+        WRITE(*,*) "     Default value: 0.5."
+        WRITE(*,*) "FrozTol: (Real) This indicates the threshold to determine wether an atom moves between two"
+        WRITE(*,*) "     images. Default is 1e-4."
+        WRITE(*,*) ""
+        WRITE(*,*) "OptGeom: This INTEGER indicates the index of the geometry you want to optimize. If"
+        WRITE(*,*) "    OptGeom is set, then Opt'n Path performs a geometry optimization instead of a path"
+        WRITE(*,*) "    interpolation."
+        WRITE(*,*) "GeomFile: Name of the file to print the geometries and their energy during a geometry opti-"
+        WRITE(*,*) "    mization. If this variable is not given then nothing is printed."
+        WRITE(*,*) "AnaFile: Name of the file to print the values of the geometrical parameters that are monitored"
+        WRITE(*,*) "    if AnaGeom=.TRUE.. Default is PathName.dat"
+        WRITE(*,*) ""
+        WRITE(*,*) "GplotFile: Name of the gnuplot file to plot the evolution of the geometrical parameters that"
+        WRITE(*,*) "    are monitored if AnaGeom=.TRUE.. Default is PathName.gplot"
+        WRITE(*,*) ""
+        WRITE(*,*) "*******"
+        WRITE(*,*) "* Arrays:"
+        WRITE(*,*) "*******"
+        WRITE(*,*) ""
+        WRITE(*,*) "Rcov: Array containing the covalent radii of the first 86 elements. You can modify it using,"
+        WRITE(*,*) "    rcov(6)=0.8."
+        WRITE(*,*) "Mass: Array containing the atomic mass of the first 86 elements."
+        WRITE(*,*) "AtTypes: Name of the different atoms used in a VASP calculations. If not given, Opt'n Path will"
+        WRITE(*,*) "    read the POTCAR file."
+        WRITE(*,*) ""
+        WRITE(*,*) "*******"
+        WRITE(*,*) "* Flags:"
+        WRITE(*,*) "*******"
+        WRITE(*,*) ""
+        WRITE(*,*) "MW: Flag. True if one wants to work in Mass Weighted coordinates. Default=.TRUE."
+        WRITE(*,*) "Renum: Flag. True if one wants to reoder the atoms in the initial order. default is .TRUE."
+        WRITE(*,*) "    unless for Coord equals CART."
+        WRITE(*,*) ""
+        WRITE(*,*) "OptProd: True if one wants to optimize the geometry of the products."
+        WRITE(*,*) "OptReac: True if one wants to optimize the geometry of the reactants."
+        WRITE(*,*) "CalcEProd: if TRUE the product energy will be computed. Default is FALSE. Not Compatible"
+        WRITE(*,*) "    with RunMode=Para."
+        WRITE(*,*) "CalcEReac: if TRUE the reactants energy will be computed. Default is FALSE. Not Compat-"
+        WRITE(*,*) "    ible with RunMode=Para."
+        WRITE(*,*) ""
+        WRITE(*,*) "PathOnly: TRUE if one wants to generate the initial path, and stops."
+        WRITE(*,*) "Align: If .FALSE., successive geometries along the path are not aligned on each other before"
+        WRITE(*,*) "    path interpolation. Default is .TRUE. if there are 4 atoms or more."
+        WRITE(*,*) "Hinv: if True, then Hessian inversed is used."
+        WRITE(*,*) "IniHup: if True, then Hessian inverse is extrapolated using the initial path calculations."
+        WRITE(*,*) ""
+        WRITE(*,*) "HupNeighbour: if True, then Hessian inverse is extrapolated using the neighbouring points of"
+        WRITE(*,*) "    the path."
+        WRITE(*,*) "FFrozen: True if one wants to freeze the positions of some atoms. If True, a &frozenlist"
+        WRITE(*,*) "    namelist containing the list of frozen atoms must be given. If VASP is used, and frozen is"
+        WRITE(*,*) "    not given here, the program will use the F flags of the input geometry"
+        WRITE(*,*) "FCart: True if one wants to describe some atoms using cartesian coordinates. *** Only used in"
+        WRITE(*,*) "    'mixed' calculations. *** If True, a &cartlist namelist containing the list of cart atoms"
+        WRITE(*,*) "    must be given. By default, only frozen atoms are described in cartesian coordinates."
+        WRITE(*,*) ""
+        WRITE(*,*) "Autocart: True if you want to let the program choosing the cartesian atoms."
+        WRITE(*,*) "VMD: TRUE if you want to use VMD to look at the Path. Used only for VASP for now."
+        WRITE(*,*) ""
+        WRITE(*,*) "WriteVASP: TRUE if you want to print the images coordinates in POSCAR files. See also"
+        WRITE(*,*) "      the POSCAR option. This can be used only if prog or input=VASP."
+        WRITE(*,*) "AnaGeom: If TRUE, Opt'n Path will create a file .dat for geometries analysis. If True, "
+        WRITE(*,*) "Opt'n Path will look for the AnaList namelist after the Path Namelist."
+        WRITE(*,*) "DynMaxStep: if TRUE, the maximum allowed step is updated at each step, for each geometry."
+        WRITE(*,*) "      If energy goes up, Smax = Smax*0.8, if not Smax = Smax*1.2. It is ensured that the"
+        WRITE(*,*) "      dynamical Smax is within [0.5*SMax_0 ,2*Smax_0 ]."
+        WRITE(*,*) ""
+        WRITE(*,*) "*******"
+        WRITE(*,*) "* Additional namelists:"
+        WRITE(*,*) "*******"
+        WRITE(*,*) ""
+        WRITE(*,*) "&cartlist list= ... &end This gives the list of atoms that are described using cartesian coor-"
+        WRITE(*,*) "      dinates. Read only if FCart=.TRUE.. To indicate an atom range, from 1 to 5 for example,"
+        WRITE(*,*) "      one can put 1 -5 in the list. For example:"
+        WRITE(*,*) "      &cartlist list = 1 2 6 12 -20 &end"
+        WRITE(*,*) "      will described atoms 1, 2, 6, 12, 13, 14, 15, 16, 17, 18, 19 and 20 in cartesian."
+        WRITE(*,*) "&Frozenlist list= ... &end This gives the list of atoms that are frozen during optimization."
+        WRITE(*,*) "      Read only if FFrozen=.TRUE.. To indicate an atom range, from 1 to 5 for example, one"
+        WRITE(*,*) "      can put 1 -5 in the list."
+        WRITE(*,*) ""
+        WRITE(*,*) "&Analist nb= ... &end list of variables for geometry analysis. If present and if Ana-"
+        WRITE(*,*) "      Geom=T then Opt'n Path will read it and print the values of the variable in a .dat file If"
+        WRITE(*,*) "      AnaGeom is T but Analist is not given, then Path.dat just contains the energy. Analist"
+        WRITE(*,*) "      contains the number of variables to monitor: Nb, and is followed by the description of the"
+        WRITE(*,*) "      variables among: b(ond) At1 At2 a(ngle) At1 At2 At3 d(ihedral) At1 At2 At3 At4 c NbAt"
+        WRITE(*,*) "      At1 At2 At3 At4 At5... to create a center of mass. The centers of mass are added at the"
+        WRITE(*,*) "      end of the real atoms of the system."
 !!!!!!!!!! end of included file
         WRITE(*,*) ""
         STOP
@@ -654,8 +700,10 @@
      IOIN=5
      IOOUT=6
   END SELECT
+  
+! We set the file delimiter (system dependent)
+  Call Set_FileDelim
 
-
   ! We initiliaze variables
   Pi=dacos(-1.0d0)
   Nat=1
@@ -784,7 +832,11 @@
   END IF
 
   
-  if (Prog.EQ.'TEST2') Prog="CHAMFRE"
+  if (Prog.EQ.'TEST2'.OR.Prog.EQ.'CHAMFRE') Then
+     WRITE(IOOUT,*) 'The CHAMFRE Reactive Force Field is not public.'
+     WRITE(IOOUT,*) 'Contact optnpath@gmail.com to get it.'
+     STOP
+  END IF
   if (Prog.EQ.'2D') Prog="TEST2D"
   if (Prog.EQ.'TEST3') Prog="LEPS"
 
Index: src/Add2indzmat.f90
===================================================================
--- src/Add2indzmat.f90	(revision 11)
+++ src/Add2indzmat.f90	(revision 12)
@@ -5,6 +5,38 @@
   ! and if so, it describes n1 as n1 n2 n4 n3 instead of n1 n2 n3 n4.
   ! As n2 n3 n4 are not aligned, this is sufficient to ensure that the description
   ! of n1 is ok.
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   IMPLICIT NONE
 
   INTEGER, PARAMETER :: KINT=KIND(1)
Index: src/egrad_ext.f90
===================================================================
--- src/egrad_ext.f90	(revision 11)
+++ src/egrad_ext.f90	(revision 12)
@@ -3,7 +3,38 @@
   ! This routines calculates the energy and the gradient of 
   ! a molecule, using an external code
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
+
   use Path_module, only : Nat, renum,Order,OrderInv,AtName, Coord,ProgExe
   use Io_module
 
Index: src/Mixed2cart.f90
===================================================================
--- src/Mixed2cart.f90	(revision 11)
+++ src/Mixed2cart.f90	(revision 12)
@@ -1,5 +1,36 @@
 SUBROUTINE Mixed2Cart(Nat,IndZmat,IntCoord,XyzCoord)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module, ONLY : Pi,NCart,NCoord
 
   IMPLICIT NONE
Index: src/NoString.f90
===================================================================
--- src/NoString.f90	(revision 11)
+++ src/NoString.f90	(revision 12)
@@ -5,6 +5,37 @@
 ! example:
 ! Progexe='./siesta', -> Progexe=,
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
         use VarTypes
 
         IMPLICIT NONE
Index: src/egrad_turbomole.f90
===================================================================
--- src/egrad_turbomole.f90	(revision 11)
+++ src/egrad_turbomole.f90	(revision 12)
@@ -3,6 +3,37 @@
   ! This routines calculates the energy and the gradient of 
   ! a molecule, using TurboMole 
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : Nat, AtName, unit,ProgExe,renum,order,OrderInv
   use Io_module
 
Index: src/CalcCnct.f90
===================================================================
--- src/CalcCnct.f90	(revision 11)
+++ src/CalcCnct.f90	(revision 12)
@@ -30,7 +30,38 @@
 
 SUBROUTINE CalcCnct(na,atome,x,y,z,LIAISONS,r_cov,fact)
 
-  use Path_module, only : NMaxL, max_Z,Nom,Prog, KINT, KREAL, FPBC, &
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
+  use Path_module, only : NMaxL, max_Z,Nom, KINT, KREAL, FPBC, &
        kaBeg,kaEnd,kbBeg,kbEnd,kcBeg,kcEnd
   
   IMPLICIT NONE
Index: src/egrad_gaussian.f90
===================================================================
--- src/egrad_gaussian.f90	(revision 11)
+++ src/egrad_gaussian.f90	(revision 12)
@@ -3,6 +3,37 @@
   ! This routines calculates the energy and the gradient of 
   ! a molecule, using Gaussian 
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : Nat, renum,Order,OrderInv,AtName, Coord,unit,ProgExe
   use Io_module
 
Index: src/ReadGeom_vasp.f90
===================================================================
--- src/ReadGeom_vasp.f90	(revision 11)
+++ src/ReadGeom_vasp.f90	(revision 12)
@@ -1,12 +1,43 @@
 SUBROUTINE ReadGeom_vasp
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module
   Use Io_module
 
   IMPLICIT NONE
 
 
-  CHARACTER(132) :: LineTmp,Line
+  CHARACTER(LCHARS) :: LineTmp,Line
 
   INTEGER(KINT), ALLOCATABLE :: NbAtType(:) !na
   INTEGER(KINT) :: NbType, NbTypeUser
@@ -55,7 +86,26 @@
      Lat_c=Lat_c*Vasp_param
 
      ALLOCATE(NbAtType(nat))
+! PFL 2013.12.07 ->
+! From VASP 5.3, POSCAR can have an additional line containing
+! the names of the atoms
+     VASP5=.FALSE.
      READ(IOIN,'(A)') Vasp_types
+     LineTMp=AdjustL(Trim(Vasp_types))
+     if (ICHAR(LineTmp(1:1))<48) THEN
+        Call Warning("ReadGeom_Vasp","Illegal caracter found in reading Vasp types")
+        STOP
+     END IF
+     If (ICHAR(LineTmp(1:1))>58) THEN
+! we have a letter, the user has surely provided the names.
+! We follow VASP and do not use them.
+        VASP5=.TRUE.
+        Vasp_types_user=Vasp_types
+! we read the usual "number of atom by type" line
+        READ(IOIN,'(A)') Vasp_types
+     END IF
+! <- PFL 2013.12.07     
+
      ! First, how many different types ?
      NbAtType=0
      READ(Vasp_types,*,END=999) NbAtType
@@ -122,9 +172,19 @@
      DEALLOCATE(NbAtType)
 
      NbTypes=NbType
-
+! PFL 2013.12.07 ->
+! A comment: in fact, this line might just not be 'Selective Dynamics'
      READ(IOIN,'(A)') Vasp_comment
-     READ(IOIN,'(A)') Vasp_direct
+     LineTMp=AdjustL(Trim(Vasp_comment))
+     Call upcase(LineTMP)
+     if (LineTMP(1:1)=="S") THEN
+        Vasp_SelectD=.TRUE.
+        READ(IOIN,'(A)') Vasp_direct
+     ELSE
+        Vasp_SelectD=.FALSE.
+        Vasp_direct=Vasp_comment
+     END IF
+! <- PFL 2013.12.07
 
      V_direct=adjustl(Vasp_direct)
      Call upcase(V_direct)
@@ -132,13 +192,34 @@
      if (debug) WRITE(*,*) "V_direct=",Trim(V_Direct)
 
      DO I=1,Nat
-        READ(IOIN,*) XyzGeomI(IGeom,1:3,I),FFF(1:3,I)
+        IF (Vasp_SelectD) THEN
+           READ(IOIN,*) XyzGeomI(IGeom,1:3,I),FFF(1:3,I)
            DO J=1,3
               FFF(J,I)=AdjustL(FFF(J,I))
               FFFl(j,i)=(FFF(j,i)(1:1).EQ.'T').OR.(FFF(j,i)(1:1).EQ.'t')
            END DO
+        ELSE
+           READ(IOIN,*) XyzGeomI(IGeom,1:3,I)
+           FFFl(1:3,i)=.TRUE.
+           FFF(1:3,i)="T"
+        END IF
+     END DO
+! PFL 2013.12.07 ->
+! Reading the VASP manual more carefully, it is stated:
+! ! The seventh line (or eighth line if 'selective dynamics' is switched on)
+! ! specifies whether the atomic positions are provided in cartesian coordinates
+! ! or in direct coordinates (respectively fractional coordinates). As in the
+! ! file KPOINTS only the first character on the line is significant and the
+! ! only key characters recognized by VASP are 'C', 'c', 'K' or 'k' for
+! ! switching to the cartesian mode.    
+!
+! We thus change V_direct to Direct if its first letter is not 'C' or 'K' 
+! (we have it all in upper case)
+     IF ((V_direct(1:1).NE.'C').AND.(V_direct(1:1).NE.'K')) THEN
+        V_direct='DIRECT'
+     END IF
+! <- PFL 2013.12.07
 
-     END DO
      IF (V_direct(1:6).EQ.'DIRECT') THEN
         DO I=1,Nat
            Xt=XyzGeomI(IGeom,1,I)
@@ -171,6 +252,12 @@
 ! i.e. to mix Cartesian and Direct :-p
 ! thus we check for each geom which condition is used.
 ! 
+!! PFL 2013 Dec 07 ->
+!!!!! For now we assume that all "POSCAR" used follow the same
+!!!! pattern as the first one
+!!! this has to be changed: reading the VASP header should be in
+!!! a subroutine by itself and combined afterwards.
+!!!! <- PFL 2013 Dec 07
 
 ! Title
         READ(IOIN,*) LineTmp
@@ -185,16 +272,48 @@
         !        if (debug) WRITE(*,*) "4 LineTmp:",Trim(LineTmp)
         READ(IOIN,*) Latc_loc
         !        if (debug) WRITE(*,*) "5 LineTmp:",Trim(LineTmp)
-! Attypes
-        READ(IOIN,*) LineTmp
+! PFL 2013 Dec 07 ->
+! From VASP 5.3, POSCAR can have an additional line containing
+! the names of the atoms
+! Even thought VASP5 flag has been set on the first geometry,
+! we are quite flexible and let the user mix old and new POSCAR:
+        READ(IOIN,'(A)') LineTmp
+        LineTMp=AdjustL(Trim(Vasp_types))
+        if (ICHAR(LineTmp(1:1))<48) THEN
+           Call Warning("ReadGeom_Vasp","Illegal caracter found in reading Vasp types")
+           STOP
+        END IF
+        If (ICHAR(LineTmp(1:1))>58) THEN
+! we have a letter, the user has surely provided the names.
+! we read the usual "number of atom by type" line
+           READ(IOIN,*) LineTmp
         !        if (debug) WRITE(*,*) "6 LineTmp:",Trim(LineTmp)
-! Comment
-        READ(IOIN,*) LineTmp,line
-        !        if (debug) WRITE(*,*) "7 LineTmp:",Trim(LineTmp),Trim(Line)
+        END IF
+! Do we have Selective Dynamics ?
+        READ(IOIN,'(A)') Line
+        LineTMp=AdjustL(Trim(Line))
+        Call upcase(LineTMP)
+        if (LineTMP(1:1)=="S") THEN
+           if (.NOT.Vasp_SelectD) Vasp_comment=AdjustL(Line)
+           Vasp_SelectD=.TRUE.
+           READ(IOIN,'(A)') Vdir_loc
+        ELSE
+           Vasp_SelectD=.FALSE.
+           Vdir_loc=Line
+     END IF
+! <- PFL 2013.12.07
+
+
 ! V_direct
-        READ(IOIN,*) Vdir_loc
         Vdir_loc=adjustl(Vdir_loc)
         Call upcase(Vdir_loc)
+! PFL 2013.12.07 ->
+     IF ((Vdir_loc(1:1).NE.'C').AND.(Vdir_loc(1:1).NE.'K')) THEN
+        Vdir_loc='DIRECT'
+     END IF
+! <- PFL 2013.12.07
+
+
         !        if (debug) WRITE(*,*) "8 LineTmp:",Trim(LineTmp)
 
         Lata_loc=Lata_loc*VaspPar_loc-Lat_a
@@ -219,12 +338,17 @@
         END IF
 
         DO I=1,Nat
-           READ(IOIN,*) XyzGeomI(IGeom,1:3,I),FFFt(1:3,I)
-           DO J=1,3
+           IF (Vasp_SelectD) THEN
+              READ(IOIN,*) XyzGeomI(IGeom,1:3,I),FFFt(1:3,I)
+              DO J=1,3
 ! A frozen atom in any geom is considered frozen in all geom
-              FFFt(j,I)=AdjustL(FFFt(j,i))
-              FFFl(j,i)=FFFl(j,i).AND.(FFFt(j,i).EQ.'T')
-           END DO
+                 FFFt(j,I)=AdjustL(FFFt(j,i))
+                 FFFl(j,i)=FFFl(j,i).AND.(FFFt(j,i).EQ.'T')
+              END DO
+           ELSE
+              READ(IOIN,*) XyzGeomI(IGeom,1:3,I)
+           END IF
+
         END DO
 
         IF (Vdir_loc(1:6).EQ.'DIRECT') THEN
Index: src/AnaPath.f90
===================================================================
--- src/AnaPath.f90	(revision 11)
+++ src/AnaPath.f90	(revision 12)
@@ -6,6 +6,36 @@
 
 SUBROUTINE AnaPath(IOpt,FileUnit)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
   use Io_module
   use Path_module, only : Nat,  NGeomF, XyzGeomF, SGeom,MassAt, &
Index: src/Io_module.f90
===================================================================
--- src/Io_module.f90	(revision 11)
+++ src/Io_module.f90	(revision 12)
@@ -1,6 +1,37 @@
 MODULE Io_Module
 ! This module contains all variables related to IO
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use VarTypes
 
   IMPLICIT NONE
@@ -13,6 +44,13 @@
   INTEGER(KINT), PARAMETER :: IOERR=0
   CHARACTER(SCHARS) :: RunMode
 
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+! System dependent delimiter for filename
+! / on Linux; \ on windows, ...
+  CHARACTER :: FileDelim
+
+
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 ! 
 !  Some parameters for unit conversion
@@ -50,11 +88,18 @@
 !
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   CHARACTER(LCHARS) :: Vasp_Title, Vasp_Types, Vasp_comment, Vasp_direct
+  CHARACTER(LCHARS) :: Vasp_Types_User
   REAL(KREAL) :: vasp_Param
   CHARACTER(4), ALLOCATABLE :: FFF(:,:) !(3,na)
   INTEGER(KINT) :: NbTypes
   INTEGER(KINT), PARAMETER :: MaxType=100
   CHARACTER(2) :: Attypes(MaxType)='  '
+! VASP5 is true when the POSCAR is in the new POSCAR file
+  LOGICAL :: VASP5
+! VASP_SelectD is true if Selective Dynamic is selected
+  LOGICAL :: VASP_SelectD
+
+
 ! WriteVasp controls the printing of the images coordinates in POSCAR files.
   LOGICAL :: WriteVasp
 
Index: src/Annul.f90
===================================================================
--- src/Annul.f90	(revision 11)
+++ src/Annul.f90	(revision 12)
@@ -1,6 +1,37 @@
 
       SUBROUTINE Annul(Liaisons,at,atli)
 !  Cette routine supprime l'atome atli dans les liaisons de at
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
       use Path_module, only : Nat, NMaxL
 
       INTEGER(4) :: Liaisons(Nat,0:NMaxL),At,Atli,I,J
Index: src/Mat_util.f90
===================================================================
--- src/Mat_util.f90	(revision 11)
+++ src/Mat_util.f90	(revision 12)
@@ -1,3 +1,34 @@
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 !     
 SUBROUTINE GenInv(N,A,InvA,NReal)
@@ -68,7 +99,7 @@
 !     EigvenVectors  : V(i,i)
 !     Eigenvalues : D(i)
 ! PFL 30/05/03
-! This versioin uses packed matrices.
+! This version uses packed matrices.
 ! it unpacks them before calling Jacobi !
 ! we have  AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
 !
@@ -291,53 +322,3 @@
 
 END SUBROUTINE trie
 
-!============================================================
-!c
-!c ++  Sort Eigenvectors in ascending eigenvalues order
-!c
-!c============================================================
-!c
-SUBROUTINE SortEigenSys(N,Eigval,Eigvec)
-
-
-  !
-  ! Input/output:
-  !   N : dimension of the system
-  !   EigVec(N,N) : Eigvenvectors, changed in output. Stored in a (N,N) matrix
-  !   EigVal(N)   : Eigenvalues, changed in output. Stored in a (n) vector
-  !   
- ! Process: 
- ! We use first a ranking, then a working array to reorder the eigenvalues and eigenvectors
- 
-!!!!!!!!!!!!!!!!
-
-  Use VarTypes
-  use m_mrgrnk
-  IMPLICIT NONE
-
-
-  INTEGER(KINT), INTENT(IN) :: N
-  REAL(KREAL), INTENT(OUT) :: EigVal(N), Eigvec(N,N)
-
-  integer(KINT) :: i
-
-  INTEGER(KINT), ALLOCATABLE :: Rank(:) !N
-  REAL(KREAL), ALLOCATABLE :: EigValT(:) !n
-  REAL(KREAL), ALLOCATABLE :: EigVecT(:,:) !n,n
-
-!!!!!!!!!!!!!!!!
-  ALLOCATE(Rank(n),EigValT(n),EigVecT(n,n))
-  CALL MrgRnk(EigVal,Rank)
-
-  DO I=1,N
-     EigValT(I)=EigVal(Rank(I))
-     EigVecT(I,1:N)=EigVec(Rank(I),1:N)
-  END DO
-  EigVal=EigValT
-  EigVec=EigVecT
-
-  DEALLOCATE(Rank,EigValT,EigVecT)
-
-
-END SUBROUTINE SortEigenSys
-
Index: src/upcase.f90
===================================================================
--- src/upcase.f90	(revision 11)
+++ src/upcase.f90	(revision 12)
@@ -3,6 +3,37 @@
 ! This subroutine converts a string into its Upcase
 ! version
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
         IMPLICIT NONE
 
         integer, parameter :: KINT = kind(1)
Index: src/PathCreate.f90
===================================================================
--- src/PathCreate.f90	(revision 11)
+++ src/PathCreate.f90	(revision 12)
@@ -10,6 +10,37 @@
 
 SUBROUTINE PathCreate(IOpt)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Io_module
   use Path_module, only : Nat, NGeomI, NCoord, NGeomF, IGeomRef, NMaxL, IReparam, IReparamT, &
        Coord, Frozen, Cart, NCart, NFroz, XyzGeomI, atome, r_cov, fact, &
@@ -102,6 +133,7 @@
 
 
   debug=valid("pathcreate")
+
   print=valid("printgeom")
   if (debug) Call header("Entering PathCreate")
   if (debug.AND.First) WRITE(*,*) "=     First call          ="
@@ -222,7 +254,7 @@
            Call Decomp_frag(nat,liaisons,.NOT.Fcart,nbfrag,Fragment,NbAtFrag,FragAt)
            IF (debug) THEN
               WRITE(*,*) 'Debug PathCreat Line190'
-              WRITE(*,*) 'NbFrag, NbFragRef=',NbFrag,NFragRef
+              WRITE(*,*) 'Igeom,NbFrag, NbFragRef=',IGeom,NbFrag,NFragRef
            END IF
 
            IF (NbFrag.LT.NFragRef) THEN
@@ -782,9 +814,9 @@
            CASE DEFAULT
               IBeg=NCart+1
            END SELECT
+           WRITE(*,*) "PathCreate L786: NCart,IBeg",NCart,IBeg
            DO J=IBeg,Nat
-              IF (J.EQ.2) &
-                   WRITE(*,'(1X,A5,3(I5,F11.6))') Nom(Atome(IndZmat0(J,1))), &
+              WRITE(*,'(1X,A5,3(I5,F11.6))') Nom(Atome(IndZmat0(J,1))), &
                    IndZmat(J,2),IntCoordI(I,Idx),IndZmat(J,3), &
                    IntCoordI(I,Idx+1)*180./Pi, &
                    IndZmat(J,4),IntCoordI(I,Idx+2)*180./Pi
Index: src/egrad_test.f90
===================================================================
--- src/egrad_test.f90	(revision 11)
+++ src/egrad_test.f90	(revision 12)
@@ -3,6 +3,37 @@
 ! and print the energy (in au) and gradient (in au/Ang) in the file Ext.out
 ! format D25.15
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
    IMPLICIT NONE
      integer, parameter :: KINT = kind(1)
      integer, parameter :: KREAL = kind(1.0d0)
Index: src/Read_geom.f90
===================================================================
--- src/Read_geom.f90	(revision 11)
+++ src/Read_geom.f90	(revision 12)
@@ -1,5 +1,36 @@
 SUBROUTINE Read_Geom(input)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use VarTypes
   Use Path_module, only : NGeomI
   Use Io_module
Index: src/Write_vasp.f90
===================================================================
--- src/Write_vasp.f90	(revision 11)
+++ src/Write_vasp.f90	(revision 12)
@@ -1,4 +1,34 @@
 SUBROUTINE Write_vasp(poscar)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
   Use Path_module, only : Nat, NGeomF,XyzGeomF,intCoordF,Coord,FrozAtoms,IndZmat,LatR,Ncoord, Vmd
   Use Io_module
Index: src/Rotation_matrix.f90
===================================================================
--- src/Rotation_matrix.f90	(revision 11)
+++ src/Rotation_matrix.f90	(revision 12)
@@ -1,5 +1,3 @@
-
-!-----------------------------------------------------------------------
       subroutine rotation_matrix(q, U)
 !-----------------------------------------------------------------------
 ! This subroutine constructs rotation matrix U from quaternion q.
@@ -21,17 +19,45 @@
 ! License as published by the Free Software Foundation; either
 ! version 2.1 of the License, or (at your option) any later version.
 !
-
 ! This library is distributed in the hope that it will be useful,
 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 ! Lesser General Public License for more details.
 !
-
 ! You should have received a copy of the GNU Lesser General Public
 ! License along with this library; if not, write to the Free Software
 ! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 !----------------------------------------------------------------------------
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
         Use VarTypes
 
Index: src/Calc_zmat_constr_frag.f90
===================================================================
--- src/Calc_zmat_constr_frag.f90	(revision 11)
+++ src/Calc_zmat_constr_frag.f90	(revision 12)
@@ -9,6 +9,38 @@
   !     we first construct the zmat using only the frozen atoms, and then
   !     we add the other atoms on top of the first ones...
   !     
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Sup�rieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Universit� Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module, only : max_Z, NMaxL, Nom
   Use Io_module
 
@@ -45,7 +77,7 @@
   real(KREAL) ::  vx4,vy4,vz4,norm4
   real(KREAL) ::  vx5,vy5,vz5,norm5
   real(KREAL) ::  val,val_d, d12, d13,d23,d
-  Logical Debug
+  Logical Debug, DebugGaussian
   LOGICAL, ALLOCATABLE :: DejaFait(:), FCaf(:) !(na)
   Logical, ALLOCATABLE ::  FrozAt(:)    !T if this atom is frozen
   LOGICAL F1213, F1223,F1323
@@ -55,6 +87,7 @@
   INTEGER(KINT) :: IMax, I3,I1,Ip, IFragFroz
   INTEGER(KINT) :: I0, Izm, JAt,Izm0
 
+  REAL(KREAL), PARAMETER :: LocalNCart=0.d0
   REAL(KREAL) :: sDihe, Pi
 
   INTERFACE
@@ -92,6 +125,7 @@
 
   Pi=dacos(-1.d0)
   debug=valid("calc_zmat_constr").OR.valid("calc_zmat_contr_frag")
+  debugGaussian=valid("zmat_gaussian")
 
   if (debug) WRITE(*,*) "=============================== Entering Calc_zmat_contr_frag ========================"
   if (na.le.2) THEN
@@ -2001,7 +2035,14 @@
      if (debug) WRITE(*,*) "Deallocate (LiaisonsBis"
      DEALLOCATE(LiaisonsBis)
 
+     if (debugGaussian) THEN
+        WRITE(*,*) 'DBG Cre_Zmat_Constr_Frag: Gaussian Zmat - START'
+        Call WriteMixed_Gaussian(na,atome,LocalNCart,ind_zmat,val_zmat)
+        WRITE(*,*) 'DBG Cre_Zmat_Constr_Frag: Gaussian Zmat - END'
+     END IF
 
+
+
      if (debug) WRITE(*,*) "=============================== Exiting Calc_zmat_contr_frag ========================"
 
    END SUBROUTINE Calc_Zmat_const_frag
Index: src/Calc_mixed_frag.f90
===================================================================
--- src/Calc_mixed_frag.f90	(revision 11)
+++ src/Calc_mixed_frag.f90	(revision 12)
@@ -9,6 +9,38 @@
   !     we first construct the zmat using only the frozen atoms, and then
   !     we add the other atoms on top of the first ones...
   !     
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module, only : max_Z, NMaxL, Nom
   Use Io_module
 
@@ -1006,112 +1038,3 @@
 
 END SUBROUTINE Calc_mixed_frag
 
-
-SUBROUTINE WriteMixed_Gaussian(na,atome,NCart,ind_zmat,val_zmat)
-
-! This subroutine comes for zmat_g92
-
-  Use Path_module, only :   Nom
-  Use Io_module
-
-  IMPLICIT NONE
-! Parameters of the subroutine
-! na: number of atoms in the system
-  integer(KINT), INTENT(IN) ::  na
-! atome: Mass number of the atoms of the system
-  integer(KINT), INTENT(IN) ::  atome(na)
-! nCart: number of atoms described in cartesian
-  integer(KINT), INTENT(IN) ::  NCart
-! ind_zmat: for "zmat" atoms contains the indices of reference atoms
-  integer(KINT), INTENT(IN) ::  ind_zmat(Na,5)
-! val_zmat: for "zmat" atoms contains the values from reference atoms
-  real(KREAL), INTENT(IN)   :: val_zmat(Na,3)
-
-  character(6) :: at1, at2, at3, at4, d, a, dh
-  Character(6) :: x,y,z
-  character(SCHARS), ALLOCATABLE :: tab(:) ! 3*na
-  character(LCHARS) :: ligne
-  
-  INTEGER(KINT) :: i,n1,n2,n3,n4, NZmat,ITab
-
-  ALLOCATE(tab(3*na))
-
-! We first write the Cartesian atoms
-
-  DO I=1,NCart
-! Name of the atom
-        n1=ind_zmat(i,1)
-        write(at1,11) nom(atome(n1)),n1
-        Call ecris_sb(at1,at1)
-! x
-        write(x,11) 'x',i
-        Call ecris_sb(x,x)
-        write(tab(3*i-2),'(A,1X,F12.8)') trim(x),val_zmat(i,1)
-! y
-        write(y,11) 'y',i
-        Call ecris_sb(y,y)
-        write(tab(3*i-1),'(A,1X,F12.8)') trim(y),val_zmat(i,2)
-! z
-        write(z,11) 'z',i
-        Call ecris_sb(z,z)
-        write(tab(3*i),'(A,1X,F12.8)') trim(z),val_zmat(i,3)
-! write the line
-           write(ligne,'(1X,A,1X,A,1X,A,1X,A)') Trim(at1),x,y,z
-        END DO
-
-  NZmat=na-NCart
-  ITab=3*NCart+1
-
-  DO i=NCart+1,NZmat
-     IF (i .GE. 1)  THEN
-        n1=ind_zmat(i,1)
-        write(at1,11) nom(atome(n1)),n1
-11      format(a2,i3)
-        Call ecris_sb(at1,at1)
-        write(ligne,4) at1
-     END IF
-     IF (i .GE. 2)  THEN
-        n2=ind_zmat(i,2)
-        write(at2,11) nom(atome(n2)),n2
-        Call ecris_sb(At2,at2)
-        write(d,11) 'R',i-1
-        Call ecris_sb(D,d)
-        write(ligne,4) at1,at2,d
-        write(tab(ITab),12) d,val_zmat(i,1)
-        ITab=ITab+1
-12      format(a8,f8.4)
-     END IF
-     IF (i .GE. 3)  THEN
-        n3=ind_zmat(i,3)
-        write(at3,11) nom(atome(n3)),n3
-        Call ecris_sb(At3,at3)
-        write(a,11) 'A',na+i-3
-        Call ecris_sb(A,A)
-        write(ligne,4) at1,at2,d,at3,a
-        write(tab(ITab),13) a,val_zmat(i,2)
-        ITab=ITab+1
-13      format(a8,f8.3)
-     END IF
-     IF (i .GE. 4)  THEN
-        n4=ind_zmat(i,4)
-        write(at4,11) nom(atome(n4)),n4
-        Call ecris_sb(At4,at4)
-        write(dh,11) 'DH',na+na+i-6
-        Call ecris_sb(dh,dh)
-        write(ligne,4) at1,at2,d,at3,a,at4,dh
-4       format(7a6)
-        write(tab(ITab),13) dh,val_zmat(i,3)
-        ITab=ITab+1
-     END IF
-     write(IOOUT,*) TRIM(ligne)
-     END DO
-     
-     write(IOOUT,*)
-     DO i=1,ITab
-        write(IOOUT,*) TRIM(tab(i))
-     END DO
-     write(IOOUT,*)
-
-     DEALLOCATE(Tab)
-
-   END SUBROUTINE WriteMixed_Gaussian
Index: src/ReadAnaList.f90
===================================================================
--- src/ReadAnaList.f90	(revision 11)
+++ src/ReadAnaList.f90	(revision 12)
@@ -2,7 +2,38 @@
 ! This routines read a list of geometrical variables to monitor
 ! This is inspired from Xyz2Path (that was inspired by Xyz2scan ...)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
+
   use VarTypes
   use Path_module
   use Io_module
Index: src/TestCart.f90
===================================================================
--- src/TestCart.f90	(revision 11)
+++ src/TestCart.f90	(revision 12)
@@ -14,6 +14,37 @@
   !        None
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module
   Use Io_module
 
Index: src/gaussj.f90
===================================================================
--- src/gaussj.f90	(revision 11)
+++ src/gaussj.f90	(revision 12)
@@ -1,6 +1,52 @@
-
       SUBROUTINE gaussj(a,n,np,b,m,mp)
 
+! This routine solves the system AX=B by inverting A.
+! This is based on Gauss-Jordan pivoting.
+! Input:
+! A is NxN REAL(KREAL) matrix, order N
+! B is NxM REAL(KREAL)  matrix (each ocolumn j of this B matrix corresponds to
+!   a AX=B_j problem in fact).
+! np: actual size of A(np,np)
+! mp: actual size of B(np,mp)
+!
+! Output:
+! A is destroyed and contains A inverse
+! B is destroyed and contains the solution X vectors.
+!
+! Adapted from  "Numerical Recipes in F77"
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
+
      IMPLICIT NONE
 
      INTEGER, PARAMETER :: KINT=KIND(1)
Index: src/CalcBMat_mixed.f90
===================================================================
--- src/CalcBMat_mixed.f90	(revision 11)
+++ src/CalcBMat_mixed.f90	(revision 12)
@@ -1,7 +1,38 @@
 subroutine CalcBMat_mixed (natoms, xyzatm, indzmat, dzdc)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Io_module
-  use Path_module, only : MW, NCart
+  use Path_module, only : NCart
 
   IMPLICIT NONE
 
Index: src/Calc_zmat.f90
===================================================================
--- src/Calc_zmat.f90	(revision 11)
+++ src/Calc_zmat.f90	(revision 12)
@@ -1,6 +1,37 @@
       SUBROUTINE Calc_Zmat(na,atome,ind_zmat,val_zmat,x,y,z, &
            r_cov,  fact)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Sup�rieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Universit� Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       use Path_module, only : Pi,max_Z, NMaxL, Nom, KINT, KREAL
       use Io_module, only :  IoOut
 
Index: src/Step_GEDIIS.f90
===================================================================
--- src/Step_GEDIIS.f90	(revision 11)
+++ src/Step_GEDIIS.f90	(revision 12)
@@ -1,9 +1,42 @@
      ! Geom = input parameter vector (Geometry), Grad = input gradient vector.
      ! HEAT is Energy(Geom)
       SUBROUTINE Step_GEDIIS(Geom_new,Geom,Grad,HEAT,Hess,NCoord,FRST)
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
     use Io_module
-    use Path_module, only : Nom, Atome, OrderInv, indzmat, Pi, Nat
     
       IMPLICIT NONE
 
Index: src/EgradPath.f90
===================================================================
--- src/EgradPath.f90	(revision 11)
+++ src/EgradPath.f90	(revision 12)
@@ -3,6 +3,37 @@
   ! This subroutine calculates the energy+gradient for all points of
   ! the path
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : ProgExe, NCoord, PROG, Nat, NGeomF, Coord, IntCoordF, &
        IndZmat, XyzGeomF, Atome, Order, OrderInv, Latr, FrozAtoms, &
        Grad, Energies, renum, dzdc, massat, Pi, NCART, OptReac, &
@@ -25,8 +56,13 @@
   REAL(KREAL), ALLOCATABLE :: x_k(:), y_k(:), z_k(:)
   REAL(KREAL), ALLOCATABLE :: GeomCart(:,:) !(Nat,3)
   REAL(KREAL) :: E
+! Flag to see if we should print debug info
   LOGICAL :: Debug
+! Flags to check if we have found the information we need
+  LOGICAL, SAVE :: FReadE, FReadGrad
   LOGICAL, SAVE :: First=.TRUE.
+! Flag to check if a file/directory exists
+  LOGICAL :: FExists
 
   INTEGER(KINT) :: I, Iat, IBeg, Idx
   REAL(KREAL) :: RTmp1, RTmp2, RTmp3
@@ -99,8 +135,13 @@
 
         ! First, we create all the POSCAR into the 0x directories
 
+        WRITE(IOOUT,*) " Creating the POSCAR files "
+
+
         ! With RunMode="Para" one cannot optimize reactants or products (due to Vasp constraints)
         ! so this has been done beforehand :-)
+
+
         IGeom0=2
         IGeomF=NGeomF-1
         PathCart=0.d0
@@ -111,7 +152,23 @@
            First=.FALSE.
            IGeom0=1
            IGeomF=NGeomF
-        END IF
+! PFL 2013 OCt ->
+! We might have to create the directories
+           Line2="00"
+           DO IGeom=IGeom0,IGeomF
+              WRITE(Line,'(I5)') IGeom-1
+              Idx=2-Len_TRIM(ADJUSTL(Line))
+              FileInp=Line2(1:Idx) // TRIM(AdjustL(Line))
+              INQUIRE(File=FileInp,Exist=FExists)
+              If (.NOT.Fexists) THEN
+                 FileInp="mkdir " // TRIM(FileInp)
+                 if (debug) WRITE(*,'(1X,A)') "Creating dir: " // TRIM(FileInp)
+                 CALL SYSTEM(FileInp)
+              ELSE IF (DEBUG) THEN
+                 WRITE(*,'(1X,A)') "Directory " // TRIM(FileInp) // " already exists"
+              END IF
+           END DO
+        END IF   ! If (First)
 
         Line2="00"
         DO IGeom=IGeom0,IGeomF
@@ -120,7 +177,7 @@
            ! THIS WILL HAVE EFFECT ON XyzGeomF UPDATE IN BAKER CASE.
            WRITE(Line,'(I5)') IGeom-1
            Idx=2-Len_TRIM(ADJUSTL(Line))
-           FileInp=Line2(1:Idx) // TRIM(AdjustL(Line)) // "/POSCAR"
+           FileInp="." // FileDelim // Line2(1:Idx) // TRIM(AdjustL(Line)) // FileDelim // "POSCAR"
            if (debug) WRITE(*,*) "Creating ",TRIM(FileInp)
            OPEN(IOTMP,File=TRIM(FileInp))
 
@@ -210,6 +267,7 @@
 
         RunCommand=Trim(ProgExe)
         if (debug) WRITE(*,*) "Launching:", TRIM(RunCommand)
+        WRITE(IOOUT,*) " Launching VASP to get the Forces "
         call system(RunCommand)
         if (debug) WRITE(*,*) "Back from:", TRIM(RunCommand)
 
@@ -217,6 +275,8 @@
 !
         ! We read the gradients and energies
 !
+        WRITE(IOOUT,*) " Reading Forces "
+
         IGeom0=2
         IGeomF=NGeomF-1
         Grad=0.d0
@@ -225,7 +285,7 @@
         DO IGeom=IGeom0,IGeomF
            WRITE(Line,'(I5)') IGeom-1
            Idx=2-Len_TRIM(ADJUSTL(Line))
-           FileInp=Line2(1:Idx) // TRIM(AdjustL(Line)) // "/OUTCAR"
+           FileInp="." // FileDelim // Line2(1:Idx) // TRIM(AdjustL(Line)) // FileDelim // "OUTCAR"
            if (debug) WRITE(*,*) "Reading E and forces from ", TRIM(FileInp)
            OPEN(IOTMP,File=TRIM(FileInp))
 
@@ -233,30 +293,40 @@
            READ(IOTMP,'(A)',END=999,ERR=999) LINE
            ! We search for the  last part of the OUTCAR file, after wavefunction is converged
            DO WHILE (INDEX(LINE,'EDIFF is reached')==0)
-              READ(IOTMP,'(A)',END=999,ERR=999) LINE
+              READ(IOTMP,'(A)',END=999,ERR=9991) LINE
            END DO
-           READ(IOTMP,'(A)',END=999,ERR=999) LINE
-           DO WHILE (INDEX(LINE,'TOTEN')==0)
-              READ(IOTMP,'(A)',END=999,ERR=999) LINE
-           END DO
-           Line=Line(26:)
-           READ(LINE,*) E
-           if (debug) WRITE(*,'(1X,A,I5,A,F20.6)') "DBG Egrad_VASP E(",Igeom,")=",E
-           Energies(Igeom)=E
 
-           ! We search for the forces
-           DO WHILE (INDEX(LINE,'TOTAL-FORCE')==0)
-              READ(IOTMP,'(A)',END=999,ERR=999) LINE
+! PFL oct 2013 ->
+! The order of the things that we search might change
+! so that we look for TOTEN and TOTAL-FORCE in parallel :)
+           FReadE=.FALSE.
+           FReadGrad=.FALSE.
+           DO WHILE (.NOT.(FReadE.AND.FReadGrad))
+              READ(IOTMP,'(A)',END=999,ERR=9992) LINE
+
+              IF (INDEX(LINE,'TOTEN')>0) THEN
+                 Line=Line(26:)
+                 READ(LINE,*) E
+                 if (debug) WRITE(*,'(1X,A,I5,A,F20.6)') "DBG Egrad_VASP E(",Igeom,")=",E
+                 Energies(Igeom)=E
+                 FReadE=.TRUE.
+              END IF
+
+              IF (INDEX(LINE,'TOTAL-FORCE')>0) THEN
+                 READ(IOTMP,'(A)',END=999,ERR=9993) LINE
+                 DO I=1,Nat
+                    Iat=I
+                    IF (renum) Iat=Order(I)
+                    READ(IOTMP,*,END=999,ERR=9994)  Rtmp1,RTmp2,RTmp3,GradCart(3*Iat-2:3*Iat)
+                 END DO
+                 FReadGrad=.TRUE.
+              END IF
            END DO
-           READ(IOTMP,'(A)',END=999,ERR=999) LINE
-           DO I=1,Nat
-              Iat=I
-              IF (renum) Iat=Order(I)
-              READ(IOTMP,*,END=999,ERR=999)  Rtmp1,RTmp2,RTmp3,GradCart(3*Iat-2:3*Iat)
-           END DO
 
            Close(IoTmp)
 
+           WRITE(IOOUT,*) " Forces read for geometry ",IGeom
+
            IF (debug) THEN
               WRITE(*,*) "DBG EGRAD_VASP - GradCart=FORCES - original order"
               DO I=1,Nat
@@ -274,6 +344,7 @@
            ! gradient in ua/Angstrom
            GradCart=-1.0d0*ev2Au*GradCart
 
+           
            ! We convert it into the right coordinate system
            ! This should be put into a subroutine (because it is also in egradient)
            SELECT CASE (COORD)
@@ -364,8 +435,10 @@
               Call PrintGeom(Line,Nat,NCoord,reshape(GRad(Igeom,1:NCoord),(/Ncoord/)),Coord,6,Atome,Order,OrderInv,IndZmat)
            END IF
         END DO ! matches  DO IGeom=IGeom0,IGeomF
+        
+     CASE ("GAUSSIAN")
 
-     CASE ("GAUSSIAN")
+        WRITE(IOOUT,*) " Creating the Input files and ListJob"
         ! We create the output files.
         IGeom0=2
         IGeomF=NGeomF-1
@@ -490,11 +563,14 @@
 
         Line=Trim(ProgExe) 
         IF (DEBUG) WRITE(*,*)'RunCommand:',TRIM(Line)
+        WRITE(IOOUT,*) " Launching Gaussian to compute the forces"
         call system(Line)
         IF (DEBUG) WRITE(*,*)'Back from RunCommand:'
 
 ! We read energies and gradients from the log files
 
+        WRITE(*,*) "Gaussian over. Reading the Forces"
+
         DO IGeom=IGeom0,IGeomF
            WRITE(Line,'(I5)') IGeom
            FileInp="PathPar_" // TRIM(ADJUSTL(Line)) // ".log"
@@ -538,10 +614,10 @@
 ! Gaussian gives the Forces in ua/a0, so we convert it into the 
 ! gradient in ua/Angstrom 
   gradCart=-1.0d0*Unit*gradCart
-
   CLOSE(IOTMP)
   Energies(IGeom)=E
-  
+
+  WRITE(*,*) "Forces and energy read for geometry ",IGeom
            ! We convert it into the right coordinate system
            ! This should be put into a subroutine (because it is also in egradient)
            SELECT CASE (COORD)
@@ -641,6 +717,7 @@
 
      DEALLOCATE(GradCart,PathCart)
 
+
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 !
 ! Serial executions
@@ -660,7 +737,8 @@
 
      DO IGeom=IGeom0,IGeomF
         WRITE(Line,"('Geometry ',I3,'/',I3,' for iteration ',I3)") Igeom,NgeomF,Iopt
-        if (debug) WRITE(*,*) Line
+        WRITE(IOOUT,*) "Creating Input for ", TRIM(Line)
+!        if (debug) WRITE(*,*) Line
         SELECT CASE(Coord)
         CASE ('ZMAT','MIXED')
            GeomTmp=IntCoordF(IGeom,:)
@@ -678,33 +756,17 @@
            STOP
         END SELECT
 
-        !if (debug) WRITE(*,*) "Calling PrintGeom"
-        !Call PrintGeom(Line,Nat,NCoord,GeomTmp,Coord,IoOut,Atome,Order,OrderInv,IndZmat)
-
-        !           IF (debug) THEN 
-        !              WRITE(*,*) 'DBG Main, COORD=',TRIM(COORD), ' Igeom=',IGeom
-        !              WRITE(*,'(3(1X,F9.4))') Reshape(Reshape(XyzGeomF(IGeom,:,:),(/Nat,3/),ORDER=(/2,1/)),(/3*Nat/))
-        !              WRITE(*,'(3(1X,F9.4))') Reshape(XyzGeomF(IGeom,:,:),(/3*Nat/))
-        !              DO Iat=1,Nat
-        !                 WRITE(*,*) XyzGeomF(IGeom,1:3,Iat)
-        !              END DO
-        !           END IF
-
         IF (debug) THEN 
            WRITE(*,*) 'DBG Main, COORD=',TRIM(COORD),' IGeom=',IGeom,' Iopt=',Iopt
            WRITE(*,*) GeomTmp(1:min(NCoord,12))
         END IF
 
         GeomCart=0.d0
-!        IF(IOpt .EQ. 1) Then
-!           Print *, 'GeomTmp='
-!           WRITE(*,'(12(1X,F6.3))') GeomTmp
-!           Print *, 'GeomCart='
-!           WRITE(*,'(12(1X,F6.3))') GeomCart
-!      END IF
     
        ! GradTmp is gradient and calculated in Egrad.F, INTENT(OUT).
        ! GeomCart has INTENT(OUT)
+
+       WRITE(IOOUT,*) "Computing and reading forces for ", TRIM(Line)
        Call EGrad(E,GeomTmp,GradTmp,NCoord,IGeom,IOpt,GeomCart) !GeomTmp=IntCoordF(IGeom,:)
 
     ! Egrad calls ConvertBakerInternal_cart to convert GeomTmp=IntCoordF(IGeom,:) into 
@@ -723,14 +785,31 @@
         Grad(IGeom,:)=GradTmp
      END DO ! matches DO IGeom=IGeom0,IGeomF
      DEALLOCATE(GradTmp,GeomCart)
+
   END IF ! matches IF (RunMode=="PARA") THEN AFTER ELSE
 
+  WRITE(IOOUT,*) " Forces all read. Moving on"
+
+
   DEALLOCATE(GeomTmp)
   DEALLOCATE(x,y,z)
   DEALLOCATE(x_k,y_k,z_k)
   if (debug) Call header('Exiting EgradPath')
   RETURN
 999 WRITE(*,*) "EgradPath : We should not be here !"
+   WRITE(*,*) "End of file happened too soon"
   STOP
+9991 WRITE(*,*) "EgradPath : We should not be here !"
+  WRITE(*,*) "EgradPath was Looking for 'EDIFF is reached'"
+  STOP
+9992 WRITE(*,*) "EgradPath : We should not be here !"
+  WRITE(*,*) "EgradPath was Looking for 'TOTEN'"
+  STOP
+9993 WRITE(*,*) "EgradPath : We should not be here !"
+  WRITE(*,*) "EgradPath was Looking for 'TOTAL-FORCE'"
+  STOP
+9994 WRITE(*,*) "EgradPath : We should not be here !"
+  WRITE(*,*) "EgradPath was reading the forces "
+  STOP
 
 END SUBROUTINE EGRADPATH
Index: src/sinangle.f90
===================================================================
--- src/sinangle.f90	(revision 11)
+++ src/sinangle.f90	(revision 12)
@@ -1,4 +1,34 @@
      FUNCTION SinAngle(v1x,v1y,v1z,norm1,v2x,v2y,v2z,norm2)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
        use Path_module, only :  KREAL
 
Index: src/Hinvup_DFP.f90
===================================================================
--- src/Hinvup_DFP.f90	(revision 11)
+++ src/Hinvup_DFP.f90	(revision 12)
@@ -1,5 +1,36 @@
 SUBROUTINE Hinvup_DFP(Nfree,ds,dgrad,Hess)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   IMPLICIT NONE
 
   INTEGER, PARAMETER :: KINT=KIND(1)
Index: src/egrad_LEPS.f90
===================================================================
--- src/egrad_LEPS.f90	(revision 11)
+++ src/egrad_LEPS.f90	(revision 12)
@@ -2,6 +2,37 @@
 ! This program computes the ernergy and gradien in cartesian coordinates
 ! for the cartesian geometry Geom
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
    IMPLICIT NONE
      integer, parameter :: KINT = kind(1)
      integer, parameter :: KREAL = kind(1.0d0)
Index: src/Warning.f90
===================================================================
--- src/Warning.f90	(revision 11)
+++ src/Warning.f90	(revision 12)
@@ -1,7 +1,39 @@
+    SUBROUTINE Warning(routine, msg, file, line, unit)
+
 ! This routine prints a warning message and goes on
 ! Inspired  from Die in Siesta 3.1 
-    SUBROUTINE Warning(routine, msg, file, line, unit)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       Use VarTypes
       Use io_module
 
Index: src/egrad_test_2D.f90
===================================================================
--- src/egrad_test_2D.f90	(revision 11)
+++ src/egrad_test_2D.f90	(revision 12)
@@ -2,6 +2,37 @@
 ! This program computes the energy and the gradient
 ! to cheat PATH we use a 3 atoms system
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
    IMPLICIT NONE
      integer, parameter :: KINT = kind(1)
      integer, parameter :: KREAL = kind(1.0d0)
Index: src/Extrapol_cart.f90
===================================================================
--- src/Extrapol_cart.f90	(revision 11)
+++ src/Extrapol_cart.f90	(revision 12)
@@ -8,6 +8,37 @@
   ! For now, it gives equidistant geometries
   !
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module
   use Io_module
 
Index: src/AlignPartial.f90
===================================================================
--- src/AlignPartial.f90	(revision 11)
+++ src/AlignPartial.f90	(revision 12)
@@ -19,6 +19,37 @@
   ! x2,y2,z2  : coordinates of the second geometry ALIGNED to the first one
   !-----------------------------------------------------------------------
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use VarTypes
   IMPLICIT NONE
 
Index: src/ConvXyzMixed.f90
===================================================================
--- src/ConvXyzMixed.f90	(revision 11)
+++ src/ConvXyzMixed.f90	(revision 12)
@@ -1,5 +1,36 @@
 SUBROUTINE ConvXyzMixed(nb,ncart,x,y,z,ind_zmat,val_zmat)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   IMPLICIT NONE
 
   INTEGER, PARAMETER :: KINT=KIND(1)
Index: src/addligne.f90
===================================================================
--- src/addligne.f90	(revision 11)
+++ src/addligne.f90	(revision 12)
@@ -1,5 +1,36 @@
       SUBROUTINE AddLigne(i,n1,n2,n3,n4,ind_zmat,val_zmat,x,y,z)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       use Path_module, only : Nat, KINT, KREAL
 
       integer(KINT) :: ind_zmat(Nat, 5)
Index: src/PrintAnaList.f90
===================================================================
--- src/PrintAnaList.f90	(revision 11)
+++ src/PrintAnaList.f90	(revision 12)
@@ -1,6 +1,36 @@
  SUBROUTINE PrintAnaList(FileUnit)
 ! This routines prints the list of geometrical variables to monitor
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
   use VarTypes
   use Path_module
Index: src/Opt_Geom.f90
===================================================================
--- src/Opt_Geom.f90	(revision 11)
+++ src/Opt_Geom.f90	(revision 12)
@@ -1,3 +1,6 @@
+
+SUBROUTINE Opt_geom(IGeom,Nat,NCoord,Coord,Geom,E,Flag_Opt_Geom,Step_method)
+
 ! This subroutine optimizes a geometry. 
 ! Initially, it was mainly here for  debugging purposes..
 !so  It has been designed to be almost independent of the rest of the code.
@@ -3,10 +6,39 @@
 ! It is now an (almost) officiel option.
 
-SUBROUTINE Opt_geom(IGeom,Nat,NCoord,Coord,Geom,E,Flag_Opt_Geom,Step_method)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
   use VarTypes
   use Path_module, only : maxcyc,sthresh,gthresh,Hinv,Smax,Nom,Atome,OrderInv,indzmat,&
-       XyzGeomF,IntCoordF,UMat,ScanCoord,Coordinate,NPrim,&
-       BTransInv,BTransInv_local,XyzGeomI,Xprimitive_t,ScanCoord,&
+       UMat,ScanCoord,Coordinate,NPrim,&
+       BTransInv,BTransInv_local,Xprimitive_t,ScanCoord,&
        Coordinate,Pi,UMat_local,NCart, DynMaxStep,FPrintGeom,GeomFile, AtName,Renum,Order, &
        FormAna,NbVar, PrintGeomFactor,AnaGeom
Index: src/Step_RFO_all.f90
===================================================================
--- src/Step_RFO_all.f90	(revision 11)
+++ src/Step_RFO_all.f90	(revision 12)
@@ -46,9 +46,40 @@
 ! <- PFL 18 Jan 2008: Grad is no longer changed on output
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Io_module, only : IoOut
   
-  use Path_module, only : NGeomF, Hinv,Coord,Vfree, NGintMax
+  use Path_module, only :  Hinv,Vfree
   ! VFree(Ncoord,Ncoord)
 
   IMPLICIT NONE
Index: src/IntCoord_der.f90
===================================================================
--- src/IntCoord_der.f90	(revision 11)
+++ src/IntCoord_der.f90	(revision 12)
@@ -1,3 +1,33 @@
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
       SUBROUTINE VPRD(X,Y,Z)
 !     ******************************************************************
Index: src/Step_GDIIS_Simple_Err.f90
===================================================================
--- src/Step_GDIIS_Simple_Err.f90	(revision 11)
+++ src/Step_GDIIS_Simple_Err.f90	(revision 12)
@@ -3,6 +3,42 @@
 !C  Grad = input gradient vector.
       SUBROUTINE Step_GDIIS_Simple_Err(NewGeom,Geom,NewGrad,GRAD,HP,HEAT,NCoord,FRST)
 
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       IMPLICIT NONE
       integer, parameter :: KINT = kind(1)
       integer, parameter :: KREAL = kind(1.0d0)
Index: src/Calc_baker_allGeomF.f90
===================================================================
--- src/Calc_baker_allGeomF.f90	(revision 11)
+++ src/Calc_baker_allGeomF.f90	(revision 12)
@@ -5,6 +5,37 @@
   ! v1.0
   ! We use only one geometry
   !     
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
   Use Path_module, only : BMat_BakerT,Nat,NCoord,UMatF, &
                           NPrim,BTransInvF,Coordinate, &
               ScanCoord,BprimT,BBT,BBT_inv,XprimitiveF, &
Index: src/VarTypes.f90
===================================================================
--- src/VarTypes.f90	(revision 11)
+++ src/VarTypes.f90	(revision 12)
@@ -1,4 +1,34 @@
 MODULE VarTypes
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
   INTEGER, PARAMETER :: KINT=KIND(1)
   INTEGER, PARAMETER :: KREAL=KIND(1.0D0)
Index: src/Expand.f90
===================================================================
--- src/Expand.f90	(revision 11)
+++ src/Expand.f90	(revision 12)
@@ -3,6 +3,37 @@
   ! This subroutine expands a list entered in a compacted form
   ! ie 1 -10 => 1 2 3  4 5 6 7 8 9 10
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use VarTypes
 
   INTEGER(KINT), INTENT(IN) :: Dim
Index: src/Hupdate_Bofill.f90
===================================================================
--- src/Hupdate_Bofill.f90	(revision 11)
+++ src/Hupdate_Bofill.f90	(revision 12)
@@ -11,6 +11,37 @@
 
 SUBROUTINE Hupdate_Bofill(Nfree,ds,dgrad,Hess)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   IMPLICIT NONE
 
   INTEGER, PARAMETER :: KINT=KIND(1)
Index: src/Calc_Xprim.f90
===================================================================
--- src/Calc_Xprim.f90	(revision 11)
+++ src/Calc_Xprim.f90	(revision 12)
@@ -19,6 +19,37 @@
 !
 !!!!!!!!!
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use VarTypes
   Use Io_module
   Use Path_module, only : pi
Index: src/CalcTangent.f90
===================================================================
--- src/CalcTangent.f90	(revision 11)
+++ src/CalcTangent.f90	(revision 12)
@@ -3,6 +3,37 @@
 
 SUBROUTINE CalcTangent(XgeomF,NGeomS,XGeom,Coef)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only: IntCoordI, Nat, Coord, XyzGeomI, Atome, Order, &
                          OrderInv, IndZmat, NMaxPtPath, IntTangent, XyzTangent, &
              NGeomF, NCoord
Index: src/Space_all.f90
===================================================================
--- src/Space_all.f90	(revision 11)
+++ src/Space_all.f90	(revision 12)
@@ -1,3 +1,5 @@
+      SUBROUTINE Space_all(NGeomF,IGeom,MRESET,MSET,Geom,GRAD,HEAT,NCoord,GeomSet,GradSet,ESET,FRST)
+
 !C
 !C  SPACE SIMPLY LOADS THE CURRENT VALUES OF Geom AND GRAD INTO
 !C  THE ARRAYS GeomSet AND GradSet
@@ -2,6 +4,38 @@
 !C
-      SUBROUTINE Space_all(NGeomF,IGeom,MRESET,MSET,Geom,GRAD,HEAT,NCoord,GeomSet,GradSet,ESET,FRST)
 
-!      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-!      INCLUDE 'SIZES'
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
     
Index: src/Extrapol_mixed.f90
===================================================================
--- src/Extrapol_mixed.f90	(revision 11)
+++ src/Extrapol_mixed.f90	(revision 12)
@@ -12,7 +12,38 @@
 ! v2.0
 ! Uses Mix2cart for conversions.
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
+
   use Path_module
   use Io_module
 
Index: src/ReadInput_vasp.f90
===================================================================
--- src/ReadInput_vasp.f90	(revision 11)
+++ src/ReadInput_vasp.f90	(revision 12)
@@ -2,6 +2,37 @@
 
 ! This routine reads an input template for Vasp
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use VarTypes
   use Path_module
   use Io_module
Index: src/freemv.f90
===================================================================
--- src/freemv.f90	(revision 11)
+++ src/freemv.f90	(revision 12)
@@ -1,10 +1,38 @@
   Subroutine freemv(NFree,vfree)
 
-  use Path_module, only : HUpdate,Hinv
-  use Io_module, only : IoOut
-  
-  IMPLICIT NONE
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
+   IMPLICIT NONE
+
   INTEGER, PARAMETER :: KINT=KIND(1)
   INTEGER, PARAMETER :: KREAL=KIND(1.0D0)
 
Index: src/CalcHess.f90
===================================================================
--- src/CalcHess.f90	(revision 11)
+++ src/CalcHess.f90	(revision 12)
@@ -6,8 +6,38 @@
 
 ! It comes mostly from the hess.f subroutine of the IRC package.
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
-  use Path_module, only : Nat,Coord,Hinv
+  use Path_module, only : Nat,Hinv
 
   use Io_module
 !
Index: src/ConvertNumAt.f90
===================================================================
--- src/ConvertNumAt.f90	(revision 11)
+++ src/ConvertNumAt.f90	(revision 12)
@@ -1,5 +1,36 @@
       FUNCTION ConvertNumAt(ATOM)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       use Path_module, only : Nom, max_Z
 
       IMPLICIT NONE
Index: src/Int2cart.f90
===================================================================
--- src/Int2cart.f90	(revision 11)
+++ src/Int2cart.f90	(revision 12)
@@ -1,5 +1,36 @@
 SUBROUTINE Int2Cart(Nat,IndZmat,IntCoord,XyzCoord)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module, ONLY : Pi
 
   IMPLICIT NONE
Index: src/egrad_siesta.f90
===================================================================
--- src/egrad_siesta.f90	(revision 11)
+++ src/egrad_siesta.f90	(revision 12)
@@ -3,6 +3,37 @@
   ! This routines calculates the energy and the gradient of 
   ! a molecule, using Siesta 
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : Nat, renum,Order,OrderInv, Coord, ProgExe,v_direct,latr
   use Io_module
 
Index: src/ConvertBakerInternal_cart.f90
===================================================================
--- src/ConvertBakerInternal_cart.f90	(revision 11)
+++ src/ConvertBakerInternal_cart.f90	(revision 12)
@@ -23,6 +23,37 @@
   ! Internal coordinates IntCoord(NCoord) is to be converted
   ! into Cartesian coordinates x(Nat),y(Nat),z(Nat).
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : Nat,AtName,BMat_BakerT,NPrim,&
        BBT,BBT_inv,BprimT,ScanCoord,Coordinate,&
        BTransInv_local,Xprimitive_t,&
Index: src/ReadGeom_siesta.f90
===================================================================
--- src/ReadGeom_siesta.f90	(revision 11)
+++ src/ReadGeom_siesta.f90	(revision 12)
@@ -6,6 +6,37 @@
 ! - the format and units
 ! - the significations of species
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module
   Use Io_module
 
Index: src/ReadInput.f90
===================================================================
--- src/ReadInput.f90	(revision 11)
+++ src/ReadInput.f90	(revision 12)
@@ -3,7 +3,38 @@
 ! This routine reads an input template for some programs.
 ! this is a 'dispatcher' routine that calls the exact subroutine from a list.
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
+
   use VarTypes
   use Path_module, only : Prog
   use Io_module
Index: src/Space.f90
===================================================================
--- src/Space.f90	(revision 11)
+++ src/Space.f90	(revision 12)
@@ -3,10 +3,42 @@
 !C  THE ARRAYS GeomSet AND GradSet
 !C
       SUBROUTINE SPACE(MRESET,MSET,Geom,GRAD,HEAT,NVAR,GeomSet,GradSet,ESET,FRST)
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
-!      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
-!      INCLUDE 'SIZES'
-
       IMPLICIT NONE
       integer, parameter :: KINT = kind(1)
       integer, parameter :: KREAL = kind(1.0d0)
Index: src/Calc_zmat_frag.f90
===================================================================
--- src/Calc_zmat_frag.f90	(revision 11)
+++ src/Calc_zmat_frag.f90	(revision 12)
@@ -31,6 +31,37 @@
 !
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Sup�rieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Universit� Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module, only : max_Z, NMaxL, Nom, Pi
   Use Io_module
 
@@ -85,6 +116,7 @@
   INTEGER(KINT) :: OrderZmat
 
   REAL(KREAL) :: sDihe
+  REAL(KREAL), PARAMETER :: LocalNCart=0.d0
 
   INTERFACE
      function valid(string) result (isValid)
@@ -1185,7 +1217,7 @@
 
      if (debugGaussian) THEN
         WRITE(*,*) 'DBG Cre_Zmat_Frag: Gaussian Zmat - START'
-        Call zmat_g92(na,atome,ind_zmat,val_zmat)
+        Call WriteMixed_Gaussian(na,atome,LocalNCart,ind_zmat,val_zmat)
         WRITE(*,*) 'DBG Cre_Zmat_Frag: Gaussian Zmat - END'
      END IF
 
@@ -1203,95 +1235,3 @@
 
 END SUBROUTINE Calc_Zmat_frag
 
-SUBROUTINE zmat_g92(na,atome,ind_zmat,val_zmat)
-
-! This subroutine comes for Cart. Slightly modified to be f90
-
-  Use Path_module, only :  Nom
-  Use Io_module
-
-  IMPLICIT NONE
-
-  integer(KINT), INTENT(IN) ::  na,atome(na)
-  INTEGER(KINT), INTENT(IN) :: ind_zmat(Na,5)
-  real(KREAL), INTENT(IN)   :: val_zmat(Na,3)
-
-  character(6) :: at1, at2, at3, at4, d, a, dh
-  character(SCHARS), ALLOCATABLE :: tab(:) ! 3*na
-  character(LCHARS) :: ligne
-  
-  INTEGER(KINT) :: i,n1,n2,n3,n4
-
-  ALLOCATE(tab(3*na))
-
-  DO i=1,na
-     IF (i .GE. 1)  THEN
-        n1=ind_zmat(i,1)
-        write(at1,11) nom(atome(n1)),n1
-11      format(a2,i3)
-        Call ecris_sb(at1,at1)
-        write(ligne,4) at1
-     END IF
-     IF (i .GE. 2)  THEN
-        n2=ind_zmat(i,2)
-        write(at2,11) nom(atome(n2)),n2
-        Call ecris_sb(At2,at2)
-        write(d,11) 'R',i-1
-        Call ecris_sb(D,d)
-        write(ligne,4) at1,at2,d
-        write(tab(i-1),12) d,val_zmat(i,1)
-12      format(a8,f8.4)
-     END IF
-     IF (i .GE. 3)  THEN
-        n3=ind_zmat(i,3)
-        write(at3,11) nom(atome(n3)),n3
-        Call ecris_sb(At3,at3)
-        write(a,11) 'A',na+i-3
-        Call ecris_sb(A,A)
-        write(ligne,4) at1,at2,d,at3,a
-           write(tab(na+i-3),13) a,val_zmat(i,2)
-13         format(a8,f8.3)
-        END IF
-        IF (i .GE. 4)  THEN
-           n4=ind_zmat(i,4)
-           write(at4,11) nom(atome(n4)),n4
-           Call ecris_sb(At4,at4)
-           write(dh,11) 'DH',na+na+i-6
-           Call ecris_sb(dh,dh)
-           write(ligne,4) at1,at2,d,at3,a,at4,dh
-4          format(7a6)
-           write(tab(na+na+i-6),13) dh,val_zmat(i,3)
-        END IF
-        write(IOOUT,*) TRIM(ligne)
-     END DO
-     
-     write(IOOUT,*)
-     IF (na .EQ. 2) THEN
-        write(IOOUT,*) TRIM(tab(1))
-     ELSE
-        DO i=1,3*na-6
-           write(IOOUT,*) TRIM(tab(i))
-        END DO
-     END IF
-     write(IOOUT,*)
-
-     DEALLOCATE(Tab)
-
-   END SUBROUTINE zmat_g92
-
-   SUBROUTINE ecris_sb(inter1,inter)
-
-      character(6) :: inter,inter1
-
-
-      k=1
-      DO j=1,len(inter)
-        IF (inter(j:j) .NE. ' ' ) THEN
-         inter1(k:k)=inter(j:j)
-         k=k+1
-        END IF
-      END DO
-
-       inter1(k:6)=' '
-
-    END SUBROUTINE ecris_sb
Index: src/ReadGeom_cart.f90
===================================================================
--- src/ReadGeom_cart.f90	(revision 11)
+++ src/ReadGeom_cart.f90	(revision 12)
@@ -1,4 +1,34 @@
 SUBROUTINE ReadGeom_cart
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
   Use Path_module
   Use Io_module
Index: src/PrintGeomVasp.f90
===================================================================
--- src/PrintGeomVasp.f90	(revision 11)
+++ src/PrintGeomVasp.f90	(revision 12)
@@ -2,6 +2,37 @@
 
 ! this subroutine prints a cartesian geometry in the VASP POSCAR format
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module
   Use Io_module
 
Index: src/CalcDist_cart.f90
===================================================================
--- src/CalcDist_cart.f90	(revision 11)
+++ src/CalcDist_cart.f90	(revision 12)
@@ -3,6 +3,37 @@
 ! This subroutine computes the curvilinear distance of the images on the path
 ! It is adapted from Extrapol_cart 
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module
   use Io_module
 
Index: src/valid.f90
===================================================================
--- src/valid.f90	(revision 11)
+++ src/valid.f90	(revision 12)
@@ -1,3 +1,5 @@
+      function valid(string) result (isValid)
+
 ! This function returns true or false depending on the string you give as a parameter
 ! Its purpose is to centralize the debugging flags into only one external file
 ! so that debugging can be turned on or off easily at runtime.
@@ -4,7 +6,36 @@
 ! (basically as it was done in ADF...
 ! except that my version is much more basic (much much much more !) )
 
-      function valid(string) result (isValid)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
       use Io_module
 
Index: src/egrad_mopac.f90
===================================================================
--- src/egrad_mopac.f90	(revision 11)
+++ src/egrad_mopac.f90	(revision 12)
@@ -3,6 +3,37 @@
   ! This routines calculates the energy and the gradient of 
   ! a molecule, using mopac 
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : Nat, renum,Order,OrderInv,AtName, Coord, ProgExe, &
        FPBC, Lat_a, Lat_b, Lat_c, IPer
   use Io_module
Index: src/PrintGeom.f90
===================================================================
--- src/PrintGeom.f90	(revision 11)
+++ src/PrintGeom.f90	(revision 12)
@@ -1,6 +1,37 @@
 ! This subroutine prints a geometry
 SUBROUTINE PrintGeom(Title,Nat,NCoord,Geom,Coord,IOOUT,Atome,Order,OrderInv,IndZmat)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : Renum,Nom,NCart,Pi
 
   IMPLICIT NONE
@@ -16,23 +47,52 @@
   REAL(KREAL), INTENT(IN) :: Geom(NCoord)
 
   INTEGER(KINT) :: Idx, Iat,I,IBeg
+  CHARACTER(32) :: Name1, Name2, Name3,Name4
   LOGICAL :: Debug=.FALSE.
 
   SELECT CASE (COORD)
   CASE ("ZMAT") 
+     
      WRITE(IOOUT,'(1X,A)') TRIM(AdjustL(Title))
-     WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Nom(Atome(OrderInv(indzmat(1,1))))
-     WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Nom(Atome(OrderInv(indzmat(2,1)))), &
-          Nom(Atome(OrderInv(indzmat(2,2)))),Geom(1)
-     WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Nom(Atome(OrderInv(indzmat(3,1)))), &
-          Nom(Atome(OrderInv(indzmat(3,2)))),Geom(2), &
-          Nom(Atome(OrderInv(indzmat(3,3)))),Geom(3)*180./Pi
+     WRITE(Name1,'(A,I5)') Nom(Atome(OrderInv(indzmat(1,1)))),indzmat(1,1)
+!     WRITE(*,*) "Name1:",Name1,"*"
+     Call CleanString(Name1,' ')
+!     WRITE(*,*) "Name1:",Name1,"*"
+     WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Name1(1:5)
+     WRITE(Name1,'(A,I5)') Nom(Atome(OrderInv(indzmat(2,1)))),indzmat(2,1)
+     Call CleanString(Name1,' ')
+     WRITE(Name2,'(A,I5)') Nom(Atome(OrderInv(indzmat(2,2)))),indzmat(2,2)
+     Call CleanString(Name2,' ')
+     WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Name1(1:5), &
+          Name2(1:5),Geom(1)
+     WRITE(Name1,'(A,I5)') Nom(Atome(OrderInv(indzmat(3,1)))),indzmat(3,1)
+     Call CleanString(Name1,' ')
+     WRITE(Name2,'(A,I5)') Nom(Atome(OrderInv(indzmat(3,2)))),indzmat(3,2)
+     Call CleanString(Name2,' ')
+     WRITE(Name3,'(A,I5)') Nom(Atome(OrderInv(indzmat(3,3)))),indzmat(3,3)
+     Call CleanString(Name3,' ')
+     WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Name1, &
+          Name2,Geom(2), &
+          Name3,Geom(3)*180./Pi
      Idx=4
      DO Iat=4,Nat
-        WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Nom(Atome(OrderInv(indzmat(iat,1)))), &
-             Nom(Atome(OrderInv(indzmat(iat,2)))),Geom(Idx), &
-             Nom(Atome(OrderInv(indzmat(iat,3)))),Geom(Idx+1)*180./Pi, &
-             Nom(Atome(OrderInv(indzmat(iat,4)))),Geom(Idx+2)*180./Pi
+     WRITE(Name1,'(A,I5)') Nom(Atome(OrderInv(indzmat(iat,1)))),indzmat(iat,1)
+     Call CleanString(Name1,' ')
+     WRITE(Name2,'(A,I5)') Nom(Atome(OrderInv(indzmat(iat,2)))),indzmat(iat,2)
+     Call CleanString(Name2,' ')
+     WRITE(Name3,'(A,I5)') Nom(Atome(OrderInv(indzmat(iat,3)))),indzmat(iat,3)
+     Call CleanString(Name3,' ')
+     WRITE(Name4,'(A,I5)') Nom(Atome(OrderInv(indzmat(iat,4)))),indzmat(iat,4)
+     Call CleanString(Name4,' ')
+
+        ! WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Nom(Atome(OrderInv(indzmat(iat,1)))), &
+        !      Nom(Atome(OrderInv(indzmat(iat,2)))),Geom(Idx), &
+        !      Nom(Atome(OrderInv(indzmat(iat,3)))),Geom(Idx+1)*180./Pi, &
+        !      Nom(Atome(OrderInv(indzmat(iat,4)))),Geom(Idx+2)*180./Pi
+        WRITE(IOOUT,'(1X,A5,3(1X,A4,1X,F11.6))') Name1, &
+             Name2,Geom(Idx), &
+             Name3,Geom(Idx+1)*180./Pi, &
+             Name4,Geom(Idx+2)*180./Pi
         Idx=Idx+3
      END DO
 
Index: src/Calc_baker.f90
===================================================================
--- src/Calc_baker.f90	(revision 11)
+++ src/Calc_baker.f90	(revision 12)
@@ -5,6 +5,37 @@
   ! v1.0
   ! We use only one geometry
   !     
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
   Use Path_module, only : max_Z,NMaxL,Pi,Massat,BMat_BakerT, &
        Nat,NCoord,XyzGeomI,NGeomI,NGeomF,UMat,NPrim,BTransInv, &
        IntCoordI,Coordinate,CurrentCoord,ScanCoord,BprimT,BBT, &
Index: src/Space_GEDIIS_all.f90
===================================================================
--- src/Space_GEDIIS_all.f90	(revision 11)
+++ src/Space_GEDIIS_all.f90	(revision 12)
@@ -2,6 +2,42 @@
 
       SUBROUTINE SPACE_GEDIIS_All(NGeomF,IGeom,MRESET,MSET,Geom,Grad,HEAT,NCoord,GeomSet,GradSet,ESET,FRST)
 
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       IMPLICIT NONE
       integer, parameter :: KINT = kind(1)
       integer, parameter :: KREAL = kind(1.0d0)
Index: src/Check_step.f90
===================================================================
--- src/Check_step.f90	(revision 11)
+++ src/Check_step.f90	(revision 12)
@@ -4,6 +4,37 @@
 
 SUBROUTINE Check_step(Coord,Nat,NCoord,GeomOld,Step)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module, only : pi,ncart
 
   IMPLICIT NONE
Index: src/TODO
===================================================================
--- src/TODO	(revision 0)
+++ src/TODO	(revision 12)
@@ -0,0 +1,13 @@
+# This small file lists all I would like to do in Opt'n Path...
+- optimizing TS
+- redundant coordinates
+- different coordinates set for geom opt and path interpolation
+- reduced coordinates set: the path is interpolated in a reduced set, while all other coordinates are relaxed at each step
+- constraints
+- add a reactive force field to pre-optimize the path
+- add other codes: CP2K; DFTB+, GAMESS...
+- couple it to a graphical interface
+- change the input to a 'fdf like' one more flexible
+- add some block for the geometries and other stuff so that one can put what
+he wants in the order he wants :)
+- not directly in Opt'n Path, but create a small tool that could help reordering the atoms between two geometries 
\ No newline at end of file
Index: src/CleanString.f90
===================================================================
--- src/CleanString.f90	(revision 11)
+++ src/CleanString.f90	(revision 12)
@@ -1,8 +1,38 @@
-
     SUBROUTINE CleanString(String,CleanStr)
 ! This subroutine cleans a string, that is: it removes some characters
 ! from it that are in CleanString input variable
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       Use VarTypes
 
       IMPLICIT NONE
@@ -12,12 +42,41 @@
       CHARACTER(*), INTENT(IN) :: CleanStr
 
       INTEGER(KINT) :: I
+      LOGICAL :: Debug
+
+  INTERFACE
+     function valid(string) result (isValid)
+       CHARACTER(*), intent(in) :: string
+       logical                  :: isValid
+     END function VALID
+
+  end INTERFACE
+  
+
+      Debug=Valid("CleanString")
       
+      if (debug) Call header("Entering CleanString")
+         
+      if (debug) THEN
+         WRITE(*,*) "String:",String,"*END*"
+         WRITE(*,*) "CleanStr:",CleanStr,"*END*"
+      END IF
 
-      I=Scan(String,CleanStr)
-      DO WHILE (I/=0)
+      I=Scan(TRIM(String),CleanStr)
+      DO WHILE ((I/=0).AND.(I<=LEN(TRIM(String))))
          String=String(1:I-1) // String (I+1:)
          I=Scan(String,CleanStr)
+         if (debug) THEN
+            WRITE(*,*) "String:",String,"*END*",I,Len(TRIM(String))
+            WRITE(*,*) "TRIMString:",TRIM(String),"*END*"
+         END IF
+
       END DO
 
+      if (debug) THEN
+         WRITE(*,*) "String:",String,"*END*"
+      END IF
+
+      if (debug) Call header("Exiting CleanString")
+
     END SUBROUTINE CleanString
Index: src/ConvGrad_Cart2Int.f90
===================================================================
--- src/ConvGrad_Cart2Int.f90	(revision 11)
+++ src/ConvGrad_Cart2Int.f90	(revision 12)
@@ -1,5 +1,36 @@
       SUBROUTINE ConvGrad_Cart2Int(n,BMat,indzmat,GradCart,GradInt)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
         use Io_module
         use Path_module, only : atome
 
Index: src/VectorPer.f90
===================================================================
--- src/VectorPer.f90	(revision 11)
+++ src/VectorPer.f90	(revision 12)
@@ -1,3 +1,5 @@
+      SUBROUTINE VectorPer(n1,n2,na,nb,nc,x,y,z,vx,vy,vz,norm)
+
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 !
 ! VectorPer
@@ -23,7 +25,36 @@
 !
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
-      SUBROUTINE VectorPer(n1,n2,na,nb,nc,x,y,z,vx,vy,vz,norm)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
         use VarTypes
         use Path_module, only : NAt,Lat_a,Lat_b,Lat_c
Index: src/minv.f90
===================================================================
--- src/minv.f90	(revision 11)
+++ src/minv.f90	(revision 12)
@@ -1,5 +1,43 @@
       SUBROUTINE MINV(A,N,D)
+
+
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
  
+
       IMPLICIT NONE
       integer, parameter :: KINT = kind(1)
       integer, parameter :: KREAL = kind(1.0d0)
Index: src/ReadInput_mopac.f90
===================================================================
--- src/ReadInput_mopac.f90	(revision 11)
+++ src/ReadInput_mopac.f90	(revision 12)
@@ -2,6 +2,37 @@
 
 ! This routine reads an input template for MOPAC
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use VarTypes
   use Path_module
   use Io_module
Index: src/test_zmat.f90
===================================================================
--- src/test_zmat.f90	(revision 11)
+++ src/test_zmat.f90	(revision 12)
@@ -1,10 +1,38 @@
-!================================================================
-!       test si la z_matrice peut etre ecrite pour gaussian
-!          monstergauss exthuc
-!================================================================
-
       FUNCTION test_zmat(na,ind_zmat)
 
+! Test the validity of a z-matrix 
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       use Path_module
       use Io_module
 
Index: src/AnalyzeGeom.f90
===================================================================
--- src/AnalyzeGeom.f90	(revision 11)
+++ src/AnalyzeGeom.f90	(revision 12)
@@ -2,7 +2,38 @@
 ! This routines read a list of geometrical variables to monitor
 ! This is inspired from Xyz2Path (that was inspired by Xyz2scan ...)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
+
   use VarTypes
   use Path_module
   use Io_module
Index: src/egrad_vasp.f90
===================================================================
--- src/egrad_vasp.f90	(revision 11)
+++ src/egrad_vasp.f90	(revision 12)
@@ -3,6 +3,36 @@
   ! This routines calculates the energy and the gradient of 
   ! a molecule, using VASP
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
   use Path_module, only : Nat, renum,Order,OrderInv, Coord, &
        ProgExe,Latr,FrozAtoms
Index: src/ConvXyzZmat.f90
===================================================================
--- src/ConvXyzZmat.f90	(revision 11)
+++ src/ConvXyzZmat.f90	(revision 12)
@@ -1,5 +1,36 @@
 SUBROUTINE ConvXyzZmat(nb,x,y,z,ind_zmat,val_zmat)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use VarTypes
 
   IMPLICIT NONE
Index: src/Energy_GEDIIS.f90
===================================================================
--- src/Energy_GEDIIS.f90	(revision 11)
+++ src/Energy_GEDIIS.f90	(revision 12)
@@ -1,4 +1,35 @@
       SUBROUTINE Energy_GEDIIS(MRESET,MSET,ci,GeomSet,GradSet,ESET,NCoord,ER_star)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       IMPLICIT NONE
       integer, parameter :: KINT = kind(1)
       integer, parameter :: KREAL = kind(1.0d0)
Index: src/Space_GEDIIS.f90
===================================================================
--- src/Space_GEDIIS.f90	(revision 11)
+++ src/Space_GEDIIS.f90	(revision 12)
@@ -3,6 +3,42 @@
 
       SUBROUTINE SPACE_GEDIIS(MRESET,MSET,Geom,Grad,HEAT,NCoord,GeomSet,GradSet,ESET,FRST)
 
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       IMPLICIT NONE
       integer, parameter :: KINT = kind(1)
       integer, parameter :: KREAL = kind(1.0d0)
Index: src/CalcBMat_int.f90
===================================================================
--- src/CalcBMat_int.f90	(revision 11)
+++ src/CalcBMat_int.f90	(revision 12)
@@ -1,7 +1,38 @@
 subroutine CalcBmat_int(natoms, xyzatm, indzmat, dzdc)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Io_module
-  use Path_module, only : MW,Pi, atome
+  use Path_module, only :  atome
 
   IMPLICIT NONE
 
Index: src/Hupdate_all.f90
===================================================================
--- src/Hupdate_all.f90	(revision 11)
+++ src/Hupdate_all.f90	(revision 12)
@@ -1,5 +1,36 @@
  subroutine hupdate_all(n, ds, dgrad, Hess)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only :  HUpdate,Hinv
   use Io_module, only : IoOut
 
Index: src/Egrad.f90
===================================================================
--- src/Egrad.f90	(revision 11)
+++ src/Egrad.f90	(revision 12)
@@ -4,6 +4,37 @@
   ! a molecule with Geometry Geom (may be in internal coordinates),
   ! using for now, either Gaussian or Ext, more general later.
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : Nat,AtName,Coord,dzdc,indzmat,Atome,massat, &
        prog,NCart,XyzGeomF, XyzGeomI, renum, &
        GeomOld_all,BTransInvF,BTransInv_local,UMatF,UMat_local &
@@ -275,8 +306,10 @@
      Call egrad_test(Nat,E,Geomcart,GradCart)
   CASE ('TEST2D')
      Call egrad_test_2D(Nat,E,Geomcart,GradCart)
-  CASE ('CHAMFRE')
-     Call egrad_chamfre(Nat,E,Geomcart,GradCart)
+! Chamfre is not public. Contact Wei.Dong@ens-lyon.fr 
+! and optnpath@gmail.com if you want it.
+!  CASE ('CHAMFRE')
+!     Call egrad_chamfre(Nat,E,Geomcart,GradCart)
   CASE ('LEPS')
      Call egrad_LEPS(Nat,E,Geomcart,GradCart)
   END SELECT
@@ -428,16 +461,6 @@
 
      Call GenInv(NCoord,BBT,BBT_inv,NCoord)
 
-!     ALLOCATE(V(NCoord,NCoord))
-!     tol = 1e-10
-!     ! BBT is destroyed by GINVSE
-!     Call GINVSE(BBT,NCoord,NCoord,BBT_inv,NCoord,NCoord,NCoord,tol,V,NCoord,FAIL,IOOUT)
-!     DEALLOCATE(V)
-!     IF(Fail) Then
-!        WRITE (*,*) "Failed in generalized inverse, L220, ConvertBaker...f90"
-!        STOP
-!     END IF
-
      !Print *, 'BBT_inv='
      DO J=1,NCoord
         ! WRITE(*,'(50(1X,F10.2))') BBT_inv(:,J)
Index: src/WriteInput_siesta.f90
===================================================================
--- src/WriteInput_siesta.f90	(revision 11)
+++ src/WriteInput_siesta.f90	(revision 12)
@@ -1,4 +1,34 @@
  SUBROUTINE WriteInput_siesta(GeomCart,FileUnit)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
 ! This routine writes an input for Siesta
 
Index: src/CheckPeriodicBound.f90
===================================================================
--- src/CheckPeriodicBound.f90	(revision 11)
+++ src/CheckPeriodicBound.f90	(revision 12)
@@ -5,6 +5,37 @@
   ! This would ruin the interpolation.
 
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module
   Use Io_module
 
@@ -15,7 +46,7 @@
   REAL(KREAL), ALLOCATABLE :: GeomRef(:,:), GeomTmp(:,:) ! (3,Nat)
 
   REAL(KREAL) :: Latrloc(3,3),Bloc(3),Xt,Yt,Zt
-  REAL(KREAL) :: NormA, NormB,Xrel,Yrel,ZRel,NormC
+  REAL(KREAL) :: NormA, NormB,Xrel,Yrel
   REAL(KREAL) :: Prod,LatrA(3),LatrB(3)
   REAL(KREAL) :: V(3)
 
Index: src/SearchInput.f90
===================================================================
--- src/SearchInput.f90	(revision 11)
+++ src/SearchInput.f90	(revision 12)
@@ -1,6 +1,37 @@
+    FUNCTION SearchInput(Input,String,Line,Clean)  Result(Found)
 ! This function search a string in an input block
-    FUNCTION SearchInput(Input,String,Line,Clean)  Result(Found)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       Use VarTypes
       Use io_module
 
Index: src/Hupdate_MS.f90
===================================================================
--- src/Hupdate_MS.f90	(revision 11)
+++ src/Hupdate_MS.f90	(revision 12)
@@ -1,3 +1,5 @@
+SUBROUTINE Hupdate_MS(Nfree,ds,dgrad,Hess)
+
 ! Hessian - or its inverse - update
 ! We use the Murtagh-Sargent update, also called Symmetric Rank 1
 !
@@ -27,8 +29,38 @@
 !
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
-SUBROUTINE Hupdate_MS(Nfree,ds,dgrad,Hess)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   IMPLICIT NONE
 
   INTEGER, PARAMETER :: KINT=KIND(1)
Index: src/InString.f90
===================================================================
--- src/InString.f90	(revision 11)
+++ src/InString.f90	(revision 12)
@@ -1,3 +1,5 @@
+    FUNCTION InString(Line,String,Case,Clean,Back)  Result(Pos)
+
 ! This function compares two strings 
 ! Input, 5 variables out of which 3 optionals
 ! Line: the line to search in
@@ -6,8 +8,38 @@
 ! Clean [optional]: if present, Line is cleaned 
 ! Back [optional] if present and true, the string is seach backwards
 
-    FUNCTION InString(Line,String,Case,Clean,Back)  Result(Pos)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       Use VarTypes
       Use io_module
 
Index: src/NoComment.f90
===================================================================
--- src/NoComment.f90	(revision 11)
+++ src/NoComment.f90	(revision 12)
@@ -3,6 +3,37 @@
 ! This subroutine suppress all comments from a string
 ! comments can start with ! or #
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
         IMPLICIT NONE
 
         integer, parameter :: KINT = kind(1)
Index: src/Die.f90
===================================================================
--- src/Die.f90	(revision 11)
+++ src/Die.f90	(revision 12)
@@ -1,21 +1,52 @@
-! This routine prints an error message and stops.
-! Taken from Siesta 3.1 
     SUBROUTINE die(routine, msg, file, line, unit)
 
+! This routine prints an error message and stops.
+! Inspired by Siesta 3.1 
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
       Use VarTypes
       Use io_module
 
       implicit none
-!--------------------------------------------------------------- Input Variables
+! Input Variables
       character(len=*), intent(in)           :: routine, msg
       character(len=*), intent(in), optional :: file
       integer(KINT), intent(in), optional      :: line, unit
 
-!--------------------------------------------------------------- Local Variables
+! Local Variables
       integer(KINT)                            :: die_unit
 
 
-!------------------------------------------------------------------------- BEGIN
       if (PRESENT(unit)) then
         die_unit = unit
       else
@@ -37,6 +68,5 @@
 
       STOP 'Stopping Program'
 
-!--------------------------------------------------------------------------- END
     END SUBROUTINE die
 
Index: src/Path_module.f90
===================================================================
--- src/Path_module.f90	(revision 11)
+++ src/Path_module.f90	(revision 12)
@@ -1,6 +1,37 @@
 MODULE Path_module
 ! This module contains most of the variables needed for the path
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use VarTypes
 
   IMPLICIT NONE
Index: src/Extrapol_baker.f90
===================================================================
--- src/Extrapol_baker.f90	(revision 11)
+++ src/Extrapol_baker.f90	(revision 12)
@@ -9,6 +9,37 @@
   !
   ! A reference geometry for the alignment: X0(Nat),Y0(Nat),Z0(Nat)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use Path_module, only : IntCoordI, NMaxPtPath, XyzGeomF, IntCoordF, &
        IntTangent, Renum, Nom, Order, MassAt, SGeom, Nat, NGeomI, &
        NGeomF, Atome, NCoord, OrderInv, XyzGeomI,BTransInvF, &
Index: src/ReadInput_siesta.f90
===================================================================
--- src/ReadInput_siesta.f90	(revision 11)
+++ src/ReadInput_siesta.f90	(revision 12)
@@ -2,6 +2,37 @@
 
 ! This routine reads an input template for Siesta
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   use VarTypes
   use Path_module
   use Io_module
Index: src/Set_FileDelim.f90
===================================================================
--- src/Set_FileDelim.f90	(revision 0)
+++ src/Set_FileDelim.f90	(revision 12)
@@ -0,0 +1,56 @@
+    SUBROUTINE Set_FileDelim
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
+      Use Io_module
+
+      LOGICAL :: Debug
+
+
+  INTERFACE
+     function valid(string) result (isValid)
+       CHARACTER(*), intent(in) :: string
+       logical                  :: isValid
+     END function VALID
+  END INTERFACE
+
+
+      Debug=valid("setfiledelim").OR.valid("set_filedelim")
+      If (debug) Call Header('Entering Set_FileDelim')
+      CALL getenv('DELIMITER',FileDelim)
+      if (FileDelim==" ")  THEN
+         If (debug) WRITE(*,*)" Filedelim empty. Setting it to default"
+         FileDelim="/"
+      END if
+
+      If (debug) Call Header('EXIT Set_FileDelim')
+         
+    END SUBROUTINE Set_FileDelim
Index: src/Write_path.f90
===================================================================
--- src/Write_path.f90	(revision 11)
+++ src/Write_path.f90	(revision 12)
@@ -1,4 +1,34 @@
 SUBROUTINE Write_path(Iopt)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
   Use Path_module
   Use Io_module
Index: src/Decomp_frag.f90
===================================================================
--- src/Decomp_frag.f90	(revision 11)
+++ src/Decomp_frag.f90	(revision 12)
@@ -1,6 +1,37 @@
 !This subroutines decomposes a connectivity list into fragments.
 SUBROUTINE Decomp_Frag(na,ListConnect,ListAt,nbfrag,Fragment,NbAtFrag,FragAt)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module, only : NMaxL
   Use Io_module
 
@@ -25,7 +56,8 @@
   END INTERFACE
 
 
-  debug=valid('decompfrag')
+  debug=valid('decompfrag').OR.valid('Decomp_frag')
+  if (debug) Call Header('Entering DecomFrag')
   !     We analyse the connectivity in terms of fragments
   ALLOCATE(ToDo(na))
 
@@ -115,6 +147,7 @@
      END DO
   END IF
 
+  if (debug) Call Header('DecomFrag over')
 
 END SUBROUTINE Decomp_Frag
 
Index: src/ConvertZmat_cart_3.f90
===================================================================
--- src/ConvertZmat_cart_3.f90	(revision 11)
+++ src/ConvertZmat_cart_3.f90	(revision 12)
@@ -6,6 +6,37 @@
 
         SUBROUTINE ConvertZmat_cart_3(iat,ind_zmat,d,a_val,x,y,z)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
         use Path_module, only : Nat, KINT, KREAL
 
         IMPLICIT NONE
Index: src/Extrapol_int.f90
===================================================================
--- src/Extrapol_int.f90	(revision 11)
+++ src/Extrapol_int.f90	(revision 12)
@@ -13,8 +13,41 @@
   ! IntCoordI(:,:) ! (NGeomI,3*Nat-6)
   ! XyzGeomF(:,:,:) ! (NGeomF,3,Nat)
   ! Default value of FAlign=.TRUE.
+
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
+
   use Path_module, only : NMaxPtPath, IntCoordI, Pi, IndZmat, XyzGeomF, &
-       IntCoordF, IntTangent, Renum, Nom, Order, MassAt, SGeom, XyzGeomI, &
+       IntCoordF, IntTangent, Renum, Nom, Order, MassAt, SGeom,  &
        Atome, Nat, NGeomI, NCoord, NGeomF, OrderInv,NFroz,FrozAtoms,Align
   ! IndZmat(Nat,5)
 
Index: src/Splin1D.f90
===================================================================
--- src/Splin1D.f90	(revision 11)
+++ src/Splin1D.f90	(revision 12)
@@ -10,6 +10,37 @@
 !condition for a natural spline,
 !with zero second derivative on that boundary.
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
          Use Vartypes
 
          IMPLICIT NONE
Index: src/Hinvup_BFGS.f90
===================================================================
--- src/Hinvup_BFGS.f90	(revision 11)
+++ src/Hinvup_BFGS.f90	(revision 12)
@@ -5,6 +5,37 @@
 ! This routines has been modified so that its input is now:
 SUBROUTINE Hinvup_BFGS(Nfree,ds,dgrad,Hess)
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   IMPLICIT NONE
 
   INTEGER, PARAMETER :: KINT=KIND(1)
Index: src/COPYING
===================================================================
--- src/COPYING	(revision 0)
+++ src/COPYING	(revision 12)
@@ -0,0 +1,661 @@
+                    GNU AFFERO GENERAL PUBLIC LICENSE
+                       Version 3, 19 November 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The GNU Affero General Public License is a free, copyleft license for
+software and other kinds of works, specifically designed to ensure
+cooperation with the community in the case of network server software.
+
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+our General Public Licenses are intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+  Developers that use our General Public Licenses protect your rights
+with two steps: (1) assert copyright on the software, and (2) offer
+you this License which gives you legal permission to copy, distribute
+and/or modify the software.
+
+  A secondary benefit of defending all users' freedom is that
+improvements made in alternate versions of the program, if they
+receive widespread use, become available for other developers to
+incorporate.  Many developers of free software are heartened and
+encouraged by the resulting cooperation.  However, in the case of
+software used on network servers, this result may fail to come about.
+The GNU General Public License permits making a modified version and
+letting the public access it on a server without ever releasing its
+source code to the public.
+
+  The GNU Affero General Public License is designed specifically to
+ensure that, in such cases, the modified source code becomes available
+to the community.  It requires the operator of a network server to
+provide the source code of the modified version running there to the
+users of that server.  Therefore, public use of a modified version, on
+a publicly accessible server, gives the public access to the source
+code of the modified version.
+
+  An older license, called the Affero General Public License and
+published by Affero, was designed to accomplish similar goals.  This is
+a different license, not a version of the Affero GPL, but Affero has
+released a new version of the Affero GPL which permits relicensing under
+this license.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                       TERMS AND CONDITIONS
+
+  0. Definitions.
+
+  "This License" refers to version 3 of the GNU Affero General Public License.
+
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
+
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+  To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy.  Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+  To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies.  Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+  An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License.  If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+  1. Source Code.
+
+  The "source code" for a work means the preferred form of the work
+for making modifications to it.  "Object code" means any non-source
+form of a work.
+
+  A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+  The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form.  A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+  The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities.  However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work.  For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+  The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+  The Corresponding Source for a work in source code form is that
+same work.
+
+  2. Basic Permissions.
+
+  All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met.  This License explicitly affirms your unlimited
+permission to run the unmodified Program.  The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work.  This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+  You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force.  You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright.  Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+  Conveying under any other circumstances is permitted solely under
+the conditions stated below.  Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+  No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+  When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+  4. Conveying Verbatim Copies.
+
+  You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+  You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+  5. Conveying Modified Source Versions.
+
+  You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+    a) The work must carry prominent notices stating that you modified
+    it, and giving a relevant date.
+
+    b) The work must carry prominent notices stating that it is
+    released under this License and any conditions added under section
+    7.  This requirement modifies the requirement in section 4 to
+    "keep intact all notices".
+
+    c) You must license the entire work, as a whole, under this
+    License to anyone who comes into possession of a copy.  This
+    License will therefore apply, along with any applicable section 7
+    additional terms, to the whole of the work, and all its parts,
+    regardless of how they are packaged.  This License gives no
+    permission to license the work in any other way, but it does not
+    invalidate such permission if you have separately received it.
+
+    d) If the work has interactive user interfaces, each must display
+    Appropriate Legal Notices; however, if the Program has interactive
+    interfaces that do not display Appropriate Legal Notices, your
+    work need not make them do so.
+
+  A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit.  Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+  6. Conveying Non-Source Forms.
+
+  You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+    a) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by the
+    Corresponding Source fixed on a durable physical medium
+    customarily used for software interchange.
+
+    b) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by a
+    written offer, valid for at least three years and valid for as
+    long as you offer spare parts or customer support for that product
+    model, to give anyone who possesses the object code either (1) a
+    copy of the Corresponding Source for all the software in the
+    product that is covered by this License, on a durable physical
+    medium customarily used for software interchange, for a price no
+    more than your reasonable cost of physically performing this
+    conveying of source, or (2) access to copy the
+    Corresponding Source from a network server at no charge.
+
+    c) Convey individual copies of the object code with a copy of the
+    written offer to provide the Corresponding Source.  This
+    alternative is allowed only occasionally and noncommercially, and
+    only if you received the object code with such an offer, in accord
+    with subsection 6b.
+
+    d) Convey the object code by offering access from a designated
+    place (gratis or for a charge), and offer equivalent access to the
+    Corresponding Source in the same way through the same place at no
+    further charge.  You need not require recipients to copy the
+    Corresponding Source along with the object code.  If the place to
+    copy the object code is a network server, the Corresponding Source
+    may be on a different server (operated by you or a third party)
+    that supports equivalent copying facilities, provided you maintain
+    clear directions next to the object code saying where to find the
+    Corresponding Source.  Regardless of what server hosts the
+    Corresponding Source, you remain obligated to ensure that it is
+    available for as long as needed to satisfy these requirements.
+
+    e) Convey the object code using peer-to-peer transmission, provided
+    you inform other peers where the object code and Corresponding
+    Source of the work are being offered to the general public at no
+    charge under subsection 6d.
+
+  A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+  A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling.  In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage.  For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product.  A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+  "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source.  The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+  If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information.  But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+  The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed.  Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+  Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+  7. Additional Terms.
+
+  "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law.  If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+  When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it.  (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.)  You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+  Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+    a) Disclaiming warranty or limiting liability differently from the
+    terms of sections 15 and 16 of this License; or
+
+    b) Requiring preservation of specified reasonable legal notices or
+    author attributions in that material or in the Appropriate Legal
+    Notices displayed by works containing it; or
+
+    c) Prohibiting misrepresentation of the origin of that material, or
+    requiring that modified versions of such material be marked in
+    reasonable ways as different from the original version; or
+
+    d) Limiting the use for publicity purposes of names of licensors or
+    authors of the material; or
+
+    e) Declining to grant rights under trademark law for use of some
+    trade names, trademarks, or service marks; or
+
+    f) Requiring indemnification of licensors and authors of that
+    material by anyone who conveys the material (or modified versions of
+    it) with contractual assumptions of liability to the recipient, for
+    any liability that these contractual assumptions directly impose on
+    those licensors and authors.
+
+  All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10.  If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term.  If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+  If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+  Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+  8. Termination.
+
+  You may not propagate or modify a covered work except as expressly
+provided under this License.  Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+  However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+  Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+  Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License.  If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+  9. Acceptance Not Required for Having Copies.
+
+  You are not required to accept this License in order to receive or
+run a copy of the Program.  Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance.  However,
+nothing other than this License grants you permission to propagate or
+modify any covered work.  These actions infringe copyright if you do
+not accept this License.  Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+  10. Automatic Licensing of Downstream Recipients.
+
+  Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License.  You are not responsible
+for enforcing compliance by third parties with this License.
+
+  An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations.  If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+  You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License.  For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+  11. Patents.
+
+  A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based.  The
+work thus licensed is called the contributor's "contributor version".
+
+  A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version.  For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+  Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+  In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement).  To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+  If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients.  "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+  If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+  A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License.  You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+  Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+  12. No Surrender of Others' Freedom.
+
+  If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all.  For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+  13. Remote Network Interaction; Use with the GNU General Public License.
+
+  Notwithstanding any other provision of this License, if you modify the
+Program, your modified version must prominently offer all users
+interacting with it remotely through a computer network (if your version
+supports such interaction) an opportunity to receive the Corresponding
+Source of your version by providing access to the Corresponding Source
+from a network server at no charge, through some standard or customary
+means of facilitating copying of software.  This Corresponding Source
+shall include the Corresponding Source for any work covered by version 3
+of the GNU General Public License that is incorporated pursuant to the
+following paragraph.
+
+  Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU General Public License into a single
+combined work, and to convey the resulting work.  The terms of this
+License will continue to apply to the part which is the covered work,
+but the work with which it is combined will remain governed by version
+3 of the GNU General Public License.
+
+  14. Revised Versions of this License.
+
+  The Free Software Foundation may publish revised and/or new versions of
+the GNU Affero General Public License from time to time.  Such new versions
+will be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+  Each version is given a distinguishing version number.  If the
+Program specifies that a certain numbered version of the GNU Affero General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation.  If the Program does not specify a version number of the
+GNU Affero General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+  If the Program specifies that a proxy can decide which future
+versions of the GNU Affero General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+  Later license versions may give you additional or different
+permissions.  However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+  15. Disclaimer of Warranty.
+
+  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. Limitation of Liability.
+
+  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+  17. Interpretation of Sections 15 and 16.
+
+  If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU Affero General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU Affero General Public License for more details.
+
+    You should have received a copy of the GNU Affero General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+  If your software can interact with users remotely through a computer
+network, you should also make sure that it provides a way for users to
+get its source.  For example, if your program is a web application, its
+interface could display a "Source" link that leads users to an archive
+of the code.  There are many ways you could offer source, and different
+solutions will be better for different programs; see section 13 for the
+specific requirements.
+
+  You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU AGPL, see
+<http://www.gnu.org/licenses/>.
Index: src/ReadGeom_turbomole.f90
===================================================================
--- src/ReadGeom_turbomole.f90	(revision 11)
+++ src/ReadGeom_turbomole.f90	(revision 12)
@@ -1,5 +1,36 @@
 SUBROUTINE ReadGeom_turbomole
 
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
   Use Path_module
   Use Io_module
 
Index: src/Step_DIIS_all.f90
===================================================================
--- src/Step_DIIS_all.f90	(revision 11)
+++ src/Step_DIIS_all.f90	(revision 12)
@@ -4,8 +4,43 @@
 !C  Geom_new = New Geometry.
 
     SUBROUTINE Step_diis_all(NGeomF,IGeom,Step,Geom,Grad,HP,HEAT,Hess,NCoord,allocation_flag,Tangent)
-!      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
 
+!----------------------------------------------------------------------
+! This routine was adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
     USE Io_module, only : IoOut 
     USE Path_module, only : Vfree
     
Index: src/WriteMixed_Gaussian.f90
===================================================================
--- src/WriteMixed_Gaussian.f90	(revision 0)
+++ src/WriteMixed_Gaussian.f90	(revision 12)
@@ -0,0 +1,138 @@
+SUBROUTINE WriteMixed_Gaussian(na,atome,NCart,ind_zmat,val_zmat)
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
+  Use Path_module, only :   Nom
+  Use Io_module
+
+  IMPLICIT NONE
+! Parameters of the subroutine
+! na: number of atoms in the system
+  integer(KINT), INTENT(IN) ::  na
+! atome: Mass number of the atoms of the system
+  integer(KINT), INTENT(IN) ::  atome(na)
+! nCart: number of atoms described in cartesian
+  integer(KINT), INTENT(IN) ::  NCart
+! ind_zmat: for "zmat" atoms contains the indices of reference atoms
+  integer(KINT), INTENT(IN) ::  ind_zmat(Na,5)
+! val_zmat: for "zmat" atoms contains the values from reference atoms
+  real(KREAL), INTENT(IN)   :: val_zmat(Na,3)
+
+  character(6) :: at1, at2, at3, at4, d, a, dh
+  Character(6) :: x,y,z
+  character(SCHARS), ALLOCATABLE :: tab(:) ! 3*na
+  character(LCHARS) :: ligne
+  
+  INTEGER(KINT) :: i,n1,n2,n3,n4, NZmat,ITab
+
+  ALLOCATE(tab(3*na))
+
+! We first write the Cartesian atoms
+
+  DO I=1,NCart
+! Name of the atom
+     n1=ind_zmat(i,1)
+     write(at1,11) nom(atome(n1)),n1
+     Call CleanString(at1,' ')
+! x
+     write(x,11) 'x',i
+     Call CleanString(x,' ')
+
+     write(tab(3*i-2),'(A,1X,F12.8)') trim(x),val_zmat(i,1)
+! y
+     write(y,11) 'y',i
+     Call CleanString(y,' ')
+     write(tab(3*i-1),'(A,1X,F12.8)') trim(y),val_zmat(i,2)
+! z
+     write(z,11) 'z',i
+     Call CleanString(z,' ')
+     write(tab(3*i),'(A,1X,F12.8)') trim(z),val_zmat(i,3)
+! write the line
+     write(ligne,'(1X,A,1X,A,1X,A,1X,A)') Trim(at1),x,y,z
+     write(IOOUT,*) TRIM(ligne)
+  END DO
+
+  NZmat=na-NCart
+  ITab=3*NCart+1
+
+  DO i=NCart+1,NZmat
+     IF (i .GE. 1)  THEN
+        n1=ind_zmat(i,1)
+        write(at1,11) nom(atome(n1)),n1
+11      format(a2,i3)
+        Call CleanString(at1,' ')
+        write(ligne,4) at1
+     END IF
+     IF (i .GE. 2)  THEN
+        n2=ind_zmat(i,2)
+        write(at2,11) nom(atome(n2)),n2
+        Call CleanString(At2,' ')
+        write(d,11) 'R',i-1
+        Call CleanString(D,' ')
+        write(ligne,4) at1,at2,d
+        write(tab(ITab),12) d,val_zmat(i,1)
+        ITab=ITab+1
+12      format(a8,f8.4)
+     END IF
+     IF (i .GE. 3)  THEN
+        n3=ind_zmat(i,3)
+        write(at3,11) nom(atome(n3)),n3
+        Call CleanString(At3,' ')
+        write(a,11) 'A',na+i-3
+        Call CleanString(A,' ')
+        write(ligne,4) at1,at2,d,at3,a
+        write(tab(ITab),13) a,val_zmat(i,2)
+        ITab=ITab+1
+13      format(a8,f8.3)
+     END IF
+     IF (i .GE. 4)  THEN
+        n4=ind_zmat(i,4)
+        write(at4,11) nom(atome(n4)),n4
+        Call CleanString(At4,' ')
+        write(dh,11) 'DH',na+na+i-6
+        Call CleanString(dh,' ')
+        write(ligne,4) at1,at2,d,at3,a,at4,dh
+4       format(7a6)
+        write(tab(ITab),13) dh,val_zmat(i,3)
+        ITab=ITab+1
+     END IF
+     write(IOOUT,*) TRIM(ligne)
+     END DO
+     
+     write(IOOUT,*)
+     DO i=1,ITab
+        write(IOOUT,*) TRIM(tab(i))
+     END DO
+     write(IOOUT,*)
+
+     DEALLOCATE(Tab)
+
+   END SUBROUTINE WriteMixed_Gaussian
Index: src/Makefile
===================================================================
--- src/Makefile	(revision 11)
+++ src/Makefile	(revision 12)
@@ -1,5 +1,5 @@
 ################### Makefile for Path ############
-# (C) PFL 2008
+# (C) PFL 2008-2014
 #################################################
 # Change the value of Machine before compiling
 # You might also have to edit the location of
@@ -26,7 +26,6 @@
 FreeF=-FR
 endif
 
-
 ifeq ($(Machine),g95)
 # Flags for g95 
 COMP=g95 -g   -Wall -fbounds-check
@@ -41,7 +40,6 @@
 ifeq ($(Machine),gfortran)
 # Flags for gfortran
 COMP=gfortran  -pedantic -std=gnu 
-#COMP=g95  -fbounds-check -g -ftrace=full -ftrace=frame  -save-temps
 F90=${COMP}
 F77=${COMP}
 LIBMATH= -llapack -lblas
@@ -49,7 +47,6 @@
 FreeF=-ffree-form
 endif
 
-
 ifeq ($(Machine),pgf)
 # Flags for PGF
 COMP=pgf90
@@ -144,29 +141,11 @@
 FreeF=-FR
 endif
 
-
-
-ifeq ($(Machine),arqP)
-# Flags for arq Ifort
-COMP=ifort
-#F90=${COMP}   -g -check bounds  -check format -check uninit  -traceback
-F90=${COMP}   -g -check all  -traceback
-F77=${F90}
-#F90=${COMP}  
-LIBMATH= -L/opt/intel/Compiler/11.1/064/mkl/lib/64  \
-  -Wl,--start-group -lmkl_intel_lp64 -lmkl_sequential \
-           -lmkl_core -Wl,--end-group
-LINK=${COMP} -lguide -lpthread   -L/usr/lib/
-FreeF=-FR
-endif
-
 ifeq ($(Machine),arqg)
 # Flags for arq GFortran
 COMP=gfortran -g -fbacktrace -fbounds-check -Wall -Wextra
 F90=${COMP}  
 F77=${F90}
-#F90=${COMP}  
-F90=${COMP}
 LIBMATH= -llapack -lblas
 LINK=${COMP}  -L/usr/lib/  
 FreeF=-ffree-form
@@ -233,6 +212,7 @@
       ReadInput_mopac.f90 \
       ReadInput_siesta.f90 \
       ReadAnaList.f90 \
+      Set_FileDelim.f90 \
       PrintAnaList.f90 \
       AnaPath.f90 \
       AnalyzeGeom.f90 \
@@ -265,7 +245,6 @@
       egrad_test_2D.f90 \
       egrad_vasp.f90 \
       egrad_turbomole.f90 \
-      egrad_chamfre.f90 \
       egrad_LEPS.f90 \
       CalcHess.f90 \
       Hupdate_all.f90 \
@@ -292,9 +271,7 @@
       Space_GEDIIS_all.f90 \
       Space_all.f90 \
       freemv.f90 \
-      Mat_util.f90 \
-      refsor.f90 \
-      Ginvse.f90
+      Mat_util.f90 
 
 SRC0= ConvertNumAt.f90 \
       CheckPeriodicBound.f90 \
@@ -310,6 +287,7 @@
       bib_oper.f90 \
       VectorPer.f90 \
       ZmatBuild.f90 \
+      WriteMixed_Gaussian.f90 \
       CalcCnct.f90 \
       ConvXyzZmat.f90 \
       ConvXyzMixed.f90 \
@@ -326,9 +304,6 @@
       Mixed2cart.f90 \
       Write_path.f90  \
       Write_vasp.f90  \
-      Std_ori.f90 \
-      Tensor.f90 \
-      cmshft.f90 \
       sinangle.f90 \
       Header.f90 \
       gaussj.f90  \
@@ -339,8 +314,7 @@
 
 MOD = VarTypes.mod \
       Path_module.mod \
-      Io_module.mod  \
-      m_mrgrnk.mod
+      Io_module.mod 
       
 MODo = $(MOD:.mod=.o)
 MODSRC = $(MOD:.mod=.f90)
@@ -350,21 +324,6 @@
 EXAMPLES = Path.valid  parameter.dat
 
 
-###############################################################
-#
-# For now, we also give Lapack and Blas source files in case
-# the libraries are not found by the user
-#
-###############################################################
-SRCLAPACKD=$(wildcard ./lapack/double/*.f )
-SRCLAPACKU=$(wildcard ./lapack/util/*.f )
-SRCBLAS=$(wildcard ./blas/*.f )
-
-OBJLAPACK=$(SRCLAPACKD:.f=.o) \
-        $(SRCLAPACKU:.f=.o)
-
-OBJBLAS=$(SRCBLAS:.f=.o)
-
 all: path utils
 
 install: 
@@ -378,8 +337,8 @@
 	@echo ""
 	@echo "Path.exe has been created."
 
-path_noL: ${MODo} ${OBJ} lapack blas
-	${LINK} -o Path.exe ${OBJ} ${MODo}  ./lapack/lapack.a ./blas/blas.a
+path_noL: ${MODo} ${OBJ} 
+	${LINK} -o Path.exe ${OBJ} ${MODo}  ./liblapack.a ./librefblas.a
 	@echo ""
 	@echo "Path.exe has been created."
 
@@ -395,23 +354,11 @@
 xyz2path: ../utils/Xyz2Path.f90 ../utils/Xyz2Path.param 
 	${F90} -o ../utils/xyz2path ../utils/Xyz2Path.f90
 
-tgz:  ${SRC0} ${SRC} Makefile ${EXAMPLES} ${MODSRC} ${SRCLAPACKD} ${SRCLAPACKU} ${SRCBLAS} 
-	tar -cvf OpenPath_${Version}.tar ${SRC0} ${SRC} Makefile ${EXAMPLES} ${MODSRC}
-	gzip OpenPath_${Version}.tar 
-	mv  OpenPath_${Version}.tar.gz OpenPath_${Version}.tgz
-	@echo "OpenPath_${Version}.tgz  has been created."
-
-lapack: ${OBJLAPACK} 
-	ar rcs ./lapack/lapack.a ${OBJLAPACK}
-
-blas: ${OBJBLAS}
-	ar rcs ./blas/blas.a ${OBJBLAS}
-
 clean:
-	rm -f *~ "#"* *.s ${OBJ} *.mod  ${MODo} ${OBJLAPACK} ${OBJBLAS}  
+	rm -f *~ "#"* *.s ${OBJ} *.mod  ${MODo}
 
 veryclean: clean
-	rm -f Path.exe ./lapack/lapack.a  ./blas/blas.a ../utils/xyz2scan ../utils/xyz2path
+	rm -f Path.exe ../utils/xyz2scan ../utils/xyz2path
 
 %.o : %.mod
 
Index: src/bib_oper.f90
===================================================================
--- src/bib_oper.f90	(revision 11)
+++ src/bib_oper.f90	(revision 12)
@@ -1,3 +1,33 @@
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
 
 !================================================================
 !       vecteur
@@ -33,7 +63,7 @@
          FUNCTION angle(v1x,v1y,v1z,norm1,v2x,v2y,v2z,norm2)
 
 
-        use Path_module, only :  Pi,KINT, KREAL
+        use Path_module, only :  Pi,KREAL
 
         real(KREAL) ::  v1x,v1y,v1z,norm1
         real(KREAL) ::  v2x,v2y,v2z,norm2
@@ -44,9 +74,9 @@
 !       write(6,*) v2x,v2y,v2z,norm2
 !       write(6,*)
         IF (abs(norm1) .LT. 1.D-4) THEN
-            STOP 'norm1 egale 0'
+            STOP 'Angle: norm1 egale 0'
         ELSE IF (abs(norm2) .LT. 1.D-4) THEN
-            STOP 'norm2 egale 0'
+            STOP 'Angle: norm2 egale 0'
         ELSE
           ps=v1x*v2x+v1y*v2y+v1z*v2z
           angle=dacos(ps/(norm1*norm2))*180./Pi
@@ -64,7 +94,7 @@
                           v2x,v2y,v2z,norm2, &
                           v3x,v3y,v3z,norm3)
 
-        use Path_module, only :  Pi,KINT, KREAL
+        use Path_module, only :  Pi, KREAL
 
         real(KREAL) ::  v1x,v1y,v1z,norm1
         real(KREAL) ::  v2x,v2y,v2z,norm2
@@ -78,11 +108,11 @@
 !       write(6,*)
         !Print *, 'Inside angle_d'
         IF (abs(norm1) .LT. 1.D-4) THEN
-            STOP 'norm1 egale 0'
+            STOP 'Angle_d: norm1 egale 0'
          ELSE IF (abs(norm2) .LT. 1.D-4) THEN
-            STOP 'norm2 egale 0'
+            STOP 'Angle_d: norm2 egale 0'
         ELSE IF (abs(norm3) .LT. 1.D-4) THEN
-            STOP 'norm3 egale 0'
+            STOP 'Angle_d: norm3 egale 0'
         ELSE
           ca=(v1x*v2x+v1y*v2y+v1z*v2z)/(norm1*norm2)
           sa=(v1x*(v2y*v3z-v2z*v3y) &
@@ -126,7 +156,7 @@
 
        SUBROUTINE rota_x(v1x,v1y,v1z,a11,a12)
 
-        use Path_module, only :  KINT, KREAL
+        use Path_module, only :  KREAL
 
         real(KREAL) ::  v1x,v1y,v1z
         real(KREAL) ::  v2x,v2y,v2z
@@ -152,7 +182,7 @@
 
        SUBROUTINE rota_y(v1x,v1y,v1z,a11,a12)
 
-        use Path_module, only :  KINT, KREAL
+        use Path_module, only :   KREAL
 
         real(KREAL) ::  v1x,v1y,v1z
         real(KREAL) ::  v2x,v2y,v2z
@@ -178,7 +208,7 @@
 
        SUBROUTINE rota_z(v1x,v1y,v1z,a11,a12)
 
-        use Path_module, only :  KINT, KREAL
+        use Path_module, only :   KREAL
 
         real(KREAL) ::  v1x,v1y,v1z
         real(KREAL) ::  v2x,v2y,v2z
Index: COPYING
===================================================================
--- COPYING	(revision 0)
+++ COPYING	(revision 12)
@@ -0,0 +1,661 @@
+                    GNU AFFERO GENERAL PUBLIC LICENSE
+                       Version 3, 19 November 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The GNU Affero General Public License is a free, copyleft license for
+software and other kinds of works, specifically designed to ensure
+cooperation with the community in the case of network server software.
+
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+our General Public Licenses are intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+  Developers that use our General Public Licenses protect your rights
+with two steps: (1) assert copyright on the software, and (2) offer
+you this License which gives you legal permission to copy, distribute
+and/or modify the software.
+
+  A secondary benefit of defending all users' freedom is that
+improvements made in alternate versions of the program, if they
+receive widespread use, become available for other developers to
+incorporate.  Many developers of free software are heartened and
+encouraged by the resulting cooperation.  However, in the case of
+software used on network servers, this result may fail to come about.
+The GNU General Public License permits making a modified version and
+letting the public access it on a server without ever releasing its
+source code to the public.
+
+  The GNU Affero General Public License is designed specifically to
+ensure that, in such cases, the modified source code becomes available
+to the community.  It requires the operator of a network server to
+provide the source code of the modified version running there to the
+users of that server.  Therefore, public use of a modified version, on
+a publicly accessible server, gives the public access to the source
+code of the modified version.
+
+  An older license, called the Affero General Public License and
+published by Affero, was designed to accomplish similar goals.  This is
+a different license, not a version of the Affero GPL, but Affero has
+released a new version of the Affero GPL which permits relicensing under
+this license.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                       TERMS AND CONDITIONS
+
+  0. Definitions.
+
+  "This License" refers to version 3 of the GNU Affero General Public License.
+
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
+
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+  To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy.  Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+  To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies.  Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+  An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License.  If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+  1. Source Code.
+
+  The "source code" for a work means the preferred form of the work
+for making modifications to it.  "Object code" means any non-source
+form of a work.
+
+  A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+  The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form.  A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+  The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities.  However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work.  For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+  The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+  The Corresponding Source for a work in source code form is that
+same work.
+
+  2. Basic Permissions.
+
+  All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met.  This License explicitly affirms your unlimited
+permission to run the unmodified Program.  The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work.  This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+  You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force.  You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright.  Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+  Conveying under any other circumstances is permitted solely under
+the conditions stated below.  Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+  No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+  When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+  4. Conveying Verbatim Copies.
+
+  You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+  You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+  5. Conveying Modified Source Versions.
+
+  You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+    a) The work must carry prominent notices stating that you modified
+    it, and giving a relevant date.
+
+    b) The work must carry prominent notices stating that it is
+    released under this License and any conditions added under section
+    7.  This requirement modifies the requirement in section 4 to
+    "keep intact all notices".
+
+    c) You must license the entire work, as a whole, under this
+    License to anyone who comes into possession of a copy.  This
+    License will therefore apply, along with any applicable section 7
+    additional terms, to the whole of the work, and all its parts,
+    regardless of how they are packaged.  This License gives no
+    permission to license the work in any other way, but it does not
+    invalidate such permission if you have separately received it.
+
+    d) If the work has interactive user interfaces, each must display
+    Appropriate Legal Notices; however, if the Program has interactive
+    interfaces that do not display Appropriate Legal Notices, your
+    work need not make them do so.
+
+  A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit.  Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+  6. Conveying Non-Source Forms.
+
+  You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+    a) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by the
+    Corresponding Source fixed on a durable physical medium
+    customarily used for software interchange.
+
+    b) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by a
+    written offer, valid for at least three years and valid for as
+    long as you offer spare parts or customer support for that product
+    model, to give anyone who possesses the object code either (1) a
+    copy of the Corresponding Source for all the software in the
+    product that is covered by this License, on a durable physical
+    medium customarily used for software interchange, for a price no
+    more than your reasonable cost of physically performing this
+    conveying of source, or (2) access to copy the
+    Corresponding Source from a network server at no charge.
+
+    c) Convey individual copies of the object code with a copy of the
+    written offer to provide the Corresponding Source.  This
+    alternative is allowed only occasionally and noncommercially, and
+    only if you received the object code with such an offer, in accord
+    with subsection 6b.
+
+    d) Convey the object code by offering access from a designated
+    place (gratis or for a charge), and offer equivalent access to the
+    Corresponding Source in the same way through the same place at no
+    further charge.  You need not require recipients to copy the
+    Corresponding Source along with the object code.  If the place to
+    copy the object code is a network server, the Corresponding Source
+    may be on a different server (operated by you or a third party)
+    that supports equivalent copying facilities, provided you maintain
+    clear directions next to the object code saying where to find the
+    Corresponding Source.  Regardless of what server hosts the
+    Corresponding Source, you remain obligated to ensure that it is
+    available for as long as needed to satisfy these requirements.
+
+    e) Convey the object code using peer-to-peer transmission, provided
+    you inform other peers where the object code and Corresponding
+    Source of the work are being offered to the general public at no
+    charge under subsection 6d.
+
+  A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+  A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling.  In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage.  For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product.  A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+  "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source.  The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+  If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information.  But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+  The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed.  Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+  Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+  7. Additional Terms.
+
+  "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law.  If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+  When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it.  (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.)  You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+  Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+    a) Disclaiming warranty or limiting liability differently from the
+    terms of sections 15 and 16 of this License; or
+
+    b) Requiring preservation of specified reasonable legal notices or
+    author attributions in that material or in the Appropriate Legal
+    Notices displayed by works containing it; or
+
+    c) Prohibiting misrepresentation of the origin of that material, or
+    requiring that modified versions of such material be marked in
+    reasonable ways as different from the original version; or
+
+    d) Limiting the use for publicity purposes of names of licensors or
+    authors of the material; or
+
+    e) Declining to grant rights under trademark law for use of some
+    trade names, trademarks, or service marks; or
+
+    f) Requiring indemnification of licensors and authors of that
+    material by anyone who conveys the material (or modified versions of
+    it) with contractual assumptions of liability to the recipient, for
+    any liability that these contractual assumptions directly impose on
+    those licensors and authors.
+
+  All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10.  If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term.  If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+  If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+  Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+  8. Termination.
+
+  You may not propagate or modify a covered work except as expressly
+provided under this License.  Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+  However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+  Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+  Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License.  If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+  9. Acceptance Not Required for Having Copies.
+
+  You are not required to accept this License in order to receive or
+run a copy of the Program.  Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance.  However,
+nothing other than this License grants you permission to propagate or
+modify any covered work.  These actions infringe copyright if you do
+not accept this License.  Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+  10. Automatic Licensing of Downstream Recipients.
+
+  Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License.  You are not responsible
+for enforcing compliance by third parties with this License.
+
+  An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations.  If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+  You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License.  For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+  11. Patents.
+
+  A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based.  The
+work thus licensed is called the contributor's "contributor version".
+
+  A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version.  For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+  Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+  In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement).  To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+  If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients.  "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+  If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+  A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License.  You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+  Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+  12. No Surrender of Others' Freedom.
+
+  If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all.  For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+  13. Remote Network Interaction; Use with the GNU General Public License.
+
+  Notwithstanding any other provision of this License, if you modify the
+Program, your modified version must prominently offer all users
+interacting with it remotely through a computer network (if your version
+supports such interaction) an opportunity to receive the Corresponding
+Source of your version by providing access to the Corresponding Source
+from a network server at no charge, through some standard or customary
+means of facilitating copying of software.  This Corresponding Source
+shall include the Corresponding Source for any work covered by version 3
+of the GNU General Public License that is incorporated pursuant to the
+following paragraph.
+
+  Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU General Public License into a single
+combined work, and to convey the resulting work.  The terms of this
+License will continue to apply to the part which is the covered work,
+but the work with which it is combined will remain governed by version
+3 of the GNU General Public License.
+
+  14. Revised Versions of this License.
+
+  The Free Software Foundation may publish revised and/or new versions of
+the GNU Affero General Public License from time to time.  Such new versions
+will be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+  Each version is given a distinguishing version number.  If the
+Program specifies that a certain numbered version of the GNU Affero General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation.  If the Program does not specify a version number of the
+GNU Affero General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+  If the Program specifies that a proxy can decide which future
+versions of the GNU Affero General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+  Later license versions may give you additional or different
+permissions.  However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+  15. Disclaimer of Warranty.
+
+  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. Limitation of Liability.
+
+  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+  17. Interpretation of Sections 15 and 16.
+
+  If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU Affero General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU Affero General Public License for more details.
+
+    You should have received a copy of the GNU Affero General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+  If your software can interact with users remotely through a computer
+network, you should also make sure that it provides a way for users to
+get its source.  For example, if your program is a web application, its
+interface could display a "Source" link that leads users to an archive
+of the code.  There are many ways you could offer source, and different
+solutions will be better for different programs; see section 13 for the
+specific requirements.
+
+  You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU AGPL, see
+<http://www.gnu.org/licenses/>.
Index: COPYRIGHT
===================================================================
--- COPYRIGHT	(revision 0)
+++ COPYRIGHT	(revision 12)
@@ -0,0 +1,36 @@
+!----------------------------------------------------------------------
+!  Copyright 2003-2014 Ecole Normale Supérieure de Lyon, 
+!  Centre National de la Recherche Scientifique,
+!  Université Claude Bernard Lyon 1. All rights reserved.
+!
+!  This work is registered with the Agency for the Protection of Programs 
+!  as IDDN.FR.001.100009.000.S.P.2014.000.30625
+!
+!  Authors: P. Fleurat-Lessard, P. Dayal
+!  Contact: optnpath@gmail.com
+!
+! This file is part of "Opt'n Path".
+!
+!  "Opt'n Path" is free software: you can redistribute it and/or modify
+!  it under the terms of the GNU Affero General Public License as
+!  published by the Free Software Foundation, either version 3 of the License,
+!  or (at your option) any later version.
+!
+!  "Opt'n Path" is distributed in the hope that it will be useful,
+!  but WITHOUT ANY WARRANTY; without even the implied warranty of
+!
+!  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+!  GNU Affero General Public License for more details.
+!
+!  You should have received a copy of the GNU Affero General Public License
+!  along with "Opt'n Path". If not, see <http://www.gnu.org/licenses/>.
+!
+!  Routines minv.f90, Step_DIIS.f90 (and variations), Space.f90 
+!  (and variations) were adapted from the public domain mopac6 diis.f 
+!  source file (c) 2009, Stewart Computational Chemistry.
+!  <http://www.openmopac.net/Downloads/Downloads.html>
+!
+! Contact The Office of Technology Licensing, valorisation@ens-lyon.fr,
+! for commercial licensing opportunities.
+!----------------------------------------------------------------------
+
Index: examples/Vasp/Parallel/run_Path_PBS
===================================================================
--- examples/Vasp/Parallel/run_Path_PBS	(revision 11)
+++ examples/Vasp/Parallel/run_Path_PBS	(revision 12)
@@ -26,7 +26,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Carte/src/Path.exe
+PathExe=~/Programs/optnpath/src/Path.exe
 #
 # Where is VASP ?
 #
Index: examples/Vasp/Parallel/run_Path_SGE_scratch
===================================================================
--- examples/Vasp/Parallel/run_Path_SGE_scratch	(revision 11)
+++ examples/Vasp/Parallel/run_Path_SGE_scratch	(revision 12)
@@ -38,7 +38,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=~/Programs/optnpath/src/Path.exe
 #
 # Where is VASP ?
 #
@@ -285,4 +285,4 @@
  ssh $server rm -rf ${SCRATCHDIR}
 done
 
-rm -rf ${SCRATCHDIR}
\ No newline at end of file
+rm -rf ${SCRATCHDIR}
Index: examples/Vasp/Parallel/run_Path_SGE_home
===================================================================
--- examples/Vasp/Parallel/run_Path_SGE_home	(revision 11)
+++ examples/Vasp/Parallel/run_Path_SGE_home	(revision 12)
@@ -40,7 +40,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=~/Programs/optnpath/src/Path.exe
 #
 # Where is VASP ?
 #
Index: examples/Vasp/Serial/run_Path
===================================================================
--- examples/Vasp/Serial/run_Path	(revision 11)
+++ examples/Vasp/Serial/run_Path	(revision 12)
@@ -23,7 +23,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Carte/src/Path.exe
+PathExe=~/Programs/optnpath/src/Path.exe
 #
 # Where is VASP ?
 #
Index: examples/Vasp/Serial/run_Path_PBS
===================================================================
--- examples/Vasp/Serial/run_Path_PBS	(revision 11)
+++ examples/Vasp/Serial/run_Path_PBS	(revision 12)
@@ -23,7 +23,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Carte/src/Path.exe
+PathExe=~/Programs/optnpath/src/Path.exe
 #
 # Where is VASP ?
 #
Index: examples/Vasp/Serial/run_Path_SGE_scratch
===================================================================
--- examples/Vasp/Serial/run_Path_SGE_scratch	(revision 11)
+++ examples/Vasp/Serial/run_Path_SGE_scratch	(revision 12)
@@ -39,7 +39,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=~/Programs/optnpath/src/Path.exe
 #
 # Where is VASP ?
 #
Index: examples/Vasp/Serial/run_Path_SGE_home
===================================================================
--- examples/Vasp/Serial/run_Path_SGE_home	(revision 11)
+++ examples/Vasp/Serial/run_Path_SGE_home	(revision 12)
@@ -27,7 +27,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=~/Programs/optnpath/src/Path.exe
 #
 # Where is VASP ?
 #
Index: examples/Gaussian/HCN_zmat/run_Path
===================================================================
--- examples/Gaussian/HCN_zmat/run_Path	(revision 11)
+++ examples/Gaussian/HCN_zmat/run_Path	(revision 12)
@@ -12,11 +12,11 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=../../../src/Path.exe
 #
 ### Gaussian Stuff
 # Change the path for g09root !!!
-export g09root=/home/pfleura2/G09
+export g09root=/home/pfleura2/Programs/G09
 export  GAUSS_SCRDIR=/tmp
 source $g09root/g09/bsd/g09.profile
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/lib/
@@ -40,7 +40,7 @@
 ###############################
 ln -fs ${PathExe} .
 
-./Path.exe ${Job}.path &> ${Job}.out
+./Path.exe ${Job}.path > ${Job}.out 2> ${Job}.err
 
 
 
Index: examples/Gaussian/HCN_zmat/run_Path_PBS
===================================================================
--- examples/Gaussian/HCN_zmat/run_Path_PBS	(revision 11)
+++ examples/Gaussian/HCN_zmat/run_Path_PBS	(revision 12)
@@ -21,7 +21,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Carte/src/Path.exe
+PathExe=~/Programs/optnpath/src/Path.exe
 #
 ### Gaussian Stuff
 # Change the path for g09root !!!
Index: examples/Gaussian/HCN_zmat/HCN_Gaussian.path
===================================================================
--- examples/Gaussian/HCN_zmat/HCN_Gaussian.path	(revision 11)
+++ examples/Gaussian/HCN_zmat/HCN_Gaussian.path	(revision 12)
@@ -10,7 +10,7 @@
   FFrozen=F,  ! Some atoms  are frozen. See FrozenList.
   PathOnly=.F.,  ! do NOT stop after generating the first path
   AutoCart=F, ! Determine automatically atom described in cartesian.
-  HesUpd="MS", ! Use Murtagh-Sargent update for the Hessian matrix
+  HUpdate="MS", ! Use Murtagh-Sargent update for the Hessian matrix
   PathName="Test_Gaussian",  ! Geometries along the path store in 'Test_Gaussian.XXX'
   prog="gaussian",  ! Use Gaussian to get E and forces.
   ProgExe="g09", ! Use g09 for Gaussian executable
Index: examples/Gaussian/SN2_mixed/SN2_mixed.path
===================================================================
--- examples/Gaussian/SN2_mixed/SN2_mixed.path	(revision 11)
+++ examples/Gaussian/SN2_mixed/SN2_mixed.path	(revision 12)
@@ -10,7 +10,7 @@
   FFrozen=F,  ! Some atoms  are frozen. See FrozenList.
   PathOnly=.F.,  ! do NOT stop after generating the first path
   AutoCart=T, ! Determine automatically atom described in cartesian.
-  HesUpd="MS", ! Use Murtagh-Sargent update for the Hessian matrix
+  HUpdate="MS", ! Use Murtagh-Sargent update for the Hessian matrix
   PathName="Test_Gaussian",  ! Geometries along the path store in 'Test_Gaussian.XXX'
   prog="gaussian",  ! Use Gaussian to get E and forces.
   ProgExe="g09", ! Use g09 for Gaussian executable
Index: examples/Gaussian/SN2_mixed/run_Path
===================================================================
--- examples/Gaussian/SN2_mixed/run_Path	(revision 11)
+++ examples/Gaussian/SN2_mixed/run_Path	(revision 12)
@@ -12,11 +12,11 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=../../../src/Path.exe
 #
 ### Gaussian Stuff
 # Change the path for g09root !!!
-export g09root=/home/pfleura2/G09
+export g09root=/home/pfleura2/Programs/G09
 export  GAUSS_SCRDIR=/tmp
 source $g09root/g09/bsd/g09.profile
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/lib/
@@ -40,7 +40,7 @@
 ###############################
 ln -fs ${PathExe} .
 
-./Path.exe ${Job}.path &> ${Job}.out
+./Path.exe ${Job}.path > ${Job}.out 2> ${Job}.err
 
 
 
Index: examples/Gaussian/SN2_cart/SN2_cart.path
===================================================================
--- examples/Gaussian/SN2_cart/SN2_cart.path	(revision 11)
+++ examples/Gaussian/SN2_cart/SN2_cart.path	(revision 12)
@@ -10,7 +10,7 @@
   FFrozen=F,  ! Some atoms  are frozen. See FrozenList.
   PathOnly=.F.,  ! do NOT stop after generating the first path
   AutoCart=T, ! Determine automatically atom described in cartesian.
-  HesUpd="MS", ! Use Murtagh-Sargent update for the Hessian matrix
+  HUpdate="MS", ! Use Murtagh-Sargent update for the Hessian matrix
   PathName="Test_Gaussian",  ! Geometries along the path store in 'Test_Gaussian.XXX'
   prog="gaussian",  ! Use Gaussian to get E and forces.
   ProgExe="g09", ! Use g09 for Gaussian executable
Index: examples/Gaussian/SN2_cart/run_Path
===================================================================
--- examples/Gaussian/SN2_cart/run_Path	(revision 11)
+++ examples/Gaussian/SN2_cart/run_Path	(revision 12)
@@ -12,11 +12,11 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=../../../src/Path.exe
 #
 ### Gaussian Stuff
 # Change the path for g09root !!!
-export g09root=/home/pfleura2/G09
+export g09root=/home/pfleura2/Programs/G09
 export  GAUSS_SCRDIR=/tmp
 source $g09root/g09/bsd/g09.profile
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/lib/
Index: examples/Gaussian/SN2_zmat/run_Path
===================================================================
--- examples/Gaussian/SN2_zmat/run_Path	(revision 11)
+++ examples/Gaussian/SN2_zmat/run_Path	(revision 12)
@@ -12,11 +12,11 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=../../../src/Path.exe
 #
 ### Gaussian Stuff
 # Change the path for g09root !!!
-export g09root=/home/pfleura2/G09
+export g09root=/home/pfleura2/Programs/G09
 export  GAUSS_SCRDIR=/tmp
 source $g09root/g09/bsd/g09.profile
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/lib/
@@ -40,7 +40,7 @@
 ###############################
 ln -fs ${PathExe} .
 
-./Path.exe ${Job}.path &> ${Job}.out
+./Path.exe ${Job}.path > ${Job}.out 2> ${Job}.err
 
 
 
Index: examples/Mopac/CSMe6_mixed/run_Path
===================================================================
--- examples/Mopac/CSMe6_mixed/run_Path	(revision 11)
+++ examples/Mopac/CSMe6_mixed/run_Path	(revision 12)
@@ -12,7 +12,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=../../../src/Path.exe
 #
 ### MOPAC Stuff
 # In fact, this is useless as they are defined again in the mopac script
@@ -21,9 +21,9 @@
 
 set -x
 ## You might have to change MOPAC_ROOT and/or MOPAC_LICENSE
-export MOPAC_ROOT=~/Programs/MOPAC2009
+export MOPAC_ROOT=~/Programs/MOPAC2012
 export MOPAC_LICENSE=\${MOPAC_ROOT}
-export mopac=\${MOPAC_ROOT}/MOPAC2009.exe
+export mopac=\${MOPAC_ROOT}/MOPAC2012.exe
 
 echo "Running \${mopac} \$1"
 \${mopac} \$1
Index: examples/Mopac/CSMe6_cart/run_Path
===================================================================
--- examples/Mopac/CSMe6_cart/run_Path	(revision 11)
+++ examples/Mopac/CSMe6_cart/run_Path	(revision 12)
@@ -12,7 +12,7 @@
 #
 # Where is Path.exe ??
 #
-PathExe=~/Programs/Chemin/OpenPath/src/Path.exe
+PathExe=~/Programs/Chemin/optnpath/src/Path.exe
 #
 ### MOPAC Stuff
 # In fact, this is useless as they are defined again in the mopac script
@@ -21,9 +21,9 @@
 
 set -x
 ## You might have to change MOPAC_ROOT and/or MOPAC_LICENSE
-export MOPAC_ROOT=~/Programs/MOPAC2009
+export MOPAC_ROOT=~/Programs/MOPAC2012
 export MOPAC_LICENSE=\${MOPAC_ROOT}
-export mopac=\${MOPAC_ROOT}/MOPAC2009.exe
+export mopac=\${MOPAC_ROOT}/MOPAC2012.exe
 
 echo "Running \${mopac} \$1"
 \${mopac} \$1
Index: examples/Test/Dep_tscan_p
===================================================================
--- examples/Test/Dep_tscan_p	(revision 11)
+++ examples/Test/Dep_tscan_p	(revision 12)
@@ -12,8 +12,8 @@
 
 WDir=`dirname $0`
 
-
 NomGplot=${Nom}_p.gplot
+
 if [ ! -s list ]; then
  echo "File list is missing"
  exit
@@ -31,12 +31,11 @@
 awk -f $WDir/Dep_tgt.awk $Fout 
 cat <<EOF > $NomGplot
 #!/usr/bin/gnuplot -persist
- set term x11
  set pointsize 2
  set origin 0.,0.
  set size square 1
 EOF
-let ItM=ItMax-1
+let ItM=ItMax-2
 for i in `seq 0 $ItM`
   do
  xyz2scan ${Nom}${Ext}.${i} > /dev/null
@@ -89,7 +88,7 @@
  fi
  echo "pause -1" >> $NomGplot
  done
- let i=ItMax
+ let i=ItMax-1
  xyz2scan ${Nom}${Ext}.${i} > /dev/null
  mv Scan.dat ${Nom}_${i}.dat
  cat <<EOF >>  $NomGplot
Index: examples/Test/Cart/Test/HCN_cart.out
===================================================================
--- examples/Test/Cart/Test/HCN_cart.out	(revision 11)
+++ examples/Test/Cart/Test/HCN_cart.out	(revision 12)
@@ -1,83 +1,62 @@
- OpenPath v1.4 (c) PFL/PD 2007-2011
+ Opt'n Path v1.50 (c) PFL/PD 2003-2014
  Input has been set to the default: XYZ                             
  NAT =     3
  NGEOMI =     3
  NGEOMF =    12
  MAXCYC =    51
  PATHNAME =  Path
+ Working in MW coordinates
  Prog=TEST
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- GeomTmp=
- -0.000  0.000 -0.000 -0.000  0.000 -0.000  0.039  1.127  2.234
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  0.000  0.001 -0.000  0.281 -0.004 -0.002  0.262  1.136  2.261
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  0.000  0.003 -0.000  0.547 -0.017 -0.003  0.508  1.126  2.263
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  0.000  0.003  0.000  0.801 -0.028 -0.004  0.763  1.122  2.260
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  0.000  0.000  0.000  1.053 -0.016 -0.009  1.020  1.134  2.244
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  0.000  0.000  0.000  0.998 -0.024 -0.002  1.366  1.124  2.236
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
- -0.000 -0.000  0.001  0.839 -0.020 -0.010  1.691  1.121  2.235
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
- -0.000  0.003  0.002  0.673 -0.005 -0.035  2.009  1.120  2.254
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
- -0.001 -0.001  0.003  0.514 -0.004 -0.038  2.333  1.116  2.251
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
- -0.000 -0.005  0.004  0.357  0.001 -0.017  2.656  1.101  2.231
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
- -0.000 -0.002  0.002  0.189  0.001 -0.008  2.975  1.100  2.225
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  0.000  0.000 -0.000  0.000  0.000 -0.000  3.269  1.092  2.299
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
+ Creating Input for Geometry   1/ 12 for iteration   0
+ Computing and reading forces for Geometry   1/ 12 for iteration   0
+ Creating Input for Geometry   2/ 12 for iteration   0
+ Computing and reading forces for Geometry   2/ 12 for iteration   0
+ Creating Input for Geometry   3/ 12 for iteration   0
+ Computing and reading forces for Geometry   3/ 12 for iteration   0
+ Creating Input for Geometry   4/ 12 for iteration   0
+ Computing and reading forces for Geometry   4/ 12 for iteration   0
+ Creating Input for Geometry   5/ 12 for iteration   0
+ Computing and reading forces for Geometry   5/ 12 for iteration   0
+ Creating Input for Geometry   6/ 12 for iteration   0
+ Computing and reading forces for Geometry   6/ 12 for iteration   0
+ Creating Input for Geometry   7/ 12 for iteration   0
+ Computing and reading forces for Geometry   7/ 12 for iteration   0
+ Creating Input for Geometry   8/ 12 for iteration   0
+ Computing and reading forces for Geometry   8/ 12 for iteration   0
+ Creating Input for Geometry   9/ 12 for iteration   0
+ Computing and reading forces for Geometry   9/ 12 for iteration   0
+ Creating Input for Geometry  10/ 12 for iteration   0
+ Computing and reading forces for Geometry  10/ 12 for iteration   0
+ Creating Input for Geometry  11/ 12 for iteration   0
+ Computing and reading forces for Geometry  11/ 12 for iteration   0
+ Creating Input for Geometry  12/ 12 for iteration   0
+ Computing and reading forces for Geometry  12/ 12 for iteration   0
+  Forces all read. Moving on
+ Creating Input for Geometry   1/ 12 for iteration   1
+ Computing and reading forces for Geometry   1/ 12 for iteration   1
+ Creating Input for Geometry   2/ 12 for iteration   1
+ Computing and reading forces for Geometry   2/ 12 for iteration   1
+ Creating Input for Geometry   3/ 12 for iteration   1
+ Computing and reading forces for Geometry   3/ 12 for iteration   1
+ Creating Input for Geometry   4/ 12 for iteration   1
+ Computing and reading forces for Geometry   4/ 12 for iteration   1
+ Creating Input for Geometry   5/ 12 for iteration   1
+ Computing and reading forces for Geometry   5/ 12 for iteration   1
+ Creating Input for Geometry   6/ 12 for iteration   1
+ Computing and reading forces for Geometry   6/ 12 for iteration   1
+ Creating Input for Geometry   7/ 12 for iteration   1
+ Computing and reading forces for Geometry   7/ 12 for iteration   1
+ Creating Input for Geometry   8/ 12 for iteration   1
+ Computing and reading forces for Geometry   8/ 12 for iteration   1
+ Creating Input for Geometry   9/ 12 for iteration   1
+ Computing and reading forces for Geometry   9/ 12 for iteration   1
+ Creating Input for Geometry  10/ 12 for iteration   1
+ Computing and reading forces for Geometry  10/ 12 for iteration   1
+ Creating Input for Geometry  11/ 12 for iteration   1
+ Computing and reading forces for Geometry  11/ 12 for iteration   1
+ Creating Input for Geometry  12/ 12 for iteration   1
+ Computing and reading forces for Geometry  12/ 12 for iteration   1
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   1
      H   -0.000000   -0.000000    0.038569
@@ -85,71 +64,84 @@
      N   -0.000000   -0.000000    2.234480
      3
 Geometry   2/ 12 for iteration   1
-     H    0.000179    0.281432    0.262148
-     C    0.000990   -0.004410    1.136123
-     N   -0.000480   -0.002424    2.260898
+     H    0.000180    0.282956    0.263563
+     C    0.001003   -0.004483    1.136062
+     N   -0.000478   -0.002429    2.260911
      3
 Geometry   3/ 12 for iteration   1
-     H    0.000303    0.546589    0.508343
-     C    0.003185   -0.017195    1.125538
-     N   -0.000175   -0.003455    2.263274
+     H    0.000296    0.555385    0.517103
+     C    0.003172   -0.017571    1.125383
+     N   -0.000155   -0.003476    2.263169
      3
 Geometry   4/ 12 for iteration   1
-     H    0.000062    0.800519    0.763292
-     C    0.002533   -0.027856    1.121739
-     N    0.000408   -0.004014    2.259603
+     H    0.000049    0.820611    0.783571
+     C    0.002429   -0.027983    1.121947
+     N    0.000423   -0.004214    2.258936
      3
 Geometry   5/ 12 for iteration   1
-     H    0.000009    1.052765    1.019741
-     C    0.000262   -0.016287    1.133669
-     N    0.000019   -0.009410    2.244331
+     H    0.000007    1.064293    1.048229
+     C    0.000127   -0.015944    1.133937
+     N   -0.000000   -0.009407    2.243119
      3
 Geometry   6/ 12 for iteration   1
-     H    0.000010    0.997810    1.365994
-     C    0.000108   -0.024443    1.123585
-     N    0.000137   -0.002221    2.236140
+     H    0.000007    0.977634    1.407325
+     C    0.000078   -0.023874    1.123207
+     N    0.000201   -0.003169    2.235995
      3
 Geometry   7/ 12 for iteration   1
-     H   -0.000016    0.838991    1.691078
-     C   -0.000085   -0.019839    1.120635
-     N    0.000650   -0.009882    2.235240
+     H   -0.000054    0.812994    1.740746
+     C    0.000439   -0.017413    1.120508
+     N    0.000902   -0.013930    2.238333
      3
 Geometry   8/ 12 for iteration   1
-     H   -0.000263    0.672990    2.008845
-     C    0.003042   -0.004789    1.119729
-     N    0.002237   -0.035057    2.254316
+     H   -0.000316    0.648904    2.057902
+     C    0.002458   -0.004707    1.119156
+     N    0.002367   -0.035501    2.253874
      3
 Geometry   9/ 12 for iteration   1
-     H   -0.000612    0.513652    2.333376
-     C   -0.000819   -0.004244    1.115942
-     N    0.003096   -0.037995    2.251391
+     H   -0.000567    0.484523    2.393060
+     C   -0.001517   -0.003449    1.113471
+     N    0.003202   -0.034643    2.247955
      3
 Geometry  10/ 12 for iteration   1
-     H   -0.000285    0.356553    2.655542
-     C   -0.004576    0.000562    1.101294
-     N    0.003633   -0.017031    2.230704
+     H   -0.000229    0.326616    2.714210
+     C   -0.004594    0.000955    1.100181
+     N    0.003488   -0.014534    2.228641
      3
 Geometry  11/ 12 for iteration   1
-     H   -0.000008    0.189014    2.975301
-     C   -0.002498    0.001055    1.100498
-     N    0.002049   -0.008137    2.225329
+     H    0.000019    0.153958    3.035497
+     C   -0.002001    0.000964    1.099675
+     N    0.001676   -0.006571    2.232121
      3
 Geometry  12/ 12 for iteration   1
      H    0.000000    0.000000    3.269430
      C    0.000000    0.000000    1.091717
      N   -0.000000   -0.000000    2.298689
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
+ Creating Input for Geometry   1/ 12 for iteration   2
+ Computing and reading forces for Geometry   1/ 12 for iteration   2
+ Creating Input for Geometry   2/ 12 for iteration   2
+ Computing and reading forces for Geometry   2/ 12 for iteration   2
+ Creating Input for Geometry   3/ 12 for iteration   2
+ Computing and reading forces for Geometry   3/ 12 for iteration   2
+ Creating Input for Geometry   4/ 12 for iteration   2
+ Computing and reading forces for Geometry   4/ 12 for iteration   2
+ Creating Input for Geometry   5/ 12 for iteration   2
+ Computing and reading forces for Geometry   5/ 12 for iteration   2
+ Creating Input for Geometry   6/ 12 for iteration   2
+ Computing and reading forces for Geometry   6/ 12 for iteration   2
+ Creating Input for Geometry   7/ 12 for iteration   2
+ Computing and reading forces for Geometry   7/ 12 for iteration   2
+ Creating Input for Geometry   8/ 12 for iteration   2
+ Computing and reading forces for Geometry   8/ 12 for iteration   2
+ Creating Input for Geometry   9/ 12 for iteration   2
+ Computing and reading forces for Geometry   9/ 12 for iteration   2
+ Creating Input for Geometry  10/ 12 for iteration   2
+ Computing and reading forces for Geometry  10/ 12 for iteration   2
+ Creating Input for Geometry  11/ 12 for iteration   2
+ Computing and reading forces for Geometry  11/ 12 for iteration   2
+ Creating Input for Geometry  12/ 12 for iteration   2
+ Computing and reading forces for Geometry  12/ 12 for iteration   2
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   2
      H   -0.000000   -0.000000    0.041614
@@ -157,71 +149,84 @@
      N   -0.000000   -0.000000    2.256095
      3
 Geometry   2/ 12 for iteration   2
-     H   -0.000059    0.302364    0.238936
-     C    0.000778   -0.009905    1.135679
-     N   -0.000658   -0.006192    2.295653
+     H   -0.000026    0.295546    0.232201
+     C    0.000755   -0.009882    1.136105
+     N   -0.000954   -0.005788    2.295400
      3
 Geometry   3/ 12 for iteration   2
-     H    0.000070    0.569763    0.486746
-     C    0.004204   -0.023511    1.119386
-     N   -0.000267   -0.011068    2.298230
+     H   -0.000630    0.581617    0.497633
+     C    0.004221   -0.026485    1.116689
+     N   -0.000546   -0.011672    2.297597
      3
 Geometry   4/ 12 for iteration   2
-     H    0.000260    0.827379    0.742436
-     C    0.003770   -0.039422    1.115651
-     N    0.000811   -0.013520    2.291643
+     H   -0.000526    0.860854    0.779010
+     C    0.002665   -0.039990    1.111528
+     N    0.000209   -0.015510    2.289824
      3
 Geometry   5/ 12 for iteration   2
-     H   -0.001234    1.082821    1.001711
-     C   -0.001045   -0.030933    1.125604
-     N   -0.001234   -0.026175    2.269224
+     H    0.000408    1.083833    1.068158
+     C    0.000470   -0.031096    1.123868
+     N    0.000422   -0.021195    2.266948
      3
 Geometry   6/ 12 for iteration   2
-     H   -0.000088    1.031415    1.357773
-     C    0.000114   -0.056909    1.108358
-     N    0.000038   -0.000475    2.243293
+     H    0.000062    1.007819    1.422027
+     C    0.000003   -0.057837    1.109740
+     N    0.000259   -0.000653    2.237719
      3
 Geometry   7/ 12 for iteration   2
-     H   -0.000098    0.882750    1.686995
-     C   -0.000330   -0.046804    1.105809
-     N    0.000455   -0.019290    2.239461
+     H   -0.000529    0.846701    1.759156
+     C    0.000182   -0.038175    1.110560
+     N    0.001280   -0.034514    2.241499
      3
 Geometry   8/ 12 for iteration   2
-     H   -0.002094    0.714897    2.010147
-     C    0.004218   -0.026178    1.104106
-     N    0.004641   -0.046410    2.244417
+     H   -0.005487    0.678646    2.070739
+     C    0.004759   -0.004674    1.105592
+     N    0.006830   -0.069725    2.255034
      3
 Geometry   9/ 12 for iteration   2
-     H   -0.014247    0.550294    2.333951
-     C    0.000540   -0.021046    1.107406
-     N    0.017445   -0.051690    2.238075
+     H   -0.007983    0.511240    2.389986
+     C    0.001951    0.001746    1.110813
+     N    0.008220   -0.045424    2.216251
      3
 Geometry  10/ 12 for iteration   2
-     H   -0.005693    0.388132    2.657159
-     C   -0.005982    0.000299    1.079561
-     N    0.010646   -0.043008    2.245832
+     H   -0.001381    0.338694    2.701093
+     C   -0.003671    0.001390    1.083377
+     N    0.005986   -0.006105    2.212369
      3
 Geometry  11/ 12 for iteration   2
-     H   -0.000823    0.219376    2.978390
-     C   -0.003220    0.001043    1.066926
-     N    0.002179   -0.020939    2.227488
+     H   -0.000446    0.170711    3.037383
+     C   -0.002479    0.000017    1.064776
+     N    0.002038   -0.007489    2.234767
      3
 Geometry  12/ 12 for iteration   2
      H    0.000006   -0.000002    3.254088
      C   -0.000003   -0.000004    1.127912
      N   -0.000000   -0.000000    2.277956
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
+ Creating Input for Geometry   1/ 12 for iteration   3
+ Computing and reading forces for Geometry   1/ 12 for iteration   3
+ Creating Input for Geometry   2/ 12 for iteration   3
+ Computing and reading forces for Geometry   2/ 12 for iteration   3
+ Creating Input for Geometry   3/ 12 for iteration   3
+ Computing and reading forces for Geometry   3/ 12 for iteration   3
+ Creating Input for Geometry   4/ 12 for iteration   3
+ Computing and reading forces for Geometry   4/ 12 for iteration   3
+ Creating Input for Geometry   5/ 12 for iteration   3
+ Computing and reading forces for Geometry   5/ 12 for iteration   3
+ Creating Input for Geometry   6/ 12 for iteration   3
+ Computing and reading forces for Geometry   6/ 12 for iteration   3
+ Creating Input for Geometry   7/ 12 for iteration   3
+ Computing and reading forces for Geometry   7/ 12 for iteration   3
+ Creating Input for Geometry   8/ 12 for iteration   3
+ Computing and reading forces for Geometry   8/ 12 for iteration   3
+ Creating Input for Geometry   9/ 12 for iteration   3
+ Computing and reading forces for Geometry   9/ 12 for iteration   3
+ Creating Input for Geometry  10/ 12 for iteration   3
+ Computing and reading forces for Geometry  10/ 12 for iteration   3
+ Creating Input for Geometry  11/ 12 for iteration   3
+ Computing and reading forces for Geometry  11/ 12 for iteration   3
+ Creating Input for Geometry  12/ 12 for iteration   3
+ Computing and reading forces for Geometry  12/ 12 for iteration   3
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   3
      H   -0.000000   -0.000000    0.036475
@@ -229,71 +234,84 @@
      N   -0.000000   -0.000000    2.258665
      3
 Geometry   2/ 12 for iteration   3
-     H   -0.002400    0.320397    0.210020
-     C   -0.000931    0.002406    1.153782
-     N   -0.003035   -0.025145    2.312700
+     H   -0.001603    0.299484    0.194769
+     C   -0.000510    0.004839    1.153577
+     N   -0.002723   -0.022752    2.312843
      3
 Geometry   3/ 12 for iteration   3
-     H   -0.001091    0.591006    0.463750
-     C    0.006899   -0.011461    1.137617
-     N    0.000266   -0.028541    2.312779
+     H   -0.003334    0.610539    0.475849
+     C    0.006430   -0.017265    1.133569
+     N   -0.000973   -0.034829    2.309889
      3
 Geometry   4/ 12 for iteration   3
-     H    0.000563    0.854983    0.724106
-     C    0.005421   -0.033268    1.134432
-     N    0.001889   -0.031531    2.306204
+     H   -0.000965    0.905574    0.786290
+     C    0.003460   -0.028770    1.130160
+     N    0.000493   -0.040217    2.300046
      3
 Geometry   5/ 12 for iteration   3
-     H   -0.002159    1.084974    1.006840
-     C   -0.002033   -0.018862    1.128202
-     N   -0.002158   -0.041302    2.277946
+     H    0.000865    1.068860    1.113280
+     C    0.000900   -0.019013    1.128071
+     N    0.000920   -0.030236    2.269089
      3
 Geometry   6/ 12 for iteration   3
-     H   -0.000060    1.036576    1.359973
-     C    0.000190   -0.078481    1.100939
-     N    0.000095    0.019760    2.228376
+     H   -0.000077    1.020665    1.411184
+     C   -0.000113   -0.078017    1.104119
+     N    0.000129    0.012394    2.226236
      3
 Geometry   7/ 12 for iteration   3
-     H    0.000124    0.910783    1.706200
-     C   -0.000101   -0.077183    1.099618
-     N    0.000817   -0.013597    2.221461
+     H   -0.001860    0.902452    1.709975
+     C   -0.000676   -0.058594    1.108446
+     N    0.000339   -0.042682    2.228425
      3
 Geometry   8/ 12 for iteration   3
-     H   -0.004014    0.741435    2.034441
-     C    0.005683   -0.045490    1.100106
-     N    0.006579   -0.055842    2.221592
+     H   -0.007849    0.727005    2.039976
+     C    0.006354   -0.019234    1.114835
+     N    0.008900   -0.083803    2.225819
      3
 Geometry   9/ 12 for iteration   3
-     H   -0.045943    0.558151    2.350249
-     C    0.002503   -0.025273    1.106689
-     N    0.048600   -0.056338    2.226162
+     H   -0.021439    0.543919    2.377604
+     C    0.004397    0.002938    1.080616
+     N    0.019059   -0.060722    2.224034
      3
 Geometry  10/ 12 for iteration   3
-     H   -0.009018    0.409369    2.680015
-     C   -0.006044    0.000104    1.055743
-     N    0.014121   -0.069142    2.259402
+     H   -0.010330    0.357918    2.682930
+     C   -0.002431    0.002778    1.063822
+     N    0.012778   -0.001909    2.201989
      3
 Geometry  11/ 12 for iteration   3
-     H   -0.001003    0.240705    3.005201
-     C   -0.002605    0.000710    1.055149
-     N    0.004598   -0.044050    2.224034
+     H   -0.002885    0.177435    3.051887
+     C   -0.003938   -0.003411    1.048691
+     N    0.004739    0.000353    2.213340
      3
 Geometry  12/ 12 for iteration   3
      H    0.000003   -0.000001    3.273989
      C   -0.000001   -0.000002    1.109463
      N   -0.000000   -0.000000    2.276492
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
+ Creating Input for Geometry   1/ 12 for iteration   4
+ Computing and reading forces for Geometry   1/ 12 for iteration   4
+ Creating Input for Geometry   2/ 12 for iteration   4
+ Computing and reading forces for Geometry   2/ 12 for iteration   4
+ Creating Input for Geometry   3/ 12 for iteration   4
+ Computing and reading forces for Geometry   3/ 12 for iteration   4
+ Creating Input for Geometry   4/ 12 for iteration   4
+ Computing and reading forces for Geometry   4/ 12 for iteration   4
+ Creating Input for Geometry   5/ 12 for iteration   4
+ Computing and reading forces for Geometry   5/ 12 for iteration   4
+ Creating Input for Geometry   6/ 12 for iteration   4
+ Computing and reading forces for Geometry   6/ 12 for iteration   4
+ Creating Input for Geometry   7/ 12 for iteration   4
+ Computing and reading forces for Geometry   7/ 12 for iteration   4
+ Creating Input for Geometry   8/ 12 for iteration   4
+ Computing and reading forces for Geometry   8/ 12 for iteration   4
+ Creating Input for Geometry   9/ 12 for iteration   4
+ Computing and reading forces for Geometry   9/ 12 for iteration   4
+ Creating Input for Geometry  10/ 12 for iteration   4
+ Computing and reading forces for Geometry  10/ 12 for iteration   4
+ Creating Input for Geometry  11/ 12 for iteration   4
+ Computing and reading forces for Geometry  11/ 12 for iteration   4
+ Creating Input for Geometry  12/ 12 for iteration   4
+ Computing and reading forces for Geometry  12/ 12 for iteration   4
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   4
      H   -0.000000   -0.000000    0.038528
@@ -301,70 +319,81 @@
      N   -0.000000   -0.000000    2.257427
      3
 Geometry   2/ 12 for iteration   4
-     H   -0.005123    0.330906    0.192219
-     C   -0.003120    0.030266    1.169914
-     N   -0.005511   -0.048938    2.324299
+     H   -0.001896    0.278430    0.161659
+     C   -0.000971    0.033452    1.167069
+     N   -0.003024   -0.038863    2.321901
      3
 Geometry   3/ 12 for iteration   4
-     H   -0.005337    0.610854    0.448535
-     C    0.006477    0.009198    1.157398
-     N   -0.001190   -0.049049    2.325061
+     H   -0.008261    0.622929    0.450865
+     C    0.006467    0.004302    1.152308
+     N   -0.002335   -0.059537    2.320628
      3
 Geometry   4/ 12 for iteration   4
-     H   -0.002757    0.883661    0.713013
-     C    0.002240   -0.017817    1.152118
-     N   -0.000921   -0.058558    2.319002
+     H   -0.006053    0.937959    0.789788
+     C   -0.001388   -0.012924    1.143565
+     N   -0.004108   -0.070410    2.307288
      3
 Geometry   5/ 12 for iteration   4
-     H   -0.005176    1.090391    1.018266
-     C   -0.005092   -0.003967    1.138695
-     N   -0.005160   -0.072637    2.288750
+     H    0.004919    1.067997    1.117677
+     C    0.004960   -0.023791    1.124467
+     N    0.004957   -0.007852    2.263477
      3
 Geometry   6/ 12 for iteration   4
-     H    0.001339    1.034167    1.354130
-     C    0.001600   -0.093849    1.092943
-     N    0.001489    0.048414    2.214040
+     H    0.002642    1.029919    1.392956
+     C    0.002638   -0.099188    1.096233
+     N    0.002814    0.045823    2.213593
      3
 Geometry   7/ 12 for iteration   4
-     H    0.000558    0.938248    1.715059
-     C    0.000335   -0.105410    1.087629
-     N    0.001268   -0.001369    2.203941
+     H   -0.001564    0.909248    1.742845
+     C    0.001693   -0.084703    1.094052
+     N    0.003060   -0.020946    2.216847
      3
 Geometry   8/ 12 for iteration   4
-     H   -0.008107    0.775792    2.046079
-     C    0.007896   -0.050812    1.087313
-     N    0.011863   -0.070467    2.198286
+     H   -0.016705    0.748502    2.076186
+     C    0.009249   -0.039157    1.100618
+     N    0.018280   -0.083637    2.210231
      3
 Geometry   9/ 12 for iteration   4
-     H   -0.056802    0.569472    2.348601
-     C    0.005524   -0.033065    1.126671
-     N    0.060794   -0.054357    2.207723
+     H   -0.050620    0.540483    2.414067
+     C    0.006682    0.003073    1.066861
+     N    0.048540   -0.057825    2.213063
      3
 Geometry  10/ 12 for iteration   4
-     H   -0.013698    0.446219    2.691592
-     C   -0.004169   -0.020034    1.044434
-     N    0.016522   -0.080862    2.248603
+     H   -0.019935    0.362313    2.707044
+     C    0.001561    0.005923    1.031454
+     N    0.031654    0.015774    2.182210
      3
 Geometry  11/ 12 for iteration   4
-     H   -0.006125    0.261765    3.022965
-     C   -0.003726   -0.012102    1.050512
-     N    0.006282   -0.069042    2.222282
+     H   -0.006335    0.163763    3.097367
+     C   -0.002697   -0.006631    1.033466
+     N    0.011674    0.018728    2.196766
      3
 Geometry  12/ 12 for iteration   4
      H    0.000003   -0.000001    3.270685
      C   -0.000002   -0.000002    1.112304
      N   -0.000000   -0.000000    2.276956
  Reactants optimized
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
+ Creating Input for Geometry   2/ 12 for iteration   5
+ Computing and reading forces for Geometry   2/ 12 for iteration   5
+ Creating Input for Geometry   3/ 12 for iteration   5
+ Computing and reading forces for Geometry   3/ 12 for iteration   5
+ Creating Input for Geometry   4/ 12 for iteration   5
+ Computing and reading forces for Geometry   4/ 12 for iteration   5
+ Creating Input for Geometry   5/ 12 for iteration   5
+ Computing and reading forces for Geometry   5/ 12 for iteration   5
+ Creating Input for Geometry   6/ 12 for iteration   5
+ Computing and reading forces for Geometry   6/ 12 for iteration   5
+ Creating Input for Geometry   7/ 12 for iteration   5
+ Computing and reading forces for Geometry   7/ 12 for iteration   5
+ Creating Input for Geometry   8/ 12 for iteration   5
+ Computing and reading forces for Geometry   8/ 12 for iteration   5
+ Creating Input for Geometry   9/ 12 for iteration   5
+ Computing and reading forces for Geometry   9/ 12 for iteration   5
+ Creating Input for Geometry  10/ 12 for iteration   5
+ Computing and reading forces for Geometry  10/ 12 for iteration   5
+ Creating Input for Geometry  11/ 12 for iteration   5
+ Computing and reading forces for Geometry  11/ 12 for iteration   5
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   5
      H   -0.000000   -0.000000    0.038576
@@ -372,69 +401,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration   5
-     H   -0.009504    0.334001    0.175829
-     C   -0.007333    0.063941    1.183812
-     N   -0.009542   -0.075565    2.332634
+     H    0.000678    0.250329    0.137885
+     C    0.001094    0.064853    1.178113
+     N   -0.000425   -0.048102    2.328156
      3
 Geometry   3/ 12 for iteration   5
-     H   -0.012662    0.625588    0.431076
-     C    0.002880    0.033770    1.176468
-     N   -0.005123   -0.072912    2.337258
+     H   -0.013324    0.645515    0.450781
+     C    0.004385    0.030322    1.169818
+     N   -0.004089   -0.080462    2.331532
      3
 Geometry   4/ 12 for iteration   5
-     H   -0.008576    0.905340    0.699917
-     C   -0.004410    0.001743    1.166673
-     N   -0.006707   -0.090512    2.330373
+     H   -0.010728    0.971408    0.812044
+     C   -0.006921    0.005298    1.152446
+     N   -0.008831   -0.093849    2.311106
      3
 Geometry   5/ 12 for iteration   5
-     H   -0.009202    1.095772    1.031427
-     C   -0.009125    0.008769    1.150446
-     N   -0.009162   -0.107678    2.299445
+     H    0.009108    1.072424    1.086798
+     C    0.009160   -0.019734    1.124292
+     N    0.009110    0.007570    2.264353
      3
 Geometry   6/ 12 for iteration   5
-     H    0.001883    1.034032    1.336936
-     C    0.002143   -0.102241    1.089092
-     N    0.002023    0.065839    2.204807
+     H    0.005617    1.033583    1.353200
+     C    0.005669   -0.105788    1.093520
+     N    0.005730    0.074895    2.203697
      3
 Geometry   7/ 12 for iteration   5
-     H    0.001890    0.963533    1.705494
-     C    0.001677   -0.132531    1.073051
-     N    0.002526    0.024609    2.186806
+     H   -0.002014    0.954134    1.696029
+     C    0.004209   -0.109410    1.088569
+     N    0.005501   -0.002364    2.192641
      3
 Geometry   8/ 12 for iteration   5
-     H   -0.016727    0.785956    2.023948
-     C    0.010241   -0.044622    1.079102
-     N    0.024169   -0.057719    2.203479
+     H   -0.026661    0.797137    2.042522
+     C    0.010166   -0.054313    1.085552
+     N    0.026652   -0.082427    2.192903
      3
 Geometry   9/ 12 for iteration   5
-     H   -0.067319    0.592834    2.347032
-     C    0.007393   -0.043822    1.118872
-     N    0.075079   -0.059644    2.214688
+     H   -0.057587    0.579613    2.420945
+     C    0.009453   -0.003385    1.047265
+     N    0.058864   -0.068113    2.195018
      3
 Geometry  10/ 12 for iteration   5
-     H   -0.021044    0.480733    2.702782
-     C   -0.000195   -0.042920    1.039108
-     N    0.022612   -0.080566    2.226096
+     H   -0.025706    0.388737    2.692642
+     C    0.006504    0.010424    0.998724
+     N    0.046971    0.029528    2.165494
      3
 Geometry  11/ 12 for iteration   5
-     H   -0.017291    0.283863    3.038105
-     C   -0.002684   -0.040769    1.056989
-     N    0.012956   -0.089543    2.225488
+     H   -0.011949    0.143185    3.120272
+     C   -0.002644   -0.010510    1.023207
+     N    0.015337    0.040043    2.184835
      3
 Geometry  12/ 12 for iteration   5
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
+ Creating Input for Geometry   2/ 12 for iteration   6
+ Computing and reading forces for Geometry   2/ 12 for iteration   6
+ Creating Input for Geometry   3/ 12 for iteration   6
+ Computing and reading forces for Geometry   3/ 12 for iteration   6
+ Creating Input for Geometry   4/ 12 for iteration   6
+ Computing and reading forces for Geometry   4/ 12 for iteration   6
+ Creating Input for Geometry   5/ 12 for iteration   6
+ Computing and reading forces for Geometry   5/ 12 for iteration   6
+ Creating Input for Geometry   6/ 12 for iteration   6
+ Computing and reading forces for Geometry   6/ 12 for iteration   6
+ Creating Input for Geometry   7/ 12 for iteration   6
+ Computing and reading forces for Geometry   7/ 12 for iteration   6
+ Creating Input for Geometry   8/ 12 for iteration   6
+ Computing and reading forces for Geometry   8/ 12 for iteration   6
+ Creating Input for Geometry   9/ 12 for iteration   6
+ Computing and reading forces for Geometry   9/ 12 for iteration   6
+ Creating Input for Geometry  10/ 12 for iteration   6
+ Computing and reading forces for Geometry  10/ 12 for iteration   6
+ Creating Input for Geometry  11/ 12 for iteration   6
+ Computing and reading forces for Geometry  11/ 12 for iteration   6
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   6
      H   -0.000000   -0.000000    0.038576
@@ -442,69 +482,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration   6
-     H   -0.014046    0.330491    0.162772
-     C   -0.012385    0.101474    1.198307
-     N   -0.013690   -0.100277    2.336155
+     H    0.002893    0.220474    0.120884
+     C    0.002773    0.084924    1.182612
+     N    0.001849   -0.051369    2.328322
      3
 Geometry   3/ 12 for iteration   6
-     H   -0.020765    0.635969    0.414781
-     C   -0.002490    0.061385    1.195855
-     N   -0.009758   -0.096072    2.348900
+     H   -0.007501    0.634889    0.429876
+     C    0.011741    0.043531    1.181312
+     N    0.002544   -0.079225    2.341507
      3
 Geometry   4/ 12 for iteration   6
-     H   -0.013991    0.921961    0.688994
-     C   -0.011338    0.025953    1.182708
-     N   -0.012610   -0.122095    2.340654
+     H   -0.008033    0.984242    0.801855
+     C   -0.003842    0.018590    1.166301
+     N   -0.005680   -0.105723    2.323494
      3
 Geometry   5/ 12 for iteration   6
-     H   -0.013621    1.102352    1.041058
-     C   -0.013532    0.021072    1.164577
-     N   -0.013554   -0.146019    2.311117
+     H    0.009099    1.076903    1.091047
+     C    0.009151   -0.016400    1.130326
+     N    0.009112   -0.004479    2.270524
      3
 Geometry   6/ 12 for iteration   6
-     H   -0.002657    1.033172    1.338281
-     C   -0.002404   -0.095389    1.091339
-     N   -0.002506    0.041600    2.209733
+     H    0.002708    1.030844    1.368979
+     C    0.002745   -0.107013    1.092466
+     N    0.002849    0.063359    2.203714
      3
 Geometry   7/ 12 for iteration   6
-     H    0.003353    0.981249    1.713758
-     C    0.004706   -0.153345    1.059875
-     N    0.006282    0.048866    2.168367
+     H   -0.010706    0.935663    1.780000
+     C    0.007558   -0.123801    1.069215
+     N    0.014702    0.004069    2.181391
      3
 Geometry   8/ 12 for iteration   6
-     H   -0.032879    0.813740    2.032675
-     C    0.014944   -0.043315    1.063819
-     N    0.042296   -0.062883    2.186523
+     H   -0.047401    0.803408    2.097602
+     C    0.013939   -0.057033    1.062365
+     N    0.048009   -0.084207    2.178191
      3
 Geometry   9/ 12 for iteration   6
-     H   -0.090340    0.600885    2.345912
-     C    0.007808   -0.053708    1.126466
-     N    0.096641   -0.066182    2.225765
+     H   -0.052493    0.571072    2.482564
+     C    0.015370   -0.005952    1.018679
+     N    0.061971   -0.044394    2.165903
      3
 Geometry  10/ 12 for iteration   6
-     H   -0.044396    0.504809    2.715112
-     C    0.004339   -0.059807    1.031750
-     N    0.044090   -0.077394    2.207041
+     H   -0.023936    0.366269    2.748242
+     C    0.011506    0.011856    0.977058
+     N    0.052005    0.051652    2.146274
      3
 Geometry  11/ 12 for iteration   6
-     H   -0.035879    0.298347    3.049931
-     C    0.001187   -0.076824    1.068453
-     N    0.025757   -0.099268    2.235271
+     H   -0.016392    0.105985    3.151975
+     C   -0.000799   -0.012095    1.020637
+     N    0.017561    0.064693    2.181362
      3
 Geometry  12/ 12 for iteration   6
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
+ Creating Input for Geometry   2/ 12 for iteration   7
+ Computing and reading forces for Geometry   2/ 12 for iteration   7
+ Creating Input for Geometry   3/ 12 for iteration   7
+ Computing and reading forces for Geometry   3/ 12 for iteration   7
+ Creating Input for Geometry   4/ 12 for iteration   7
+ Computing and reading forces for Geometry   4/ 12 for iteration   7
+ Creating Input for Geometry   5/ 12 for iteration   7
+ Computing and reading forces for Geometry   5/ 12 for iteration   7
+ Creating Input for Geometry   6/ 12 for iteration   7
+ Computing and reading forces for Geometry   6/ 12 for iteration   7
+ Creating Input for Geometry   7/ 12 for iteration   7
+ Computing and reading forces for Geometry   7/ 12 for iteration   7
+ Creating Input for Geometry   8/ 12 for iteration   7
+ Computing and reading forces for Geometry   8/ 12 for iteration   7
+ Creating Input for Geometry   9/ 12 for iteration   7
+ Computing and reading forces for Geometry   9/ 12 for iteration   7
+ Creating Input for Geometry  10/ 12 for iteration   7
+ Computing and reading forces for Geometry  10/ 12 for iteration   7
+ Creating Input for Geometry  11/ 12 for iteration   7
+ Computing and reading forces for Geometry  11/ 12 for iteration   7
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   7
      H   -0.000000   -0.000000    0.038576
@@ -512,69 +563,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration   7
-     H   -0.015682    0.330708    0.159660
-     C   -0.014168    0.114773    1.203640
-     N   -0.015114   -0.108842    2.337330
+     H    0.001819    0.241251    0.138483
+     C    0.002906    0.082880    1.179816
+     N    0.001553   -0.053876    2.328470
      3
 Geometry   3/ 12 for iteration   7
-     H   -0.030440    0.647728    0.413356
-     C   -0.014037    0.092696    1.217173
-     N   -0.017011   -0.116270    2.356341
+     H   -0.016127    0.676993    0.433069
+     C    0.010523    0.060854    1.194204
+     N   -0.000836   -0.110454    2.352102
      3
 Geometry   4/ 12 for iteration   7
-     H   -0.019240    0.945421    0.685500
-     C   -0.017792    0.048589    1.195257
-     N   -0.017737   -0.155606    2.349668
+     H   -0.005722    1.006664    0.825335
+     C   -0.002111    0.031065    1.177652
+     N   -0.003314   -0.109933    2.328343
      3
 Geometry   5/ 12 for iteration   7
-     H   -0.017734    1.107973    1.051809
-     C   -0.017628    0.031806    1.178845
-     N   -0.017642   -0.181219    2.321339
+     H    0.007246    1.074621    1.127117
+     C    0.007286   -0.020830    1.132457
+     N    0.007289   -0.014892    2.271294
      3
 Geometry   6/ 12 for iteration   7
-     H   -0.006984    1.032007    1.343918
-     C   -0.006731   -0.089496    1.094594
-     N   -0.006819    0.018760    2.213625
+     H   -0.001872    1.023909    1.419085
+     C   -0.001573   -0.114410    1.089107
+     N   -0.001269    0.047556    2.202191
      3
 Geometry   7/ 12 for iteration   7
-     H    0.002807    1.012694    1.723202
-     C    0.008359   -0.171507    1.044701
-     N    0.011727    0.058917    2.143302
+     H   -0.022964    0.941843    1.849711
+     C    0.011131   -0.121595    1.061764
+     N    0.024487   -0.033655    2.167279
      3
 Geometry   8/ 12 for iteration   7
-     H   -0.062121    0.835043    2.028685
-     C    0.020069   -0.041201    1.048120
-     N    0.069034   -0.061222    2.173784
+     H   -0.054519    0.789200    2.177283
+     C    0.016921   -0.045237    1.048365
+     N    0.054500   -0.105998    2.160770
      3
 Geometry   9/ 12 for iteration   7
-     H   -0.092287    0.626467    2.357030
-     C    0.010422   -0.064760    1.113155
-     N    0.103800   -0.068640    2.220760
+     H   -0.050482    0.568486    2.533081
+     C    0.020616   -0.006883    0.992478
+     N    0.066254   -0.024362    2.134301
      3
 Geometry  10/ 12 for iteration   7
-     H   -0.077295    0.506885    2.733743
-     C    0.008168   -0.066874    1.025284
-     N    0.073921   -0.074017    2.198558
+     H   -0.021003    0.343005    2.793672
+     C    0.016179    0.013812    0.958833
+     N    0.054907    0.076854    2.126081
      3
 Geometry  11/ 12 for iteration   7
-     H   -0.025134    0.315214    3.069216
-     C   -0.001186   -0.089784    1.074918
-     N    0.018820   -0.116088    2.232481
+     H   -0.018776    0.076035    3.174883
+     C    0.000868   -0.012122    1.019904
+     N    0.015834    0.079661    2.180535
      3
 Geometry  12/ 12 for iteration   7
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
- EGrad.f90, L73, IOpt=           8
+ Creating Input for Geometry   2/ 12 for iteration   8
+ Computing and reading forces for Geometry   2/ 12 for iteration   8
+ Creating Input for Geometry   3/ 12 for iteration   8
+ Computing and reading forces for Geometry   3/ 12 for iteration   8
+ Creating Input for Geometry   4/ 12 for iteration   8
+ Computing and reading forces for Geometry   4/ 12 for iteration   8
+ Creating Input for Geometry   5/ 12 for iteration   8
+ Computing and reading forces for Geometry   5/ 12 for iteration   8
+ Creating Input for Geometry   6/ 12 for iteration   8
+ Computing and reading forces for Geometry   6/ 12 for iteration   8
+ Creating Input for Geometry   7/ 12 for iteration   8
+ Computing and reading forces for Geometry   7/ 12 for iteration   8
+ Creating Input for Geometry   8/ 12 for iteration   8
+ Computing and reading forces for Geometry   8/ 12 for iteration   8
+ Creating Input for Geometry   9/ 12 for iteration   8
+ Computing and reading forces for Geometry   9/ 12 for iteration   8
+ Creating Input for Geometry  10/ 12 for iteration   8
+ Computing and reading forces for Geometry  10/ 12 for iteration   8
+ Creating Input for Geometry  11/ 12 for iteration   8
+ Computing and reading forces for Geometry  11/ 12 for iteration   8
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   8
      H   -0.000000   -0.000000    0.038576
@@ -582,69 +644,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration   8
-     H   -0.016429    0.338420    0.166047
-     C   -0.014609    0.115191    1.205716
-     N   -0.015483   -0.109725    2.335992
+     H    0.004638    0.232127    0.132601
+     C    0.005388    0.092355    1.185776
+     N    0.004419   -0.052475    2.330318
      3
 Geometry   3/ 12 for iteration   8
-     H   -0.040491    0.666238    0.411316
-     C   -0.024872    0.121381    1.235901
-     N   -0.025276   -0.141649    2.365802
+     H   -0.023022    0.661634    0.403869
+     C    0.005415    0.092742    1.212783
+     N   -0.004531   -0.128166    2.362339
      3
 Geometry   4/ 12 for iteration   8
-     H   -0.022227    0.951633    0.700445
-     C   -0.022388    0.074892    1.218909
-     N   -0.022609   -0.178635    2.354396
+     H   -0.006271    1.016728    0.817699
+     C   -0.002742    0.046586    1.193366
+     N   -0.003438   -0.127235    2.338884
      3
 Geometry   5/ 12 for iteration   8
-     H   -0.021959    1.111723    1.069121
-     C   -0.021832    0.038965    1.192344
-     N   -0.021839   -0.212394    2.329172
+     H    0.006279    1.079560    1.130186
+     C    0.006345   -0.014772    1.138646
+     N    0.006389   -0.034438    2.279938
      3
 Geometry   6/ 12 for iteration   8
-     H   -0.011821    1.028889    1.364705
-     C   -0.011558   -0.084487    1.097181
-     N   -0.011632   -0.006652    2.217761
+     H   -0.004823    1.022628    1.430889
+     C   -0.004502   -0.110951    1.091213
+     N   -0.004129    0.028439    2.207273
      3
 Geometry   7/ 12 for iteration   8
-     H    0.000474    1.018458    1.734533
-     C    0.010252   -0.178982    1.036968
-     N    0.016034    0.067368    2.134991
+     H   -0.027864    0.940382    1.847017
+     C    0.007924   -0.117591    1.059803
+     N    0.023428   -0.047609    2.170122
      3
 Geometry   8/ 12 for iteration   8
-     H   -0.092564    0.851246    2.035251
-     C    0.025155   -0.035004    1.031777
-     N    0.096936   -0.064189    2.161877
+     H   -0.077642    0.790868    2.216643
+     C    0.019230   -0.045637    1.022573
+     N    0.079649   -0.093471    2.143103
      3
 Geometry   9/ 12 for iteration   8
-     H   -0.100365    0.655979    2.384488
-     C    0.012673   -0.084422    1.095459
-     N    0.114380   -0.073941    2.210757
+     H   -0.050186    0.571759    2.573702
+     C    0.024479   -0.011454    0.967540
+     N    0.069733   -0.006177    2.104336
      3
 Geometry  10/ 12 for iteration   8
-     H   -0.106037    0.506011    2.759957
-     C    0.010991   -0.074613    1.020417
-     N    0.100356   -0.074871    2.194116
+     H   -0.017063    0.327197    2.820185
+     C    0.020628    0.016772    0.941175
+     N    0.057533    0.104682    2.102819
      3
 Geometry  11/ 12 for iteration   8
-     H   -0.004288    0.330290    3.096729
-     C   -0.006953   -0.109521    1.067932
-     N    0.000575   -0.125892    2.228608
+     H   -0.017319    0.092463    3.158188
+     C    0.002143   -0.009901    1.016363
+     N    0.016202    0.075825    2.177606
      3
 Geometry  12/ 12 for iteration   8
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
- EGrad.f90, L73, IOpt=           9
+ Creating Input for Geometry   2/ 12 for iteration   9
+ Computing and reading forces for Geometry   2/ 12 for iteration   9
+ Creating Input for Geometry   3/ 12 for iteration   9
+ Computing and reading forces for Geometry   3/ 12 for iteration   9
+ Creating Input for Geometry   4/ 12 for iteration   9
+ Computing and reading forces for Geometry   4/ 12 for iteration   9
+ Creating Input for Geometry   5/ 12 for iteration   9
+ Computing and reading forces for Geometry   5/ 12 for iteration   9
+ Creating Input for Geometry   6/ 12 for iteration   9
+ Computing and reading forces for Geometry   6/ 12 for iteration   9
+ Creating Input for Geometry   7/ 12 for iteration   9
+ Computing and reading forces for Geometry   7/ 12 for iteration   9
+ Creating Input for Geometry   8/ 12 for iteration   9
+ Computing and reading forces for Geometry   8/ 12 for iteration   9
+ Creating Input for Geometry   9/ 12 for iteration   9
+ Computing and reading forces for Geometry   9/ 12 for iteration   9
+ Creating Input for Geometry  10/ 12 for iteration   9
+ Computing and reading forces for Geometry  10/ 12 for iteration   9
+ Creating Input for Geometry  11/ 12 for iteration   9
+ Computing and reading forces for Geometry  11/ 12 for iteration   9
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration   9
      H   -0.000000   -0.000000    0.038576
@@ -652,69 +725,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration   9
-     H   -0.017445    0.344703    0.169267
-     C   -0.015801    0.121146    1.208497
-     N   -0.016104   -0.113877    2.337689
+     H    0.002347    0.271449    0.155771
+     C    0.005730    0.096994    1.191694
+     N    0.004222   -0.060037    2.335334
      3
 Geometry   3/ 12 for iteration   9
-     H   -0.050184    0.681680    0.411285
-     C   -0.035742    0.151218    1.255739
-     N   -0.033014   -0.164803    2.374530
+     H   -0.022739    0.709911    0.453399
+     C    0.001767    0.111455    1.229066
+     N   -0.005136   -0.136900    2.368949
      3
 Geometry   4/ 12 for iteration   9
-     H   -0.029984    0.971466    0.711057
-     C   -0.031208    0.095667    1.235933
-     N   -0.031022   -0.214629    2.359608
+     H   -0.006522    1.036303    0.889949
+     C   -0.004200    0.047639    1.199012
+     N   -0.004238   -0.131261    2.338908
      3
 Geometry   5/ 12 for iteration   9
-     H   -0.026745    1.113191    1.095211
-     C   -0.026596    0.042744    1.204527
-     N   -0.026593   -0.241247    2.335180
+     H    0.000272    1.064888    1.207778
+     C    0.000276   -0.040124    1.138707
+     N    0.000320   -0.033620    2.275153
      3
 Geometry   6/ 12 for iteration   9
-     H   -0.016982    1.024515    1.398157
-     C   -0.016701   -0.080334    1.099174
-     N   -0.016762   -0.033822    2.221151
+     H   -0.002740    1.021191    1.428809
+     C   -0.001130   -0.131889    1.085907
+     N   -0.000308    0.066445    2.194042
      3
 Geometry   7/ 12 for iteration   9
-     H   -0.007065    1.036915    1.754603
-     C    0.013855   -0.197503    1.017714
-     N    0.026187    0.082156    2.116132
+     H   -0.033837    0.937793    1.852140
+     C    0.006081   -0.113415    1.056537
+     N    0.024789   -0.060667    2.170924
      3
 Geometry   8/ 12 for iteration   9
-     H   -0.115211    0.869205    2.044106
-     C    0.030166   -0.035084    1.016766
-     N    0.115438   -0.067480    2.145337
+     H   -0.095114    0.804950    2.241169
+     C    0.023055   -0.036089    1.014469
+     N    0.092483   -0.121158    2.140124
      3
 Geometry   9/ 12 for iteration   9
-     H   -0.108131    0.688295    2.401980
-     C    0.012724   -0.108663    1.085117
-     N    0.124928   -0.080761    2.204491
+     H   -0.055782    0.597211    2.571970
+     C    0.025942   -0.017514    0.950707
+     N    0.074406   -0.005315    2.084960
      3
 Geometry  10/ 12 for iteration   9
-     H   -0.138003    0.512268    2.780586
-     C    0.016250   -0.086770    1.015757
-     N    0.126688   -0.076310    2.187908
+     H   -0.014905    0.321887    2.823930
+     C    0.024084    0.018349    0.925965
+     N    0.060126    0.132502    2.076718
      3
 Geometry  11/ 12 for iteration   9
-     H   -0.006542    0.341319    3.113102
-     C   -0.006105   -0.149012    1.060569
-     N    0.002080   -0.104148    2.226075
+     H   -0.017342    0.108976    3.131386
+     C    0.003796   -0.007556    1.007564
+     N    0.019140    0.081820    2.167750
      3
 Geometry  12/ 12 for iteration   9
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
- EGrad.f90, L73, IOpt=          10
+ Creating Input for Geometry   2/ 12 for iteration  10
+ Computing and reading forces for Geometry   2/ 12 for iteration  10
+ Creating Input for Geometry   3/ 12 for iteration  10
+ Computing and reading forces for Geometry   3/ 12 for iteration  10
+ Creating Input for Geometry   4/ 12 for iteration  10
+ Computing and reading forces for Geometry   4/ 12 for iteration  10
+ Creating Input for Geometry   5/ 12 for iteration  10
+ Computing and reading forces for Geometry   5/ 12 for iteration  10
+ Creating Input for Geometry   6/ 12 for iteration  10
+ Computing and reading forces for Geometry   6/ 12 for iteration  10
+ Creating Input for Geometry   7/ 12 for iteration  10
+ Computing and reading forces for Geometry   7/ 12 for iteration  10
+ Creating Input for Geometry   8/ 12 for iteration  10
+ Computing and reading forces for Geometry   8/ 12 for iteration  10
+ Creating Input for Geometry   9/ 12 for iteration  10
+ Computing and reading forces for Geometry   9/ 12 for iteration  10
+ Creating Input for Geometry  10/ 12 for iteration  10
+ Computing and reading forces for Geometry  10/ 12 for iteration  10
+ Creating Input for Geometry  11/ 12 for iteration  10
+ Computing and reading forces for Geometry  11/ 12 for iteration  10
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  10
      H   -0.000000   -0.000000    0.038576
@@ -722,69 +806,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  10
-     H   -0.017463    0.351752    0.173869
-     C   -0.015683    0.124555    1.211464
-     N   -0.015745   -0.114948    2.339744
+     H    0.008665    0.298909    0.182060
+     C    0.012116    0.104920    1.200285
+     N    0.010557   -0.055191    2.342886
      3
 Geometry   3/ 12 for iteration  10
-     H   -0.060315    0.690973    0.407341
-     C   -0.046287    0.181394    1.277319
-     N   -0.040792   -0.185378    2.383119
+     H   -0.025370    0.739550    0.490059
+     C   -0.004987    0.131799    1.248603
+     N   -0.008996   -0.148155    2.375148
      3
 Geometry   4/ 12 for iteration  10
-     H   -0.038456    0.985681    0.714068
-     C   -0.040672    0.116610    1.255309
-     N   -0.040383   -0.249329    2.365269
+     H   -0.008256    1.047442    0.956618
+     C   -0.006715    0.040623    1.202761
+     N   -0.006361   -0.134672    2.340381
      3
 Geometry   5/ 12 for iteration  10
-     H   -0.031661    1.115930    1.114703
-     C   -0.031502    0.049376    1.218020
-     N   -0.031481   -0.273565    2.343875
+     H   -0.002537    1.057935    1.249663
+     C   -0.002422   -0.063167    1.135091
+     N   -0.002328   -0.020645    2.273543
      3
 Geometry   6/ 12 for iteration  10
-     H   -0.022275    1.022966    1.421287
-     C   -0.021981   -0.073465    1.104769
-     N   -0.022029   -0.064752    2.226646
+     H   -0.000830    1.019696    1.423632
+     C    0.002842   -0.149331    1.081780
+     N    0.004461    0.101606    2.181331
      3
 Geometry   7/ 12 for iteration  10
-     H   -0.012401    1.045959    1.766966
-     C    0.015817   -0.202471    1.008879
-     N    0.032067    0.082831    2.107189
+     H   -0.038316    0.943392    1.818923
+     C    0.005972   -0.114321    1.052977
+     N    0.027891   -0.052690    2.168885
      3
 Geometry   8/ 12 for iteration  10
-     H   -0.141626    0.889898    2.054617
-     C    0.036558   -0.034277    1.000433
-     N    0.139530   -0.067841    2.127469
+     H   -0.115841    0.830809    2.231599
+     C    0.026854   -0.035063    1.010277
+     N    0.107841   -0.138893    2.141723
      3
 Geometry   9/ 12 for iteration  10
-     H   -0.116852    0.717628    2.423749
-     C    0.011958   -0.135417    1.074254
-     N    0.135635   -0.086861    2.200743
+     H   -0.062958    0.649132    2.549709
+     C    0.028566   -0.031356    0.932725
+     N    0.083436   -0.010562    2.073984
      3
 Geometry  10/ 12 for iteration  10
-     H   -0.168984    0.522742    2.799233
-     C    0.026790   -0.103813    1.013699
-     N    0.147335   -0.076239    2.180390
+     H   -0.022040    0.334779    2.815922
+     C    0.025040    0.010220    0.919708
+     N    0.063548    0.140748    2.063254
      3
 Geometry  11/ 12 for iteration  10
-     H   -0.014221    0.347074    3.120596
-     C   -0.003279   -0.185689    1.057368
-     N    0.008367   -0.073863    2.220846
+     H   -0.016855    0.148851    3.083333
+     C    0.003508   -0.007162    0.997984
+     N    0.021930    0.077415    2.155697
      3
 Geometry  12/ 12 for iteration  10
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
- EGrad.f90, L73, IOpt=          11
+ Creating Input for Geometry   2/ 12 for iteration  11
+ Computing and reading forces for Geometry   2/ 12 for iteration  11
+ Creating Input for Geometry   3/ 12 for iteration  11
+ Computing and reading forces for Geometry   3/ 12 for iteration  11
+ Creating Input for Geometry   4/ 12 for iteration  11
+ Computing and reading forces for Geometry   4/ 12 for iteration  11
+ Creating Input for Geometry   5/ 12 for iteration  11
+ Computing and reading forces for Geometry   5/ 12 for iteration  11
+ Creating Input for Geometry   6/ 12 for iteration  11
+ Computing and reading forces for Geometry   6/ 12 for iteration  11
+ Creating Input for Geometry   7/ 12 for iteration  11
+ Computing and reading forces for Geometry   7/ 12 for iteration  11
+ Creating Input for Geometry   8/ 12 for iteration  11
+ Computing and reading forces for Geometry   8/ 12 for iteration  11
+ Creating Input for Geometry   9/ 12 for iteration  11
+ Computing and reading forces for Geometry   9/ 12 for iteration  11
+ Creating Input for Geometry  10/ 12 for iteration  11
+ Computing and reading forces for Geometry  10/ 12 for iteration  11
+ Creating Input for Geometry  11/ 12 for iteration  11
+ Computing and reading forces for Geometry  11/ 12 for iteration  11
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  11
      H   -0.000000   -0.000000    0.038576
@@ -792,69 +887,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  11
-     H   -0.011975    0.356138    0.180051
-     C   -0.010463    0.129722    1.215326
-     N   -0.010269   -0.109913    2.343375
+     H    0.006400    0.310503    0.171248
+     C    0.010717    0.115305    1.213451
+     N    0.010083   -0.064907    2.352141
      3
 Geometry   3/ 12 for iteration  11
-     H   -0.068289    0.694777    0.403046
-     C   -0.053801    0.209028    1.300237
-     N   -0.046308   -0.199204    2.391615
+     H   -0.029731    0.767930    0.523252
+     C   -0.012251    0.151289    1.266120
+     N   -0.013772   -0.160515    2.379846
      3
 Geometry   4/ 12 for iteration  11
-     H   -0.045895    0.994980    0.709441
-     C   -0.049284    0.140306    1.277960
-     N   -0.048986   -0.280416    2.373438
+     H   -0.012190    1.061012    0.993009
+     C   -0.011346    0.042943    1.205059
+     N   -0.010347   -0.141652    2.336747
      3
 Geometry   5/ 12 for iteration  11
-     H   -0.029483    1.112275    1.109490
-     C   -0.029365    0.050530    1.214897
-     N   -0.029322   -0.260813    2.344990
+     H   -0.001664    1.050645    1.247308
+     C   -0.001518   -0.067580    1.132620
+     N   -0.001453   -0.002324    2.269919
      3
 Geometry   6/ 12 for iteration  11
-     H   -0.027160    1.018867    1.452766
-     C   -0.026852   -0.069302    1.106763
-     N   -0.026887   -0.090484    2.230189
+     H    0.001575    1.017215    1.418259
+     C    0.006499   -0.161765    1.075775
+     N    0.008373    0.135334    2.162360
      3
 Geometry   7/ 12 for iteration  11
-     H   -0.020091    1.046224    1.782489
-     C    0.017488   -0.201198    1.002800
-     N    0.039160    0.080205    2.102237
+     H   -0.039285    0.951267    1.775531
+     C    0.006930   -0.123113    1.048683
+     N    0.030084   -0.027467    2.160946
      3
 Geometry   8/ 12 for iteration  11
-     H   -0.162533    0.902199    2.073130
-     C    0.040377   -0.037811    0.988147
-     N    0.159525   -0.067767    2.117089
+     H   -0.112274    0.843845    2.203568
+     C    0.026917   -0.039234    1.014486
+     N    0.101322   -0.143261    2.143961
      3
 Geometry   9/ 12 for iteration  11
-     H   -0.126289    0.746116    2.444882
-     C    0.012106   -0.165806    1.066601
-     N    0.144509   -0.092489    2.198696
+     H   -0.065785    0.692834    2.527692
+     C    0.033481   -0.044273    0.925269
+     N    0.087474   -0.015601    2.070283
      3
 Geometry  10/ 12 for iteration  11
-     H   -0.191650    0.537870    2.821452
-     C    0.044562   -0.132766    1.012626
-     N    0.151539   -0.072852    2.172345
+     H   -0.035441    0.376307    2.801496
+     C    0.031876   -0.005045    0.896567
+     N    0.075607    0.151862    2.045485
      3
 Geometry  11/ 12 for iteration  11
-     H   -0.018840    0.345956    3.128751
-     C   -0.000343   -0.218042    1.056146
-     N    0.011844   -0.039705    2.213261
+     H   -0.022736    0.148996    3.084459
+     C    0.002019   -0.013546    0.991212
+     N    0.027195    0.087561    2.145068
      3
 Geometry  12/ 12 for iteration  11
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
- EGrad.f90, L73, IOpt=          12
+ Creating Input for Geometry   2/ 12 for iteration  12
+ Computing and reading forces for Geometry   2/ 12 for iteration  12
+ Creating Input for Geometry   3/ 12 for iteration  12
+ Computing and reading forces for Geometry   3/ 12 for iteration  12
+ Creating Input for Geometry   4/ 12 for iteration  12
+ Computing and reading forces for Geometry   4/ 12 for iteration  12
+ Creating Input for Geometry   5/ 12 for iteration  12
+ Computing and reading forces for Geometry   5/ 12 for iteration  12
+ Creating Input for Geometry   6/ 12 for iteration  12
+ Computing and reading forces for Geometry   6/ 12 for iteration  12
+ Creating Input for Geometry   7/ 12 for iteration  12
+ Computing and reading forces for Geometry   7/ 12 for iteration  12
+ Creating Input for Geometry   8/ 12 for iteration  12
+ Computing and reading forces for Geometry   8/ 12 for iteration  12
+ Creating Input for Geometry   9/ 12 for iteration  12
+ Computing and reading forces for Geometry   9/ 12 for iteration  12
+ Creating Input for Geometry  10/ 12 for iteration  12
+ Computing and reading forces for Geometry  10/ 12 for iteration  12
+ Creating Input for Geometry  11/ 12 for iteration  12
+ Computing and reading forces for Geometry  11/ 12 for iteration  12
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  12
      H   -0.000000   -0.000000    0.038576
@@ -862,69 +968,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  12
-     H   -0.006000    0.357766    0.182285
-     C   -0.005254    0.135778    1.220427
-     N   -0.004698   -0.105847    2.347344
+     H   -0.005978    0.316070    0.168329
+     C   -0.000319    0.119786    1.211449
+     N    0.000647   -0.086331    2.346200
      3
 Geometry   3/ 12 for iteration  12
-     H   -0.067796    0.691181    0.407521
-     C   -0.050907    0.219256    1.318219
-     N   -0.043897   -0.198387    2.395552
+     H   -0.036365    0.773781    0.519867
+     C   -0.019228    0.177430    1.287083
+     N   -0.018833   -0.174713    2.387083
      3
 Geometry   4/ 12 for iteration  12
-     H   -0.051793    0.999688    0.702776
-     C   -0.056407    0.162962    1.302227
-     N   -0.056185   -0.304662    2.383229
+     H   -0.016423    1.072070    0.999986
+     C   -0.015791    0.050874    1.217804
+     N   -0.014484   -0.163802    2.344230
      3
 Geometry   5/ 12 for iteration  12
-     H   -0.034994    1.114713    1.117052
-     C   -0.034952    0.062301    1.234394
-     N   -0.034915   -0.300871    2.348532
+     H   -0.004404    1.049510    1.220872
+     C   -0.004360   -0.058161    1.142008
+     N   -0.004186   -0.016117    2.277279
      3
 Geometry   6/ 12 for iteration  12
-     H   -0.032221    1.021068    1.463045
-     C   -0.031907   -0.057621    1.116927
-     N   -0.031926   -0.127205    2.239779
+     H   -0.002080    1.013604    1.442405
+     C    0.002914   -0.158205    1.077729
+     N    0.004669    0.113160    2.165266
      3
 Geometry   7/ 12 for iteration  12
-     H   -0.042667    1.039012    1.792181
-     C    0.016106   -0.182898    0.998762
-     N    0.051334    0.051803    2.107248
+     H   -0.060581    0.956718    1.796713
+     C    0.015887   -0.125184    1.027608
+     N    0.055495   -0.024119    2.141167
      3
 Geometry   8/ 12 for iteration  12
-     H   -0.161403    0.894909    2.099899
-     C    0.039679   -0.048262    0.991709
-     N    0.158313   -0.070047    2.119759
+     H   -0.097790    0.841105    2.221211
+     C    0.029155   -0.041519    1.007914
+     N    0.093974   -0.130739    2.138043
      3
 Geometry   9/ 12 for iteration  12
-     H   -0.138789    0.765033    2.479837
-     C    0.015292   -0.197944    1.058444
-     N    0.151336   -0.094917    2.196633
+     H   -0.072471    0.699907    2.550323
+     C    0.038207   -0.050729    0.904888
+     N    0.098525    0.003460    2.051487
      3
 Geometry  10/ 12 for iteration  12
-     H   -0.208048    0.547297    2.849927
-     C    0.058233   -0.165039    1.006460
-     N    0.153545   -0.062028    2.166992
+     H   -0.039279    0.391882    2.816078
+     C    0.040407   -0.015928    0.874888
+     N    0.077657    0.173524    2.021102
      3
 Geometry  11/ 12 for iteration  12
-     H   -0.015739    0.336109    3.135068
-     C    0.001466   -0.241268    1.056542
-     N    0.008127   -0.001324    2.199163
+     H   -0.023791    0.146121    3.080959
+     C    0.004166   -0.012390    0.986664
+     N    0.023782    0.090050    2.142290
      3
 Geometry  12/ 12 for iteration  12
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
- EGrad.f90, L73, IOpt=          13
+ Creating Input for Geometry   2/ 12 for iteration  13
+ Computing and reading forces for Geometry   2/ 12 for iteration  13
+ Creating Input for Geometry   3/ 12 for iteration  13
+ Computing and reading forces for Geometry   3/ 12 for iteration  13
+ Creating Input for Geometry   4/ 12 for iteration  13
+ Computing and reading forces for Geometry   4/ 12 for iteration  13
+ Creating Input for Geometry   5/ 12 for iteration  13
+ Computing and reading forces for Geometry   5/ 12 for iteration  13
+ Creating Input for Geometry   6/ 12 for iteration  13
+ Computing and reading forces for Geometry   6/ 12 for iteration  13
+ Creating Input for Geometry   7/ 12 for iteration  13
+ Computing and reading forces for Geometry   7/ 12 for iteration  13
+ Creating Input for Geometry   8/ 12 for iteration  13
+ Computing and reading forces for Geometry   8/ 12 for iteration  13
+ Creating Input for Geometry   9/ 12 for iteration  13
+ Computing and reading forces for Geometry   9/ 12 for iteration  13
+ Creating Input for Geometry  10/ 12 for iteration  13
+ Computing and reading forces for Geometry  10/ 12 for iteration  13
+ Creating Input for Geometry  11/ 12 for iteration  13
+ Computing and reading forces for Geometry  11/ 12 for iteration  13
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  13
      H   -0.000000   -0.000000    0.038576
@@ -932,69 +1049,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  13
-     H   -0.003948    0.364290    0.185980
-     C   -0.003116    0.143263    1.225685
-     N   -0.002780   -0.105441    2.351630
+     H   -0.006569    0.343693    0.190002
+     C   -0.001003    0.127557    1.219864
+     N    0.001084   -0.090983    2.350655
      3
 Geometry   3/ 12 for iteration  13
-     H   -0.077684    0.694681    0.402928
-     C   -0.060156    0.246544    1.343665
-     N   -0.051348   -0.214237    2.405260
+     H   -0.045080    0.790068    0.535476
+     C   -0.029026    0.199955    1.306932
+     N   -0.026483   -0.192691    2.393103
      3
 Geometry   4/ 12 for iteration  13
-     H   -0.056203    1.005300    0.707401
-     C   -0.061829    0.180641    1.325193
-     N   -0.061740   -0.324769    2.392569
+     H   -0.020941    1.083575    1.015165
+     C   -0.020230    0.048968    1.230090
+     N   -0.019005   -0.186427    2.354210
      3
 Geometry   5/ 12 for iteration  13
-     H   -0.035672    1.117531    1.120748
-     C   -0.035713    0.072253    1.248807
-     N   -0.035704   -0.323292    2.347534
+     H   -0.006271    1.053586    1.222896
+     C   -0.005906   -0.064683    1.146176
+     N   -0.005388   -0.020578    2.283465
      3
 Geometry   6/ 12 for iteration  13
-     H   -0.037126    1.019244    1.483981
-     C   -0.036818   -0.048696    1.123409
-     N   -0.036824   -0.158688    2.246535
+     H   -0.004597    1.012900    1.454953
+     C    0.002100   -0.173924    1.079642
+     N    0.004195    0.119445    2.160017
      3
 Geometry   7/ 12 for iteration  13
-     H   -0.020779    1.046826    1.773941
-     C    0.014865   -0.203990    1.001871
-     N    0.035612    0.077920    2.101772
+     H   -0.074431    0.954796    1.819411
+     C    0.019199   -0.129071    1.011236
+     N    0.070980   -0.021707    2.128571
      3
 Geometry   8/ 12 for iteration  13
-     H   -0.163113    0.900741    2.099121
-     C    0.038127   -0.056771    0.987700
-     N    0.160075   -0.066507    2.119083
+     H   -0.097770    0.833941    2.241556
+     C    0.031100   -0.037092    1.008237
+     N    0.096188   -0.131887    2.137848
      3
 Geometry   9/ 12 for iteration  13
-     H   -0.153393    0.784332    2.491922
-     C    0.021155   -0.222424    1.049686
-     N    0.155605   -0.092811    2.190967
+     H   -0.079875    0.732759    2.549387
+     C    0.043894   -0.066956    0.885297
+     N    0.106408    0.013171    2.035457
      3
 Geometry  10/ 12 for iteration  13
-     H   -0.218785    0.557106    2.865318
-     C    0.072328   -0.193297    0.999734
-     N    0.151134   -0.040054    2.151772
+     H   -0.045666    0.407910    2.832335
+     C    0.050055   -0.029251    0.855308
+     N    0.078807    0.194010    1.998238
      3
 Geometry  11/ 12 for iteration  13
-     H   -0.015696    0.325986    3.135485
-     C    0.004924   -0.258670    1.056897
-     N    0.006190    0.036194    2.184544
+     H   -0.026788    0.167150    3.067465
+     C    0.003755   -0.019152    0.976101
+     N    0.028085    0.093855    2.131729
      3
 Geometry  12/ 12 for iteration  13
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
- EGrad.f90, L73, IOpt=          14
+ Creating Input for Geometry   2/ 12 for iteration  14
+ Computing and reading forces for Geometry   2/ 12 for iteration  14
+ Creating Input for Geometry   3/ 12 for iteration  14
+ Computing and reading forces for Geometry   3/ 12 for iteration  14
+ Creating Input for Geometry   4/ 12 for iteration  14
+ Computing and reading forces for Geometry   4/ 12 for iteration  14
+ Creating Input for Geometry   5/ 12 for iteration  14
+ Computing and reading forces for Geometry   5/ 12 for iteration  14
+ Creating Input for Geometry   6/ 12 for iteration  14
+ Computing and reading forces for Geometry   6/ 12 for iteration  14
+ Creating Input for Geometry   7/ 12 for iteration  14
+ Computing and reading forces for Geometry   7/ 12 for iteration  14
+ Creating Input for Geometry   8/ 12 for iteration  14
+ Computing and reading forces for Geometry   8/ 12 for iteration  14
+ Creating Input for Geometry   9/ 12 for iteration  14
+ Computing and reading forces for Geometry   9/ 12 for iteration  14
+ Creating Input for Geometry  10/ 12 for iteration  14
+ Computing and reading forces for Geometry  10/ 12 for iteration  14
+ Creating Input for Geometry  11/ 12 for iteration  14
+ Computing and reading forces for Geometry  11/ 12 for iteration  14
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  14
      H   -0.000000   -0.000000    0.038576
@@ -1002,69 +1130,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  14
-     H   -0.005071    0.370063    0.189033
-     C   -0.003406    0.142887    1.229594
-     N   -0.003095   -0.104407    2.355184
+     H   -0.011136    0.357829    0.185943
+     C   -0.004720    0.134818    1.226443
+     N   -0.001802   -0.103719    2.355831
      3
 Geometry   3/ 12 for iteration  14
-     H   -0.084113    0.693607    0.397949
-     C   -0.065892    0.265362    1.367709
-     N   -0.055620   -0.222586    2.414707
+     H   -0.053777    0.800658    0.540963
+     C   -0.038214    0.223696    1.329084
+     N   -0.033771   -0.209326    2.398385
      3
 Geometry   4/ 12 for iteration  14
-     H   -0.059944    1.008242    0.705304
-     C   -0.066469    0.193935    1.356091
-     N   -0.066523   -0.338411    2.393759
+     H   -0.023165    1.093976    1.014938
+     C   -0.022981    0.063914    1.235392
+     N   -0.021111   -0.198355    2.353524
      3
 Geometry   5/ 12 for iteration  14
-     H   -0.036744    1.121617    1.122808
-     C   -0.036896    0.082231    1.264751
-     N   -0.036913   -0.349870    2.349277
+     H   -0.005009    1.056251    1.216758
+     C   -0.004510   -0.059286    1.144584
+     N   -0.003974   -0.023146    2.282118
      3
 Geometry   6/ 12 for iteration  14
-     H   -0.041824    1.021275    1.498027
-     C   -0.041531   -0.037720    1.134210
-     N   -0.041525   -0.194922    2.253806
+     H   -0.002858    1.017844    1.430968
+     C    0.004022   -0.176702    1.080183
+     N    0.006071    0.131998    2.156390
      3
 Geometry   7/ 12 for iteration  14
-     H   -0.020255    1.047590    1.760810
-     C    0.012014   -0.200060    1.006803
-     N    0.030663    0.068863    2.106728
+     H   -0.073506    0.959468    1.790328
+     C    0.018591   -0.140156    1.009024
+     N    0.070858    0.000583    2.121989
      3
 Geometry   8/ 12 for iteration  14
-     H   -0.157674    0.906615    2.084853
-     C    0.038356   -0.059133    0.988762
-     N    0.155295   -0.061565    2.116950
+     H   -0.122990    0.827213    2.248234
+     C    0.031497   -0.037557    1.005615
+     N    0.121968   -0.114914    2.136110
      3
 Geometry   9/ 12 for iteration  14
-     H   -0.166021    0.807269    2.487063
-     C    0.029517   -0.240175    1.039717
-     N    0.156523   -0.087448    2.182068
+     H   -0.087987    0.764372    2.548890
+     C    0.051033   -0.085047    0.867081
+     N    0.113422    0.025429    2.019668
      3
 Geometry  10/ 12 for iteration  14
-     H   -0.219762    0.579056    2.858217
-     C    0.082742   -0.222081    0.990454
-     N    0.146256   -0.011839    2.138007
+     H   -0.053721    0.420689    2.858599
+     C    0.060710   -0.045762    0.842239
+     N    0.074411    0.207961    1.978671
      3
 Geometry  11/ 12 for iteration  14
-     H   -0.019211    0.326310    3.129063
-     C    0.008381   -0.260792    1.056325
-     N    0.007260    0.047135    2.178380
+     H   -0.028628    0.196685    3.057196
+     C    0.007849   -0.026806    0.966550
+     N    0.025773    0.090011    2.120656
      3
 Geometry  12/ 12 for iteration  14
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
- EGrad.f90, L73, IOpt=          15
+ Creating Input for Geometry   2/ 12 for iteration  15
+ Computing and reading forces for Geometry   2/ 12 for iteration  15
+ Creating Input for Geometry   3/ 12 for iteration  15
+ Computing and reading forces for Geometry   3/ 12 for iteration  15
+ Creating Input for Geometry   4/ 12 for iteration  15
+ Computing and reading forces for Geometry   4/ 12 for iteration  15
+ Creating Input for Geometry   5/ 12 for iteration  15
+ Computing and reading forces for Geometry   5/ 12 for iteration  15
+ Creating Input for Geometry   6/ 12 for iteration  15
+ Computing and reading forces for Geometry   6/ 12 for iteration  15
+ Creating Input for Geometry   7/ 12 for iteration  15
+ Computing and reading forces for Geometry   7/ 12 for iteration  15
+ Creating Input for Geometry   8/ 12 for iteration  15
+ Computing and reading forces for Geometry   8/ 12 for iteration  15
+ Creating Input for Geometry   9/ 12 for iteration  15
+ Computing and reading forces for Geometry   9/ 12 for iteration  15
+ Creating Input for Geometry  10/ 12 for iteration  15
+ Computing and reading forces for Geometry  10/ 12 for iteration  15
+ Creating Input for Geometry  11/ 12 for iteration  15
+ Computing and reading forces for Geometry  11/ 12 for iteration  15
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  15
      H   -0.000000   -0.000000    0.038576
@@ -1072,69 +1211,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  15
-     H   -0.007161    0.374897    0.190406
-     C   -0.005348    0.143555    1.230522
-     N   -0.004940   -0.106814    2.356206
+     H   -0.013883    0.376792    0.199403
+     C   -0.007476    0.140463    1.232449
+     N   -0.003800   -0.110043    2.357901
      3
 Geometry   3/ 12 for iteration  15
-     H   -0.077328    0.709838    0.411090
-     C   -0.063038    0.246252    1.366181
-     N   -0.052180   -0.219737    2.415975
+     H   -0.063188    0.808092    0.535491
+     C   -0.047519    0.251268    1.349010
+     N   -0.041222   -0.228326    2.407016
      3
 Geometry   4/ 12 for iteration  15
-     H   -0.063796    1.011410    0.724704
-     C   -0.071120    0.207557    1.379796
-     N   -0.071611   -0.358879    2.398216
+     H   -0.026234    1.108584    1.013769
+     C   -0.026492    0.082229    1.240243
+     N   -0.023883   -0.212729    2.348665
      3
 Geometry   5/ 12 for iteration  15
-     H   -0.037427    1.122262    1.136942
-     C   -0.037676    0.089817    1.276641
-     N   -0.037736   -0.372095    2.344783
+     H   -0.004505    1.060950    1.217120
+     C   -0.002926   -0.053891    1.142230
+     N   -0.001911   -0.031542    2.279650
      3
 Geometry   6/ 12 for iteration  15
-     H   -0.046427    1.021075    1.522269
-     C   -0.046148   -0.029854    1.142200
-     N   -0.046136   -0.227630    2.257735
+     H   -0.001420    1.026162    1.391194
+     C    0.007014   -0.183268    1.089444
+     N    0.009177    0.146543    2.158193
      3
 Geometry   7/ 12 for iteration  15
-     H   -0.020032    1.045906    1.754192
-     C    0.009412   -0.199422    1.008749
-     N    0.026271    0.062719    2.108113
+     H   -0.074391    0.963507    1.780979
+     C    0.020539   -0.143646    1.006103
+     N    0.070092    0.005262    2.115566
      3
 Geometry   8/ 12 for iteration  15
-     H   -0.154942    0.914010    2.079793
-     C    0.038185   -0.062643    0.985882
-     N    0.153911   -0.059635    2.117098
+     H   -0.144454    0.834310    2.249069
+     C    0.035107   -0.036283    1.005996
+     N    0.140880   -0.117171    2.137274
      3
 Geometry   9/ 12 for iteration  15
-     H   -0.170194    0.810231    2.487104
-     C    0.030022   -0.248020    1.036781
-     N    0.155162   -0.086826    2.179647
+     H   -0.100739    0.795391    2.530744
+     C    0.058542   -0.099888    0.860394
+     N    0.120867    0.030721    2.011765
      3
 Geometry  10/ 12 for iteration  15
-     H   -0.222262    0.593518    2.862154
-     C    0.093957   -0.250025    0.980201
-     N    0.140208    0.015765    2.124355
+     H   -0.062434    0.435821    2.888785
+     C    0.074240   -0.064562    0.830035
+     N    0.064929    0.217714    1.959499
      3
 Geometry  11/ 12 for iteration  15
-     H   -0.019658    0.329168    3.130439
-     C    0.009631   -0.268027    1.055007
-     N    0.006614    0.052247    2.176573
+     H   -0.031376    0.224956    3.053974
+     C    0.008723   -0.038872    0.958808
+     N    0.025764    0.085878    2.111280
      3
 Geometry  12/ 12 for iteration  15
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
- EGrad.f90, L73, IOpt=          16
+ Creating Input for Geometry   2/ 12 for iteration  16
+ Computing and reading forces for Geometry   2/ 12 for iteration  16
+ Creating Input for Geometry   3/ 12 for iteration  16
+ Computing and reading forces for Geometry   3/ 12 for iteration  16
+ Creating Input for Geometry   4/ 12 for iteration  16
+ Computing and reading forces for Geometry   4/ 12 for iteration  16
+ Creating Input for Geometry   5/ 12 for iteration  16
+ Computing and reading forces for Geometry   5/ 12 for iteration  16
+ Creating Input for Geometry   6/ 12 for iteration  16
+ Computing and reading forces for Geometry   6/ 12 for iteration  16
+ Creating Input for Geometry   7/ 12 for iteration  16
+ Computing and reading forces for Geometry   7/ 12 for iteration  16
+ Creating Input for Geometry   8/ 12 for iteration  16
+ Computing and reading forces for Geometry   8/ 12 for iteration  16
+ Creating Input for Geometry   9/ 12 for iteration  16
+ Computing and reading forces for Geometry   9/ 12 for iteration  16
+ Creating Input for Geometry  10/ 12 for iteration  16
+ Computing and reading forces for Geometry  10/ 12 for iteration  16
+ Creating Input for Geometry  11/ 12 for iteration  16
+ Computing and reading forces for Geometry  11/ 12 for iteration  16
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  16
      H   -0.000000   -0.000000    0.038576
@@ -1142,69 +1292,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  16
-     H   -0.009495    0.382358    0.194399
-     C   -0.007763    0.145671    1.233061
-     N   -0.006746   -0.110527    2.357153
+     H   -0.020997    0.388846    0.199327
+     C   -0.014604    0.142050    1.235339
+     N   -0.009687   -0.122560    2.357888
      3
 Geometry   3/ 12 for iteration  16
-     H   -0.082023    0.719773    0.418141
-     C   -0.068592    0.259238    1.374198
-     N   -0.056742   -0.232531    2.417956
+     H   -0.069228    0.790193    0.510351
+     C   -0.054660    0.280247    1.373749
+     N   -0.046248   -0.233806    2.412833
      3
 Geometry   4/ 12 for iteration  16
-     H   -0.072329    1.017514    0.747315
-     C   -0.080146    0.217750    1.407624
-     N   -0.081158   -0.388751    2.400308
+     H   -0.030304    1.126260    0.997044
+     C   -0.030994    0.109710    1.252009
+     N   -0.027621   -0.238892    2.347800
      3
 Geometry   5/ 12 for iteration  16
-     H   -0.037749    1.122475    1.160426
-     C   -0.038103    0.095686    1.286074
-     N   -0.038227   -0.395339    2.335593
+     H   -0.006749    1.063065    1.177685
+     C   -0.007860   -0.041018    1.164094
+     N   -0.007713   -0.045245    2.302097
      3
 Geometry   6/ 12 for iteration  16
-     H   -0.051267    1.017429    1.558479
-     C   -0.050986   -0.025568    1.145787
-     N   -0.050964   -0.255581    2.259046
+     H   -0.000525    1.036426    1.334350
+     C    0.007584   -0.172677    1.105340
+     N    0.009439    0.137878    2.177081
      3
 Geometry   7/ 12 for iteration  16
-     H   -0.006385    1.057870    1.728202
-     C    0.006859   -0.211965    1.012978
-     N    0.013092    0.077786    2.105279
+     H   -0.073721    0.989460    1.697187
+     C    0.027748   -0.163248    1.006603
+     N    0.080749    0.053259    2.107698
      3
 Geometry   8/ 12 for iteration  16
-     H   -0.147651    0.920380    2.059387
-     C    0.036329   -0.071017    0.987839
-     N    0.146927   -0.050265    2.115816
+     H   -0.161595    0.856407    2.199572
+     C    0.036803   -0.042962    1.009899
+     N    0.159103   -0.105126    2.141264
      3
 Geometry   9/ 12 for iteration  16
-     H   -0.179477    0.824308    2.462893
-     C    0.038999   -0.261208    1.035025
-     N    0.152208   -0.073565    2.174131
+     H   -0.088661    0.783120    2.538823
+     C    0.051056   -0.092339    0.860427
+     N    0.112024    0.022038    2.013062
      3
 Geometry  10/ 12 for iteration  16
-     H   -0.218351    0.617153    2.845048
-     C    0.105760   -0.270824    0.978527
-     N    0.131999    0.040992    2.108036
+     H   -0.064743    0.441006    2.907457
+     C    0.082801   -0.073334    0.826534
+     N    0.054254    0.218088    1.952155
      3
 Geometry  11/ 12 for iteration  16
-     H   -0.024403    0.334924    3.122104
-     C    0.012181   -0.266076    1.053746
-     N    0.009093    0.051813    2.174051
+     H   -0.033641    0.261769    3.057077
+     C    0.001287   -0.060488    0.956124
+     N    0.030451    0.073466    2.107579
      3
 Geometry  12/ 12 for iteration  16
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
- EGrad.f90, L73, IOpt=          17
+ Creating Input for Geometry   2/ 12 for iteration  17
+ Computing and reading forces for Geometry   2/ 12 for iteration  17
+ Creating Input for Geometry   3/ 12 for iteration  17
+ Computing and reading forces for Geometry   3/ 12 for iteration  17
+ Creating Input for Geometry   4/ 12 for iteration  17
+ Computing and reading forces for Geometry   4/ 12 for iteration  17
+ Creating Input for Geometry   5/ 12 for iteration  17
+ Computing and reading forces for Geometry   5/ 12 for iteration  17
+ Creating Input for Geometry   6/ 12 for iteration  17
+ Computing and reading forces for Geometry   6/ 12 for iteration  17
+ Creating Input for Geometry   7/ 12 for iteration  17
+ Computing and reading forces for Geometry   7/ 12 for iteration  17
+ Creating Input for Geometry   8/ 12 for iteration  17
+ Computing and reading forces for Geometry   8/ 12 for iteration  17
+ Creating Input for Geometry   9/ 12 for iteration  17
+ Computing and reading forces for Geometry   9/ 12 for iteration  17
+ Creating Input for Geometry  10/ 12 for iteration  17
+ Computing and reading forces for Geometry  10/ 12 for iteration  17
+ Creating Input for Geometry  11/ 12 for iteration  17
+ Computing and reading forces for Geometry  11/ 12 for iteration  17
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  17
      H   -0.000000   -0.000000    0.038576
@@ -1212,69 +1373,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  17
-     H   -0.015278    0.389370    0.197184
-     C   -0.013617    0.146204    1.234303
-     N   -0.011687   -0.117107    2.356682
+     H   -0.023721    0.390295    0.199531
+     C   -0.017603    0.141954    1.235641
+     N   -0.011879   -0.126573    2.356246
      3
 Geometry   3/ 12 for iteration  17
-     H   -0.086711    0.731337    0.426169
-     C   -0.075758    0.260332    1.382036
-     N   -0.062680   -0.245921    2.418614
+     H   -0.066724    0.753590    0.473612
+     C   -0.053934    0.298010    1.386153
+     N   -0.044145   -0.222397    2.418665
      3
 Geometry   4/ 12 for iteration  17
-     H   -0.082494    1.026119    0.765130
-     C   -0.090557    0.227040    1.435627
-     N   -0.092133   -0.419147    2.401286
+     H   -0.034719    1.124890    0.963223
+     C   -0.034665    0.136595    1.277767
+     N   -0.030968   -0.269282    2.355923
      3
 Geometry   5/ 12 for iteration  17
-     H   -0.037630    1.126455    1.180319
-     C   -0.038131    0.103358    1.297523
-     N   -0.038336   -0.424999    2.325555
+     H   -0.011276    1.069507    1.128314
+     C   -0.015280   -0.019819    1.196176
+     N   -0.016012   -0.074457    2.331821
      3
 Geometry   6/ 12 for iteration  17
-     H   -0.051999    1.020806    1.578850
-     C   -0.051862   -0.027372    1.150875
-     N   -0.051899   -0.271807    2.247700
+     H   -0.001325    1.045579    1.302848
+     C    0.002683   -0.144771    1.116827
+     N    0.003544    0.098638    2.200607
      3
 Geometry   7/ 12 for iteration  17
-     H    0.005927    1.071016    1.699033
-     C    0.003187   -0.219106    1.021490
-     N   -0.001657    0.082361    2.105918
+     H   -0.076093    1.006012    1.672641
+     C    0.035768   -0.181575    0.999085
+     N    0.091261    0.083045    2.095775
      3
 Geometry   8/ 12 for iteration  17
-     H   -0.134647    0.941059    2.033548
-     C    0.035273   -0.085253    0.985307
-     N    0.138030   -0.037749    2.115433
+     H   -0.175143    0.874530    2.155972
+     C    0.039409   -0.051464    1.011620
+     N    0.175485   -0.084308    2.141750
      3
 Geometry   9/ 12 for iteration  17
-     H   -0.189495    0.840039    2.447964
-     C    0.049836   -0.285898    1.035597
-     N    0.148875   -0.056648    2.170929
+     H   -0.087321    0.796247    2.532141
+     C    0.052032   -0.100366    0.855238
+     N    0.109077    0.023440    2.008818
      3
 Geometry  10/ 12 for iteration  17
-     H   -0.214044    0.635535    2.839202
-     C    0.118613   -0.295072    0.975033
-     N    0.120813    0.067933    2.091487
+     H   -0.064494    0.443164    2.911767
+     C    0.087495   -0.075085    0.824408
+     N    0.048813    0.217273    1.950589
      3
 Geometry  11/ 12 for iteration  17
-     H   -0.029975    0.335153    3.114114
-     C    0.010613   -0.260094    1.051524
-     N    0.012360    0.044816    2.176012
+     H   -0.033155    0.283509    3.059309
+     C    0.004360   -0.070072    0.954110
+     N    0.033263    0.073573    2.106038
      3
 Geometry  12/ 12 for iteration  17
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
- EGrad.f90, L73, IOpt=          18
+ Creating Input for Geometry   2/ 12 for iteration  18
+ Computing and reading forces for Geometry   2/ 12 for iteration  18
+ Creating Input for Geometry   3/ 12 for iteration  18
+ Computing and reading forces for Geometry   3/ 12 for iteration  18
+ Creating Input for Geometry   4/ 12 for iteration  18
+ Computing and reading forces for Geometry   4/ 12 for iteration  18
+ Creating Input for Geometry   5/ 12 for iteration  18
+ Computing and reading forces for Geometry   5/ 12 for iteration  18
+ Creating Input for Geometry   6/ 12 for iteration  18
+ Computing and reading forces for Geometry   6/ 12 for iteration  18
+ Creating Input for Geometry   7/ 12 for iteration  18
+ Computing and reading forces for Geometry   7/ 12 for iteration  18
+ Creating Input for Geometry   8/ 12 for iteration  18
+ Computing and reading forces for Geometry   8/ 12 for iteration  18
+ Creating Input for Geometry   9/ 12 for iteration  18
+ Computing and reading forces for Geometry   9/ 12 for iteration  18
+ Creating Input for Geometry  10/ 12 for iteration  18
+ Computing and reading forces for Geometry  10/ 12 for iteration  18
+ Creating Input for Geometry  11/ 12 for iteration  18
+ Computing and reading forces for Geometry  11/ 12 for iteration  18
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  18
      H   -0.000000   -0.000000    0.038576
@@ -1282,69 +1454,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  18
-     H   -0.020867    0.397309    0.199838
-     C   -0.019160    0.146836    1.235335
-     N   -0.016619   -0.124431    2.355942
+     H   -0.023875    0.386003    0.197156
+     C   -0.017829    0.140342    1.233585
+     N   -0.012144   -0.125987    2.355112
      3
 Geometry   3/ 12 for iteration  18
-     H   -0.086998    0.744019    0.441765
-     C   -0.076556    0.259687    1.385833
-     N   -0.064310   -0.254320    2.417779
+     H   -0.057302    0.727454    0.451512
+     C   -0.046379    0.303811    1.386542
+     N   -0.036143   -0.203549    2.423982
      3
 Geometry   4/ 12 for iteration  18
-     H   -0.093247    1.033630    0.782080
-     C   -0.101217    0.235954    1.464048
-     N   -0.103557   -0.447784    2.399906
+     H   -0.035907    1.130296    0.937522
+     C   -0.035223    0.156082    1.295451
+     N   -0.031426   -0.283818    2.358843
      3
 Geometry   5/ 12 for iteration  18
-     H   -0.037512    1.130650    1.201774
-     C   -0.038165    0.111083    1.308235
-     N   -0.038454   -0.455331    2.314735
+     H   -0.015043    1.067805    1.081614
+     C   -0.021530   -0.007587    1.226208
+     N   -0.023208   -0.082832    2.355681
      3
 Geometry   6/ 12 for iteration  18
-     H   -0.056064    1.017702    1.607955
-     C   -0.055978   -0.019925    1.158198
-     N   -0.056018   -0.301851    2.247896
+     H   -0.002016    1.049039    1.299952
+     C   -0.002772   -0.119545    1.117663
+     N   -0.002758    0.065019    2.213755
      3
 Geometry   7/ 12 for iteration  18
-     H    0.016306    1.081719    1.673045
-     C   -0.001091   -0.223010    1.031135
-     N   -0.015883    0.080680    2.108065
+     H   -0.081162    1.017873    1.663817
+     C    0.045096   -0.186223    0.993734
+     N    0.102384    0.100312    2.086194
      3
 Geometry   8/ 12 for iteration  18
-     H   -0.121537    0.959458    2.006937
-     C    0.034603   -0.097643    0.985182
-     N    0.129504   -0.024349    2.115505
+     H   -0.156402    0.884672    2.121771
+     C    0.039347   -0.057827    1.014201
+     N    0.158989   -0.079511    2.141258
      3
 Geometry   9/ 12 for iteration  18
-     H   -0.198746    0.857890    2.430718
-     C    0.061100   -0.310755    1.035747
-     N    0.145370   -0.038484    2.167551
+     H   -0.095114    0.827859    2.465894
+     C    0.059884   -0.112335    0.872616
+     N    0.108318    0.024906    2.019673
      3
 Geometry  10/ 12 for iteration  18
-     H   -0.207732    0.656697    2.830501
-     C    0.133328   -0.319144    0.974219
-     N    0.105617    0.092174    2.073485
+     H   -0.056294    0.469786    2.890378
+     C    0.098290   -0.075900    0.836373
+     N    0.022551    0.180939    1.963891
      3
 Geometry  11/ 12 for iteration  18
-     H   -0.034278    0.341915    3.106298
-     C    0.013169   -0.263904    1.048835
-     N    0.011845    0.046249    2.171629
+     H   -0.032298    0.273288    3.066791
+     C    0.014649   -0.064191    0.957109
+     N    0.033298    0.083136    2.109034
      3
 Geometry  12/ 12 for iteration  18
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
- EGrad.f90, L73, IOpt=          19
+ Creating Input for Geometry   2/ 12 for iteration  19
+ Computing and reading forces for Geometry   2/ 12 for iteration  19
+ Creating Input for Geometry   3/ 12 for iteration  19
+ Computing and reading forces for Geometry   3/ 12 for iteration  19
+ Creating Input for Geometry   4/ 12 for iteration  19
+ Computing and reading forces for Geometry   4/ 12 for iteration  19
+ Creating Input for Geometry   5/ 12 for iteration  19
+ Computing and reading forces for Geometry   5/ 12 for iteration  19
+ Creating Input for Geometry   6/ 12 for iteration  19
+ Computing and reading forces for Geometry   6/ 12 for iteration  19
+ Creating Input for Geometry   7/ 12 for iteration  19
+ Computing and reading forces for Geometry   7/ 12 for iteration  19
+ Creating Input for Geometry   8/ 12 for iteration  19
+ Computing and reading forces for Geometry   8/ 12 for iteration  19
+ Creating Input for Geometry   9/ 12 for iteration  19
+ Computing and reading forces for Geometry   9/ 12 for iteration  19
+ Creating Input for Geometry  10/ 12 for iteration  19
+ Computing and reading forces for Geometry  10/ 12 for iteration  19
+ Creating Input for Geometry  11/ 12 for iteration  19
+ Computing and reading forces for Geometry  11/ 12 for iteration  19
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  19
      H   -0.000000   -0.000000    0.038576
@@ -1352,69 +1535,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  19
-     H   -0.025463    0.398687    0.200310
-     C   -0.023543    0.145340    1.234572
-     N   -0.020641   -0.128930    2.353865
+     H   -0.024126    0.378888    0.194885
+     C   -0.019575    0.135765    1.232096
+     N   -0.012143   -0.123811    2.355006
      3
 Geometry   3/ 12 for iteration  19
-     H   -0.090394    0.744871    0.442402
-     C   -0.081740    0.259610    1.390148
-     N   -0.069242   -0.264549    2.416799
+     H   -0.046390    0.701929    0.431340
+     C   -0.037552    0.306185    1.382827
+     N   -0.027161   -0.182872    2.428666
      3
 Geometry   4/ 12 for iteration  19
-     H   -0.103715    1.026332    0.777825
-     C   -0.111063    0.251050    1.489345
-     N   -0.113513   -0.466941    2.401757
+     H   -0.037721    1.131847    0.909030
+     C   -0.036544    0.176818    1.318328
+     N   -0.032715   -0.301255    2.365281
      3
 Geometry   5/ 12 for iteration  19
-     H   -0.038882    1.138246    1.186417
-     C   -0.039794    0.128319    1.333790
-     N   -0.040180   -0.493881    2.318891
+     H   -0.013827    1.074932    1.043968
+     C   -0.022646    0.018726    1.239582
+     N   -0.026045   -0.104767    2.369579
      3
 Geometry   6/ 12 for iteration  19
-     H   -0.058181    1.024541    1.593751
-     C   -0.058188   -0.000019    1.178537
-     N   -0.058249   -0.342729    2.256751
+     H   -0.002765    1.050752    1.297010
+     C   -0.007574   -0.091591    1.117451
+     N   -0.008232    0.029026    2.228712
      3
 Geometry   7/ 12 for iteration  19
-     H   -0.010270    1.055061    1.699905
-     C   -0.008004   -0.188349    1.037869
-     N   -0.009509    0.014717    2.125157
+     H   -0.092856    1.019465    1.642838
+     C    0.045602   -0.167304    0.997633
+     N    0.102081    0.086522    2.090419
      3
 Geometry   8/ 12 for iteration  19
-     H   -0.125669    0.954718    2.018289
-     C    0.035407   -0.099638    0.986092
-     N    0.131409   -0.026420    2.116400
+     H   -0.153137    0.912228    2.046880
+     C    0.040359   -0.070741    1.019251
+     N    0.159597   -0.057655    2.143432
      3
 Geometry   9/ 12 for iteration  19
-     H   -0.210019    0.870630    2.432615
-     C    0.073126   -0.339816    1.036368
-     N    0.141295   -0.023640    2.163972
+     H   -0.098894    0.863455    2.405922
+     C    0.066627   -0.126437    0.883426
+     N    0.107634    0.030050    2.025716
      3
 Geometry  10/ 12 for iteration  19
-     H   -0.187381    0.668291    2.832593
-     C    0.146728   -0.335924    0.985035
-     N    0.073657    0.098081    2.059553
+     H   -0.062620    0.524335    2.863148
+     C    0.112051   -0.092396    0.823695
+     N    0.022112    0.175060    1.958218
      3
 Geometry  11/ 12 for iteration  19
-     H   -0.034104    0.343037    3.108643
-     C    0.015599   -0.274799    1.048447
-     N    0.007605    0.055930    2.163960
+     H   -0.036473    0.238276    3.081271
+     C    0.036238   -0.055886    0.958702
+     N    0.016028    0.090623    2.111317
      3
 Geometry  12/ 12 for iteration  19
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
- EGrad.f90, L73, IOpt=          20
+ Creating Input for Geometry   2/ 12 for iteration  20
+ Computing and reading forces for Geometry   2/ 12 for iteration  20
+ Creating Input for Geometry   3/ 12 for iteration  20
+ Computing and reading forces for Geometry   3/ 12 for iteration  20
+ Creating Input for Geometry   4/ 12 for iteration  20
+ Computing and reading forces for Geometry   4/ 12 for iteration  20
+ Creating Input for Geometry   5/ 12 for iteration  20
+ Computing and reading forces for Geometry   5/ 12 for iteration  20
+ Creating Input for Geometry   6/ 12 for iteration  20
+ Computing and reading forces for Geometry   6/ 12 for iteration  20
+ Creating Input for Geometry   7/ 12 for iteration  20
+ Computing and reading forces for Geometry   7/ 12 for iteration  20
+ Creating Input for Geometry   8/ 12 for iteration  20
+ Computing and reading forces for Geometry   8/ 12 for iteration  20
+ Creating Input for Geometry   9/ 12 for iteration  20
+ Computing and reading forces for Geometry   9/ 12 for iteration  20
+ Creating Input for Geometry  10/ 12 for iteration  20
+ Computing and reading forces for Geometry  10/ 12 for iteration  20
+ Creating Input for Geometry  11/ 12 for iteration  20
+ Computing and reading forces for Geometry  11/ 12 for iteration  20
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  20
      H   -0.000000   -0.000000    0.038576
@@ -1422,69 +1616,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  20
-     H   -0.026046    0.401671    0.199821
-     C   -0.024070    0.145542    1.234032
-     N   -0.021557   -0.131768    2.353269
+     H   -0.023494    0.371429    0.190452
+     C   -0.018112    0.134472    1.228721
+     N   -0.011952   -0.122002    2.352415
      3
 Geometry   3/ 12 for iteration  20
-     H   -0.093781    0.749855    0.445206
-     C   -0.084923    0.259992    1.391254
-     N   -0.072211   -0.269107    2.416096
+     H   -0.034950    0.676469    0.412605
+     C   -0.028533    0.307362    1.377732
+     N   -0.018209   -0.161429    2.432894
      3
 Geometry   4/ 12 for iteration  20
-     H   -0.114250    1.018456    0.783116
-     C   -0.120315    0.258188    1.522110
-     N   -0.123192   -0.481948    2.396817
+     H   -0.036975    1.117217    0.859505
+     C   -0.035015    0.199529    1.341143
+     N   -0.031145   -0.307840    2.373518
      3
 Geometry   5/ 12 for iteration  20
-     H   -0.037380    1.149102    1.178905
-     C   -0.038703    0.145475    1.352164
-     N   -0.039338   -0.529613    2.300520
+     H   -0.013285    1.086388    1.029758
+     C   -0.020232    0.041180    1.244011
+     N   -0.023231   -0.138394    2.373805
      3
 Geometry   6/ 12 for iteration  20
-     H   -0.060569    1.033465    1.593727
-     C   -0.060667    0.017961    1.196954
-     N   -0.060762   -0.387967    2.260478
+     H   -0.001314    1.061872    1.280031
+     C   -0.009959   -0.063923    1.117917
+     N   -0.011385   -0.002209    2.236067
      3
 Geometry   7/ 12 for iteration  20
-     H   -0.017340    1.044765    1.703576
-     C   -0.013147   -0.176702    1.045096
-     N   -0.010960   -0.014711    2.129306
+     H   -0.091124    1.020269    1.615245
+     C    0.038086   -0.148821    1.006327
+     N    0.090156    0.067929    2.104902
      3
 Geometry   8/ 12 for iteration  20
-     H   -0.123703    0.947042    2.041834
-     C    0.033591   -0.101512    0.986462
-     N    0.130595   -0.033159    2.118136
+     H   -0.167078    0.902465    2.063621
+     C    0.040268   -0.072935    1.010013
+     N    0.167134   -0.055944    2.134038
      3
 Geometry   9/ 12 for iteration  20
-     H   -0.220750    0.880935    2.441502
-     C    0.084680   -0.370682    1.037923
-     N    0.136519   -0.010203    2.160760
+     H   -0.098124    0.895779    2.383367
+     C    0.076253   -0.147303    0.878767
+     N    0.102137    0.042855    2.018902
      3
 Geometry  10/ 12 for iteration  20
-     H   -0.174528    0.679072    2.834787
-     C    0.158652   -0.357743    0.987402
-     N    0.052689    0.118332    2.044359
+     H   -0.060045    0.499441    2.873291
+     C    0.106945   -0.086525    0.830508
+     N    0.017821    0.175447    1.960905
      3
 Geometry  11/ 12 for iteration  20
-     H   -0.032428    0.350382    3.109148
-     C    0.019359   -0.283361    1.048111
-     N    0.002453    0.057866    2.161148
+     H   -0.044048    0.187602    3.105609
+     C    0.049893   -0.048937    0.966247
+     N    0.014863    0.107765    2.119019
      3
 Geometry  12/ 12 for iteration  20
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
- EGrad.f90, L73, IOpt=          21
+ Creating Input for Geometry   2/ 12 for iteration  21
+ Computing and reading forces for Geometry   2/ 12 for iteration  21
+ Creating Input for Geometry   3/ 12 for iteration  21
+ Computing and reading forces for Geometry   3/ 12 for iteration  21
+ Creating Input for Geometry   4/ 12 for iteration  21
+ Computing and reading forces for Geometry   4/ 12 for iteration  21
+ Creating Input for Geometry   5/ 12 for iteration  21
+ Computing and reading forces for Geometry   5/ 12 for iteration  21
+ Creating Input for Geometry   6/ 12 for iteration  21
+ Computing and reading forces for Geometry   6/ 12 for iteration  21
+ Creating Input for Geometry   7/ 12 for iteration  21
+ Computing and reading forces for Geometry   7/ 12 for iteration  21
+ Creating Input for Geometry   8/ 12 for iteration  21
+ Computing and reading forces for Geometry   8/ 12 for iteration  21
+ Creating Input for Geometry   9/ 12 for iteration  21
+ Computing and reading forces for Geometry   9/ 12 for iteration  21
+ Creating Input for Geometry  10/ 12 for iteration  21
+ Computing and reading forces for Geometry  10/ 12 for iteration  21
+ Creating Input for Geometry  11/ 12 for iteration  21
+ Computing and reading forces for Geometry  11/ 12 for iteration  21
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  21
      H   -0.000000   -0.000000    0.038576
@@ -1492,69 +1697,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  21
-     H   -0.027733    0.405132    0.200879
-     C   -0.025545    0.145835    1.234298
-     N   -0.023146   -0.134816    2.352701
+     H   -0.021716    0.372582    0.192730
+     C   -0.016553    0.137354    1.231302
+     N   -0.010188   -0.119042    2.355289
      3
 Geometry   3/ 12 for iteration  21
-     H   -0.093025    0.752992    0.450998
-     C   -0.084087    0.260676    1.394793
-     N   -0.072278   -0.272177    2.416189
+     H   -0.023902    0.674234    0.414825
+     C   -0.020320    0.302953    1.373108
+     N   -0.010558   -0.148489    2.434340
      3
 Geometry   4/ 12 for iteration  21
-     H   -0.118106    1.010321    0.777694
-     C   -0.122609    0.279180    1.543912
-     N   -0.125297   -0.493230    2.401317
+     H   -0.035254    1.105387    0.828864
+     C   -0.032902    0.211648    1.359789
+     N   -0.029155   -0.308731    2.383893
      3
 Geometry   5/ 12 for iteration  21
-     H   -0.033844    1.158775    1.158994
-     C   -0.035504    0.160748    1.366638
-     N   -0.036322   -0.546704    2.289689
+     H   -0.013849    1.089545    1.044754
+     C   -0.018009    0.044734    1.240229
+     N   -0.019671   -0.153175    2.368831
      3
 Geometry   6/ 12 for iteration  21
-     H   -0.062258    1.041549    1.594004
-     C   -0.062520    0.035193    1.216430
-     N   -0.062682   -0.430519    2.259717
+     H   -0.014054    1.036383    1.305907
+     C   -0.010377   -0.083594    1.121983
+     N   -0.008272   -0.001237    2.264529
      3
 Geometry   7/ 12 for iteration  21
-     H   -0.029170    1.034376    1.712493
-     C   -0.017539   -0.159080    1.053925
-     N   -0.012362   -0.055683    2.137917
+     H   -0.082675    1.024597    1.584269
+     C    0.039330   -0.166609    0.998815
+     N    0.089535    0.086252    2.118959
      3
 Geometry   8/ 12 for iteration  21
-     H   -0.129699    0.940591    2.061245
-     C    0.037840   -0.100363    0.988350
-     N    0.131398   -0.039588    2.117501
+     H   -0.181210    0.906361    2.051122
+     C    0.040639   -0.078966    1.004465
+     N    0.180004   -0.042651    2.130029
      3
 Geometry   9/ 12 for iteration  21
-     H   -0.219534    0.878623    2.457040
-     C    0.085177   -0.383235    1.039284
-     N    0.129366   -0.011090    2.157629
+     H   -0.096163    0.922803    2.356407
+     C    0.084304   -0.165576    0.876965
+     N    0.095803    0.056228    2.013540
      3
 Geometry  10/ 12 for iteration  21
-     H   -0.154301    0.684504    2.840912
-     C    0.167992   -0.380590    0.993846
-     N    0.024447    0.136159    2.029648
+     H   -0.055818    0.520423    2.860510
+     C    0.126027   -0.099457    0.840931
+     N   -0.012910    0.164319    1.963441
      3
 Geometry  11/ 12 for iteration  21
-     H   -0.026889    0.351203    3.109741
-     C    0.022925   -0.286887    1.050305
-     N   -0.007380    0.056746    2.161344
+     H   -0.037233    0.197931    3.101261
+     C    0.075642   -0.038957    0.961984
+     N   -0.020112    0.093395    2.116251
      3
 Geometry  12/ 12 for iteration  21
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
- EGrad.f90, L73, IOpt=          22
+ Creating Input for Geometry   2/ 12 for iteration  22
+ Computing and reading forces for Geometry   2/ 12 for iteration  22
+ Creating Input for Geometry   3/ 12 for iteration  22
+ Computing and reading forces for Geometry   3/ 12 for iteration  22
+ Creating Input for Geometry   4/ 12 for iteration  22
+ Computing and reading forces for Geometry   4/ 12 for iteration  22
+ Creating Input for Geometry   5/ 12 for iteration  22
+ Computing and reading forces for Geometry   5/ 12 for iteration  22
+ Creating Input for Geometry   6/ 12 for iteration  22
+ Computing and reading forces for Geometry   6/ 12 for iteration  22
+ Creating Input for Geometry   7/ 12 for iteration  22
+ Computing and reading forces for Geometry   7/ 12 for iteration  22
+ Creating Input for Geometry   8/ 12 for iteration  22
+ Computing and reading forces for Geometry   8/ 12 for iteration  22
+ Creating Input for Geometry   9/ 12 for iteration  22
+ Computing and reading forces for Geometry   9/ 12 for iteration  22
+ Creating Input for Geometry  10/ 12 for iteration  22
+ Computing and reading forces for Geometry  10/ 12 for iteration  22
+ Creating Input for Geometry  11/ 12 for iteration  22
+ Computing and reading forces for Geometry  11/ 12 for iteration  22
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  22
      H   -0.000000   -0.000000    0.038576
@@ -1562,69 +1778,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  22
-     H   -0.031458    0.407135    0.202007
-     C   -0.029163    0.145392    1.234567
-     N   -0.026259   -0.137919    2.352028
+     H   -0.012453    0.385422    0.185565
+     C   -0.005548    0.130361    1.219814
+     N    0.001705   -0.142177    2.339944
      3
 Geometry   3/ 12 for iteration  22
-     H   -0.096579    0.757157    0.452350
-     C   -0.086776    0.261528    1.395293
-     N   -0.074951   -0.275232    2.415652
+     H   -0.040549    0.724361    0.419615
+     C   -0.012299    0.284259    1.373618
+     N   -0.004262   -0.169108    2.434933
      3
 Geometry   4/ 12 for iteration  22
-     H   -0.116955    1.011987    0.779553
-     C   -0.120246    0.283381    1.547794
-     N   -0.122840   -0.496027    2.398389
+     H   -0.032816    1.103424    0.824499
+     C   -0.030719    0.214141    1.360358
+     N   -0.027070   -0.300058    2.385809
      3
 Geometry   5/ 12 for iteration  22
-     H   -0.032292    1.158588    1.157873
-     C   -0.034187    0.169089    1.372479
-     N   -0.035121   -0.551490    2.281038
+     H   -0.010618    1.096194    1.048707
+     C   -0.010817    0.050898    1.224970
+     N   -0.010764   -0.156726    2.354570
      3
 Geometry   6/ 12 for iteration  22
-     H   -0.064677    1.047829    1.606401
-     C   -0.065072    0.048632    1.232697
-     N   -0.065289   -0.470823    2.257659
+     H   -0.012332    1.041097    1.321238
+     C   -0.010953   -0.083206    1.117535
+     N   -0.009668   -0.004941    2.250490
      3
 Geometry   7/ 12 for iteration  22
-     H   -0.041601    1.019490    1.722832
-     C   -0.022609   -0.143341    1.059461
-     N   -0.005505   -0.085265    2.144284
+     H   -0.080432    1.032271    1.554567
+     C    0.040978   -0.179845    1.008775
+     N    0.090098    0.100545    2.114837
      3
 Geometry   8/ 12 for iteration  22
-     H   -0.141015    0.920658    2.087851
-     C    0.038241   -0.083347    0.989324
-     N    0.139778   -0.055287    2.119576
+     H   -0.198508    0.921755    2.012965
+     C    0.048714   -0.092210    0.996043
+     N    0.198365   -0.010220    2.119402
      3
 Geometry   9/ 12 for iteration  22
-     H   -0.212585    0.879289    2.468285
-     C    0.087736   -0.396142    1.042199
-     N    0.115991   -0.008649    2.150523
+     H   -0.097301    0.949106    2.323539
+     C    0.092583   -0.182179    0.877016
+     N    0.092763    0.070807    2.008694
      3
 Geometry  10/ 12 for iteration  22
-     H   -0.130976    0.684831    2.843797
-     C    0.168787   -0.399112    1.005166
-     N   -0.002561    0.143211    2.023299
+     H   -0.058878    0.517332    2.844315
+     C    0.114667   -0.091610    0.837247
+     N    0.003315    0.165280    1.963808
      3
 Geometry  11/ 12 for iteration  22
-     H   -0.029143    0.353903    3.107986
-     C    0.023191   -0.288315    1.049053
-     N   -0.005060    0.058534    2.159898
+     H   -0.040229    0.218811    3.092805
+     C    0.054008   -0.054639    0.962335
+     N   -0.001472    0.089499    2.113989
      3
 Geometry  12/ 12 for iteration  22
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
- EGrad.f90, L73, IOpt=          23
+ Creating Input for Geometry   2/ 12 for iteration  23
+ Computing and reading forces for Geometry   2/ 12 for iteration  23
+ Creating Input for Geometry   3/ 12 for iteration  23
+ Computing and reading forces for Geometry   3/ 12 for iteration  23
+ Creating Input for Geometry   4/ 12 for iteration  23
+ Computing and reading forces for Geometry   4/ 12 for iteration  23
+ Creating Input for Geometry   5/ 12 for iteration  23
+ Computing and reading forces for Geometry   5/ 12 for iteration  23
+ Creating Input for Geometry   6/ 12 for iteration  23
+ Computing and reading forces for Geometry   6/ 12 for iteration  23
+ Creating Input for Geometry   7/ 12 for iteration  23
+ Computing and reading forces for Geometry   7/ 12 for iteration  23
+ Creating Input for Geometry   8/ 12 for iteration  23
+ Computing and reading forces for Geometry   8/ 12 for iteration  23
+ Creating Input for Geometry   9/ 12 for iteration  23
+ Computing and reading forces for Geometry   9/ 12 for iteration  23
+ Creating Input for Geometry  10/ 12 for iteration  23
+ Computing and reading forces for Geometry  10/ 12 for iteration  23
+ Creating Input for Geometry  11/ 12 for iteration  23
+ Computing and reading forces for Geometry  11/ 12 for iteration  23
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  23
      H   -0.000000   -0.000000    0.038576
@@ -1632,69 +1859,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  23
-     H   -0.032888    0.400891    0.204739
-     C   -0.031766    0.146821    1.239222
-     N   -0.025942   -0.128814    2.358604
+     H   -0.005392    0.384174    0.175510
+     C    0.002666    0.122744    1.207347
+     N    0.010589   -0.157612    2.324670
      3
 Geometry   3/ 12 for iteration  23
-     H   -0.101887    0.753873    0.451803
-     C   -0.090603    0.256728    1.392271
-     N   -0.080092   -0.280835    2.410206
+     H   -0.050490    0.713999    0.406235
+     C   -0.019870    0.268309    1.364618
+     N   -0.008964   -0.191751    2.420438
      3
 Geometry   4/ 12 for iteration  23
-     H   -0.116771    1.009967    0.781089
-     C   -0.121565    0.283593    1.551061
-     N   -0.124544   -0.490837    2.406361
+     H   -0.034476    1.089349    0.826729
+     C   -0.032956    0.219917    1.366921
+     N   -0.029230   -0.292505    2.394346
      3
 Geometry   5/ 12 for iteration  23
-     H   -0.033074    1.153940    1.156869
-     C   -0.035245    0.171322    1.378716
-     N   -0.036260   -0.547747    2.281035
+     H   -0.005592    1.102034    1.003527
+     C   -0.006518    0.067918    1.223863
+     N   -0.007409   -0.146364    2.354819
      3
 Geometry   6/ 12 for iteration  23
-     H   -0.066891    1.057478    1.616140
-     C   -0.066836    0.058600    1.249735
-     N   -0.067114   -0.508368    2.255878
+     H   -0.015143    1.041270    1.358302
+     C   -0.013152   -0.074709    1.110735
+     N   -0.011482   -0.031134    2.244311
      3
 Geometry   7/ 12 for iteration  23
-     H   -0.059714    1.008991    1.732731
-     C   -0.012261   -0.129705    1.062969
-     N   -0.014642   -0.111273    2.157468
+     H   -0.087152    1.040112    1.537336
+     C    0.042905   -0.165326    1.007551
+     N    0.088526    0.092687    2.113623
      3
 Geometry   8/ 12 for iteration  23
-     H   -0.149851    0.901920    2.105875
-     C    0.038166   -0.059546    0.989598
-     N    0.146741   -0.072686    2.120606
+     H   -0.213496    0.935637    1.983560
+     C    0.057274   -0.101708    0.989881
+     N    0.215476    0.017360    2.111064
      3
 Geometry   9/ 12 for iteration  23
-     H   -0.201612    0.870046    2.475654
-     C    0.080595   -0.387141    1.042439
-     N    0.108618   -0.018290    2.147468
+     H   -0.095845    0.975926    2.295991
+     C    0.102415   -0.199742    0.873392
+     N    0.088521    0.090237    1.999139
      3
 Geometry  10/ 12 for iteration  23
-     H   -0.126860    0.683946    2.844502
-     C    0.166959   -0.403571    1.007853
-     N   -0.007657    0.142137    2.022943
+     H   -0.061819    0.509983    2.830722
+     C    0.101334   -0.085782    0.837637
+     N    0.019529    0.167195    1.966648
      3
 Geometry  11/ 12 for iteration  23
-     H   -0.029514    0.354644    3.107992
-     C    0.023782   -0.288211    1.048919
-     N   -0.004897    0.058354    2.160013
+     H   -0.040854    0.210640    3.100210
+     C    0.052910   -0.054588    0.963579
+     N    0.001507    0.091879    2.117019
      3
 Geometry  12/ 12 for iteration  23
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
- EGrad.f90, L73, IOpt=          24
+ Creating Input for Geometry   2/ 12 for iteration  24
+ Computing and reading forces for Geometry   2/ 12 for iteration  24
+ Creating Input for Geometry   3/ 12 for iteration  24
+ Computing and reading forces for Geometry   3/ 12 for iteration  24
+ Creating Input for Geometry   4/ 12 for iteration  24
+ Computing and reading forces for Geometry   4/ 12 for iteration  24
+ Creating Input for Geometry   5/ 12 for iteration  24
+ Computing and reading forces for Geometry   5/ 12 for iteration  24
+ Creating Input for Geometry   6/ 12 for iteration  24
+ Computing and reading forces for Geometry   6/ 12 for iteration  24
+ Creating Input for Geometry   7/ 12 for iteration  24
+ Computing and reading forces for Geometry   7/ 12 for iteration  24
+ Creating Input for Geometry   8/ 12 for iteration  24
+ Computing and reading forces for Geometry   8/ 12 for iteration  24
+ Creating Input for Geometry   9/ 12 for iteration  24
+ Computing and reading forces for Geometry   9/ 12 for iteration  24
+ Creating Input for Geometry  10/ 12 for iteration  24
+ Computing and reading forces for Geometry  10/ 12 for iteration  24
+ Creating Input for Geometry  11/ 12 for iteration  24
+ Computing and reading forces for Geometry  11/ 12 for iteration  24
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  24
      H   -0.000000   -0.000000    0.038576
@@ -1702,69 +1940,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  24
-     H   -0.024547    0.404565    0.205692
-     C   -0.022670    0.148177    1.238516
-     N   -0.019720   -0.129276    2.356257
+     H   -0.002443    0.375252    0.168411
+     C    0.005499    0.118711    1.201342
+     N    0.014262   -0.160280    2.319020
      3
 Geometry   3/ 12 for iteration  24
-     H   -0.107274    0.756642    0.451337
-     C   -0.094632    0.256607    1.391174
-     N   -0.084139   -0.284496    2.408245
+     H   -0.035685    0.677945    0.380733
+     C   -0.011487    0.261257    1.359484
+     N    0.007990   -0.204747    2.413413
      3
 Geometry   4/ 12 for iteration  24
-     H   -0.119379    0.999728    0.789375
-     C   -0.128606    0.280826    1.559460
-     N   -0.133540   -0.479121    2.427662
+     H   -0.028729    1.075429    0.838839
+     C   -0.029312    0.196994    1.356930
+     N   -0.027420   -0.259190    2.402849
      3
 Geometry   5/ 12 for iteration  24
-     H   -0.034336    1.149934    1.156603
-     C   -0.036695    0.175124    1.386137
-     N   -0.037790   -0.548664    2.282623
+     H   -0.011202    1.083489    1.063555
+     C   -0.016248    0.041816    1.225700
+     N   -0.018942   -0.128157    2.350857
      3
 Geometry   6/ 12 for iteration  24
-     H   -0.068580    1.067857    1.621216
-     C   -0.067587    0.066028    1.266250
-     N   -0.067856   -0.540233    2.253803
+     H   -0.013362    1.032631    1.337610
+     C   -0.010528   -0.089751    1.115029
+     N   -0.008898    0.005160    2.240346
      3
 Geometry   7/ 12 for iteration  24
-     H   -0.057314    1.001727    1.725641
-     C   -0.020339   -0.110265    1.050874
-     N   -0.018829   -0.140359    2.193575
+     H   -0.086972    1.007490    1.618671
+     C    0.032473   -0.170484    1.024021
+     N    0.094869    0.073873    2.126500
      3
 Geometry   8/ 12 for iteration  24
-     H   -0.158490    0.884942    2.112463
-     C    0.038611   -0.036299    0.991341
-     N    0.148771   -0.091344    2.122912
+     H   -0.184647    0.942968    2.059701
+     C    0.068750   -0.121542    0.965348
+     N    0.180008    0.027016    2.085118
      3
 Geometry   9/ 12 for iteration  24
-     H   -0.194175    0.877211    2.462191
-     C    0.084227   -0.382436    1.041961
-     N    0.097953   -0.015864    2.136820
+     H   -0.089577    0.962174    2.327614
+     C    0.114281   -0.209441    0.862455
+     N    0.075195    0.118661    1.981028
      3
 Geometry  10/ 12 for iteration  24
-     H   -0.139881    0.676979    2.833801
-     C    0.166943   -0.380973    0.997390
-     N    0.001627    0.132687    2.026063
+     H   -0.056580    0.481532    2.869473
+     C    0.106629   -0.086447    0.837468
+     N    0.002769    0.173806    1.958208
      3
 Geometry  11/ 12 for iteration  24
-     H   -0.030324    0.355524    3.107423
-     C    0.024950   -0.288721    1.048504
-     N   -0.005078    0.059261    2.159443
+     H   -0.040961    0.210094    3.102409
+     C    0.050498   -0.057517    0.966284
+     N   -0.001245    0.085235    2.119583
      3
 Geometry  12/ 12 for iteration  24
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
- EGrad.f90, L73, IOpt=          25
+ Creating Input for Geometry   2/ 12 for iteration  25
+ Computing and reading forces for Geometry   2/ 12 for iteration  25
+ Creating Input for Geometry   3/ 12 for iteration  25
+ Computing and reading forces for Geometry   3/ 12 for iteration  25
+ Creating Input for Geometry   4/ 12 for iteration  25
+ Computing and reading forces for Geometry   4/ 12 for iteration  25
+ Creating Input for Geometry   5/ 12 for iteration  25
+ Computing and reading forces for Geometry   5/ 12 for iteration  25
+ Creating Input for Geometry   6/ 12 for iteration  25
+ Computing and reading forces for Geometry   6/ 12 for iteration  25
+ Creating Input for Geometry   7/ 12 for iteration  25
+ Computing and reading forces for Geometry   7/ 12 for iteration  25
+ Creating Input for Geometry   8/ 12 for iteration  25
+ Computing and reading forces for Geometry   8/ 12 for iteration  25
+ Creating Input for Geometry   9/ 12 for iteration  25
+ Computing and reading forces for Geometry   9/ 12 for iteration  25
+ Creating Input for Geometry  10/ 12 for iteration  25
+ Computing and reading forces for Geometry  10/ 12 for iteration  25
+ Creating Input for Geometry  11/ 12 for iteration  25
+ Computing and reading forces for Geometry  11/ 12 for iteration  25
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  25
      H   -0.000000   -0.000000    0.038576
@@ -1772,69 +2021,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  25
-     H   -0.022540    0.405193    0.202492
-     C   -0.020519    0.148366    1.236622
-     N   -0.018381   -0.129518    2.355817
+     H   -0.004587    0.372201    0.167031
+     C    0.003147    0.117661    1.201243
+     N    0.011954   -0.159010    2.320220
      3
 Geometry   3/ 12 for iteration  25
-     H   -0.103964    0.753138    0.447230
-     C   -0.093533    0.256048    1.389620
-     N   -0.081786   -0.281834    2.409553
+     H   -0.025595    0.693164    0.397771
+     C   -0.003941    0.250197    1.353176
+     N    0.016260   -0.202625    2.412838
      3
 Geometry   4/ 12 for iteration  25
-     H   -0.118073    1.001630    0.784019
-     C   -0.126493    0.285590    1.563244
-     N   -0.130579   -0.479150    2.426890
+     H   -0.024698    1.066305    0.891818
+     C   -0.027838    0.158472    1.333498
+     N   -0.027594   -0.222586    2.400485
      3
 Geometry   5/ 12 for iteration  25
-     H   -0.036739    1.149587    1.158845
-     C   -0.039362    0.182209    1.404109
-     N   -0.040616   -0.564776    2.282544
+     H   -0.017993    1.062298    1.170854
+     C   -0.022294    0.001874    1.206666
+     N   -0.024003   -0.112437    2.331323
      3
 Geometry   6/ 12 for iteration  25
-     H   -0.070133    1.079162    1.622992
-     C   -0.067657    0.072119    1.284728
-     N   -0.068369   -0.570587    2.250661
+     H   -0.029731    1.024614    1.428595
+     C   -0.002528   -0.109722    1.090079
+     N    0.010938    0.008907    2.208628
      3
 Geometry   7/ 12 for iteration  25
-     H   -0.060895    1.004231    1.731925
-     C   -0.014255   -0.103350    1.074015
-     N   -0.032572   -0.176907    2.189666
+     H   -0.100608    1.004171    1.692708
+     C    0.045105   -0.175767    1.003015
+     N    0.118616    0.087629    2.098924
      3
 Geometry   8/ 12 for iteration  25
-     H   -0.147201    0.908733    2.091735
-     C    0.037996   -0.062621    0.989185
-     N    0.144668   -0.067139    2.119260
+     H   -0.166230    0.957069    2.114243
+     C    0.083814   -0.145628    0.939772
+     N    0.160392    0.055894    2.059115
      3
 Geometry   9/ 12 for iteration  25
-     H   -0.189880    0.879384    2.464773
-     C    0.086991   -0.388125    1.043183
-     N    0.088499   -0.014146    2.130133
+     H   -0.088528    0.914190    2.402605
+     C    0.124061   -0.209531    0.846688
+     N    0.065416    0.150405    1.956516
      3
 Geometry  10/ 12 for iteration  25
-     H   -0.144256    0.670094    2.839671
-     C    0.171464   -0.376488    0.989616
-     N   -0.001209    0.136681    2.018415
+     H   -0.060161    0.436143    2.900899
+     C    0.089214   -0.078755    0.836765
+     N    0.025701    0.186985    1.961132
      3
 Geometry  11/ 12 for iteration  25
-     H   -0.029751    0.353957    3.108355
-     C    0.024199   -0.287597    1.048944
-     N   -0.004888    0.058635    2.160158
+     H   -0.041923    0.206479    3.105684
+     C    0.048532   -0.059196    0.966654
+     N   -0.000090    0.084827    2.120832
      3
 Geometry  12/ 12 for iteration  25
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
- EGrad.f90, L73, IOpt=          26
+ Creating Input for Geometry   2/ 12 for iteration  26
+ Computing and reading forces for Geometry   2/ 12 for iteration  26
+ Creating Input for Geometry   3/ 12 for iteration  26
+ Computing and reading forces for Geometry   3/ 12 for iteration  26
+ Creating Input for Geometry   4/ 12 for iteration  26
+ Computing and reading forces for Geometry   4/ 12 for iteration  26
+ Creating Input for Geometry   5/ 12 for iteration  26
+ Computing and reading forces for Geometry   5/ 12 for iteration  26
+ Creating Input for Geometry   6/ 12 for iteration  26
+ Computing and reading forces for Geometry   6/ 12 for iteration  26
+ Creating Input for Geometry   7/ 12 for iteration  26
+ Computing and reading forces for Geometry   7/ 12 for iteration  26
+ Creating Input for Geometry   8/ 12 for iteration  26
+ Computing and reading forces for Geometry   8/ 12 for iteration  26
+ Creating Input for Geometry   9/ 12 for iteration  26
+ Computing and reading forces for Geometry   9/ 12 for iteration  26
+ Creating Input for Geometry  10/ 12 for iteration  26
+ Computing and reading forces for Geometry  10/ 12 for iteration  26
+ Creating Input for Geometry  11/ 12 for iteration  26
+ Computing and reading forces for Geometry  11/ 12 for iteration  26
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  26
      H   -0.000000   -0.000000    0.038576
@@ -1842,69 +2102,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  26
-     H   -0.022394    0.401156    0.200857
-     C   -0.020405    0.146937    1.235343
-     N   -0.018249   -0.128196    2.354910
+     H   -0.003107    0.370374    0.163675
+     C    0.005932    0.112280    1.196333
+     N    0.013492   -0.161504    2.315695
      3
 Geometry   3/ 12 for iteration  26
-     H   -0.111218    0.741342    0.440333
-     C   -0.096243    0.249662    1.381973
-     N   -0.087245   -0.282913    2.400791
+     H   -0.014777    0.665895    0.371984
+     C    0.007194    0.247974    1.351532
+     N    0.031236   -0.203798    2.412039
      3
 Geometry   4/ 12 for iteration  26
-     H   -0.125982    0.979720    0.768716
-     C   -0.138305    0.288615    1.580613
-     N   -0.144265   -0.462217    2.456082
+     H   -0.025490    1.066796    0.915893
+     C   -0.027925    0.155036    1.327289
+     N   -0.027106   -0.220007    2.391778
      3
 Geometry   5/ 12 for iteration  26
-     H   -0.046232    1.142558    1.135527
-     C   -0.049885    0.194061    1.448098
-     N   -0.051593   -0.585927    2.297647
+     H   -0.026029    1.054331    1.227728
+     C   -0.027738   -0.013040    1.207287
+     N   -0.027450   -0.126398    2.331414
      3
 Geometry   6/ 12 for iteration  26
-     H   -0.069322    1.099446    1.589799
-     C   -0.064055    0.070685    1.309554
-     N   -0.065506   -0.581456    2.244166
+     H   -0.032774    1.021601    1.453539
+     C   -0.002842   -0.100486    1.082199
+     N    0.011899   -0.004093    2.198694
      3
 Geometry   7/ 12 for iteration  26
-     H   -0.071030    1.003303    1.736521
-     C   -0.025879   -0.085180    1.088199
-     N   -0.018176   -0.209518    2.183672
+     H   -0.103792    1.024868    1.665894
+     C    0.056596   -0.174249    0.988166
+     N    0.123229    0.105990    2.080826
      3
 Geometry   8/ 12 for iteration  26
-     H   -0.138300    0.920474    2.096105
-     C    0.038287   -0.088538    0.990831
-     N    0.137706   -0.053504    2.117847
+     H   -0.147843    0.945891    2.172441
+     C    0.088193   -0.153799    0.926184
+     N    0.141759    0.068057    2.043869
      3
 Geometry   9/ 12 for iteration  26
-     H   -0.177000    0.873358    2.476654
-     C    0.080163   -0.394165    1.045267
-     N    0.079335   -0.016112    2.128312
+     H   -0.085299    0.895806    2.446031
+     C    0.131705   -0.216406    0.832943
+     N    0.058071    0.174787    1.935002
      3
 Geometry  10/ 12 for iteration  26
-     H   -0.136501    0.668070    2.848413
-     C    0.170782   -0.388533    0.992962
-     N   -0.010140    0.142957    2.013337
+     H   -0.062356    0.394973    2.923683
+     C    0.073444   -0.069140    0.839947
+     N    0.040494    0.190827    1.967992
      3
 Geometry  11/ 12 for iteration  26
-     H   -0.030592    0.349813    3.110365
-     C    0.025088   -0.283913    1.049148
-     N   -0.005001    0.057996    2.161384
+     H   -0.041310    0.202968    3.109356
+     C    0.047637   -0.058975    0.969307
+     N   -0.000365    0.082722    2.123995
      3
 Geometry  12/ 12 for iteration  26
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
- EGrad.f90, L73, IOpt=          27
+ Creating Input for Geometry   2/ 12 for iteration  27
+ Computing and reading forces for Geometry   2/ 12 for iteration  27
+ Creating Input for Geometry   3/ 12 for iteration  27
+ Computing and reading forces for Geometry   3/ 12 for iteration  27
+ Creating Input for Geometry   4/ 12 for iteration  27
+ Computing and reading forces for Geometry   4/ 12 for iteration  27
+ Creating Input for Geometry   5/ 12 for iteration  27
+ Computing and reading forces for Geometry   5/ 12 for iteration  27
+ Creating Input for Geometry   6/ 12 for iteration  27
+ Computing and reading forces for Geometry   6/ 12 for iteration  27
+ Creating Input for Geometry   7/ 12 for iteration  27
+ Computing and reading forces for Geometry   7/ 12 for iteration  27
+ Creating Input for Geometry   8/ 12 for iteration  27
+ Computing and reading forces for Geometry   8/ 12 for iteration  27
+ Creating Input for Geometry   9/ 12 for iteration  27
+ Computing and reading forces for Geometry   9/ 12 for iteration  27
+ Creating Input for Geometry  10/ 12 for iteration  27
+ Computing and reading forces for Geometry  10/ 12 for iteration  27
+ Creating Input for Geometry  11/ 12 for iteration  27
+ Computing and reading forces for Geometry  11/ 12 for iteration  27
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  27
      H   -0.000000   -0.000000    0.038576
@@ -1912,69 +2183,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  27
-     H   -0.022002    0.398937    0.199851
-     C   -0.020029    0.146772    1.235139
-     N   -0.017696   -0.126099    2.355572
+     H   -0.024031    0.366100    0.173043
+     C   -0.017532    0.119076    1.208737
+     N   -0.010280   -0.147899    2.329711
      3
 Geometry   3/ 12 for iteration  27
-     H   -0.114633    0.743544    0.433731
-     C   -0.098611    0.252033    1.378831
-     N   -0.088697   -0.280579    2.401133
+     H   -0.014162    0.694045    0.407384
+     C    0.005298    0.243332    1.349578
+     N    0.028263   -0.204770    2.410805
      3
 Geometry   4/ 12 for iteration  27
-     H   -0.118167    0.994847    0.763516
-     C   -0.124116    0.289791    1.561350
-     N   -0.127184   -0.474595    2.423658
+     H   -0.028206    1.074000    0.966947
+     C   -0.029582    0.141996    1.313357
+     N   -0.027889   -0.222684    2.377859
      3
 Geometry   5/ 12 for iteration  27
-     H   -0.054827    1.136390    1.163024
-     C   -0.058470    0.192067    1.475713
-     N   -0.060517   -0.608985    2.303561
+     H   -0.034337    1.044758    1.292603
+     C   -0.030926   -0.029685    1.199387
+     N   -0.027635   -0.133039    2.323498
      3
 Geometry   6/ 12 for iteration  27
-     H   -0.073119    1.105611    1.610290
-     C   -0.065150    0.073283    1.325840
-     N   -0.066011   -0.611612    2.235654
+     H   -0.040605    1.009728    1.497459
+     C   -0.001687   -0.105788    1.070408
+     N    0.016940   -0.004839    2.186108
      3
 Geometry   7/ 12 for iteration  27
-     H   -0.078584    0.997267    1.748089
-     C   -0.039332   -0.068221    1.098538
-     N   -0.001271   -0.240632    2.178922
+     H   -0.103756    1.042600    1.645317
+     C    0.065999   -0.171063    0.972574
+     N    0.123965    0.119703    2.063031
      3
 Geometry   8/ 12 for iteration  27
-     H   -0.145939    0.905783    2.111417
-     C    0.042827   -0.074962    0.995076
-     N    0.137210   -0.068549    2.123102
+     H   -0.137843    0.933926    2.213340
+     C    0.090334   -0.154248    0.920283
+     N    0.130432    0.069522    2.036057
      3
 Geometry   9/ 12 for iteration  27
-     H   -0.163929    0.866073    2.483233
-     C    0.070748   -0.389984    1.045484
-     N    0.073530   -0.022646    2.127725
+     H   -0.086832    0.914640    2.456498
+     C    0.144788   -0.230234    0.817783
+     N    0.054110    0.192059    1.912246
      3
 Geometry  10/ 12 for iteration  27
-     H   -0.138393    0.664222    2.847381
-     C    0.171463   -0.384582    0.990693
-     N   -0.009388    0.144715    2.012564
+     H   -0.061974    0.418334    2.904224
+     C    0.084333   -0.077803    0.841343
+     N    0.027281    0.183693    1.969682
      3
 Geometry  11/ 12 for iteration  27
-     H   -0.033378    0.347605    3.111596
-     C    0.027706   -0.281514    1.048142
-     N   -0.005406    0.057765    2.161643
+     H   -0.041907    0.204908    3.105860
+     C    0.046849   -0.059229    0.966569
+     N   -0.000007    0.083891    2.120814
      3
 Geometry  12/ 12 for iteration  27
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
- EGrad.f90, L73, IOpt=          28
+ Creating Input for Geometry   2/ 12 for iteration  28
+ Computing and reading forces for Geometry   2/ 12 for iteration  28
+ Creating Input for Geometry   3/ 12 for iteration  28
+ Computing and reading forces for Geometry   3/ 12 for iteration  28
+ Creating Input for Geometry   4/ 12 for iteration  28
+ Computing and reading forces for Geometry   4/ 12 for iteration  28
+ Creating Input for Geometry   5/ 12 for iteration  28
+ Computing and reading forces for Geometry   5/ 12 for iteration  28
+ Creating Input for Geometry   6/ 12 for iteration  28
+ Computing and reading forces for Geometry   6/ 12 for iteration  28
+ Creating Input for Geometry   7/ 12 for iteration  28
+ Computing and reading forces for Geometry   7/ 12 for iteration  28
+ Creating Input for Geometry   8/ 12 for iteration  28
+ Computing and reading forces for Geometry   8/ 12 for iteration  28
+ Creating Input for Geometry   9/ 12 for iteration  28
+ Computing and reading forces for Geometry   9/ 12 for iteration  28
+ Creating Input for Geometry  10/ 12 for iteration  28
+ Computing and reading forces for Geometry  10/ 12 for iteration  28
+ Creating Input for Geometry  11/ 12 for iteration  28
+ Computing and reading forces for Geometry  11/ 12 for iteration  28
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  28
      H   -0.000000   -0.000000    0.038576
@@ -1982,69 +2264,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  28
-     H   -0.021156    0.397445    0.199701
-     C   -0.019078    0.146814    1.235192
-     N   -0.016801   -0.124425    2.355847
+     H   -0.038949    0.365964    0.177355
+     C   -0.034707    0.113588    1.214069
+     N   -0.022273   -0.154123    2.333925
      3
 Geometry   3/ 12 for iteration  28
-     H   -0.107351    0.740245    0.434474
-     C   -0.096962    0.248876    1.379499
-     N   -0.085140   -0.282143    2.402563
+     H   -0.009031    0.681442    0.392288
+     C    0.012267    0.251389    1.355972
+     N    0.035108   -0.197119    2.416515
      3
 Geometry   4/ 12 for iteration  28
-     H   -0.112588    1.006461    0.760842
-     C   -0.114635    0.291469    1.550120
-     N   -0.115972   -0.481893    2.406193
+     H   -0.030458    1.086667    0.984979
+     C   -0.029866    0.147435    1.312891
+     N   -0.026874   -0.242556    2.367755
      3
 Geometry   5/ 12 for iteration  28
-     H   -0.052646    1.140068    1.169785
-     C   -0.056501    0.196329    1.478544
-     N   -0.057962   -0.620116    2.295279
+     H   -0.039429    1.046084    1.335030
+     C   -0.036085   -0.035938    1.192459
+     N   -0.032053   -0.152107    2.328787
      3
 Geometry   6/ 12 for iteration  28
-     H   -0.074806    1.111655    1.605719
-     C   -0.063782    0.077095    1.335489
-     N   -0.059155   -0.621096    2.227266
+     H   -0.047276    0.997291    1.513130
+     C   -0.003420   -0.113388    1.076394
+     N    0.016284   -0.004142    2.190678
      3
 Geometry   7/ 12 for iteration  28
-     H   -0.086616    0.989396    1.762100
-     C   -0.051155   -0.054120    1.101806
-     N    0.017144   -0.261499    2.173132
+     H   -0.094702    1.050845    1.625336
+     C    0.067417   -0.164852    0.964530
+     N    0.113024    0.122491    2.054946
      3
 Geometry   8/ 12 for iteration  28
-     H   -0.138684    0.894448    2.135197
-     C    0.048681   -0.076706    1.004182
-     N    0.118824   -0.083675    2.130155
+     H   -0.130759    0.916754    2.239175
+     C    0.084341   -0.142468    0.927221
+     N    0.121333    0.047973    2.043178
      3
 Geometry   9/ 12 for iteration  28
-     H   -0.153089    0.857336    2.504798
-     C    0.063449   -0.397916    1.047683
-     N    0.065583   -0.028013    2.127734
+     H   -0.126823    0.914129    2.446994
+     C    0.155328   -0.229553    0.825561
+     N    0.080355    0.195343    1.911491
      3
 Geometry  10/ 12 for iteration  28
-     H   -0.147728    0.645929    2.848954
-     C    0.178770   -0.358071    0.973423
-     N   -0.006120    0.153893    2.003476
+     H   -0.068133    0.442468    2.902051
+     C    0.082557   -0.080500    0.825527
+     N    0.039628    0.187961    1.955445
      3
 Geometry  11/ 12 for iteration  28
-     H   -0.033733    0.347084    3.111732
-     C    0.027928   -0.281066    1.048016
-     N   -0.005380    0.057844    2.161597
+     H   -0.044221    0.213974    3.100926
+     C    0.050224   -0.062641    0.963133
+     N   -0.000099    0.086501    2.116762
      3
 Geometry  12/ 12 for iteration  28
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
- EGrad.f90, L73, IOpt=          29
+ Creating Input for Geometry   2/ 12 for iteration  29
+ Computing and reading forces for Geometry   2/ 12 for iteration  29
+ Creating Input for Geometry   3/ 12 for iteration  29
+ Computing and reading forces for Geometry   3/ 12 for iteration  29
+ Creating Input for Geometry   4/ 12 for iteration  29
+ Computing and reading forces for Geometry   4/ 12 for iteration  29
+ Creating Input for Geometry   5/ 12 for iteration  29
+ Computing and reading forces for Geometry   5/ 12 for iteration  29
+ Creating Input for Geometry   6/ 12 for iteration  29
+ Computing and reading forces for Geometry   6/ 12 for iteration  29
+ Creating Input for Geometry   7/ 12 for iteration  29
+ Computing and reading forces for Geometry   7/ 12 for iteration  29
+ Creating Input for Geometry   8/ 12 for iteration  29
+ Computing and reading forces for Geometry   8/ 12 for iteration  29
+ Creating Input for Geometry   9/ 12 for iteration  29
+ Computing and reading forces for Geometry   9/ 12 for iteration  29
+ Creating Input for Geometry  10/ 12 for iteration  29
+ Computing and reading forces for Geometry  10/ 12 for iteration  29
+ Creating Input for Geometry  11/ 12 for iteration  29
+ Computing and reading forces for Geometry  11/ 12 for iteration  29
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  29
      H   -0.000000   -0.000000    0.038576
@@ -2052,69 +2345,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  29
-     H   -0.021789    0.399947    0.201637
-     C   -0.019595    0.147871    1.236607
-     N   -0.017160   -0.124916    2.356703
+     H   -0.036305    0.377374    0.183510
+     C   -0.029046    0.124210    1.218057
+     N   -0.021112   -0.149787    2.337638
      3
 Geometry   3/ 12 for iteration  29
-     H   -0.105889    0.743848    0.438300
-     C   -0.095379    0.251028    1.381879
-     N   -0.083892   -0.282486    2.403052
+     H   -0.010131    0.703979    0.432516
+     C    0.008271    0.254094    1.354743
+     N    0.024157   -0.178638    2.420528
      3
 Geometry   4/ 12 for iteration  29
-     H   -0.112708    1.004624    0.766286
-     C   -0.115502    0.289806    1.552098
-     N   -0.117401   -0.481032    2.409729
+     H   -0.030917    1.086010    1.004659
+     C   -0.029464    0.138239    1.317132
+     N   -0.026274   -0.256375    2.371928
      3
 Geometry   5/ 12 for iteration  29
-     H   -0.052371    1.145343    1.170724
-     C   -0.056765    0.202894    1.501561
-     N   -0.056938   -0.644992    2.286014
+     H   -0.041389    1.059120    1.356560
+     C   -0.032168   -0.053010    1.194278
+     N   -0.025371   -0.171744    2.322409
      3
 Geometry   6/ 12 for iteration  29
-     H   -0.077590    1.115530    1.601861
-     C   -0.063125    0.080544    1.337792
-     N   -0.047180   -0.623250    2.217766
+     H   -0.062445    0.982398    1.539416
+     C   -0.003537   -0.131662    1.083596
+     N    0.019596    0.001831    2.195624
      3
 Geometry   7/ 12 for iteration  29
-     H   -0.095365    0.980641    1.778193
-     C   -0.061464   -0.039654    1.098049
-     N    0.036159   -0.278823    2.169342
+     H   -0.082194    1.064078    1.603880
+     C    0.073135   -0.154543    0.951429
+     N    0.100340    0.130525    2.043704
      3
 Geometry   8/ 12 for iteration  29
-     H   -0.150798    0.880168    2.156351
-     C    0.055321   -0.077804    1.011161
-     N    0.118553   -0.091190    2.136203
+     H   -0.114630    0.908690    2.258489
+     C    0.079780   -0.137476    0.933698
+     N    0.103339    0.029212    2.050106
      3
 Geometry   9/ 12 for iteration  29
-     H   -0.139386    0.847626    2.525287
-     C    0.053546   -0.403574    1.049816
-     N    0.057874   -0.034263    2.128351
+     H   -0.138623    0.918727    2.458291
+     C    0.151874   -0.222817    0.822780
+     N    0.091479    0.178711    1.905661
      3
 Geometry  10/ 12 for iteration  29
-     H   -0.157876    0.632869    2.843802
-     C    0.184548   -0.328539    0.955591
-     N    0.000060    0.158166    1.996731
+     H   -0.069496    0.488253    2.878990
+     C    0.097898   -0.093488    0.819453
+     N    0.030299    0.188927    1.944683
      3
 Geometry  11/ 12 for iteration  29
-     H   -0.035352    0.347482    3.110668
-     C    0.029619   -0.280117    1.047173
-     N   -0.005462    0.058384    2.160706
+     H   -0.045146    0.222547    3.094935
+     C    0.051839   -0.064234    0.958968
+     N    0.000521    0.089381    2.111828
      3
 Geometry  12/ 12 for iteration  29
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
- EGrad.f90, L73, IOpt=          30
+ Creating Input for Geometry   2/ 12 for iteration  30
+ Computing and reading forces for Geometry   2/ 12 for iteration  30
+ Creating Input for Geometry   3/ 12 for iteration  30
+ Computing and reading forces for Geometry   3/ 12 for iteration  30
+ Creating Input for Geometry   4/ 12 for iteration  30
+ Computing and reading forces for Geometry   4/ 12 for iteration  30
+ Creating Input for Geometry   5/ 12 for iteration  30
+ Computing and reading forces for Geometry   5/ 12 for iteration  30
+ Creating Input for Geometry   6/ 12 for iteration  30
+ Computing and reading forces for Geometry   6/ 12 for iteration  30
+ Creating Input for Geometry   7/ 12 for iteration  30
+ Computing and reading forces for Geometry   7/ 12 for iteration  30
+ Creating Input for Geometry   8/ 12 for iteration  30
+ Computing and reading forces for Geometry   8/ 12 for iteration  30
+ Creating Input for Geometry   9/ 12 for iteration  30
+ Computing and reading forces for Geometry   9/ 12 for iteration  30
+ Creating Input for Geometry  10/ 12 for iteration  30
+ Computing and reading forces for Geometry  10/ 12 for iteration  30
+ Creating Input for Geometry  11/ 12 for iteration  30
+ Computing and reading forces for Geometry  11/ 12 for iteration  30
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  30
      H   -0.000000   -0.000000    0.038576
@@ -2122,69 +2426,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  30
-     H   -0.023489    0.404441    0.202238
-     C   -0.019687    0.149784    1.236730
-     N   -0.017817   -0.126023    2.356322
+     H   -0.024019    0.392985    0.189437
+     C   -0.014332    0.128120    1.220146
+     N   -0.005707   -0.156770    2.336485
      3
 Geometry   3/ 12 for iteration  30
-     H   -0.107161    0.749606    0.444473
-     C   -0.096740    0.252578    1.386187
-     N   -0.085366   -0.285378    2.405355
+     H   -0.010860    0.739288    0.473075
+     C    0.021967    0.241429    1.362961
+     N    0.032510   -0.198363    2.420167
      3
 Geometry   4/ 12 for iteration  30
-     H   -0.117394    0.996175    0.783827
-     C   -0.126161    0.285634    1.565609
-     N   -0.130765   -0.475270    2.431621
+     H   -0.038136    1.090931    1.044260
+     C   -0.036583    0.121366    1.320811
+     N   -0.033403   -0.265294    2.376840
      3
 Geometry   5/ 12 for iteration  30
-     H   -0.050507    1.149117    1.163870
-     C   -0.054535    0.211326    1.517504
-     N   -0.054246   -0.660049    2.275757
+     H   -0.051338    1.048729    1.391681
+     C   -0.031535   -0.055002    1.186342
+     N   -0.020867   -0.169579    2.312981
      3
 Geometry   6/ 12 for iteration  30
-     H   -0.075436    1.117631    1.617946
-     C   -0.061604    0.083252    1.361197
-     N   -0.065647   -0.653363    2.218841
+     H   -0.075690    0.981697    1.542662
+     C    0.000672   -0.140360    1.082096
+     N    0.026556    0.015964    2.190060
      3
 Geometry   7/ 12 for iteration  30
-     H   -0.100158    0.980812    1.785739
-     C   -0.070189   -0.027855    1.112782
-     N    0.046394   -0.307642    2.162299
+     H   -0.082125    1.071310    1.596100
+     C    0.078470   -0.151265    0.939743
+     N    0.096251    0.138479    2.032416
      3
 Geometry   8/ 12 for iteration  30
-     H   -0.123125    0.890055    2.158180
-     C    0.050870   -0.092462    1.012778
-     N    0.098435   -0.088072    2.135019
+     H   -0.103134    0.925026    2.235002
+     C    0.085260   -0.140371    0.943939
+     N    0.087484    0.014324    2.064967
      3
 Geometry   9/ 12 for iteration  30
-     H   -0.124196    0.839116    2.544290
-     C    0.043472   -0.411158    1.052517
-     N    0.049177   -0.038734    2.128828
+     H   -0.139555    0.920871    2.453751
+     C    0.147720   -0.219388    0.821634
+     N    0.091663    0.164365    1.916710
      3
 Geometry  10/ 12 for iteration  30
-     H   -0.160832    0.623460    2.838781
-     C    0.186372   -0.307935    0.941472
-     N    0.001417    0.162211    1.989000
+     H   -0.070900    0.517171    2.870654
+     C    0.108627   -0.104723    0.815598
+     N    0.024786    0.191307    1.937932
      3
 Geometry  11/ 12 for iteration  30
-     H   -0.039096    0.351126    3.106164
-     C    0.033936   -0.279000    1.044425
-     N   -0.005603    0.060602    2.157150
+     H   -0.047732    0.229176    3.092750
+     C    0.056265   -0.067585    0.957653
+     N    0.000746    0.091855    2.109905
      3
 Geometry  12/ 12 for iteration  30
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
- EGrad.f90, L73, IOpt=          31
+ Creating Input for Geometry   2/ 12 for iteration  31
+ Computing and reading forces for Geometry   2/ 12 for iteration  31
+ Creating Input for Geometry   3/ 12 for iteration  31
+ Computing and reading forces for Geometry   3/ 12 for iteration  31
+ Creating Input for Geometry   4/ 12 for iteration  31
+ Computing and reading forces for Geometry   4/ 12 for iteration  31
+ Creating Input for Geometry   5/ 12 for iteration  31
+ Computing and reading forces for Geometry   5/ 12 for iteration  31
+ Creating Input for Geometry   6/ 12 for iteration  31
+ Computing and reading forces for Geometry   6/ 12 for iteration  31
+ Creating Input for Geometry   7/ 12 for iteration  31
+ Computing and reading forces for Geometry   7/ 12 for iteration  31
+ Creating Input for Geometry   8/ 12 for iteration  31
+ Computing and reading forces for Geometry   8/ 12 for iteration  31
+ Creating Input for Geometry   9/ 12 for iteration  31
+ Computing and reading forces for Geometry   9/ 12 for iteration  31
+ Creating Input for Geometry  10/ 12 for iteration  31
+ Computing and reading forces for Geometry  10/ 12 for iteration  31
+ Creating Input for Geometry  11/ 12 for iteration  31
+ Computing and reading forces for Geometry  11/ 12 for iteration  31
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  31
      H   -0.000000   -0.000000    0.038576
@@ -2192,69 +2507,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  31
-     H   -0.015995    0.412652    0.204951
-     C   -0.015638    0.149178    1.236662
-     N   -0.015036   -0.135991    2.353240
+     H   -0.015535    0.397852    0.183976
+     C   -0.005079    0.124750    1.213919
+     N    0.006093   -0.171201    2.328573
      3
 Geometry   3/ 12 for iteration  31
-     H   -0.101294    0.782202    0.440758
-     C   -0.089753    0.265548    1.372115
-     N   -0.077098   -0.290763    2.381079
+     H   -0.021111    0.749833    0.462149
+     C    0.002424    0.270510    1.381300
+     N    0.022454   -0.204389    2.428230
      3
 Geometry   4/ 12 for iteration  31
-     H   -0.125610    0.992830    0.792141
-     C   -0.141502    0.287810    1.584662
-     N   -0.149439   -0.470418    2.453062
+     H   -0.032780    1.076615    1.044014
+     C   -0.028641    0.115659    1.337542
+     N   -0.025198   -0.291716    2.386737
      3
 Geometry   5/ 12 for iteration  31
-     H   -0.046813    1.153693    1.146626
-     C   -0.049787    0.222573    1.531603
-     N   -0.049513   -0.671728    2.263477
+     H   -0.037137    1.062327    1.341558
+     C   -0.022735   -0.036153    1.176879
+     N   -0.013376   -0.164685    2.303339
      3
 Geometry   6/ 12 for iteration  31
-     H   -0.076161    1.127436    1.620341
-     C   -0.060860    0.095060    1.385751
-     N   -0.070078   -0.689848    2.211375
+     H   -0.080826    0.983607    1.522399
+     C    0.002076   -0.148186    1.090956
+     N    0.027822    0.026630    2.197555
      3
 Geometry   7/ 12 for iteration  31
-     H   -0.109851    0.981008    1.794509
-     C   -0.077060   -0.009878    1.131704
-     N    0.055629   -0.344577    2.156388
+     H   -0.083451    1.067857    1.584715
+     C    0.075762   -0.153323    0.944049
+     N    0.089372    0.139405    2.037141
      3
 Geometry   8/ 12 for iteration  31
-     H   -0.144049    0.877269    2.155481
-     C    0.059848   -0.074525    1.018364
-     N    0.106761   -0.096853    2.141049
+     H   -0.102404    0.960829    2.178730
+     C    0.106097   -0.158367    0.936514
+     N    0.077552    0.034184    2.058331
      3
 Geometry   9/ 12 for iteration  31
-     H   -0.124974    0.833612    2.546137
-     C    0.043636   -0.399464    1.051362
-     N    0.048431   -0.047184    2.127970
+     H   -0.131056    0.934947    2.427256
+     C    0.152458   -0.226543    0.827901
+     N    0.083595    0.174347    1.909250
      3
 Geometry  10/ 12 for iteration  31
-     H   -0.159111    0.624825    2.826445
-     C    0.180468   -0.298729    0.933914
-     N    0.002703    0.157937    1.986242
+     H   -0.060528    0.500322    2.885316
+     C    0.119087   -0.105549    0.818253
+     N    0.003128    0.197328    1.936476
      3
 Geometry  11/ 12 for iteration  31
-     H   -0.049860    0.353031    3.098594
-     C    0.045262   -0.271164    1.037007
-     N   -0.006521    0.064790    2.149843
+     H   -0.044111    0.226396    3.089607
+     C    0.051734   -0.064828    0.955761
+     N   -0.002173    0.090000    2.107389
      3
 Geometry  12/ 12 for iteration  31
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
- EGrad.f90, L73, IOpt=          32
+ Creating Input for Geometry   2/ 12 for iteration  32
+ Computing and reading forces for Geometry   2/ 12 for iteration  32
+ Creating Input for Geometry   3/ 12 for iteration  32
+ Computing and reading forces for Geometry   3/ 12 for iteration  32
+ Creating Input for Geometry   4/ 12 for iteration  32
+ Computing and reading forces for Geometry   4/ 12 for iteration  32
+ Creating Input for Geometry   5/ 12 for iteration  32
+ Computing and reading forces for Geometry   5/ 12 for iteration  32
+ Creating Input for Geometry   6/ 12 for iteration  32
+ Computing and reading forces for Geometry   6/ 12 for iteration  32
+ Creating Input for Geometry   7/ 12 for iteration  32
+ Computing and reading forces for Geometry   7/ 12 for iteration  32
+ Creating Input for Geometry   8/ 12 for iteration  32
+ Computing and reading forces for Geometry   8/ 12 for iteration  32
+ Creating Input for Geometry   9/ 12 for iteration  32
+ Computing and reading forces for Geometry   9/ 12 for iteration  32
+ Creating Input for Geometry  10/ 12 for iteration  32
+ Computing and reading forces for Geometry  10/ 12 for iteration  32
+ Creating Input for Geometry  11/ 12 for iteration  32
+ Computing and reading forces for Geometry  11/ 12 for iteration  32
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  32
      H   -0.000000   -0.000000    0.038576
@@ -2262,69 +2588,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  32
-     H   -0.011736    0.416811    0.202634
-     C   -0.012923    0.147496    1.233386
-     N   -0.013935   -0.144292    2.348843
+     H   -0.030889    0.399685    0.199996
+     C   -0.023395    0.138182    1.231944
+     N   -0.015006   -0.145422    2.348861
      3
 Geometry   3/ 12 for iteration  32
-     H   -0.109798    0.759862    0.455186
-     C   -0.100181    0.252032    1.390563
-     N   -0.089615   -0.294843    2.403814
+     H   -0.031841    0.756971    0.451762
+     C   -0.013791    0.296962    1.396543
+     N    0.010550   -0.201169    2.437191
      3
 Geometry   4/ 12 for iteration  32
-     H   -0.120738    1.001535    0.800267
-     C   -0.133454    0.288713    1.582656
-     N   -0.141632   -0.479277    2.441506
+     H   -0.020049    1.048055    1.012983
+     C   -0.012217    0.116218    1.353053
+     N   -0.007556   -0.320251    2.394572
      3
 Geometry   5/ 12 for iteration  32
-     H   -0.045694    1.156159    1.151814
-     C   -0.046015    0.226515    1.538102
-     N   -0.046093   -0.682190    2.251478
+     H   -0.025764    1.073962    1.272324
+     C   -0.013083   -0.006035    1.184512
+     N   -0.004258   -0.178358    2.303467
      3
 Geometry   6/ 12 for iteration  32
-     H   -0.080695    1.136768    1.616700
-     C   -0.062125    0.104379    1.401530
-     N   -0.057595   -0.710428    2.195614
+     H   -0.078791    1.001170    1.471177
+     C    0.004648   -0.135189    1.100915
+     N    0.029160    0.018302    2.208060
      3
 Geometry   7/ 12 for iteration  32
-     H   -0.120522    0.978949    1.805213
-     C   -0.084457    0.006905    1.145657
-     N    0.069104   -0.375148    2.149120
+     H   -0.083264    1.061513    1.568973
+     C    0.069671   -0.154008    0.955157
+     N    0.080713    0.134535    2.049475
      3
 Geometry   8/ 12 for iteration  32
-     H   -0.156484    0.877991    2.140054
-     C    0.063613   -0.064793    1.020352
-     N    0.117059   -0.094152    2.141351
+     H   -0.088636    0.995084    2.134975
+     C    0.109214   -0.181270    0.935314
+     N    0.055561    0.033785    2.063707
      3
 Geometry   9/ 12 for iteration  32
-     H   -0.110921    0.828345    2.530290
-     C    0.032907   -0.380913    1.052488
-     N    0.046337   -0.054348    2.131450
+     H   -0.123373    0.948207    2.399930
+     C    0.154169   -0.232185    0.835769
+     N    0.074398    0.173130    1.911916
      3
 Geometry  10/ 12 for iteration  32
-     H   -0.152031    0.632669    2.811636
-     C    0.165312   -0.292355    0.926915
-     N    0.007422    0.146031    1.987550
+     H   -0.066324    0.513444    2.852272
+     C    0.112606   -0.108721    0.821165
+     N    0.018149    0.197650    1.937723
      3
 Geometry  11/ 12 for iteration  32
-     H   -0.065214    0.352006    3.091787
-     C    0.060916   -0.258452    1.027105
-     N   -0.007669    0.069100    2.142091
+     H   -0.049348    0.232815    3.086633
+     C    0.056374   -0.069547    0.952833
+     N   -0.000845    0.093328    2.104226
      3
 Geometry  12/ 12 for iteration  32
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
- EGrad.f90, L73, IOpt=          33
+ Creating Input for Geometry   2/ 12 for iteration  33
+ Computing and reading forces for Geometry   2/ 12 for iteration  33
+ Creating Input for Geometry   3/ 12 for iteration  33
+ Computing and reading forces for Geometry   3/ 12 for iteration  33
+ Creating Input for Geometry   4/ 12 for iteration  33
+ Computing and reading forces for Geometry   4/ 12 for iteration  33
+ Creating Input for Geometry   5/ 12 for iteration  33
+ Computing and reading forces for Geometry   5/ 12 for iteration  33
+ Creating Input for Geometry   6/ 12 for iteration  33
+ Computing and reading forces for Geometry   6/ 12 for iteration  33
+ Creating Input for Geometry   7/ 12 for iteration  33
+ Computing and reading forces for Geometry   7/ 12 for iteration  33
+ Creating Input for Geometry   8/ 12 for iteration  33
+ Computing and reading forces for Geometry   8/ 12 for iteration  33
+ Creating Input for Geometry   9/ 12 for iteration  33
+ Computing and reading forces for Geometry   9/ 12 for iteration  33
+ Creating Input for Geometry  10/ 12 for iteration  33
+ Computing and reading forces for Geometry  10/ 12 for iteration  33
+ Creating Input for Geometry  11/ 12 for iteration  33
+ Computing and reading forces for Geometry  11/ 12 for iteration  33
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  33
      H   -0.000000   -0.000000    0.038576
@@ -2332,69 +2669,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  33
-     H   -0.011270    0.415969    0.200192
-     C   -0.012879    0.144465    1.229727
-     N   -0.014740   -0.149385    2.343900
+     H   -0.048021    0.383539    0.202938
+     C   -0.043762    0.141586    1.239348
+     N   -0.038822   -0.120291    2.361045
      3
 Geometry   3/ 12 for iteration  33
-     H   -0.101745    0.780491    0.436226
-     C   -0.090128    0.265852    1.368707
-     N   -0.077234   -0.291676    2.377672
+     H   -0.023918    0.752423    0.439341
+     C    0.002872    0.287297    1.392896
+     N    0.025330   -0.203703    2.436642
      3
 Geometry   4/ 12 for iteration  33
-     H   -0.107562    1.013128    0.791725
-     C   -0.111869    0.290497    1.560683
-     N   -0.114780   -0.485702    2.411524
+     H   -0.015258    1.038615    0.987985
+     C   -0.008335    0.117434    1.369907
+     N   -0.005995   -0.328316    2.410281
      3
 Geometry   5/ 12 for iteration  33
-     H   -0.039051    1.164149    1.156842
-     C   -0.032136    0.229306    1.517444
-     N   -0.031356   -0.679254    2.220719
+     H   -0.022416    1.090277    1.235886
+     C   -0.002870    0.010663    1.181706
+     N    0.008823   -0.197510    2.302146
      3
 Geometry   6/ 12 for iteration  33
-     H   -0.088914    1.140949    1.617943
-     C   -0.066579    0.111679    1.412303
-     N   -0.038585   -0.718587    2.175609
+     H   -0.070218    1.016985    1.426928
+     C    0.008266   -0.116420    1.101675
+     N    0.032876    0.007492    2.209418
      3
 Geometry   7/ 12 for iteration  33
-     H   -0.131629    0.974108    1.818432
-     C   -0.092104    0.022220    1.154455
-     N    0.084809   -0.399166    2.141519
+     H   -0.076178    1.064509    1.551090
+     C    0.067794   -0.148099    0.955947
+     N    0.073089    0.130484    2.051975
      3
 Geometry   8/ 12 for iteration  33
-     H   -0.179468    0.868745    2.129738
-     C    0.067049   -0.043888    1.022632
-     N    0.135484   -0.099518    2.144936
+     H   -0.082522    1.005026    2.158845
+     C    0.091532   -0.199573    0.936795
+     N    0.049263    0.015959    2.076786
      3
 Geometry   9/ 12 for iteration  33
-     H   -0.102514    0.821149    2.513034
-     C    0.021934   -0.354448    1.051307
-     N    0.050600   -0.065027    2.135969
+     H   -0.114711    0.967548    2.378097
+     C    0.154889   -0.240724    0.835349
+     N    0.067098    0.176107    1.907401
      3
 Geometry  10/ 12 for iteration  33
-     H   -0.157477    0.638827    2.802205
-     C    0.167349   -0.304142    0.936268
-     N    0.002109    0.137871    1.990763
+     H   -0.065658    0.507795    2.873081
+     C    0.116485   -0.114130    0.814599
+     N    0.011229    0.205058    1.929955
      3
 Geometry  11/ 12 for iteration  33
-     H   -0.082823    0.342192    3.085130
-     C    0.076243   -0.238135    1.016071
-     N   -0.009131    0.072262    2.133972
+     H   -0.051185    0.241012    3.087721
+     C    0.063493   -0.072618    0.957560
+     N    0.001504    0.096801    2.107021
      3
 Geometry  12/ 12 for iteration  33
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
- EGrad.f90, L73, IOpt=          34
+ Creating Input for Geometry   2/ 12 for iteration  34
+ Computing and reading forces for Geometry   2/ 12 for iteration  34
+ Creating Input for Geometry   3/ 12 for iteration  34
+ Computing and reading forces for Geometry   3/ 12 for iteration  34
+ Creating Input for Geometry   4/ 12 for iteration  34
+ Computing and reading forces for Geometry   4/ 12 for iteration  34
+ Creating Input for Geometry   5/ 12 for iteration  34
+ Computing and reading forces for Geometry   5/ 12 for iteration  34
+ Creating Input for Geometry   6/ 12 for iteration  34
+ Computing and reading forces for Geometry   6/ 12 for iteration  34
+ Creating Input for Geometry   7/ 12 for iteration  34
+ Computing and reading forces for Geometry   7/ 12 for iteration  34
+ Creating Input for Geometry   8/ 12 for iteration  34
+ Computing and reading forces for Geometry   8/ 12 for iteration  34
+ Creating Input for Geometry   9/ 12 for iteration  34
+ Computing and reading forces for Geometry   9/ 12 for iteration  34
+ Creating Input for Geometry  10/ 12 for iteration  34
+ Computing and reading forces for Geometry  10/ 12 for iteration  34
+ Creating Input for Geometry  11/ 12 for iteration  34
+ Computing and reading forces for Geometry  11/ 12 for iteration  34
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  34
      H   -0.000000   -0.000000    0.038576
@@ -2402,69 +2750,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  34
-     H   -0.015168    0.412153    0.198528
-     C   -0.016128    0.143239    1.228884
-     N   -0.017242   -0.147884    2.343934
+     H   -0.040582    0.395999    0.208129
+     C   -0.039309    0.152720    1.244508
+     N   -0.037203   -0.109601    2.366345
      3
 Geometry   3/ 12 for iteration  34
-     H   -0.096672    0.789898    0.421838
-     C   -0.084679    0.268758    1.349244
-     N   -0.071521   -0.295012    2.352892
+     H   -0.019074    0.764149    0.469557
+     C    0.001525    0.281991    1.392348
+     N    0.023259   -0.203230    2.437284
      3
 Geometry   4/ 12 for iteration  34
-     H   -0.097576    1.025963    0.771112
-     C   -0.093867    0.297258    1.542644
-     N   -0.092618   -0.488854    2.385783
+     H   -0.018518    1.058102    0.992262
+     C   -0.011881    0.135882    1.365871
+     N   -0.010254   -0.336380    2.395353
      3
 Geometry   5/ 12 for iteration  34
-     H   -0.033649    1.171173    1.147996
-     C   -0.022925    0.237789    1.512120
-     N   -0.019499   -0.682083    2.198048
+     H   -0.027972    1.092823    1.272962
+     C   -0.007023    0.016390    1.175695
+     N    0.008733   -0.215182    2.291225
      3
 Geometry   6/ 12 for iteration  34
-     H   -0.095738    1.150150    1.613122
-     C   -0.069405    0.120561    1.427713
-     N   -0.020810   -0.735073    2.156172
+     H   -0.071718    1.001706    1.464947
+     C    0.003039   -0.124907    1.103319
+     N    0.028406   -0.001361    2.213283
      3
 Geometry   7/ 12 for iteration  34
-     H   -0.141036    0.976310    1.825831
-     C   -0.098604    0.037132    1.170725
-     N    0.098138   -0.428636    2.130289
+     H   -0.078702    1.069679    1.557230
+     C    0.071440   -0.147944    0.945344
+     N    0.077345    0.130555    2.040382
      3
 Geometry   8/ 12 for iteration  34
-     H   -0.198132    0.856710    2.139373
-     C    0.054199   -0.030277    1.028600
-     N    0.149312   -0.134184    2.146995
+     H   -0.078545    0.988897    2.207450
+     C    0.077807   -0.201517    0.932826
+     N    0.047679    0.010580    2.070091
      3
 Geometry   9/ 12 for iteration  34
-     H   -0.099645    0.811080    2.501108
-     C    0.011772   -0.327055    1.049413
-     N    0.058323   -0.078547    2.142295
+     H   -0.108377    0.988834    2.359818
+     C    0.153496   -0.251951    0.833343
+     N    0.064915    0.184414    1.898942
      3
 Geometry  10/ 12 for iteration  34
-     H   -0.169382    0.639559    2.783755
-     C    0.171296   -0.307137    0.949056
-     N    0.000960    0.126971    2.001257
+     H   -0.065192    0.484083    2.872742
+     C    0.105602   -0.111073    0.813751
+     N    0.026283    0.222774    1.925097
      3
 Geometry  11/ 12 for iteration  34
-     H   -0.094467    0.340376    3.079592
-     C    0.094367   -0.218563    1.009736
-     N   -0.007111    0.081779    2.127244
+     H   -0.055778    0.248664    3.085619
+     C    0.068842   -0.077981    0.955849
+     N    0.001537    0.098603    2.104962
      3
 Geometry  12/ 12 for iteration  34
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
- EGrad.f90, L73, IOpt=          35
+ Creating Input for Geometry   2/ 12 for iteration  35
+ Computing and reading forces for Geometry   2/ 12 for iteration  35
+ Creating Input for Geometry   3/ 12 for iteration  35
+ Computing and reading forces for Geometry   3/ 12 for iteration  35
+ Creating Input for Geometry   4/ 12 for iteration  35
+ Computing and reading forces for Geometry   4/ 12 for iteration  35
+ Creating Input for Geometry   5/ 12 for iteration  35
+ Computing and reading forces for Geometry   5/ 12 for iteration  35
+ Creating Input for Geometry   6/ 12 for iteration  35
+ Computing and reading forces for Geometry   6/ 12 for iteration  35
+ Creating Input for Geometry   7/ 12 for iteration  35
+ Computing and reading forces for Geometry   7/ 12 for iteration  35
+ Creating Input for Geometry   8/ 12 for iteration  35
+ Computing and reading forces for Geometry   8/ 12 for iteration  35
+ Creating Input for Geometry   9/ 12 for iteration  35
+ Computing and reading forces for Geometry   9/ 12 for iteration  35
+ Creating Input for Geometry  10/ 12 for iteration  35
+ Computing and reading forces for Geometry  10/ 12 for iteration  35
+ Creating Input for Geometry  11/ 12 for iteration  35
+ Computing and reading forces for Geometry  11/ 12 for iteration  35
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  35
      H   -0.000000   -0.000000    0.038576
@@ -2472,69 +2831,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  35
-     H   -0.022094    0.409844    0.198826
-     C   -0.021952    0.144097    1.230508
-     N   -0.019802   -0.143373    2.346961
+     H   -0.031001    0.414320    0.210717
+     C   -0.035987    0.170698    1.246401
+     N   -0.041304   -0.092491    2.367110
      3
 Geometry   3/ 12 for iteration  35
-     H   -0.101845    0.786763    0.422742
-     C   -0.090094    0.265963    1.350335
-     N   -0.076552   -0.299778    2.353251
+     H   -0.025226    0.774129    0.459285
+     C    0.004921    0.293120    1.407096
+     N    0.037755   -0.231992    2.431890
      3
 Geometry   4/ 12 for iteration  35
-     H   -0.084732    1.040566    0.765228
-     C   -0.073688    0.300141    1.522220
-     N   -0.066808   -0.497448    2.353695
+     H   -0.013404    1.052353    1.008987
+     C   -0.007577    0.129273    1.372170
+     N   -0.008053   -0.358038    2.398522
      3
 Geometry   5/ 12 for iteration  35
-     H   -0.031038    1.178475    1.149052
-     C   -0.015877    0.244875    1.506328
-     N   -0.005657   -0.687427    2.173088
+     H   -0.025350    1.080930    1.305897
+     C   -0.016990    0.018607    1.174908
+     N   -0.004327   -0.223816    2.298726
      3
 Geometry   6/ 12 for iteration  35
-     H   -0.102663    1.155705    1.611475
-     C   -0.073076    0.127956    1.439052
-     N   -0.001862   -0.746178    2.137432
+     H   -0.071637    0.988136    1.502178
+     C   -0.002182   -0.130927    1.102713
+     N    0.023552   -0.010015    2.214592
      3
 Geometry   7/ 12 for iteration  35
-     H   -0.150234    0.976054    1.836020
-     C   -0.106091    0.049821    1.181695
-     N    0.114297   -0.451140    2.117933
+     H   -0.067046    1.073190    1.552567
+     C    0.070933   -0.138692    0.939282
+     N    0.065414    0.126363    2.037192
      3
 Geometry   8/ 12 for iteration  35
-     H   -0.196290    0.842463    2.144946
-     C    0.051154   -0.000034    1.024952
-     N    0.139689   -0.163816    2.138559
+     H   -0.070511    0.980194    2.225263
+     C    0.054167   -0.203725    0.933639
+     N    0.048819    0.004914    2.070224
      3
 Geometry   9/ 12 for iteration  35
-     H   -0.095108    0.799510    2.498852
-     C   -0.001035   -0.305827    1.046368
-     N    0.064913   -0.093827    2.149171
+     H   -0.102049    0.989338    2.347253
+     C    0.155183   -0.249131    0.837644
+     N    0.053565    0.174170    1.905636
      3
 Geometry  10/ 12 for iteration  35
-     H   -0.190513    0.643688    2.771454
-     C    0.188616   -0.316965    0.962415
-     N   -0.001926    0.124827    2.005361
+     H   -0.068232    0.536534    2.833570
+     C    0.118480   -0.127002    0.812764
+     N    0.019077    0.217130    1.919846
      3
 Geometry  11/ 12 for iteration  35
-     H   -0.112543    0.333630    3.080519
-     C    0.114846   -0.203915    1.001274
-     N   -0.010975    0.083172    2.124344
+     H   -0.037368    0.239531    3.077097
+     C    0.052113   -0.056750    0.942713
+     N    0.003767    0.103536    2.094350
      3
 Geometry  12/ 12 for iteration  35
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
- EGrad.f90, L73, IOpt=          36
+ Creating Input for Geometry   2/ 12 for iteration  36
+ Computing and reading forces for Geometry   2/ 12 for iteration  36
+ Creating Input for Geometry   3/ 12 for iteration  36
+ Computing and reading forces for Geometry   3/ 12 for iteration  36
+ Creating Input for Geometry   4/ 12 for iteration  36
+ Computing and reading forces for Geometry   4/ 12 for iteration  36
+ Creating Input for Geometry   5/ 12 for iteration  36
+ Computing and reading forces for Geometry   5/ 12 for iteration  36
+ Creating Input for Geometry   6/ 12 for iteration  36
+ Computing and reading forces for Geometry   6/ 12 for iteration  36
+ Creating Input for Geometry   7/ 12 for iteration  36
+ Computing and reading forces for Geometry   7/ 12 for iteration  36
+ Creating Input for Geometry   8/ 12 for iteration  36
+ Computing and reading forces for Geometry   8/ 12 for iteration  36
+ Creating Input for Geometry   9/ 12 for iteration  36
+ Computing and reading forces for Geometry   9/ 12 for iteration  36
+ Creating Input for Geometry  10/ 12 for iteration  36
+ Computing and reading forces for Geometry  10/ 12 for iteration  36
+ Creating Input for Geometry  11/ 12 for iteration  36
+ Computing and reading forces for Geometry  11/ 12 for iteration  36
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  36
      H   -0.000000   -0.000000    0.038576
@@ -2542,69 +2912,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  36
-     H   -0.028564    0.412909    0.202480
-     C   -0.026221    0.146743    1.234028
-     N   -0.024511   -0.141140    2.350461
+     H   -0.036003    0.413897    0.204041
+     C   -0.045814    0.175621    1.241604
+     N   -0.057115   -0.082498    2.364416
      3
 Geometry   3/ 12 for iteration  36
-     H   -0.107667    0.794746    0.426048
-     C   -0.091558    0.267798    1.351371
-     N   -0.084377   -0.305354    2.352705
+     H   -0.033280    0.755684    0.445935
+     C   -0.001337    0.271814    1.390951
+     N    0.028763   -0.242964    2.418069
      3
 Geometry   4/ 12 for iteration  36
-     H   -0.089458    1.051622    0.773907
-     C   -0.081977    0.302200    1.531323
-     N   -0.077809   -0.508182    2.352360
+     H   -0.012540    1.072469    1.000849
+     C   -0.016371    0.149051    1.363314
+     N   -0.023139   -0.345742    2.388523
      3
 Geometry   5/ 12 for iteration  36
-     H   -0.029673    1.186418    1.150869
-     C   -0.009873    0.251853    1.501177
-     N    0.009634   -0.693538    2.147672
+     H   -0.034770    1.062845    1.343175
+     C   -0.028329   -0.006409    1.191507
+     N   -0.017696   -0.214290    2.313357
      3
 Geometry   6/ 12 for iteration  36
-     H   -0.108797    1.160305    1.611999
-     C   -0.077024    0.134610    1.446091
-     N    0.016942   -0.755419    2.120364
+     H   -0.074818    0.973220    1.538605
+     C   -0.007101   -0.142253    1.103370
+     N    0.019074   -0.009379    2.215473
      3
 Geometry   7/ 12 for iteration  36
-     H   -0.132081    0.972410    1.835692
-     C   -0.101013    0.052836    1.173757
-     N    0.089801   -0.457082    2.147878
+     H   -0.083118    1.063082    1.575973
+     C    0.068031   -0.156241    0.946625
+     N    0.073462    0.126497    2.039971
      3
 Geometry   8/ 12 for iteration  36
-     H   -0.193453    0.842299    2.148880
-     C    0.052463    0.016257    0.999037
-     N    0.137931   -0.159785    2.120430
+     H   -0.079602    0.969238    2.252172
+     C    0.060269   -0.205673    0.928896
+     N    0.044726   -0.001694    2.064674
      3
 Geometry   9/ 12 for iteration  36
-     H   -0.083256    0.788137    2.505464
-     C   -0.014703   -0.290972    1.043496
-     N    0.064589   -0.107503    2.151701
+     H   -0.096259    1.007210    2.336548
+     C    0.139667   -0.262352    0.839461
+     N    0.059758    0.177985    1.901835
      3
 Geometry  10/ 12 for iteration  36
-     H   -0.186329    0.645275    2.775781
-     C    0.188524   -0.332358    0.967193
-     N   -0.010068    0.129027    2.000122
+     H   -0.066468    0.541209    2.848565
+     C    0.121801   -0.135392    0.818830
+     N    0.012203    0.211756    1.924874
      3
 Geometry  11/ 12 for iteration  36
-     H   -0.091905    0.347286    3.081056
-     C    0.094726   -0.225409    1.011644
-     N   -0.007302    0.082040    2.128950
+     H   -0.018947    0.220018    3.079977
+     C    0.034254   -0.034824    0.936516
+     N    0.005535    0.102237    2.093204
      3
 Geometry  12/ 12 for iteration  36
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
- EGrad.f90, L73, IOpt=          37
+ Creating Input for Geometry   2/ 12 for iteration  37
+ Computing and reading forces for Geometry   2/ 12 for iteration  37
+ Creating Input for Geometry   3/ 12 for iteration  37
+ Computing and reading forces for Geometry   3/ 12 for iteration  37
+ Creating Input for Geometry   4/ 12 for iteration  37
+ Computing and reading forces for Geometry   4/ 12 for iteration  37
+ Creating Input for Geometry   5/ 12 for iteration  37
+ Computing and reading forces for Geometry   5/ 12 for iteration  37
+ Creating Input for Geometry   6/ 12 for iteration  37
+ Computing and reading forces for Geometry   6/ 12 for iteration  37
+ Creating Input for Geometry   7/ 12 for iteration  37
+ Computing and reading forces for Geometry   7/ 12 for iteration  37
+ Creating Input for Geometry   8/ 12 for iteration  37
+ Computing and reading forces for Geometry   8/ 12 for iteration  37
+ Creating Input for Geometry   9/ 12 for iteration  37
+ Computing and reading forces for Geometry   9/ 12 for iteration  37
+ Creating Input for Geometry  10/ 12 for iteration  37
+ Computing and reading forces for Geometry  10/ 12 for iteration  37
+ Creating Input for Geometry  11/ 12 for iteration  37
+ Computing and reading forces for Geometry  11/ 12 for iteration  37
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  37
      H   -0.000000   -0.000000    0.038576
@@ -2612,69 +2993,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  37
-     H   -0.031089    0.417054    0.205466
-     C   -0.028201    0.149192    1.236147
-     N   -0.024900   -0.140729    2.351601
+     H   -0.043940    0.395826    0.195570
+     C   -0.060011    0.178269    1.237246
+     N   -0.078123   -0.057494    2.364511
      3
 Geometry   3/ 12 for iteration  37
-     H   -0.113406    0.805585    0.431983
-     C   -0.097820    0.273050    1.354085
-     N   -0.078658   -0.303473    2.351548
+     H   -0.050325    0.739637    0.418334
+     C   -0.011761    0.268048    1.369173
+     N    0.015158   -0.225026    2.408594
      3
 Geometry   4/ 12 for iteration  37
-     H   -0.094569    1.041010    0.791129
-     C   -0.090679    0.298096    1.544306
-     N   -0.089323   -0.503473    2.371169
+     H   -0.016271    1.092362    1.004231
+     C   -0.025997    0.165481    1.352479
+     N   -0.035743   -0.333922    2.376433
      3
 Geometry   5/ 12 for iteration  37
-     H   -0.023542    1.195798    1.129050
-     C   -0.000101    0.264320    1.497368
-     N    0.024550   -0.695850    2.123843
+     H   -0.040773    1.068878    1.385933
+     C   -0.036193   -0.005847    1.185997
+     N   -0.022207   -0.226466    2.300583
      3
 Geometry   6/ 12 for iteration  37
-     H   -0.107598    1.163458    1.596064
-     C   -0.075027    0.139878    1.452385
-     N    0.019267   -0.759951    2.122583
+     H   -0.078850    0.975420    1.535433
+     C   -0.011261   -0.143370    1.112058
+     N    0.014196   -0.009109    2.220810
      3
 Geometry   7/ 12 for iteration  37
-     H   -0.124304    0.963570    1.832154
-     C   -0.101803    0.058078    1.175304
-     N    0.080580   -0.466032    2.164303
+     H   -0.099417    1.054829    1.593194
+     C    0.063565   -0.186596    0.971749
+     N    0.061474    0.134556    2.056758
      3
 Geometry   8/ 12 for iteration  37
-     H   -0.202600    0.845011    2.149562
-     C    0.047556   -0.006255    1.004685
-     N    0.136811   -0.165429    2.123789
+     H   -0.090696    0.955218    2.292641
+     C    0.070121   -0.207585    0.924548
+     N    0.038960   -0.012237    2.060521
      3
 Geometry   9/ 12 for iteration  37
-     H   -0.075760    0.775049    2.513087
-     C   -0.027660   -0.284757    1.045171
-     N    0.065350   -0.118870    2.158933
+     H   -0.099324    1.019518    2.326237
+     C    0.139160   -0.268305    0.838997
+     N    0.062959    0.179945    1.896270
      3
 Geometry  10/ 12 for iteration  37
-     H   -0.187362    0.650216    2.780596
-     C    0.189730   -0.360349    0.981930
-     N   -0.016486    0.131184    2.000194
+     H   -0.066059    0.538711    2.858191
+     C    0.120111   -0.149801    0.822857
+     N    0.015272    0.221768    1.922232
      3
 Geometry  11/ 12 for iteration  37
-     H   -0.071330    0.360080    3.085089
-     C    0.073063   -0.250487    1.022261
-     N   -0.004296    0.078809    2.135539
+     H   -0.041987    0.239130    3.080495
+     C    0.054942   -0.061768    0.945993
+     N    0.002633    0.100647    2.097743
      3
 Geometry  12/ 12 for iteration  37
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
- EGrad.f90, L73, IOpt=          38
+ Creating Input for Geometry   2/ 12 for iteration  38
+ Computing and reading forces for Geometry   2/ 12 for iteration  38
+ Creating Input for Geometry   3/ 12 for iteration  38
+ Computing and reading forces for Geometry   3/ 12 for iteration  38
+ Creating Input for Geometry   4/ 12 for iteration  38
+ Computing and reading forces for Geometry   4/ 12 for iteration  38
+ Creating Input for Geometry   5/ 12 for iteration  38
+ Computing and reading forces for Geometry   5/ 12 for iteration  38
+ Creating Input for Geometry   6/ 12 for iteration  38
+ Computing and reading forces for Geometry   6/ 12 for iteration  38
+ Creating Input for Geometry   7/ 12 for iteration  38
+ Computing and reading forces for Geometry   7/ 12 for iteration  38
+ Creating Input for Geometry   8/ 12 for iteration  38
+ Computing and reading forces for Geometry   8/ 12 for iteration  38
+ Creating Input for Geometry   9/ 12 for iteration  38
+ Computing and reading forces for Geometry   9/ 12 for iteration  38
+ Creating Input for Geometry  10/ 12 for iteration  38
+ Computing and reading forces for Geometry  10/ 12 for iteration  38
+ Creating Input for Geometry  11/ 12 for iteration  38
+ Computing and reading forces for Geometry  11/ 12 for iteration  38
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  38
      H   -0.000000   -0.000000    0.038576
@@ -2682,69 +3074,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  38
-     H   -0.033579    0.425076    0.208759
-     C   -0.029419    0.152552    1.237913
-     N   -0.024869   -0.142364    2.351704
+     H   -0.056216    0.376852    0.190227
+     C   -0.076016    0.177039    1.234149
+     N   -0.098323   -0.039364    2.363869
      3
 Geometry   3/ 12 for iteration  38
-     H   -0.112298    0.821943    0.437273
-     C   -0.097062    0.276529    1.352419
-     N   -0.079842   -0.314002    2.342772
+     H   -0.036041    0.680400    0.376023
+     C   -0.012115    0.256378    1.349406
+     N    0.017281   -0.204690    2.401194
      3
 Geometry   4/ 12 for iteration  38
-     H   -0.101177    1.040355    0.812679
-     C   -0.108192    0.294575    1.564725
-     N   -0.111546   -0.509633    2.390712
+     H   -0.004913    1.112246    0.975415
+     C   -0.025562    0.192493    1.349295
+     N   -0.045210   -0.337063    2.362444
      3
 Geometry   5/ 12 for iteration  38
-     H   -0.018968    1.203084    1.104088
-     C    0.008573    0.277232    1.494551
-     N    0.038085   -0.694802    2.104520
+     H   -0.045685    1.076113    1.421838
+     C   -0.046837    0.001488    1.188732
+     N   -0.030772   -0.251609    2.296777
      3
 Geometry   6/ 12 for iteration  38
-     H   -0.112481    1.178959    1.584358
-     C   -0.068062    0.147266    1.465903
-     N    0.022603   -0.781574    2.114919
+     H   -0.079367    0.972696    1.568127
+     C   -0.022259   -0.142763    1.118828
+     N    0.002655   -0.028728    2.225720
      3
 Geometry   7/ 12 for iteration  38
-     H   -0.123550    0.974974    1.835163
-     C   -0.100903    0.064418    1.185285
-     N    0.079266   -0.490068    2.155081
+     H   -0.118908    1.051151    1.611227
+     C    0.063525   -0.205988    0.992374
+     N    0.044199    0.139020    2.069896
      3
 Geometry   8/ 12 for iteration  38
-     H   -0.208303    0.847497    2.130278
-     C    0.037103   -0.027666    1.013474
-     N    0.139650   -0.163314    2.132094
+     H   -0.107688    0.946998    2.282558
+     C    0.096326   -0.207965    0.924417
+     N    0.028828   -0.009916    2.055432
      3
 Geometry   9/ 12 for iteration  38
-     H   -0.072349    0.768874    2.517849
-     C   -0.035430   -0.276966    1.040622
-     N    0.066478   -0.127610    2.159037
+     H   -0.101339    1.022034    2.324835
+     C    0.128993   -0.273073    0.844093
+     N    0.066848    0.170871    1.901449
      3
 Geometry  10/ 12 for iteration  38
-     H   -0.182758    0.663279    2.777955
-     C    0.185535   -0.391629    0.995536
-     N   -0.021343    0.131508    2.003471
+     H   -0.069338    0.573673    2.809521
+     C    0.109351   -0.156476    0.830523
+     N    0.026326    0.207711    1.927857
      3
 Geometry  11/ 12 for iteration  38
-     H   -0.072205    0.366954    3.082507
-     C    0.075523   -0.253093    1.021244
-     N   -0.002778    0.082019    2.133413
+     H   -0.043530    0.242489    3.078820
+     C    0.056478   -0.064047    0.945467
+     N    0.002574    0.101369    2.096593
      3
 Geometry  12/ 12 for iteration  38
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
- EGrad.f90, L73, IOpt=          39
+ Creating Input for Geometry   2/ 12 for iteration  39
+ Computing and reading forces for Geometry   2/ 12 for iteration  39
+ Creating Input for Geometry   3/ 12 for iteration  39
+ Computing and reading forces for Geometry   3/ 12 for iteration  39
+ Creating Input for Geometry   4/ 12 for iteration  39
+ Computing and reading forces for Geometry   4/ 12 for iteration  39
+ Creating Input for Geometry   5/ 12 for iteration  39
+ Computing and reading forces for Geometry   5/ 12 for iteration  39
+ Creating Input for Geometry   6/ 12 for iteration  39
+ Computing and reading forces for Geometry   6/ 12 for iteration  39
+ Creating Input for Geometry   7/ 12 for iteration  39
+ Computing and reading forces for Geometry   7/ 12 for iteration  39
+ Creating Input for Geometry   8/ 12 for iteration  39
+ Computing and reading forces for Geometry   8/ 12 for iteration  39
+ Creating Input for Geometry   9/ 12 for iteration  39
+ Computing and reading forces for Geometry   9/ 12 for iteration  39
+ Creating Input for Geometry  10/ 12 for iteration  39
+ Computing and reading forces for Geometry  10/ 12 for iteration  39
+ Creating Input for Geometry  11/ 12 for iteration  39
+ Computing and reading forces for Geometry  11/ 12 for iteration  39
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  39
      H   -0.000000   -0.000000    0.038576
@@ -2752,69 +3155,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  39
-     H   -0.037667    0.432580    0.209094
-     C   -0.031329    0.155695    1.237833
-     N   -0.024499   -0.143930    2.351130
+     H   -0.065965    0.349616    0.181585
+     C   -0.088493    0.171348    1.228483
+     N   -0.114115   -0.021328    2.361521
      3
 Geometry   3/ 12 for iteration  39
-     H   -0.114353    0.832869    0.443774
-     C   -0.098218    0.279492    1.353829
-     N   -0.080695   -0.319391    2.338806
+     H   -0.031878    0.632749    0.330437
+     C   -0.008579    0.246972    1.320801
+     N    0.018279   -0.165578    2.394713
      3
 Geometry   4/ 12 for iteration  39
-     H   -0.117073    1.043227    0.828072
-     C   -0.126756    0.296208    1.581572
-     N   -0.135568   -0.512178    2.402743
+     H   -0.001710    1.082220    0.881049
+     C   -0.022214    0.225237    1.346022
+     N   -0.040466   -0.323606    2.352223
      3
 Geometry   5/ 12 for iteration  39
-     H   -0.012706    1.209133    1.063552
-     C    0.017865    0.292239    1.489211
-     N    0.049669   -0.685975    2.090328
+     H   -0.040388    1.073736    1.317725
+     C   -0.037185    0.024078    1.227924
+     N   -0.028834   -0.255946    2.323961
      3
 Geometry   6/ 12 for iteration  39
-     H   -0.118382    1.198716    1.552342
-     C   -0.050383    0.167114    1.479704
-     N    0.033249   -0.800157    2.087715
+     H   -0.064567    0.989148    1.563760
+     C   -0.029132   -0.112661    1.117670
+     N   -0.005629   -0.072056    2.227436
      3
 Geometry   7/ 12 for iteration  39
-     H   -0.118581    0.996326    1.813944
-     C   -0.096903    0.077308    1.211443
-     N    0.071433   -0.529267    2.151685
+     H   -0.121276    1.044289    1.615558
+     C    0.051540   -0.209471    1.018789
+     N    0.025955    0.119196    2.095156
      3
 Geometry   8/ 12 for iteration  39
-     H   -0.202749    0.857473    2.103381
-     C    0.013833   -0.022327    1.026243
-     N    0.141622   -0.197004    2.127832
+     H   -0.112436    0.964760    2.199460
+     C    0.070043   -0.228481    0.942612
+     N    0.030469    0.017111    2.064191
      3
 Geometry   9/ 12 for iteration  39
-     H   -0.069766    0.767610    2.493542
-     C   -0.044251   -0.245463    1.030712
-     N    0.072816   -0.138183    2.153860
+     H   -0.106109    1.021078    2.325751
+     C    0.106805   -0.293442    0.867406
+     N    0.070273    0.152909    1.925652
      3
 Geometry  10/ 12 for iteration  39
-     H   -0.162367    0.679604    2.769071
-     C    0.150770   -0.418085    1.016287
-     N   -0.013318    0.108763    2.019935
+     H   -0.072182    0.580938    2.838206
+     C    0.106956   -0.192120    0.844296
+     N    0.019007    0.199963    1.935497
      3
 Geometry  11/ 12 for iteration  39
-     H   -0.072785    0.372152    3.079462
-     C    0.077863   -0.255019    1.020085
-     N   -0.003353    0.083535    2.131372
+     H   -0.024293    0.224188    3.078496
+     C    0.037270   -0.041857    0.938967
+     N    0.004304    0.100764    2.093898
      3
 Geometry  12/ 12 for iteration  39
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
- EGrad.f90, L73, IOpt=          40
+ Creating Input for Geometry   2/ 12 for iteration  40
+ Computing and reading forces for Geometry   2/ 12 for iteration  40
+ Creating Input for Geometry   3/ 12 for iteration  40
+ Computing and reading forces for Geometry   3/ 12 for iteration  40
+ Creating Input for Geometry   4/ 12 for iteration  40
+ Computing and reading forces for Geometry   4/ 12 for iteration  40
+ Creating Input for Geometry   5/ 12 for iteration  40
+ Computing and reading forces for Geometry   5/ 12 for iteration  40
+ Creating Input for Geometry   6/ 12 for iteration  40
+ Computing and reading forces for Geometry   6/ 12 for iteration  40
+ Creating Input for Geometry   7/ 12 for iteration  40
+ Computing and reading forces for Geometry   7/ 12 for iteration  40
+ Creating Input for Geometry   8/ 12 for iteration  40
+ Computing and reading forces for Geometry   8/ 12 for iteration  40
+ Creating Input for Geometry   9/ 12 for iteration  40
+ Computing and reading forces for Geometry   9/ 12 for iteration  40
+ Creating Input for Geometry  10/ 12 for iteration  40
+ Computing and reading forces for Geometry  10/ 12 for iteration  40
+ Creating Input for Geometry  11/ 12 for iteration  40
+ Computing and reading forces for Geometry  11/ 12 for iteration  40
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  40
      H   -0.000000   -0.000000    0.038576
@@ -2822,69 +3236,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  40
-     H   -0.042209    0.434689    0.208098
-     C   -0.033791    0.157029    1.236460
-     N   -0.024585   -0.143637    2.349365
+     H   -0.071871    0.315628    0.169091
+     C   -0.096452    0.161605    1.219141
+     N   -0.124615   -0.004480    2.355673
      3
 Geometry   3/ 12 for iteration  40
-     H   -0.112645    0.837698    0.443053
-     C   -0.097157    0.279861    1.350309
-     N   -0.080265   -0.323964    2.332160
+     H   -0.029074    0.579760    0.295462
+     C   -0.013722    0.241540    1.303912
+     N    0.002906   -0.119314    2.397038
      3
 Geometry   4/ 12 for iteration  40
-     H   -0.128987    1.036281    0.827984
-     C   -0.143716    0.295169    1.588002
-     N   -0.156788   -0.507088    2.413503
+     H    0.000651    1.021228    0.761484
+     C   -0.017881    0.252607    1.339372
+     N   -0.033495   -0.295592    2.347125
      3
 Geometry   5/ 12 for iteration  40
-     H   -0.017581    1.199909    1.008590
-     C    0.011209    0.305694    1.492391
-     N    0.040896   -0.661030    2.107804
+     H   -0.037452    1.073257    1.221153
+     C   -0.033332    0.055474    1.268627
+     N   -0.030823   -0.277579    2.349213
      3
 Geometry   6/ 12 for iteration  40
-     H   -0.105856    1.212628    1.467646
-     C   -0.030689    0.200661    1.494702
-     N    0.045837   -0.795632    2.055170
+     H   -0.055576    1.002773    1.521824
+     C   -0.034024   -0.081372    1.144803
+     N   -0.014437   -0.123555    2.251131
      3
 Geometry   7/ 12 for iteration  40
-     H   -0.114791    1.037425    1.778842
-     C   -0.090205    0.102916    1.257179
-     N    0.066490   -0.597897    2.134270
+     H   -0.114995    1.024125    1.616191
+     C    0.025279   -0.199297    1.063590
+     N    0.003881    0.068845    2.144051
      3
 Geometry   8/ 12 for iteration  40
-     H   -0.192456    0.889727    2.046964
-     C   -0.005081   -0.024033    1.062067
-     N    0.128624   -0.250680    2.135467
+     H   -0.110605    0.985319    2.134060
+     C    0.035579   -0.250064    0.964153
+     N    0.032206    0.037061    2.079826
      3
 Geometry   9/ 12 for iteration  40
-     H   -0.085450    0.769644    2.449596
-     C   -0.045756   -0.203407    1.021956
-     N    0.085176   -0.156925    2.153255
+     H   -0.108312    1.035520    2.328408
+     C    0.090560   -0.328021    0.876746
+     N    0.081325    0.169020    1.922013
      3
 Geometry  10/ 12 for iteration  40
-     H   -0.141177    0.680566    2.763741
-     C    0.124098   -0.407601    1.025372
-     N   -0.020815    0.058796    2.049575
+     H   -0.063415    0.551769    2.862021
+     C    0.102260   -0.191142    0.860900
+     N    0.013525    0.194492    1.953128
      3
 Geometry  11/ 12 for iteration  40
-     H   -0.073118    0.373978    3.077891
-     C    0.078053   -0.256277    1.020209
-     N   -0.003518    0.083410    2.130846
+     H   -0.015646    0.207814    3.084365
+     C    0.026907   -0.031528    0.939789
+     N    0.004071    0.096935    2.097218
      3
 Geometry  12/ 12 for iteration  40
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
- EGrad.f90, L73, IOpt=          41
+ Creating Input for Geometry   2/ 12 for iteration  41
+ Computing and reading forces for Geometry   2/ 12 for iteration  41
+ Creating Input for Geometry   3/ 12 for iteration  41
+ Computing and reading forces for Geometry   3/ 12 for iteration  41
+ Creating Input for Geometry   4/ 12 for iteration  41
+ Computing and reading forces for Geometry   4/ 12 for iteration  41
+ Creating Input for Geometry   5/ 12 for iteration  41
+ Computing and reading forces for Geometry   5/ 12 for iteration  41
+ Creating Input for Geometry   6/ 12 for iteration  41
+ Computing and reading forces for Geometry   6/ 12 for iteration  41
+ Creating Input for Geometry   7/ 12 for iteration  41
+ Computing and reading forces for Geometry   7/ 12 for iteration  41
+ Creating Input for Geometry   8/ 12 for iteration  41
+ Computing and reading forces for Geometry   8/ 12 for iteration  41
+ Creating Input for Geometry   9/ 12 for iteration  41
+ Computing and reading forces for Geometry   9/ 12 for iteration  41
+ Creating Input for Geometry  10/ 12 for iteration  41
+ Computing and reading forces for Geometry  10/ 12 for iteration  41
+ Creating Input for Geometry  11/ 12 for iteration  41
+ Computing and reading forces for Geometry  11/ 12 for iteration  41
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  41
      H   -0.000000   -0.000000    0.038576
@@ -2892,69 +3317,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  41
-     H   -0.044755    0.433783    0.203206
-     C   -0.034124    0.159077    1.232402
-     N   -0.022256   -0.139404    2.346074
+     H   -0.077034    0.290205    0.158650
+     C   -0.104359    0.155733    1.211390
+     N   -0.135841    0.011208    2.350931
      3
 Geometry   3/ 12 for iteration  41
-     H   -0.119071    0.823958    0.441230
-     C   -0.102159    0.274243    1.351272
-     N   -0.083738   -0.321172    2.335960
+     H   -0.020521    0.548890    0.275874
+     C   -0.014804    0.242862    1.299644
+     N   -0.008403   -0.085799    2.410111
      3
 Geometry   4/ 12 for iteration  41
-     H   -0.140924    1.024436    0.815409
-     C   -0.153172    0.290960    1.581001
-     N   -0.165879   -0.502990    2.411820
+     H    0.006994    0.999986    0.691930
+     C   -0.016938    0.277116    1.334041
+     N   -0.036844   -0.280349    2.338619
      3
 Geometry   5/ 12 for iteration  41
-     H   -0.025622    1.190037    0.959771
-     C    0.000715    0.317621    1.494452
-     N    0.028887   -0.635030    2.127668
+     H   -0.042762    1.077742    1.200654
+     C   -0.032661    0.059174    1.291204
+     N   -0.029263   -0.304443    2.369112
      3
 Geometry   6/ 12 for iteration  41
-     H   -0.096727    1.229213    1.400684
-     C   -0.010666    0.223593    1.506615
-     N    0.044510   -0.795277    2.037823
+     H   -0.045895    1.009087    1.519786
+     C   -0.038870   -0.057977    1.146004
+     N   -0.020620   -0.155042    2.252424
      3
 Geometry   7/ 12 for iteration  41
-     H   -0.113333    1.060654    1.765128
-     C   -0.088026    0.117494    1.278643
-     N    0.066046   -0.635444    2.122753
+     H   -0.095012    1.030350    1.596626
+     C    0.016382   -0.182863    1.067494
+     N    0.001004    0.043439    2.149396
      3
 Geometry   8/ 12 for iteration  41
-     H   -0.184705    0.897486    2.026295
-     C   -0.011701   -0.008184    1.080302
-     N    0.117321   -0.288995    2.128594
+     H   -0.098446    1.010796    2.135928
+     C    0.004103   -0.270526    0.957975
+     N    0.046118    0.050469    2.076627
      3
 Geometry   9/ 12 for iteration  41
-     H   -0.067191    0.770366    2.435962
-     C   -0.062238   -0.181104    1.018155
-     N    0.080635   -0.176546    2.152078
+     H   -0.105001    1.049248    2.324739
+     C    0.084651   -0.340268    0.865211
+     N    0.091449    0.193531    1.898828
      3
 Geometry  10/ 12 for iteration  41
-     H   -0.135096    0.685358    2.759550
-     C    0.122241   -0.398445    1.018515
-     N   -0.029147    0.046899    2.047294
+     H   -0.058067    0.540305    2.887041
+     C    0.103701   -0.222391    0.877746
+     N    0.001181    0.199671    1.961746
      3
 Geometry  11/ 12 for iteration  41
-     H   -0.071662    0.368551    3.081031
-     C    0.076702   -0.252470    1.021666
-     N   -0.003100    0.082658    2.132896
+     H   -0.029651    0.219396    3.085132
+     C    0.040459   -0.046966    0.944961
+     N    0.002560    0.096758    2.099774
      3
 Geometry  12/ 12 for iteration  41
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
- EGrad.f90, L73, IOpt=          42
+ Creating Input for Geometry   2/ 12 for iteration  42
+ Computing and reading forces for Geometry   2/ 12 for iteration  42
+ Creating Input for Geometry   3/ 12 for iteration  42
+ Computing and reading forces for Geometry   3/ 12 for iteration  42
+ Creating Input for Geometry   4/ 12 for iteration  42
+ Computing and reading forces for Geometry   4/ 12 for iteration  42
+ Creating Input for Geometry   5/ 12 for iteration  42
+ Computing and reading forces for Geometry   5/ 12 for iteration  42
+ Creating Input for Geometry   6/ 12 for iteration  42
+ Computing and reading forces for Geometry   6/ 12 for iteration  42
+ Creating Input for Geometry   7/ 12 for iteration  42
+ Computing and reading forces for Geometry   7/ 12 for iteration  42
+ Creating Input for Geometry   8/ 12 for iteration  42
+ Computing and reading forces for Geometry   8/ 12 for iteration  42
+ Creating Input for Geometry   9/ 12 for iteration  42
+ Computing and reading forces for Geometry   9/ 12 for iteration  42
+ Creating Input for Geometry  10/ 12 for iteration  42
+ Computing and reading forces for Geometry  10/ 12 for iteration  42
+ Creating Input for Geometry  11/ 12 for iteration  42
+ Computing and reading forces for Geometry  11/ 12 for iteration  42
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  42
      H   -0.000000   -0.000000    0.038576
@@ -2962,69 +3398,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  42
-     H   -0.048783    0.430050    0.199075
-     C   -0.035358    0.159221    1.229084
-     N   -0.020822   -0.133616    2.343779
+     H   -0.051175    0.315306    0.168445
+     C   -0.070400    0.157994    1.216720
+     N   -0.092610   -0.009776    2.352688
      3
 Geometry   3/ 12 for iteration  42
-     H   -0.116716    0.820402    0.434521
-     C   -0.100728    0.273696    1.348547
-     N   -0.083445   -0.317806    2.337854
+     H   -0.008432    0.687334    0.401114
+     C   -0.015083    0.261712    1.309256
+     N   -0.020339   -0.135307    2.381611
      3
 Geometry   4/ 12 for iteration  42
-     H   -0.147655    1.008196    0.804335
-     C   -0.165978    0.286906    1.580945
-     N   -0.182272   -0.494051    2.422624
+     H   -0.006261    1.037413    0.815863
+     C   -0.025559    0.244789    1.322334
+     N   -0.040441   -0.292846    2.335491
      3
 Geometry   5/ 12 for iteration  42
-     H   -0.027590    1.185692    0.916720
-     C   -0.003669    0.329465    1.488035
-     N    0.022832   -0.610749    2.137658
+     H   -0.043762    1.076078    1.282920
+     C   -0.041657    0.050401    1.264658
+     N   -0.032812   -0.301403    2.338734
      3
 Geometry   6/ 12 for iteration  42
-     H   -0.091888    1.242760    1.355155
-     C   -0.000515    0.238251    1.515873
-     N    0.049202   -0.793277    2.023273
+     H   -0.033681    1.017309    1.543450
+     C   -0.040959   -0.049785    1.115434
+     N   -0.021607   -0.140847    2.220361
      3
 Geometry   7/ 12 for iteration  42
-     H   -0.115399    1.078421    1.754807
-     C   -0.087386    0.129122    1.300014
-     N    0.069446   -0.668118    2.114103
+     H   -0.088244    1.040009    1.595460
+     C    0.022529   -0.186403    1.048624
+     N    0.004971    0.060569    2.128324
      3
 Geometry   8/ 12 for iteration  42
-     H   -0.179549    0.899570    2.016205
-     C   -0.011054    0.015679    1.095252
-     N    0.102808   -0.329171    2.121854
+     H   -0.086486    1.010618    2.190863
+     C    0.009885   -0.267965    0.926858
+     N    0.055928    0.057738    2.038008
      3
 Geometry   9/ 12 for iteration  42
-     H   -0.049353    0.769997    2.416557
-     C   -0.079168   -0.155296    1.014923
-     N    0.077359   -0.194484    2.148958
+     H   -0.104224    1.063202    2.316828
+     C    0.096791   -0.338409    0.845367
+     N    0.095400    0.217139    1.869024
      3
 Geometry  10/ 12 for iteration  42
-     H   -0.128617    0.668989    2.744959
-     C    0.101509   -0.356854    1.009822
-     N   -0.021188    0.019333    2.058702
+     H   -0.059215    0.544792    2.867681
+     C    0.094964   -0.216153    0.878200
+     N    0.007123    0.191928    1.964817
      3
 Geometry  11/ 12 for iteration  42
-     H   -0.070864    0.366521    3.082338
-     C    0.075713   -0.251071    1.020555
-     N   -0.003832    0.081312    2.133526
+     H   -0.031079    0.216648    3.086450
+     C    0.041153   -0.043554    0.945197
+     N    0.003846    0.096819    2.100780
      3
 Geometry  12/ 12 for iteration  42
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
- EGrad.f90, L73, IOpt=          43
+ Creating Input for Geometry   2/ 12 for iteration  43
+ Computing and reading forces for Geometry   2/ 12 for iteration  43
+ Creating Input for Geometry   3/ 12 for iteration  43
+ Computing and reading forces for Geometry   3/ 12 for iteration  43
+ Creating Input for Geometry   4/ 12 for iteration  43
+ Computing and reading forces for Geometry   4/ 12 for iteration  43
+ Creating Input for Geometry   5/ 12 for iteration  43
+ Computing and reading forces for Geometry   5/ 12 for iteration  43
+ Creating Input for Geometry   6/ 12 for iteration  43
+ Computing and reading forces for Geometry   6/ 12 for iteration  43
+ Creating Input for Geometry   7/ 12 for iteration  43
+ Computing and reading forces for Geometry   7/ 12 for iteration  43
+ Creating Input for Geometry   8/ 12 for iteration  43
+ Computing and reading forces for Geometry   8/ 12 for iteration  43
+ Creating Input for Geometry   9/ 12 for iteration  43
+ Computing and reading forces for Geometry   9/ 12 for iteration  43
+ Creating Input for Geometry  10/ 12 for iteration  43
+ Computing and reading forces for Geometry  10/ 12 for iteration  43
+ Creating Input for Geometry  11/ 12 for iteration  43
+ Computing and reading forces for Geometry  11/ 12 for iteration  43
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  43
      H   -0.000000   -0.000000    0.038576
@@ -3032,69 +3479,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  43
-     H   -0.076588    0.423358    0.203462
-     C   -0.055884    0.162705    1.234991
-     N   -0.033633   -0.118211    2.351360
+     H   -0.040730    0.342540    0.158874
+     C   -0.076713    0.178217    1.205848
+     N   -0.118272    0.005962    2.341962
      3
 Geometry   3/ 12 for iteration  43
-     H   -0.114373    0.818228    0.432594
-     C   -0.099118    0.273639    1.348143
-     N   -0.082574   -0.315493    2.339153
+     H    0.012377    0.678264    0.369098
+     C   -0.004901    0.279842    1.320295
+     N   -0.023033   -0.153425    2.384405
      3
 Geometry   4/ 12 for iteration  43
-     H   -0.154100    0.992979    0.798166
-     C   -0.179682    0.282537    1.584825
-     N   -0.198226   -0.486187    2.437342
+     H   -0.009707    1.066016    0.890876
+     C   -0.028762    0.232592    1.303801
+     N   -0.041017   -0.297476    2.317365
      3
 Geometry   5/ 12 for iteration  43
-     H   -0.027533    1.180158    0.876040
-     C   -0.008020    0.338986    1.479017
-     N    0.014240   -0.585201    2.150536
+     H   -0.035595    1.078433    1.346337
+     C   -0.036980    0.045333    1.210279
+     N   -0.020294   -0.273369    2.283439
      3
 Geometry   6/ 12 for iteration  43
-     H   -0.086627    1.252830    1.301685
-     C    0.001694    0.250539    1.525494
-     N    0.059863   -0.786020    2.017117
+     H   -0.029942    1.028754    1.562784
+     C   -0.033496   -0.056056    1.077512
+     N   -0.015307   -0.099790    2.177965
      3
 Geometry   7/ 12 for iteration  43
-     H   -0.116669    1.102231    1.723325
-     C   -0.083861    0.140334    1.331618
-     N    0.068601   -0.701451    2.109906
+     H   -0.075114    1.039325    1.648893
+     C    0.020213   -0.199858    1.015684
+     N    0.037542    0.073553    2.096406
      3
 Geometry   8/ 12 for iteration  43
-     H   -0.166434    0.912112    1.993298
-     C   -0.015153    0.046789    1.110528
-     N    0.088637   -0.375354    2.112430
+     H   -0.078392    1.018918    2.243462
+     C    0.015856   -0.277789    0.894872
+     N    0.068910    0.085323    1.988668
      3
 Geometry   9/ 12 for iteration  43
-     H   -0.034946    0.776151    2.377141
-     C   -0.091671   -0.118484    1.015078
-     N    0.073947   -0.216637    2.140697
+     H   -0.101208    1.043668    2.341095
+     C    0.113936   -0.325394    0.827894
+     N    0.089909    0.236675    1.846792
      3
 Geometry  10/ 12 for iteration  43
-     H   -0.114921    0.659252    2.720493
-     C    0.075193   -0.314425    1.002957
-     N   -0.014053   -0.012334    2.069917
+     H   -0.058851    0.548148    2.857969
+     C    0.089724   -0.216302    0.878610
+     N    0.007664    0.187843    1.964846
      3
 Geometry  11/ 12 for iteration  43
-     H   -0.070555    0.366151    3.079247
-     C    0.073687   -0.249514    1.019608
-     N   -0.004310    0.079013    2.133107
+     H   -0.031277    0.216527    3.088159
+     C    0.042096   -0.046129    0.947397
+     N    0.002482    0.095568    2.102533
      3
 Geometry  12/ 12 for iteration  43
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
- EGrad.f90, L73, IOpt=          44
+ Creating Input for Geometry   2/ 12 for iteration  44
+ Computing and reading forces for Geometry   2/ 12 for iteration  44
+ Creating Input for Geometry   3/ 12 for iteration  44
+ Computing and reading forces for Geometry   3/ 12 for iteration  44
+ Creating Input for Geometry   4/ 12 for iteration  44
+ Computing and reading forces for Geometry   4/ 12 for iteration  44
+ Creating Input for Geometry   5/ 12 for iteration  44
+ Computing and reading forces for Geometry   5/ 12 for iteration  44
+ Creating Input for Geometry   6/ 12 for iteration  44
+ Computing and reading forces for Geometry   6/ 12 for iteration  44
+ Creating Input for Geometry   7/ 12 for iteration  44
+ Computing and reading forces for Geometry   7/ 12 for iteration  44
+ Creating Input for Geometry   8/ 12 for iteration  44
+ Computing and reading forces for Geometry   8/ 12 for iteration  44
+ Creating Input for Geometry   9/ 12 for iteration  44
+ Computing and reading forces for Geometry   9/ 12 for iteration  44
+ Creating Input for Geometry  10/ 12 for iteration  44
+ Computing and reading forces for Geometry  10/ 12 for iteration  44
+ Creating Input for Geometry  11/ 12 for iteration  44
+ Computing and reading forces for Geometry  11/ 12 for iteration  44
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  44
      H   -0.000000   -0.000000    0.038576
@@ -3102,69 +3560,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  44
-     H   -0.099998    0.411649    0.206797
-     C   -0.076355    0.166119    1.242312
-     N   -0.049622   -0.098423    2.363153
+     H   -0.050487    0.331727    0.154784
+     C   -0.090330    0.177962    1.202765
+     N   -0.136642    0.018599    2.340609
      3
 Geometry   3/ 12 for iteration  44
-     H   -0.112374    0.809008    0.431505
-     C   -0.098596    0.271716    1.351331
-     N   -0.083714   -0.309552    2.347081
+     H    0.023893    0.608956    0.319832
+     C   -0.010529    0.270406    1.315869
+     N   -0.042115   -0.130826    2.390198
      3
 Geometry   4/ 12 for iteration  44
-     H   -0.147304    0.980245    0.790821
-     C   -0.194472    0.278562    1.587451
-     N   -0.218916   -0.480083    2.451270
+     H    0.000779    1.052829    0.823534
+     C   -0.027839    0.263442    1.300644
+     N   -0.048247   -0.286881    2.306911
      3
 Geometry   5/ 12 for iteration  44
-     H   -0.026173    1.171938    0.837187
-     C   -0.014426    0.345307    1.470307
-     N    0.000504   -0.558911    2.169502
+     H   -0.042490    1.085052    1.364599
+     C   -0.047571    0.042404    1.229718
+     N   -0.032603   -0.302699    2.301397
      3
 Geometry   6/ 12 for iteration  44
-     H   -0.079077    1.257944    1.235910
-     C    0.004623    0.268902    1.535000
-     N    0.066276   -0.773603    2.014032
+     H   -0.033947    1.000603    1.584125
+     C   -0.037530   -0.060152    1.081695
+     N   -0.017090   -0.112999    2.207385
      3
 Geometry   7/ 12 for iteration  44
-     H   -0.114356    1.130023    1.672275
-     C   -0.075905    0.151550    1.367482
-     N    0.062931   -0.729175    2.107168
+     H   -0.056071    1.039233    1.631706
+     C    0.013450   -0.191081    1.001960
+     N    0.059287    0.068158    2.085889
      3
 Geometry   8/ 12 for iteration  44
-     H   -0.171072    0.927051    1.935553
-     C   -0.031508    0.061990    1.144595
-     N    0.102248   -0.414036    2.138354
+     H   -0.070149    1.014064    2.284654
+     C   -0.000008   -0.287685    0.877570
+     N    0.076203    0.097765    1.973203
      3
 Geometry   9/ 12 for iteration  44
-     H   -0.027699    0.789290    2.325436
-     C   -0.101331   -0.077514    1.008599
-     N    0.079591   -0.230024    2.128340
+     H   -0.098799    1.040349    2.352128
+     C    0.129344   -0.320151    0.809743
+     N    0.087711    0.259277    1.819354
      3
 Geometry  10/ 12 for iteration  44
-     H   -0.100807    0.652559    2.693017
-     C    0.046736   -0.269916    0.993703
-     N   -0.004409   -0.045621    2.081632
+     H   -0.060949    0.580782    2.858946
+     C    0.088615   -0.240124    0.878191
+     N    0.006162    0.184445    1.957063
      3
 Geometry  11/ 12 for iteration  44
-     H   -0.069609    0.365960    3.080396
-     C    0.072493   -0.249414    1.016868
-     N   -0.003268    0.082133    2.130523
+     H   -0.031413    0.226766    3.082485
+     C    0.043049   -0.052036    0.945431
+     N    0.002209    0.097765    2.098606
      3
 Geometry  12/ 12 for iteration  44
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
- EGrad.f90, L73, IOpt=          45
+ Creating Input for Geometry   2/ 12 for iteration  45
+ Computing and reading forces for Geometry   2/ 12 for iteration  45
+ Creating Input for Geometry   3/ 12 for iteration  45
+ Computing and reading forces for Geometry   3/ 12 for iteration  45
+ Creating Input for Geometry   4/ 12 for iteration  45
+ Computing and reading forces for Geometry   4/ 12 for iteration  45
+ Creating Input for Geometry   5/ 12 for iteration  45
+ Computing and reading forces for Geometry   5/ 12 for iteration  45
+ Creating Input for Geometry   6/ 12 for iteration  45
+ Computing and reading forces for Geometry   6/ 12 for iteration  45
+ Creating Input for Geometry   7/ 12 for iteration  45
+ Computing and reading forces for Geometry   7/ 12 for iteration  45
+ Creating Input for Geometry   8/ 12 for iteration  45
+ Computing and reading forces for Geometry   8/ 12 for iteration  45
+ Creating Input for Geometry   9/ 12 for iteration  45
+ Computing and reading forces for Geometry   9/ 12 for iteration  45
+ Creating Input for Geometry  10/ 12 for iteration  45
+ Computing and reading forces for Geometry  10/ 12 for iteration  45
+ Creating Input for Geometry  11/ 12 for iteration  45
+ Computing and reading forces for Geometry  11/ 12 for iteration  45
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  45
      H   -0.000000   -0.000000    0.038576
@@ -3172,69 +3641,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  45
-     H   -0.070147    0.404831    0.201529
-     C   -0.056253    0.159300    1.235799
-     N   -0.039766   -0.106563    2.355286
+     H   -0.021152    0.369137    0.153582
+     C   -0.066809    0.191920    1.197579
+     N   -0.119415    0.002708    2.329869
      3
 Geometry   3/ 12 for iteration  45
-     H   -0.118269    0.795562    0.414807
-     C   -0.096578    0.271597    1.340461
-     N   -0.072895   -0.295935    2.341969
+     H    0.012179    0.708099    0.415673
+     C   -0.026343    0.283324    1.322255
+     N   -0.067128   -0.158153    2.383674
      3
 Geometry   4/ 12 for iteration  45
-     H   -0.134919    0.977028    0.758455
-     C   -0.171901    0.279991    1.558802
-     N   -0.188980   -0.473372    2.426808
+     H   -0.003966    1.081845    0.935863
+     C   -0.036961    0.234887    1.285772
+     N   -0.054827   -0.301655    2.295140
      3
 Geometry   5/ 12 for iteration  45
-     H   -0.021649    1.181735    0.838327
-     C   -0.008923    0.346601    1.464253
-     N    0.004564   -0.557809    2.161275
+     H   -0.040180    1.079970    1.416052
+     C   -0.053452    0.030728    1.209411
+     N   -0.040724   -0.287798    2.286841
      3
 Geometry   6/ 12 for iteration  45
-     H   -0.079780    1.262237    1.227217
-     C   -0.002304    0.266025    1.535349
-     N    0.079892   -0.771112    2.015694
+     H   -0.024440    1.011793    1.599357
+     C   -0.035305   -0.049004    1.050261
+     N   -0.017757   -0.095106    2.173826
      3
 Geometry   7/ 12 for iteration  45
-     H   -0.113515    1.137240    1.655630
-     C   -0.069182    0.148714    1.377491
-     N    0.057063   -0.727809    2.113086
+     H   -0.041375    1.054596    1.624429
+     C    0.020533   -0.206770    0.982746
+     N    0.058602    0.095284    2.064284
      3
 Geometry   8/ 12 for iteration  45
-     H   -0.151197    0.941046    1.922560
-     C   -0.059961    0.044859    1.152662
-     N    0.105805   -0.432343    2.163259
+     H   -0.063460    1.014233    2.326090
+     C   -0.008569   -0.296475    0.861409
+     N    0.084943    0.113631    1.944582
      3
 Geometry   9/ 12 for iteration  45
-     H   -0.067648    0.796271    2.311197
-     C   -0.079173   -0.089756    1.014539
-     N    0.089602   -0.227147    2.134006
+     H   -0.095965    1.036671    2.368696
+     C    0.132554   -0.316921    0.790868
+     N    0.095268    0.281297    1.792672
      3
 Geometry  10/ 12 for iteration  45
-     H   -0.103107    0.638584    2.705220
-     C    0.031673   -0.261505    0.983119
-     N    0.004620   -0.061962    2.100741
+     H   -0.063137    0.595767    2.853688
+     C    0.088421   -0.259680    0.879800
+     N    0.011062    0.194152    1.950793
      3
 Geometry  11/ 12 for iteration  45
-     H   -0.067884    0.353297    3.087577
-     C    0.070649   -0.242580    1.020480
-     N   -0.004116    0.078989    2.135866
+     H   -0.035713    0.236836    3.075605
+     C    0.045966   -0.059455    0.944065
+     N    0.002081    0.100082    2.094449
      3
 Geometry  12/ 12 for iteration  45
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
- EGrad.f90, L73, IOpt=          46
+ Creating Input for Geometry   2/ 12 for iteration  46
+ Computing and reading forces for Geometry   2/ 12 for iteration  46
+ Creating Input for Geometry   3/ 12 for iteration  46
+ Computing and reading forces for Geometry   3/ 12 for iteration  46
+ Creating Input for Geometry   4/ 12 for iteration  46
+ Computing and reading forces for Geometry   4/ 12 for iteration  46
+ Creating Input for Geometry   5/ 12 for iteration  46
+ Computing and reading forces for Geometry   5/ 12 for iteration  46
+ Creating Input for Geometry   6/ 12 for iteration  46
+ Computing and reading forces for Geometry   6/ 12 for iteration  46
+ Creating Input for Geometry   7/ 12 for iteration  46
+ Computing and reading forces for Geometry   7/ 12 for iteration  46
+ Creating Input for Geometry   8/ 12 for iteration  46
+ Computing and reading forces for Geometry   8/ 12 for iteration  46
+ Creating Input for Geometry   9/ 12 for iteration  46
+ Computing and reading forces for Geometry   9/ 12 for iteration  46
+ Creating Input for Geometry  10/ 12 for iteration  46
+ Computing and reading forces for Geometry  10/ 12 for iteration  46
+ Creating Input for Geometry  11/ 12 for iteration  46
+ Computing and reading forces for Geometry  11/ 12 for iteration  46
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  46
      H   -0.000000   -0.000000    0.038576
@@ -3242,69 +3722,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  46
-     H   -0.089537    0.386973    0.209314
-     C   -0.074213    0.154628    1.245552
-     N   -0.056425   -0.096379    2.367174
+     H    0.004529    0.420705    0.182878
+     C   -0.040327    0.203184    1.211775
+     N   -0.089532   -0.032316    2.329122
      3
 Geometry   3/ 12 for iteration  46
-     H   -0.127473    0.773097    0.416726
-     C   -0.096590    0.256495    1.347375
-     N   -0.063764   -0.303322    2.354582
+     H    0.015168    0.792648    0.522011
+     C   -0.028324    0.281716    1.326659
+     N   -0.063552   -0.188801    2.362591
      3
 Geometry   4/ 12 for iteration  46
-     H   -0.127030    0.992444    0.752030
-     C   -0.145909    0.281174    1.539372
-     N   -0.158464   -0.487846    2.395553
+     H   -0.012216    1.097309    1.077418
+     C   -0.046640    0.185779    1.265589
+     N   -0.061716   -0.305393    2.289017
      3
 Geometry   5/ 12 for iteration  46
-     H   -0.022010    1.201094    0.875987
-     C   -0.000767    0.341420    1.466947
-     N    0.017283   -0.581944    2.133523
+     H   -0.037315    1.057166    1.477565
+     C   -0.055628    0.005356    1.172380
+     N   -0.046321   -0.234748    2.266240
      3
 Geometry   6/ 12 for iteration  46
-     H   -0.080476    1.263320    1.259445
-     C    0.000313    0.261996    1.534779
-     N    0.077497   -0.783867    2.006194
+     H   -0.021278    1.023281    1.616408
+     C   -0.028152   -0.059902    1.016778
+     N   -0.012581   -0.049858    2.133593
      3
 Geometry   7/ 12 for iteration  46
-     H   -0.118543    1.124811    1.661771
-     C   -0.063659    0.138157    1.374112
-     N    0.061134   -0.706722    2.121369
+     H   -0.054046    1.061302    1.677407
+     C    0.024183   -0.231280    0.968969
+     N    0.056247    0.133689    2.039192
      3
 Geometry   8/ 12 for iteration  46
-     H   -0.154200    0.913870    1.933737
-     C   -0.072615    0.023539    1.172947
-     N    0.111320   -0.428652    2.189185
+     H   -0.067468    1.011646    2.366361
+     C   -0.002773   -0.311846    0.846390
+     N    0.088948    0.144733    1.912520
      3
 Geometry   9/ 12 for iteration  46
-     H   -0.080280    0.795132    2.324057
-     C   -0.071785   -0.107075    1.010791
-     N    0.088743   -0.221193    2.133255
+     H   -0.093578    1.016297    2.392475
+     C    0.152269   -0.303359    0.775101
+     N    0.085589    0.295439    1.774435
      3
 Geometry  10/ 12 for iteration  46
-     H   -0.102577    0.657879    2.708954
-     C    0.045031   -0.278920    0.982417
-     N   -0.000371   -0.051490    2.099561
+     H   -0.064811    0.599824    2.841484
+     C    0.092480   -0.252333    0.872906
+     N    0.012144    0.197728    1.943821
      3
 Geometry  11/ 12 for iteration  46
-     H   -0.063494    0.350259    3.085379
-     C    0.065748   -0.233469    1.014550
-     N   -0.003446    0.077557    2.134455
+     H   -0.034622    0.238455    3.072327
+     C    0.043759   -0.060065    0.941209
+     N    0.001000    0.100337    2.091264
      3
 Geometry  12/ 12 for iteration  46
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
- EGrad.f90, L73, IOpt=          47
+ Creating Input for Geometry   2/ 12 for iteration  47
+ Computing and reading forces for Geometry   2/ 12 for iteration  47
+ Creating Input for Geometry   3/ 12 for iteration  47
+ Computing and reading forces for Geometry   3/ 12 for iteration  47
+ Creating Input for Geometry   4/ 12 for iteration  47
+ Computing and reading forces for Geometry   4/ 12 for iteration  47
+ Creating Input for Geometry   5/ 12 for iteration  47
+ Computing and reading forces for Geometry   5/ 12 for iteration  47
+ Creating Input for Geometry   6/ 12 for iteration  47
+ Computing and reading forces for Geometry   6/ 12 for iteration  47
+ Creating Input for Geometry   7/ 12 for iteration  47
+ Computing and reading forces for Geometry   7/ 12 for iteration  47
+ Creating Input for Geometry   8/ 12 for iteration  47
+ Computing and reading forces for Geometry   8/ 12 for iteration  47
+ Creating Input for Geometry   9/ 12 for iteration  47
+ Computing and reading forces for Geometry   9/ 12 for iteration  47
+ Creating Input for Geometry  10/ 12 for iteration  47
+ Computing and reading forces for Geometry  10/ 12 for iteration  47
+ Creating Input for Geometry  11/ 12 for iteration  47
+ Computing and reading forces for Geometry  11/ 12 for iteration  47
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  47
      H   -0.000000   -0.000000    0.038576
@@ -3312,69 +3803,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  47
-     H   -0.106892    0.372862    0.218878
-     C   -0.091929    0.151153    1.257040
-     N   -0.074873   -0.087762    2.380789
+     H    0.021822    0.463723    0.208763
+     C   -0.020007    0.207473    1.213376
+     N   -0.066544   -0.057991    2.320676
      3
 Geometry   3/ 12 for iteration  47
-     H   -0.139243    0.758908    0.422009
-     C   -0.096754    0.249380    1.356538
-     N   -0.051181   -0.301749    2.368176
+     H   -0.012153    0.885743    0.627226
+     C   -0.041592    0.277986    1.317253
+     N   -0.073502   -0.203647    2.344350
      3
 Geometry   4/ 12 for iteration  47
-     H   -0.146573    0.989307    0.761677
-     C   -0.162883    0.282964    1.554388
-     N   -0.180379   -0.482702    2.413663
+     H   -0.017859    1.099319    1.193297
+     C   -0.053467    0.145356    1.236363
+     N   -0.067148   -0.286519    2.275740
      3
 Geometry   5/ 12 for iteration  47
-     H   -0.006783    1.208985    0.844690
-     C    0.010808    0.348259    1.441919
-     N    0.024172   -0.565727    2.124625
+     H   -0.035736    1.037036    1.537115
+     C   -0.055278   -0.027193    1.134677
+     N   -0.050494   -0.173774    2.242508
      3
 Geometry   6/ 12 for iteration  47
-     H   -0.077952    1.251536    1.256482
-     C   -0.000608    0.260149    1.527186
-     N    0.067033   -0.766820    2.027438
+     H   -0.023660    1.028021    1.645981
+     C   -0.017748   -0.100995    0.994318
+     N   -0.005887    0.003028    2.103722
      3
 Geometry   7/ 12 for iteration  47
-     H   -0.119711    1.113865    1.668778
-     C   -0.061089    0.126125    1.372378
-     N    0.060212   -0.689227    2.132850
+     H   -0.034413    1.065454    1.811848
+     C    0.025912   -0.262503    0.931892
+     N    0.057106    0.147458    2.000170
      3
 Geometry   8/ 12 for iteration  47
-     H   -0.142819    0.891633    1.955600
-     C   -0.091795   -0.001218    1.185061
-     N    0.111158   -0.426082    2.208868
+     H   -0.076411    1.011316    2.395023
+     C    0.034203   -0.320279    0.818750
+     N    0.089684    0.198871    1.858531
      3
 Geometry   9/ 12 for iteration  47
-     H   -0.065128    0.793881    2.324751
-     C   -0.078504   -0.099197    0.986182
-     N    0.089745   -0.195118    2.112475
+     H   -0.086812    0.936993    2.481727
+     C    0.156966   -0.286725    0.776034
+     N    0.067996    0.294024    1.783436
      3
 Geometry  10/ 12 for iteration  47
-     H   -0.104700    0.678468    2.710299
-     C    0.058574   -0.302321    0.982678
-     N   -0.005490   -0.039487    2.097879
+     H   -0.062006    0.581166    2.861313
+     C    0.087273   -0.249752    0.880347
+     N    0.009644    0.190635    1.953422
      3
 Geometry  11/ 12 for iteration  47
-     H   -0.057310    0.351337    3.075746
-     C    0.058860   -0.224438    1.006839
-     N   -0.002960    0.077591    2.129394
+     H   -0.032536    0.225606    3.077144
+     C    0.038983   -0.054574    0.941775
+     N    0.000790    0.096290    2.094244
      3
 Geometry  12/ 12 for iteration  47
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
- EGrad.f90, L73, IOpt=          48
+ Creating Input for Geometry   2/ 12 for iteration  48
+ Computing and reading forces for Geometry   2/ 12 for iteration  48
+ Creating Input for Geometry   3/ 12 for iteration  48
+ Computing and reading forces for Geometry   3/ 12 for iteration  48
+ Creating Input for Geometry   4/ 12 for iteration  48
+ Computing and reading forces for Geometry   4/ 12 for iteration  48
+ Creating Input for Geometry   5/ 12 for iteration  48
+ Computing and reading forces for Geometry   5/ 12 for iteration  48
+ Creating Input for Geometry   6/ 12 for iteration  48
+ Computing and reading forces for Geometry   6/ 12 for iteration  48
+ Creating Input for Geometry   7/ 12 for iteration  48
+ Computing and reading forces for Geometry   7/ 12 for iteration  48
+ Creating Input for Geometry   8/ 12 for iteration  48
+ Computing and reading forces for Geometry   8/ 12 for iteration  48
+ Creating Input for Geometry   9/ 12 for iteration  48
+ Computing and reading forces for Geometry   9/ 12 for iteration  48
+ Creating Input for Geometry  10/ 12 for iteration  48
+ Computing and reading forces for Geometry  10/ 12 for iteration  48
+ Creating Input for Geometry  11/ 12 for iteration  48
+ Computing and reading forces for Geometry  11/ 12 for iteration  48
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  48
      H   -0.000000   -0.000000    0.038576
@@ -3382,69 +3884,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  48
-     H   -0.125794    0.364099    0.230361
-     C   -0.110275    0.149728    1.269803
-     N   -0.092789   -0.080662    2.394979
+     H    0.043782    0.464014    0.197286
+     C    0.002230    0.201287    1.199266
+     N   -0.044103   -0.068672    2.306165
      3
 Geometry   3/ 12 for iteration  48
-     H   -0.160992    0.751648    0.444542
-     C   -0.104254    0.241985    1.377293
-     N   -0.042758   -0.309684    2.387072
+     H   -0.032381    0.902821    0.617583
+     C   -0.057138    0.288372    1.322598
+     N   -0.098026   -0.189303    2.350528
      3
 Geometry   4/ 12 for iteration  48
-     H   -0.157450    0.992085    0.781425
-     C   -0.180863    0.283717    1.573673
-     N   -0.206021   -0.484805    2.431114
+     H   -0.018228    1.126403    1.186084
+     C   -0.056786    0.168943    1.221759
+     N   -0.074195   -0.279975    2.252251
      3
 Geometry   5/ 12 for iteration  48
-     H   -0.005825    1.196262    0.807919
-     C    0.011415    0.367064    1.451861
-     N    0.031765   -0.558713    2.130277
+     H   -0.038806    1.028159    1.576555
+     C   -0.065493   -0.039823    1.137784
+     N   -0.067997   -0.174111    2.253455
      3
 Geometry   6/ 12 for iteration  48
-     H   -0.081563    1.265427    1.237742
-     C    0.013697    0.266973    1.544480
-     N    0.048221   -0.772977    2.024057
+     H   -0.033384    1.017423    1.650077
+     C   -0.022767   -0.123963    1.020856
+     N   -0.014507    0.000928    2.129843
      3
 Geometry   7/ 12 for iteration  48
-     H   -0.121638    1.116508    1.664555
-     C   -0.055627    0.126055    1.382484
-     N    0.058422   -0.693816    2.132971
+     H   -0.001003    1.079205    1.817817
+     C    0.029283   -0.265271    0.915933
+     N    0.049598    0.119961    1.996182
      3
 Geometry   8/ 12 for iteration  48
-     H   -0.133783    0.875927    1.965297
-     C   -0.106553   -0.016687    1.205756
-     N    0.108113   -0.434844    2.223989
+     H   -0.072304    1.017505    2.363573
+     C    0.046723   -0.324429    0.813347
+     N    0.083583    0.218492    1.841591
      3
 Geometry   9/ 12 for iteration  48
-     H   -0.077630    0.807850    2.309019
-     C   -0.067356   -0.094364    0.965184
-     N    0.100134   -0.171987    2.094755
+     H   -0.079470    0.829401    2.602627
+     C    0.136502   -0.273313    0.788396
+     N    0.061000    0.284051    1.807959
      3
 Geometry  10/ 12 for iteration  48
-     H   -0.111412    0.707636    2.700988
-     C    0.077085   -0.330907    0.981158
-     N   -0.013965   -0.025351    2.090253
+     H   -0.060610    0.514924    2.901522
+     C    0.085592   -0.226177    0.890999
+     N    0.008745    0.186938    1.969985
      3
 Geometry  11/ 12 for iteration  48
-     H   -0.063140    0.352787    3.062792
-     C    0.063194   -0.235319    1.013488
-     N   -0.014882    0.070704    2.131518
+     H   -0.040474    0.205339    3.091727
+     C    0.042231   -0.051558    0.950416
+     N   -0.001834    0.087135    2.105963
      3
 Geometry  12/ 12 for iteration  48
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
- EGrad.f90, L73, IOpt=          49
+ Creating Input for Geometry   2/ 12 for iteration  49
+ Computing and reading forces for Geometry   2/ 12 for iteration  49
+ Creating Input for Geometry   3/ 12 for iteration  49
+ Computing and reading forces for Geometry   3/ 12 for iteration  49
+ Creating Input for Geometry   4/ 12 for iteration  49
+ Computing and reading forces for Geometry   4/ 12 for iteration  49
+ Creating Input for Geometry   5/ 12 for iteration  49
+ Computing and reading forces for Geometry   5/ 12 for iteration  49
+ Creating Input for Geometry   6/ 12 for iteration  49
+ Computing and reading forces for Geometry   6/ 12 for iteration  49
+ Creating Input for Geometry   7/ 12 for iteration  49
+ Computing and reading forces for Geometry   7/ 12 for iteration  49
+ Creating Input for Geometry   8/ 12 for iteration  49
+ Computing and reading forces for Geometry   8/ 12 for iteration  49
+ Creating Input for Geometry   9/ 12 for iteration  49
+ Computing and reading forces for Geometry   9/ 12 for iteration  49
+ Creating Input for Geometry  10/ 12 for iteration  49
+ Computing and reading forces for Geometry  10/ 12 for iteration  49
+ Creating Input for Geometry  11/ 12 for iteration  49
+ Computing and reading forces for Geometry  11/ 12 for iteration  49
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  49
      H   -0.000000   -0.000000    0.038576
@@ -3452,69 +3965,80 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  49
-     H   -0.143055    0.356582    0.242630
-     C   -0.128442    0.148601    1.283508
-     N   -0.112271   -0.074289    2.410304
+     H    0.019404    0.448886    0.204488
+     C   -0.019771    0.196942    1.210267
+     N   -0.063041   -0.059620    2.319995
      3
 Geometry   3/ 12 for iteration  49
-     H   -0.163001    0.746652    0.452867
-     C   -0.097913    0.238549    1.384749
-     N   -0.027408   -0.310450    2.393735
+     H   -0.046663    0.897958    0.602145
+     C   -0.073885    0.305662    1.335556
+     N   -0.122094   -0.167562    2.366704
      3
 Geometry   4/ 12 for iteration  49
-     H   -0.169666    0.985998    0.792454
-     C   -0.197843    0.282162    1.588542
-     N   -0.227652   -0.481615    2.449517
+     H   -0.011721    1.092596    1.118108
+     C   -0.052666    0.180825    1.248812
+     N   -0.083120   -0.298589    2.270726
      3
 Geometry   5/ 12 for iteration  49
-     H   -0.008493    1.183777    0.780203
-     C    0.001234    0.364720    1.443154
-     N    0.012166   -0.537416    2.152566
+     H   -0.035037    1.040068    1.518341
+     C   -0.068416   -0.003718    1.164153
+     N   -0.081900   -0.204694    2.261060
      3
 Geometry   6/ 12 for iteration  49
-     H   -0.073639    1.261333    1.170029
-     C    0.010011    0.283286    1.543917
-     N    0.059315   -0.749580    2.035057
+     H   -0.042244    1.004166    1.649396
+     C   -0.037470   -0.125190    1.064536
+     N   -0.035230   -0.034396    2.176296
      3
 Geometry   7/ 12 for iteration  49
-     H   -0.125073    1.138904    1.635022
-     C   -0.043881    0.138893    1.406778
-     N    0.051299   -0.717772    2.125075
+     H    0.010162    1.064219    1.774144
+     C    0.012248   -0.237670    0.939644
+     N    0.021944    0.088743    2.030298
      3
 Geometry   8/ 12 for iteration  49
-     H   -0.156248    0.883743    1.951883
-     C   -0.088760   -0.008415    1.231606
-     N    0.104305   -0.464551    2.224842
+     H   -0.031598    1.048718    2.174877
+     C    0.046226   -0.313049    0.834533
+     N    0.065290    0.200454    1.872209
      3
 Geometry   9/ 12 for iteration  49
-     H   -0.081954    0.794305    2.312426
-     C   -0.075573   -0.106665    0.997216
-     N    0.093350   -0.204226    2.121472
+     H   -0.079766    0.792494    2.640602
+     C    0.148479   -0.270596    0.784669
+     N    0.048464    0.297311    1.798939
      3
 Geometry  10/ 12 for iteration  49
-     H   -0.120095    0.729106    2.686749
-     C    0.090691   -0.352411    0.980066
-     N   -0.016631   -0.008572    2.079237
+     H   -0.054716    0.516980    2.906065
+     C    0.074570   -0.231421    0.889313
+     N    0.004488    0.185281    1.971662
      3
 Geometry  11/ 12 for iteration  49
-     H   -0.079008    0.363950    3.039370
-     C    0.078240   -0.216783    0.993596
-     N   -0.014738    0.075268    2.115725
+     H   -0.037243    0.209793    3.089442
+     C    0.041041   -0.051401    0.948988
+     N   -0.001114    0.089673    2.103967
      3
 Geometry  12/ 12 for iteration  49
      H    0.000003   -0.000001    3.270565
      C   -0.000002   -0.000002    1.112436
      N    0.000000   -0.000000    2.276943
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
- EGrad.f90, L73, IOpt=          50
+ Creating Input for Geometry   2/ 12 for iteration  50
+ Computing and reading forces for Geometry   2/ 12 for iteration  50
+ Creating Input for Geometry   3/ 12 for iteration  50
+ Computing and reading forces for Geometry   3/ 12 for iteration  50
+ Creating Input for Geometry   4/ 12 for iteration  50
+ Computing and reading forces for Geometry   4/ 12 for iteration  50
+ Creating Input for Geometry   5/ 12 for iteration  50
+ Computing and reading forces for Geometry   5/ 12 for iteration  50
+ Creating Input for Geometry   6/ 12 for iteration  50
+ Computing and reading forces for Geometry   6/ 12 for iteration  50
+ Creating Input for Geometry   7/ 12 for iteration  50
+ Computing and reading forces for Geometry   7/ 12 for iteration  50
+ Creating Input for Geometry   8/ 12 for iteration  50
+ Computing and reading forces for Geometry   8/ 12 for iteration  50
+ Creating Input for Geometry   9/ 12 for iteration  50
+ Computing and reading forces for Geometry   9/ 12 for iteration  50
+ Creating Input for Geometry  10/ 12 for iteration  50
+ Computing and reading forces for Geometry  10/ 12 for iteration  50
+ Creating Input for Geometry  11/ 12 for iteration  50
+ Computing and reading forces for Geometry  11/ 12 for iteration  50
+  Forces all read. Moving on
      3
 Geometry   1/ 12 for iteration  50
      H   -0.000000   -0.000000    0.038576
@@ -3522,54 +4046,54 @@
      N    0.000000    0.000000    2.257373
      3
 Geometry   2/ 12 for iteration  50
-     H   -0.114489    0.371738    0.240644
-     C   -0.105040    0.146869    1.275973
-     N   -0.094764   -0.095108    2.396750
+     H   -0.003818    0.423916    0.207192
+     C   -0.039718    0.188753    1.218080
+     N   -0.079174   -0.049540    2.331409
      3
 Geometry   3/ 12 for iteration  50
-     H   -0.171286    0.759503    0.472483
-     C   -0.105578    0.245092    1.400257
-     N   -0.032409   -0.312649    2.403183
+     H   -0.064822    0.891988    0.579524
+     C   -0.088817    0.320212    1.337709
+     N   -0.144461   -0.149316    2.371268
      3
 Geometry   4/ 12 for iteration  50
-     H   -0.189606    1.006822    0.796968
-     C   -0.196524    0.291795    1.586602
-     N   -0.200217   -0.494443    2.431786
+     H   -0.013964    1.054801    1.030542
+     C   -0.053681    0.197436    1.280412
+     N   -0.094461   -0.303445    2.297756
      3
 Geometry   5/ 12 for iteration  50
-     H   -0.002876    1.187155    0.768875
-     C    0.006404    0.367250    1.434179
-     N    0.013747   -0.526988    2.153699
+     H   -0.034604    1.042030    1.473032
+     C   -0.070384    0.013583    1.186983
+     N   -0.084853   -0.242748    2.283277
      3
 Geometry   6/ 12 for iteration  50
-     H   -0.088302    1.248798    1.195525
-     C    0.001892    0.273065    1.534264
-     N    0.068572   -0.737370    2.053189
+     H   -0.051307    0.998364    1.644609
+     C   -0.046525   -0.123186    1.095101
+     N   -0.045799   -0.062660    2.203990
      3
 Geometry   7/ 12 for iteration  50
-     H   -0.136916    1.119151    1.658846
-     C   -0.037293    0.128616    1.404091
-     N    0.051900   -0.703636    2.133648
+     H    0.018026    1.056953    1.722562
+     C    0.007099   -0.222862    0.964763
+     N    0.005338    0.077523    2.060534
      3
 Geometry   8/ 12 for iteration  50
-     H   -0.181733    0.860554    1.981986
-     C   -0.071783   -0.010713    1.227875
-     N    0.101882   -0.465259    2.235853
+     H   -0.024068    1.060336    2.138057
+     C    0.030553   -0.326158    0.858211
+     N    0.047659    0.180931    1.903634
      3
 Geometry   9/ 12 for iteration  50
-     H   -0.087448    0.775889    2.344374
-     C   -0.077979   -0.144120    1.015064
-     N    0.090608   -0.198953    2.140648
+     H   -0.072412    0.778221    2.641408
+     C    0.144740   -0.260950    0.783029
+     N    0.037902    0.285080    1.806882
      3
 Geometry  10/ 12 for iteration  50
-     H   -0.125619    0.728506    2.695442
-     C    0.112702   -0.365014    0.975746
-     N   -0.027627    0.023384    2.059533
+     H   -0.059625    0.564635    2.878201
+     C    0.081473   -0.238881    0.883436
+     N    0.002780    0.172699    1.972271
      3
 Geometry  11/ 12 for iteration  50
-     H   -0.097860    0.354088    3.038902
-     C    0.097697   -0.188230    0.973445
-     N   -0.011190    0.088409    2.100073
+     H   -0.038481    0.214113    3.087205
+     C    0.042033   -0.055130    0.949125
+     N   -0.001454    0.089602    2.103121
      3
 Geometry  12/ 12 for iteration  50
      H    0.000003   -0.000001    3.270565
Index: examples/Test/Zmat/Test/HCN_zmat.out
===================================================================
--- examples/Test/Zmat/Test/HCN_zmat.out	(revision 11)
+++ examples/Test/Zmat/Test/HCN_zmat.out	(revision 12)
@@ -1,4 +1,4 @@
- OpenPath v1.4 (c) PFL/PD 2007-2011
+ Opt'n Path v1.50 (c) PFL/PD 2003-2014
  Input has been set to the default: XYZ                             
  NAT =     3
  NGEOMI =     3
@@ -7,781 +7,1046 @@
  PATHNAME =  Path
  Working in MW coordinates
  Prog=TEST
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
- EGrad.f90, L73, IOpt=           0
+ Creating Input for Geometry   2/ 12 for iteration   0
+ Computing and reading forces for Geometry   2/ 12 for iteration   0
+ Creating Input for Geometry   3/ 12 for iteration   0
+ Computing and reading forces for Geometry   3/ 12 for iteration   0
+ Creating Input for Geometry   4/ 12 for iteration   0
+ Computing and reading forces for Geometry   4/ 12 for iteration   0
+ Creating Input for Geometry   5/ 12 for iteration   0
+ Computing and reading forces for Geometry   5/ 12 for iteration   0
+ Creating Input for Geometry   6/ 12 for iteration   0
+ Computing and reading forces for Geometry   6/ 12 for iteration   0
+ Creating Input for Geometry   7/ 12 for iteration   0
+ Computing and reading forces for Geometry   7/ 12 for iteration   0
+ Creating Input for Geometry   8/ 12 for iteration   0
+ Computing and reading forces for Geometry   8/ 12 for iteration   0
+ Creating Input for Geometry   9/ 12 for iteration   0
+ Computing and reading forces for Geometry   9/ 12 for iteration   0
+ Creating Input for Geometry  10/ 12 for iteration   0
+ Computing and reading forces for Geometry  10/ 12 for iteration   0
+ Creating Input for Geometry  11/ 12 for iteration   0
+ Computing and reading forces for Geometry  11/ 12 for iteration   0
+  Forces all read. Moving on
 Geometry   2/ 12 for iteration   1
      C
-     H    2    1.052557
-     N    2    1.113415    1  162.274512
+     H    2    1.051673
+     N    2    1.133258    1  148.168024
 Geometry   3/ 12 for iteration   1
      C
-     H    2    1.052259
-     N    2    1.139176    1  144.567281
+     H    2    1.064159
+     N    2    1.166166    1  123.572560
 Geometry   4/ 12 for iteration   1
      C
-     H    2    1.060913
-     N    2    1.163782    1  127.170293
+     H    2    1.094934
+     N    2    1.136122    1  103.799644
 Geometry   5/ 12 for iteration   1
      C
-     H    2    1.083404
-     N    2    1.154645    1  109.488827
+     H    2    1.108011
+     N    2    1.070263    1   84.956341
 Geometry   6/ 12 for iteration   1
      C
-     H    2    1.128050
-     N    2    1.064331    1   92.132533
+     H    2    1.275557
+     N    2    1.146105    1   65.745683
 Geometry   7/ 12 for iteration   1
      C
-     H    2    1.185369
-     N    2    1.136646    1   73.305029
+     H    2    1.450756
+     N    2    1.159513    1   51.313468
 Geometry   8/ 12 for iteration   1
      C
-     H    2    1.370271
-     N    2    1.153384    1   57.920776
+     H    2    1.608873
+     N    2    1.170529    1   38.431500
 Geometry   9/ 12 for iteration   1
      C
-     H    2    1.557310
-     N    2    1.167410    1   42.622309
+     H    2    1.751853
+     N    2    1.170290    1   26.730726
 Geometry  10/ 12 for iteration   1
      C
-     H    2    1.744650
-     N    2    1.171726    1   27.335932
+     H    2    2.039436
+     N    2    1.128626    1   22.620485
 Geometry  11/ 12 for iteration   1
      C
-     H    2    2.089651
-     N    2    1.124759    1   18.375608
- GeomTmp=
-  1.053  1.113  2.832
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  1.052  1.139  2.523
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  1.061  1.164  2.220
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  1.083  1.155  1.911
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  1.128  1.064  1.608
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  1.185  1.137  1.279
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  1.370  1.153  1.011
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  1.557  1.167  0.744
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  1.745  1.172  0.477
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
- GeomTmp=
-  2.090  1.125  0.321
- GeomCart=
-  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000
- EGrad.f90, L73, IOpt=           1
+     H    2    2.163028
+     N    2    1.124895    1   12.377375
+ Creating Input for Geometry   2/ 12 for iteration   1
+ Computing and reading forces for Geometry   2/ 12 for iteration   1
+ Creating Input for Geometry   3/ 12 for iteration   1
+ Computing and reading forces for Geometry   3/ 12 for iteration   1
+ Creating Input for Geometry   4/ 12 for iteration   1
+ Computing and reading forces for Geometry   4/ 12 for iteration   1
+ Creating Input for Geometry   5/ 12 for iteration   1
+ Computing and reading forces for Geometry   5/ 12 for iteration   1
+ Creating Input for Geometry   6/ 12 for iteration   1
+ Computing and reading forces for Geometry   6/ 12 for iteration   1
+ Creating Input for Geometry   7/ 12 for iteration   1
+ Computing and reading forces for Geometry   7/ 12 for iteration   1
+ Creating Input for Geometry   8/ 12 for iteration   1
+ Computing and reading forces for Geometry   8/ 12 for iteration   1
+ Creating Input for Geometry   9/ 12 for iteration   1
+ Computing and reading forces for Geometry   9/ 12 for iteration   1
+ Creating Input for Geometry  10/ 12 for iteration   1
+ Computing and reading forces for Geometry  10/ 12 for iteration   1
+ Creating Input for Geometry  11/ 12 for iteration   1
+ Computing and reading forces for Geometry  11/ 12 for iteration   1
+  Forces all read. Moving on
 Geometry   1/ 12 for iteration   1
      C
      H    2    1.069000
      N    2    1.160100    1  180.000000
 Geometry   2/ 12 for iteration   1
      C
-     H    2    1.052557
-     N    2    1.113415    1  162.274512
+     H    2    1.051673
+     N    2    1.133258    1  148.168024
 Geometry   3/ 12 for iteration   1
      C
-     H    2    1.052259
-     N    2    1.139176    1  144.567281
+     H    2    1.064159
+     N    2    1.166166    1  123.572560
 Geometry   4/ 12 for iteration   1
      C
-     H    2    1.060913
-     N    2    1.163782    1  127.170293
+     H    2    1.094934
+     N    2    1.136122    1  103.799644
 Geometry   5/ 12 for iteration   1
      C
-     H    2    1.083404
-     N    2    1.154645    1  109.488827
+     H    2    1.108011
+     N    2    1.070263    1   84.956341
 Geometry   6/ 12 for iteration   1
      C
-     H    2    1.128050
-     N    2    1.064331    1   92.132533
+     H    2    1.275557
+     N    2    1.146105    1   65.745683
 Geometry   7/ 12 for iteration   1
      C
-     H    2    1.185369
-     N    2    1.136646    1   73.305029
+     H    2    1.450756
+     N    2    1.159513    1   51.313468
 Geometry   8/ 12 for iteration   1
      C
-     H    2    1.370271
-     N    2    1.153384    1   57.920776
+     H    2    1.608873
+     N    2    1.170529    1   38.431500
 Geometry   9/ 12 for iteration   1
      C
-     H    2    1.557310
-     N    2    1.167410    1   42.622309
+     H    2    1.751853
+     N    2    1.170290    1   26.730726
 Geometry  10/ 12 for iteration   1
      C
-     H    2    1.744650
-     N    2    1.171726    1   27.335932
+     H    2    2.039436
+     N    2    1.128626    1   22.620485
 Geometry  11/ 12 for iteration   1
      C
-     H    2    2.089651
-     N    2    1.124759    1   18.375608
+     H    2    2.163028
+     N    2    1.124895    1   12.377375
 Geometry  12/ 12 for iteration   1
      C
      H    2    2.200000
      N    2    1.160000    1    0.000000
 Geometry   2/ 12 for iteration   2
      C
-     H    2    1.056648
-     N    2    1.156553    1  162.279138
+     H    2    1.058074
+     N    2    1.160877    1  148.175261
 Geometry   3/ 12 for iteration   2
      C
-     H    2    1.059693
-     N    2    1.162568    1  144.575687
+     H    2    1.074587
+     N    2    1.154313    1  123.584351
 Geometry   4/ 12 for iteration   2
      C
-     H    2    1.074583
-     N    2    1.154043    1  127.185750
+     H    2    1.093525
+     N    2    1.157857    1  103.798051
 Geometry   5/ 12 for iteration   2
      C
-     H    2    1.085867
-     N    2    1.161113    1  109.491612
+     H    2    1.144783
+     N    2    1.151745    1   86.431436
 Geometry   6/ 12 for iteration   2
      C
-     H    2    1.120071
-     N    2    1.161590    1   92.123512
+     H    2    1.193831
+     N    2    1.152836    1   62.466535
 Geometry   7/ 12 for iteration   2
      C
-     H    2    1.104961
-     N    2    1.117563    1   70.078887
+     H    2    1.381993
+     N    2    1.105168    1   48.554712
 Geometry   8/ 12 for iteration   2
      C
-     H    2    1.293126
-     N    2    1.119762    1   54.825608
+     H    2    1.581973
+     N    2    1.076074    1   37.352562
 Geometry   9/ 12 for iteration   2
      C
-     H    2    1.507955
-     N    2    1.087599    1   40.642322
+     H    2    1.807041
+     N    2    1.096396    1   28.945311
 Geometry  10/ 12 for iteration   2
      C
-     H    2    1.797385
-     N    2    1.095209    1   29.452112
+     H    2    2.062872
+     N    2    1.224447    1   23.560464
 Geometry  11/ 12 for iteration   2
      C
-     H    2    2.122128
-     N    2    1.216565    1   19.678336
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
- EGrad.f90, L73, IOpt=           2
+     H    2    2.106392
+     N    2    1.166497    1   10.104796
+ Creating Input for Geometry   2/ 12 for iteration   2
+ Computing and reading forces for Geometry   2/ 12 for iteration   2
+ Creating Input for Geometry   3/ 12 for iteration   2
+ Computing and reading forces for Geometry   3/ 12 for iteration   2
+ Creating Input for Geometry   4/ 12 for iteration   2
+ Computing and reading forces for Geometry   4/ 12 for iteration   2
+ Creating Input for Geometry   5/ 12 for iteration   2
+ Computing and reading forces for Geometry   5/ 12 for iteration   2
+ Creating Input for Geometry   6/ 12 for iteration   2
+ Computing and reading forces for Geometry   6/ 12 for iteration   2
+ Creating Input for Geometry   7/ 12 for iteration   2
+ Computing and reading forces for Geometry   7/ 12 for iteration   2
+ Creating Input for Geometry   8/ 12 for iteration   2
+ Computing and reading forces for Geometry   8/ 12 for iteration   2
+ Creating Input for Geometry   9/ 12 for iteration   2
+ Computing and reading forces for Geometry   9/ 12 for iteration   2
+ Creating Input for Geometry  10/ 12 for iteration   2
+ Computing and reading forces for Geometry  10/ 12 for iteration   2
+ Creating Input for Geometry  11/ 12 for iteration   2
+ Computing and reading forces for Geometry  11/ 12 for iteration   2
+  Forces all read. Moving on
 Geometry   1/ 12 for iteration   2
      C
      H    2    1.069000
      N    2    1.160100    1  180.000000
 Geometry   2/ 12 for iteration   2
      C
-     H    2    1.056648
-     N    2    1.156553    1  162.279138
+     H    2    1.058074
+     N    2    1.160877    1  148.175261
 Geometry   3/ 12 for iteration   2
      C
-     H    2    1.059693
-     N    2    1.162568    1  144.575687
+     H    2    1.074587
+     N    2    1.154313    1  123.584351
 Geometry   4/ 12 for iteration   2
      C
-     H    2    1.074583
-     N    2    1.154043    1  127.185750
+     H    2    1.093525
+     N    2    1.157857    1  103.798051
 Geometry   5/ 12 for iteration   2
      C
-     H    2    1.085867
-     N    2    1.161113    1  109.491612
+     H    2    1.144783
+     N    2    1.151745    1   86.431436
 Geometry   6/ 12 for iteration   2
      C
-     H    2    1.120071
-     N    2    1.161590    1   92.123512
+     H    2    1.193831
+     N    2    1.152836    1   62.466535
 Geometry   7/ 12 for iteration   2
      C
-     H    2    1.104961
-     N    2    1.117563    1   70.078887
+     H    2    1.381993
+     N    2    1.105168    1   48.554712
 Geometry   8/ 12 for iteration   2
      C
-     H    2    1.293126
-     N    2    1.119762    1   54.825608
+     H    2    1.581973
+     N    2    1.076074    1   37.352562
 Geometry   9/ 12 for iteration   2
      C
-     H    2    1.507955
-     N    2    1.087599    1   40.642322
+     H    2    1.807041
+     N    2    1.096396    1   28.945311
 Geometry  10/ 12 for iteration   2
      C
-     H    2    1.797385
-     N    2    1.095209    1   29.452112
+     H    2    2.062872
+     N    2    1.224447    1   23.560464
 Geometry  11/ 12 for iteration   2
      C
-     H    2    2.122128
-     N    2    1.216565    1   19.678336
+     H    2    2.106392
+     N    2    1.166497    1   10.104796
 Geometry  12/ 12 for iteration   2
      C
      H    2    2.200000
      N    2    1.160000    1    0.000000
 Geometry   2/ 12 for iteration   3
      C
-     H    2    1.069739
-     N    2    1.154539    1  162.293941
+     H    2    1.070030
+     N    2    1.156849    1  148.188780
 Geometry   3/ 12 for iteration   3
      C
-     H    2    1.070855
-     N    2    1.157508    1  144.588309
+     H    2    1.079783
+     N    2    1.160818    1  123.590226
 Geometry   4/ 12 for iteration   3
      C
-     H    2    1.077814
-     N    2    1.160580    1  127.189404
+     H    2    1.095169
+     N    2    1.157113    1  103.799910
 Geometry   5/ 12 for iteration   3
      C
-     H    2    1.089315
-     N    2    1.159101    1  109.495511
+     H    2    1.074985
+     N    2    1.140146    1   83.630988
 Geometry   6/ 12 for iteration   3
      C
-     H    2    1.117452
-     N    2    1.152328    1   92.120549
+     H    2    1.214019
+     N    2    1.126469    1   63.276639
 Geometry   7/ 12 for iteration   3
      C
-     H    2    1.158522
-     N    2    1.150166    1   72.227784
+     H    2    1.344862
+     N    2    1.137192    1   47.064747
 Geometry   8/ 12 for iteration   3
      C
-     H    2    1.234295
-     N    2    1.122557    1   52.465121
+     H    2    1.628245
+     N    2    1.154342    1   39.208859
 Geometry   9/ 12 for iteration   3
      C
-     H    2    1.542971
-     N    2    1.150096    1   42.047060
+     H    2    1.826199
+     N    2    1.160689    1   29.713732
 Geometry  10/ 12 for iteration   3
      C
-     H    2    1.816741
-     N    2    1.161759    1   30.228505
+     H    2    2.001481
+     N    2    1.173065    1   21.097449
 Geometry  11/ 12 for iteration   3
      C
-     H    2    2.064708
-     N    2    1.172946    1   17.374656
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
- EGrad.f90, L73, IOpt=           3
+     H    2    2.133187
+     N    2    1.172892    1   11.179875
+ Creating Input for Geometry   2/ 12 for iteration   3
+ Computing and reading forces for Geometry   2/ 12 for iteration   3
+ Creating Input for Geometry   3/ 12 for iteration   3
+ Computing and reading forces for Geometry   3/ 12 for iteration   3
+ Creating Input for Geometry   4/ 12 for iteration   3
+ Computing and reading forces for Geometry   4/ 12 for iteration   3
+ Creating Input for Geometry   5/ 12 for iteration   3
+ Computing and reading forces for Geometry   5/ 12 for iteration   3
+ Creating Input for Geometry   6/ 12 for iteration   3
+ Computing and reading forces for Geometry   6/ 12 for iteration   3
+ Creating Input for Geometry   7/ 12 for iteration   3
+ Computing and reading forces for Geometry   7/ 12 for iteration   3
+ Creating Input for Geometry   8/ 12 for iteration   3
+ Computing and reading forces for Geometry   8/ 12 for iteration   3
+ Creating Input for Geometry   9/ 12 for iteration   3
+ Computing and reading forces for Geometry   9/ 12 for iteration   3
+ Creating Input for Geometry  10/ 12 for iteration   3
+ Computing and reading forces for Geometry  10/ 12 for iteration   3
+ Creating Input for Geometry  11/ 12 for iteration   3
+ Computing and reading forces for Geometry  11/ 12 for iteration   3
+  Forces all read. Moving on
 Geometry   1/ 12 for iteration   3
      C
      H    2    1.069000
      N    2    1.160100    1  180.000000
 Geometry   2/ 12 for iteration   3
      C
-     H    2    1.069739
-     N    2    1.154539    1  162.293941
+     H    2    1.070030
+     N    2    1.156849    1  148.188780
 Geometry   3/ 12 for iteration   3
      C
-     H    2    1.070855
-     N    2    1.157508    1  144.588309
+     H    2    1.079783
+     N    2    1.160818    1  123.590226
 Geometry   4/ 12 for iteration   3
      C
-     H    2    1.077814
-     N    2    1.160580    1  127.189404
+     H    2    1.095169
+     N    2    1.157113    1  103.799910
 Geometry   5/ 12 for iteration   3
      C
-     H    2    1.089315
-     N    2    1.159101    1  109.495511
+     H    2    1.074985
+     N    2    1.140146    1   83.630988
 Geometry   6/ 12 for iteration   3
      C
-     H    2    1.117452
-     N    2    1.152328    1   92.120549
+     H    2    1.214019
+     N    2    1.126469    1   63.276639
 Geometry   7/ 12 for iteration   3
      C
-     H    2    1.158522
-     N    2    1.150166    1   72.227784
+     H    2    1.344862
+     N    2    1.137192    1   47.064747
 Geometry   8/ 12 for iteration   3
      C
-     H    2    1.234295
-     N    2    1.122557    1   52.465121
+     H    2    1.628245
+     N    2    1.154342    1   39.208859
 Geometry   9/ 12 for iteration   3
      C
-     H    2    1.542971
-     N    2    1.150096    1   42.047060
+     H    2    1.826199
+     N    2    1.160689    1   29.713732
 Geometry  10/ 12 for iteration   3
      C
-     H    2    1.816741
-     N    2    1.161759    1   30.228505
+     H    2    2.001481
+     N    2    1.173065    1   21.097449
 Geometry  11/ 12 for iteration   3
      C
-     H    2    2.064708
-     N    2    1.172946    1   17.374656
+     H    2    2.133187
+     N    2    1.172892    1   11.179875
 Geometry  12/ 12 for iteration   3
      C
      H    2    2.200000
      N    2    1.160000    1    0.000000
 Geometry   2/ 12 for iteration   4
      C
-     H    2    1.066945
-     N    2    1.154446    1  162.290782
+     H    2    1.069519
+     N    2    1.156673    1  148.188203
 Geometry   3/ 12 for iteration   4
      C
-     H    2    1.070493
-     N    2    1.157359    1  144.587899
+     H    2    1.079223
+     N    2    1.160467    1  123.589593
 Geometry   4/ 12 for iteration   4
      C
-     H    2    1.077260
-     N    2    1.160185    1  127.188777
+     H    2    1.094363
+     N    2    1.157055    1  103.798998
 Geometry   5/ 12 for iteration   4
      C
-     H    2    1.089181
-     N    2    1.159128    1  109.495359
+     H    2    1.156611
+     N    2    1.148505    1   86.906050
 Geometry   6/ 12 for iteration   4
      C
-     H    2    1.116048
-     N    2    1.149590    1   92.118962
+     H    2    1.148511
+     N    2    1.113669    1   60.648316
 Geometry   7/ 12 for iteration   4
      C
-     H    2    1.105651
-     N    2    1.119323    1   70.106567
+     H    2    1.379776
+     N    2    1.131414    1   48.465636
 Geometry   8/ 12 for iteration   4
      C
-     H    2    1.263222
-     N    2    1.118862    1   53.625780
+     H    2    1.601259
+     N    2    1.147780    1   38.126107
 Geometry   9/ 12 for iteration   4
      C
-     H    2    1.523581
-     N    2    1.142008    1   41.269084
+     H    2    1.824303
+     N    2    1.158577    1   29.637696
 Geometry  10/ 12 for iteration   4
      C
-     H    2    1.813859
-     N    2    1.158519    1   30.112883
+     H    2    1.987729
+     N    2    1.158589    1   20.545724
 Geometry  11/ 12 for iteration   4
      C
-     H    2    2.043905
-     N    2    1.159454    1   16.540002
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
- EGrad.f90, L73, IOpt=           4
+     H    2    2.106256
+     N    2    1.160252    1   10.099372
+ Creating Input for Geometry   2/ 12 for iteration   4
+ Computing and reading forces for Geometry   2/ 12 for iteration   4
+ Creating Input for Geometry   3/ 12 for iteration   4
+ Computing and reading forces for Geometry   3/ 12 for iteration   4
+ Creating Input for Geometry   4/ 12 for iteration   4
+ Computing and reading forces for Geometry   4/ 12 for iteration   4
+ Creating Input for Geometry   5/ 12 for iteration   4
+ Computing and reading forces for Geometry   5/ 12 for iteration   4
+ Creating Input for Geometry   6/ 12 for iteration   4
+ Computing and reading forces for Geometry   6/ 12 for iteration   4
+ Creating Input for Geometry   7/ 12 for iteration   4
+ Computing and reading forces for Geometry   7/ 12 for iteration   4
+ Creating Input for Geometry   8/ 12 for iteration   4
+ Computing and reading forces for Geometry   8/ 12 for iteration   4
+ Creating Input for Geometry   9/ 12 for iteration   4
+ Computing and reading forces for Geometry   9/ 12 for iteration   4
+ Creating Input for Geometry  10/ 12 for iteration   4
+ Computing and reading forces for Geometry  10/ 12 for iteration   4
+ Creating Input for Geometry  11/ 12 for iteration   4
+ Computing and reading forces for Geometry  11/ 12 for iteration   4
+  Forces all read. Moving on
 Geometry   1/ 12 for iteration   4
      C
      H    2    1.069000
      N    2    1.160100    1  180.000000
 Geometry   2/ 12 for iteration   4
      C
-     H    2    1.066945
-     N    2    1.154446    1  162.290782
+     H    2    1.069519
+     N    2    1.156673    1  148.188203
 Geometry   3/ 12 for iteration   4
      C
-     H    2    1.070493
-     N    2    1.157359    1  144.587899
+     H    2    1.079223
+     N    2    1.160467    1  123.589593
 Geometry   4/ 12 for iteration   4
      C
-     H    2    1.077260
-     N    2    1.160185    1  127.188777
+     H    2    1.094363
+     N    2    1.157055    1  103.798998
 Geometry   5/ 12 for iteration   4
      C
-     H    2    1.089181
-     N    2    1.159128    1  109.495359
+     H    2    1.156611
+     N    2    1.148505    1   86.906050
 Geometry   6/ 12 for iteration   4
      C
-     H    2    1.116048
-     N    2    1.149590    1   92.118962
+     H    2    1.148511
+     N    2    1.113669    1   60.648316
 Geometry   7/ 12 for iteration   4
      C
-     H    2    1.105651
-     N    2    1.119323    1   70.106567
+     H    2    1.379776
+     N    2    1.131414    1   48.465636
 Geometry   8/ 12 for iteration   4
      C
-     H    2    1.263222
-     N    2    1.118862    1   53.625780
+     H    2    1.601259
+     N    2    1.147780    1   38.126107
 Geometry   9/ 12 for iteration   4
      C
-     H    2    1.523581
-     N    2    1.142008    1   41.269084
+     H    2    1.824303
+     N    2    1.158577    1   29.637696
 Geometry  10/ 12 for iteration   4
      C
-     H    2    1.813859
-     N    2    1.158519    1   30.112883
+     H    2    1.987729
+     N    2    1.158589    1   20.545724
 Geometry  11/ 12 for iteration   4
      C
-     H    2    2.043905
-     N    2    1.159454    1   16.540002
+     H    2    2.106256
+     N    2    1.160252    1   10.099372
 Geometry  12/ 12 for iteration   4
      C
      H    2    2.200000
      N    2    1.160000    1    0.000000
 Geometry   2/ 12 for iteration   5
      C
-     H    2    1.066832
-     N    2    1.154372    1  162.290654
+     H    2    1.069458
+     N    2    1.156631    1  148.188133
 Geometry   3/ 12 for iteration   5
      C
-     H    2    1.070416
-     N    2    1.157313    1  144.587812
+     H    2    1.079214
+     N    2    1.160460    1  123.589583
 Geometry   4/ 12 for iteration   5
      C
-     H    2    1.077247
-     N    2    1.160178    1  127.188763
+     H    2    1.094311
+     N    2    1.157002    1  103.798939
 Geometry   5/ 12 for iteration   5
      C
-     H    2    1.089178
-     N    2    1.159125    1  109.495356
+     H    2    1.075103
+     N    2    1.138581    1   83.635714
 Geometry   6/ 12 for iteration   5
      C
-     H    2    1.106787
-     N    2    1.150515    1   92.108490
+     H    2    1.230173
+     N    2    1.121499    1   63.924792
 Geometry   7/ 12 for iteration   5
      C
-     H    2    1.152427
-     N    2    1.127097    1   71.983323
+     H    2    1.365059
+     N    2    1.126979    1   47.875163
 Geometry   8/ 12 for iteration   5
      C
-     H    2    1.259571
-     N    2    1.119268    1   53.479279
+     H    2    1.618466
+     N    2    1.148792    1   38.816509
 Geometry   9/ 12 for iteration   5
      C
-     H    2    1.535989
-     N    2    1.142919    1   41.766923
+     H    2    1.824396
+     N    2    1.158129    1   29.641426
 Geometry  10/ 12 for iteration   5
      C
-     H    2    1.814071
-     N    2    1.157826    1   30.121376
+     H    2    1.990679
+     N    2    1.161236    1   20.664057
 Geometry  11/ 12 for iteration   5
      C
-     H    2    2.046326
-     N    2    1.161655    1   16.637118
- Extrapol_int u,xgeom(NGeomI),s,dist,s-dist   11.000000000000000        11.000000000000000        1.3501552932060357        1.3501552932060361      -4.44089209850062616E-016
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
- EGrad.f90, L73, IOpt=           5
+     H    2    2.112143
+     N    2    1.162057    1   10.335552
+ Creating Input for Geometry   2/ 12 for iteration   5
+ Computing and reading forces for Geometry   2/ 12 for iteration   5
+ Creating Input for Geometry   3/ 12 for iteration   5
+ Computing and reading forces for Geometry   3/ 12 for iteration   5
+ Creating Input for Geometry   4/ 12 for iteration   5
+ Computing and reading forces for Geometry   4/ 12 for iteration   5
+ Creating Input for Geometry   5/ 12 for iteration   5
+ Computing and reading forces for Geometry   5/ 12 for iteration   5
+ Creating Input for Geometry   6/ 12 for iteration   5
+ Computing and reading forces for Geometry   6/ 12 for iteration   5
+ Creating Input for Geometry   7/ 12 for iteration   5
+ Computing and reading forces for Geometry   7/ 12 for iteration   5
+ Creating Input for Geometry   8/ 12 for iteration   5
+ Computing and reading forces for Geometry   8/ 12 for iteration   5
+ Creating Input for Geometry   9/ 12 for iteration   5
+ Computing and reading forces for Geometry   9/ 12 for iteration   5
+ Creating Input for Geometry  10/ 12 for iteration   5
+ Computing and reading forces for Geometry  10/ 12 for iteration   5
+ Creating Input for Geometry  11/ 12 for iteration   5
+ Computing and reading forces for Geometry  11/ 12 for iteration   5
+  Forces all read. Moving on
 Geometry   1/ 12 for iteration   5
      C
      H    2    1.069000
      N    2    1.160100    1  180.000000
 Geometry   2/ 12 for iteration   5
      C
-     H    2    1.066853
-     N    2    1.154345    1  161.816688
+     H    2    1.069496
+     N    2    1.156661    1  147.427472
 Geometry   3/ 12 for iteration   5
      C
-     H    2    1.070599
-     N    2    1.157465    1  143.976735
+     H    2    1.082146
+     N    2    1.160725    1  121.318851
 Geometry   4/ 12 for iteration   5
      C
-     H    2    1.077861
-     N    2    1.160233    1  126.098710
+     H    2    1.090282
+     N    2    1.155504    1  101.502258
 Geometry   5/ 12 for iteration   5
      C
-     H    2    1.090029
-     N    2    1.158900    1  108.293671
+     H    2    1.069192
+     N    2    1.141043    1   85.942570
 Geometry   6/ 12 for iteration   5
      C
-     H    2    1.109252
-     N    2    1.149044    1   90.630949
+     H    2    1.190844
+     N    2    1.124010    1   68.362715
 Geometry   7/ 12 for iteration   5
      C
-     H    2    1.151087
-     N    2    1.127610    1   72.464098
+     H    2    1.308330
+     N    2    1.121962    1   53.022108
 Geometry   8/ 12 for iteration   5
      C
-     H    2    1.243092
-     N    2    1.118456    1   54.829591
+     H    2    1.541399
+     N    2    1.142826    1   41.165208
 Geometry   9/ 12 for iteration   5
      C
-     H    2    1.522876
-     N    2    1.141854    1   42.229264
+     H    2    1.793262
+     N    2    1.157316    1   31.230589
 Geometry  10/ 12 for iteration   5
      C
-     H    2    1.809739
-     N    2    1.157692    1   30.327574
+     H    2    1.985540
+     N    2    1.161164    1   20.997044
 Geometry  11/ 12 for iteration   5
      C
-     H    2    2.051686
-     N    2    1.161661    1   16.206071
+     H    2    2.111307
+     N    2    1.162063    1   10.423500
 Geometry  12/ 12 for iteration   5
      C
      H    2    2.200000
      N    2    1.160000    1    0.000000
 Geometry   2/ 12 for iteration   6
      C
-     H    2    1.066670
-     N    2    1.154405    1  161.816649
+     H    2    1.069259
+     N    2    1.156784    1  147.427450
 Geometry   3/ 12 for iteration   6
      C
-     H    2    1.070536
-     N    2    1.157553    1  143.976744
+     H    2    1.082982
+     N    2    1.160725    1  121.322658
 Geometry   4/ 12 for iteration   6
      C
-     H    2    1.078305
-     N    2    1.160334    1  126.099563
+     H    2    1.090697
+     N    2    1.154881    1  101.500878
 Geometry   5/ 12 for iteration   6
      C
-     H    2    1.090999
-     N    2    1.158683    1  108.296067
+     H    2    1.120961
+     N    2    1.143902    1   86.222847
 Geometry   6/ 12 for iteration   6
      C
-     H    2    1.129361
-     N    2    1.145771    1   90.756256
+     H    2    1.175120
+     N    2    1.120495    1   67.889128
 Geometry   7/ 12 for iteration   6
      C
-     H    2    1.140811
-     N    2    1.127950    1   72.369259
+     H    2    1.244208
+     N    2    1.118064    1   51.310286
 Geometry   8/ 12 for iteration   6
      C
-     H    2    1.240642
-     N    2    1.117658    1   54.738653
+     H    2    1.541799
+     N    2    1.142014    1   41.202642
 Geometry   9/ 12 for iteration   6
      C
-     H    2    1.520344
-     N    2    1.140403    1   41.980547
+     H    2    1.791261
+     N    2    1.156323    1   31.099898
 Geometry  10/ 12 for iteration   6
      C
-     H    2    1.808699
-     N    2    1.156956    1   30.254154
+     H    2    1.984028
+     N    2    1.160487    1   20.919087
 Geometry  11/ 12 for iteration   6
      C
-     H    2    2.051577
-     N    2    1.161588    1   16.201700
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
- EGrad.f90, L73, IOpt=           6
+     H    2    2.111808
+     N    2    1.162586    1   10.439020
+ Creating Input for Geometry   2/ 12 for iteration   6
+ Computing and reading forces for Geometry   2/ 12 for iteration   6
+ Creating Input for Geometry   3/ 12 for iteration   6
+ Computing and reading forces for Geometry   3/ 12 for iteration   6
+ Creating Input for Geometry   4/ 12 for iteration   6
+ Computing and reading forces for Geometry   4/ 12 for iteration   6
+ Creating Input for Geometry   5/ 12 for iteration   6
+ Computing and reading forces for Geometry   5/ 12 for iteration   6
+ Creating Input for Geometry   6/ 12 for iteration   6
+ Computing and reading forces for Geometry   6/ 12 for iteration   6
+ Creating Input for Geometry   7/ 12 for iteration   6
+ Computing and reading forces for Geometry   7/ 12 for iteration   6
+ Creating Input for Geometry   8/ 12 for iteration   6
+ Computing and reading forces for Geometry   8/ 12 for iteration   6
+ Creating Input for Geometry   9/ 12 for iteration   6
+ Computing and reading forces for Geometry   9/ 12 for iteration   6
+ Creating Input for Geometry  10/ 12 for iteration   6
+ Computing and reading forces for Geometry  10/ 12 for iteration   6
+ Creating Input for Geometry  11/ 12 for iteration   6
+ Computing and reading forces for Geometry  11/ 12 for iteration   6
+  Forces all read. Moving on
 Geometry   1/ 12 for iteration   6
      C
      H    2    1.069000
      N    2    1.160100    1  180.000000
 Geometry   2/ 12 for iteration   6
      C
-     H    2    1.066670
-     N    2    1.154405    1  161.816649
+     H    2    1.069259
+     N    2    1.156784    1  147.427450
 Geometry   3/ 12 for iteration   6
      C
-     H    2    1.070536
-     N    2    1.157553    1  143.976744
+     H    2    1.082982
+     N    2    1.160725    1  121.322658
 Geometry   4/ 12 for iteration   6
      C
-     H    2    1.078305
-     N    2    1.160334    1  126.099563
+     H    2    1.090697
+     N    2    1.154881    1  101.500878
 Geometry   5/ 12 for iteration   6
      C
-     H    2    1.090999
-     N    2    1.158683    1  108.296067
+     H    2    1.120961
+     N    2    1.143902    1   86.222847
 Geometry   6/ 12 for iteration   6
      C
-     H    2    1.129361
-     N    2    1.145771    1   90.756256
+     H    2    1.175120
+     N    2    1.120495    1   67.889128
 Geometry   7/ 12 for iteration   6
      C
-     H    2    1.140811
-     N    2    1.127950    1   72.369259
+     H    2    1.244208
+     N    2    1.118064    1   51.310286
 Geometry   8/ 12 for iteration   6
      C
-     H    2    1.240642
-     N    2    1.117658    1   54.738653
+     H    2    1.541799
+     N    2    1.142014    1   41.202642
 Geometry   9/ 12 for iteration   6
      C
-     H    2    1.520344
-     N    2    1.140403    1   41.980547
+     H    2    1.791261
+     N    2    1.156323    1   31.099898
 Geometry  10/ 12 for iteration   6
      C
-     H    2    1.808699
-     N    2    1.156956    1   30.254154
+     H    2    1.984028
+     N    2    1.160487    1   20.919087
 Geometry  11/ 12 for iteration   6
      C
-     H    2    2.051577
-     N    2    1.161588    1   16.201700
+     H    2    2.111808
+     N    2    1.162586    1   10.439020
 Geometry  12/ 12 for iteration   6
      C
      H    2    2.200000
      N    2    1.160000    1    0.000000
 Geometry   2/ 12 for iteration   7
      C
-     H    2    1.066671
-     N    2    1.154411    1  161.816648
+     H    2    1.069256
+     N    2    1.156787    1  147.427450
 Geometry   3/ 12 for iteration   7
      C
-     H    2    1.070535
-     N    2    1.157553    1  143.976743
+     H    2    1.082902
+     N    2    1.160715    1  121.322288
 Geometry   4/ 12 for iteration   7
      C
-     H    2    1.078312
-     N    2    1.160332    1  126.099577
+     H    2    1.090943
+     N    2    1.154914    1  101.499132
 Geometry   5/ 12 for iteration   7
      C
-     H    2    1.091008
-     N    2    1.158683    1  108.296088
+     H    2    1.116551
+     N    2    1.143232    1   86.200461
 Geometry   6/ 12 for iteration   7
      C
-     H    2    1.110714
-     N    2    1.147378    1   90.644908
+     H    2    1.160246
+     N    2    1.121178    1   67.431902
 Geometry   7/ 12 for iteration   7
      C
-     H    2    1.140284
-     N    2    1.127428    1   72.366301
+     H    2    1.334629
+     N    2    1.124808    1   53.726568
 Geometry   8/ 12 for iteration   7
      C
-     H    2    1.241132
-     N    2    1.117975    1   54.757055
+     H    2    1.541531
+     N    2    1.142115    1   41.173489
 Geometry   9/ 12 for iteration   7
      C
-     H    2    1.520387
-     N    2    1.140147    1   41.982629
+     H    2    1.790919
+     N    2    1.156587    1   31.078314
 Geometry  10/ 12 for iteration   7
      C
-     H    2    1.808616
-     N    2    1.157070    1   30.248646
+     H    2    1.984100
+     N    2    1.160471    1   20.922756
 Geometry  11/ 12 for iteration   7
      C
-     H    2    2.051579
-     N    2    1.161590    1   16.201754
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
- EGrad.f90, L73, IOpt=           7
+     H    2    2.111778
+     N    2    1.162679    1   10.438059
+ Creating Input for Geometry   2/ 12 for iteration   7
+ Computing and reading forces for Geometry   2/ 12 for iteration   7
+ Creating Input for Geometry   3/ 12 for iteration   7
+ Computing and reading forces for Geometry   3/ 12 for iteration   7
+ Creating Input for Geometry   4/ 12 for iteration   7
+ Computing and reading forces for Geometry   4/ 12 for iteration   7
+ Creating Input for Geometry   5/ 12 for iteration   7
+ Computing and reading forces for Geometry   5/ 12 for iteration   7
+ Creating Input for Geometry   6/ 12 for iteration   7
+ Computing and reading forces for Geometry   6/ 12 for iteration   7
+ Creating Input for Geometry   7/ 12 for iteration   7
+ Computing and reading forces for Geometry   7/ 12 for iteration   7
+ Creating Input for Geometry   8/ 12 for iteration   7
+ Computing and reading forces for Geometry   8/ 12 for iteration   7
+ Creating Input for Geometry   9/ 12 for iteration   7
+ Computing and reading forces for Geometry   9/ 12 for iteration   7
+ Creating Input for Geometry  10/ 12 for iteration   7
+ Computing and reading forces for Geometry  10/ 12 for iteration   7
+ Creating Input for Geometry  11/ 12 for iteration   7
+ Computing and reading forces for Geometry  11/ 12 for iteration   7
+  Forces all read. Moving on
 Geometry   1/ 12 for iteration   7
      C
      H    2    1.069000
      N    2    1.160100    1  180.000000
 Geometry   2/ 12 for iteration   7
      C
-     H    2    1.066671
-     N    2    1.154411    1  161.816648
+     H    2    1.069256
+     N    2    1.156787    1  147.427450
 Geometry   3/ 12 for iteration   7
      C
-     H    2    1.070535
-     N    2    1.157553    1  143.976743
+     H    2    1.082902
+     N    2    1.160715    1  121.322288
 Geometry   4/ 12 for iteration   7
      C
-     H    2    1.078312
-     N    2    1.160332    1  126.099577
+     H    2    1.090943
+     N    2    1.154914    1  101.499132
 Geometry   5/ 12 for iteration   7
      C
-     H    2    1.091008
-     N    2    1.158683    1  108.296088
+     H    2    1.116551
+     N    2    1.143232    1   86.200461
 Geometry   6/ 12 for iteration   7
      C
-     H    2    1.110714
-     N    2    1.147378    1   90.644908
+     H    2    1.160246
+     N    2    1.121178    1   67.431902
 Geometry   7/ 12 for iteration   7
      C
-     H    2    1.140284
-     N    2    1.127428    1   72.366301
+     H    2    1.334629
+     N    2    1.124808    1   53.726568
 Geometry   8/ 12 for iteration   7
      C
-     H    2    1.241132
-     N    2    1.117975    1   54.757055
+     H    2    1.541531
+     N    2    1.142115    1   41.173489
 Geometry   9/ 12 for iteration   7
      C
-     H    2    1.520387
-     N    2    1.140147    1   41.982629
+     H    2    1.790919
+     N    2    1.156587    1   31.078314
 Geometry  10/ 12 for iteration   7
      C
-     H    2    1.808616
-     N    2    1.157070    1   30.248646
+     H    2    1.984100
+     N    2    1.160471    1   20.922756
 Geometry  11/ 12 for iteration   7
      C
-     H    2    2.051579
-     N    2    1.161590    1   16.201754
+     H    2    2.111778
+     N    2    1.162679    1   10.438059
 Geometry  12/ 12 for iteration   7
      C
      H    2    2.200000
      N    2    1.160000    1    0.000000
 Geometry   2/ 12 for iteration   8
      C
-     H    2    1.066671
-     N    2    1.154411    1  161.816648
+     H    2    1.069256
+     N    2    1.156787    1  147.427450
 Geometry   3/ 12 for iteration   8
      C
-     H    2    1.070535
-     N    2    1.157553    1  143.976743
+     H    2    1.082911
+     N    2    1.160716    1  121.322331
 Geometry   4/ 12 for iteration   8
      C
-     H    2    1.078312
-     N    2    1.160332    1  126.099577
+     H    2    1.091101
+     N    2    1.154922    1  101.498041
 Geometry   5/ 12 for iteration   8
      C
-     H    2    1.091009
-     N    2    1.158683    1  108.296088
+     H    2    1.115876
+     N    2    1.143062    1   86.197267
 Geometry   6/ 12 for iteration   8
      C
-     H    2    1.110482
-     N    2    1.147451    1   90.643340
+     H    2    1.152369
+     N    2    1.120612    1   67.191888
 Geometry   7/ 12 for iteration   8
      C
-     H    2    1.140414
-     N    2    1.127603    1   72.366867
+     H    2    1.244153
+     N    2    1.118834    1   51.310304
 Geometry   8/ 12 for iteration   8
      C
-     H    2    1.241058
-     N    2    1.118056    1   54.754466
+     H    2    1.541585
+     N    2    1.141980    1   41.178246
 Geometry   9/ 12 for iteration   8
      C
-     H    2    1.520314
-     N    2    1.140278    1   41.976830
+     H    2    1.790862
+     N    2    1.156560    1   31.074589
 Geometry  10/ 12 for iteration   8
      C
-     H    2    1.808617
-     N    2    1.157058    1   30.248698
+     H    2    1.984100
+     N    2    1.160473    1   20.922757
 Geometry  11/ 12 for iteration   8
      C
-     H    2    2.051579
-     N    2    1.161590    1   16.201755
- Exiting Path, IOpt=           8
+     H    2    2.111789
+     N    2    1.162678    1   10.438389
+ Creating Input for Geometry   2/ 12 for iteration   8
+ Computing and reading forces for Geometry   2/ 12 for iteration   8
+ Creating Input for Geometry   3/ 12 for iteration   8
+ Computing and reading forces for Geometry   3/ 12 for iteration   8
+ Creating Input for Geometry   4/ 12 for iteration   8
+ Computing and reading forces for Geometry   4/ 12 for iteration   8
+ Creating Input for Geometry   5/ 12 for iteration   8
+ Computing and reading forces for Geometry   5/ 12 for iteration   8
+ Creating Input for Geometry   6/ 12 for iteration   8
+ Computing and reading forces for Geometry   6/ 12 for iteration   8
+ Creating Input for Geometry   7/ 12 for iteration   8
+ Computing and reading forces for Geometry   7/ 12 for iteration   8
+ Creating Input for Geometry   8/ 12 for iteration   8
+ Computing and reading forces for Geometry   8/ 12 for iteration   8
+ Creating Input for Geometry   9/ 12 for iteration   8
+ Computing and reading forces for Geometry   9/ 12 for iteration   8
+ Creating Input for Geometry  10/ 12 for iteration   8
+ Computing and reading forces for Geometry  10/ 12 for iteration   8
+ Creating Input for Geometry  11/ 12 for iteration   8
+ Computing and reading forces for Geometry  11/ 12 for iteration   8
+  Forces all read. Moving on
+Geometry   1/ 12 for iteration   8
+     C
+     H    2    1.069000
+     N    2    1.160100    1  180.000000
+Geometry   2/ 12 for iteration   8
+     C
+     H    2    1.069256
+     N    2    1.156787    1  147.427450
+Geometry   3/ 12 for iteration   8
+     C
+     H    2    1.082911
+     N    2    1.160716    1  121.322331
+Geometry   4/ 12 for iteration   8
+     C
+     H    2    1.091101
+     N    2    1.154922    1  101.498041
+Geometry   5/ 12 for iteration   8
+     C
+     H    2    1.115876
+     N    2    1.143062    1   86.197267
+Geometry   6/ 12 for iteration   8
+     C
+     H    2    1.152369
+     N    2    1.120612    1   67.191888
+Geometry   7/ 12 for iteration   8
+     C
+     H    2    1.244153
+     N    2    1.118834    1   51.310304
+Geometry   8/ 12 for iteration   8
+     C
+     H    2    1.541585
+     N    2    1.141980    1   41.178246
+Geometry   9/ 12 for iteration   8
+     C
+     H    2    1.790862
+     N    2    1.156560    1   31.074589
+Geometry  10/ 12 for iteration   8
+     C
+     H    2    1.984100
+     N    2    1.160473    1   20.922757
+Geometry  11/ 12 for iteration   8
+     C
+     H    2    2.111789
+     N    2    1.162678    1   10.438389
+Geometry  12/ 12 for iteration   8
+     C
+     H    2    2.200000
+     N    2    1.160000    1    0.000000
+Geometry   2/ 12 for iteration   9
+     C
+     H    2    1.069256
+     N    2    1.156787    1  147.427450
+Geometry   3/ 12 for iteration   9
+     C
+     H    2    1.082910
+     N    2    1.160715    1  121.322326
+Geometry   4/ 12 for iteration   9
+     C
+     H    2    1.091206
+     N    2    1.154927    1  101.497317
+Geometry   5/ 12 for iteration   9
+     C
+     H    2    1.115882
+     N    2    1.143054    1   86.197330
+Geometry   6/ 12 for iteration   9
+     C
+     H    2    1.148527
+     N    2    1.120639    1   67.074129
+Geometry   7/ 12 for iteration   9
+     C
+     H    2    1.334612
+     N    2    1.125056    1   53.726589
+Geometry   8/ 12 for iteration   9
+     C
+     H    2    1.541556
+     N    2    1.142011    1   41.175316
+Geometry   9/ 12 for iteration   9
+     C
+     H    2    1.790856
+     N    2    1.156560    1   31.074205
+Geometry  10/ 12 for iteration   9
+     C
+     H    2    1.984100
+     N    2    1.160473    1   20.922756
+Geometry  11/ 12 for iteration   9
+     C
+     H    2    2.111787
+     N    2    1.162678    1   10.438329
+ Creating Input for Geometry   2/ 12 for iteration   9
+ Computing and reading forces for Geometry   2/ 12 for iteration   9
+ Creating Input for Geometry   3/ 12 for iteration   9
+ Computing and reading forces for Geometry   3/ 12 for iteration   9
+ Creating Input for Geometry   4/ 12 for iteration   9
+ Computing and reading forces for Geometry   4/ 12 for iteration   9
+ Creating Input for Geometry   5/ 12 for iteration   9
+ Computing and reading forces for Geometry   5/ 12 for iteration   9
+ Creating Input for Geometry   6/ 12 for iteration   9
+ Computing and reading forces for Geometry   6/ 12 for iteration   9
+ Creating Input for Geometry   7/ 12 for iteration   9
+ Computing and reading forces for Geometry   7/ 12 for iteration   9
+ Creating Input for Geometry   8/ 12 for iteration   9
+ Computing and reading forces for Geometry   8/ 12 for iteration   9
+ Creating Input for Geometry   9/ 12 for iteration   9
+ Computing and reading forces for Geometry   9/ 12 for iteration   9
+ Creating Input for Geometry  10/ 12 for iteration   9
+ Computing and reading forces for Geometry  10/ 12 for iteration   9
+ Creating Input for Geometry  11/ 12 for iteration   9
+ Computing and reading forces for Geometry  11/ 12 for iteration   9
+  Forces all read. Moving on
+Geometry   1/ 12 for iteration   9
+     C
+     H    2    1.069000
+     N    2    1.160100    1  180.000000
+Geometry   2/ 12 for iteration   9
+     C
+     H    2    1.069256
+     N    2    1.156787    1  147.427450
+Geometry   3/ 12 for iteration   9
+     C
+     H    2    1.082910
+     N    2    1.160715    1  121.322326
+Geometry   4/ 12 for iteration   9
+     C
+     H    2    1.091206
+     N    2    1.154927    1  101.497317
+Geometry   5/ 12 for iteration   9
+     C
+     H    2    1.115882
+     N    2    1.143054    1   86.197330
+Geometry   6/ 12 for iteration   9
+     C
+     H    2    1.148527
+     N    2    1.120639    1   67.074129
+Geometry   7/ 12 for iteration   9
+     C
+     H    2    1.334612
+     N    2    1.125056    1   53.726589
+Geometry   8/ 12 for iteration   9
+     C
+     H    2    1.541556
+     N    2    1.142011    1   41.175316
+Geometry   9/ 12 for iteration   9
+     C
+     H    2    1.790856
+     N    2    1.156560    1   31.074205
+Geometry  10/ 12 for iteration   9
+     C
+     H    2    1.984100
+     N    2    1.160473    1   20.922756
+Geometry  11/ 12 for iteration   9
+     C
+     H    2    2.111787
+     N    2    1.162678    1   10.438329
+Geometry  12/ 12 for iteration   9
+     C
+     H    2    2.200000
+     N    2    1.160000    1    0.000000
+Geometry   2/ 12 for iteration  10
+     C
+     H    2    1.069256
+     N    2    1.156787    1  147.427450
+Geometry   3/ 12 for iteration  10
+     C
+     H    2    1.082910
+     N    2    1.160715    1  121.322327
+Geometry   4/ 12 for iteration  10
+     C
+     H    2    1.091276
+     N    2    1.154930    1  101.496838
+Geometry   5/ 12 for iteration  10
+     C
+     H    2    1.115886
+     N    2    1.143047    1   86.197375
+Geometry   6/ 12 for iteration  10
+     C
+     H    2    1.146372
+     N    2    1.120535    1   67.008335
+Geometry   7/ 12 for iteration  10
+     C
+     H    2    1.244149
+     N    2    1.118892    1   51.310307
+Geometry   8/ 12 for iteration  10
+     C
+     H    2    1.541564
+     N    2    1.141996    1   41.176038
+Geometry   9/ 12 for iteration  10
+     C
+     H    2    1.790855
+     N    2    1.156559    1   31.074152
+Geometry  10/ 12 for iteration  10
+     C
+     H    2    1.984100
+     N    2    1.160473    1   20.922756
+Geometry  11/ 12 for iteration  10
+     C
+     H    2    2.111787
+     N    2    1.162678    1   10.438342
+ Exiting Path, IOpt=          10
Index: examples/Test/Dep_tscan_m
===================================================================
--- examples/Test/Dep_tscan_m	(revision 11)
+++ examples/Test/Dep_tscan_m	(revision 12)
@@ -19,17 +19,42 @@
  echo "File list is missing"
  exit
 fi
+
+if [ -s ${Nom}_cart.0 ]; then
+ Ext=_cart
+elif [ -s ${Nom}.0 ]; then
+ Ext=""
+else
+ echo "Cannot find ${Nom}.0 nor ${Nom}_cart.0 -- ERROR"
+ exit
+fi
+
 awk -f $WDir/Dep_tgt.awk $Fout 
 cat <<EOF > $NomGplot
 #!/usr/bin/gnuplot -persist
  set pointsize 2
  unset key
 EOF
-let ItM=ItMax-2
+
+let ItM=ItMax-1
 for i in `seq 0 $ItM`
   do
- xyz2scan ${Nom}_cart.${i} > /dev/null
+ xyz2scan ${Nom}${Ext}.${i} > /dev/null
  mv Scan.dat ${Nom}_${i}.dat
+
+if [ "$Ext" = "" ]; then
+# We are analysing a calculation done in cartesian. 
+# We have to  analyse the spline file and maybe also the tangent file.
+ if [ -s ${Nom}_spline.${i} ]; then
+   xyz2scan ${Nom}_spline.${i}  > /dev/null
+   mv Scan.dat  ${Nom}_spline_${i}.dat
+ fi
+ if [  -s ${Nom}_dbgtgt.${i} ]; then
+   xyz2scan ${Nom}_dbgtgt.${i}  > /dev/null
+   mv Scan.dat  ${Nom}_dbgtgt_${i}.dat
+ fi
+fi
+  
  cat <<EOF >>  $NomGplot
  set multiplot
  set origin 0.,0.
@@ -40,7 +65,11 @@
  plot "HCN_irc.dat" u 1:3 w l ls 1
 EOF
  if [ "$PES" != "" ]; then
-  echo "replot \"HCN_PES_2D.dat\" u 1:2 t \"\" w l ls 2, \"HCN_PES_2D.dat\" u 1:(-\$2) t \"\"  w l ls 2,\"HCN_PES_2D.dat\" u 1:(360-\$2) t \"\"  w l ls 2" >> $NomGplot
+cat <<EOF  >>  $NomGplot
+replot "HCN_PES_2D.dat" u 1:2 t "" w l ls 2, \
+ "HCN_PES_2D.dat" u 1:(-\$2) t ""  w l ls 2,\
+ "HCN_PES_2D.dat" u 1:(360-\$2) t ""  w l ls 2
+EOF
  fi
  if [ -s ${Nom}_spline.${i} ]; then
  echo "replot \"${Nom}_${i}.dat\" u 1:3 w p ls 5" >> $NomGplot
@@ -59,46 +88,15 @@
 # set size 0.5,1.
  clear
  set yrange $yr
- set xrange [-10:190]
+ set xrange [-5:185]
+ plot "HCN_irc.dat" u 3:4 t "IRC" w l ls 1
 EOF
- echo "plot \"${Nom}_${i}.dat\" u 3:4 t \"E\" w lp ls 1" >> $NomGplot
+ echo "plot \"${Nom}_${i}.dat\" u 3:4 t \"E\" w lp ls 5" >> $NomGplot
  echo "unset multiplot" >> $NomGplot
  echo "pause -1" >> $NomGplot
  done
-let i=ItMax-1
- xyz2scan ${Nom}_cart.${i} > /dev/null
- mv Scan.dat ${Nom}_${i}.dat
- cat <<EOF >>  $NomGplot
- set multiplot
- set origin 0.,0.
-# set size 0.5,1.
- clear
- set xrange [1.:2.5]
- set yrange [-10:190]
- plot "HCN_irc.dat" u 1:3 t "IRC" w l ls 1
-EOF
- if [ "$PES" != "" ]; then
-  echo "replot \"HCN_PES_2D.dat\" u 1:2 t \"\" w l ls 2, \"HCN_PES_2D.dat\" u 1:(-\$2) t \"\" w l ls 2,\"HCN_PES_2D.dat\" u 1:(360-\$2) t \"\" w l ls 2" >> $NomGplot
- fi
- if [ -s ${Nom}_spline.${i} ]; then
- echo "replot \"${Nom}_${i}.dat\" u 1:3 w p ls 5" >> $NomGplot
- echo "replot \"${Nom}_spline.${i}\" u 2:4 w l ls 5" >> $NomGplot
- elif [  -s ${Nom}_dbgtgt_${i}.dat ]; then
- echo "replot \"${Nom}_${i}.dat\" u 1:3 w lp ls 5" >> $NomGplot
- echo "replot \"${Nom}_dbgtgt_${i}.dat\" u 2:(\$4*180./pi) w l ls 4" >> $NomGplot
- else
- echo "replot \"${Nom}_${i}.dat\" u 1:3 w lp ls 5" >> $NomGplot
-fi
- cat <<EOF >>  $NomGplot
- set origin .505,0.
-# set size  0.5,1.
- clear
- set yrange $yr
- set xrange [-10:190]
-EOF
- echo "plot \"${Nom}_${i}.dat\" u 3:4 t \"E\" w lp ls 1" >> $NomGplot
- echo "unset multiplot" >> $NomGplot
- echo "pause -1" >> $NomGplot
 
 chmod u+x ./$NomGplot
 echo "./$NomGplot      to see the path"
+
+
