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

Concrete implementation of a product multi-vector. More...

#include <Thyra_DefaultProductMultiVector_decl.hpp>

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

Related Symbols

(Note that these are not member symbols.)

template<class Scalar >
RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector ()
 Nonmember constructor.
 
template<class Scalar >
RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const int numMembers)
 Nonmember constructor.
 
template<class Scalar >
RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< MultiVectorBase< Scalar > > > &multiVecs)
 Nonmember constructor.
 
template<class Scalar >
RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< const MultiVectorBase< Scalar > > > &multiVecs)
 Nonmember constructor.
 
template<class Scalar >
RCP< const ProductMultiVectorBase< Scalar > > castOrCreateSingleBlockProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const RCP< const MultiVectorBase< Scalar > > &mv)
 Dynamic cast to a const product multi-vector or create a new product multi-vector with one component if the input multi-vector is not a product vector.
 
template<class Scalar >
RCP< ProductMultiVectorBase< Scalar > > nonconstCastOrCreateSingleBlockProductMultiVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const RCP< MultiVectorBase< Scalar > > &mv)
 Dynamic cast to a const product multi-vector or create a new product multi-vector with one component if the input multi-vector is not a product vector.
 

Overridden from LinearOpBase

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
 

Constructors/initializers/accessors

 DefaultProductMultiVector ()
 Construct to uninitialized.
 
void initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const int numMembers)
 
void initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< MultiVectorBase< Scalar > > > &multiVecs)
 
void initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< const MultiVectorBase< Scalar > > > &multiVecs)
 
void uninitialize ()
 Uninitialize.
 

Overridden public functions from Teuchos::Describable

std::string description () const
 
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
 

Overridden public functions from ProductMultiVectorBase

RCP< const ProductVectorSpaceBase< Scalar > > productSpace () const
 
bool blockIsConst (const int k) const
 
RCP< MultiVectorBase< Scalar > > getNonconstMultiVectorBlock (const int k)
 
RCP< const MultiVectorBase< Scalar > > getMultiVectorBlock (const int k) const
 

Overriden public functions from MultiVectorBase

RCP< MultiVectorBase< Scalar > > clone_mv () const
 

Overriden from LinearOpBase

RCP< const VectorSpaceBase< Scalar > > range () const
 
RCP< const VectorSpaceBase< Scalar > > domain () const
 

Overriden 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) const
 
RCP< MultiVectorBase< Scalar > > nonconstNonContigSubViewImpl (const ArrayView< const int > &cols)
 
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 releaseDetachedMultiVectorViewImpl (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)
 

Additional Inherited Members

- Public Member Functions inherited from Thyra::MultiVectorBase< Scalar >
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().
 
- Public Member Functions inherited from Thyra::LinearOpBase< Scalar >
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.
 
- Public Member Functions inherited from Thyra::RowStatLinearOpBase< Scalar >
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.
 
- Public Member Functions inherited from Thyra::ScaledLinearOpBase< Scalar >
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.
 
- Protected Member Functions inherited from Thyra::MultiVectorBase< Scalar >
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
 
- Protected Member Functions inherited from Thyra::LinearOpBase< Scalar >
- Protected Member Functions inherited from Thyra::RowStatLinearOpBase< Scalar >
- Protected Member Functions inherited from Thyra::ScaledLinearOpBase< Scalar >
- Protected Member Functions inherited from Thyra::MultiVectorDefaultBase< Scalar >
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) const
 
RCP< MultiVectorBase< Scalar > > nonconstNonContigSubViewImpl (const ArrayView< const int > &cols)
 
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
 
- Protected Member Functions inherited from Thyra::LinearOpDefaultBase< Scalar >
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 Thyra::DefaultProductMultiVector< Scalar >

Concrete implementation of a product multi-vector.

Note that clients should almost never be creating objects of this type explicitly and should instead use DefaultProductVectorSpace as a factory.

