|
ug4
|
#include <partition_weighting_callbacks.h>
Inheritance diagram for ug::ProtectSubsetPartitionWeighting:Public Types | |
| typedef MultiGrid::traits< Vertex >::secure_container | vertex_list |
Public Member Functions | |
| virtual int | operator() (Edge *e1, Edge *e2) |
| virtual int | operator() (Face *f1, Face *f2) |
| virtual int | operator() (Volume *v1, Volume *v2) |
| ProtectSubsetPartitionWeighting () | |
| void | set_weight (int si, int weight) |
| virtual | ~ProtectSubsetPartitionWeighting () |
Public Member Functions inherited from ug::PartitionWeighting | |
| PartitionWeighting () | |
| void | set_default_weights (int hWeight, int vWeight) |
| void | set_subset_handler (MGSubsetHandler *sh) |
| virtual | ~PartitionWeighting () |
Private Member Functions | |
| template<class TElem > | |
| int | weigh (TElem *e1, TElem *e2) |
Private Attributes | |
| std::vector< int > | m_vSi |
| std::vector< int > | m_vWeights |
Additional Inherited Members | |
Protected Attributes inherited from ug::PartitionWeighting | |
| int | m_hWeight |
| MGSubsetHandler * | m_sh |
| int | m_vWeight |
This PartitionWeighting sets out to protect specific subsets from having vertices in any process boundaries. To that purpose, in the weighing function, it checks both elements for a common vertex in one of the specified subsets to protect. If such a vertex exists, the weight for the division along the two elements is set to the value defined via set_weight().
| typedef MultiGrid::traits<Vertex>::secure_container ug::ProtectSubsetPartitionWeighting::vertex_list |
|
inline |
|
inlinevirtual |
Reimplemented from ug::PartitionWeighting.
References weigh().
Reimplemented from ug::PartitionWeighting.
References weigh().
|
inlinevirtual |
Reimplemented from ug::PartitionWeighting.
References weigh().
|
inline |
References m_vSi, and m_vWeights.
Referenced by ug::bridge::RegisterGridBridge_Balancing().
|
inlineprivate |
References ug::Grid::associated_elements(), ug::MultiGridSubsetHandler::get_level(), ug::ISubsetHandler::get_subset_index(), ug::ISubsetHandler::grid(), ug::PartitionWeighting::m_hWeight, ug::PartitionWeighting::m_sh, m_vSi, ug::PartitionWeighting::m_vWeight, m_vWeights, and UG_THROW.
Referenced by operator()(), operator()(), and operator()().
|
private |
Referenced by set_weight(), and weigh().
|
private |
Referenced by set_weight(), and weigh().