plasmapy.formulary.collisions.misc.Spitzer_resistivity(T: Unit("K"), n: Unit("1 / m3"), species, z_mean: ~numbers.Real = nan, V: Unit("m / s") = <Quantity nan m / s>, method='classical') -> Unit("Ohm m")[source]

Spitzer resistivity of a plasma.

  • T (Quantity) – Temperature in units of temperature. This should be the electron temperature for electron-electron and electron-ion collisions, and the ion temperature for ion-ion collisions.

  • n (Quantity) – The density in units convertible to per cubic meter. This should be the electron density for electron-electron collisions, and the ion density for electron-ion and ion-ion collisions.

  • z_mean (Quantity, optional) – The average ionization (arithmetic mean) of a plasma for which a macroscopic description is valid. This parameter is used to compute the average ion density (given the average ionization and electron density) for calculating the ion sphere radius for non-classical impact parameters. z_mean is a required parameter if method is "ls_full_interp", "hls_max_interp", or "hls_full_interp".

  • species (tuple) – A tuple containing string representations of the test particle (listed first) and the target particle (listed second).

  • V (Quantity, optional) – The relative velocity between particles. If not provided, thermal velocity is assumed: \(μ V^2 \sim 2 k_B T\) where \(μ\) is the reduced mass.

  • method (str, optional) – The method by which to compute the Coulomb logarithm. The default method is the classical straight-line Landau-Spitzer method ("classical" or "ls"). The other 6 supported methods are "ls_min_interp", "ls_full_interp", "ls_clamp_mininterp", "hls_min_interp", "hls_max_interp", and "hls_full_interp". Please refer to the docstring of Coulomb_logarithm for more information about these methods.


spitzer – The resistivity of the plasma in ohm meters.

Return type:

float or numpy.ndarray

  • ValueError – If the mass or charge of either particle cannot be found, or any of the inputs contain incorrect values.

  • UnitConversionError – If the units on any of the inputs are incorrect.

  • TypeError – If any of n_e, T, or V are not of type Quantity.

  • RelativityError – If the input velocity is same or greater than the speed of light.

  • UnitsWarning – If units are not provided, SI units are assumed.

  • RelativityWarning – If the input velocity is greater than 5% of the speed of light.


The Spitzer resistivity (see Ch. 5 of Chen [2016]) is given by:

\[η = \frac{m}{n Z_1 Z_2 q_e^2} ν_{1,2}\]

where \(m\) is the ion mass or the reduced mass, \(n\) is the ion density, \(Z\) is the particle charge state, \(q_e\) is the charge of an electron, \(ν_{1,2}\) is the collisional frequency between particle species 1 and 2.

Typically, particle species 1 and 2 are selected to be an electron and an ion, since electron-ion collisions are inelastic and therefore produce resistivity in the plasma.


>>> import astropy.units as u
>>> n = 1e19 * u.m ** -3
>>> T = 1e6 * u.K
>>> species = ('e', 'p')
>>> Spitzer_resistivity(T, n, species)  
<Quantity 2.4915...e-06 Ohm m>
>>> Spitzer_resistivity(T, n, species, V=1e6 * u.m / u.s)  
<Quantity 0.000324... Ohm m>