Chombo + EB + MF
3.2
|
Average from fine intersections. More...
#include <LevelGridMetrics.H>
Public Member Functions | |
IntersectionAverageFace (const LevelData< FluxBox > &a_A, const int a_nRef) | |
Constructor. More... | |
void | copyTo (LevelData< FluxBox > &a_C, const DisjointBoxLayout &a_dblB) |
Copy the average using a mask. More... | |
Protected Attributes | |
const int | m_nComp |
Number of components in A (same as C) More... | |
const int | m_nRef |
Refinement between A & C. More... | |
DisjointBoxLayout | m_crDblA |
Coarsened layout for A. More... | |
CoarseAverageFace | m_averager |
Private Member Functions | |
IntersectionAverageFace (const IntersectionAverageFace &) | |
IntersectionAverageFace & | operator= (const IntersectionAverageFace &) |
Average from fine intersections.
The objective of this class is to average down information from A^(l+1) to C^(l) but only on the intersection of A^(l+1) and B^(l+1). This class is designed to support class 'LevelGridMetrics' where A is the snapback flux on the old fine mesh, B is the new mesh, and C (= A^l) is the snapback flux on the old coarse mesh. These are the steps (Cr is coarsen operator):
IntersectionAverageFace::IntersectionAverageFace | ( | const LevelData< FluxBox > & | a_A, |
const int | a_nRef | ||
) |
Constructor.
|
private |
void IntersectionAverageFace::copyTo | ( | LevelData< FluxBox > & | a_C, |
const DisjointBoxLayout & | a_dblB | ||
) |
Copy the average using a mask.
|
private |
|
protected |
Number of components in A (same as C)
|
protected |
Refinement between A & C.
|
protected |
Coarsened layout for A.
|
protected |
The averager itself stores the averaged data between averaging and copying