Calculates the total charge exchange cross section for a Neutral Hydrogen atom
in the n
state colliding with a ion with charge q
at energy eb
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=Float64), | intent(in) | :: | eb | Relative collision energy [keV/amu] |
||
integer, | intent(in) | :: | q | Ion charge |
||
integer, | intent(in) | :: | n | Initial atomic energy level/state |
Cross Section []
function Aq_cx_n_janev(eb, q, n) result(sigma)
!+ Calculates the total charge exchange cross section for a Neutral Hydrogen atom
!+in the `n` state colliding with a ion with charge `q` at energy `eb`
!+
!+###Equation
!+$$ A^{q+} + H(n) \rightarrow A^{(q-1)+} + H^+, q \gt 3 $$
!+
!+###References
!+* Page 166 in Ref. 5 [[atomic_tables(module)]]
!+* Page 168 in Ref. 5 [[atomic_tables(module)]]
!+* Page 174 in Ref. 5 [[atomic_tables(module)]]
real(Float64), intent(in) :: eb
!+ Relative collision energy [keV/amu]
integer, intent(in) :: q
!+ Ion charge
integer, intent(in) :: n
!+ Initial atomic energy level/state
real(Float64) :: sigma
!+ Cross Section [\(cm^2\)]
real(Float64), parameter :: A = 1.507d5
real(Float64), parameter :: B = 1.974d-5
real(Float64) :: etil, nf, qf
nf = real(n)
qf = real(q)
if((n.eq.1).and.(q.eq.5)) then
sigma = B5_cx_1_janev(eb)
return
endif
if((n.eq.1).and.(q.eq.6)) then
sigma = C6_cx_1_janev(eb)
return
endif
if(n.le.1) then
sigma = 0.d0
return
endif
etil = eb*(nf**2.0)/(qf**0.5)
sigma = qf*nf**4 * 7.04d-16 * A/(etil**3.5 * (1.0 + B*etil**2)) * &
(1.0 - exp(-2.0*etil**3.5 * (1.0 + B*etil**2)/(3.0*A)))
end function Aq_cx_n_janev