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

Concrete implementation of a product vector. More...

#include <Thyra_DefaultProductVector_decl.hpp>

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

Related Functions

(Note that these are not member functions.)

template<class Scalar >
RCP< DefaultProductVector< Scalar > > defaultProductVector ()
 Nonmember constructor.
 
template<class Scalar >
RCP< DefaultProductVector< Scalar > > defaultProductVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace)
 Nonmember constructor.
 
template<class Scalar >
RCP< DefaultProductVector< Scalar > > defaultProductVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< VectorBase< Scalar > > > &vecs)
 Nonmember constructor.
 
template<class Scalar >
RCP< DefaultProductVector< Scalar > > defaultProductVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< const VectorBase< Scalar > > > &vecs)
 Nonmember constructor.
 
template<class Scalar >
RCP< ProductVectorBase< Scalar > > castOrCreateNonconstProductVectorBase (const RCP< VectorBase< Scalar > > v)
 Return a casted non-const ProductVectorBase object or create a new DefaultProductVector object with one component.
 
template<class Scalar >
RCP< const ProductVectorBase< Scalar > > castOrCreateProductVectorBase (const RCP< const VectorBase< Scalar > > v)
 Return a casted const ProductVectorBase object or create a new DefaultProductVector object with one component.
 

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
 

Constructors/initializers/accessors

 DefaultProductVector ()
 Construct to uninitialized.
 
 DefaultProductVector (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace)
 Constructs to initialized (calls initialize()).
 
void initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace)
 Initialize.
 
void initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< VectorBase< Scalar > > > &vecs)
 Initialize.
 
void initialize (const RCP< const DefaultProductVectorSpace< Scalar > > &productSpace, const ArrayView< const RCP< const VectorBase< Scalar > > > &vecs)
 Initialize.
 
void uninitialize ()
 Uninitialize.
 

Overridden from Teuchos::Describable

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

Extensions to ProductVectorBase suitable for physically-blocked vectors

void setBlock (int i, const RCP< const VectorBase< Scalar > > &b)
 
void setNonconstBlock (int i, const RCP< VectorBase< Scalar > > &b)
 

Overridden from ProductVectorBase

RCP< VectorBase< Scalar > > getNonconstVectorBlock (const int k)
 
RCP< const VectorBase< Scalar > > getVectorBlock (const int k) 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
 

Overridden public functions from VectorBase

RCP< const VectorSpaceBase< Scalar > > space () const
 

Overridden protected functions from VectorBase

virtual void absImpl (const VectorBase< Scalar > &x)
 
virtual void reciprocalImpl (const VectorBase< Scalar > &x)
 
virtual void eleWiseScaleImpl (const VectorBase< Scalar > &x)
 
virtual Teuchos::ScalarTraits< Scalar >::magnitudeType norm2WeightedImpl (const VectorBase< Scalar > &x) const
 
void applyOpImpl (const RTOpPack::RTOpT< Scalar > &op, const ArrayView< const Ptr< const VectorBase< Scalar > > > &vecs, const ArrayView< const Ptr< VectorBase< Scalar > > > &targ_vecs, const Ptr< RTOpPack::ReductTarget > &reduct_obj, const Ordinal global_offset) const
 
void acquireDetachedVectorViewImpl (const Range1D &rng, RTOpPack::ConstSubVectorView< Scalar > *sub_vec) const
 
void releaseDetachedVectorViewImpl (RTOpPack::ConstSubVectorView< Scalar > *sub_vec) const
 
void acquireNonconstDetachedVectorViewImpl (const Range1D &rng, RTOpPack::SubVectorView< Scalar > *sub_vec)
 
void commitNonconstDetachedVectorViewImpl (RTOpPack::SubVectorView< Scalar > *sub_vec)
 
void setSubVectorImpl (const RTOpPack::SparseSubVectorT< Scalar > &sub_vec)
 

Additional Inherited Members

virtual RCP< VectorBase< Scalar > > getNonconstVectorBlock (const int k)=0
 Returns a non-persisting non-const view of the (zero-based) kth block vector.
 
