A class that computes and returns quality metrics.
More...
#include <Zoltan2_EvaluatePartition.hpp>
|
| void | sharedConstructor (const Adapter *ia, ParameterList *p, const RCP< const Comm< int > > &problemComm, const PartitioningSolution< Adapter > *soln, const RCP< const GraphModel< typename Adapter::base_adapter_t > > &graphModel) |
| |
| | EvaluatePartition (const Adapter *ia, ParameterList *p, const RCP< const Comm< int > > &problemComm, const PartitioningSolution< Adapter > *soln, bool force_evaluate, const RCP< const GraphModel< typename Adapter::base_adapter_t > > &graphModel=Teuchos::null) |
| | Constructor where communicator is Teuchos default, and takes another parameter whether to evaluate metrics within the constructor or not. More...
|
| |
| virtual void | calculate_graph_metrics (const RCP< const Environment > &_env, const RCP< const Comm< int > > &_problemComm, const RCP< const GraphModel< typename Adapter::base_adapter_t > > &_graph, const ArrayView< const typename Adapter::part_t > &_partArray, typename Adapter::part_t &_numGlobalParts, ArrayRCP< RCP< BaseClassMetrics< typename Adapter::scalar_t > > > &_metricsBase, ArrayRCP< typename Adapter::scalar_t > &_globalSums) |
| |
template<typename Adapter>
class Zoltan2::EvaluatePartition< Adapter >
A class that computes and returns quality metrics.
- Todo:
- For some problems it will be necessary to build the Model again in order to compute metrics. For now we don't have any problems like that.
- Todo:
- write a unit test for this class
- Examples
- rcb_C.cpp.
Definition at line 114 of file Zoltan2_EvaluatePartition.hpp.
◆ EvaluatePartition() [1/3]
template<typename Adapter >
Constructor where communicator is Teuchos default, and takes another parameter whether to evaluate metrics within the constructor or not.
- Parameters
-
| ia | the problem input adapter |
| p | the parameter list |
| problemComm | the problem communicator |
| soln | the solution |
| force_evaluate | whether to evaluate within to constructor or not. |
| graphModel | the graph model The constructor does global communication to compute the metrics . The rest of the methods are local. |
Definition at line 154 of file Zoltan2_EvaluatePartition.hpp.
◆ ~EvaluatePartition()
template<typename Adapter >
◆ EvaluatePartition() [2/3]
template<typename Adapter >
Constructor where communicator is Teuchos default.
- Parameters
-
| ia | the problem input adapter |
| p | the parameter list |
| soln | the solution |
| graphModel | the graph model The constructor does global communication to compute the metrics. The rest of the methods are local. |
Definition at line 192 of file Zoltan2_EvaluatePartition.hpp.
◆ EvaluatePartition() [3/3]
template<typename Adapter >
Constructor where Teuchos communicator is specified.
- Parameters
-
| ia | the problem input adapter |
| p | the parameter list |
| problemComm | the problem communicator |
| soln | the solution |
| graphModel | the graph model The constructor does global communication to compute the metrics. The rest of the methods are local. |
Definition at line 214 of file Zoltan2_EvaluatePartition.hpp.
◆ sharedConstructor()
template<typename Adapter >
◆ calculate_graph_metrics()
template<typename Adapter >
| virtual void Zoltan2::EvaluatePartition< Adapter >::calculate_graph_metrics |
( |
const RCP< const Environment > & |
_env, |
|
|
const RCP< const Comm< int > > & |
_problemComm, |
|
|
const RCP< const GraphModel< typename Adapter::base_adapter_t > > & |
_graph, |
|
|
const ArrayView< const typename Adapter::part_t > & |
_partArray, |
|
|
typename Adapter::part_t & |
_numGlobalParts, |
|
|
ArrayRCP< RCP< BaseClassMetrics< typename Adapter::scalar_t > > > & |
_metricsBase, |
|
|
ArrayRCP< typename Adapter::scalar_t > & |
_globalSums |
|
) |
| |
|
inlineprotectedvirtual |
◆ getAllMetricsOfType()
template<typename Adapter >
◆ getObjectCountImbalance()
template<typename Adapter >
◆ getNormedImbalance()
template<typename Adapter >
Return the object normed weight imbalance. Normed imbalance is only valid if there is at least 2 elements - the second one is the normed imbalance. If we have weights (which start at the second element) the spec is to have this return that element.
Definition at line 298 of file Zoltan2_EvaluatePartition.hpp.
◆ getWeightImbalance()
template<typename Adapter >
◆ getMaxEdgeCut()
template<typename Adapter >
◆ getMaxWeightEdgeCut()
template<typename Adapter >
◆ getTotalEdgeCut()
template<typename Adapter >
◆ getTotalWeightEdgeCut()
template<typename Adapter >
◆ printMetrics()
template<typename Adapter >
The documentation for this class was generated from the following file: