p_cx_n_janev Function

public function p_cx_n_janev(Erel, n) result(sigma)

Calculates cross section for proton-Hydrogen charge exchange interactions from the state at energy Erel

Equation

References

Arguments

TypeIntentOptionalAttributesName
real(kind=Float64), intent(in) :: Erel

Relative collision energy [keV/amu]

integer, intent(in) :: n

Initial atomic energy level/state

Return Value real(kind=Float64)

Cross Section []


Called by

proc~~p_cx_n_janev~~CalledByGraph proc~p_cx_n_janev p_cx_n_janev proc~p_cx_janev p_cx_janev proc~p_cx_janev->proc~p_cx_n_janev proc~p_cx_1 p_cx_1 proc~p_cx_1->proc~p_cx_janev proc~p_cx_2 p_cx_2 proc~p_cx_2->proc~p_cx_janev proc~p_cx_3 p_cx_3 proc~p_cx_3->proc~p_cx_janev proc~p_cx_3->proc~p_cx_1 proc~p_cx_n p_cx_n proc~p_cx_n->proc~p_cx_janev proc~p_cx_n->proc~p_cx_1 proc~p_cx_n->proc~p_cx_2 proc~p_cx_n->proc~p_cx_3 proc~p_cx_n_m p_cx_n_m proc~p_cx_n_m->proc~p_cx_n proc~p_cx p_cx proc~p_cx->proc~p_cx_n proc~write_bb_h_h write_bb_H_H proc~write_bb_h_h->proc~p_cx program~generate_tables generate_tables program~generate_tables->proc~write_bb_h_h

Contents

Source Code


Source Code

function p_cx_n_janev(Erel, n) result(sigma)
    !+Calculates cross section for proton-Hydrogen charge exchange interactions from the \(n \geq 4\) state at energy `Erel`
    !+
    !+###Equation
    !+ $$H^+ + H(n \geq 4) \rightarrow H(\forall m) + H^+$$
    !+###References
    !+* Eq. 44 and Table 9 in Ref. 2 [[atomic_tables(module)]]
    !+
    real(Float64), intent(in) :: Erel
        !+ Relative collision energy [keV/amu]
    integer, intent(in)       :: n
        !+ Initial atomic energy level/state
    real(Float64)             :: sigma
        !+ Cross Section [\(cm^2\)]
    real(Float64), dimension(6), parameter :: a = [2.1336d-1, 1.0000d10, 1.3426d6, &
                                                   1.8184d-3, 3.0842d-6, 1.1832d-10 ]
        !+ Fitting Parameters from Table 9 in Ref. 2

    real(Float64) :: Ehat

    if(n.lt.4) then
        write(*,'(a)') "P_CX_N_JANEV: n cannot be less than 4"
        stop
    endif

    Ehat = Erel * n**2.0
    sigma = (1.d-16*a(1)*(n**4))*log(a(2)/Ehat + a(3)) / &
            (1.d0+a(4)*Ehat + a(5)*Ehat**(3.5) + a(6)*Ehat**(5.4))

end function p_cx_n_janev