Calculates an array of the excitation cross sections for a neutral Hydrogen atom transitioning from
the state to the m=1..m_max
states due to a collision an ion with charge q
at energy eb
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=Float64), | intent(in) | :: | eb | Collision energy [keV] |
||
integer, | intent(in) | :: | q | Ion charge |
||
integer, | intent(in) | :: | m_max | Number of m states to calculate |
Array of cross sections where the m'th index refers to an excitation from the state to the m'th state []
function Aq_excit_2_janev(eb, q, m_max) result(sigma)
!+Calculates an array of the excitation cross sections for a neutral Hydrogen atom transitioning from
!+the \(n=2\) state to the m=1..`m_max` states due to a collision an ion with charge `q` at energy `eb`
!+
!+###Equation
!+$$ A^{q+} + H(2) \rightarrow A^{q+} + H(m=1..m_{max}), q \gt 4, m \gt n $$
!+
!+###References
!+* Page 138 in Ref. 5 [[atomic_tables(module)]]
!+* Page 140 in Ref. 5 [[atomic_tables(module)]]
!+
real(Float64), intent(in) :: eb
!+ Collision energy [keV]
integer, intent(in) :: q
!+ Ion charge
integer, intent(in) :: m_max
!+ Number of m states to calculate
real(Float64), dimension(m_max) :: sigma
!+ Array of cross sections where the m'th index refers to
!+an excitation from the \(n=2\) state to the m'th state [\(cm^2\)]
integer :: m
sigma = 0.d0
do m=1,m_max
select case (m)
case (1)
sigma(1) = 0.d0
case (2)
sigma(2) = 0.d0
case (3)
sigma(3) = Aq_excit_2_3_janev(eb, q)
case (4)
sigma(4) = Aq_excit_2_4_janev(eb, q)
case (5)
sigma(5) = Aq_excit_2_5_janev(eb, q)
case (6)
sigma(6) = Aq_excit_2_6_janev(eb, q)
case (7)
sigma(7) = Aq_excit_2_7_janev(eb, q)
case (8)
sigma(8) = Aq_excit_2_8_janev(eb, q)
case (9)
sigma(9) = Aq_excit_2_9_janev(eb, q)
case (10)
sigma(10) = Aq_excit_2_10_janev(eb, q)
case DEFAULT
sigma(m) = sigma(10)*(10.0/m)**3.0
end select
enddo
end function Aq_excit_2_janev