44 #ifndef IFPACK_PARTITIONER_H
45 #define IFPACK_PARTITIONER_H
47 #include "Ifpack_ConfigDefs.h"
48 #include "Teuchos_ParameterList.hpp"
186 virtual int operator() (
int i,
int j)
const = 0;
192 virtual int RowsInPart(
const int Part,
int* List)
const = 0;
207 virtual std::ostream&
Print(std::ostream& os)
const = 0;
213 return(obj.
Print(os));
216 #endif // IFPACK_PARTITIONER_H
Ifpack_Partitioner: A class to decompose local Ifpack_Graph's.
virtual int operator()(int MyRow) const =0
Returns the local non-overlapping partition ID of the specified row.
virtual int NumLocalParts() const =0
Returns the number of computed local partitions.
virtual int Compute()=0
Computes the partitions. Returns 0 if successful.
virtual int SetParameters(Teuchos::ParameterList &List)=0
Sets all the parameters for the partitioner.
virtual int OverlappingLevel() const =0
Returns the overlapping level.
Ifpack_Graph: a pure virtual class that defines graphs for IFPACK.
virtual bool IsComputed()=0
Returns true if partitions have been computed successfully.
virtual int NumRowsInPart(const int Part) const =0
Returns the number of rows contained in specified partition.
virtual ~Ifpack_Partitioner()
Destructor.
virtual std::ostream & Print(std::ostream &os) const =0
Prints basic information about the partitioning object.
virtual int RowsInPart(const int Part, int *List) const =0
Copies into List the rows in the (overlapping) partition Part.
virtual const int * NonOverlappingPartition() const =0
Returns a pointer to the integer vector containing the non-overlapping partition ID of each local row...