ug4
ug::ICommunicationWeights Class Referenceabstract

#include <partitioner.h>

Public Member Functions

virtual number get_weight (GridObject *conn)=0
 
virtual bool reweigh (GridObject *conn)
 
virtual ~ICommunicationWeights ()
 

Detailed Description

Interface for the definition of weights for connections between elements. These weights introduce a customizable penalty for any side if the border of a partition includes the side. This can be used to minimize communication cost e.g. when using the ParMetis partitioner. It can also be useful if you want to make sure that certain subsets are not contained in any partition boundary or if you want to enforce that a collection of elements be in one single partition.

Constructor & Destructor Documentation

◆ ~ICommunicationWeights()

virtual ug::ICommunicationWeights::~ICommunicationWeights ( )
inlinevirtual

Member Function Documentation

◆ get_weight()

virtual number ug::ICommunicationWeights::get_weight ( GridObject conn)
pure virtual

Get the weight of a specific connection.

Parameters
connpointer to the connection in question
Returns
weight for the side

◆ reweigh()

virtual bool ug::ICommunicationWeights::reweigh ( GridObject conn)
inlinevirtual

Whether or not the given connection is to be assigned another weight. If true, this weight can be obtained by get_weight(), if false, no such weight must be requested.

Parameters
connpointer to the connection in question
Returns
true iff get_weight() can provide a new weight for the connection

The documentation for this class was generated from the following file: