43 #ifndef IFPACK_AMDREORDERING_H 44 #define IFPACK_AMDREORDERING_H 46 #include "Ifpack_ConfigDefs.h" 47 #include "Ifpack_Reordering.h" 53 class Epetra_MultiVector;
54 class Epetra_RowMatrix;
75 int SetParameter(
const std::string Name,
const int Value);
78 int SetParameter(
const std::string Name,
const double Value);
81 int SetParameters(Teuchos::ParameterList& List);
87 int Compute(
const Epetra_RowMatrix& Matrix);
96 inline int Reorder(
const int i)
const;
99 inline int InvReorder(
const int i)
const;
102 int P(
const Epetra_MultiVector& Xorig,
103 Epetra_MultiVector& Xreord)
const;
106 int Pinv(
const Epetra_MultiVector& Xorig,
107 Epetra_MultiVector& Xinvreord)
const;
111 std::ostream& Print(std::ostream& os)
const;
125 std::vector<int> Reorder_;
127 std::vector<int> InvReorder_;
Ifpack_AMDReordering: approximate minimum degree reordering.
bool IsComputed() const
Returns true is the reordering object has been successfully initialized, false otherwise.
int NumMyRows() const
Returns the number of local rows.
Ifpack_Reordering: basic class for reordering for a Ifpack_Graph object.
virtual ~Ifpack_AMDReordering()
Destructor.
Ifpack_Graph: a pure virtual class that defines graphs for IFPACK.