AMDiS 2.10
The Adaptive Multi-Dimensional Simulation Toolbox
UmfpackRunner< M, X, Y > Class Template Reference

Wrapper for the external UMFPACK solver More...

#include <UmfpackRunner.hpp>

Inherits RunnerInterface, and LinearSolverInterface< M, X, Y >.

Classes

struct  Creator
 

Public Member Functions

 UmfpackRunner (std::string const &prefix)
 Constructor. Reads UMFPACK parameters from initfile.
 
void init (M const &A) override
 Implements LinearSolverInterface::init() More...
 
void finish () override
 Implements LinearSolverInterface::finish() More...
 
void apply (X &x, Y const &b, Dune::InverseOperatorResult &stat) override
 Implements LinearSolverInterface::apply() More...
 
virtual void init (M const &A)=0
 Prepare the solve (and preconditioner), e.g. make a factorization of the matrix, or extract its diagonal in a jacobian precon. More...
 
virtual void finish ()=0
 Cleanup the solver, e.g. free the previously created factorization. More...
 
virtual void apply (X &x, Y const &b, Dune::InverseOperatorResult &res)=0
 Apply the inverse operator to the rhs vector b. More...
 

Static Protected Member Functions

static void umfpack_error_exit (std::string solutionPhase, int code)
 

Protected Attributes

std::shared_ptr< SolverType > solver_
 
bool storeSymbolic_ = false
 
int symmetricStrategy_ = 0
 
double allocInit_ = 0.7
 

Detailed Description

template<class M, class X, class Y>
class AMDiS::UmfpackRunner< M, X, Y >

Wrapper for the external UMFPACK solver

This is a direct solver for large sparse matrices.

Member Function Documentation

◆ apply()

void apply ( X &  x,
Y const &  b,
Dune::InverseOperatorResult &  stat 
)
inlineoverridevirtual

◆ finish()

void finish ( )
inlineoverridevirtual

◆ init()

void init ( M const &  A)
inlineoverridevirtual

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