42 #ifndef EPETRAEXT_BLOCKVECTOR_H
43 #define EPETRAEXT_BLOCKVECTOR_H
45 #include "Epetra_ConfigDefs.h"
46 #include "Epetra_Vector.h"
47 #include "Teuchos_RCP.hpp"
101 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
104 int* Indices,
int BlockRow);
107 int* Indices,
int BlockRow);
110 #ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
113 long long* Indices,
long long BlockRow);
116 long long* Indices,
long long BlockRow);
120 Teuchos::RCP<const Epetra_Vector>
GetBlock(
long long BlockRow)
const;
123 Teuchos::RCP<Epetra_Vector>
GetBlock(
long long BlockRow);
int BlockSumIntoGlobalValues(int NumIndices, double *Values, int *Indices, int BlockRow)
Load entries into BlockVector with base vector indices offset by BlockRow.
int BlockReplaceGlobalValues(int NumIndices, double *Values, int *Indices, int BlockRow)
Load entries into BlockVector with base vector indices offset by BlockRow.
virtual ~BlockVector()
Destructor.
int ExtractBlockValues(Epetra_Vector &BaseVec, long long BlockRow) const
Extract a single block from a Block Vector: block row is global, not a stencil value.
int LoadBlockValues(const Epetra_Vector &BaseVec, long long BlockRow)
Load a single block into a Block Vector: block row is global, not a stencil value.
BlockVector(const Epetra_BlockMap &BaseMap, const Epetra_BlockMap &GlobalMap)
BlockVector constuctor with one block row per processor.
Teuchos::RCP< const Epetra_Vector > GetBlock(long long BlockRow) const
Return Epetra_Vector for given block row.
const Epetra_BlockMap & GetBaseMap() const
Return base map.