Playa::VectorSpace< Scalar > Class Template Reference

#include <PlayaVectorSpaceDecl.hpp>

Inheritance diagram for Playa::VectorSpace< Scalar >:

Playa::Handle< const VectorSpaceBase< Scalar > >

List of all members.

Public Member Functions

 VectorSpace ()
 VectorSpace (Playa::Handleable< const VectorSpaceBase< Scalar > > *rawPtr)
 VectorSpace (const Teuchos::RCP< const VectorSpaceBase< Scalar > > &smartPtr)
Vector< Scalar > createMember () const
int dim () const
int baseGlobalNaturalIndex () const
int numLocalElements () const
const MPICommcomm () const
bool isCompatible (const VectorSpace< Scalar > &vecSpc) const
bool operator== (const VectorSpace< Scalar > &other) const
bool operator!= (const VectorSpace< Scalar > &other) const
bool contains (const Vector< Scalar > &vec) const
int numBlocks () const
bool isBlockSpace () const
const VectorSpace< Scalar > & getBlock (int i) const
const VectorSpace< Scalar > & getBlock (const BlockIterator< Scalar > &iter) const
const VectorSpace< Scalar > & getBlock (const std::deque< int > &iter) const
BlockIterator< Scalar > beginBlock () const
BlockIterator< Scalar > endBlock () const
int mapToGNI (const BlockIterator< Scalar > &b, int indexWithinBlock) const
bool containsGNI (int gni) const
void getBlockAndOffsetFromGNI (int gni, BlockIterator< Scalar > &block, int &indexWithinBlock) const

Related Functions

(Note that these are not member functions.)

template<class Scalar >
VectorSpace< Scalar > blockSpace (const VectorSpace< Scalar > &v1)
template<class Scalar >
VectorSpace< Scalar > blockSpace (const VectorSpace< Scalar > &v1, const VectorSpace< Scalar > &v2)
template<class Scalar >
VectorSpace< Scalar > blockSpace (const VectorSpace< Scalar > &v1, const VectorSpace< Scalar > &v2, const VectorSpace< Scalar > &v3)
template<class Scalar >
VectorSpace< Scalar > blockSpace (const VectorSpace< Scalar > &v1, const VectorSpace< Scalar > &v2, const VectorSpace< Scalar > &v3, const VectorSpace< Scalar > &v4)
template<class Scalar >
VectorSpace< Scalar > blockSpace (const Array< VectorSpace< Scalar > > &x)


Detailed Description

template<class Scalar>
class Playa::VectorSpace< Scalar >

User-level VectorSpace class.

Definition at line 21 of file PlayaVectorSpaceDecl.hpp.


Constructor & Destructor Documentation

template<class Scalar>
Playa::VectorSpace< Scalar >::VectorSpace (  )  [inline]

Empty ctor

template<class Scalar>
Playa::VectorSpace< Scalar >::VectorSpace ( Playa::Handleable< const VectorSpaceBase< Scalar > > *  rawPtr  )  [inline]

Construct a # VectorSpace<Scalar> with a raw pointer to a # const VectorSpaceBase<Scalar>

template<class Scalar>
Playa::VectorSpace< Scalar >::VectorSpace ( const Teuchos::RCP< const VectorSpaceBase< Scalar > > &  smartPtr  )  [inline]

Construct a # VectorSpace<Scalar> with a smart pointer to a # const VectorSpaceBase<Scalar>


Member Function Documentation

template<class Scalar >
Vector< Scalar > Playa::VectorSpace< Scalar >::createMember (  )  const [inline]

Create a new element of this vector space

Definition at line 52 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
int Playa::VectorSpace< Scalar >::dim (  )  const [inline]

Return the dimension of the space

Definition at line 30 of file PlayaVectorSpaceDecl.hpp.

template<class Scalar >
int Playa::VectorSpace< Scalar >::baseGlobalNaturalIndex (  )  const [inline]

Return the lowest global index accessible on this processor

Definition at line 63 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar >
int Playa::VectorSpace< Scalar >::numLocalElements (  )  const [inline]

Return the number of elements owned by this processor

Definition at line 70 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
const MPIComm& Playa::VectorSpace< Scalar >::comm (  )  const [inline]

