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

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

#include <SuperLUSupport.h>

+ Inheritance diagram for Eigen::SuperLUBase< _MatrixType, Derived >:

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 Map< PermutationMatrix< Dynamic, Dynamic, int > > PermutationMap
 
typedef SparseMatrix< ScalarLUMatrixType
 

Public Member Functions

 SuperLUBase ()
 
 ~SuperLUBase ()
 
Index rows () const
 
Index cols () const
 
superlu_options_t & options ()
 
ComputationInfo info () const
 Reports whether previous computation was successful. More...
 
void compute (const MatrixType &matrix)
 
void analyzePattern (const MatrixType &)
 
template<typename Stream >
void dumpMemory (Stream &)
 
- Public Member Functions inherited from Eigen::SparseSolverBase< Derived >
 SparseSolverBase ()
 
 ~SparseSolverBase ()
 
Derived & derived ()
 
const Derived & derived () const
 
template<typename Rhs >
const Solve< Derived, Rhs > solve (const MatrixBase< Rhs > &b) const
 
template<typename Rhs >
const Solve< Derived, Rhs > solve (const SparseMatrixBase< Rhs > &b) const
 
template<typename Rhs , typename Dest >
void _solve_impl (const SparseMatrixBase< Rhs > &b, SparseMatrixBase< Dest > &dest) const
 

Protected Types

typedef SparseSolverBase< Derived > Base
 

Protected Member Functions

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

Protected Attributes

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

Private Member Functions

 SuperLUBase (SuperLUBase &)
 

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

◆ Base

template<typename _MatrixType , typename Derived >
typedef SparseSolverBase<Derived> Eigen::SuperLUBase< _MatrixType, Derived >::Base
protected

◆ IntColVectorType

template<typename _MatrixType , typename Derived >
typedef Matrix<int, MatrixType::RowsAtCompileTime, 1> Eigen::SuperLUBase< _MatrixType, Derived >::IntColVectorType

◆ IntRowVectorType

template<typename _MatrixType , typename Derived >
typedef Matrix<int, 1, MatrixType::ColsAtCompileTime> Eigen::SuperLUBase< _MatrixType, Derived >::IntRowVectorType

◆ LUMatrixType

template<typename _MatrixType , typename Derived >
typedef SparseMatrix<Scalar> Eigen::SuperLUBase< _MatrixType, Derived >::LUMatrixType

◆ MatrixType

template<typename _MatrixType , typename Derived >
typedef _MatrixType Eigen::SuperLUBase< _MatrixType, Derived >::MatrixType

◆ PermutationMap

template<typename _MatrixType , typename Derived >
typedef Map<PermutationMatrix<Dynamic,Dynamic,int> > Eigen::SuperLUBase< _MatrixType, Derived >::PermutationMap

◆ RealScalar

template<typename _MatrixType , typename Derived >
typedef MatrixType::RealScalar Eigen::SuperLUBase< _MatrixType, Derived >::RealScalar

◆ Scalar

template<typename _MatrixType , typename Derived >
typedef MatrixType::Scalar Eigen::SuperLUBase< _MatrixType, Derived >::Scalar

◆ StorageIndex

template<typename _MatrixType , typename Derived >
typedef MatrixType::StorageIndex Eigen::SuperLUBase< _MatrixType, Derived >::StorageIndex

◆ Vector

template<typename _MatrixType , typename Derived >
typedef Matrix<Scalar,Dynamic,1> Eigen::SuperLUBase< _MatrixType, Derived >::Vector

Member Enumeration Documentation

◆ anonymous enum

template<typename _MatrixType , typename Derived >
anonymous enum
Enumerator
ColsAtCompileTime 
MaxColsAtCompileTime 

Constructor & Destructor Documentation

◆ SuperLUBase() [1/2]

template<typename _MatrixType , typename Derived >
Eigen::SuperLUBase< _MatrixType, Derived >::SuperLUBase ( )
inline

◆ ~SuperLUBase()

template<typename _MatrixType , typename Derived >
Eigen::SuperLUBase< _MatrixType, Derived >::~SuperLUBase ( )
inline

◆ SuperLUBase() [2/2]

template<typename _MatrixType , typename Derived >
Eigen::SuperLUBase< _MatrixType, Derived >::SuperLUBase ( SuperLUBase< _MatrixType, Derived > &  )
inlineprivate

Member Function Documentation

◆ analyzePattern()

template<typename _MatrixType , typename Derived >
void Eigen::SuperLUBase< _MatrixType, Derived >::analyzePattern ( const MatrixType )
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()

◆ clearFactors()

template<typename _MatrixType , typename Derived >
void Eigen::SuperLUBase< _MatrixType, Derived >::clearFactors ( )
inlineprotected

◆ cols()

template<typename _MatrixType , typename Derived >
Index Eigen::SuperLUBase< _MatrixType, Derived >::cols ( void  ) const
inline

◆ compute()

template<typename _MatrixType , typename Derived >
void Eigen::SuperLUBase< _MatrixType, Derived >::compute ( const MatrixType matrix)
inline

Computes the sparse Cholesky decomposition of matrix

◆ derived() [1/2]

template<typename _MatrixType , typename Derived >
Derived& Eigen::SparseSolverBase< Derived >::derived
inlineprotected

◆ derived() [2/2]

template<typename _MatrixType , typename Derived >
const Derived& Eigen::SparseSolverBase< Derived >::derived
inlineprotected

◆ dumpMemory()

