42 #ifndef THYRA_TPETRA_EUCLIDEAN_SCALAR_PROD_DECL_HPP
43 #define THYRA_TPETRA_EUCLIDEAN_SCALAR_PROD_DECL_HPP
46 #include "Thyra_EuclideanScalarProd.hpp"
47 #include "Tpetra_MultiVector.hpp"
57 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
89 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
101 #endif // THYRA_TPETRA_EUCLIDEAN_SCALAR_PROD_DECL_HPP
RCP< const TpetraEuclideanScalarProd< Scalar, LocalOrdinal, GlobalOrdinal, Node > > tpetraEuclideanScalarProd()
Nonmember constructor for TpetraEuclideanScalarProd.
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.
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Interface for a collection of column vectors called a multi-vector.
Concrete implementation of a scalar product for a Euclidean vector space (i.e. using the dot product)...
virtual void scalarProdsImpl(const MultiVectorBase< Scalar > &X, const MultiVectorBase< Scalar > &Y, const ArrayView< Scalar > &scalarProds) const
If X and Y are both Tpetra wrappers, computes the pair-wise scalar products directly with Tpetra call...
Extends concrete implementation of a Euclidean scalar product for specifically Tpetra vectors/multive...