Math
Published configurations
Spatial arithmetic, matrix operations, and sparse linear algebra.
SpatialVector<Real> a{1, 2, 3}; SpatialVector<Real> b{4, 5, 6}; const Real product = dot(a, b); // 32 const auto normal = a.cross(b); // {-3, 6, -3} const Real length = a.norm(); // sqrt(14)
SpatialVector and SpatialMatrix support small spatial calculations without heap allocation. Vector, Matrix, and their fixed-size counterparts provide Eigen-compatible algebra; LinearSystem groups system data and constraint elimination. These types support geometric mappings, constitutive calculations, assembly, and linear solves.
Benchmarks
LinearSystem
Linear-system operations.
Scalar
Scalar contractions.
SparseAlgebra
Sparse products and reductions on manufactured finite-element systems.
SpatialAlgebra
Fixed-capacity spatial arithmetic and contraction timings.
SpatialMatrix
SpatialMatrix benchmarks separate arithmetic, contractions, products and matrix decompositions. Ordinary multiplication obeys \(C_{ij}=\sum_k A_{ik}B_{kj}\), without conjugation of complex operands. Right-conjugated scalar contractions are identified separately.
SpatialVector
SpatialVector represents a small vector with runtime active dimension and bounded storage. The suite separates arithmetic, storage lifetime, scalar products, norms and cross products.