SpectraRust/tlusty/extracted/crossd.f
2026-03-19 14:05:33 +08:00

32 lines
813 B
Fortran

FUNCTION CROSSD(IBFT,IJ,ID)
C ===========================
C
C Evaluation of the photoionization cross-section
C IBF - index ot the b-f transition
C IJ - frequency index
C
INCLUDE 'IMPLIC.FOR'
INCLUDE 'BASICS.FOR'
INCLUDE 'ATOMIC.FOR'
INCLUDE 'MODELQ.FOR'
C
IJ0=IJBF(IJ)
A1=AIJBF(IJ)
CROSSD=A1*BFCS(IBFT,IJ0)+(UN-A1)*BFCS(IBFT,IJ0+1)
c
c contribution from dielectronic recombination
c
if(ifdiel.eq.0) return
ITR=ITRBF(IBFT)
if(idiel(itr).gt.0.and.id.gt.0) then
i=ilow(itr)
ion=iel(i)
if(i.eq.nfirst(ion).and.iup(itr).eq.nnext(ion)) then
if(freq(ij).ge.fr0(itr).and.freq(ij).le.fr0(itr)*1.1)
* crossd=crossd+diesig(ion,id)
end if
end if
c
RETURN
END