Teko Version of the Day
Loading...
Searching...
No Matches
Teko::SmootherLinearOp Class Reference

#include <Teko_SmootherPreconditionerFactory.hpp>

Inheritance diagram for Teko::SmootherLinearOp:

Public Member Functions

virtual VectorSpace range () const
 Range space of this operator.
virtual VectorSpace domain () const
 Domain space of this operator.
virtual void implicitApply (const MultiVector &x, MultiVector &y, const double alpha=1.0, const double beta=0.0) const
 Perform a matrix vector multiply with this implicitly defined blocked operator.
virtual void setRequestHandler (const Teuchos::RCP< RequestHandler > &rh)
 Set the request handler with pointers to the appropriate callbacks.
virtual Teuchos::RCP< RequestHandlergetRequestHandler () const
 Get the request handler with pointers to the appropriate callbacks.

Additional Inherited Members

Protected Member Functions inherited from Teko::ImplicitLinearOp
virtual bool opSupportedImpl (const Thyra::EOpTransp M_trans) const
 Functions required by Thyra::LinearOpBase.

Detailed Description

This class applies an operator as a smoother. The main idea being that a residual is used and corrected to get a Gauss-Seidel like method.

Definition at line 24 of file Teko_SmootherPreconditionerFactory.hpp.

Member Function Documentation

◆ range()

virtual VectorSpace Teko::SmootherLinearOp::range ( ) const
inlinevirtual

Range space of this operator.

Implements Teko::ImplicitLinearOp.

Definition at line 32 of file Teko_SmootherPreconditionerFactory.hpp.

◆ domain()

virtual VectorSpace Teko::SmootherLinearOp::domain ( ) const
inlinevirtual

Domain space of this operator.

Implements Teko::ImplicitLinearOp.

Definition at line 35 of file Teko_SmootherPreconditionerFactory.hpp.

◆ implicitApply()

void Teko::SmootherLinearOp::implicitApply ( const MultiVector & x,
MultiVector & y,
const double alpha = 1.0,
const double beta = 0.0 ) const
virtual

Perform a matrix vector multiply with this implicitly defined blocked operator.

The apply function takes one vector as input and applies a linear operator. The result is returned in $y$. If this operator is reprsented as $M$ then $ y = \alpha M x + \beta y $

Parameters
[in]x
[in,out]y
[in]alpha(default=1)
[in]beta(default=0)

Implements Teko::ImplicitLinearOp.

Definition at line 55 of file Teko_SmootherPreconditionerFactory.cpp.

◆ setRequestHandler()

void Teko::SmootherLinearOp::setRequestHandler ( const Teuchos::RCP< RequestHandler > & rh)
virtual

Set the request handler with pointers to the appropriate callbacks.

Implements Teko::RequestHandlerContainer.

Definition at line 97 of file Teko_SmootherPreconditionerFactory.cpp.

◆ getRequestHandler()

Teuchos::RCP< RequestHandler > Teko::SmootherLinearOp::getRequestHandler ( ) const
virtual

Get the request handler with pointers to the appropriate callbacks.

Implements Teko::RequestHandlerContainer.

Definition at line 103 of file Teko_SmootherPreconditionerFactory.cpp.


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