Expand description
Solver traits and implementations.
Most users configure solvers through KspContext and
SolverType. This module exposes the
underlying solver types and traits for advanced use, custom pipelines, or testing.
Re-exports§
pub use api::Solver;pub use adapters::LegacyDirectAdapter;pub use cg::CgSolver;pub use cgnr::CgnrSolver;pub use gmres::GmresSolver;pub use fgmres::FgmresSolver;pub use bicgstab::BiCgStabBreakdownPolicy;pub use bicgstab::BiCgStabSolver;pub use bicgstab::BiCgStabVariant;pub use idrs::BreakdownRepair as IdrsBreakdownRepair;pub use idrs::IdrsBuilder;pub use idrs::IdrsOptions;pub use idrs::IdrsSolver;pub use idrs::Omega as IdrsOmega;pub use idrs::ShadowP as IdrsShadowP;pub use cgs::CgsSolver;pub use richardson::RichardsonSolver;pub use chebyshev::ChebyshevSolver;pub use cr::CrSolver;pub use pcg::PCG_PIPELINED_DEFAULT_REPLACE_EVERY;pub use pcg::PcgSolver;pub use pcg::PcgVariant;pub use minres::MinresSolver;pub use lsmr::LsmrSolver;pub use lsqr::LsqrSolver;pub use direct_lu::LuSolver;backend-faerpub use direct_lu::QrSolver;backend-faerpub use superlu_dist::SuperLuDistSolver;superlu_distpub use qmr::QmrSolver;pub use tfqmr::TfqmrSolver;pub use tcqmr::TcqmrSolver;pub use gcr::GcrSolver;pub use pipegcr::PipeGcrSolver;pub use pca_gmres::PcaGmresSolver;pub use pca_gmres::PcaPcMode;
Modules§
- adapters
- api
- bicgstab
- Robust breakdown checks:
- block
- Block Krylov solver infrastructure.
- cg
- CG side semantics
- cgnr
- cgs
- Conjugate Gradient Squared (CGS).
- chebyshev
- common
- cr
- dense_
lu dense-direct - dense_
qr dense-direct - direct_
lu backend-faer - Direct dense solvers using Faer: LU and QR factorizations.
- fgmres
- Flexible GMRES (FGMRES) over the scalar-generic
KLinOpinterface with optional mutable preconditioning support. - gcr
- gmres
- GMRES side semantics
- idrs
- legacy
- Legacy generic solver trait retained for existing implementations.
- lsmr
- LSMR solver for least-squares and rank-deficient systems.
- lsqr
- LSQR solver for least-squares and rank-deficient systems.
- minres
- MINRES solver (Saad §7.4)
- pca_
gmres - PCA-GMRES (baseline) over &dyn LinOp
with left/right/no preconditioning, using disjoint slabs for V and Z, with semantics enforced by pc_mode. - pcg
- pipegcr
- qmr
- QMR side semantics
- richardson
- superlu_
dist superlu_dist - SuperLU_DIST distributed sparse direct solver.
- tcqmr
- tfqmr
- TFQMR side semantics
Structs§
- OpSolver
Adapter - Adapter allowing legacy generic solvers (MatVec/Vec) to be used with the
new object-safe
LinearSolvertrait overLinOp.
Enums§
Traits§
- KLinOp
- Internal, scalar-generic linear operator for solvers.
- KPreconditioner
- Internal, scalar-generic preconditioner interface.
- Linear
Solver - Object-safe linear solver operating on
f64slices andLinOpoperators.