Chombo + EB + MF  3.2
Macros | Functions
flipGrids.H File Reference
#include "DisjointBoxLayout.H"
#include "Vector.H"
#include "Tuple.H"
#include "NamespaceHeader.H"
#include "NamespaceFooter.H"
Include dependency graph for flipGrids.H:

Go to the source code of this file.


#define _FLIPGRIDS_H_


void getFlippedGrids (DisjointBoxLayout &a_reflectedBoxes, Vector< Tuple< DataIndex, 2 > > &a_boxCorrelation, const DisjointBoxLayout &a_grids, const Box &a_dataBox, int reflectDirection, int reflectCoordinate)
 function to intersect DisjointBoxLayout with a Box, then reflect it. More...

Macro Definition Documentation


#define _FLIPGRIDS_H_

Function Documentation

◆ getFlippedGrids()

void getFlippedGrids ( DisjointBoxLayout a_reflectedBoxes,
Vector< Tuple< DataIndex, 2 > > &  a_boxCorrelation,
const DisjointBoxLayout a_grids,
const Box a_dataBox,
int  reflectDirection,
int  reflectCoordinate 

function to intersect DisjointBoxLayout with a Box, then reflect it.

The getFlippedGrids function is designed to aid in the construction of reflection boundary conditions. What it does:

For each box in a_grids,

  1. intersect the grid box with a_dataBox. If a nonzero intersection, then
  2. reflect that intersection Box about the reflectCoordinate in the reflectDirection.
  3. create a DisjointBoxLayout of these boxes for which the processor assignments are the same as the origin boxes.
  4. Create a correlation list to correlate the DataIndex's of the reflectedBoxes with those in the original DisjointBoxLayout.