Thyra Version of the Day
Loading...
Searching...
No Matches
Thyra::DiagonalScalarProd< Scalar > Class Template Reference

Concrete implementation of a scalar product using a diagonal vector. More...

#include <Thyra_DiagonalScalarProd_decl.hpp>

Inheritance diagram for Thyra::DiagonalScalarProd< Scalar >:

(Note that these are not member symbols.)

template<class Scalar>
RCP< DiagonalScalarProd< Scalar > > diagonalScalarProd (const RCP< const VectorBase< Scalar > > &s_diag)
 Nonmember constructor.

Overridden protected virtual functions from ScalarProdBase

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

Consturctors/Initializers/Accessors

 DiagonalScalarProd ()
void initialize (const RCP< const VectorBase< Scalar > > &s_diag)

Additional Inherited Members

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.
virtual Scalar scalarProdImpl (const VectorBase< Scalar > &x, const VectorBase< Scalar > &y) const
 Default implementation calls scalarProdsImpl().

Detailed Description

template<class Scalar>
class Thyra::DiagonalScalarProd< Scalar >

Concrete implementation of a scalar product using a diagonal vector.

This test class really shows how to create an application-defined scalar product.

Definition at line 27 of file Thyra_DiagonalScalarProd_decl.hpp.

Constructor & Destructor Documentation

◆ DiagonalScalarProd()

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

Definition at line 28 of file Thyra_DiagonalScalarProd_def.hpp.

Member Function Documentation

◆ initialize()

template<class Scalar>
void Thyra::DiagonalScalarProd< Scalar >::initialize ( const RCP< const VectorBase< Scalar > > & s_diag)

Definition at line 33 of file Thyra_DiagonalScalarProd_def.hpp.

◆ isEuclideanImpl()

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

Returns false.

Implements Thyra::ScalarProdBase< Scalar >.

Definition at line 44 of file Thyra_DiagonalScalarProd_def.hpp.

◆ scalarProdsImpl()

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

Implements Thyra::ScalarProdBase< Scalar >.

Definition at line 51 of file Thyra_DiagonalScalarProd_def.hpp.

◆ getLinearOpImpl()

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

Reimplemented from Thyra::ScalarProdBase< Scalar >.

Definition at line 106 of file Thyra_DiagonalScalarProd_def.hpp.

◆ diagonalScalarProd()

template<class Scalar>
RCP< DiagonalScalarProd< Scalar > > diagonalScalarProd ( const RCP< const VectorBase< Scalar > > & s_diag)
related

Nonmember constructor.

Definition at line 72 of file Thyra_DiagonalScalarProd_decl.hpp.


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