Fit Function: h_eex_johnson

Fit Function \[\begin{align*} \sigma_{ex}^{n>2 \rightarrow m>n}(E) &= \frac{1.76 \times 10^{-16}A_1^2I}{A_3E} \Bigg[ 1 - e^{-A_3A_4 \frac{E}{I}} \Bigg] \\ & \Bigg[A_5 \bigg(\ln\bigg(\frac{E}{I}\bigg) + \frac{I}{2E}\bigg) + \bigg(A_6 - A_5\ln\frac{2A_1^2}{A_3}\bigg)\bigg(1 - \frac{I}{E} \bigg) \Bigg] \end{align*}\]
Comments Python code requires NumPy imported as `np`.

Python

Arguments
namedescriptionunitstype(s)
E impact energy eV float, np.ndarray
A1 fit coefficient float
A2 fit coefficient float
A3 fit coefficient float
A4 fit coefficient cm2 float
A5 fit coefficient cm2 float
A6 fit coefficient cm2 float
I threshold energy eV float
Return values
namedescriptionunitstype(s)
sigma cross section cm2 float, np.ndarray
Code
def h_eex_johnson(E, A1, A2, A3, A4, A5, A6, I):
    """
    This function calculates electron impact excitation cross sections (in cm2) of 
    H n > 2 to m > n , with exception of n=2 to n=3.
    param E: requested electron-impact energy in eV
    type E: float, np.ndarray
    param Ai: fit coefficient 
    type Ai: float
    param I: threshold energy in eV
    type I: float
    """
    sigma = 1.76e-16*A1**2/(A3*E/I)*(1-np.exp(-1*A3*A4*E/I)) * (A5*(np.log(E/I)+1/(2*E/I)) + 
                    (A6-A5 * np.log(2*A1**2/A3))*(1-1/(E/I)))
    return sigma