rizer.transport.mixture_law#

Mixture-level transport properties of a two-temperature plasma.

Aggregated momentum-transfer collision frequencies, electrical conductivity, and the elastic electron-heavy energy exchange.

Classes#

MixtureCollisionFrequencies

Aggregate per-species momentum-transfer collision frequencies for a plasma mixture.

Module Contents#

class rizer.transport.mixture_law.MixtureCollisionFrequencies(plasma: cantera.Solution, momentum_transfer_collision_frequencies_list: list[rizer.transport.collision_frequency.MomentumTransferCollisionFrequencyModel])#

Aggregate per-species momentum-transfer collision frequencies for a plasma mixture.

Parameters:
Raises:

ValueError – If momentum_transfer_collision_frequencies_list is not a list, does not have the same length as plasma.species_names, or contains an element that is not a MomentumTransferCollisionFrequencyModel.

plasma#
momentum_transfer_collision_frequencies_list: list[rizer.transport.collision_frequency.MomentumTransferCollisionFrequencyModel]#
e_index#
mean_momentum_transfer_collision_frequencies() → numpy.ndarray#

Per-species mean momentum-transfer collision frequency in s^-1.

Returns the array \(\bar{\nu}_{eh}^{(1)}[k]\) for every species k (the electron entry is zero, electrons being excluded from the electron-heavy collision sums).

The elastic-power, electrical-conductivity and collision-frequency-diagnostic methods all consume this same array, so it is computed once for the current plasma state – electron and gas temperatures, pressure and composition – and cached. Repeated calls within a single reactor time step therefore reuse a single evaluation instead of recomputing the (relatively expensive) per-species cross-section integrals and Coulomb terms.

Returns:

Mean momentum-transfer collision frequency of each species in s^-1.

Return type:

numpy.ndarray

precompute_collision_frequency_tables(Te_min: float = 300.0, Te_max: float = 100000.0, n_points: int = 1000) → None#

Opt-in: precompute averaged cross sections on an electron-temperature grid.

Enables a log-spaced \(T_e\)-grid cache on every tabulated neutral cross section (see enable_mean_cross_section_grid_cache()), so the per-species momentum-transfer collision frequencies interpolate a precomputed \(\bar{Q}(T_e)\) instead of re-integrating the cross section at each electron temperature. This trades a small interpolation error (well under a percent on a fine grid) for a large speed-up when a reactor sweeps many electron temperatures. Ion (Coulomb) and hard-sphere frequencies are already closed-form and are unaffected.

Parameters:
  • Te_min (float, optional) – Bounds of the electron-temperature grid, in K (default 300 to 100 000 K).

  • Te_max (float, optional) – Bounds of the electron-temperature grid, in K (default 300 to 100 000 K).

  • n_points (int, optional) – Number of log-spaced grid points, by default 1000.

plasma_power_elastic() → float#

Compute the elastic power loss density in W/m^3.

Return the rate of electron energy loss per unit volume as a result of elastic collisions with heavy particles in W/m^3.

Returns:

Elastic power loss density in W/m^3.

Return type:

float

Notes

The power density is given by equation (VI 5.1) of [Mitchner1973].

\[P_el = \sum_h \frac{2 m_e}{m_h} \frac{3}{2} k_b\left(T_e-T_g\right) \bar{\nu}_{e h} n_e\]

with:

  • \(m_e\) the electron mass, in kg,

  • \(m_h\) the mass of heavy particles, in kg,

  • \(k_b\) the Boltzmann constant, in J/K,

  • \(T_e\) the electron temperature, in K,

  • \(T_g\) the heavy species temperature, in K,

  • \(\bar{\nu}_{e h}\) the energy-weighted average momentum transfer collision frequency between

    electrons and heavy particles, in s^-1, as defined in (II 6.29) of [Mitchner1973].

References

electron_heavy_collision_frequency() → float#

Total electron-heavy momentum-transfer collision frequency in s^-1.

Returns:

\(\bar{\nu}_{eH} = \sum_h \bar{\nu}_{eh}^{(1)}\), in s^-1, as defined in (II 13.3) of [Mitchner1973].

Return type:

float

electron_ion_collision_frequency() → float#

Electron-ion-only momentum-transfer collision frequency in s^-1.

Returns:

\(\bar{\nu}_{eI} = \sum_{h,\, Z_h>0} \bar{\nu}_{eh}^{(1)}\), in s^-1.

Return type:

float

mass_weighted_electron_heavy_collision_frequency() → float#

Mass-weighted electron-heavy momentum-transfer collision frequency in kg^-1 s^-1.

Unlike electron_heavy_collision_frequency(), each species’ term is divided by that species’ mass before summing.

Returns:

\(\sum_h \bar{\nu}_{eh}^{(1)} / m_h\), in kg^-1 s^-1 – the C_2 term of (VIII 3.8) of [Mitchner1973], compared against electron_electron_collision_frequency() divided by the electron mass to assess Maxwellian-distribution validity (see compute_maxwellian_validity()).

Return type:

float

electron_electron_collision_frequency() → float#

Electron-electron collision frequency in s^-1.

Does not need the per-species collision-frequency models – only n_e, T_e, and the Coulomb logarithm.

Returns:

\(\nu_{ee}\), in s^-1, per (II 8.11e) of [Mitchner1973].

Return type:

float

electrical_conductivity() → float#

Return the electrical conductivity in S/m.

No assumption is made on wether the plasma is weakly or strongly ionized.

Returns:

electrical conductivity in S/m

Return type:

float

Notes

The electrical conductivity \(\sigma\) of a plasma is given by (II 13.7b) of [Mitchner1973]:

\[\sigma_e = \frac{n_e e^2}{m_e \bar{\nu}_{eH}}\]

where:

  • \(n_e\) is the electron number density in m^-3,

  • \(e\) is the elementary charge in C,

  • \(m_e\) is the electron mass in kg,

  • \(\bar{\nu}_{eH}\) is the average momentum transfer collision frequency of an electron with all heavy particle species.

This last term is defined in (II 13.3) of [Mitchner1973] as the following sum:

\[\bar{\nu}_{eH} = \bar{\nu}_{en} + \bar{\nu}_{ei}\]

where:

  • \(\bar{\nu}_{en}\) is the average momentum transfer collision frequency of an electron with neutral heavy particles,

  • \(\bar{\nu}_{ei}\) is the average momentum transfer collision frequency of an electron with ionized heavy particles.

See also

weakly_ionized_electrical_conductivity()

The weak-ionization limit (\(f_{ion} \to 0\)) of this formula.