EpetraExt Package Browser (Single Doxygen Collection) Development
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
EpetraExt::BlockVector Class Reference

#include <EpetraExt_BlockVector.h>

Inheritance diagram for EpetraExt::BlockVector:
Inheritance graph
[legend]

Public Member Functions

 BlockVector (const Epetra_BlockMap &BaseMap, const Epetra_BlockMap &GlobalMap)
 BlockVector constuctor with one block row per processor.
 
 BlockVector (Epetra_DataAccess CV, const Epetra_BlockMap &BaseMap, const Epetra_Vector &BlockVec)
 
 BlockVector (const BlockVector &MV)
 Copy constructor.
 
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.
 
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.
 
int BlockSumIntoGlobalValues (int NumIndices, double *Values, long long *Indices, long long BlockRow)
 Load entries into BlockVector with base vector indices offset by BlockRow.
 
int BlockReplaceGlobalValues (int NumIndices, double *Values, long long *Indices, long long BlockRow)
 Load entries into BlockVector with base vector indices offset by BlockRow.
 
Teuchos::RCP< const Epetra_VectorGetBlock (long long BlockRow) const
 Return Epetra_Vector for given block row.
 
Teuchos::RCP< Epetra_VectorGetBlock (long long BlockRow)
 Return Epetra_Vector for given block row.
 
const Epetra_BlockMapGetBaseMap () const
 Return base map.
 
- Public Member Functions inherited from Epetra_Vector
 Epetra_Vector (const Epetra_BlockMap &Map, bool zeroOut=true)
 
 Epetra_Vector (const Epetra_Vector &Source)
 
 Epetra_Vector (Epetra_DataAccess CV, const Epetra_BlockMap &Map, double *V)
 
 Epetra_Vector (Epetra_DataAccess CV, const Epetra_MultiVector &Source, int Index)
 
virtual ~Epetra_Vector ()
 
int ReplaceGlobalValues (int NumEntries, const double *Values, const int *Indices)
 
int ReplaceGlobalValues (int NumEntries, const double *Values, const long long *Indices)
 
int ReplaceMyValues (int NumEntries, const double *Values, const int *Indices)
 
int SumIntoGlobalValues (int NumEntries, const double *Values, const int *Indices)
 
int SumIntoMyValues (int NumEntries, const double *Values, const int *Indices)
 
int ReplaceGlobalValues (int NumEntries, int BlockOffset, const double *Values, const int *Indices)
 
int ReplaceMyValues (int NumEntries, int BlockOffset, const double *Values, const int *Indices)
 
int SumIntoGlobalValues (int NumEntries, int BlockOffset, const double *Values, const int *Indices)
 
int SumIntoMyValues (int NumEntries, int BlockOffset, const double *Values, const int *Indices)
 
int ExtractCopy (double *V) const
 
int ExtractView (double **V) const
 
int ExtractCopy (double *A, int MyLDA) const
 
int ExtractCopy (double **ArrayOfPointers) const
 
int ExtractView (double **A, int *MyLDA) const
 
int ExtractView (double ***ArrayOfPointers) const
 
double & operator[] (int index)
 
const double & operator[] (int index) const
 
int ResetView (double *Values_in)
 
int ResetView (double **ArrayOfPointers)
 
- Public Member Functions inherited from Epetra_MultiVector
int ResetView (double **ArrayOfPointers)
 
double * Values () const
 
double ** Pointers () const
 
int Reduce ()
 
 Epetra_MultiVector (const Epetra_BlockMap &Map, int NumVectors, bool zeroOut=true)
 
 Epetra_MultiVector (const Epetra_MultiVector &Source)
 
 Epetra_MultiVector (Epetra_DataAccess CV, const Epetra_BlockMap &Map, double *A, int MyLDA, int NumVectors)
 
 Epetra_MultiVector (Epetra_DataAccess CV, const Epetra_BlockMap &Map, double **ArrayOfPointers, int NumVectors)
 
 Epetra_MultiVector (Epetra_DataAccess CV, const Epetra_MultiVector &Source, int *Indices, int NumVectors)
 
 Epetra_MultiVector (Epetra_DataAccess CV, const Epetra_MultiVector &Source, int StartIndex, int NumVectors)
 
virtual ~Epetra_MultiVector ()
 
int ReplaceGlobalValue (int GlobalRow, int VectorIndex, double ScalarValue)
 
int ReplaceGlobalValue (long long GlobalRow, int VectorIndex, double ScalarValue)
 
