Zoltan2
|
A class that computes and returns quality metrics. More...
#include <Zoltan2_EvaluatePartition.hpp>
Public Member Functions | |
virtual | ~EvaluatePartition () |
EvaluatePartition (const Adapter *ia, ParameterList *p, const PartitioningSolution< Adapter > *soln, const RCP< const GraphModel< typename Adapter::base_adapter_t > > &graphModel=Teuchos::null) | |
Constructor where communicator is Teuchos default. More... | |
EvaluatePartition (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=Teuchos::null) | |
Constructor where Teuchos communicator is specified. More... | |
ArrayView< RCP < base_metric_type > > | getAllMetricsOfType (std::string metricType) const |
Return the metric list for types matching the given metric type. More... | |
scalar_t | getObjectCountImbalance () const |
Return the object count imbalance. More... | |
scalar_t | getNormedImbalance () const |
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. More... | |
scalar_t | getWeightImbalance (int weightIndex) const |
Return the imbalance for the requested weight. More... | |
scalar_t | getMaxEdgeCut () const |
Return the max cut for the requested weight. More... | |
scalar_t | getMaxWeightEdgeCut (int weightIndex) const |
getMaxWeightEdgeCuts weighted for the specified index More... | |
scalar_t | getTotalEdgeCut () const |
getTotalEdgeCut More... | |
scalar_t | getTotalWeightEdgeCut (int weightIndex) const |
getTotalWeightEdgeCut weighted for the specified index More... | |
scalar_t | getTotalMessages () const |
getTotalMessages More... | |
scalar_t | getMaxMessages () const |
getMaxMessages More... | |
void | printMetrics (std::ostream &os) const |
Print all metrics. More... | |
Public Member Functions inherited from Zoltan2::EvaluateBaseClassRoot | |
virtual | ~EvaluateBaseClassRoot () |
Protected Member Functions | |
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) |
A class that computes and returns quality metrics.
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.
write a unit test for this class
Definition at line 34 of file Zoltan2_EvaluatePartition.hpp.
|
inlineprotected |
Constructor where communicator is Teuchos default, and takes another parameter whether to evaluate metrics within the constructor or not.
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 74 of file Zoltan2_EvaluatePartition.hpp.
|
inlinevirtual |
Definition at line 100 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
Constructor where communicator is Teuchos default.
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 110 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
Constructor where Teuchos communicator is specified.
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 132 of file Zoltan2_EvaluatePartition.hpp.
|
protected |
Definition at line 388 of file Zoltan2_EvaluatePartition.hpp.
|
inlineprotectedvirtual |
Reimplemented in Zoltan2::EvaluateMapping< Adapter, MachineRep >.
Definition at line 88 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
Return the metric list for types matching the given metric type.
Definition at line 178 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
Return the object count imbalance.
Definition at line 200 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
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 216 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
Return the imbalance for the requested weight.
Definition at line 232 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
Return the max cut for the requested weight.
Definition at line 265 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
getMaxWeightEdgeCuts weighted for the specified index
Definition at line 277 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
getTotalEdgeCut
Definition at line 302 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
getTotalWeightEdgeCut weighted for the specified index
Definition at line 314 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
getTotalMessages
Definition at line 339 of file Zoltan2_EvaluatePartition.hpp.
|
inline |
getMaxMessages
Definition at line 353 of file Zoltan2_EvaluatePartition.hpp.
|
inlinevirtual |
Print all metrics.
Reimplemented from Zoltan2::EvaluateBaseClassRoot.
Definition at line 366 of file Zoltan2_EvaluatePartition.hpp.