42 #ifndef EPETRAEXT_BLOCKUTILITY_H
43 #define EPETRAEXT_BLOCKUTILITY_H
65 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
68 #ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
79 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
82 #ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
105 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
108 #ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
113 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
117 #ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
125 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
128 #ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
133 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
141 template<
typename int_type>
144 template<
typename int_type>
147 template<
typename int_type>
150 template<
typename int_type>
153 template<
typename int_type>
156 template<
typename int_type>
static Epetra_CrsGraph * TGenerateBlockGraph(const Epetra_CrsGraph &BaseGraph, const std::vector< std::vector< int_type > > &RowStencil, const std::vector< int_type > &RowIndices, const Epetra_Comm &GlobalComm)
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 long long CalculateOffset64(const Epetra_BlockMap &BaseMap)
static Epetra_Map * TGenerateBlockMap(const Epetra_BlockMap &BaseMap, const int_type *RowIndices, int num_indices, const Epetra_Comm &GlobalComm, int_type Offset=0)
static int CalculateOffset(const Epetra_BlockMap &BaseMap)
Routine for calculating Offset for creating unique global IDs for Block representation.
static int_type TCalculateOffset(const Epetra_BlockMap &BaseMap)
static Epetra_Map * GenerateBlockMap(const Epetra_BlockMap &BaseMap, const int *RowIndices, int num_indices, const Epetra_Comm &GlobalComm, int Offset=0)
static void TGenerateRowStencil(const Epetra_CrsGraph &LocalBlockGraph, std::vector< int_type > RowIndices, std::vector< std::vector< int_type > > &RowStencil)
static Epetra_CrsGraph * GenerateBlockGraph(const Epetra_CrsGraph &BaseGraph, const std::vector< std::vector< int > > &RowStencil, const std::vector< int > &RowIndices, const Epetra_Comm &GlobalComm)
BlockCrsMatrix constuctor.