       function index6(orb,at)
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! Fonction index modifiee
! index(orb,at)=0  ==>  index6(orb,at)=0

! index(orb,at)=i/=0
! alors orb='---at----'
! 1. dans 'at-', '-' est un chiffre : index6(orb,at)=index(orb,at)
! 2. index6(orb,at)=0 sinon

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
      IMPLICIT REAL(8)(A-H,O-X,Z),logical(1)(y)
      character(*) orb,at
      l=len_trim(at)
      ! si at==orb, les tests ne marchent pas. on a index6=1
      if(l==len_trim(orb)) then
         if(at==orb) then
            index6=1
            return  
         endif   
      endif   
!
      i=index(orb,at(1:l))
      if(i==0) then
         index6=0
         return
      else
!        on a le schema :
!                               ---at----
!                                  | |
!                                  i i+l
         index6=i
         do k=1,len_trim(orb)
            if(k==i) cycle
            if(ichar(orb(k:k))>47.and.ichar(orb(k:k))<58) then
               cycle
            else
               index6=0
               exit
            endif
         enddo
      endif
      return
      end
