Skip to content

Reference

One page per public name, generated from the comments in the headers.

By topic

index contents
Algorithms Graph traversal, shortest paths, spanning trees, connectivity, clique sampling and graph generators. The structures they run on are on the Data structures page.
All concepts Structure is decided by the operations a type provides; a law is declared, because the compiler cannot decide it.
All containers Grouped by what each does. Types own their storage and are over-aligned; the free functions write into caller-provided destinations.
Data structures Graphs, queues, union-find and spatial neighbour structures. The algorithms on them are on the Algorithms page.
All kernels num::kernel: the BLAS layer, raw loops over pointers, templated on the scalar, allocating nothing.
Linear algebra Factorizations, solvers, eigenvalues and the SVD. Every factorization is solved by solve(F, b, x), and the raw-pointer overloads work on caller-owned buffers.
ODEs Initial value problems: explicit, adaptive, symplectic and implicit integrators. The concepts are on the Concepts page.
PDEs and fields Grids, fields, stencils and the solvers built on them. The concepts are on the Concepts page.
Quadrature and roots Integration rules, contour quadrature and scalar root finding. The concepts are on the Concepts page.
Spectral Fourier and sine transforms with backend dispatch. The concepts are on the Concepts page.
Statistics and sampling Streaming statistics, selection, random engines and Monte Carlo sampling. The concepts are on the Concepts page.

By directory

directory contents
algebra/
blas/
container/
core/
fields/ Umbrella include for grid and field containers.
io/
kernel/ The BLAS layer over raw pointers.
linear/ Umbrella include for linear algebra routines.
ode/ ODE and symplectic integrator entry points.
omp/
operator/ Umbrella for generic operator adapters.
pde/ Umbrella include for the PDE module.
plot/ Matplotlib-style plotting via a gnuplot pipe with ASCII terminal support.
quadrature/ Pure template numerical integration (quadrature) on [a, b].
roots/ Pure template root-finding methods for scalar equations \(f(x^*) = 0\).
spatial/ Umbrella include for spatial data structures
spectral/
stats/ Online statistics for Monte Carlo observables.
stochastic/
structures/ Umbrella for discrete structures and the algorithms that run on them.

The example programs are listed under Examples.