        function xcross(e0)
C enter eo in eV
C return photoionization cross section from Morrison and McCammon
C                                           1983, ApJ, 270,119
        dimension c0(14),c1(14),c2(14)
        data c0/17.3,34.6,78.1,71.4,95.5,308.9,120.6,141.3,
     +       202.7,342.7,352.2,433.9,629.0,701.2/
        data c1/608.1,267.9,18.8,66.8,145.8,-380.6,169.3,
     +       146.8,104.7,18.7,18.7,-2.4,30.9,25.2/
        data c2/-2150.0,-476.1,4.3,-51.4,-61.1,294.0,-47.7,
     +       -31.5,-17.0,0.0,0.0,0.75,0.0,0.0/
        e0 = e0/1.0e3
        if(e0.lt.0.030.or.e0.ge.10.00)then
           write(6,*)'eo out of bounds'
           stop
         end if
        if(e0.ge.0.030.and.e0.lt.0.100)ie = 1
        if(e0.ge.0.100.and.e0.lt.0.284)ie = 2
        if(e0.ge.0.284.and.e0.lt.0.400)ie = 3
        if(e0.ge.0.400.and.e0.lt.0.532)ie = 4
        if(e0.ge.0.532.and.e0.lt.0.707)ie = 5
        if(e0.ge.0.707.and.e0.lt.0.867)ie = 6
        if(e0.ge.0.867.and.e0.lt.1.303)ie = 7
        if(e0.ge.1.303.and.e0.lt.1.840)ie = 8
        if(e0.ge.1.840.and.e0.lt.2.471)ie = 9
        if(e0.ge.2.471.and.e0.lt.3.210)ie = 10
        if(e0.ge.3.210.and.e0.lt.4.038)ie = 11
        if(e0.ge.4.038.and.e0.lt.7.111)ie = 12
        if(e0.ge.7.111.and.e0.lt.8.331)ie = 13
        if(e0.ge.8.331.and.e0.lt.10.000)ie = 14
        xcross = (c0(ie)+c1(ie)*e0+c2(ie)*e0**2)/e0**3*1.0E-24
        return
        end
