40 #ifndef _Isorropia_EpetraLibrary_hpp_ 
   41 #define _Isorropia_EpetraLibrary_hpp_ 
   44 #include <Teuchos_RCP.hpp> 
   45 #include <Teuchos_ParameterList.hpp> 
   51 class Epetra_BlockMap;
 
   54 class Epetra_MultiVector;
 
   55 class Epetra_CrsGraph;
 
   56 class Epetra_CrsMatrix;
 
   57 class Epetra_RowMatrix;
 
   58 class Epetra_LinearProblem;
 
   74   Library(Teuchos::RCP<const Epetra_CrsGraph> input_graph, Teuchos::RCP<const Epetra_MultiVector> input_coords,
 
   76   Library(Teuchos::RCP<const Epetra_CrsGraph> input_graph,
 
   78   Library(Teuchos::RCP<const Epetra_CrsGraph> input_graph, Teuchos::RCP<CostDescriber> costs, 
 
   79     Teuchos::RCP<const Epetra_MultiVector> input_coords, Teuchos::RCP<const Epetra_MultiVector> weights,
 
   82   Library(Teuchos::RCP<const Epetra_RowMatrix> input_matrix, Teuchos::RCP<const Epetra_MultiVector> input_coords,
 
   84   Library(Teuchos::RCP<const Epetra_RowMatrix> input_matrix,
 
   86   Library(Teuchos::RCP<const Epetra_RowMatrix> input_matrix, Teuchos::RCP<CostDescriber> costs, 
 
   87     Teuchos::RCP<const Epetra_MultiVector> input_coords, Teuchos::RCP<const Epetra_MultiVector> weights,
 
   90   Library(Teuchos::RCP<const Epetra_MultiVector> input_coords,
 
   98         std::vector<int>& myNewElements,
 
  100         std::vector<int>& imports) = 0;
 
  103   color(Teuchos::ParameterList& paramlist,
 
  104   std::vector<int>& colorAssignment) = 0 ;
 
  107   order(Teuchos::ParameterList& paramlist,
 
  108   std::vector<int>& orderAssignment) = 0 ;
 
  192   Teuchos::RCP<Isorropia::Epetra::CostDescriber> 
costs_;
 
float * partSizes
Definition: Isorropia_EpetraLibrary.hpp:184
 
static const int unspecified_input_
input_type_ == unspecified_input_ This value is the "unset" state for the input_type_ instance variab...
Definition: Isorropia_EpetraLibrary.hpp:178
 
static const int hgraph_graph_geometric_input_
input_type_ == hgraph_graph_geom_input_ This indicates that the Epetra_MultiVector represents a hyper...
Definition: Isorropia_EpetraLibrary.hpp:164
 
Teuchos::RCP< const Epetra_MultiVector > input_coords_
Definition: Isorropia_EpetraLibrary.hpp:191
 
Teuchos::RCP< const Epetra_CrsGraph > input_graph_
Definition: Isorropia_EpetraLibrary.hpp:189
 
int numPartSizes
Definition: Isorropia_EpetraLibrary.hpp:182
 
Teuchos::RCP< const Epetra_RowMatrix > input_matrix_
Definition: Isorropia_EpetraLibrary.hpp:190
 
An implementation of the Partitioner interface that operates on Epetra matrices and linear systems...
Definition: Isorropia_EpetraLibrary.hpp:70
 
static const int hgraph_input_
input_type_ == hgraph_input_ This indicates that the matrix or graph represents a hypergraph...
Definition: Isorropia_EpetraLibrary.hpp:115
 
virtual int repartition(Teuchos::ParameterList ¶mlist, std::vector< int > &myNewElements, int &exportsSize, std::vector< int > &imports)=0
 
static const int hgraph_graph_input_
input_type_ == hgraph_graph_input_ This indicates that the Epetra_MultiVector represents a hypergraph...
Definition: Isorropia_EpetraLibrary.hpp:143
 
static const int simple_input_
input_type_ == simple_input_ This is used to indicate that a simple partitiong method (block...
Definition: Isorropia_EpetraLibrary.hpp:171
 
Teuchos::RCP< Isorropia::Epetra::CostDescriber > costs_
Definition: Isorropia_EpetraLibrary.hpp:192
 
static const int hgraph2d_finegrain_input_
input_type_ == hgraph2d_finegrain_input_ This indicates that the matrix or graph represents a hypergr...
Definition: Isorropia_EpetraLibrary.hpp:121
 
virtual int order(Teuchos::ParameterList ¶mlist, std::vector< int > &orderAssignment)=0
 
int * partGIDs
Definition: Isorropia_EpetraLibrary.hpp:183
 
Library(Teuchos::RCP< const Epetra_CrsGraph > input_graph, int itype=unspecified_input_)
 
int input_type_
Definition: Isorropia_EpetraLibrary.hpp:180
 
static const int graph_input_
input_type_ == graph_input_ This indicates that the square symmetric matrix or graph represents a gra...
Definition: Isorropia_EpetraLibrary.hpp:128
 
static const int hgraph_geometric_input_
input_type_ == hgraph_geom_input_ This indicates that the Epetra_MultiVector represents a hypergraph ...
Definition: Isorropia_EpetraLibrary.hpp:150
 
Teuchos::RCP< const Epetra_BlockMap > input_map_
Definition: Isorropia_EpetraLibrary.hpp:188
 
virtual int color(Teuchos::ParameterList ¶mlist, std::vector< int > &colorAssignment)=0
 
virtual int postcompute()=0
 
static const int graph_geometric_input_
input_type_ == graph_geom_input_ This indicates that the Epetra_MultiVector represents a hypergraph a...
Definition: Isorropia_EpetraLibrary.hpp:157
 
Teuchos::RCP< const Epetra_MultiVector > weights_
Definition: Isorropia_EpetraLibrary.hpp:193
 
static const int geometric_input_
input_type_ == geometric_input_ This indicates that the Epetra_MultiVector represents geometric coord...
Definition: Isorropia_EpetraLibrary.hpp:136