#include <Isorropia_Partitioner.hpp>
Inheritance diagram for Isorropia::Partitioner:


| virtual __deprecated void | compute_partitioning (bool forceRepartitioning=false) |
| The deprecated way to compute partitioning. | |
| virtual __deprecated bool | partitioning_already_computed () const =0 |
| Query whether a partitioning as already been successfully computed. | |
| virtual __deprecated int | newPartitionNumber (int myElem) |
| Return the new partition ID for a given element that resided locally in the old partitioning. | |
| virtual __deprecated int | numElemsInPartition (int partition) |
| Return the number of LOCAL elements in a given partition. | |
| virtual __deprecated void | elemsInPartition (int part, int *elementList, int len) |
| Fill user-allocated list (of length len) with the local element ids to be located in the given partition. | |
Public Member Functions | |
| virtual | ~Partitioner () |
| Destructor. | |
| virtual void | partition (bool forceRepartitioning=false)=0 |
| Method which does the work of computing a new partitioning. | |
| virtual int | numElemsInPart (int part) const =0 |
| Return the number of LOCAL elements in a given part. | |
| virtual void | elemsInPart (int part, int *elementList, int len) const =0 |
| Fill user-allocated list (of length len) with the local element ids to be located in the given part. | |
| virtual void | setParameters (const Teuchos::ParameterList ¶mlist)=0 |
| Set parameters for the Operator instance. | |
| virtual void | compute (bool forceRecomputing=false)=0 |
| Method which does the work of computing a new partitioning/coloring/ordering, depending on the child class used. | |
| virtual int | newPartNumber (int myElem) const =0 |
| Return the new part ID for a given element that resided locally in the old partitioning. | |
If the methods which describe the new partitioning (e.g., operator [], elemsInPart()) are called before compute_partitioning() has been called, behavior is not well defined. Implementations will either return empty/erroneous data, or throw an exception. In most cases, implementations will probably call compute_partitioning() internally in a constructor or factory method, so this won't usually be an issue.
| virtual Isorropia::Partitioner::~Partitioner | ( | ) | [inline, virtual] |
| virtual void Isorropia::Partitioner::partition | ( | bool | forceRepartitioning = false |
) | [pure virtual] |
Method which does the work of computing a new partitioning.
Implementations of this interface will typically be constructed with an object or information describing the existing ('old') partitioning. This method computes a 'new' rebalanced partitioning for that input data.
| forceRepartitioning | Optional argument defaults to false. Depending on the implementation, partitioning() should only perform a repartitioning the first time it is called, and subsequent repeated calls are no-ops. If the user's intent is to re-compute the partitioning (e.g., if parameters or other inputs have been changed), then setting this flag to true will force a new partitioning to be computed. |
Implemented in Isorropia::Epetra::Partitioner.
| virtual int Isorropia::Partitioner::newPartNumber | ( | int | myElem | ) | const [pure virtual] |
Return the new part ID for a given element that resided locally in the old partitioning.
| [in] | myElem | local ID of element we want to know in which part it belongs to. |
Implemented in Isorropia::Epetra::Partitioner.
| virtual int Isorropia::Partitioner::numElemsInPart | ( | int | part | ) | const [pure virtual] |
Return the number of LOCAL elements in a given part.
| [in] | part | the part ID we want to know the number of local elements. |
Implemented in Isorropia::Epetra::Partitioner.
| virtual void Isorropia::Partitioner::elemsInPart | ( | int | part, | |
| int * | elementList, | |||
| int | len | |||
| ) | const [pure virtual] |
Fill user-allocated list (of length len) with the local element ids to be located in the given part.
| [in] | part | the part ID we consider |
| [out] | elementList | array of elements that belongs to this part ID, must be allocated by user with size at least len |
| [in] | len | maximum number of elements we can put in the array. Usually, may be the result of Isorropia::Partitioner::numElemsInPart(). . |
Implemented in Isorropia::Epetra::Partitioner.
| virtual __deprecated void Isorropia::Partitioner::compute_partitioning | ( | bool | forceRepartitioning = false |
) | [inline, virtual] |
The deprecated way to compute partitioning.
| [in] | forceRepartitioning | Optional parameter to recompute the partitioning even one has been already computed. |
| virtual __deprecated bool Isorropia::Partitioner::partitioning_already_computed | ( | ) | const [pure virtual] |
Query whether a partitioning as already been successfully computed.
Implemented in Isorropia::Epetra::Partitioner.
| virtual __deprecated int Isorropia::Partitioner::newPartitionNumber | ( | int | myElem | ) | [inline, virtual] |
Return the new partition ID for a given element that resided locally in the old partitioning.
| virtual __deprecated int Isorropia::Partitioner::numElemsInPartition | ( | int | partition | ) | [inline, virtual] |
Return the number of LOCAL elements in a given partition.
| virtual __deprecated void Isorropia::Partitioner::elemsInPartition | ( | int | part, | |
| int * | elementList, | |||
| int | len | |||
| ) | [inline, virtual] |
Fill user-allocated list (of length len) with the local element ids to be located in the given partition.
| virtual void Isorropia::Operator::setParameters | ( | const Teuchos::ParameterList & | paramlist | ) | [pure virtual, inherited] |
Set parameters for the Operator instance.
The contents of the input paramlist object are copied into an internal ParameterList attribute. Instances of this interface should not retain a reference to the input ParameterList after this method returns.
| [in] | paramlist | List of parameters that the user wants to use. |
Implemented in Isorropia::Epetra::Operator.
| virtual void Isorropia::Operator::compute | ( | bool | forceRecomputing = false |
) | [pure virtual, inherited] |
Method which does the work of computing a new partitioning/coloring/ordering, depending on the child class used.
| forceRecomputing | Optional argument defaults to false. Depending on the implementation, compute() should only perform a computation the first time it is called, and subsequent repeated calls are no-ops. If the user's intent is to re-compute the results (e.g., if parameters or other inputs have been changed), then setting this flag to true will force a new result to be computed. |
Implemented in Isorropia::Epetra::Colorer, Isorropia::Epetra::Operator, Isorropia::Epetra::Orderer, and Isorropia::Epetra::Partitioner.
| virtual bool Isorropia::Operator::alreadyComputed | ( | ) | const [pure virtual, inherited] |
Query whether the computation has already been called.
True if the computation has already been done, False otherwise. Implemented in Isorropia::Epetra::Operator.
| virtual int Isorropia::Operator::numProperties | ( | ) | const [pure virtual, inherited] |
Return the number of different values used for "properties".
For example, the number of colors or the number of parts used for the overall graph/matrix.
Implemented in Isorropia::Epetra::Operator.
| virtual const int& Isorropia::Operator::operator[] | ( | int | myElem | ) | const [pure virtual, inherited] |
Return the "property" for a given element that resided locally.
| [in] | myElem | the local ID of the element we want to know the property. |
Implemented in Isorropia::Epetra::Operator.
| virtual int Isorropia::Operator::numElemsWithProperty | ( | int | property | ) | const [pure virtual, inherited] |
Return the number of LOCAL elements with the given property.
| [in] | property | Value of the property to consider. |
Implemented in Isorropia::Epetra::Operator.
| virtual void Isorropia::Operator::elemsWithProperty | ( | int | property, | |
| int * | elementList, | |||
| int | len | |||
| ) | const [pure virtual, inherited] |
Fill user-allocated list (of length len) with the local element ids of the LOCAL elements with the given property.
| [in] | property | Value of the property to consider. |
| [out] | elementList | User allocated array (of size at least len) of local ID that have the asked property. |
| [in] | len | Maximum lenght for the array. If len is greater than the result of numElemsWithProperty() for property, only the first and relevant elements are filled. |
Implemented in Isorropia::Epetra::Operator.