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