\( \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.8 - CGAL and Solvers

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
NormalEquationSparseLinearAlgebraTraits_d Concept Reference
Concepts

## 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

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

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