virtual RCP< const VectorBase< Scalar > > getVectorBlock (const int k) const =0
 Returns a non-persisting const view of the (zero-based) kth block vector.
 
- Public Member Functions inherited from Thyra::VectorBase< Scalar >
void assign (const VectorBase< Scalar > &x)
 Vector assignment:
 
void randomize (Scalar l, Scalar u)
 Random vector generation:
 
void update (Scalar alpha, const VectorBase< Scalar > &x)
 AXPY:
 
void linear_combination (const ArrayView< const Scalar > &alpha, const ArrayView< const Ptr< const VectorBase< Scalar > > > &x, const Scalar &beta)
 Linear combination:
 
Scalar dot (const VectorBase< Scalar > &x) const
 Euclidean dot product: result = x^H * this.
 
Teuchos::ScalarTraits< Scalar >::magnitudeType norm_1 () const
 One (1) norm: result = ||v||1.
 
Teuchos::ScalarTraits< Scalar >::magnitudeType norm_2 () const
 Euclidean (2) norm: result = ||v||2.
 
Teuchos::ScalarTraits< Scalar >::magnitudeType norm_2 (const VectorBase< Scalar > &x) const
 Weighted Euclidean (2) norm: result = ||v||2.
 
Teuchos::ScalarTraits< Scalar >::magnitudeType norm_inf () const
 Infinity norm: result = ||v||inf.
 
void applyOp (const RTOpPack::RTOpT< Scalar > &op, const ArrayView< const Ptr< const VectorBase< Scalar > > > &vecs, const ArrayView< const Ptr< VectorBase< Scalar > > > &targ_vecs, const Ptr< RTOpPack::ReductTarget > &reduct_obj, const Ordinal global_offset) const
 Calls applyOpImpl().
 
void acquireDetachedView (const Range1D &rng, RTOpPack::ConstSubVectorView< Scalar > *sub_vec) const
 Calls acquireDetachedVectorViewImpl().
 
void releaseDetachedView (RTOpPack::ConstSubVectorView< Scalar > *sub_vec) const
 Calls releaseDetachedVectorViewImpl().
 
void acquireDetachedView (const Range1D &rng, RTOpPack::SubVectorView< Scalar > *sub_vec)
 Calls acquireNonconstDetachedVectorViewImpl().
 
void commitDetachedView (RTOpPack::SubVectorView< Scalar > *sub_vec)
 Calls commitDetachedView().
 
void setSubVector (const RTOpPack::SparseSubVectorT< Scalar > &sub_vec)
 Calls setSubVectorImpl().
 
void abs (const VectorBase< Scalar > &x)
 
void reciprocal (const VectorBase< Scalar > &x)
 
void ele_wise_scale (const VectorBase< Scalar > &x)
 
- 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.
 
virtual Teuchos::RCP< const ProductVectorSpaceBase< Scalar > > productSpace () const =0
 Returns the associated product vector space that represents the range.
 
virtual bool blockIsConst (const int k) const =0
 Return if the kth multi-vector block is const-only.
 
virtual Teuchos::RCP< MultiVectorBase< Scalar > > getNonconstMultiVectorBlock (const int k)=0
 Returns a non-persisting non-const view of the zero-based kth block multi-vector.
 
virtual Teuchos::RCP< const MultiVectorBase< Scalar > > getMultiVectorBlock (const int k) const =0
 Returns a non-persisting const view of the (zero-based) kth block multi-vector.
 
- Protected Member Functions inherited from Thyra::VectorBase< Scalar >
- Protected Member Functions inherited from Thyra::MultiVectorBase< Scalar >
virtual RCP< const VectorBase< Scalar > > colImpl (Ordinal j) const
 Return a non-changeable view of a constituent column vector.
 
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::VectorDefaultBase< Scalar >
bool opSupportedImpl (EOpTransp M_trans) const
 For complex Scalar types returns true for NOTRANS and CONJTRANS and for real types returns true for all values of M_trans.
 
void applyImpl (const EOpTransp M_trans, const MultiVectorBase< Scalar > &X, const Ptr< MultiVectorBase< Scalar > > &Y, const Scalar alpha, const Scalar beta) const
 . Applies vector or its adjoint (transpose) as a linear operator.
 
