Teko  Version of the Day
 All Classes Files Functions Variables Pages
Public Member Functions | List of all members
Teko::SmootherLinearOp Class Reference

#include <Teko_SmootherPreconditionerFactory.hpp>

Inheritance diagram for Teko::SmootherLinearOp:
Inheritance graph
[legend]

Public Member Functions

virtual VectorSpace range () const
 Range space of this operator. More...
 
virtual VectorSpace domain () const
 Domain space of this operator. More...
 
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. More...
 
virtual void setRequestHandler (const Teuchos::RCP< RequestHandler > &rh)
 Set the request handler with pointers to the appropriate callbacks. More...
 
virtual Teuchos::RCP
< RequestHandler
getRequestHandler () const
 Get the request handler with pointers to the appropriate callbacks. More...
 

Additional Inherited Members

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

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 61 of file Teko_SmootherPreconditionerFactory.hpp.

Member Function Documentation

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

Range space of this operator.

Implements Teko::ImplicitLinearOp.

Definition at line 67 of file Teko_SmootherPreconditionerFactory.hpp.

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

Domain space of this operator.

Implements Teko::ImplicitLinearOp.

Definition at line 71 of file Teko_SmootherPreconditionerFactory.hpp.

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 86 of file Teko_SmootherPreconditionerFactory.cpp.

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 130 of file Teko_SmootherPreconditionerFactory.cpp.

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

Get the request handler with pointers to the appropriate callbacks.

Implements Teko::RequestHandlerContainer.

Definition at line 137 of file Teko_SmootherPreconditionerFactory.cpp.


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