rizer.kinetics.reaction_rate#
Electron-impact reaction rate constants and EEDF-derived quantities.
Functions#
|
Return the Maxwellian distribution function in energy for a given temperature. |
Return the Druyvesteyn distribution function in energy for a given temperature. |
|
Return the electronic reaction rate constant for a given electron temperature. |
|
|
Return the electronic reaction rate constant for a given electron temperature. |
Return the electronic reaction rate constant of a two-body electronic reaction. |
|
|
Return an energy grid for a given temperature. |
Module Contents#
- rizer.kinetics.reaction_rate.maxwellian_distribution_function_in_energy(T: float, energies: numpy.ndarray) numpy.ndarray#
Return the Maxwellian distribution function in energy for a given temperature.
- Parameters:
T (
float) – Temperature [K]energies (
numpy.ndarray) – Energy values [J]
- Returns:
Maxwellian distribution function in energy [J^-1]
- Return type:
Notes
The Maxwellian distribution function in energy is given by equation 9 in [WikiMaxwellBoltzmannDistribution]:
\[f(E) = 2 \sqrt{\frac{E}{\pi}} \left(\frac{1}{k_B T}\right)^{3/2} \exp\left(-\frac{E}{k_B T}\right)\]with:
\(E\) the energy,
\(k_B\) the Boltzmann constant,
\(T\) the temperature.
- rizer.kinetics.reaction_rate.druyvesteyn_distribution_function_in_energy(T: float, energies: numpy.ndarray) numpy.ndarray#
Return the Druyvesteyn distribution function in energy for a given temperature.
- Parameters:
T (
float) – Temperature [K]energies (
numpy.ndarray) – Energy values [J]
- Returns:
Druyvesteyn distribution function in energy [J^-1]
- Return type:
Notes
The Druyvesteyn distribution function in energy is given by Eq.2.1 of [Amemiya2012]:
\[F_D(E) = \frac{4 \pi}{m} \sqrt{\frac{2 E}{m}} \frac{a}{\pi\left(\frac{2 E_m}{m}\right)^{3 / 2}} \cdot \exp \left(-b \frac{E^2}{E_m^2}\right) = 2a \frac{E^\frac{1}{2}}{E_m^\frac{3}{2}} \exp \left(-b \frac{E^2}{E_m^2}\right)\]with:
\(a = \frac{\Gamma\left(\frac{5}{4}\right)^{3/2}}{\Gamma\left(\frac{3}{4}\right)^{5/2}}\)
\(b = \frac{\Gamma\left(\frac{5}{4}\right)^2}{\Gamma\left(\frac{3}{4}\right)^2}\)
\(E_m = \frac{3}{2} k_B T\) the mean electron energy,
\(\Gamma(x)\) the Gamma function.
- rizer.kinetics.reaction_rate.compute_electronic_reaction_rate_constant(T: float, cross_section: numpy.ndarray, energies: numpy.ndarray) float#
Return the electronic reaction rate constant for a given electron temperature.
The reaction rate constant is computed, assuming the distribution function is Maxwellian. It is also assumed that electrons are much more energetic than heavy particles.
- Parameters:
T (
float) – Electron temperature [K]cross_section (
numpy.ndarray) – Cross section values [m^2]energies (
numpy.ndarray) – Energy values [J]
- Returns:
Reaction rate constant [m^3/s]
- Return type:
Notes
The reaction rate constant is given by (See also eq. 1.38 in [Pierrot1999]):
\[k(T) = \int_0^\infty \sigma(E) v(E) f(E) dE\]with:
\(\sigma(E)\) the cross section at energy \(E\) [m^2],
\(v(E)\) the velocity at energy \(E\) [m/s],
\(f(E)\) the Maxwellian distribution function in energy at energy \(E\) [J^-1],
\(dE\) the differential of energy [J].
The integral is computed with the trapezoidal rule.
- rizer.kinetics.reaction_rate.compute_electronic_reaction_rate_constant_druyvesteyn(T: float, cross_section: numpy.ndarray, energies: numpy.ndarray) float#
Return the electronic reaction rate constant for a given electron temperature.
The reaction rate constant is computed, assuming the distribution function is Druyvesteyn. It is also assumed that electrons are much more energetic than heavy particles.
- Parameters:
T (
float) – Electron temperature [K]cross_section (
numpy.ndarray) – Cross section values [m^2]energies (
numpy.ndarray) – Energy values [J]
- Returns:
Reaction rate constant [m^3/s]
- Return type:
Notes
The reaction rate constant is given by:
\[k(T) = \int_0^\infty \sigma(E) v(E) f_\text{D}(E) dE\]with:
\(\sigma(E)\) the cross section at energy \(E\) [m^2],
\(v(E)\) the velocity at energy \(E\) [m/s],
\(f_\text{D}(E)\) the Druyvesteyn distribution function in energy at energy \(E\) [J^-1],
\(dE\) the differential of energy [J].
The integral is computed with the trapezoidal rule.
- rizer.kinetics.reaction_rate.compute_two_body_electronic_reaction_rate_constant(T_e: float, cross_section: numpy.ndarray, energies: numpy.ndarray, nb_points_integrand: int = 100000) float#
Return the electronic reaction rate constant of a two-body electronic reaction.
The following assumptions are made:
Distribution functions (in velocity) of both species are Maxwellian, at a temperature T_e for electrons and T for the other species (e.g. ions, neutrals).
The mass of an electron is much smaller than the mass of the other species (e.g. ion, neutral).
- Parameters:
T_e (
float) – Electron temperature [K]cross_section (
numpy.ndarray) – Cross section values [m^2]energies (
numpy.ndarray) – Energy values [J]nb_points_integrand (
int, optional) – Number of points to use for the numerical integration, by default 100_000.
- Returns:
Reaction rate constant [m^3/s]
- Return type:
Notes
The reaction rate constant is given by (See Ex. II-6.19b in [Mitchner1973]):
\[k = \iint_{-\infty}^{+\infty} f_1(\vec{C}) f_2(\vec{W})|\vec{C}-\vec{W}| Q_{12}(|\vec{C}-\vec{W}|) d^3 C d^3 W\]with:
\(Q_{12}(|\vec{C}-\vec{W}|)\) the (velocity-dependent) cross section at relative velocity \(|\vec{C}-\vec{W}|\) [m^2],
\(f_1(\vec{C})\) the distribution function of species 1 (e.g. electrons) in velocity space [s^3/m^3] at temperature T_e,
\(f_2(\vec{W})\) the distribution function of species 2 (e.g. ions, neutrals) in velocity space [s^3/m^3] at temperature T,
After some manipulations, one arrives at:
\[k = \sqrt{\frac{8 k_b}{\pi}\left(\frac{T_1}{m_1}+\frac{T_2}{m_2}\right)} \int_0^{\infty} x e^{-x} Q_{12}\left(\sqrt{2 k_b\left(\frac{T_1}{m_1}+\frac{T_2}{m_2}\right) x}\right) d x\]Using an energy-dependant cross section, the previous equation can be rewritten as:
\[k = \sqrt{\frac{8 k_b}{\pi}\left(\frac{T_1}{m_1}+\frac{T_2}{m_2}\right)} \int_0^{\infty} x e^{-x} \tilde{Q}_{12}\left(k_b \frac{m_2 T_1+m_1 T_2}{m_1+m_2} x\right) dx\]Then, using \(m_e \ll m_2\) and \(T_e \geq T\), the previous equation can be simplified to:
\[k = \sqrt{\frac{8 k_b T_e}{\pi m_e}} \int_0^{\infty} x e^{-x} \tilde{Q}_{12}\left(k_b T_e x\right) d x\]
- rizer.kinetics.reaction_rate.get_energy_grid(T: float, N: int = 1000000) numpy.ndarray#
Return an energy grid for a given temperature.
The energy grid is defined as a linear space from eps to 100 times the thermal energy of electrons at the given temperature. The number of points in the grid can be specified with the parameter N.
The thermal energy of electrons is given by:
\[\]E_{th} = frac{3}{2} k_B T
with:
\(k_B\) the Boltzmann constant,
\(T\) the electron temperature.
- Parameters:
- Returns:
Energy grid [J]
- Return type: