SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
serif::solver::preconditioner::strategies::inverse::SparseDirect Struct Referencefinal

Exact inverse of the assembled block through a sparse LU factorization, prepared once per state. More...

#include <sparse_direct.hpp>

Static Public Attributes

static constexpr ApplicationContract application_contract {ApplicationContract::fixed_linear}
 

Detailed Description

Exact inverse of the assembled block through a sparse LU factorization, prepared once per state.

Note
The backend is chosen at build time with the sparse_direct Meson option (Apple Accelerate on macOS 15.5+, SuiteSparse UMFPACK elsewhere, or none); without one, preparation fails rather than falling back to another inverse. backend::mfem::sparse_direct_available() reports it at run time. Suited to blocks of tens of thousands of rows, where one factorization and its triangular solves are much cheaper than repeated multigrid cycles. The symbolic analysis is reused across Newton steps while the sparsity pattern is unchanged (bitwise the same factorization), and batched applications (ArrayMult) solve their right-hand sides together, which agrees with single solves to rounding.

Member Data Documentation

◆ application_contract

ApplicationContract serif::solver::preconditioner::strategies::inverse::SparseDirect::application_contract {ApplicationContract::fixed_linear}
staticconstexpr

The documentation for this struct was generated from the following file: