Calculates cross section for a proton-Hydrogen charge exchange interaction
from the n
state to the m
state at energy Erel
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=Float64), | intent(in) | :: | Erel | Relative collision energy [keV/amu] |
||
integer, | intent(in) | :: | n | Initial atomic energy level/state |
||
integer, | intent(in) | :: | m | Final atomic energy level/state |
Cross Section []
function p_cx_n_m(Erel, n, m) result(sigma)
!+Calculates cross section for a proton-Hydrogen charge exchange interaction
!+from the `n` state to the `m` state at energy `Erel`
!+
!+###Equation
!+ $$H^+ + H(n) \rightarrow H(m) + H^+$$
!+###References
!+* Ref. 2 [[atomic_tables(module)]]
!+* Ref. 4 [[atomic_tables(module)]]
!+* Ref. 8 [[atomic_tables(module)]]
real(Float64), intent(in) :: Erel
!+ Relative collision energy [keV/amu]
integer, intent(in) :: n
!+ Initial atomic energy level/state
integer, intent(in) :: m
!+ Final atomic energy level/state
real(Float64) :: sigma
!+ Cross Section [\(cm^2\)]
integer :: m_max = 12
real(Float64), dimension(12) :: sigma_m
sigma_m = p_cx_n(Erel, n, m_max)
if(m.le.0) then
sigma = sum(sigma_m)
else
sigma = sigma_m(m)
endif
end function p_cx_n_m