Thyra Version of the Day
Loading...
Searching...
No Matches

These non-member helper functions provide the standard way by which clients can get access to local data in VectorBase and MultiVector base objects for the standard SPMD objects. They are the primary interoperability mechanism for clients to get at local SPMD VectorBase and MultiVectorBase data. More...

Collaboration diagram for Official utilities for accessing local data in SPMD vectors and multi-vectors.:

Functions

template<class Scalar>
RTOpPack::SubVectorView< Scalar > Thyra::getNonconstLocalSubVectorView (const RCP< VectorBase< Scalar > > &vec)
 Return a contiguous non-const semi-persisting view of the local process data of a VectorBase object.
template<class Scalar>
RTOpPack::ConstSubVectorView< Scalar > Thyra::getLocalSubVectorView (const RCP< const VectorBase< Scalar > > &vec)
 Return a contiguous const semi-persisting view of the local process data of a VectorBase object.
template<class Scalar>
RTOpPack::SubMultiVectorView< Scalar > Thyra::getNonconstLocalSubMultiVectorView (const RCP< MultiVectorBase< Scalar > > &multivec)
 Return a contiguous non-const semi-persisting view of the local process data of a MultiVectorBase object.
template<class Scalar>
RTOpPack::ConstSubMultiVectorView< Scalar > Thyra::getLocalSubMultiVectorView (const RCP< const MultiVectorBase< Scalar > > &multivec)
 Return a contiguous const semi-persisting view of the local process data of a MultiVectorBase object.

Detailed Description

These non-member helper functions provide the standard way by which clients can get access to local data in VectorBase and MultiVector base objects for the standard SPMD objects. They are the primary interoperability mechanism for clients to get at local SPMD VectorBase and MultiVectorBase data.

All of these views follow the constraints of the Generalized View Design Pattern defined here. That means a few things:

  • Unlimited const views are allowed but only a single non-const view is allowed.

  • Once a single non-const view is created, no other const or non-const views are allowed.

  • If any view is active, a non-const view can not be created.

  • Changes to an object through a non-const view are not guaranteed to be reflected in the parent object until the view is released.

ToDo: Finish Documentation!

Function Documentation

◆ getNonconstLocalSubVectorView()

template<class Scalar>
RTOpPack::SubVectorView< Scalar > Thyra::getNonconstLocalSubVectorView ( const RCP< VectorBase< Scalar > > & vec)

Return a contiguous non-const semi-persisting view of the local process data of a VectorBase object.

Definition at line 55 of file Thyra_SpmdLocalDataAccess_def.hpp.

◆ getLocalSubVectorView()

template<class Scalar>
RTOpPack::ConstSubVectorView< Scalar > Thyra::getLocalSubVectorView ( const RCP< const VectorBase< Scalar > > & vec)

Return a contiguous const semi-persisting view of the local process data of a VectorBase object.

Definition at line 77 of file Thyra_SpmdLocalDataAccess_def.hpp.

◆ getNonconstLocalSubMultiVectorView()

template<class Scalar>
RTOpPack::SubMultiVectorView< Scalar > Thyra::getNonconstLocalSubMultiVectorView ( const RCP< MultiVectorBase< Scalar > > & multivec)

Return a contiguous non-const semi-persisting view of the local process data of a MultiVectorBase object.

Definition at line 99 of file Thyra_SpmdLocalDataAccess_def.hpp.

◆ getLocalSubMultiVectorView()

template<class Scalar>
RTOpPack::ConstSubMultiVectorView< Scalar > Thyra::getLocalSubMultiVectorView ( const RCP< const MultiVectorBase< Scalar > > & multivec)

Return a contiguous const semi-persisting view of the local process data of a MultiVectorBase object.

Definition at line 121 of file Thyra_SpmdLocalDataAccess_def.hpp.