Thyra Version of the Day
Loading...
Searching...
No Matches
Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

Concrete implementation of Thyra::MultiVector in terms of Tpetra::MultiVector. More...

#include <Thyra_TpetraMultiVector_decl.hpp>

Inheritance diagram for Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >:

(Note that these are not member symbols.)

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > tpetraMultiVector (const RCP< const TpetraVectorSpace< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraVectorSpace, const RCP< const ScalarProdVectorSpaceBase< Scalar > > &domainSpace, const RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraMultiVector)
 Nonmember constructor for non-const TpetraMultiVector.
template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< const TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > constTpetraMultiVector (const RCP< const TpetraVectorSpace< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraVectorSpace, const RCP< const ScalarProdVectorSpaceBase< Scalar > > &domainSpace, const RCP< const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraMultiVector)
 Nonmember constructor for const TpetraMultiVector.

Overridden protected functions from MultiVectorAdapterBase

virtual void euclideanApply (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const

Constructors/initializers/accessors

 TpetraMultiVector ()
 Construct to uninitialized.
void initialize (const RCP< const TpetraVectorSpace< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraVectorSpace, const RCP< const ScalarProdVectorSpaceBase< Scalar > > &domainSpace, const RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraMultiVector)
 Initialize.
void constInitialize (const RCP< const TpetraVectorSpace< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraVectorSpace, const RCP< const ScalarProdVectorSpaceBase< Scalar > > &domainSpace, const RCP< const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraMultiVector)
 Initialize.
RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getTpetraMultiVector ()
 Extract the underlying non-const Tpetra::MultiVector object.
RCP< const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > getConstTpetraMultiVector () const
 Extract the underlying const Tpetra::MultiVector object.

Overridden public functions form MultiVectorAdapterBase

RCP< const ScalarProdVectorSpaceBase< Scalar > > domainScalarProdVecSpc () const

Overridden protected functions from MultiVectorBase

virtual void assignImpl (Scalar alpha)
virtual void assignMultiVecImpl (const MultiVectorBase< Scalar > &mv)
virtual void scaleImpl (Scalar alpha)
virtual void updateImpl (Scalar alpha, const MultiVectorBase< Scalar > &mv)
virtual void linearCombinationImpl (const ArrayView< const Scalar > &alpha, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &mv, const Scalar &beta)
virtual void dotsImpl (const MultiVectorBase< Scalar > &mv, const ArrayView< Scalar > &prods) const
virtual void norms1Impl (const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms) const
virtual void norms2Impl (const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms) const
virtual void normsInfImpl (const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms) const
RCP< const VectorBase< Scalar > > colImpl (Ordinal j) const
RCP< VectorBase< Scalar > > nonconstColImpl (Ordinal j)
RCP< const MultiVectorBase< Scalar > > contigSubViewImpl (const Range1D &colRng) const
RCP< MultiVectorBase< Scalar > > nonconstContigSubViewImpl (const Range1D &colRng)
RCP< const MultiVectorBase< Scalar > > nonContigSubViewImpl (const ArrayView< const int > &cols_in) const
RCP< MultiVectorBase< Scalar > > nonconstNonContigSubViewImpl (const ArrayView< const int > &cols_in)
virtual void mvMultiReductApplyOpImpl (const RTOpPack::RTOpT< Scalar > &primary_op, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &multi_vecs, const ArrayView< const Ptr< MultiVectorBase< Scalar > > > &targ_multi_vecs, const ArrayView< const Ptr< RTOpPack::ReductTarget > > &reduct_objs, const Ordinal primary_global_offset) const
void acquireDetachedMultiVectorViewImpl (const Range1D &rowRng, const Range1D &colRng, RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const
void acquireNonconstDetachedMultiVectorViewImpl (const Range1D &rowRng, const Range1D &colRng, RTOpPack::SubMultiVectorView< Scalar > *sub_mv)
void commitNonconstDetachedMultiVectorViewImpl (RTOpPack::SubMultiVectorView< Scalar > *sub_mv)

Overridden protected functions from SpmdMultiVectorBase

RCP< const SpmdVectorSpaceBase< Scalar > > spmdSpaceImpl () const
void getNonconstLocalMultiVectorDataImpl (const Ptr< ArrayRCP< Scalar > > &localValues, const Ptr< Ordinal > &leadingDim)
void getLocalMultiVectorDataImpl (const Ptr< ArrayRCP< const Scalar > > &localValues, const Ptr< Ordinal > &leadingDim) const

Additional Inherited Members

 SpmdMultiVectorDefaultBase ()
RCP< const ScalarProdVectorSpaceBase< Scalar > > rangeScalarProdVecSpc () const
 Returns spmdSpace.
RCP< const SpmdVectorSpaceBase< Scalar > > spmdSpace () const
 Returns the SPMD vector space object for the range of *this multi-vector.
RTOpPack::SubMultiVectorView< Scalar > getNonconstLocalSubMultiVector ()
 Get a non-const generalized view of local multi-vector data.
RTOpPack::ConstSubMultiVectorView< Scalar > getLocalSubMultiVector () const
 Get a const generalized view of local multi-vector data.
void getNonconstLocalData (const Ptr< ArrayRCP< Scalar > > &localValues, const Ptr< Ordinal > &leadingDim)
 Returns a non-const pointer to a Fortran-style view of the local multi-vector data.
void getLocalData (const Ptr< ArrayRCP< const Scalar > > &localValues, const Ptr< Ordinal > &leadingDim) const
 Returns a const pointer to a Fortran-style view of the local multi-vector data.
void assign (Scalar alpha)
 V = alpha.
void assign (const MultiVectorBase< Scalar > &mv)
 V = mv.
void scale (Scalar alpha)
void update (Scalar alpha, const MultiVectorBase< Scalar > &mv)
void linear_combination (const ArrayView< const Scalar > &alpha, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &mv, const Scalar &beta)
 Y.col(j)(i) = beta*Y.col(j)(i) + sum( alpha[k]*X[k].col(j)(i),
void dots (const MultiVectorBase< Scalar > &mv, const ArrayView< Scalar > &prods) const
 Column-wise Euclidean dot product.
void norms_1 (const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms) const
 Column-wise 1-norms.
void norms_2 (const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms) const
 Column-wise 2-norms.
void norms_inf (const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > &norms) const
 Column-wise infinity-norms.
RCP< const VectorBase< Scalar > > col (Ordinal j) const
 Calls colImpl().
RCP< VectorBase< Scalar > > col (Ordinal j)
 Calls nonconstColImpl().
RCP< const MultiVectorBase< Scalar > > subView (const Range1D &colRng) const
 Calls contigSubViewImpl().
RCP< MultiVectorBase< Scalar > > subView (const Range1D &colRng)
 Calls nonconstContigSubViewImpl().
RCP< const MultiVectorBase< Scalar > > subView (const ArrayView< const int > &cols) const
 nonContigSubViewImpl().
RCP< MultiVectorBase< Scalar > > subView (const ArrayView< const int > &cols)
 nonconstNonContigSubViewImpl().
void applyOp (const RTOpPack::RTOpT< Scalar > &primary_op, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &multi_vecs, const ArrayView< const Ptr< MultiVectorBase< Scalar > > > &targ_multi_vecs, const ArrayView< const Ptr< RTOpPack::ReductTarget > > &reduct_objs, const Ordinal primary_global_offset) const
 Calls mvMultiReductApplyOpImpl().
void applyOp (const RTOpPack::RTOpT< Scalar > &primary_op, const RTOpPack::RTOpT< Scalar > &secondary_op, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &multi_vecs, const ArrayView< const Ptr< MultiVectorBase< Scalar > > > &targ_multi_vecs, const Ptr< RTOpPack::ReductTarget > &reduct_obj, const Ordinal primary_global_offset) const
 mvSingleReductApplyOpImpl().
void acquireDetachedView (const Range1D &rowRng, const Range1D &colRng, RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const
 Calls acquireDetachedMultiVectorViewImpl().
void releaseDetachedView (RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const
 Calls releaseDetachedMultiVectorViewImpl().
void acquireDetachedView (const Range1D &rowRng, const Range1D &colRng, RTOpPack::SubMultiVectorView< Scalar > *sub_mv)
 Calls acquireNonconstDetachedMultiVectorViewImpl().
void commitDetachedView (RTOpPack::SubMultiVectorView< Scalar > *sub_mv)
 Calls commitNonconstDetachedMultiVectorViewImpl().
RCP< const LinearOpBase< Scalar > > clone () const
 This function is simply overridden to return this->clone_mv().
bool opSupported (EOpTransp M_trans) const
 Return if the M_trans operation of apply() is supported or not.
void apply (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const
 Apply the linear operator to a multi-vector : Y = alpha*op(M)*X + beta*Y.
bool rowStatIsSupported (const RowStatLinearOpBaseUtils::ERowStat rowStat) const
 Determine if a given row stat is supported.
void getRowStat (const RowStatLinearOpBaseUtils::ERowStat rowStat, const Ptr< VectorBase< Scalar > > &rowStatVec) const
 Get some statistics about a supported row.
bool supportsScaleLeft () const
 Determines if this objects supports left scaling.
bool supportsScaleRight () const
 Determines if this objects supports right scaling.
void scaleLeft (const VectorBase< Scalar > &row_scaling)
 Left scales operator with diagonal scaling operator.
void scaleRight (const VectorBase< Scalar > &col_scaling)
 Right scales operator with diagonal scaling operator.
RCP< const VectorSpaceBase< Scalar > > range () const
 Returns this->rangeScalarProdVecSpc().
RCP< const VectorSpaceBase< Scalar > > domain () const
 Returns this->domainScalarProdVecSpc().
virtual RCP< MultiVectorBase< Scalar > > clone_mv () const
virtual void updateSpmdSpace ()
 Subclasses should call whenever the structure of the VectorSpaceBase changes.
Range1D validateRowRange (const Range1D &rowRng) const
 Validate and resize the row range.
Range1D validateColRange (const Range1D &rowCol) const
 Validate and resize the column range.
RTOpPack::SubMultiVectorView< Scalar > getNonconstLocalSubMultiVectorImpl ()
RTOpPack::ConstSubMultiVectorView< Scalar > getLocalSubMultiVectorImpl () const
void releaseDetachedMultiVectorViewImpl (RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const
virtual bool rowStatIsSupportedImpl (const RowStatLinearOpBaseUtils::ERowStat rowStat) const
virtual void getRowStatImpl (const RowStatLinearOpBaseUtils::ERowStat rowStat, const Ptr< VectorBase< Scalar > > &rowStatVec) const
virtual bool supportsScaleLeftImpl () const
virtual bool supportsScaleRightImpl () const
virtual void scaleLeftImpl (const VectorBase< Scalar > &row_scaling)
virtual void scaleRightImpl (const VectorBase< Scalar > &col_scaling)
void absRowSum (const Teuchos::Ptr< Thyra::VectorBase< Scalar > > &output) const
void absColSum (const Teuchos::Ptr< Thyra::VectorBase< Scalar > > &output) const
bool opSupportedImpl (EOpTransp M_trans) const
void applyImpl (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const
virtual void mvSingleReductApplyOpImpl (const RTOpPack::RTOpT< Scalar > &primary_op, const RTOpPack::RTOpT< Scalar > &secondary_op, const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > &multi_vecs, const ArrayView< const Ptr< MultiVectorBase< Scalar > > > &targ_multi_vecs, const Ptr< RTOpPack::ReductTarget > &reduct_obj, const Ordinal primary_global_offset) const
std::string description () const
 Default description that gives the label, type, and dimenstion .
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
 Generates a default outputting for all linear operators.

Detailed Description

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
class Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Concrete implementation of Thyra::MultiVector in terms of Tpetra::MultiVector.

Todo
Finish documentation!

Definition at line 30 of file Thyra_TpetraMultiVector_decl.hpp.

Constructor & Destructor Documentation

◆ TpetraMultiVector()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraMultiVector ( )

Construct to uninitialized.

Definition at line 26 of file Thyra_TpetraMultiVector_def.hpp.

Member Function Documentation

◆ initialize()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::initialize ( const RCP< const TpetraVectorSpace< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & tpetraVectorSpace,
const RCP< const ScalarProdVectorSpaceBase< Scalar > > & domainSpace,
const RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & tpetraMultiVector )

Initialize.

Definition at line 31 of file Thyra_TpetraMultiVector_def.hpp.

◆ constInitialize()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::constInitialize ( const RCP< const TpetraVectorSpace< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & tpetraVectorSpace,
const RCP< const ScalarProdVectorSpaceBase< Scalar > > & domainSpace,
const RCP< const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & tpetraMultiVector )

Initialize.

Definition at line 42 of file Thyra_TpetraMultiVector_def.hpp.

◆ getTpetraMultiVector()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getTpetraMultiVector ( )

Extract the underlying non-const Tpetra::MultiVector object.

Definition at line 54 of file Thyra_TpetraMultiVector_def.hpp.

◆ getConstTpetraMultiVector()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getConstTpetraMultiVector ( ) const

Extract the underlying const Tpetra::MultiVector object.

Definition at line 62 of file Thyra_TpetraMultiVector_def.hpp.

◆ domainScalarProdVecSpc()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< const ScalarProdVectorSpaceBase< Scalar > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::domainScalarProdVecSpc ( ) const
virtual

◆ assignImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::assignImpl ( Scalar alpha)
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 84 of file Thyra_TpetraMultiVector_def.hpp.

◆ assignMultiVecImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::assignMultiVecImpl ( const MultiVectorBase< Scalar > & mv)
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 91 of file Thyra_TpetraMultiVector_def.hpp.

◆ scaleImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::scaleImpl ( Scalar alpha)
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 108 of file Thyra_TpetraMultiVector_def.hpp.

◆ updateImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::updateImpl ( Scalar alpha,
const MultiVectorBase< Scalar > & mv )
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 115 of file Thyra_TpetraMultiVector_def.hpp.

◆ linearCombinationImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::linearCombinationImpl ( const ArrayView< const Scalar > & alpha,
const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > & mv,
const Scalar & beta )
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 134 of file Thyra_TpetraMultiVector_def.hpp.

◆ dotsImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::dotsImpl ( const MultiVectorBase< Scalar > & mv,
const ArrayView< Scalar > & prods ) const
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 210 of file Thyra_TpetraMultiVector_def.hpp.

◆ norms1Impl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::norms1Impl ( const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > & norms) const
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 228 of file Thyra_TpetraMultiVector_def.hpp.

◆ norms2Impl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::norms2Impl ( const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > & norms) const
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 237 of file Thyra_TpetraMultiVector_def.hpp.

◆ normsInfImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::normsInfImpl ( const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > & norms) const
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 246 of file Thyra_TpetraMultiVector_def.hpp.

◆ colImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< const VectorBase< Scalar > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::colImpl ( Ordinal j) const
protectedvirtual

Reimplemented from Thyra::MultiVectorBase< Scalar >.

Definition at line 256 of file Thyra_TpetraMultiVector_def.hpp.

◆ nonconstColImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< VectorBase< Scalar > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::nonconstColImpl ( Ordinal j)
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 270 of file Thyra_TpetraMultiVector_def.hpp.

◆ contigSubViewImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< const MultiVectorBase< Scalar > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::contigSubViewImpl ( const Range1D & colRng) const
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 284 of file Thyra_TpetraMultiVector_def.hpp.

◆ nonconstContigSubViewImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< MultiVectorBase< Scalar > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::nonconstContigSubViewImpl ( const Range1D & colRng)
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 314 of file Thyra_TpetraMultiVector_def.hpp.

◆ nonContigSubViewImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< const MultiVectorBase< Scalar > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::nonContigSubViewImpl ( const ArrayView< const int > & cols_in) const
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 344 of file Thyra_TpetraMultiVector_def.hpp.

◆ nonconstNonContigSubViewImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< MultiVectorBase< Scalar > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::nonconstNonContigSubViewImpl ( const ArrayView< const int > & cols_in)
protectedvirtual

Implements Thyra::MultiVectorBase< Scalar >.

Definition at line 377 of file Thyra_TpetraMultiVector_def.hpp.

◆ mvMultiReductApplyOpImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::mvMultiReductApplyOpImpl ( const RTOpPack::RTOpT< Scalar > & primary_op,
const ArrayView< const Ptr< const MultiVectorBase< Scalar > > > & multi_vecs,
const ArrayView< const Ptr< MultiVectorBase< Scalar > > > & targ_multi_vecs,
const ArrayView< const Ptr< RTOpPack::ReductTarget > > & reduct_objs,
const Ordinal primary_global_offset ) const
protectedvirtual

Reimplemented from Thyra::SpmdMultiVectorDefaultBase< Scalar >.

Definition at line 409 of file Thyra_TpetraMultiVector_def.hpp.

◆ acquireDetachedMultiVectorViewImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::acquireDetachedMultiVectorViewImpl ( const Range1D & rowRng,
const Range1D & colRng,
RTOpPack::ConstSubMultiVectorView< Scalar > * sub_mv ) const
protectedvirtual

Reimplemented from Thyra::SpmdMultiVectorDefaultBase< Scalar >.

Definition at line 425 of file Thyra_TpetraMultiVector_def.hpp.

◆ acquireNonconstDetachedMultiVectorViewImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::acquireNonconstDetachedMultiVectorViewImpl ( const Range1D & rowRng,
const Range1D & colRng,
RTOpPack::SubMultiVectorView< Scalar > * sub_mv )
protectedvirtual

Reimplemented from Thyra::SpmdMultiVectorDefaultBase< Scalar >.

Definition at line 438 of file Thyra_TpetraMultiVector_def.hpp.

◆ commitNonconstDetachedMultiVectorViewImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::commitNonconstDetachedMultiVectorViewImpl ( RTOpPack::SubMultiVectorView< Scalar > * sub_mv)
protectedvirtual

Reimplemented from Thyra::SpmdMultiVectorDefaultBase< Scalar >.

Definition at line 451 of file Thyra_TpetraMultiVector_def.hpp.

◆ spmdSpaceImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< const SpmdVectorSpaceBase< Scalar > > Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::spmdSpaceImpl ( ) const
protectedvirtual

◆ getNonconstLocalMultiVectorDataImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getNonconstLocalMultiVectorDataImpl ( const Ptr< ArrayRCP< Scalar > > & localValues,
const Ptr< Ordinal > & leadingDim )
protectedvirtual

◆ getLocalMultiVectorDataImpl()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getLocalMultiVectorDataImpl ( const Ptr< ArrayRCP< const Scalar > > & localValues,
const Ptr< Ordinal > & leadingDim ) const
protectedvirtual

◆ euclideanApply()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void Thyra::TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node >::euclideanApply ( const EOpTransp M_trans,
const MultiVectorBase< Scalar > & X,
const Ptr< MultiVectorBase< Scalar > > & Y,
const Scalar alpha,
const Scalar beta ) const
protectedvirtual

Reimplemented from Thyra::SpmdMultiVectorDefaultBase< Scalar >.

Definition at line 538 of file Thyra_TpetraMultiVector_def.hpp.

◆ tpetraMultiVector()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > tpetraMultiVector ( const RCP< const TpetraVectorSpace< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & tpetraVectorSpace,
const RCP< const ScalarProdVectorSpaceBase< Scalar > > & domainSpace,
const RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & tpetraMultiVector )
related

Nonmember constructor for non-const TpetraMultiVector.

Definition at line 240 of file Thyra_TpetraMultiVector_decl.hpp.

◆ constTpetraMultiVector()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
RCP< const TpetraMultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > constTpetraMultiVector ( const RCP< const TpetraVectorSpace< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & tpetraVectorSpace,
const RCP< const ScalarProdVectorSpaceBase< Scalar > > & domainSpace,
const RCP< const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & tpetraMultiVector )
related

Nonmember constructor for const TpetraMultiVector.

Definition at line 259 of file Thyra_TpetraMultiVector_decl.hpp.


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