Chombo + EB  3.2
EdgeToCell.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 // EdgeToCell.H
12 // Dan Martin, Fri, Jan 14, 2000
13 
14 #ifndef _EDGETOCELL_H_
15 #define _EDGETOCELL_H_
16 
17 #include "LevelData.H"
18 #include "FArrayBox.H"
19 #include "FluxBox.H"
20 
21 #include "NamespaceHeader.H"
22 
23 /// averages cell-centered cellData to edge-centered edgeData
24 void EdgeToCell(const LevelData<FluxBox>& a_edgeData,
25  LevelData<FArrayBox>& a_cellData);
26 
27 /// averages cellData->edgeData (all directions) for one FAB
28 /** averages cell-centered cellData to SpaceDim-dimensioned
29  EdgeData -- assumes all boundary conditions already set.
30  Does this for all grids. */
31 void EdgeToCell(const FluxBox& a_edgeData,
32  FArrayBox& a_cellData);
33 
34 /// averages cellData->edgeData in 1 direction, for one component in a FAB
35 void EdgeToCell(const FluxBox& a_edgeData, const int a_edgeComp,
36  FArrayBox& a_cellData, const int a_cellComp,
37  const int a_dir);
38 
39 /// averages cellData->edgeData in 1 direction, for one component in a FAB, on a given cell box
40 void EdgeToCell(const FluxBox& a_edgeData, const int a_edgeComp,
41  FArrayBox& a_cellData, const int a_cellComp,
42  const Box& a_cellBox, const int a_dir);
43 
44 // max functions
45 /// cell-centered cellData from edge-centered edgeData using max
46 /** instead of averaging faces to cells, this function puts the max of
47  the two opposing face-centered values into each cell.
48 */
49 void EdgeToCellMax(const LevelData<FluxBox>& a_edgeData,
50  LevelData<FArrayBox>& a_cellData);
51 
52 /// edgeData->cellData using max (all directions) for one FAB
53 /** fills cell-centered cellData from EdgeData using max
54  -- assumes all boundary conditions already set.
55  Does this for all grids. */
56 void EdgeToCellMax(const FluxBox& a_edgeData,
57  FArrayBox& a_cellData);
58 
59 /// fills cellData using edgeData in 1 direction using max, for one component in a FAB
60 void EdgeToCellMax(const FluxBox& a_edgeData, const int a_edgeComp,
61  FArrayBox& a_cellData, const int a_cellComp,
62  const int a_dir);
63 
64 /// fills cellData->edgeData in 1 direction, for one component in a FAB, on a given cell box using max
65 void EdgeToCellMax(const FluxBox& a_edgeData, const int a_edgeComp,
66  FArrayBox& a_cellData, const int a_cellComp,
67  const Box& a_cellBox, const int a_dir);
68 
69 #include "NamespaceFooter.H"
70 
71 #endif
void EdgeToCell(const LevelData< FluxBox > &a_edgeData, LevelData< FArrayBox > &a_cellData)
averages cell-centered cellData to edge-centered edgeData
void EdgeToCellMax(const LevelData< FluxBox > &a_edgeData, LevelData< FArrayBox > &a_cellData)
cell-centered cellData from edge-centered edgeData using max
A FArrayBox-like container for face-centered fluxes.
Definition: FluxBox.H:22
A Rectangular Domain on an Integer Lattice.
Definition: Box.H:465
Definition: FArrayBox.H:45