opm-upscaling
Loading...
Searching...
No Matches
Opm::Elasticity::UzawaSolver< X, Y > Class Template Reference

Template implementing an Uzawa scheme (block Gaussian-elimination) for a (symmetric indefinite) saddle-point system. More...

#include <uzawa_solver.hpp>

Inheritance diagram for Opm::Elasticity::UzawaSolver< X, Y >:

Public Types

typedef std::shared_ptr< Dune::InverseOperator< X, Y > > OperatorPtr

Public Member Functions

 UzawaSolver (OperatorPtr &innersolver_, OperatorPtr &outersolver_, const Matrix &B_)
 Default constructor.
void apply (X &x, Y &b, double, Dune::InverseOperatorResult &res) override
 Apply the scheme to a vector.
void apply (X &x, Y &b, Dune::InverseOperatorResult &res) override
 Apply the scheme to a vector.
Dune::SolverCategory::Category category () const override

Protected Attributes

OperatorPtr innersolver
 The inner solver.
OperatorPtr outersolver
 The outer solver.
const MatrixB
 The coupling matrix.

Detailed Description

template<class X, class Y>
class Opm::Elasticity::UzawaSolver< X, Y >

Template implementing an Uzawa scheme (block Gaussian-elimination) for a (symmetric indefinite) saddle-point system.

Constructor & Destructor Documentation

◆ UzawaSolver()

template<class X, class Y>
Opm::Elasticity::UzawaSolver< X, Y >::UzawaSolver ( OperatorPtr & innersolver_,
OperatorPtr & outersolver_,
const Matrix & B_ )
inline

Default constructor.

Parameters
[in]innersolver_The inner solver
[in]outersolver_The outer solver
[in]B_Coupling matrix

Member Function Documentation

◆ apply() [1/2]

template<class X, class Y>
void Opm::Elasticity::UzawaSolver< X, Y >::apply ( X & x,
Y & b,
double ,
Dune::InverseOperatorResult & res )
inlineoverride

Apply the scheme to a vector.

Parameters
[in]xThe solution vector
[in]bThe load vector
[in]reductionIgnored
[in]resThe inverse operator result

◆ apply() [2/2]

template<class X, class Y>
void Opm::Elasticity::UzawaSolver< X, Y >::apply ( X & x,
Y & b,
Dune::InverseOperatorResult & res )
inlineoverride

Apply the scheme to a vector.

Parameters
[in]xThe solution vector
[in]bThe load vector
[in]resThe inverse operator result

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