FaADE.jl

A Summation by Parts code for solving the field aligned Anisotropic Diffusion Equation.

Features

FaADE.jl is a code for solving the field aligned anisotropic diffusion equation

\[\frac{\partial u}{\partial t} = \nabla\cdot(\mathbf{K} \nabla ) u\]

where

\[\mathbf{K} = k_\perp\mathbf{I} + (k_\parallel - k_\perp)\frac{\mathbf{B}\mathbf{B}^T}{\|\mathbf{B}\|^2}.\]

  • Uses the Summation by Parts formulation with Simultaneous Approximation Terms (SBP-SAT) for boundary conditions [1].
  • Parallel penalty operator used to apply diffusion along vector field lines.
  • Currently arbitrary parallel mappings can be provided in Cartesian geometry or an ODE for mapping grid points along field lines.
  • Provides solutions in 1D for:
    • diffusion problems
    • with a parallel map in the second dimension
  • and solutions in 2D for:
    • diffusion problems
    • with a parallel map in the third dimension

Examples

The best place to start is in the Examples section in the navigation bar to the left.

Modules

Similar software

  • SummationByParts.jl: A Julia implementation of a wide range of SBP operators
  • pyoculus: A magnetic field diagnostic package in python based on an earlier FORTRAN implementation oculus

References

The mathematical background for this package can be found in:

  • D. Muir, K. Duru, M. Hole, and S. Hudson, “An efficient method for the anisotropic diffusion equation in magnetic fields,” Feb. 08, 2023, arXiv. doi: 10.48550/arXiv.2303.15447.
  • D. Muir, K. Duru, M. Hole, and S. Hudson, “A provably stable numerical method for the anisotropic diffusion equation in confined magnetic fields,” Apr. 09, 2024, arXiv. doi: 10.48550/arXiv.2306.00423.