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 = (inner(CaputoDerivative(u, 0.6), v) + inner(u, v)) * dx
stepper = FractionalTimeStepper(F, BirkSong(48), t, dt, u)
stepper.advance()
What it supports¶
Caputo and initialized Riemann-Liouville time derivatives.
Full-history stepping and static memory with \(O(m)\) storage.
Single-exponential memory, including a labelled Caputo-Fabrizio operator.
Dirichlet spectral, 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¶
After the Quickstart, choose the time-memory workflow or the space-fractional workflow. Each guide links to a runnable example. The Gallery collects larger applications and animations. Refinement, parallel execution, checkpointing, and performance guidance are grouped under Applications and workflow in the sidebar.
Mathematics and methods¶
The method map is the short overview of the available realizations and their sources. Detailed definitions and numerical guidance live with each operator family. The complete bibliography is in References.
Method map¶
Operator |
Method |
What it is |
Use |
Primary source |
|---|---|---|---|---|
Caputo and Riemann-Liouville |
|
Diffusive modes, Gauss-Jacobi after a Cayley map of selectable exponent |
Default time memory |
Generalizes Diethelm (2008) and Birk and Song (2010) |
|
Diffusive modes with independent low-rate and high-rate map exponents |
Expert option for measured asymmetric rate ranges |
||
|
Tolerance-driven positive exponential sum on a declared time interval |
Supported alternative |
||
|
Truncated log-rate quadrature |
Comparison only |
||
|
Original Gauss-Laguerre rule |
Comparison only |
||
|
Generalized Gauss-Laguerre quadrature of undamped sine modes |
Comparison only |
||
|
Uniform-grid BDF1 or BDF2 convolution quadrature with starting corrections |
Direct first- or second-order method |
||
|
BDF1 CQ with dyadic Talbot-contour history |
Long uniform-grid histories |
||
|
Uniform-grid quadratic formula at \(t_{n+\sigma}\) |
Direct second-order method |
||
|
Variable-step L1 history integral |
Reference method |
||
Exponential memory |
|
One-timescale exponential convolution |
Direct fading-memory operator |
Standard one-state realization |
Spectral fractional Laplacian |
|
Power of the homogeneous-Dirichlet or natural-Neumann Laplacian |
Spectral realization |
|
Riesz fractional Laplacian |
|
Whole-space integral on the zero extension |
Integral realization |
|
Periodic fractional Laplacian |
|
Fourier multiplier on a uniform periodic cell |
Periodic realization |
Standard Fourier-series multiplier |
Convenience constructors¶
Published members of the families above. Each is the general class at a fixed setting and behaves identically to it.
Constructor |
Equivalent to |
Use |
Primary source |
|---|---|---|---|
|
|
Default representation |
|
|
|
Narrow rate spans |
|
|
Rescaled |
Labelled Caputo-Fabrizio interface |
Caputo and Fabrizio (2015), with the classification in Ortigueira and Machado (2018) |