Aq_excit_n Function

public 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

Equation

References

Arguments

Type IntentOptional AttributesName
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

Return Value real(kind=Float64), dimension(m_max)

Array of cross sections where the m'th index refers to an excitation from the n state to the m'th state []


Calls

proc~~aq_excit_n~~CallsGraph proc~aq_excit_n Aq_excit_n proc~aq_excit_n_janev Aq_excit_n_janev proc~aq_excit_n->proc~aq_excit_n_janev proc~aq_excit_1_janev Aq_excit_1_janev proc~aq_excit_n->proc~aq_excit_1_janev proc~aq_excit_3_janev Aq_excit_3_janev proc~aq_excit_n->proc~aq_excit_3_janev proc~aq_excit_2_janev Aq_excit_2_janev proc~aq_excit_n->proc~aq_excit_2_janev proc~aq_excit_1_5_janev Aq_excit_1_5_janev proc~aq_excit_1_janev->proc~aq_excit_1_5_janev proc~aq_excit_1_4_janev Aq_excit_1_4_janev proc~aq_excit_1_janev->proc~aq_excit_1_4_janev proc~aq_excit_1_2_janev Aq_excit_1_2_janev proc~aq_excit_1_janev->proc~aq_excit_1_2_janev proc~aq_excit_1_3_janev Aq_excit_1_3_janev proc~aq_excit_1_janev->proc~aq_excit_1_3_janev proc~aq_excit_3_9_janev Aq_excit_3_9_janev proc~aq_excit_3_janev->proc~aq_excit_3_9_janev proc~aq_excit_3_7_janev Aq_excit_3_7_janev proc~aq_excit_3_janev->proc~aq_excit_3_7_janev proc~aq_excit_3_6_janev Aq_excit_3_6_janev proc~aq_excit_3_janev->proc~aq_excit_3_6_janev proc~aq_excit_3_8_janev Aq_excit_3_8_janev proc~aq_excit_3_janev->proc~aq_excit_3_8_janev proc~aq_excit_3_4_janev Aq_excit_3_4_janev proc~aq_excit_3_janev->proc~aq_excit_3_4_janev proc~aq_excit_3_10_janev Aq_excit_3_10_janev proc~aq_excit_3_janev->proc~aq_excit_3_10_janev proc~aq_excit_3_5_janev Aq_excit_3_5_janev proc~aq_excit_3_janev->proc~aq_excit_3_5_janev proc~aq_excit_2_4_janev Aq_excit_2_4_janev proc~aq_excit_2_janev->proc~aq_excit_2_4_janev proc~aq_excit_2_9_janev Aq_excit_2_9_janev proc~aq_excit_2_janev->proc~aq_excit_2_9_janev proc~aq_excit_2_10_janev Aq_excit_2_10_janev proc~aq_excit_2_janev->proc~aq_excit_2_10_janev proc~aq_excit_2_6_janev Aq_excit_2_6_janev proc~aq_excit_2_janev->proc~aq_excit_2_6_janev proc~aq_excit_2_3_janev Aq_excit_2_3_janev proc~aq_excit_2_janev->proc~aq_excit_2_3_janev proc~aq_excit_2_5_janev Aq_excit_2_5_janev proc~aq_excit_2_janev->proc~aq_excit_2_5_janev proc~aq_excit_2_8_janev Aq_excit_2_8_janev proc~aq_excit_2_janev->proc~aq_excit_2_8_janev proc~aq_excit_2_7_janev Aq_excit_2_7_janev proc~aq_excit_2_janev->proc~aq_excit_2_7_janev proc~aq_excit_3_9_janev->proc~aq_excit_3_6_janev proc~aq_excit_2_9_janev->proc~aq_excit_2_5_janev proc~aq_excit_3_7_janev->proc~aq_excit_3_6_janev proc~aq_excit_2_10_janev->proc~aq_excit_2_5_janev proc~aq_excit_3_8_janev->proc~aq_excit_3_6_janev proc~aq_excit_2_6_janev->proc~aq_excit_2_5_janev proc~aq_excit_3_10_janev->proc~aq_excit_3_6_janev proc~aq_excit_2_8_janev->proc~aq_excit_2_5_janev proc~aq_excit_2_7_janev->proc~aq_excit_2_5_janev

Called by

proc~~aq_excit_n~~CalledByGraph proc~aq_excit_n Aq_excit_n proc~aq_excit Aq_excit proc~aq_excit->proc~aq_excit_n proc~aq_excit_n_m Aq_excit_n_m proc~aq_excit_n_m->proc~aq_excit_n proc~write_bb_h_aq write_bb_H_Aq proc~write_bb_h_aq->proc~aq_excit program~generate_tables generate_tables program~generate_tables->proc~write_bb_h_aq

Contents

Source Code


Source Code

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