dune-pdelab 2.8
Loading...
Searching...
No Matches
Dune::PDELab::GridOperatorPreconditioner< PrecGO > Class Template Referenceabstract

Turn a grid operator that represents a preconditioner into an ISTL preconditioner. More...

#include <dune/pdelab/backend/istl/matrixfree/gridoperatorpreconditioner.hh>

Inheritance diagram for Dune::PDELab::GridOperatorPreconditioner< PrecGO >:
Inheritance graph

Public Types

typedef X domain_type
 
typedef Y range_type
 
typedef X::field_type field_type
 

Public Member Functions

Dune::SolverCategory::Category category () const override
 
 GridOperatorPreconditioner (const PrecGO &precgo)
 
void setLinearizationPoint (const Domain &u)
 
void pre (Domain &v, Range &d) override
 prepare preconditioner
 
void apply (Domain &v, const Range &d) override
 
void post (Domain &v) override
 
virtual void pre (X &x, Y &b)=0
 
virtual void apply (X &v, const Y &d)=0
 
virtual void post (X &x)=0
 

Static Public Attributes

static constexpr bool isLinear = PrecGO::LocalAssembler::isLinear()
 

Detailed Description

template<class PrecGO>
class Dune::PDELab::GridOperatorPreconditioner< PrecGO >

Turn a grid operator that represents a preconditioner into an ISTL preconditioner.

Template Parameters
PrecGOGrid operator implementing the matrix-free preconditioner application

Constructor & Destructor Documentation

◆ GridOperatorPreconditioner()

template<class PrecGO >
Dune::PDELab::GridOperatorPreconditioner< PrecGO >::GridOperatorPreconditioner ( const PrecGO &  precgo)
inline

Member Function Documentation

◆ apply()

template<class PrecGO >
void Dune::PDELab::GridOperatorPreconditioner< PrecGO >::apply ( Domain &  v,
const Range &  d 
)
inlineoverride

◆ category()

◆ post()

template<class PrecGO >
void Dune::PDELab::GridOperatorPreconditioner< PrecGO >::post ( Domain &  v)
inlineoverride

◆ pre()

template<class PrecGO >
void Dune::PDELab::GridOperatorPreconditioner< PrecGO >::pre ( Domain &  v,
Range &  d 
)
inlineoverride

prepare preconditioner

◆ setLinearizationPoint()

template<class PrecGO >
void Dune::PDELab::GridOperatorPreconditioner< PrecGO >::setLinearizationPoint ( const Domain &  u)
inline

Set linearization point Must be called before apply() for nonlinear problems.

Member Data Documentation

◆ isLinear

template<class PrecGO >
constexpr bool Dune::PDELab::GridOperatorPreconditioner< PrecGO >::isLinear = PrecGO::LocalAssembler::isLinear()
staticconstexpr

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