Alfven_speed
- plasmapy.formulary.speeds.Alfven_speed(
- B: Annotated[Quantity, Unit('T')],
- density: Unit('1 / m3'), Unit('kg / m3'),
- ion: str | int | integer | Particle | CustomParticle | Quantity | None = None,
- *,
- mass_numb: int | None = None,
- Z: float | None = None,
Calculate the Alfvén speed 🏎️💨.
The Alfvén speed \(V_A\) is the typical propagation speed of magnetic disturbances in a quasineutral plasma, and is given by:
\[V_A = \frac{B}{\sqrt{μ_0 ρ}}\]where \(B\) is the magnetic field and \(ρ = n_i m_i + n_e m_e\) is the total mass density (\(n_i\) is the ion number density, \(n_e ≡ Z n_i\) is the electron number density assuming quasineutrality, \(m_i\) is the ion mass, and \(m_e\) is the electron mass) [Alfvén, 1942].
Aliases:
va_- Parameters:
B (
Quantity) – The magnetic field magnitude in units convertible to tesla.density (
Quantity) – Either the ion number density \(n_i\) in units convertible to m-3 or the total mass density \(ρ\) in units convertible to kg m-3.ion (
Particle, optional) – Representation of the ion species (e.g.,'p+'for protons,'D+'for deuterium,'He-4 1+'for singly ionized helium-4, etc.). If the density is an ion number density, then this parameter is required in order to convert to mass density.mass_numb (
int, keyword-only, optional) – The mass number corresponding toion.Z (
float, keyword-only, optional) – The charge number corresponding toion. Note that the value ofZdoes not impact the Alfvén speed.
- Returns:
V_A – The Alfvén speed in units of m/s.
- Return type:
- Raises:
RelativityError – If the Alfvén velocity is greater than or equal to the speed of light.
TypeError – If
Band/ordensityare not of typeQuantity, or convertible.TypeError – If
ionis not particle-like.UnitTypeError – If the magnetic field
Bdoes not have units equivalent to tesla.UnitTypeError – If the
densitydoes not have units equivalent to a number density or mass density.ValueError – If
densityis negative.
- Warns:
RelativityWarning– If the Alfvén velocity exceeds 5% of the speed of light.UnitsWarning– If units are not provided for the magnetic fieldB, units of tesla are assumed.
Notes
This expression does not account for relativistic effects, and loses validity when the resulting speed is a significant fraction of the speed of light.
Examples
>>> import astropy.units as u >>> from astropy.constants.si import m_p, m_e >>> B = 0.014 * u.T >>> n = 5e19 * u.m**-3 >>> ion = "p+" >>> rho = n * (m_p + m_e) >>> Alfven_speed(B=B, density=n, ion=ion) <Quantity 43173.870... m / s> >>> Alfven_speed(B=B, density=rho) <Quantity 43173.870... m / s> >>> Alfven_speed(B=B, density=rho).to(u.cm / u.us) <Quantity 4.317387 cm / us> >>> Alfven_speed(B=B, density=n, ion="He-4 2+") <Quantity 21664.18... m / s> >>> Alfven_speed(B=B, density=n, ion="He", Z=1.8) <Quantity 21664.18... m / s>