EpetraExt Package Browser (Single Doxygen Collection)  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | List of all members
EpetraExt::BlockAdjacencyGraph Class Reference

#include <EpetraExt_BlockAdjacencyGraph.h>

Public Member Functions

 ~BlockAdjacencyGraph ()
 Destructor. More...
 
 BlockAdjacencyGraph ()
 Constructor. More...
 
Teuchos::RCP< Epetra_CrsGraphcompute (Epetra_CrsGraph &B, int nbrr, std::vector< int > &r, std::vector< double > &weights, bool verbose=false)
 Constructs an adjacency graph representing the block connectivity of the input graph, where nbrr is the number of block rows in B and r contains the row index where each block begins. More...
 

Private Member Functions

template<typename int_type >
Teuchos::RCP< Epetra_CrsGraphcompute (Epetra_CrsGraph &B, int nbrr, std::vector< int > &r, std::vector< double > &weights, bool verbose=false)
 
int * csr_bst (int n)
 
int csr_bstrootindex (int n)
 

Detailed Description

Definition at line 68 of file EpetraExt_BlockAdjacencyGraph.h.

Constructor & Destructor Documentation

EpetraExt::BlockAdjacencyGraph::~BlockAdjacencyGraph ( )
inline

Destructor.

Definition at line 75 of file EpetraExt_BlockAdjacencyGraph.h.

EpetraExt::BlockAdjacencyGraph::BlockAdjacencyGraph ( )
inline

Constructor.

Definition at line 80 of file EpetraExt_BlockAdjacencyGraph.h.

Member Function Documentation

Teuchos::RCP< Epetra_CrsGraph > EpetraExt::BlockAdjacencyGraph::compute ( Epetra_CrsGraph B,
int  nbrr,
std::vector< int > &  r,
std::vector< double > &  weights,
bool  verbose = false 
)

Constructs an adjacency graph representing the block connectivity of the input graph, where nbrr is the number of block rows in B and r contains the row index where each block begins.

A reference-counted pointer to an Epetra_CrsGraph that has nbrr rows is returned as well as the vector of weights. This vector is of length nbrr returns some weighting on the block adjacency graph that can be used to balance the original graph B. Right now, that weighting is just the number of rows in each block.

Definition at line 90 of file EpetraExt_BlockAdjacencyGraph.cpp.

template<typename int_type >
Teuchos::RCP<Epetra_CrsGraph> EpetraExt::BlockAdjacencyGraph::compute ( Epetra_CrsGraph B,
int  nbrr,
std::vector< int > &  r,
std::vector< double > &  weights,
bool  verbose = false 
)
private
int * EpetraExt::BlockAdjacencyGraph::csr_bst ( int  n)
private

Definition at line 271 of file EpetraExt_BlockAdjacencyGraph.cpp.

int EpetraExt::BlockAdjacencyGraph::csr_bstrootindex ( int  n)
private

Definition at line 308 of file EpetraExt_BlockAdjacencyGraph.cpp.


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