▼Level 1: Vectors, Matrices and basic operations | |
BLAS level 1 routines: Vector-Vector | \( f( x_{0i}, x_{1i}, x_{2i}, ...) \) and \( x^T y\) |
BLAS level 2 routines: Matrix-Vector | \( \alpha M \cdot x + \beta y\) and \( x^T M y \) |
►MPI backend | |
Distributed Matrix and Vector | |
MPI Distributed Gather and Scatter | |
►Utility | |
►The tag dispatch system | |
All TensorTraits specialisations | |
Sparse matrix formats | |
Dense matrix formats | |
Vector view | |
Typedefs for Vectors and Matrices | |
▼Level 2: Basic numerical algorithms | |
►ODE integration | \( \dot y = f(y,t) \) |
Utilities for ODE integrators | |
Quadrature | \( \int_{t_0}^T u(t) dt \) |
Extrapolation | |
Linear and nonlinear solvers | Linear \( Ax = b\) and non-linear \( f(x) = b\) |
▼Level 3: Topology and Geometry | |
►Topological grids and operations | |
Discontinuous Galerkin Nd grid | |
Discontinuous Galerkin grids with X-point | |
Evaluate, integrate, weights | \( f_i = f(\vec x_i) \) |
Create derivatives | \( D_x\), \( D_y\) and \( D_z \) |
Create stencils | |
►Interpolation, Projection, Transformation | |
Fast interpolation | |
Averaging, prolongation and partial reductions | \( I \) and \( P = I^\dagger\) |
Scatter and Gather | |
►Geometric grids and tensor operations | |
Geometry classes | |
Geometry classes with X-point | |
Grid refinement | |
Tensor-Vector operations | \( v^i = T^{ij} w_j\) |
Pullback, pushforward, volume | \( f_i = f( x (\zeta_i,\eta_i), y(\zeta_i,\eta_i)) \), \(
\sqrt{g} \) |
Finite Element Methods | |
Grid Typedefs | |
▼Level 4: Advanced numerical schemes | |
Advection terms | \( \vec v \cdot \nabla u\) and \( \{ f,g\} \) |
Elliptic operators | Elliptic \( -\nabla\cdot (\chi \nabla f)\) and Helmholtz \( (\chi + \alpha \Delta) f\) |
Multigrid matrix inversion | \( A x = b\) |
▼Level 99: Miscellaneous additions | |
Timer class | T.tic(); t.toc(); t.diff(); |
►Functions and functors | |
Simple | For the dg::evaluate and dg::blas1::evaluate functions |
A large collection | For the dg::evaluate and dg::blas1::evaluate functions |
Composition of two or more functors | |
dg::blas1::evaluate binary operators | Binary subroutines for the dg::blas1::evaluate function |
dg::blas1::evaluate variadic functors | Functors to use in the dg::blas1::evaluate function |
dg::blas1::subroutine subroutines | Functors to use in the dg::blas1::subroutine functions |
dg::blas2::stencil subroutines | Functors to use in dg::blas2::stencil function |
►MPI utility functions | |
Legacy MPI functions | |
Lowlevel helper functions and classes | |