Path Tracer
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
Eigen::KLU< _MatrixType > Class Template Reference
Inheritance diagram for Eigen::KLU< _MatrixType >:
Eigen::SparseSolverBase< KLU< _MatrixType > > Eigen::internal::noncopyable

Public Types

enum  { ColsAtCompileTime = MatrixType::ColsAtCompileTime, MaxColsAtCompileTime = MatrixType::MaxColsAtCompileTime }
 
typedef _MatrixType MatrixType
 
typedef MatrixType::Scalar Scalar
 
typedef MatrixType::RealScalar RealScalar
 
typedef MatrixType::StorageIndex StorageIndex
 
typedef Matrix< Scalar, Dynamic, 1 > Vector
 
typedef Matrix< int, 1, MatrixType::ColsAtCompileTime > IntRowVectorType
 
typedef Matrix< int, MatrixType::RowsAtCompileTime, 1 > IntColVectorType
 
typedef SparseMatrix< Scalar > LUMatrixType
 
typedef SparseMatrix< Scalar, ColMajor, int > KLUMatrixType
 
typedef Ref< const KLUMatrixType, StandardCompressedFormatKLUMatrixRef
 

Public Member Functions

template<typename InputMatrixType >
 KLU (const InputMatrixType &matrix)
 
Index rows () const
 
Index cols () const
 
ComputationInfo info () const
 Reports whether previous computation was successful. More...
 
template<typename InputMatrixType >
void compute (const InputMatrixType &matrix)
 
template<typename InputMatrixType >
void analyzePattern (const InputMatrixType &matrix)
 
const klu_common & kluCommon () const
 
klu_common & kluCommon ()
 
template<typename InputMatrixType >
void factorize (const InputMatrixType &matrix)
 
template<typename BDerived , typename XDerived >
bool _solve_impl (const MatrixBase< BDerived > &b, MatrixBase< XDerived > &x) const
 
- Public Member Functions inherited from Eigen::SparseSolverBase< KLU< _MatrixType > >
 SparseSolverBase ()
 
KLU< _MatrixType > & derived ()
 
const KLU< _MatrixType > & derived () const
 
const Solve< KLU< _MatrixType >, Rhs > solve (const MatrixBase< Rhs > &b) const
 
const Solve< KLU< _MatrixType >, Rhs > solve (const SparseMatrixBase< Rhs > &b) const
 
void _solve_impl (const SparseMatrixBase< Rhs > &b, SparseMatrixBase< Dest > &dest) const
 

Protected Types

typedef SparseSolverBase< KLU< _MatrixType > > Base
 

Protected Member Functions

void init ()
 
void analyzePattern_impl ()
 
void factorize_impl ()
 
template<typename MatrixDerived >
void grab (const EigenBase< MatrixDerived > &A)
 
void grab (const KLUMatrixRef &A)
 

Protected Attributes

KLUMatrixType m_dummy
 
KLUMatrixRef mp_matrix
 
klu_numeric * m_numeric
 
klu_symbolic * m_symbolic
 
klu_common m_common
 
ComputationInfo m_info
 
int m_factorizationIsOk
 
int m_analysisIsOk
 
bool m_extractedDataAreDirty
 
- Protected Attributes inherited from Eigen::SparseSolverBase< KLU< _MatrixType > >
bool m_isInitialized
 

Member Function Documentation

◆ analyzePattern()

template<typename _MatrixType >
template<typename InputMatrixType >
void Eigen::KLU< _MatrixType >::analyzePattern ( const InputMatrixType &  matrix)
inline

Performs a symbolic decomposition on the sparcity of matrix.

This function is particularly useful when solving for several problems having the same structure.

See also
factorize(), compute()

◆ compute()

template<typename _MatrixType >
template<typename InputMatrixType >
void Eigen::KLU< _MatrixType >::compute ( const InputMatrixType &  matrix)
inline

Computes the sparse Cholesky decomposition of matrix Note that the matrix should be column-major, and in compressed format for best performance.

See also
SparseMatrix::makeCompressed().

◆ factorize()

template<typename _MatrixType >
template<typename InputMatrixType >
void Eigen::KLU< _MatrixType >::factorize ( const InputMatrixType &  matrix)
inline

Performs a numeric decomposition of matrix

The given matrix must has the same sparcity than the matrix on which the pattern anylysis has been performed.

See also
analyzePattern(), compute()

◆ info()

template<typename _MatrixType >
ComputationInfo Eigen::KLU< _MatrixType >::info ( ) const
inline

Reports whether previous computation was successful.

Returns
Success if computation was successful, NumericalIssue if the matrix.appears to be negative.

◆ kluCommon() [1/2]

template<typename _MatrixType >
klu_common& Eigen::KLU< _MatrixType >::kluCommon ( )
inline

Provides access to the control settings array used by UmfPack.

If this array contains NaN's, the default values are used.

See KLU documentation for details.

◆ kluCommon() [2/2]

template<typename _MatrixType >
const klu_common& Eigen::KLU< _MatrixType >::kluCommon ( ) const
inline

Provides access to the control settings array used by KLU.

See KLU documentation for details.


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