\( \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.5.2 - Triangulated Surface Mesh Deformation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
SparseLinearAlgebraTraitsWithFactor_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

 SparseLinearAlgebraTraitsWithFactor_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 SparseLinearAlgebraTraitsWithFactor_d::factor. More...
 

Member Function Documentation

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

Factorize the sparse matrix A.

This factorization is used in SparseLinearAlgebraTraitsWithFactor_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
bool SparseLinearAlgebraTraitsWithFactor_d::linear_solver ( const Vector &  B,
Vector &  X 
)

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

Returns
true if the solver is successful