template<typename _MatrixType , typename Derived >
template<typename Stream >
void Eigen::SuperLUBase< _MatrixType, Derived >::dumpMemory ( Stream )
inline

◆ extractData()

template<typename MatrixType , typename Derived >
void Eigen::SuperLUBase< MatrixType, Derived >::extractData
protected

◆ info()

template<typename _MatrixType , typename Derived >
ComputationInfo Eigen::SuperLUBase< _MatrixType, Derived >::info ( ) const
inline

Reports whether previous computation was successful.

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

◆ init()

template<typename _MatrixType , typename Derived >
void Eigen::SuperLUBase< _MatrixType, Derived >::init ( )
inlineprotected

◆ initFactorization()

template<typename _MatrixType , typename Derived >
void Eigen::SuperLUBase< _MatrixType, Derived >::initFactorization ( const MatrixType a)
inlineprotected

◆ options()

template<typename _MatrixType , typename Derived >
superlu_options_t& Eigen::SuperLUBase< _MatrixType, Derived >::options ( )
inline
Returns
a reference to the Super LU option object to configure the Super LU algorithms.

◆ rows()

template<typename _MatrixType , typename Derived >
Index Eigen::SuperLUBase< _MatrixType, Derived >::rows ( void  ) const
inline

Member Data Documentation

◆ m_analysisIsOk

template<typename _MatrixType , typename Derived >
int Eigen::SuperLUBase< _MatrixType, Derived >::m_analysisIsOk
protected

◆ m_extractedDataAreDirty

template<typename _MatrixType , typename Derived >
bool Eigen::SuperLUBase< _MatrixType, Derived >::m_extractedDataAreDirty
mutableprotected

◆ m_factorizationIsOk

template<typename _MatrixType , typename Derived >
int Eigen::SuperLUBase< _MatrixType, Derived >::m_factorizationIsOk
protected

◆ m_info

template<typename _MatrixType , typename Derived >
ComputationInfo Eigen::SuperLUBase< _MatrixType, Derived >::m_info
mutableprotected

◆ m_isInitialized

template<typename _MatrixType , typename Derived >
bool Eigen::SparseSolverBase< Derived >::m_isInitialized
mutableprotected

◆ m_l

template<typename _MatrixType , typename Derived >
LUMatrixType Eigen::SuperLUBase< _MatrixType, Derived >::m_l
mutableprotected

◆ m_matrix

template<typename _MatrixType , typename Derived >
LUMatrixType Eigen::SuperLUBase< _MatrixType, Derived >::m_matrix
mutableprotected

◆ m_p

template<typename _MatrixType , typename Derived >
IntColVectorType Eigen::SuperLUBase< _MatrixType, Derived >::m_p
mutableprotected

◆ m_q

template<typename _MatrixType , typename Derived >
IntRowVectorType Eigen::SuperLUBase< _MatrixType, Derived >::m_q
mutableprotected

◆ m_sluA

template<typename _MatrixType , typename Derived >
SluMatrix Eigen::SuperLUBase< _MatrixType, Derived >::m_sluA
mutableprotected

◆ m_sluB

template<typename _MatrixType , typename Derived >
SluMatrix Eigen::SuperLUBase< _MatrixType, Derived >::m_sluB
mutableprotected

◆ m_sluBerr

template<typename _MatrixType , typename Derived >
Matrix<RealScalar,Dynamic,1> Eigen::SuperLUBase< _MatrixType, Derived >::m_sluBerr
protected

◆ m_sluCscale

template<typename _MatrixType , typename Derived >
Matrix<RealScalar,Dynamic,1> Eigen::SuperLUBase< _MatrixType, Derived >::m_sluCscale
protected

◆ m_sluEqued

template<typename _MatrixType , typename Derived >
char Eigen::SuperLUBase< _MatrixType, Derived >::m_sluEqued
mutableprotected

◆ m_sluEtree

template<typename _MatrixType , typename Derived >
std::vector<int> Eigen::SuperLUBase< _MatrixType, Derived >::m_sluEtree
mutableprotected

◆ m_sluFerr

template<typename _MatrixType , typename Derived >
Matrix<RealScalar,Dynamic,1> Eigen::SuperLUBase< _MatrixType, Derived >::m_sluFerr
mutableprotected

◆ m_sluL

template<typename _MatrixType , typename Derived >
SuperMatrix Eigen::SuperLUBase< _MatrixType, Derived >::m_sluL
mutableprotected

◆ m_sluOptions

template<typename _MatrixType , typename Derived >
superlu_options_t Eigen::SuperLUBase< _MatrixType, Derived >::m_sluOptions
mutableprotected

◆ m_sluRscale

template<typename _MatrixType , typename Derived >
Matrix<RealScalar,Dynamic,1> Eigen::SuperLUBase< _MatrixType, Derived >::m_sluRscale
mutableprotected

◆ m_sluStat

template<typename _MatrixType , typename Derived >
SuperLUStat_t Eigen::SuperLUBase< _MatrixType, Derived >::m_sluStat
mutableprotected

◆ m_sluU

template<typename _MatrixType , typename Derived >
SuperMatrix Eigen::SuperLUBase< _MatrixType, Derived >::m_sluU
protected

◆ m_sluX

template<typename _MatrixType , typename Derived >
SluMatrix Eigen::SuperLUBase< _MatrixType, Derived >::m_sluX
protected

◆ m_u

template<typename _MatrixType , typename Derived >
LUMatrixType Eigen::SuperLUBase< _MatrixType, Derived >::m_u
mutableprotected

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