EpetraExt Development
Public Member Functions | Static Public Member Functions
EpetraExt::BlockUtility Class Reference

#include <EpetraExt_BlockUtility.h>

List of all members.

Public Member Functions

template<typename int_type >
Epetra_CrsGraphTGenerateBlockGraph (const Epetra_CrsGraph &BaseGraph, const vector< vector< int_type > > &RowStencil, const vector< int_type > &RowIndices, const Epetra_Comm &GlobalComm)
template<typename int_type >
Epetra_CrsGraphTGenerateBlockGraph (const Epetra_RowMatrix &BaseMatrix, const vector< vector< int_type > > &RowStencil, const vector< int_type > &RowIndices, const Epetra_Comm &GlobalComm)

Static Public Member Functions

static Epetra_MapGenerateBlockMap (const Epetra_BlockMap &BaseMap, const int *RowIndices, int num_indices, const Epetra_Comm &GlobalComm, int Offset=0)
static Epetra_MapGenerateBlockMap (const Epetra_BlockMap &BaseMap, const long long *RowIndices, int num_indices, const Epetra_Comm &GlobalComm, long long Offset=0)
static Epetra_MapGenerateBlockMap (const Epetra_BlockMap &BaseMap, const std::vector< int > &RowIndices, const Epetra_Comm &GlobalComm, int Offset=0)
static Epetra_MapGenerateBlockMap (const Epetra_BlockMap &BaseMap, const std::vector< long long > &RowIndices, const Epetra_Comm &GlobalComm, long long Offset=0)
static Epetra_MapGenerateBlockMap (const Epetra_BlockMap &BaseMap, const Epetra_BlockMap &BlockMap, const Epetra_Comm &GlobalComm, int Offset=0)
static Epetra_CrsGraphGenerateBlockGraph (const Epetra_CrsGraph &BaseGraph, const std::vector< std::vector< int > > &RowStencil, const std::vector< int > &RowIndices, const Epetra_Comm &GlobalComm)
 BlockCrsMatrix constuctor.
static Epetra_CrsGraphGenerateBlockGraph (const Epetra_CrsGraph &BaseGraph, const std::vector< std::vector< long long > > &RowStencil, const std::vector< long long > &RowIndices, const Epetra_Comm &GlobalComm)
static Epetra_CrsGraphGenerateBlockGraph (const Epetra_RowMatrix &BaseMatrix, const std::vector< std::vector< int > > &RowStencil, const std::vector< int > &RowIndices, const Epetra_Comm &GlobalComm)
static Epetra_CrsGraphGenerateBlockGraph (const Epetra_RowMatrix &BaseMatrix, const std::vector< std::vector< long long > > &RowStencil, const std::vector< long long > &RowIndices, const Epetra_Comm &GlobalComm)
static Epetra_CrsGraphGenerateBlockGraph (const Epetra_CrsGraph &BaseGraph, const Epetra_CrsGraph &LocalBlockGraph, const Epetra_Comm &GlobalComm)
 Generate global block graph using base graph and local block graph.
static void GenerateRowStencil (const Epetra_CrsGraph &LocalBlockGraph, std::vector< int > RowIndices, std::vector< std::vector< int > > &RowStencil)
 Generate stencil arrays from a local block graph.
static void GenerateRowStencil (const Epetra_CrsGraph &LocalBlockGraph, std::vector< long long > RowIndices, std::vector< std::vector< long long > > &RowStencil)
static int CalculateOffset (const Epetra_BlockMap &BaseMap)
 Routine for calculating Offset for creating unique global IDs for Block representation.
static long long CalculateOffset64 (const Epetra_BlockMap &BaseMap)

Detailed Description

Definition at line 55 of file EpetraExt_BlockUtility.h.


Member Function Documentation

Epetra_Map * EpetraExt::BlockUtility::GenerateBlockMap ( const Epetra_BlockMap BaseMap,
const int *  RowIndices,
int  num_indices,
const Epetra_Comm GlobalComm,
int  Offset = 0 
) [static]

Creates a BlockMap object

Parameters:
InBaseMap - Map determining individual block structure, can be distrib. over subset of proc.'s
InRowIndices - Defines the indices for local block rows

Definition at line 88 of file EpetraExt_BlockUtility.cpp.

Epetra_Map * EpetraExt::BlockUtility::GenerateBlockMap ( const Epetra_BlockMap BaseMap,
const long long *  RowIndices,
int  num_indices,
const Epetra_Comm GlobalComm,
long long  Offset = 0 
) [static]

Definition at line 103 of file EpetraExt_BlockUtility.cpp.

Epetra_Map * EpetraExt::BlockUtility::GenerateBlockMap ( const Epetra_BlockMap BaseMap,
const std::vector< int > &  RowIndices,
const Epetra_Comm GlobalComm,
int  Offset = 0 
) [static]

Creates a BlockMap object

