Thyra Version of the Day
Thyra::DiagonalLinearOpBase< Scalar > Class Template Reference

Interface class for for diagonal linear operators. More...

#include <Thyra_DiagonalLinearOpBase.hpp>

Inheritance diagram for Thyra::DiagonalLinearOpBase< Scalar >:
Inheritance graph
[legend]

List of all members.

Pure virtual functions that must be overridden in subclass

virtual bool isDiagConst () const =0
 Returns true if the diagonal vector is const-only.
virtual Teuchos::RCP
< VectorBase< Scalar > > 
getNonconstDiag ()=0
 Returns the non-const diagonal vector diag.
virtual Teuchos::RCP< const
VectorBase< Scalar > > 
getDiag () const =0
 Returns the const diagonal vector diag.

Detailed Description

template<class Scalar>
class Thyra::DiagonalLinearOpBase< Scalar >

Interface class for for diagonal linear operators.

This interface represents a diagonal linear operator M of the form:


 M = diag(diag)
 

where diag is a VectorBase object.

The operator subclass must implement apply() as follows:


 y = alpha*op(M)*x + beta*y
 
 =>

 y(i) = alpha*diag(i)*x(i) + beta*y(i), for i = 0 ... n-1
 

where n = this->domain()->dim().

Definition at line 62 of file Thyra_DiagonalLinearOpBase.hpp.


Member Function Documentation

template<class Scalar >
virtual bool Thyra::DiagonalLinearOpBase< Scalar >::isDiagConst ( ) const [pure virtual]

Returns true if the diagonal vector is const-only.

Implemented in Thyra::DefaultDiagonalLinearOp< Scalar >.

template<class Scalar >
virtual Teuchos::RCP<VectorBase<Scalar> > Thyra::DiagonalLinearOpBase< Scalar >::getNonconstDiag ( ) [pure virtual]

Returns the non-const diagonal vector diag.

Preconditions:

Note that *this is not guaranteed to be fully modified until the RCP returned is deleted.

A return value of return.get()==NULL indicates that this is not fully initialized.

Implemented in Thyra::DefaultDiagonalLinearOp< Scalar >.

template<class Scalar >
virtual Teuchos::RCP<const VectorBase<Scalar> > Thyra::DiagonalLinearOpBase< Scalar >::getDiag ( ) const [pure virtual]

Returns the const diagonal vector diag.

A return value of return.get()==NULL indicates that this is not fully initialized.

Implemented in Thyra::DefaultDiagonalLinearOp< Scalar >.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines