Calculates an array of the excitation cross sections for a neutral Hydrogen atom transitioning from
the n
state to the m=1..m_max
states due to a collision an ion with charge q
at energy eb
Uses specialized cross sections if available else uses generic cross sections
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=Float64), | intent(in) | :: | eb | Collision energy [keV] |
||
integer, | intent(in) | :: | q | Ion charge |
||
integer, | intent(in) | :: | n | Initial atomic energy level/state |
||
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 n
state to the m'th state []
function Aq_excit_n(eb, q, n, m_max) result(sigma)
!+Calculates an array of the excitation cross sections for a neutral Hydrogen atom transitioning from
!+the `n` state to the m=1..`m_max` states due to a collision an ion with charge `q` at energy `eb`
!+
!+@note Uses specialized cross sections if available else uses generic cross sections
!+
!+###Equation
!+$$ A^{q+} + H(n) \rightarrow A^{q+} + H(m=1..m_{max}), q \gt 3, m \gt n, n \gt 3 $$
!+
!+###References
!+* Page 132 in Ref. 5 [[atomic_tables(module)]]
!+* Page 134 in Ref. 5 [[atomic_tables(module)]]
!+* Page 136 in Ref. 5 [[atomic_tables(module)]]
!+* Page 138 in Ref. 5 [[atomic_tables(module)]]
!+* Page 140 in Ref. 5 [[atomic_tables(module)]]
!+* Page 142 in Ref. 5 [[atomic_tables(module)]]
!+* Page 142 in Ref. 5 [[atomic_tables(module)]]
!+* Page 144 in Ref. 5 [[atomic_tables(module)]]
!+* Page 146 in Ref. 5 [[atomic_tables(module)]]
!+
real(Float64), intent(in) :: eb
!+ Collision energy [keV]
integer, intent(in) :: q
!+ Ion charge
integer, intent(in) :: n
!+ Initial atomic energy level/state
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` state to the m'th state [\(cm^2\)]
select case (n)
case (0)
stop
case (1)
sigma = Aq_excit_1_janev(eb, q, m_max)
case (2)
sigma = Aq_excit_2_janev(eb, q, m_max)
case (3)
sigma = Aq_excit_3_janev(eb, q, m_max)
case DEFAULT
sigma = Aq_excit_n_janev(eb, q, n, m_max)
end select
end function Aq_excit_n