Yonderdrake¶
Alpha software: Yonderdrake has been broadly tested, but bugs and missing features may remain. Please report them as issues.
Yonderdrake adds fractional time derivatives, fading-memory operators, and nonlocal spatial operators to UFL forms solved with Firedrake. You write an ordinary residual with a marker in it. Yonderdrake does the rest. Equations containing both a nonlocal time operator and a nonlocal space operator are supported as well.
F = (fd.inner(CaputoDerivative(u, 0.6), v) + fd.inner(u, v)) * fd.dx
stepper = TimeMemoryStepper(F, BirkSong(48), t, dt, u)
stepper.advance()
What it supports¶
Caputo and initialized Riemann-Liouville time derivatives with full-history stepping, direct convolution quadrature or static memory with \(O(m)\) storage.
Single-exponential memory, including a labelled Caputo-Fabrizio operator.
Spectral (Dirichlet or Neumann), zero-exterior Riesz, and periodic Fourier fractional Laplacians, each with its corresponding boundary or exterior realization. The Riesz operator supports CG1 and CG2 on triangular 2D and tetrahedral 3D meshes.
Direct 2D and 3D Caputo-Wismer wave support for power-law attenuation, with heterogeneous density, volume and boundary sources, impedance boundaries, PML, user-defined sensor arrays, exact adjoints, time reversal, and regularized inverse reconstruction.
Variable steps, MPI, PETSc options, and checkpoint/restart.
Spatial fractional operators combined with Irksome for classical time integration.
Start here¶
Installation: install into a Firedrake environment.
Quickstart: the core workflow in one page.
Guides and examples: one capability at a time.
Gallery: larger applications and their animations.
Mathematics and methods: definitions, methods, and the papers behind them.
API and supported scope: signatures and exact limitations.
Guides and examples¶
Each guide covers one capability and links to a runnable example.
Fractional time derivatives and Time-fractional PDEs: fractional time derivatives.
Exponential memory and Caputo-Fabrizio: single-exponential and Caputo-Fabrizio memory.
Fractional space: spectral, Riesz, and periodic fractional Laplacians.
Refinement workflow, Solvers, field splits, and MPI, Checkpoint and restart, and Classical time stepping with Irksome: workflows.
Caputo-Wismer imaging: fractionally damped waves and imaging.
Mathematics and methods¶
Choosing a method: which method to use, with its primary source.
Time-memory theory: time derivatives, memory representations, and time stepping.
Spectral fractional Laplacian, Zero-exterior Riesz fractional Laplacian, and Periodic Fourier fractional Laplacian: the spatial realizations.
Conventions and normalizations: notation, normalizations, and terminology.
References: the complete bibliography.