43 #ifndef IFPACK_REORDERING_H
44 #define IFPACK_REORDERING_H
109 virtual int SetParameter(
const std::string Name,
const int Value) = 0;
112 virtual int SetParameter(
const std::string Name,
const double Value) = 0;
127 virtual int Reorder(
const int i)
const = 0;
130 virtual int InvReorder(
const int i)
const = 0;
141 virtual std::ostream&
Print(std::ostream& os)
const = 0;
147 return(obj.
Print(os));
virtual int Reorder(const int i) const =0
Returns the reordered index of row i.
virtual ~Ifpack_Reordering()
Destructor.
virtual int Pinv(const Epetra_MultiVector &Xorig, Epetra_MultiVector &X) const =0
Applies inverse reordering to multivector Xorig, whose local length equals the number of local rows...
Ifpack_Reordering: basic class for reordering for a Ifpack_Graph object.
adjacency_list< vecS, vecS, undirectedS, no_property, property< edge_weight_t, double > > Graph
std::ostream & operator<<(std::ostream &os, const Ifpack_Container &obj)
virtual int P(const Epetra_MultiVector &Xorig, Epetra_MultiVector &X) const =0
Applies reordering to multivector Xorig, whose local length equals the number of local rows...
virtual int Compute(const Ifpack_Graph &Graph)=0
Computes all it is necessary to initialize the reordering object.
virtual bool IsComputed() const =0
Returns true is the reordering object has been successfully initialized, false otherwise.
virtual int InvReorder(const int i) const =0
Returns the inverse reordered index of row i.
virtual int SetParameter(const std::string Name, const int Value)=0
Sets integer parameters `Name'.
Ifpack_Graph: a pure virtual class that defines graphs for IFPACK.
virtual std::ostream & Print(std::ostream &os) const =0
Prints basic information on iostream. This function is used by operator<<.
virtual int SetParameters(Teuchos::ParameterList &List)=0
Sets all parameters.