e_excit_1_2_janev Function

public function e_excit_1_2_janev(eb) result(sigma)

Calculates cross section for a electron-Hydrogen impact excitation transition from the state to the state at energy eb

Equation

References

Arguments

Type IntentOptional AttributesName
real(kind=Float64), intent(in) :: eb

Collision energy [keV]

Return Value real(kind=Float64)

Cross Section []


Called by

proc~~e_excit_1_2_janev~~CalledByGraph proc~e_excit_1_2_janev e_excit_1_2_janev proc~e_excit_1_janev e_excit_1_janev proc~e_excit_1_janev->proc~e_excit_1_2_janev proc~e_excit_n e_excit_n proc~e_excit_n->proc~e_excit_1_janev proc~e_excit_n_m e_excit_n_m proc~e_excit_n_m->proc~e_excit_n proc~e_excit e_excit proc~e_excit->proc~e_excit_n proc~write_bb_h_e write_bb_H_e proc~write_bb_h_e->proc~e_excit program~generate_tables generate_tables program~generate_tables->proc~write_bb_h_e

Contents

Source Code


Source Code

function e_excit_1_2_janev(eb) result(sigma)
    !+Calculates cross section for a electron-Hydrogen impact excitation transition from
    !+the \(n=1\) state to the \(m=2\) state at energy `eb`
    !+
    !+###Equation
    !+$$ e + H(1) \rightarrow e + H(2) $$
    !+
    !+###References
    !+* Eq. 4 and Table 1 in Ref. 2 [[atomic_tables(module)]]
    !+
    real(Float64), intent(in) :: eb
        !+ Collision energy [keV]
    real(Float64)             :: sigma
        !+ Cross Section [\(cm^2\)]

    real(Float64), parameter :: sigma0=5.984d0
    real(Float64), parameter :: deltaE=10.2d0
    real(Float64), parameter :: a=0.228d0
        !+ Fitting parameter from Table 2 in Ref. 2
    real(Float64), parameter :: b=0.1865d0
        !+ Fitting paramter from Table 2 in Ref. 2
    real(Float64), parameter :: c=0.5025d0
        !+ Fitting paramter from Table 2 in Ref. 2
    real(Float64), dimension(6), parameter :: An = [ 4.4979d0, 1.4182d0, &
                                                    -20.877d0, 49.735d0, &
                                                    -46.249d0, 17.442d0 ]
        !+ Fitting parameters from Table 2 in Ref. 2

    real(Float64) :: ecoll, x, s

    ecoll = eb*1.d3
    x = (ecoll)/deltaE

    if((ecoll.gt.10.2).and.(ecoll.le.11.56)) then
        sigma = 1.d-16 * (a + b*(ecoll - deltaE))
        return
    endif

    if((ecoll.ge.11.56).and.(ecoll.le.12.23)) then
        sigma = 1.d-16 * c
        return
    endif

    if(ecoll.ge.12.23) then
        s = An(2) + An(3)/x + An(4)/x**2.0 + An(5)/x**3.0 + An(6)/x**4.0
        sigma = 1.d-16 * sigma0/(deltaE*x) * (An(1)*log(x) + s)
        return
    endif

    if(x.le.1.0) then
        sigma = 0.0
        return
    endif

end function e_excit_1_2_janev