PlasmaFormulary
A Julia package for plasma physics formulas. This package implements a subset of the formulas found in the NRL Plasma Formulary, as well as some additional formulas taken from the PlasmaPy project.
Features
- For functions that take a
ParticleLike
as an argument, we use ChargedParticles.jl package to handle particle properties. One could provide a symbolic particle name or string or a Particle object for the argument. In addition, mass number and charge number can be specified as keyword arguments for these functions. - For function whose arguments are
Unitful
quantities with unique dimensions, arguments are order independent (see PermuteArgs.jl).
Quick Example
julia> using PlasmaFormulary, Unitful
julia> debye_length(1e18u"cm^-3", 10u"eV")
2.350818870322799e-8 m
julia> gyrofrequency(0.01u"T", :e) # electron gyrofrequency
1.7588200107721632e9 rad s^-1
julia> plasma_frequency(1e19u"m^-3", "proton") # proton plasma frequency
4.1632945624883513e9 rad s^-1
Installation
using Pkg
Pkg.add("PlasmaFormulary")
Related packages
- PlasmaPy :
plasmapy.formulary
subpackage provides theoretical formulas for calculation of physical quantities helpful for plasma physics. - FusionFormulary.jl
Index
PlasmaFormulary.Aliases
PlasmaFormulary.Alfven_current_density
PlasmaFormulary.Alfven_speed
PlasmaFormulary.Alfven_velocity
PlasmaFormulary.Debye_length
PlasmaFormulary.ExB_drift
PlasmaFormulary.diamagnetic_drift
PlasmaFormulary.force_drift
PlasmaFormulary.gyrofrequency
PlasmaFormulary.gyroradius
PlasmaFormulary.inertial_length
PlasmaFormulary.ion_sound_speed
PlasmaFormulary.magnetic_pressure
PlasmaFormulary.plasma_beta
PlasmaFormulary.plasma_frequency
PlasmaFormulary.thermal_pressure
PlasmaFormulary.thermal_speed
PlasmaFormulary.thermal_velocity_coefficients