Parameters:
InBaseMap - Map determining individual block structure, can be distrib. over subset of proc.'s
InRowIndices - Defines the indices for local block rows

Definition at line 118 of file EpetraExt_BlockUtility.cpp.

Epetra_Map * EpetraExt::BlockUtility::GenerateBlockMap ( const Epetra_BlockMap BaseMap,
const std::vector< long long > &  RowIndices,
const Epetra_Comm GlobalComm,
long long  Offset = 0 
) [static]

Definition at line 130 of file EpetraExt_BlockUtility.cpp.

Epetra_Map * EpetraExt::BlockUtility::GenerateBlockMap ( const Epetra_BlockMap BaseMap,
const Epetra_BlockMap BlockMap,
const Epetra_Comm GlobalComm,
int  Offset = 0 
) [static]

Creates a BlockMap object

Parameters:
InBaseMap - Map determining individual block structure, can be distrib. over subset of proc.'s
InRowIndices - Defines the indices for local block rows

Definition at line 142 of file EpetraExt_BlockUtility.cpp.

static Epetra_CrsGraph* EpetraExt::BlockUtility::GenerateBlockGraph ( const Epetra_CrsGraph BaseGraph,
const std::vector< std::vector< int > > &  RowStencil,
const std::vector< int > &  RowIndices,
const Epetra_Comm GlobalComm 
) [static]

BlockCrsMatrix constuctor.

Creates a BlockGraph object

Parameters:
InBaseGraph - Graph determining individual block structure, can be distrib. over subset of proc.'s
InRowStencil - Describes the stencil for block rows on this processor (i.e. (-1 0 1) centered difference)
InRowIndices - Defines the indices for local block rows
static Epetra_CrsGraph* EpetraExt::BlockUtility::GenerateBlockGraph ( const Epetra_CrsGraph BaseGraph,
const std::vector< std::vector< long long > > &  RowStencil,
const std::vector< long long > &  RowIndices,
const Epetra_Comm GlobalComm 
) [static]
static Epetra_CrsGraph* EpetraExt::BlockUtility::GenerateBlockGraph ( const Epetra_RowMatrix BaseMatrix,
const std::vector< std::vector< int > > &  RowStencil,
const std::vector< int > &  RowIndices,
const Epetra_Comm GlobalComm 
) [static]
static Epetra_CrsGraph* EpetraExt::BlockUtility::GenerateBlockGraph ( const Epetra_RowMatrix BaseMatrix,
const std::vector< std::vector< long long > > &  RowStencil,
const std::vector< long long > &  RowIndices,
const Epetra_Comm GlobalComm 
) [static]
Epetra_CrsGraph * EpetraExt::BlockUtility::GenerateBlockGraph ( const Epetra_CrsGraph BaseGraph,
const Epetra_CrsGraph LocalBlockGraph,
const Epetra_Comm GlobalComm 
) [static]

Generate global block graph using base graph and local block graph.

Definition at line 441 of file EpetraExt_BlockUtility.cpp.

void EpetraExt::BlockUtility::GenerateRowStencil ( const Epetra_CrsGraph LocalBlockGraph,
std::vector< int >  RowIndices,
std::vector< std::vector< int > > &  RowStencil 
) [static]

Generate stencil arrays from a local block graph.

Definition at line 498 of file EpetraExt_BlockUtility.cpp.

void EpetraExt::BlockUtility::GenerateRowStencil ( const Epetra_CrsGraph LocalBlockGraph,
std::vector< long long >  RowIndices,
std::vector< std::vector< long long > > &  RowStencil 
) [static]

Definition at line 510 of file EpetraExt_BlockUtility.cpp.

int EpetraExt::BlockUtility::CalculateOffset ( const Epetra_BlockMap BaseMap) [static]

Routine for calculating Offset for creating unique global IDs for Block representation.

Definition at line 537 of file EpetraExt_BlockUtility.cpp.

long long EpetraExt::BlockUtility::CalculateOffset64 ( const Epetra_BlockMap BaseMap) [static]

Definition at line 546 of file EpetraExt_BlockUtility.cpp.

template<typename int_type >
Epetra_CrsGraph* EpetraExt::BlockUtility::TGenerateBlockGraph ( const Epetra_CrsGraph BaseGraph,
const vector< vector< int_type > > &  RowStencil,
const vector< int_type > &  RowIndices,
const Epetra_Comm GlobalComm 
)

Definition at line 171 of file EpetraExt_BlockUtility.cpp.

template<typename int_type >
Epetra_CrsGraph* EpetraExt::BlockUtility::TGenerateBlockGraph ( const Epetra_RowMatrix BaseMatrix,
const vector< vector< int_type > > &  RowStencil,
const vector< int_type > &  RowIndices,
const Epetra_Comm GlobalComm 
)

Definition at line 267 of file EpetraExt_BlockUtility.cpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines