Chombo + EB + MF  3.2
Go to the documentation of this file.
1 #ifdef CH_LANG_CC
2 /*
3  * _______ __
4  * / ___/ / ___ __ _ / / ___
5  * / /__/ _ \/ _ \/ V \/ _ \/ _ \
6  * \___/_//_/\___/_/_/_/_.__/\___/
8  */
9 #endif
10
13
14 #include "REAL.H"
15 #include "Vector.H"
16 #include "Box.H"
17 #include "ProblemDomain.H"
18 #include "RefCountedPtr.H"
19 #include "MFIndexSpace.H"
21
22 class DisjointBoxLayout;
23 ///
24 /**
25  Load balance a Vector of Boxes.
26  We make the loads bases on a few ad hoc ideas.
27  we shall make fully covered boxes = constant load = covered load
28  we shall say that irregular points get irregular factor more load than
29  regular points.
30  */
31 extern int
33  const Vector<Box>& a_boxes,
35  const ProblemDomain& a_domain,
36  bool a_verbose = false);
37
38 ///
39 /**
40  */
41 extern void
43  Vector<Box> & a_boxes,
45  const DisjointBoxLayout& a_dblOrig,
46  const ProblemDomain& a_domain);
47
48 #include "NamespaceFooter.H"
49 #endif
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
A BoxLayout that has a concept of disjointedness.
Definition: DisjointBoxLayout.H:30
void getPoissonLoadsAndBoxes(Vector< unsigned long long > &a_loads, Vector< Box > &a_boxes, RefCountedPtr< MFIndexSpace > &a_mfis, const DisjointBoxLayout &a_dblOrig, const ProblemDomain &a_domain)
int MFEllipticLoadBalance(Vector< int > &a_proc, const Vector< Box > &a_boxes, RefCountedPtr< MFIndexSpace > &a_mfis, const ProblemDomain &a_domain, bool a_verbose=false)