Public Member Functions | |
Ifpack_OverlappingPartitioner (const Ifpack_Graph *Graph) | |
Constructor. | |
virtual | ~Ifpack_OverlappingPartitioner () |
Destructor. | |
int | NumLocalParts () const |
Returns the number of computed local partitions. | |
int | OverlappingLevel () const |
Returns the overlapping level. | |
int | operator() (int MyRow) const |
Returns the local non-overlapping partition ID of the specified row. More... | |
int | operator() (int i, int j) const |
Returns the local overlapping partition ID of the j-th node in partition i. | |
int | NumRowsInPart (const int Part) const |
Returns the number of rows contained in specified partition. | |
int | RowsInPart (const int Part, int *List) const |
Copies into List the rows in the (overlapping) partition Part. | |
const int * | NonOverlappingPartition () const |
Returns a pointer to the integer vector containing the non-overlapping partition ID of each local row. | |
virtual int | SetParameters (Teuchos::ParameterList &List) |
Sets all the parameters for the partitioner. More... | |
virtual int | SetPartitionParameters (Teuchos::ParameterList &List)=0 |
Sets all the parameters for the partitioner. More... | |
virtual int | Compute () |
Computes the partitions. Returns 0 if successful. | |
virtual int | ComputePartitions ()=0 |
Computes the partitions. Returns 0 if successful. | |
virtual int | ComputeOverlappingPartitions () |
Computes the partitions. Returns 0 if successful. | |
bool | IsComputed () |
Returns true if partitions have been computed successfully. | |
virtual std::ostream & | Print (std::ostream &os) const |
Prints basic information on iostream. This function is used by operator<<. | |
Public Member Functions inherited from Ifpack_Partitioner | |
virtual | ~Ifpack_Partitioner () |
Destructor. | |
Protected Member Functions | |
int | NumMyRows () const |
Returns the number of local rows. | |
int | NumMyNonzeros () const |
Returns the number of local nonzero elements. | |
int | NumGlobalRows () const |
Returns the number of global rows. | |
long long | NumGlobalRows64 () const |
int | MaxNumEntries () const |
Returns the max number of local entries in a row. | |
const Epetra_Comm & | Comm () const |
Returns the communicator object of Graph. | |
Protected Attributes | |
int | NumLocalParts_ |
Number of local subgraphs. | |
std::vector< int > | Partition_ |
Partition_[i] contains the ID of non-overlapping part it belongs to. | |
std::vector< std::vector< int > > | Parts_ |
Parts_[i][j] is the ID of the j-th row contained in the (overlapping) | |
const Ifpack_Graph * | Graph_ |
Reference to the graph to be partitioned. | |
int | OverlappingLevel_ |
Overlapping level. | |
bool | IsComputed_ |
If true , the graph has been successfully partitioned. | |
bool | verbose_ |
If true , information are reported on cout. | |
Definition at line 87 of file Ifpack_OverlappingPartitioner.h.
|
inlinevirtual |
Returns the local non-overlapping partition ID of the specified row.
Returns the non-overlapping partition ID of the specified row.
MyRow | - (In) local row numbe |
Implements Ifpack_Partitioner.
Definition at line 117 of file Ifpack_OverlappingPartitioner.h.
References NumMyRows(), and Partition_.
|
virtual |
Sets all the parameters for the partitioner.
The supported parameters are:
"partitioner: overlap"
(int, default = 0)."partitioner: local parts"
(int, default = 1)."partitioner: print level"
(int, default = 0). Implements Ifpack_Partitioner.
Definition at line 72 of file Ifpack_OverlappingPartitioner.cpp.
References Graph_, NumLocalParts_, Ifpack_Graph::NumMyRows(), OverlappingLevel_, SetPartitionParameters(), and verbose_.
|
pure virtual |
Sets all the parameters for the partitioner.
This function is used by derived classes to set their own parameters. These classes should not derive SetParameters(), so that common parameters can be set just once.
Implemented in Ifpack_LinePartitioner, Ifpack_EquationPartitioner, Ifpack_METISPartitioner, Ifpack_UserPartitioner, Ifpack_GreedyPartitioner, and Ifpack_LinearPartitioner.
Referenced by SetParameters().