       subroutine calt69(temp,m,dtype69,gamma)
c
c   Takes coefficients in data type 69 and returns effective collision
c    strenghts for He-like ions according to Kato & Nakazaki (1989)
c    eq. (6). m is the dimension of dtype69
c      author: M. Bautista
c
       implicit none
c
       integer m
       real dtype69(m),gamma,temp,eboltz,dele,y
       real a,b,c,d,e,p,q,x1,em1,gnr,gr
c
       eboltz=1.160443e+04
       dele=dtype69(1)
       y=dele/temp*eboltz
c
       if (y.lt.1.e-20) then
        print*,'error in calt69. y too low. y=',y
        stop
       endif
       if (y.gt.1.e+20) then
        gamma=0.
        return
       endif
c
       if (y.gt.77.) y=77.
       if (y.lt.5.e-2) y=5.e-2
       call expint(y,em1)
       a=dtype69(2)
       b=dtype69(3)
       c=dtype69(4)
       d=dtype69(5)
       e=dtype69(6)
       if (m.eq.6) then
        gamma=y*((a/y+c)+d*.5*(1.-y))+em1*(b-c*y+d*y*y*.5+e/y)
c        write(2,*)temp,y,em1,gamma
       else
        p=dtype69(7)
        q=dtype69(8)
        x1=dtype69(9)
        call expint(y*x1,em1)
        gnr=a/y+c/x1+d*.5*(1./x1/x1-y/x1)+e/y*log(x1)+
     #   em1/y/x1*(b-c*y+d*y*y*.5+e/y)
        gnr=gnr*y*exp(y*(1.-x1))
        gr=p*(1.+1./y)*(1.-exp(y*(1.-x1))*(x1+1/y)/(1.+1./y)) +
     #     q*(1.-exp(y*(1.-x1)))
        gamma=gnr+gr
       endif
c
      return
      end
