UMFPack< SparseMatrixType, VectorType > Class Template Reference#

DiFfRG: DiFfRG::UMFPack< SparseMatrixType, VectorType > Class Template Reference
DiFfRG
Discretization Framework for functional Renormalization Group flows
DiFfRG::UMFPack< SparseMatrixType, VectorType > Class Template Reference

#include <UMFPack.hh>

Inheritance diagram for DiFfRG::UMFPack< SparseMatrixType, VectorType >:
DiFfRG::AbstractLinearSolver< SparseMatrixType, VectorType >

Public Member Functions

 UMFPack ()
 
void init (const SparseMatrixType &matrix)
 
bool invert ()
 
int solve (const VectorType &src, VectorType &dst, const double)
 
void solve_transpose (const VectorType &src, VectorType &dst) const
 
double estimate_rcond (const SparseMatrixType &input_matrix, const unsigned int max_iterations=5) const
 
double estimate_scaled_rcond (const SparseMatrixType &input_matrix, const unsigned int max_iterations=5) const
 
- Public Member Functions inherited from DiFfRG::AbstractLinearSolver< SparseMatrixType, VectorType >
 AbstractLinearSolver ()
 
void set_report_port (ReportPort port)
 
void init (const SparseMatrixType &matrix)
 
bool invert ()
 
int solve (const VectorType &src, const VectorType &dst, const double tol)
 

Static Public Attributes

static constexpr bool performs_factorization = true
 

Private Attributes

const SparseMatrixType * matrix
 
dealii::SparseDirectUMFPACK solver
 

Additional Inherited Members

- Protected Attributes inherited from DiFfRG::AbstractLinearSolver< SparseMatrixType, VectorType >
ReportPort report_port
 

Constructor & Destructor Documentation

◆ UMFPack()

template<typename SparseMatrixType , typename VectorType >
DiFfRG::UMFPack< SparseMatrixType, VectorType >::UMFPack ( )
inline

Member Function Documentation

◆ estimate_rcond()

template<typename SparseMatrixType , typename VectorType >
double DiFfRG::UMFPack< SparseMatrixType, VectorType >::estimate_rcond ( const SparseMatrixType & input_matrix,
const unsigned int max_iterations = 5 ) const
inline

◆ estimate_scaled_rcond()

template<typename SparseMatrixType , typename VectorType >
double DiFfRG::UMFPack< SparseMatrixType, VectorType >::estimate_scaled_rcond ( const SparseMatrixType & input_matrix,
const unsigned int max_iterations = 5 ) const
inline

◆ init()

template<typename SparseMatrixType , typename VectorType >
void DiFfRG::UMFPack< SparseMatrixType, VectorType >::init ( const SparseMatrixType & matrix)
inline

◆ invert()

template<typename SparseMatrixType , typename VectorType >
bool DiFfRG::UMFPack< SparseMatrixType, VectorType >::invert ( )
inline

◆ solve()

template<typename SparseMatrixType , typename VectorType >
int DiFfRG::UMFPack< SparseMatrixType, VectorType >::solve ( const VectorType & src,
VectorType & dst,
const double  )
inline

◆ solve_transpose()

template<typename SparseMatrixType , typename VectorType >
void DiFfRG::UMFPack< SparseMatrixType, VectorType >::solve_transpose ( const VectorType & src,
VectorType & dst ) const
inline

Member Data Documentation

◆ matrix

template<typename SparseMatrixType , typename VectorType >
const SparseMatrixType* DiFfRG::UMFPack< SparseMatrixType, VectorType >::matrix
private

◆ performs_factorization

template<typename SparseMatrixType , typename VectorType >
bool DiFfRG::UMFPack< SparseMatrixType, VectorType >::performs_factorization = true
staticconstexpr

◆ solver

template<typename SparseMatrixType , typename VectorType >
dealii::SparseDirectUMFPACK DiFfRG::UMFPack< SparseMatrixType, VectorType >::solver
private

The documentation for this class was generated from the following file:
  • /home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/timestepping/linear_solver/UMFPack.hh