Ifpack Package Browser (Single Doxygen Collection)
Development
|
Ifpack_EquationPartitioner: A class to decompose an Ifpack_Graph so that each block will contain all the rows for a different equation. More...
#include <Ifpack_EquationPartitioner.h>
Public Member Functions | |
Ifpack_EquationPartitioner (const Ifpack_Graph *Graph) | |
Constructor. More... | |
virtual | ~Ifpack_EquationPartitioner () |
Destructor. More... | |
int | SetPartitionParameters (Teuchos::ParameterList &) |
Sets all the parameters for the partitioner. More... | |
int | ComputePartitions () |
Computes the partitions. Returns 0 if successful. More... | |
Public Member Functions inherited from Ifpack_OverlappingPartitioner | |
Ifpack_OverlappingPartitioner (const Ifpack_Graph *Graph) | |
Constructor. More... | |
virtual | ~Ifpack_OverlappingPartitioner () |
Destructor. More... | |
int | NumLocalParts () const |
Returns the number of computed local partitions. More... | |
int | OverlappingLevel () const |
Returns the overlapping level. More... | |
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. More... | |
int | NumRowsInPart (const int Part) const |
Returns the number of rows contained in specified partition. More... | |
int | RowsInPart (const int Part, int *List) const |
Copies into List the rows in the (overlapping) partition Part. More... | |
const int * | NonOverlappingPartition () const |
Returns a pointer to the integer vector containing the non-overlapping partition ID of each local row. More... | |
virtual int | SetParameters (Teuchos::ParameterList &List) |
Sets all the parameters for the partitioner. More... | |
virtual int | Compute () |
Computes the partitions. Returns 0 if successful. More... | |
virtual int | ComputeOverlappingPartitions () |
Computes the partitions. Returns 0 if successful. More... | |
bool | IsComputed () |
Returns true if partitions have been computed successfully. More... | |
virtual std::ostream & | Print (std::ostream &os) const |
Prints basic information on iostream. This function is used by operator<<. More... | |
Public Member Functions inherited from Ifpack_Partitioner | |
virtual | ~Ifpack_Partitioner () |
Destructor. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Ifpack_OverlappingPartitioner | |
int | NumMyRows () const |
Returns the number of local rows. More... | |
int | NumMyNonzeros () const |
Returns the number of local nonzero elements. More... | |
int | NumGlobalRows () const |
Returns the number of global rows. More... | |
long long | NumGlobalRows64 () const |
int | MaxNumEntries () const |
Returns the max number of local entries in a row. More... | |
const Epetra_Comm & | Comm () const |
Returns the communicator object of Graph. More... | |
Protected Attributes inherited from Ifpack_OverlappingPartitioner | |
int | NumLocalParts_ |
Number of local subgraphs. More... | |
std::vector< int > | Partition_ |
Partition_[i] contains the ID of non-overlapping part it belongs to. More... | |
std::vector< std::vector< int > > | Parts_ |
Parts_[i][j] is the ID of the j-th row contained in the (overlapping) More... | |
const Ifpack_Graph * | Graph_ |
Reference to the graph to be partitioned. More... | |
int | OverlappingLevel_ |
Overlapping level. More... | |
bool | IsComputed_ |
If true , the graph has been successfully partitioned. More... | |
bool | verbose_ |
If true , information are reported on cout. More... | |
Ifpack_EquationPartitioner: A class to decompose an Ifpack_Graph so that each block will contain all the rows for a different equation.
Ifpack_EquationPartitioner enables a decomposition into blocks of equations. Suppose that the input Ifpack_Graph is based on an Epetra_RowMatrix, whose rows represent (U_i,V_i,P_i) for each grid node i. This partitioner will decompose the graph into three subgraphs, each of them containing the rows of U, then V, than P.
The number of equations is set as the number of local partitions.
Definition at line 77 of file Ifpack_EquationPartitioner.h.
|
inline |
Constructor.
Definition at line 82 of file Ifpack_EquationPartitioner.h.
|
inlinevirtual |
Destructor.
Definition at line 87 of file Ifpack_EquationPartitioner.h.
|
inlinevirtual |
Sets all the parameters for the partitioner.
Implements Ifpack_OverlappingPartitioner.
Definition at line 90 of file Ifpack_EquationPartitioner.h.
|
virtual |
Computes the partitions. Returns 0 if successful.
Implements Ifpack_OverlappingPartitioner.
Definition at line 50 of file Ifpack_EquationPartitioner.cpp.