Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes
Eigen::MatrixSquareRootQuasiTriangular< MatrixType > Class Template Reference

Class for computing matrix square roots of upper quasi-triangular matrices. More...

#include <MatrixSquareRoot.h>

List of all members.

Public Member Functions

template<typename ResultType >
void compute (ResultType &result)
 Compute the matrix square root.
 MatrixSquareRootQuasiTriangular (const MatrixType &A)
 Constructor.

Private Types

typedef MatrixType::Index Index
typedef MatrixType::Scalar Scalar

Private Member Functions

void compute1x1offDiagonalBlock (MatrixType &sqrtT, const MatrixType &T, typename MatrixType::Index i, typename MatrixType::Index j)
void compute1x2offDiagonalBlock (MatrixType &sqrtT, const MatrixType &T, typename MatrixType::Index i, typename MatrixType::Index j)
void compute2x1offDiagonalBlock (MatrixType &sqrtT, const MatrixType &T, typename MatrixType::Index i, typename MatrixType::Index j)
void compute2x2diagonalBlock (MatrixType &sqrtT, const MatrixType &T, typename MatrixType::Index i)
void compute2x2offDiagonalBlock (MatrixType &sqrtT, const MatrixType &T, typename MatrixType::Index i, typename MatrixType::Index j)
void computeDiagonalPartOfSqrt (MatrixType &sqrtT, const MatrixType &T)
void computeOffDiagonalPartOfSqrt (MatrixType &sqrtT, const MatrixType &T)

Static Private Member Functions

template<typename SmallMatrixType >
static void solveAuxiliaryEquation (SmallMatrixType &X, const SmallMatrixType &A, const SmallMatrixType &B, const SmallMatrixType &C)

Private Attributes

const MatrixType & m_A

Detailed Description

template<typename MatrixType>
class Eigen::MatrixSquareRootQuasiTriangular< MatrixType >

Class for computing matrix square roots of upper quasi-triangular matrices.

Template Parameters:
MatrixTypetype of the argument of the matrix square root, expected to be an instantiation of the Matrix class template.

This class computes the square root of the upper quasi-triangular matrix stored in the upper Hessenberg part of the matrix passed to the constructor.

See also:
MatrixSquareRoot, MatrixSquareRootTriangular

Definition at line 27 of file MatrixSquareRoot.h.


Member Typedef Documentation

template<typename MatrixType >
typedef MatrixType::Index Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::Index [private]

Definition at line 56 of file MatrixSquareRoot.h.

template<typename MatrixType >
typedef MatrixType::Scalar Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::Scalar [private]

Definition at line 57 of file MatrixSquareRoot.h.


Constructor & Destructor Documentation

template<typename MatrixType >
Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::MatrixSquareRootQuasiTriangular ( const MatrixType &  A) [inline]

Constructor.

Parameters:
[in]Aupper quasi-triangular matrix whose square root is to be computed.

The class stores a reference to A, so it should not be changed (or destroyed) before compute() is called.

Definition at line 39 of file MatrixSquareRoot.h.


Member Function Documentation

template<typename MatrixType >
template<typename ResultType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::compute ( ResultType &  result)

Compute the matrix square root.

Parameters:
[out]resultsquare root of A, as specified in the constructor.

Only the upper Hessenberg part of result is updated, the rest is not touched. See MatrixBase::sqrt() for details on how this computation is implemented.

Definition at line 80 of file MatrixSquareRoot.h.

template<typename MatrixType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::compute1x1offDiagonalBlock ( MatrixType &  sqrtT,
const MatrixType &  T,
typename MatrixType::Index  i,
typename MatrixType::Index  j 
) [private]

Definition at line 153 of file MatrixSquareRoot.h.

template<typename MatrixType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::compute1x2offDiagonalBlock ( MatrixType &  sqrtT,
const MatrixType &  T,
typename MatrixType::Index  i,
typename MatrixType::Index  j 
) [private]

Definition at line 163 of file MatrixSquareRoot.h.

template<typename MatrixType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::compute2x1offDiagonalBlock ( MatrixType &  sqrtT,
const MatrixType &  T,
typename MatrixType::Index  i,
typename MatrixType::Index  j 
) [private]

Definition at line 177 of file MatrixSquareRoot.h.

template<typename MatrixType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::compute2x2diagonalBlock ( MatrixType &  sqrtT,
const MatrixType &  T,
typename MatrixType::Index  i 
) [private]

Definition at line 138 of file MatrixSquareRoot.h.

template<typename MatrixType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::compute2x2offDiagonalBlock ( MatrixType &  sqrtT,
const MatrixType &  T,
typename MatrixType::Index  i,
typename MatrixType::Index  j 
) [private]

Definition at line 191 of file MatrixSquareRoot.h.

template<typename MatrixType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::computeDiagonalPartOfSqrt ( MatrixType &  sqrtT,
const MatrixType &  T 
) [private]

Definition at line 90 of file MatrixSquareRoot.h.

template<typename MatrixType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::computeOffDiagonalPartOfSqrt ( MatrixType &  sqrtT,
const MatrixType &  T 
) [private]

Definition at line 110 of file MatrixSquareRoot.h.

template<typename MatrixType >
template<typename SmallMatrixType >
void Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::solveAuxiliaryEquation ( SmallMatrixType &  X,
const SmallMatrixType &  A,
const SmallMatrixType &  B,
const SmallMatrixType &  C 
) [static, private]

Definition at line 208 of file MatrixSquareRoot.h.


Member Data Documentation

template<typename MatrixType >
const MatrixType& Eigen::MatrixSquareRootQuasiTriangular< MatrixType >::m_A [private]

Definition at line 75 of file MatrixSquareRoot.h.


The documentation for this class was generated from the following file:


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Sat Jun 8 2019 19:40:49