\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 4.12 - CGAL and Solvers
SparseLinearAlgebraWithFactorTraits_d Concept Reference

Definition

Concept describing the set of requirements for a direct sparse linear system solver with factorization. A model of this concept stores the left-hand matrix (denoted \( A \)) and provides an additional factorization method to solve the system for different right-hand vectors.

Refines:
SparseLinearAlgebraTraits_d
Has Models:
CGAL::Eigen_solver_traits<T>

Creation

 SparseLinearAlgebraWithFactorTraits_d ()
 Default constructor.
 

Operations

bool factor (const Matrix &A, NT &D)
 Factorize the sparse matrix A. More...
 
bool linear_solver (const Vector &B, Vector &X)
 Solve the sparse linear system \( A \times X = B\), with \( A \) being the matrix provided in SparseLinearAlgebraWithFactorTraits_d::factor(). More...
 

Member Function Documentation

◆ factor()

bool SparseLinearAlgebraWithFactorTraits_d::factor ( const Matrix &  A,
NT &  D 
)

Factorize the sparse matrix A.

This factorization is used in SparseLinearAlgebraWithFactorTraits_d::linear_solver() to solve the system for different right-hand side vectors. See SparseLinearAlgebraTraits_d::linear_solver() for the description of D.

Returns
true if the factorization is successful and false otherwise.

◆ linear_solver()

bool SparseLinearAlgebraWithFactorTraits_d::linear_solver ( const Vector &  B,
Vector &  X 
)

Solve the sparse linear system \( A \times X = B\), with \( A \) being the matrix provided in SparseLinearAlgebraWithFactorTraits_d::factor().

Returns
true if the solver is successful and false otherwise.