virtual void assignVecImpl (const VectorBase< Scalar > &x)
 Default implementation of assign(vector) using RTOps.
 
virtual void randomizeImpl (Scalar l, Scalar u)
 Default implementation of randomize using RTOps.
 
virtual void updateVecImpl (Scalar alpha, const VectorBase< Scalar > &x)
 Default implementation of update using RTOps.
 
virtual void linearCombinationVecImpl (const ArrayView< const Scalar > &alpha, const ArrayView< const Ptr< const VectorBase< Scalar > > > &x, const Scalar &beta)
 Default implementation of linear_combination using RTOps.
 
virtual Scalar dotImpl (const VectorBase< Scalar > &x) const
 Default implementation of dot using RTOps.
 
virtual Teuchos::ScalarTraits< Scalar >::magnitudeType norm1Impl () const
 Default implementation of norm_1 using RTOps.
 
virtual Teuchos::ScalarTraits< Scalar >::magnitudeType norm2Impl () const
 Default implementation of norm_2 using RTOps.
 
virtual Teuchos::ScalarTraits< Scalar >::magnitudeType normInfImpl () const
 Default implementation of norm_inf using RTOps.
 
virtual RCP< VectorBase< Scalar > > nonconstColImpl (Ordinal j)
 Returns Teuchos::rcp(this,false).
 
virtual RCP< const MultiVectorBase< Scalar > > contigSubViewImpl (const Range1D &col_rng) const
 Returns Teuchos::rcp(this,false).
 
virtual RCP< MultiVectorBase< Scalar > > nonconstContigSubViewImpl (const Range1D &col_rng)
 Returns Teuchos::rcp(this,false).
 
virtual RCP< const MultiVectorBase< Scalar > > nonContigSubViewImpl (const ArrayView< const int > &cols) const
 Returns Teuchos::rcp(this,false).
 
virtual RCP< MultiVectorBase< Scalar > > nonconstNonContigSubViewImpl (const ArrayView< const int > &cols)
 Returns Teuchos::rcp(this,false).
 
virtual void acquireDetachedMultiVectorViewImpl (const Range1D &rowRng, const Range1D &colRng, RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const
 Implemented in terms of this->acquireDetachedView().
 
virtual void releaseDetachedMultiVectorViewImpl (RTOpPack::ConstSubMultiVectorView< Scalar > *sub_mv) const
 Implemented in terms of this->releaseDetachedView().
 
virtual void acquireNonconstDetachedMultiVectorViewImpl (const Range1D &rowRng, const Range1D &colRng, RTOpPack::SubMultiVectorView< Scalar > *sub_mv)
 Implemented in terms of this->acquireDetachedView().
 
virtual void commitNonconstDetachedMultiVectorViewImpl (RTOpPack::SubMultiVectorView< Scalar > *sub_mv)
 Implemented in terms of this->commitDetachedView().
 
virtual RCP< const VectorSpaceBase< Scalar > > range () const
 Returns this->space().
 
virtual RCP< const VectorSpaceBase< Scalar > > domain () const
 Returns a DefaultSerialVectorSpace object with dimension 1.
 
RCP< MultiVectorBase< Scalar > > clone_mv () const
 Returns this->clone_v().
 
RCP< VectorBase< Scalar > > clone_v () const
 Simply creates a new vector and copies the contents from *this.
 
- Protected Member Functions inherited from Thyra::MultiVectorDefaultBase< Scalar >
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
 
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 >

Detailed Description

template<class Scalar>
class Thyra::DefaultProductVector< Scalar >

Concrete implementation of a product 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 72 of file Thyra_DefaultProductVector_decl.hpp.

Constructor & Destructor Documentation

◆ DefaultProductVector() [1/2]

template<class Scalar >
Thyra::DefaultProductVector< Scalar >::DefaultProductVector

Construct to uninitialized.

Definition at line 58 of file Thyra_DefaultProductVector_def.hpp.

◆ DefaultProductVector() [2/2]

template<class Scalar >
Thyra::DefaultProductVector< Scalar >::DefaultProductVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace)

Constructs to initialized (calls initialize()).

