EpetraExt  Development
Public Member Functions | Protected Attributes | List of all members
EpetraExt::BlockMultiVector Class Reference

#include <EpetraExt_BlockMultiVector.h>

Inherits Epetra_MultiVector.

Public Member Functions

int ExtractBlockValues (Epetra_MultiVector &BaseVec, long long BlockRow) const
 Extract a single block from a Block Vector: block row is global, not a stencil value. More...
 
int LoadBlockValues (const Epetra_MultiVector &BaseVec, long long BlockRow)
 Load a single block into a Block Vector: block row is global, not a stencil value. More...
 
Teuchos::RCP< const Epetra_MultiVector > GetBlock (long long BlockRow) const
 Return Epetra_MultiVector for given block row. More...
 
Teuchos::RCP< Epetra_MultiVector > GetBlock (long long BlockRow)
 Return Epetra_MultiVector for given block row. More...
 
const Epetra_BlockMap & GetBaseMap () const
 Return base map. More...
 

Protected Attributes

Epetra_BlockMap BaseMap_
 
long long Offset_
 
 BlockMultiVector (const Epetra_BlockMap &BaseMap, const Epetra_BlockMap &GlobalMap, int NumVectors)
 BlockMultiVector constuctor with one block row per processor. More...
 
 BlockMultiVector (Epetra_DataAccess CV, const Epetra_BlockMap &BaseMap, const Epetra_MultiVector &BlockVec)
 
 BlockMultiVector (const BlockMultiVector &MV)
 Copy constructor. More...
 
virtual ~BlockMultiVector ()
 Destructor. More...
 

Detailed Description

Definition at line 59 of file EpetraExt_BlockMultiVector.h.

Constructor & Destructor Documentation

◆ BlockMultiVector() [1/3]

EpetraExt::BlockMultiVector::BlockMultiVector ( const Epetra_BlockMap &  BaseMap,
const Epetra_BlockMap &  GlobalMap,
int  NumVectors 
)

BlockMultiVector constuctor with one block row per processor.

Creates a BlockMultiVector object and allocates storage.

Parameters
InBaseMap - Map determining local structure, can be distrib. over subset of proc.'s
InGlobalMap - Full map describing the overall global structure, generally generated by the construction of a BlockCrsMatrix object
InNumVectors - Number of vectors in object

Definition at line 52 of file EpetraExt_BlockMultiVector.cpp.

◆ BlockMultiVector() [2/3]

EpetraExt::BlockMultiVector::BlockMultiVector ( Epetra_DataAccess  CV,
const Epetra_BlockMap &  BaseMap,
const Epetra_MultiVector &  BlockVec 
)

Creates a BlockMultiVector object from an existing Epetra_MultiVector.

Parameters
InEpetra_DataAccess - Enumerated type set to Copy or View.
InBaseMap - Map determining local structure, can be distrib. over subset of proc.'s
InBlockVec - Source Epetra multi vector whose map must be the full map for the block multi vector

Definition at line 64 of file EpetraExt_BlockMultiVector.cpp.

◆ BlockMultiVector() [3/3]

EpetraExt::BlockMultiVector::BlockMultiVector ( const BlockMultiVector MV)

Copy constructor.

Definition at line 76 of file EpetraExt_BlockMultiVector.cpp.

◆ ~BlockMultiVector()

EpetraExt::BlockMultiVector::~BlockMultiVector ( )
virtual

Destructor.

Definition at line 84 of file EpetraExt_BlockMultiVector.cpp.

Member Function Documentation

◆ ExtractBlockValues()

int EpetraExt::BlockMultiVector::ExtractBlockValues ( Epetra_MultiVector &  BaseVec,
long long  BlockRow 
) const

Extract a single block from a Block Vector: block row is global, not a stencil value.

Definition at line 89 of file EpetraExt_BlockMultiVector.cpp.

◆ LoadBlockValues()

int EpetraExt::BlockMultiVector::LoadBlockValues ( const Epetra_MultiVector &  BaseVec,
long long  BlockRow 
)

Load a single block into a Block Vector: block row is global, not a stencil value.

Definition at line 111 of file EpetraExt_BlockMultiVector.cpp.

◆ GetBlock() [1/2]

Teuchos::RCP< const Epetra_MultiVector > EpetraExt::BlockMultiVector::GetBlock ( long long  BlockRow) const

Return Epetra_MultiVector for given block row.

Definition at line 134 of file EpetraExt_BlockMultiVector.cpp.

◆ GetBlock() [2/2]

Teuchos::RCP< Epetra_MultiVector > EpetraExt::BlockMultiVector::GetBlock ( long long  BlockRow)

Return Epetra_MultiVector for given block row.

Definition at line 151 of file EpetraExt_BlockMultiVector.cpp.

◆ GetBaseMap()

const Epetra_BlockMap & EpetraExt::BlockMultiVector::GetBaseMap ( ) const

Return base map.

Definition at line 168 of file EpetraExt_BlockMultiVector.cpp.

Member Data Documentation

◆ BaseMap_

Epetra_BlockMap EpetraExt::BlockMultiVector::BaseMap_
protected

Definition at line 112 of file EpetraExt_BlockMultiVector.h.

◆ Offset_

long long EpetraExt::BlockMultiVector::Offset_
protected

Definition at line 114 of file EpetraExt_BlockMultiVector.h.


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