plasmapy.formulary.collisions.misc.mobility(T: ~astropy.units.quantity.Quantity, n_e: ~astropy.units.quantity.Quantity, species, z_mean: float = nan, V: ~astropy.units.quantity.Quantity = <Quantity nan m / s>, method='classical') Quantity[source]

Return the electrical mobility.

  • T (Quantity) – Temperature in units of temperature or energy per particle, which is assumed to be equal for both the test particle and the target particle.

  • n_e (Quantity) – The electron number density in units convertible to m-3.

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

  • 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. It is also used to obtain the average mobility of a plasma with multiple charge state species. When z_mean is not given, the average charge between the two particles is used instead. z_mean is a required parameter if method is "ls_full_interp", "hls_max_interp", or "hls_full_interp".

  • 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.


mobility_value – The electrical mobility of particles in a collisional plasma.

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 is not a 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 mobility is given by

\[μ = \frac{q}{m ν}\]

where \(q\) is the particle charge, \(m\) is the particle mass and \(ν\) is the collisional frequency of the particle in the plasma.

The mobility describes the forced diffusion of a particle in a collisional plasma which is under the influence of an electric field. The mobility is essentially the ratio of drift velocity due to collisions and the electric field driving the forced diffusion.


>>> import astropy.units as u
>>> n = 1e19 * u.m**-3
>>> T = 1e6 * u.K
>>> species = ("e", "p")
>>> mobility(T, n, species)  
<Quantity 250505... m2 / (V s)>
>>> mobility(T, n, species, V=1e6 * u.m / u.s)  
<Quantity 1921.2784... m2 / (V s)>