Template Numerical Library version\ main:a0a944a8c
Loading...
Searching...
No Matches
TNL::Solvers::Linear::UmfpackWrapper< Matrix, SolverMonitor > Class Template Reference
Inheritance diagram for TNL::Solvers::Linear::UmfpackWrapper< Matrix, SolverMonitor >:
Collaboration diagram for TNL::Solvers::Linear::UmfpackWrapper< Matrix, SolverMonitor >:

Public Types

using ConstVectorViewType = typename VectorViewType::ConstViewType
 Type for constant vector view.
using DeviceType = typename Matrix::DeviceType
 Device where the solver will run on and auxiliary data will be allocated on.
using IndexType = typename Matrix::IndexType
 Indexing type.
using MatrixPointer = std::shared_ptr< std::add_const_t< MatrixType > >
 Type of shared pointer to the matrix.
using MatrixType = Matrix
 Type of the matrix representing the linear system.
using RealType = typename Matrix::RealType
 Type for floating point numbers.
using VectorViewType = Containers::VectorView< RealType, DeviceType, IndexType >
 Type for vector view.
Public Types inherited from TNL::Solvers::DirectSolver< Matrix::RealType, Matrix::IndexType, IterativeSolverMonitor< double > >
using IndexType
 Indexing type.
using RealType
 Floating point type used for computations.
using SolverMonitorType
 Type of an object used for monitoring of the convergence.

Public Member Functions

void setMatrix (const MatrixPointer &matrix)
bool solve (ConstVectorViewType b, VectorViewType x)
bool succeeded () const
Public Member Functions inherited from TNL::Solvers::DirectSolver< Matrix::RealType, Matrix::IndexType, IterativeSolverMonitor< double > >
 DirectSolver ()=default
 Default constructor.
const Matrix::RealType & getResidue () const
 Gets the residue reached at the current iteration.
void setRefreshRate (const Matrix::IndexType &refreshRate)
 Sets the refresh rate (in milliseconds) for the solver monitor.
void setResidue (const Matrix::RealType &residue)
 Sets the residue reached at the current iteration.
void setSolverMonitor (SolverMonitorType &solverMonitor)
 Sets the solver monitor object.
bool setup (const Config::ParameterContainer &parameters, const std::string &prefix="")
 Method for setup of the direct solver based on configuration parameters.

Protected Attributes

bool factorized = false
MatrixPointer matrix
bool solver_success = false
Protected Attributes inherited from TNL::Solvers::DirectSolver< Matrix::RealType, Matrix::IndexType, IterativeSolverMonitor< double > >
Matrix::RealType currentResidue
Matrix::IndexType refreshRate
IterativeSolverMonitor< double > * solverMonitor

Additional Inherited Members

Static Public Member Functions inherited from TNL::Solvers::DirectSolver< Matrix::RealType, Matrix::IndexType, IterativeSolverMonitor< double > >
static void configSetup (Config::ConfigDescription &config, const std::string &prefix="")
 This method defines configuration entries for setup of the iterative solver.
static constexpr bool isDirectSolver ()
 Returns true if the solver is a direct solver.
static constexpr bool isIterativeSolver ()
 Returns true if the solver is an iterative solver.

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