#include <Thyra_SingleScalarEuclideanLinearOpBaseDecl.hpp>
Inheritance diagram for Thyra::SingleScalarEuclideanLinearOpBase< Scalar >:

Overridden from LinearOpBase | |
| bool | applySupports (const EConj conj) const |
| | |
| bool | applyTransposeSupports (const EConj conj) const |
| | |
Overridden from EuclideanLinearOpBase | |
| void | euclideanApply (const EConj conj, const MultiVectorBase< Scalar > &X, MultiVectorBase< Scalar > *Y, const Scalar alpha, const Scalar beta) const |
| | |
| void | euclideanApplyTranspose (const EConj conj, const MultiVectorBase< Scalar > &X, MultiVectorBase< Scalar > *Y, const Scalar alpha, const Scalar beta) const |
| | |
Pure virtual functions (must be overridden by subclass) | |
| virtual bool | opSupported (EOpTransp M_trans) const =0 |
Return if the M_trans operation of apply() is supported or not. | |
| virtual void | euclideanApply (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, MultiVectorBase< Scalar > *Y, const Scalar alpha, const Scalar beta) const =0 |
| Apply the linear operator (or its transpose). | |
This class is meant to provide an easier way for subclasses to provide implementations for LinearOpBase::apply() and LinearOpBase::applyTranspose() and is not meant to be used as an client interface. Therefore, this class should be inherited using protected or private.
Definition at line 48 of file Thyra_SingleScalarEuclideanLinearOpBaseDecl.hpp.
| bool Thyra::SingleScalarEuclideanLinearOpBase< Scalar >::applySupports | ( | const EConj | conj | ) | const [virtual] |
Reimplemented from Thyra::LinearOpBase< RangeScalar, DomainScalar >.
Definition at line 40 of file Thyra_SingleScalarEuclideanLinearOpBase.hpp.
| bool Thyra::SingleScalarEuclideanLinearOpBase< Scalar >::applyTransposeSupports | ( | const EConj | conj | ) | const [virtual] |
Reimplemented from Thyra::LinearOpBase< RangeScalar, DomainScalar >.
Definition at line 46 of file Thyra_SingleScalarEuclideanLinearOpBase.hpp.
| void Thyra::SingleScalarEuclideanLinearOpBase< Scalar >::euclideanApply | ( | const EConj | conj, | |
| const MultiVectorBase< Scalar > & | X, | |||
| MultiVectorBase< Scalar > * | Y, | |||
| const Scalar | alpha, | |||
| const Scalar | beta | |||
| ) | const |
| void Thyra::SingleScalarEuclideanLinearOpBase< Scalar >::euclideanApplyTranspose | ( | const EConj | conj, | |
| const MultiVectorBase< Scalar > & | X, | |||
| MultiVectorBase< Scalar > * | Y, | |||
| const Scalar | alpha, | |||
| const Scalar | beta | |||
| ) | const |
| virtual bool Thyra::SingleScalarEuclideanLinearOpBase< Scalar >::opSupported | ( | EOpTransp | M_trans | ) | const [protected, pure virtual] |
Return if the M_trans operation of apply() is supported or not.
Preconditions:
Note that an operator must support at least one of the values of ETrans (i.e. the transposed or the non-transposed operations must be supported, both can not be unsupported)
Implemented in Thyra::SpmdMultiVectorBase< Scalar >, ExampleTridiagSerialLinearOp< Scalar >, and ExampleTridiagSpmdLinearOp< Scalar >.
| virtual void Thyra::SingleScalarEuclideanLinearOpBase< Scalar >::euclideanApply | ( | const EOpTransp | M_trans, | |
| const MultiVectorBase< Scalar > & | X, | |||
| MultiVectorBase< Scalar > * | Y, | |||
| const Scalar | alpha, | |||
| const Scalar | beta | |||
| ) | const [protected, pure virtual] |
Apply the linear operator (or its transpose).
ToDo: Finish documentation!
Preconditions:
this->opSupported(M_trans)==true Implemented in Thyra::SerialLinearOpBase< Scalar >, Thyra::SingleRhsEuclideanLinearOpBase< Scalar >, Thyra::SpmdLinearOpBase< Scalar >, and Thyra::SpmdMultiVectorBase< Scalar >.
1.4.7