Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SuperLUBase< _MatrixType, Derived > Class Template Reference

The base class for the direct and incomplete LU factorization of SuperLU. More...

#include <SuperLUSupport.h>

Inherits noncopyable.

Public Types

typedef MatrixType::Index Index
typedef Matrix< int,
MatrixType::RowsAtCompileTime, 1 > 
IntColVectorType
typedef Matrix< int,
1, MatrixType::ColsAtCompileTime > 
IntRowVectorType
typedef SparseMatrix< ScalarLUMatrixType
typedef _MatrixType MatrixType
typedef MatrixType::RealScalar RealScalar
typedef MatrixType::Scalar Scalar
typedef Matrix< Scalar,
Dynamic, 1 > 
Vector

Public Member Functions

void analyzePattern (const MatrixType &)
Index cols () const
void compute (const MatrixType &matrix)
Derived & derived ()
const Derived & derived () const
template<typename Stream >
void dumpMemory (Stream &s)
ComputationInfo info () const
 Reports whether previous computation was successful.
superlu_options_toptions ()
Index rows () const
template<typename Rhs >
const internal::solve_retval
< SuperLUBase, Rhs > 
solve (const MatrixBase< Rhs > &b) const
 SuperLUBase ()
 ~SuperLUBase ()

Protected Member Functions

void clearFactors ()
void extractData () const
void init ()
void initFactorization (const MatrixType &a)

Protected Attributes

int m_analysisIsOk
bool m_extractedDataAreDirty
int m_factorizationIsOk
ComputationInfo m_info
bool m_isInitialized
LUMatrixType m_l
LUMatrixType m_matrix
IntColVectorType m_p
IntRowVectorType m_q
SluMatrix m_sluA
SluMatrix m_sluB
Matrix< RealScalar, Dynamic, 1 > m_sluBerr
Matrix< RealScalar, Dynamic, 1 > m_sluCscale
char m_sluEqued
std::vector< intm_sluEtree
Matrix< RealScalar, Dynamic, 1 > m_sluFerr
SuperMatrix m_sluL
superlu_options_t m_sluOptions
Matrix< RealScalar, Dynamic, 1 > m_sluRscale
SuperLUStat_t m_sluStat
SuperMatrix m_sluU
SluMatrix m_sluX
LUMatrixType m_u

Detailed Description

template<typename _MatrixType, typename Derived>
class Eigen::SuperLUBase< _MatrixType, Derived >

The base class for the direct and incomplete LU factorization of SuperLU.

Member Typedef Documentation

typedef MatrixType::Index Index
typedef Matrix<int, MatrixType::RowsAtCompileTime, 1> IntColVectorType
typedef Matrix<int, 1, MatrixType::ColsAtCompileTime> IntRowVectorType
typedef _MatrixType MatrixType
typedef MatrixType::RealScalar RealScalar
typedef MatrixType::Scalar Scalar

Constructor & Destructor Documentation

SuperLUBase ( )
inline
~SuperLUBase ( )
inline

Member Function Documentation

void analyzePattern ( const MatrixType )
inline
Returns
the solution x of $ A x = b $ using the current decomposition of A.
See Also
compute()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()

Reimplemented in SuperILU< _MatrixType >, and SuperLU< _MatrixType >.

Referenced by SuperLU< _MatrixType >::analyzePattern(), and SuperILU< _MatrixType >::analyzePattern().

void clearFactors ( )
inlineprotected
Index cols ( void  ) const
inline
void compute ( const MatrixType matrix)
inline

Computes the sparse Cholesky decomposition of matrix

Derived& derived ( )
inline
const Derived& derived ( ) const
inline
void dumpMemory ( Stream &  s)
inline
void extractData ( ) const
protected

References eigen_assert.

ComputationInfo info ( ) const
inline

Reports whether previous computation was successful.

Returns
Success if computation was succesful, NumericalIssue if the matrix.appears to be negative.
void init ( )
inlineprotected
void initFactorization ( const MatrixType a)
inlineprotected
superlu_options_t& options ( )
inline
Returns
a reference to the Super LU option object to configure the Super LU algorithms.
Index rows ( void  ) const
inline
const internal::solve_retval<SuperLUBase, Rhs> solve ( const MatrixBase< Rhs > &  b) const
inline
Returns
the solution x of $ A x = b $ using the current decomposition of A.
See Also
compute()

Member Data Documentation

int m_analysisIsOk
protected
bool m_extractedDataAreDirty
mutableprotected
int m_factorizationIsOk
protected
ComputationInfo m_info
mutableprotected
bool m_isInitialized
protected
LUMatrixType m_l
mutableprotected
LUMatrixType m_matrix
mutableprotected
IntColVectorType m_p
mutableprotected
IntRowVectorType m_q
mutableprotected
SluMatrix m_sluA
mutableprotected
SluMatrix m_sluB
mutableprotected
Matrix<RealScalar,Dynamic,1> m_sluBerr
mutableprotected
Matrix<RealScalar,Dynamic,1> m_sluCscale
mutableprotected
char m_sluEqued
mutableprotected
std::vector<int> m_sluEtree
mutableprotected
Matrix<RealScalar,Dynamic,1> m_sluFerr
mutableprotected
SuperMatrix m_sluL
mutableprotected
superlu_options_t m_sluOptions
mutableprotected
Matrix<RealScalar,Dynamic,1> m_sluRscale
mutableprotected
SuperLUStat_t m_sluStat
mutableprotected
SuperMatrix m_sluU
mutableprotected
SluMatrix m_sluX
mutableprotected
LUMatrixType m_u
mutableprotected

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