Please, help us to better know about our user community by answering the following short survey: https://forms.gle/wpyrxWi18ox9Z5ae9
Iterative solvers module

Detailed Description

This module aims to provide various iterative linear and non linear solver algorithms. It currently provides:

Classes

class  Eigen::IterationController
 Controls the iterations of the iterative solvers. More...
 
class  Eigen::IterScaling< _MatrixType >
 iterative scaling algorithm to equilibrate rows and column norms in matrices More...
 

Functions

template<typename TMatrix , typename CMatrix , typename VectorX , typename VectorB , typename VectorF >
void Eigen::internal::constrained_cg (const TMatrix &A, const CMatrix &C, VectorX &x, const VectorB &b, const VectorF &f, IterationController &iter)
 
template<typename CMatrix , typename CINVMatrix >
void Eigen::internal::pseudo_inverse (const CMatrix &C, CINVMatrix &CINV)
 

Function Documentation

◆ constrained_cg()

template<typename TMatrix , typename CMatrix , typename VectorX , typename VectorB , typename VectorF >
void Eigen::internal::constrained_cg ( const TMatrix &  A,
const CMatrix &  C,
VectorX &  x,
const VectorB &  b,
const VectorF &  f,
IterationController iter 
)

Constrained conjugate gradient

Computes the minimum of \( 1/2((Ax).x) - bx \) under the contraint \( Cx \le f \)

◆ pseudo_inverse()

template<typename CMatrix , typename CINVMatrix >
void Eigen::internal::pseudo_inverse ( const CMatrix &  C,
CINVMatrix &  CINV 
)

Compute the pseudo inverse of the non-square matrix C such that \( CINV = (C * C^T)^{-1} * C \) based on a conjugate gradient method.

This function is internally used by constrained_cg.