int ReplaceGlobalValue (int GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
 
int ReplaceGlobalValue (long long GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
 
int SumIntoGlobalValue (int GlobalRow, int VectorIndex, double ScalarValue)
 
int SumIntoGlobalValue (long long GlobalRow, int VectorIndex, double ScalarValue)
 
int SumIntoGlobalValue (int GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
 
int SumIntoGlobalValue (long long GlobalBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
 
int ReplaceMyValue (int MyRow, int VectorIndex, double ScalarValue)
 
int ReplaceMyValue (int MyBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
 
int SumIntoMyValue (int MyRow, int VectorIndex, double ScalarValue)
 
int SumIntoMyValue (int MyBlockRow, int BlockRowOffset, int VectorIndex, double ScalarValue)
 
int PutScalar (double ScalarConstant)
 
int Random ()
 
int ExtractCopy (double *A, int MyLDA) const
 
int ExtractCopy (double **ArrayOfPointers) const
 
int ExtractView (double **A, int *MyLDA) const
 
int ExtractView (double ***ArrayOfPointers) const
 
int Dot (const Epetra_MultiVector &A, double *Result) const
 
int Abs (const Epetra_MultiVector &A)
 
int Reciprocal (const Epetra_MultiVector &A)
 
int Scale (double ScalarValue)
 
int Scale (double ScalarA, const Epetra_MultiVector &A)
 
int Update (double ScalarA, const Epetra_MultiVector &A, double ScalarThis)
 
int Update (double ScalarA, const Epetra_MultiVector &A, double ScalarB, const Epetra_MultiVector &B, double ScalarThis)
 
int Norm1 (double *Result) const
 
int Norm2 (double *Result) const
 
int NormInf (double *Result) const
 
int NormWeighted (const Epetra_MultiVector &Weights, double *Result) const
 
int MinValue (double *Result) const
 
int MaxValue (double *Result) const
 
int MeanValue (double *Result) const
 
int Multiply (char TransA, char TransB, double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis)
 
int Multiply (double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis)
 
int ReciprocalMultiply (double ScalarAB, const Epetra_MultiVector &A, const Epetra_MultiVector &B, double ScalarThis)
 
int SetSeed (unsigned int Seed_in)
 
unsigned int Seed ()
 
Epetra_MultiVectoroperator= (const Epetra_MultiVector &Source)
 
double *& operator[] (int i)
 
double *const & operator[] (int i) const
 
Epetra_Vector *& operator() (int i)
 
const Epetra_Vector *& operator() (int i) const
 
int NumVectors () const
 
int MyLength () const
 
int GlobalLength () const
 
long long GlobalLength64 () const
 
int Stride () const
 
bool ConstantStride () const
 
int ReplaceMap (const Epetra_BlockMap &map)
 
virtual void Print (std::ostream &os) const
 
- Public Member Functions inherited from Epetra_DistObject
 Epetra_DistObject (const Epetra_BlockMap &Map)
 
 Epetra_DistObject (const Epetra_BlockMap &Map, const char *const Label)
 
 Epetra_DistObject (const Epetra_DistObject &Source)
 
virtual ~Epetra_DistObject ()
 
int Import (const Epetra_SrcDistObject &A, const Epetra_Import &Importer, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0)
 
int Import (const Epetra_SrcDistObject &A, const Epetra_Export &Exporter, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0)
 
int Export (const Epetra_SrcDistObject &A, const Epetra_Import &Importer, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0)
 
int Export (const Epetra_SrcDistObject &A, const Epetra_Export &Exporter, Epetra_CombineMode CombineMode, const Epetra_OffsetIndex *Indexor=0)
 
const Epetra_BlockMapMap () const
 
const Epetra_CommComm () const
 
bool DistributedGlobal () const
 
- Public Member Functions inherited from Epetra_Object
virtual int ReportError (const std::string Message, int ErrorCode) const
 
 Epetra_Object (int TracebackModeIn=-1, bool set_label=true)
 
 Epetra_Object (const char *const Label, int TracebackModeIn=-1)
 
 Epetra_Object (const Epetra_Object &Object)
 
virtual ~Epetra_Object ()
 
virtual void SetLabel (const char *const Label)
 
virtual const char * Label () const
 
- Public Member Functions inherited from Epetra_SrcDistObject
virtual ~Epetra_SrcDistObject ()
 
- Public Member Functions inherited from Epetra_CompObject
void UpdateFlops (int Flops_in) const
 
void UpdateFlops (long int Flops_in) const
 
void UpdateFlops (long long Flops_in) const
 
void UpdateFlops (double Flops_in) const
 
void UpdateFlops (float Flops_in) const
 
Epetra_CompObjectoperator= (const Epetra_CompObject &src)
 
 Epetra_CompObject ()
 
 Epetra_CompObject (const Epetra_CompObject &Source)
 
virtual ~Epetra_CompObject ()
 
void SetFlopCounter (const Epetra_Flops &FlopCounter_in)
 
void SetFlopCounter (const Epetra_CompObject &CompObject)
 
void UnsetFlopCounter ()
 
Epetra_FlopsGetFlopCounter () const
 
void ResetFlops () const
 
double Flops () const
 
- Public Member Functions inherited from Epetra_BLAS
 Epetra_BLAS (void)
 
 Epetra_BLAS (const Epetra_BLAS &BLAS)
 
virtual ~Epetra_BLAS (void)
 
float ASUM (const int N, const float *X, const int INCX=1) const
 
double ASUM (const int N, const double *X, const int INCX=1) const
 
float DOT (const int N, const float *X, const float *Y, const int INCX=1, const int INCY=1) const
 
double DOT (const int N, const double *X, const double *Y, const int INCX=1, const int INCY=1) const
 
float NRM2 (const int N, const float *X, const int INCX=1) const
 
double NRM2 (const int N, const double *X, const int INCX=1) const
 
void SCAL (const int N, const float ALPHA, float *X, const int INCX=1) const
 
void SCAL (const int N, const double ALPHA, double *X, const int INCX=1) const
 
void COPY (const int N, const float *X, float *Y, const int INCX=1, const int INCY=1) const
 
void COPY (const int N, const double *X, double *Y, const int INCX=1, const int INCY=1) const
 
int IAMAX (const int N, const float *X, const int INCX=1) const
 
int IAMAX (const int N, const double *X, const int INCX=1) const
 
void AXPY (const int N, const float ALPHA, const float *X, float *Y, const int INCX=1, const int INCY=1) const
 
void AXPY (const int N, const double ALPHA, const double *X, double *Y, const int INCX=1, const int INCY=1) const
 
void GEMV (const char TRANS, const int M, const int N, const float ALPHA, const float *A, const int LDA, const float *X, const float BETA, float *Y, const int INCX=1, const int INCY=1) const
 
void GEMV (const char TRANS, const int M, const int N, const double ALPHA, const double *A, const int LDA, const double *X, const double BETA, double *Y, const int INCX=1, const int INCY=1) const
 
void GEMM (const char TRANSA, const char TRANSB, const int M, const int N, const int K, const float ALPHA, const float *A, const int LDA, const float *B, const int LDB, const float BETA, float *C, const int LDC) const
 
void GEMM (const char TRANSA, const char TRANSB, const int M, const int N, const int K, const double ALPHA, const double *A, const int LDA, const double *B, const int LDB, const double BETA, double *C, const int LDC) const
 
void SYMM (const char SIDE, const char UPLO, const int M, const int N, const float ALPHA, const float *A, const int LDA, const float *B, const int LDB, const float BETA, float *C, const int LDC) const
 
void SYMM (const char SIDE, const char UPLO, const int M, const int N, const double ALPHA, const double *A, const int LDA, const double *B, const int LDB, const double BETA, double *C, const int LDC) const
 
void TRMM (const char SIDE, const char UPLO, const char TRANSA, const char DIAG, const int M, const int N, const float ALPHA, const float *A, const int LDA, float *B, const int LDB) const
 
void TRMM (const char SIDE, const char UPLO, const char TRANSA, const char DIAG, const int M, const int N, const double ALPHA, const double *A, const int LDA, double *B, const int LDB) const
 
void SYRK (const char UPLO, const char TRANS, const int N, const int K, const float ALPHA, const float *A, const int LDA, const float BETA, float *C, const int LDC) const
 
void SYRK (const char UPLO, const char TRANS, const int N, const int K, const double ALPHA, const double *A, const int LDA, const double BETA, double *C, const int LDC) const
 

Protected Attributes

Epetra_BlockMap BaseMap_
 
long long Offset_
 
- Protected Attributes inherited from Epetra_MultiVector
double * Values_
 
- Protected Attributes inherited from Epetra_DistObject
Epetra_BlockMap Map_
 
const Epetra_CommComm_
 
char * Exports_
 
char * Imports_
 
int LenExports_
 
int LenImports_
 
int * Sizes_
 
- Protected Attributes inherited from Epetra_CompObject
Epetra_FlopsFlopCounter_
 

Additional Inherited Members

- Static Public Member Functions inherited from Epetra_Object
static void SetTracebackMode (int TracebackModeValue)
 
static int GetTracebackMode ()
 
static std::ostream & GetTracebackStream ()
 
- Static Public Attributes inherited from Epetra_Object
static int TracebackMode
 
- Protected Member Functions inherited from Epetra_MultiVector
void Assign (const Epetra_MultiVector &rhs)
 
int CheckInput ()
 
- Protected Member Functions inherited from Epetra_DistObject
virtual int DoTransfer (const Epetra_SrcDistObject &A, Epetra_CombineMode CombineMode, int NumSameIDs, int NumPermuteIDs, int NumRemoteIDs, int NumExportIDs, int *PermuteToLIDs, int *PermuteFromLIDs, int *RemoteLIDs, int *ExportLIDs, int &LenExports, char *&Exports, int &LenImports, char *&Imports, Epetra_Distributor &Distor, bool DoReverse, const Epetra_OffsetIndex *Indexor)
 
- Protected Member Functions inherited from Epetra_Object
std::string toString (const int &x) const
 
std::string toString (const long long &x) const
 
std::string toString (const double &x) const
 

Detailed Description

Definition at line 60 of file EpetraExt_BlockVector.h.

Constructor & Destructor Documentation

◆ BlockVector() [1/3]

EpetraExt::BlockVector::BlockVector ( const Epetra_BlockMap & BaseMap,
const Epetra_BlockMap & GlobalMap )

BlockVector constuctor with one block row per processor.

Creates a BlockVector 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
InNumBlocks - Number of local blocks

Definition at line 51 of file EpetraExt_BlockVector.cpp.

◆ BlockVector() [2/3]

EpetraExt::BlockVector::BlockVector ( Epetra_DataAccess CV,
const Epetra_BlockMap & BaseMap,
const Epetra_Vector & BlockVec )

Creates a BlockVector object from an existing Epetra_Vector.

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 vector whose map must be the full map for the block vector

Definition at line 62 of file EpetraExt_BlockVector.cpp.

◆ BlockVector() [3/3]

EpetraExt::BlockVector::BlockVector ( const BlockVector & MV)

Copy constructor.

Definition at line 74 of file EpetraExt_BlockVector.cpp.

◆ ~BlockVector()

EpetraExt::BlockVector::~BlockVector ( )
virtual

Destructor.

Definition at line 82 of file EpetraExt_BlockVector.cpp.

Member Function Documentation

◆ ExtractBlockValues()

int EpetraExt::BlockVector::ExtractBlockValues ( Epetra_Vector & BaseVec,
long long BlockRow ) const

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

Definition at line 87 of file EpetraExt_BlockVector.cpp.

◆ LoadBlockValues()

int EpetraExt::BlockVector::LoadBlockValues ( const Epetra_Vector & BaseVec,
long long BlockRow )

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

Definition at line 108 of file EpetraExt_BlockVector.cpp.

◆ BlockSumIntoGlobalValues() [1/2]

int EpetraExt::BlockVector::BlockSumIntoGlobalValues ( int NumIndices,
double * Values,
int * Indices,
int BlockRow )

Load entries into BlockVector with base vector indices offset by BlockRow.

Definition at line 129 of file EpetraExt_BlockVector.cpp.

◆ BlockReplaceGlobalValues() [1/2]

int EpetraExt::BlockVector::BlockReplaceGlobalValues ( int NumIndices,
double * Values,
int * Indices,
int BlockRow )

Load entries into BlockVector with base vector indices offset by BlockRow.

Definition at line 150 of file EpetraExt_BlockVector.cpp.

◆ BlockSumIntoGlobalValues() [2/2]

int EpetraExt::BlockVector::BlockSumIntoGlobalValues ( int NumIndices,
double * Values,
long long * Indices,
long long BlockRow )

Load entries into BlockVector with base vector indices offset by BlockRow.

Definition at line 173 of file EpetraExt_BlockVector.cpp.

◆ BlockReplaceGlobalValues() [2/2]

int EpetraExt::BlockVector::BlockReplaceGlobalValues ( int NumIndices,
double * Values,
long long * Indices,
long long BlockRow )

Load entries into BlockVector with base vector indices offset by BlockRow.

Definition at line 194 of file EpetraExt_BlockVector.cpp.

◆ GetBlock() [1/2]

Teuchos::RCP< const Epetra_Vector > EpetraExt::BlockVector::GetBlock ( long long BlockRow) const

Return Epetra_Vector for given block row.

Definition at line 217 of file EpetraExt_BlockVector.cpp.

◆ GetBlock() [2/2]

Teuchos::RCP< Epetra_Vector > EpetraExt::BlockVector::GetBlock ( long long BlockRow)

Return Epetra_Vector for given block row.

Definition at line 225 of file EpetraExt_BlockVector.cpp.

◆ GetBaseMap()

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

Return base map.

Definition at line 233 of file EpetraExt_BlockVector.cpp.

Member Data Documentation

◆ BaseMap_

Epetra_BlockMap EpetraExt::BlockVector::BaseMap_
protected

Definition at line 130 of file EpetraExt_BlockVector.h.

◆ Offset_

long long EpetraExt::BlockVector::Offset_
protected

Definition at line 132 of file EpetraExt_BlockVector.h.


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