Splits a mesh part into many. More...
Public Member Functions | |
virtual Migration * | split (MeshTag *weights, double tolerance, int multiple)=0 |
call the underlying split algorithm |
Splits a mesh part into many.
usually the construction of a specific Splitter will ask for a mesh object, which is the part to be acted upon
virtual Migration* apf::Splitter::split | ( | MeshTag * | weights, | |
double | tolerance, | |||
int | multiple | |||
) | [pure virtual] |
call the underlying split algorithm
weights | a tag of one double that should be attached to all the elements. splitters will try to balance the total element weight of the resulting parts. Some splitters support a weights pointer of zero, in which case elements are weighted equally | |
tolerance | a factor greater than one at such that if max_weight < tolerance * average_weight the splitter will consider the parts balanced | |
multiple | how many output parts to generate |