Definition at line 66 of file Thyra_DefaultProductVector_def.hpp.

Member Function Documentation

◆ initialize() [1/3]

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::initialize ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace)

Initialize.

ToDo: Finish documentation.

Definition at line 76 of file Thyra_DefaultProductVector_def.hpp.

◆ initialize() [2/3]

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::initialize ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const ArrayView< const RCP< VectorBase< Scalar > > > &  vecs 
)

Initialize.

ToDo: Finish documentation.

Definition at line 90 of file Thyra_DefaultProductVector_def.hpp.

◆ initialize() [3/3]

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::initialize ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const ArrayView< const RCP< const VectorBase< Scalar > > > &  vecs 
)

Initialize.

ToDo: Finish documentation.

Definition at line 109 of file Thyra_DefaultProductVector_def.hpp.

◆ uninitialize()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::uninitialize

Uninitialize.

ToDo: Finish documentation.

Definition at line 128 of file Thyra_DefaultProductVector_def.hpp.

◆ description()

template<class Scalar >
std::string Thyra::DefaultProductVector< Scalar >::description
virtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 140 of file Thyra_DefaultProductVector_def.hpp.

◆ describe()

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

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 155 of file Thyra_DefaultProductVector_def.hpp.

◆ setBlock()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::setBlock ( int  i,
const RCP< const VectorBase< Scalar > > &  b 
)

Definition at line 200 of file Thyra_DefaultProductVector_def.hpp.

◆ setNonconstBlock()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::setNonconstBlock ( int  i,
const RCP< VectorBase< Scalar > > &  b 
)

Definition at line 213 of file Thyra_DefaultProductVector_def.hpp.

◆ getNonconstVectorBlock()

template<class Scalar >
RCP< VectorBase< Scalar > > Thyra::DefaultProductVector< Scalar >::getNonconstVectorBlock ( const int  k)
virtual

◆ getVectorBlock()

template<class Scalar >
RCP< const VectorBase< Scalar > > Thyra::DefaultProductVector< Scalar >::getVectorBlock ( const int  k) const
virtual

◆ productSpace()

template<class Scalar >
RCP< const ProductVectorSpaceBase< Scalar > > Thyra::DefaultProductVector< Scalar >::productSpace
virtual

◆ blockIsConst()

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

◆ getNonconstMultiVectorBlock()

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

◆ getMultiVectorBlock()

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

◆ space()

template<class Scalar >
RCP< const VectorSpaceBase< Scalar > > Thyra::DefaultProductVector< Scalar >::space
virtual

Implements Thyra::VectorBase< Scalar >.

Definition at line 292 of file Thyra_DefaultProductVector_def.hpp.

◆ absImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::absImpl ( const VectorBase< Scalar > &  x)
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 311 of file Thyra_DefaultProductVector_def.hpp.

◆ reciprocalImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::reciprocalImpl ( const VectorBase< Scalar > &  x)
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 332 of file Thyra_DefaultProductVector_def.hpp.

◆ eleWiseScaleImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::eleWiseScaleImpl ( const VectorBase< Scalar > &  x)
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 353 of file Thyra_DefaultProductVector_def.hpp.

◆ norm2WeightedImpl()

template<class Scalar >
Teuchos::ScalarTraits< Scalar >::magnitudeType Thyra::DefaultProductVector< Scalar >::norm2WeightedImpl ( const VectorBase< Scalar > &  x) const
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 375 of file Thyra_DefaultProductVector_def.hpp.

◆ applyOpImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::applyOpImpl ( const RTOpPack::RTOpT< Scalar > &  op,
const ArrayView< const Ptr< const VectorBase< Scalar > > > &  vecs,
const ArrayView< const Ptr< VectorBase< Scalar > > > &  targ_vecs,
const Ptr< RTOpPack::ReductTarget > &  reduct_obj,
const Ordinal  global_offset 
) const
protectedvirtual

Implements Thyra::VectorBase< Scalar >.

Definition at line 401 of file Thyra_DefaultProductVector_def.hpp.

◆ acquireDetachedVectorViewImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::acquireDetachedVectorViewImpl ( const Range1D rng,
RTOpPack::ConstSubVectorView< Scalar > *  sub_vec 
) const
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 521 of file Thyra_DefaultProductVector_def.hpp.

◆ releaseDetachedVectorViewImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::releaseDetachedVectorViewImpl ( RTOpPack::ConstSubVectorView< Scalar > *  sub_vec) const
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 556 of file Thyra_DefaultProductVector_def.hpp.

◆ acquireNonconstDetachedVectorViewImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::acquireNonconstDetachedVectorViewImpl ( const Range1D rng,
RTOpPack::SubVectorView< Scalar > *  sub_vec 
)
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 584 of file Thyra_DefaultProductVector_def.hpp.

◆ commitNonconstDetachedVectorViewImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::commitNonconstDetachedVectorViewImpl ( RTOpPack::SubVectorView< Scalar > *  sub_vec)
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 619 of file Thyra_DefaultProductVector_def.hpp.

◆ setSubVectorImpl()

template<class Scalar >
void Thyra::DefaultProductVector< Scalar >::setSubVectorImpl ( const RTOpPack::SparseSubVectorT< Scalar > &  sub_vec)
protectedvirtual

Reimplemented from Thyra::VectorDefaultBase< Scalar >.

Definition at line 647 of file Thyra_DefaultProductVector_def.hpp.

◆ assignImpl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 680 of file Thyra_DefaultProductVector_def.hpp.

◆ assignMultiVecImpl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 689 of file Thyra_DefaultProductVector_def.hpp.

◆ scaleImpl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 712 of file Thyra_DefaultProductVector_def.hpp.

◆ updateImpl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 721 of file Thyra_DefaultProductVector_def.hpp.

◆ linearCombinationImpl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 745 of file Thyra_DefaultProductVector_def.hpp.

◆ dotsImpl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 787 of file Thyra_DefaultProductVector_def.hpp.

◆ norms1Impl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 815 of file Thyra_DefaultProductVector_def.hpp.

◆ norms2Impl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 831 of file Thyra_DefaultProductVector_def.hpp.

◆ normsInfImpl()

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

Reimplemented from Thyra::MultiVectorDefaultBase< Scalar >.

Definition at line 850 of file Thyra_DefaultProductVector_def.hpp.

Friends And Related Function Documentation

◆ defaultProductVector() [1/4]

template<class Scalar >
RCP< DefaultProductVector< Scalar > > defaultProductVector ( )
related

Nonmember constructor.

Definition at line 294 of file Thyra_DefaultProductVector_decl.hpp.

◆ defaultProductVector() [2/4]

template<class Scalar >
RCP< DefaultProductVector< Scalar > > defaultProductVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace)
related

Nonmember constructor.

Definition at line 307 of file Thyra_DefaultProductVector_decl.hpp.

◆ defaultProductVector() [3/4]

template<class Scalar >
RCP< DefaultProductVector< Scalar > > defaultProductVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const ArrayView< const RCP< VectorBase< Scalar > > > &  vecs 
)
related

Nonmember constructor.

Definition at line 323 of file Thyra_DefaultProductVector_decl.hpp.

◆ defaultProductVector() [4/4]

template<class Scalar >
RCP< DefaultProductVector< Scalar > > defaultProductVector ( const RCP< const DefaultProductVectorSpace< Scalar > > &  productSpace,
const ArrayView< const RCP< const VectorBase< Scalar > > > &  vecs 
)
related

Nonmember constructor.

Definition at line 340 of file Thyra_DefaultProductVector_decl.hpp.

◆ castOrCreateNonconstProductVectorBase()

template<class Scalar >
RCP< ProductVectorBase< Scalar > > castOrCreateNonconstProductVectorBase ( const RCP< VectorBase< Scalar > >  v)
related

Return a casted non-const ProductVectorBase object or create a new DefaultProductVector object with one component.

◆ castOrCreateProductVectorBase()

template<class Scalar >
RCP< const ProductVectorBase< Scalar > > castOrCreateProductVectorBase ( const RCP< const VectorBase< Scalar > >  v)
related

Return a casted const ProductVectorBase object or create a new DefaultProductVector object with one component.


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