Return the MPI communicator

Definition at line 39 of file PlayaVectorSpaceDecl.hpp.

template<class Scalar>
bool Playa::VectorSpace< Scalar >::isCompatible ( const VectorSpace< Scalar > &  vecSpc  )  const [inline]

Check compatibility with another space.

Definition at line 80 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
bool Playa::VectorSpace< Scalar >::operator== ( const VectorSpace< Scalar > &  other  )  const [inline]

test equality between two spaces

Definition at line 35 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
bool Playa::VectorSpace< Scalar >::operator!= ( const VectorSpace< Scalar > &  other  )  const [inline]

test inequality of two spaces

Definition at line 43 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
bool Playa::VectorSpace< Scalar >::contains ( const Vector< Scalar > &  vec  )  const [inline]

test whether the space contains a given vector

Definition at line 93 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar >
int Playa::VectorSpace< Scalar >::numBlocks (  )  const [inline]

return the number of subblocks at the highest level.

Definition at line 101 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar >
bool Playa::VectorSpace< Scalar >::isBlockSpace (  )  const [inline]

indicate whether I am a block vector space

Definition at line 109 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar >
const VectorSpace< Scalar > & Playa::VectorSpace< Scalar >::getBlock ( int  i  )  const [inline]

get the i-th subblock

Definition at line 118 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
const VectorSpace< Scalar > & Playa::VectorSpace< Scalar >::getBlock ( const BlockIterator< Scalar > &  iter  )  const [inline]

get a subblock as specified by a block iterator

Definition at line 135 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
const VectorSpace< Scalar > & Playa::VectorSpace< Scalar >::getBlock ( const std::deque< int > &  iter  )  const [inline]

get a subblock as specified by a deque of indices

Definition at line 148 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar >
BlockIterator< Scalar > Playa::VectorSpace< Scalar >::beginBlock (  )  const [inline]

Definition at line 169 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar >
BlockIterator< Scalar > Playa::VectorSpace< Scalar >::endBlock (  )  const [inline]

Definition at line 175 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
int Playa::VectorSpace< Scalar >::mapToGNI ( const BlockIterator< Scalar > &  b,
int  indexWithinBlock 
) const [inline]

Definition at line 182 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar >
bool Playa::VectorSpace< Scalar >::containsGNI ( int  gni  )  const [inline]

Definition at line 198 of file PlayaVectorSpaceImpl.hpp.

template<class Scalar>
void Playa::VectorSpace< Scalar >::getBlockAndOffsetFromGNI ( int  gni,
BlockIterator< Scalar > &  block,
int &  indexWithinBlock 
) const [inline]

Definition at line 205 of file PlayaVectorSpaceImpl.hpp.


Friends And Related Function Documentation

template<class Scalar >
VectorSpace< Scalar > blockSpace ( const VectorSpace< Scalar > &  v1  )  [related]

Definition at line 64 of file PlayaDefaultBlockVectorSpaceImpl.hpp.

template<class Scalar >
VectorSpace< Scalar > blockSpace ( const VectorSpace< Scalar > &  v1,
const VectorSpace< Scalar > &  v2 
) [related]

Definition at line 75 of file PlayaDefaultBlockVectorSpaceImpl.hpp.

template<class Scalar >
VectorSpace< Scalar > blockSpace ( const VectorSpace< Scalar > &  v1,
const VectorSpace< Scalar > &  v2,
const VectorSpace< Scalar > &  v3 
) [related]

Definition at line 87 of file PlayaDefaultBlockVectorSpaceImpl.hpp.

template<class Scalar >
VectorSpace< Scalar > blockSpace ( const VectorSpace< Scalar > &  v1,
const VectorSpace< Scalar > &  v2,
const VectorSpace< Scalar > &  v3,
const VectorSpace< Scalar > &  v4 
) [related]

Definition at line 101 of file PlayaDefaultBlockVectorSpaceImpl.hpp.

template<class Scalar >
VectorSpace< Scalar > blockSpace ( const Array< VectorSpace< Scalar > > &  x  )  [related]

Definition at line 117 of file PlayaDefaultBlockVectorSpaceImpl.hpp.


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

doxygen