CGAL 5.1.1 - CGAL and Solvers
NormalEquationSparseLinearAlgebraTraits_d Concept Reference

Definition

Concept describing the set of requirements for solving the normal equation \( A^t A X = A^t B \), \( A \) being a matrix, \( At \) its transpose matrix, \( B \) and \( X \) being two vectors.

See also
SparseLinearAlgebraTraits_d
Has Models:
CGAL::Eigen_solver_traits<T>

Types

typedef unspecified_type Matrix
 Matrix type model of SparseLinearAlgebraTraits_d::Matrix
 
typedef unspecified_type Vector
 Vector type model of SparseLinearAlgebraTraits_d::Vector
 
typedef unspecified_type NT
 Number type.
 

Creation

 NormalEquationSparseLinearAlgebraTraits_d ()
 Default constructor.
 

Operations

bool normal_equation_factor (const Matrix &A)
 Factorize the sparse matrix At * A. More...
 
bool normal_equation_solver (const Vector &B, Vector &X)
 Solve the sparse linear system At * A * X = At * B, with A being the matrix provided in normal_equation_factor(), and At its transpose matrix. More...
 
bool normal_equation_solver (const Matrix &A, const Vector &B, Vector &X)
 Equivalent to a call to normal_equation_factor(A) followed by a call to normal_equation_solver(B,X) .
 

Member Function Documentation

◆ normal_equation_factor()

bool NormalEquationSparseLinearAlgebraTraits_d::normal_equation_factor ( const Matrix A)

Factorize the sparse matrix At * A.

This factorization is used in normal_equation_solver() to solve the system for different right-hand side vectors.

Returns
true if the factorization is successful and false otherwise.

◆ normal_equation_solver()

bool NormalEquationSparseLinearAlgebraTraits_d::normal_equation_solver ( const Vector B,
Vector X 
)

Solve the sparse linear system At * A * X = At * B, with A being the matrix provided in normal_equation_factor(), and At its transpose matrix.

Returns
true if the solver is successful and false otherwise.