ToDo: Finish documentation!

The default constructor is made private to avoid accidental default construction.

Definition at line 71 of file Thyra_DefaultProductMultiVector_decl.hpp.

Constructor & Destructor Documentation

◆ DefaultProductMultiVector()

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

Construct to uninitialized.

Definition at line 58 of file Thyra_DefaultProductMultiVector_def.hpp.

Member Function Documentation

◆ initialize() [1/3]

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::initialize ( const RCP< const DefaultProductVectorSpace< Scalar > > & productSpace,
const int numMembers )

Definition at line 64 of file Thyra_DefaultProductMultiVector_def.hpp.

◆ initialize() [2/3]

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::initialize ( const RCP< const DefaultProductVectorSpace< Scalar > > & productSpace,
const ArrayView< const RCP< MultiVectorBase< Scalar > > > & multiVecs )

Definition at line 82 of file Thyra_DefaultProductMultiVector_def.hpp.

◆ initialize() [3/3]

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::initialize ( const RCP< const DefaultProductVectorSpace< Scalar > > & productSpace,
const ArrayView< const RCP< const MultiVectorBase< Scalar > > > & multiVecs )

Definition at line 92 of file Thyra_DefaultProductMultiVector_def.hpp.

◆ uninitialize()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::uninitialize ( )

Uninitialize.

ToDo: Finish documentation.

Definition at line 102 of file Thyra_DefaultProductMultiVector_def.hpp.

◆ description()

template<class Scalar >
std::string Thyra::DefaultProductMultiVector< Scalar >::description ( ) const
virtual

Reimplemented from Teuchos::Describable.

Definition at line 114 of file Thyra_DefaultProductMultiVector_def.hpp.

◆ describe()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::describe ( Teuchos::FancyOStream & out,
const Teuchos::EVerbosityLevel verbLevel ) const
virtual

Reimplemented from Teuchos::Describable.

Definition at line 129 of file Thyra_DefaultProductMultiVector_def.hpp.

◆ productSpace()

template<class Scalar >
RCP< const ProductVectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::productSpace ( ) const
virtual

◆ blockIsConst()

template<class Scalar >
bool Thyra::DefaultProductMultiVector< Scalar >::blockIsConst ( const int k) const
virtual

◆ getNonconstMultiVectorBlock()

template<class Scalar >
RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::getNonconstMultiVectorBlock ( const int k)
virtual

◆ getMultiVectorBlock()

template<class Scalar >
RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::getMultiVectorBlock ( const int k) const
virtual

◆ clone_mv()

template<class Scalar >
RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::clone_mv ( ) const
virtual

◆ range()

template<class Scalar >
RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::range ( ) const
virtual

◆ domain()

template<class Scalar >
RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::domain ( ) const
virtual

◆ assignImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::assignImpl ( Scalar alpha)
protectedvirtual

◆ assignMultiVecImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::assignMultiVecImpl ( const MultiVectorBase< Scalar > & mv)
protectedvirtual

◆ scaleImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::scaleImpl ( Scalar alpha)
protectedvirtual

◆ updateImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::updateImpl ( Scalar alpha,
const MultiVectorBase< Scalar > & mv )
protectedvirtual

◆ linearCombinationImpl()

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

◆ dotsImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::dotsImpl ( const MultiVectorBase< Scalar > & mv,
const ArrayView< Scalar > & prods ) const
protectedvirtual

◆ norms1Impl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::norms1Impl ( const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > & norms) const
protectedvirtual

◆ norms2Impl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::norms2Impl ( const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > & norms) const
protectedvirtual

◆ normsInfImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::normsInfImpl ( const ArrayView< typename ScalarTraits< Scalar >::magnitudeType > & norms) const
protectedvirtual

◆ colImpl()

template<class Scalar >
RCP< const VectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::colImpl ( Ordinal j) const
protectedvirtual

