Dune::Preconditioner2InverseOperator< X > Class Template Reference

Adapter exposing a preconditioner through the inverse-operator interface. More...

#include <Preconditioner2InverseOperator.hpp>

Inheritance diagram for Dune::Preconditioner2InverseOperator< X >:
Inheritance graph

Public Types

using PreconditionerType = Preconditioner< X, X >
 

Public Member Functions

 Preconditioner2InverseOperator (PreconditionerType &prec)
 
 Preconditioner2InverseOperator (std::shared_ptr< PreconditionerType > prec)
 
void apply (X &x, X &b, InverseOperatorResult &res) override
 
void apply (X &x, X &b, double reduction, InverseOperatorResult &res) override
 
SolverCategory::Category category () const override
 

Detailed Description

template<class X>
class Dune::Preconditioner2InverseOperator< X >

Adapter exposing a preconditioner through the inverse-operator interface.

Each apply() call performs one preconditioner application. Unlike LoopSolver it does not update the defect with the linear operator or run iterative convergence checks.

Member Typedef Documentation

◆ PreconditionerType

template<class X >
using Dune::Preconditioner2InverseOperator< X >::PreconditionerType = Preconditioner<X, X>

Constructor & Destructor Documentation

◆ Preconditioner2InverseOperator() [1/2]

template<class X >
Dune::Preconditioner2InverseOperator< X >::Preconditioner2InverseOperator ( PreconditionerType prec)
inlineexplicit

◆ Preconditioner2InverseOperator() [2/2]

template<class X >
Dune::Preconditioner2InverseOperator< X >::Preconditioner2InverseOperator ( std::shared_ptr< PreconditionerType prec)
inlineexplicit

Member Function Documentation

◆ apply() [1/2]

template<class X >
void Dune::Preconditioner2InverseOperator< X >::apply ( X &  x,
X &  b,
double  reduction,
InverseOperatorResult &  res 
)
inlineoverride

◆ apply() [2/2]

template<class X >
void Dune::Preconditioner2InverseOperator< X >::apply ( X &  x,
X &  b,
InverseOperatorResult &  res 
)
inlineoverride

◆ category()

template<class X >
SolverCategory::Category Dune::Preconditioner2InverseOperator< X >::category ( ) const
inlineoverride

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