! **********************************************************************
      SUBROUTINE rad_transdat
! **********************************************************************
! Purpose: Reread gfXX.?? files to obtain radiation transport data
! 
      use mac_commons
      use gms

      implicit real*8 (a-h,o-z)
      character(len=100),external::dir
      icnt=0
      j=1 ! ionization stage 1=I,2=II,etc
   42 continue
      cauxdr=fname_gf(j)
      cauxdr=dir(workdir,cauxdr)
      open(unit=21,file=cauxdr)
      read(21,*)
      read(21,*)
   45 continue
!  icat2 > icat1
         read(21,902,end=50) rl,e,ggf,rloggf,fa,fe,aa,ae,rlifet,icat1,icat2
         indx1 = iquery(icat1,j)
         indx2 = iquery(icat2,j)
         if((indx1.gt.0).and.(indx2.gt.0))then
             if(me.eq.0)then
               e=(energy(indx2+(igrounds(j)-1))) - (energy(indx1+(igrounds(j)-1)))
             endif 
             if((e.lt.hnu1).or.(e.gt.hnu2)) goto 45
             indx1glob = indx1+(igrounds(j)-1)
             indx2glob = indx2+(igrounds(j)-1)
             icnt=icnt+1
             call einsteinb(aa,e,indx1glob,indx2glob,b_stmemm,b_phtabs)
             radat(icnt,1)=rl
             radat(icnt,2)=e
             radat(icnt,3)=aa
             radat(icnt,4)=b_stmemm
             radat(icnt,5)=b_phtabs
             radat(icnt,6)=indx1glob
             radat(icnt,7)=indx2glob           
         else
         goto 45
         endif
      goto 45
   50 continue
      close(21)
      j=j+1
      if(j.eq.(ngf+1)) goto 55
      goto 42
   55 continue
      iradat=icnt
! -------------------------------------------------------------
! DIAGNOSTICS:

      if(idiag(47).eq.0)goto 90

      do ii=1,icnt
       write(47,901)(radat(ii,j), j=1,7)
      enddo  
      close(47)      
90    continue 
902   FORMAT( 9(1x,E11.5), 2(i7))
901   FORMAT( 2x,1e11.5,2x,F11.2,2x,3(2x,e11.5),2(2x,f7.1))
      END SUBROUTINE RAD_TRANSDAT