Reimplemented from Thyra::MultiVectorBase< Scalar >.

Definition at line 460 of file Thyra_DefaultProductMultiVector_def.hpp.

◆ nonconstColImpl()

template<class Scalar >
RCP< VectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::nonconstColImpl ( Ordinal j)
protectedvirtual

◆ contigSubViewImpl()

template<class Scalar >
RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::contigSubViewImpl ( const Range1D & colRng) const
protectedvirtual

◆ nonconstContigSubViewImpl()

template<class Scalar >
RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::nonconstContigSubViewImpl ( const Range1D & colRng)
protectedvirtual

◆ nonContigSubViewImpl()

template<class Scalar >
RCP< const MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::nonContigSubViewImpl ( const ArrayView< const int > & cols) const
protectedvirtual

◆ nonconstNonContigSubViewImpl()

template<class Scalar >
RCP< MultiVectorBase< Scalar > > Thyra::DefaultProductMultiVector< Scalar >::nonconstNonContigSubViewImpl ( const ArrayView< const int > & cols)
protectedvirtual

◆ mvMultiReductApplyOpImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::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

◆ acquireDetachedMultiVectorViewImpl()

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

◆ releaseDetachedMultiVectorViewImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::releaseDetachedMultiVectorViewImpl ( RTOpPack::ConstSubMultiVectorView< Scalar > * sub_mv) const
protectedvirtual

◆ acquireNonconstDetachedMultiVectorViewImpl()

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

◆ commitNonconstDetachedMultiVectorViewImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::commitNonconstDetachedMultiVectorViewImpl ( RTOpPack::SubMultiVectorView< Scalar > * sub_mv)
protectedvirtual

◆ opSupportedImpl()

template<class Scalar >
bool Thyra::DefaultProductMultiVector< Scalar >::opSupportedImpl ( EOpTransp M_trans) const
protectedvirtual

◆ applyImpl()

template<class Scalar >
void Thyra::DefaultProductMultiVector< Scalar >::applyImpl ( const EOpTransp M_trans,
const MultiVectorBase< Scalar > & X,
const Ptr< MultiVectorBase< Scalar > > & Y,
const Scalar alpha,
const Scalar beta ) const
protectedvirtual

Friends And Related Symbol Documentation

◆ defaultProductMultiVector() [1/4]

template<class Scalar >
RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector ( )
related

Nonmember constructor.

◆ defaultProductMultiVector() [2/4]

template<class Scalar >
RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > & productSpace,
const int numMembers )
related

Nonmember constructor.

◆ defaultProductMultiVector() [3/4]

template<class Scalar >
RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > & productSpace,
const ArrayView< const RCP< MultiVectorBase< Scalar > > > & multiVecs )
related

Nonmember constructor.

◆ defaultProductMultiVector() [4/4]

template<class Scalar >
RCP< DefaultProductMultiVector< Scalar > > defaultProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > & productSpace,
const ArrayView< const RCP< const MultiVectorBase< Scalar > > > & multiVecs )
related

Nonmember constructor.

◆ castOrCreateSingleBlockProductMultiVector()

template<class Scalar >
RCP< const ProductMultiVectorBase< Scalar > > castOrCreateSingleBlockProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > & productSpace,
const RCP< const MultiVectorBase< Scalar > > & mv )
related

Dynamic cast to a const product multi-vector or create a new product multi-vector with one component if the input multi-vector is not a product vector.

◆ nonconstCastOrCreateSingleBlockProductMultiVector()

template<class Scalar >
RCP< ProductMultiVectorBase< Scalar > > nonconstCastOrCreateSingleBlockProductMultiVector ( const RCP< const DefaultProductVectorSpace< Scalar > > & productSpace,
const RCP< MultiVectorBase< Scalar > > & mv )
related

Dynamic cast to a const product multi-vector or create a new product multi-vector with one component if the input multi-vector is not a product vector.


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