Plasma Physics Programs

Interactive simulations for computational plasma physics — particle motion, wave phenomena, and kinetic instabilities

These Python programs run directly in your browser using Pyodide (WebAssembly Python). The first run downloads the Python environment (~15MB). Click "Run" to execute!

Charged Particle Motion

Boris pusher algorithm for charged particle gyration and E×B drift in uniform fields

Click Run to execute the Python code

First run will download Python environment (~15MB)

Key Equations of Plasma Physics

Fundamental Plasma Parameters

Debye Length:

$$\lambda_D = \sqrt{\frac{\varepsilon_0 k_B T_e}{n_e e^2}}$$

Plasma Frequency:

$$\omega_{pe} = \sqrt{\frac{n_e e^2}{\varepsilon_0 m_e}}$$

Cyclotron Frequency:

$$\omega_c = \frac{|q|B}{m}$$

Larmor Radius:

$$r_L = \frac{m v_\perp}{|q| B}$$

Vlasov Equation

$$\frac{\partial f}{\partial t} + \vec{v} \cdot \nabla f + \frac{q}{m}(\vec{E} + \vec{v} \times \vec{B}) \cdot \frac{\partial f}{\partial \vec{v}} = 0$$

Collisionless kinetic equation for the distribution function \( f(\vec{x}, \vec{v}, t) \)

Langmuir Wave Dispersion

$$\omega^2 = \omega_{pe}^2 + 3k^2 v_{th}^2$$

Landau damping rate:

$$\gamma_L \approx -\sqrt{\frac{\pi}{8}} \frac{\omega_{pe}}{(k\lambda_D)^3} \exp\!\left(-\frac{1}{2k^2\lambda_D^2}\right)$$

Magnetohydrodynamics

MHD Momentum:

$$\rho\frac{d\vec{v}}{dt} = -\nabla p + \vec{J} \times \vec{B}$$

Alfven Speed:

$$v_A = \frac{B}{\sqrt{\mu_0 \rho}}$$

Magnetic Pressure:

$$p_B = \frac{B^2}{2\mu_0}$$

Plasma Beta:

$$\beta = \frac{2\mu_0 n k_B T}{B^2}$$

Guiding Center Drifts

E x B Drift

$$\vec{v}_E = \frac{\vec{E} \times \vec{B}}{B^2}$$

Grad-B Drift

$$\vec{v}_{\nabla B} = \frac{m v_\perp^2}{2qB^3} \vec{B} \times \nabla B$$

Curvature Drift

$$\vec{v}_R = \frac{m v_\parallel^2}{qB^2} \frac{\vec{R}_c \times \vec{B}}{R_c^2}$$
Share:XRedditLinkedIn