Public Member Functions | Private Attributes
Playa::SingleChunkVector< Scalar > Class Template Reference
Inheritance diagram for Playa::SingleChunkVector< Scalar >:
Playa::VectorBase< Scalar >

List of all members.

Public Member Functions

 SingleChunkVector ()
virtual ~SingleChunkVector ()
virtual ConstDataChunk< Scalar > nextConstChunk () const
virtual NonConstDataChunk< Scalar > nextChunk ()
virtual bool hasMoreChunks () const
virtual void rewind () const
virtual int chunkSize () const =0
virtual const Scalar * dataPtr () const =0
virtual Scalar * dataPtr ()=0
virtual void update (const Scalar &alpha, const VectorBase< Scalar > *other, const Scalar &gamma)
virtual void update (const Scalar &alpha, const VectorBase< Scalar > *x, const Scalar &beta, const VectorBase< Scalar > *y, const Scalar &gamma)
virtual void update (const Scalar &alpha, const VectorBase< Scalar > *x, const Scalar &beta, const VectorBase< Scalar > *y, const Scalar &gamma, const VectorBase< Scalar > *z, const Scalar &delta)
virtual Scalar dot (const VectorBase< Scalar > *other) const
virtual Scalar norm2 () const
Access to local elements
virtual const double & operator[] (int localIndex) const
virtual double & operator[] (int localIndex)

Private Attributes

bool rewound_

Detailed Description

template<class Scalar>
class Playa::SingleChunkVector< Scalar >

Base class for vector types that have all on-processor data in a single contiguous chunk

Author:
Kevin Long (kevin.long@ttu.edu)

Definition at line 63 of file PlayaSingleChunkVector.hpp.


Constructor & Destructor Documentation

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

Definition at line 67 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual Playa::SingleChunkVector< Scalar >::~SingleChunkVector ( ) [inline, virtual]

virtual dtor

Definition at line 69 of file PlayaSingleChunkVector.hpp.


Member Function Documentation

template<class Scalar>
virtual int Playa::SingleChunkVector< Scalar >::chunkSize ( ) const [pure virtual]
template<class Scalar>
virtual const Scalar* Playa::SingleChunkVector< Scalar >::dataPtr ( ) const [pure virtual]
template<class Scalar>
virtual Scalar* Playa::SingleChunkVector< Scalar >::dataPtr ( ) [pure virtual]
template<class Scalar>
virtual Scalar Playa::SingleChunkVector< Scalar >::dot ( const VectorBase< Scalar > *  other) const [inline, virtual]

Implements Playa::VectorBase< Scalar >.

Reimplemented in Playa::EpetraVector.

Definition at line 206 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual bool Playa::SingleChunkVector< Scalar >::hasMoreChunks ( ) const [inline, virtual]

Implements Playa::VectorBase< Scalar >.

Definition at line 80 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual NonConstDataChunk<Scalar> Playa::SingleChunkVector< Scalar >::nextChunk ( ) [inline, virtual]

Implements Playa::VectorBase< Scalar >.

Definition at line 76 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual ConstDataChunk<Scalar> Playa::SingleChunkVector< Scalar >::nextConstChunk ( ) const [inline, virtual]

Implements Playa::VectorBase< Scalar >.

Definition at line 72 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual Scalar Playa::SingleChunkVector< Scalar >::norm2 ( ) const [inline, virtual]

Implements Playa::VectorBase< Scalar >.

Reimplemented in Playa::EpetraVector.

Definition at line 222 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual const double& Playa::SingleChunkVector< Scalar >::operator[] ( int  localIndex) const [inline, virtual]

read the element at the given local index

Reimplemented in Playa::EpetraVector.

Definition at line 90 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual double& Playa::SingleChunkVector< Scalar >::operator[] ( int  localIndex) [inline, virtual]

writable access to the element at the given local index

Reimplemented in Playa::EpetraVector.

Definition at line 94 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual void Playa::SingleChunkVector< Scalar >::rewind ( ) const [inline, virtual]

Implements Playa::VectorBase< Scalar >.

Definition at line 84 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual void Playa::SingleChunkVector< Scalar >::update ( const Scalar &  alpha,
const VectorBase< Scalar > *  x,
const Scalar &  gamma 
) [inline, virtual]

Carry out the operation (*this) = gamma*(*this) + alpha*x ;

Implements Playa::VectorBase< Scalar >.

Reimplemented in Playa::EpetraVector.

Definition at line 105 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual void Playa::SingleChunkVector< Scalar >::update ( const Scalar &  alpha,
const VectorBase< Scalar > *  x,
const Scalar &  beta,
const VectorBase< Scalar > *  y,
const Scalar &  gamma 
) [inline, virtual]

Implements Playa::VectorBase< Scalar >.

Reimplemented in Playa::EpetraVector.

Definition at line 131 of file PlayaSingleChunkVector.hpp.

template<class Scalar>
virtual void Playa::SingleChunkVector< Scalar >::update ( const Scalar &  alpha,
const VectorBase< Scalar > *  x,
const Scalar &  beta,
const VectorBase< Scalar > *  y,
const Scalar &  gamma,
const VectorBase< Scalar > *  z,
const Scalar &  delta 
) [inline, virtual]

Implements Playa::VectorBase< Scalar >.

Definition at line 164 of file PlayaSingleChunkVector.hpp.


Member Data Documentation

template<class Scalar>
bool Playa::SingleChunkVector< Scalar >::rewound_ [mutable, private]

Site Contact