Chombo + EB + MF  3.2
EBEllipticLoadBalance.H
Go to the documentation of this file.
1 #ifdef CH_LANG_CC
2 /*
3  * _______ __
4  * / ___/ / ___ __ _ / / ___
5  * / /__/ _ \/ _ \/ V \/ _ \/ _ \
6  * \___/_//_/\___/_/_/_/_.__/\___/
7  * Please refer to Copyright.txt, in Chombo's root directory.
8  */
9 #endif
10 
11 #ifndef _EBELLIPTICLOADBALANCE_H_
12 #define _EBELLIPTICLOADBALANCE_H_
13 
14 #include "Box.H"
15 #include "ProblemDomain.H"
16 #include "Vector.H"
17 #include "REAL.H"
18 #include "EBIndexSpace.H"
19 #include "NamespaceHeader.H"
20 
21 class DisjointBoxLayout;
22 ///
23 /**
24  Load balance a Vector of Boxes.
25  We make the loads bases on a few ad hoc ideas.
26  we shall make fully covered boxes = constant load = covered load
27  we shall say that irregular points get irregular factor more load than
28  regular points.
29  */
30 extern int
32  const Vector<Box>& a_boxes,
33  const ProblemDomain& a_domain,
34  bool a_verbose = false,
35  const EBIndexSpace *a_ebisPtr = Chombo_EBIS::instance() );
36 
37 ///
38 /**
39  */
40 extern void
42  Vector<Box> & a_boxes,
43  const DisjointBoxLayout& a_dblOrig,
44  const ProblemDomain& a_domain,
45  const EBIndexSpace *a_ebisPtr = Chombo_EBIS::instance() );
46 
47 extern void
49  Vector<Box>& a_newBoxes,
50  Vector<Box>& a_oldBoxes);
51 
52 #include "NamespaceFooter.H"
53 #endif
void resetLoadOrder(Vector< unsigned long long > &a_loads, Vector< Box > &a_newBoxes, Vector< Box > &a_oldBoxes)
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
Definition: EBIndexSpace.H:50
void getPoissonLoadsAndBoxes(Vector< unsigned long long > &a_loads, Vector< Box > &a_boxes, const DisjointBoxLayout &a_dblOrig, const ProblemDomain &a_domain, const EBIndexSpace *a_ebisPtr=Chombo_EBIS::instance())
static EBIndexSpace * instance()
int EBEllipticLoadBalance(Vector< int > &a_proc, const Vector< Box > &a_boxes, const ProblemDomain &a_domain, bool a_verbose=false, const EBIndexSpace *a_ebisPtr=Chombo_EBIS::instance())
A BoxLayout that has a concept of disjointedness.
Definition: DisjointBoxLayout.H:30