Expand description
Public factor-once / solve-many handle.
Factorization is the user-facing value type for “I have a sparse
symmetric matrix, factor it once, then solve against the factor
repeatedly.” It wraps an arbitrary SparseSymLinearSolverInterface
backend (feral, MA57, etc.) and the TSymLinearSolver driver that
handles triplet→CSR conversion and the CallAgain retry loop for
backends that may grow their factor arrays.
Two operations preserve the cached factor:
Factorization::solve— back-substitute against the current factor. Cheap; reuses the LDLᵀ factors.Factorization::refactor— supply new numeric values for the same sparsity pattern; backend reuses its symbolic factor (AMD ordering, elimination tree, pattern cache) and only redoes the numeric work.
See the examples/shift_invert.rs example for a worked use of
factor-once / many-RHS for a shift-invert eigenvalue probe.
§Example
use pounce_linsol::{Factorization, FactorizationError};Structs§
- Factorization
- Value-typed handle holding a sparse symmetric factorization.