43 #ifndef IFPACK_OVERLAPGRAPH_H 44 #define IFPACK_OVERLAPGRAPH_H 46 #include "Ifpack_ConfigDefs.h" 47 #include "Epetra_Object.h" 48 #include "Epetra_CrsGraph.h" 49 #include "Epetra_Import.h" 50 #include "Teuchos_RefCountPtr.hpp" 53 class Epetra_BlockMap;
54 class Epetra_RowMatrix;
71 Ifpack_OverlapGraph(
const Teuchos::RefCountPtr<const Epetra_CrsGraph>& UserMatrixGraph_in,
int OverlapLevel_in);
79 Ifpack_OverlapGraph(
const Teuchos::RefCountPtr<const Epetra_RowMatrix>& UserMatrix_in,
int OverlapLevel_in);
96 int SetParameters(
const Teuchos::ParameterList& parameterlist,
97 bool cerr_warning_if_unused=
false);
119 void Print(std::ostream& os)
const {
123 if (UserMatrix_!=Teuchos::null)
124 os <<
"Overlap Graph created using the user's Epetra_RowMatrix object" << endl;
126 os <<
"Overlap Graph created using the user's Epetra_CrsGraph object" << endl;
128 os <<
" Level of Overlap = " << OverlapLevel_ << endl;
129 OverlapGraph_->Print(os);
136 int ConstructOverlapGraph(
const Teuchos::RefCountPtr<const Epetra_CrsGraph>& UserMatrixGraph);
137 Teuchos::RefCountPtr<Epetra_CrsGraph> OverlapGraph_;
138 Teuchos::RefCountPtr<const Epetra_CrsGraph> UserMatrixGraph_;
139 Teuchos::RefCountPtr<const Epetra_RowMatrix> UserMatrix_;
140 Teuchos::RefCountPtr<Epetra_BlockMap> OverlapRowMap_;
141 Teuchos::RefCountPtr<Epetra_Import> OverlapImporter_;
145 #endif // IFPACK_OVERLAPGRAPH_H Ifpack_OverlapGraph: Constructs a graph for use with Ifpack preconditioners.
const Epetra_CrsGraph & OverlapGraph() const
Returns the overlap graph object.
Ifpack_OverlapGraph(const Teuchos::RefCountPtr< const Epetra_CrsGraph > &UserMatrixGraph_in, int OverlapLevel_in)
Constructor using Epetra_CrsGraph.
const Epetra_BlockMap & OverlapRowMap() const
Returns the RowMap associated with the overlap graph.
virtual ~Ifpack_OverlapGraph()
Ifpack_CrsIlut Destructor.
int SetParameters(const Teuchos::ParameterList ¶meterlist, bool cerr_warning_if_unused=false)
Set parameters using a Teuchos::ParameterList object.
const Epetra_Import & OverlapImporter() const
Returns the overlap graph object.
int OverlapLevel() const
Returns the level of overlap used to create this graph.