Logo Search packages:      
Sourcecode: eigen3 version File versions  Download package

Public Types | Public Member Functions | Protected Attributes

LLT< _MatrixType, _UpLo > Class Template Reference

Standard Cholesky decomposition (LL^T) of a matrix and associated features. More...

#include <LLT.h>

Collaboration diagram for LLT< _MatrixType, _UpLo >:
Collaboration graph
[legend]

List of all members.

Public Types

enum  { RowsAtCompileTime = MatrixType::RowsAtCompileTime, ColsAtCompileTime = MatrixType::ColsAtCompileTime, Options = MatrixType::Options, MaxColsAtCompileTime = MatrixType::MaxColsAtCompileTime }
enum  { PacketSize = internal::packet_traits<Scalar>::size, AlignmentMask = int(PacketSize)-1, UpLo = _UpLo }
typedef MatrixType::Index Index
typedef _MatrixType MatrixType
typedef NumTraits< typename
MatrixType::Scalar >::Real 
RealScalar
typedef MatrixType::Scalar Scalar
typedef internal::LLT_Traits
< MatrixType, UpLo > 
Traits

Public Member Functions

Index cols () const
LLTcompute (const MatrixType &matrix)
ComputationInfo info () const
 Reports whether previous computation was successful.
 LLT (Index size)
 Default Constructor with memory preallocation.
 LLT ()
 Default Constructor.
 LLT (const MatrixType &matrix)
Traits::MatrixL matrixL () const
const MatrixType & matrixLLT () const
Traits::MatrixU matrixU () const
MatrixType reconstructedMatrix () const
Index rows () const
template<typename Rhs >
const internal::solve_retval
< LLT, Rhs > 
solve (const MatrixBase< Rhs > &b) const
template<typename Derived >
void solveInPlace (MatrixBase< Derived > &bAndX) const

Protected Attributes

ComputationInfo m_info
bool m_isInitialized
MatrixType m_matrix

Detailed Description

template<typename _MatrixType, int _UpLo>
class LLT< _MatrixType, _UpLo >

Standard Cholesky decomposition (LL^T) of a matrix and associated features.

Parameters:
MatrixTypethe type of the matrix of which we are computing the LL^T Cholesky decomposition

This class performs a LL^T Cholesky decomposition of a symmetric, positive definite matrix A such that A = LL^* = U^*U, where L is lower triangular.

While the Cholesky decomposition is particularly useful to solve selfadjoint problems like D^*D x = b, for that purpose, we recommend the Cholesky decomposition without square root which is more stable and even faster. Nevertheless, this standard Cholesky decomposition remains useful in many other situations like generalised eigen problems with hermitian matrices.

Remember that Cholesky decompositions are not rank-revealing. This LLT decomposition is only stable on positive definite matrices, use LDLT instead for the semidefinite case. Also, do not use a Cholesky decomposition to determine whether a system of equations has a solution.

See also:
MatrixBase::llt(), class LDLT

Definition at line 58 of file LLT.h.


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

Generated by  Doxygen 1.6.0   Back to index