MOAB  4.9.3pre
Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo > Class Template Reference

A supernodal Cholesky (LLT) factorization and solver based on Cholmod. More...

#include <CholmodSupport.h>

Inheritance diagram for Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >:
Collaboration diagram for Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >:

List of all members.

Public Types

typedef _MatrixType MatrixType

Public Member Functions

 CholmodSupernodalLLT ()
 CholmodSupernodalLLT (const MatrixType &matrix)
 ~CholmodSupernodalLLT ()

Protected Member Functions

void init ()

Private Types

typedef CholmodBase
< _MatrixType, _UpLo,
CholmodSupernodalLLT
Base

Detailed Description

template<typename _MatrixType, int _UpLo = Lower>
class Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >

A supernodal Cholesky (LLT) factorization and solver based on Cholmod.

This class allows to solve for A.X = B sparse linear problems via a supernodal LL^T Cholesky factorization using the Cholmod library. This supernodal variant performs best on dense enough problems, e.g., 3D FEM, or very high order 2D FEM. The sparse matrix A must be selfadjoint and positive definite. The vectors or matrices X and B can be either dense or sparse.

Template Parameters:
_MatrixTypethe type of the sparse matrix A, it must be a SparseMatrix<>
_UpLothe triangular part that will be used for the computations. It can be Lower or Upper. Default is Lower.

This class supports all kind of SparseMatrix<>: row or column major; upper, lower, or both; compressed or non compressed.

See also:
TutorialSparseSolverConcept

Definition at line 512 of file CholmodSupport.h.


Member Typedef Documentation

template<typename _MatrixType , int _UpLo = Lower>
typedef CholmodBase<_MatrixType, _UpLo, CholmodSupernodalLLT> Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >::Base [private]
template<typename _MatrixType , int _UpLo = Lower>
typedef _MatrixType Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >::MatrixType

Constructor & Destructor Documentation

template<typename _MatrixType , int _UpLo = Lower>
Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >::CholmodSupernodalLLT ( ) [inline]

Definition at line 521 of file CholmodSupport.h.

: Base() { init(); }
template<typename _MatrixType , int _UpLo = Lower>
Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >::CholmodSupernodalLLT ( const MatrixType matrix) [inline]

Definition at line 523 of file CholmodSupport.h.

                                                   : Base()
    {
      init();
      this->compute(matrix);
    }
template<typename _MatrixType , int _UpLo = Lower>
Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >::~CholmodSupernodalLLT ( ) [inline]

Definition at line 529 of file CholmodSupport.h.

{}

Member Function Documentation

template<typename _MatrixType , int _UpLo = Lower>
void Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >::init ( ) [inline, protected]

Definition at line 531 of file CholmodSupport.h.

    {
      m_cholmod.final_asis = 1;
      m_cholmod.supernodal = CHOLMOD_SUPERNODAL;
    }

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines