IBAMR
An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
|
Class MergingLoadBalancer merges the boxes generated by a load balancer in a final step to decrease the total number of boxes. In essence, it postprocesses the list of boxes generated by its parent class to try and coalesce the set of boxes on each process. More...
#include </home/runner/work/IBAMR/IBAMR/ibtk/include/ibtk/MergingLoadBalancer.h>
Public Member Functions | |
virtual void | loadBalanceBoxes (SAMRAI::hier::BoxArray< NDIM > &out_boxes, SAMRAI::hier::ProcessorMapping &mapping, const SAMRAI::hier::BoxList< NDIM > &in_boxes, const SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, const SAMRAI::hier::BoxArray< NDIM > &physical_domain, const SAMRAI::hier::IntVector< NDIM > &ratio_to_hierarchy_level_zero, const SAMRAI::hier::IntVector< NDIM > &min_size, const SAMRAI::hier::IntVector< NDIM > &max_size, const SAMRAI::hier::IntVector< NDIM > &cut_factor, const SAMRAI::hier::IntVector< NDIM > &bad_interval) const override |
Public Member Functions inherited from SAMRAI::mesh::LoadBalancer< NDIM > | |
LoadBalancer (const std::string &name, tbox::Pointer< tbox::Database > input_db=(tbox::Database *) NULL) | |
LoadBalancer (tbox::Pointer< tbox::Database > input_db=(tbox::Database *) NULL) | |
void | setMaxWorkloadFactor (double factor, int level_number=-1) |
void | setWorkloadTolerance (double tolerance, int level_number=-1) |
void | setWorkloadPatchDataIndex (int data_id, int level_number=-1) |
void | setUniformWorkload (int level_number=-1) |
void | setBinPackMethod (const std::string &method, int level_number=-1) |
void | setIgnoreLevelDomainIsSingleBox (bool flag) |
bool | getLoadBalanceDependsOnPatchData (int level_number) const |
void | loadBalanceBoxes (hier::BoxArray< NDIM > &out_boxes, hier::ProcessorMapping &mapping, const hier::BoxList< NDIM > &in_boxes, const tbox::Pointer< hier::PatchHierarchy< NDIM > > hierarchy, int level_number, const hier::BoxArray< NDIM > &physical_domain, const hier::IntVector< NDIM > &ratio_to_hierarchy_level_zero, const hier::IntVector< NDIM > &min_size, const hier::IntVector< NDIM > &max_size, const hier::IntVector< NDIM > &cut_factor, const hier::IntVector< NDIM > &bad_interval) const |
virtual void | printClassData (std::ostream &os) const |
Public Member Functions inherited from SAMRAI::mesh::LoadBalanceStrategy< DIM > | |
virtual void | loadBalanceBoxes (hier::BoxArray< DIM > &out_boxes, hier::ProcessorMapping &mapping, const hier::BoxList< DIM > &in_boxes, const tbox::Pointer< hier::PatchHierarchy< DIM > > hierarchy, const int level_number, const hier::BoxArray< DIM > &physical_domain, const hier::IntVector< DIM > &ratio_to_hierarchy_level_zero, const hier::IntVector< DIM > &min_size, const hier::IntVector< DIM > &max_size, const hier::IntVector< DIM > &cut_factor, const hier::IntVector< DIM > &bad_interval) const=0 |
Class MergingLoadBalancer merges the boxes generated by a load balancer in a final step to decrease the total number of boxes. In essence, it postprocesses the list of boxes generated by its parent class to try and coalesce the set of boxes on each process.