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
ParticleLikeas 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
Unitfulquantities with unique dimensions, arguments are order independent (see PermuteArgs.jl).
Quick Example
julia> using PlasmaFormulary, Unitfuljulia> debye_length(1e18u"cm^-3", 10u"eV")2.350818870322799e-8 mjulia> gyrofrequency(0.01u"T", :e) # electron gyrofrequency1.7588200107721632e9 rad s^-1julia> plasma_frequency(1e19u"m^-3", "proton") # proton plasma frequency4.1632945624883513e9 rad s^-1
Installation
using Pkg
Pkg.add("PlasmaFormulary")Related packages
- PlasmaPy :
plasmapy.formularysubpackage provides theoretical formulas for calculation of physical quantities helpful for plasma physics. - FusionFormulary.jl
Index
PlasmaFormulary.AliasesPlasmaFormulary.Alfven_current_densityPlasmaFormulary.Alfven_speedPlasmaFormulary.Alfven_velocityPlasmaFormulary.Debye_lengthPlasmaFormulary.ExB_driftPlasmaFormulary.diamagnetic_driftPlasmaFormulary.force_driftPlasmaFormulary.gyrofrequencyPlasmaFormulary.gyroradiusPlasmaFormulary.inertial_lengthPlasmaFormulary.ion_sound_speedPlasmaFormulary.lower_hybrid_frequencyPlasmaFormulary.magnetic_pressurePlasmaFormulary.plasma_betaPlasmaFormulary.plasma_frequencyPlasmaFormulary.thermal_pressurePlasmaFormulary.thermal_speedPlasmaFormulary.thermal_temperaturePlasmaFormulary.thermal_velocity_coefficientsPlasmaFormulary.upper_hybrid_frequency