Thyra Version of the Day
Loading...
Searching...
No Matches
List of all members

Concrete implementation of a scalar product using a symmetric positive-definite linear operator. More...

#include <Thyra_LinearOpScalarProd_decl.hpp>

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

Overridden from ScalarProdBase

virtual bool isEuclideanImpl () const
 Returns false.
 
void scalarProdsImpl (const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y, const ArrayView< Scalar > &scalarProds_out) const
 
RCP< const LinearOpBase< Scalar > > getLinearOpImpl () const
 

Constructors, initializers, accessors

 LinearOpScalarProd ()
 
 LinearOpScalarProd (const RCP< const LinearOpBase< Scalar > > &op)
 
void initialize (const RCP< const LinearOpBase< Scalar > > &op)
 
const RCP< const LinearOpBase< Scalar > > & op () const
 
void uninitialize (const Ptr< RCP< const LinearOpBase< Scalar > > > &op=Teuchos::null)
 

Additional Inherited Members

- Public Member Functions inherited from Thyra::ScalarProdBase< Scalar >
bool isEuclidean () const
 Return if this is a Euclidean (identity) scalar product is the same as the dot product.
 
Scalar scalarProd (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y) const
 Return the scalar product of two vectors in the vector space.
 
void scalarProds (const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y, const ArrayView< Scalar > &scalarProds_out) const
 Return the scalar product of each column in two multi-vectors in the vector space.
 
RCP< const LinearOpBase< Scalar > > getLinearOp () const
 Return a linear operator representing the scalar product Q.
 
- Protected Member Functions inherited from Thyra::ScalarProdBase< Scalar >
virtual Scalar scalarProdImpl (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y) const
 Default implementation calls scalarProdsImpl().
 

Detailed Description

template<class Scalar>
class Thyra::LinearOpScalarProd< Scalar >

Concrete implementation of a scalar product using a symmetric positive-definite linear operator.

This subclass will work with any VectorBase or MultiVectorBase implementation who's vector spaces are compatible with the underlying symmetric positive-definite linear operator object.

Definition at line 61 of file Thyra_LinearOpScalarProd_decl.hpp.

Constructor & Destructor Documentation

◆ LinearOpScalarProd() [1/2]

template<class Scalar >
Thyra::LinearOpScalarProd< Scalar >::LinearOpScalarProd ( )

Definition at line 60 of file Thyra_LinearOpScalarProd_def.hpp.

◆ LinearOpScalarProd() [2/2]

template<class Scalar >
Thyra::LinearOpScalarProd< Scalar >::LinearOpScalarProd ( const RCP< const LinearOpBase< Scalar > > & op)

Definition at line 65 of file Thyra_LinearOpScalarProd_def.hpp.

Member Function Documentation

◆ initialize()

template<class Scalar >
void Thyra::LinearOpScalarProd< Scalar >::initialize ( const RCP< const LinearOpBase< Scalar > > & op)

Definition at line 73 of file Thyra_LinearOpScalarProd_def.hpp.

◆ op()

template<class Scalar >
const RCP< const LinearOpBase< Scalar > > & Thyra::LinearOpScalarProd< Scalar >::op ( ) const
inline

Definition at line 117 of file Thyra_LinearOpScalarProd_decl.hpp.

◆ uninitialize()

template<class Scalar >
void Thyra::LinearOpScalarProd< Scalar >::uninitialize ( const Ptr< RCP< const LinearOpBase< Scalar > > > & op = Teuchos::null)

Definition at line 85 of file Thyra_LinearOpScalarProd_def.hpp.

◆ isEuclideanImpl()

template<class Scalar >
bool Thyra::LinearOpScalarProd< Scalar >::isEuclideanImpl ( ) const
protectedvirtual

Returns false.

Implements Thyra::ScalarProdBase< Scalar >.

Definition at line 98 of file Thyra_LinearOpScalarProd_def.hpp.

◆ scalarProdsImpl()

template<class Scalar >
void Thyra::LinearOpScalarProd< Scalar >::scalarProdsImpl ( const MultiVectorBase< Scalar > & X,
const MultiVectorBase< Scalar > & Y,
const ArrayView< Scalar > & scalarProds_out ) const
protectedvirtual

Implements Thyra::ScalarProdBase< Scalar >.

Definition at line 105 of file Thyra_LinearOpScalarProd_def.hpp.

◆ getLinearOpImpl()

template<class Scalar >
RCP< const LinearOpBase< Scalar > > Thyra::LinearOpScalarProd< Scalar >::getLinearOpImpl ( ) const
protectedvirtual

Reimplemented from Thyra::ScalarProdBase< Scalar >.

Definition at line 119 of file Thyra_LinearOpScalarProd_def.hpp.


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