#include <EBAdvectPatchIntegrator.H>
I have pared down the EBPatchGodunov interface and tried to optimize for minimal memory without completely destroying performance.
Public Member Functions | |
EBAdvectPatchIntegrator (const Box &a_validBox, const EBISBox &a_ebisBox, const IntVectSet &a_coarseFineIVS, const ProblemDomain &a_domain, const RealVect &a_dx, bool a_useSlopeLimiting) | |
boundary condions are set via setEBPhysIBC | |
virtual | ~EBAdvectPatchIntegrator () |
void | extrapolatePrim (EBFluxFAB &a_flux, Vector< BaseIVFAB< Real > * > &a_coveredFluxMinu, Vector< BaseIVFAB< Real > * > &a_coveredFluxPlus, const Vector< IntVectSet > &a_coveredSetsMinu, const Vector< IntVectSet > &a_coveredSetsPlus, const Vector< Vector< VolIndex > > &a_coveredFaceMinu, const Vector< Vector< VolIndex > > &a_coveredFacePlus, const EBCellFAB &a_consState, const EBCellFAB &a_source, const DataIndex &a_dit, const Real &a_time, const Real &a_dt) |
void | advectiveDerivative (EBCellFAB &a_uDotDelRho, const EBFluxFAB &a_faceRho, const EBFluxFAB &a_faceVel, const Vector< BaseIVFAB< Real > * > &a_coveredRhoLo, const Vector< BaseIVFAB< Real > * > &a_coveredRhoHi, const Vector< BaseIVFAB< Real > * > &a_coveredVelLo, const Vector< BaseIVFAB< Real > * > &a_coveredVelHi, const Vector< Vector< VolIndex > > &a_coveredFaceLo, const Vector< Vector< VolIndex > > &a_coveredFaceHi, const Box &a_box) |
void | advectiveDerivative (EBCellFAB &a_uDotDelRho, const EBFluxFAB &a_faceRho, const EBFluxFAB &a_faceVel, const Box &a_box) |
void | setEBPhysIBC (const EBPhysIBCFactory &a_bc) |
void | setVelocities (const EBCellFAB &a_normalVel, const EBFluxFAB &a_advectionVel) |
void | consUndividedDivergence (BaseIVFAB< Real > &a_divF, const BaseIFFAB< Real > a_centroidFlux[SpaceDim], const IntVectSet &a_ivs) |
void | consUndividedDivergence (BaseIVFAB< Real > &a_divF, const BaseIFFAB< Real > a_centroidFlux[SpaceDim], const BaseIVFAB< Real > &a_ebIrregFlux, const IntVectSet &a_ivs) |
void | interpolateFluxToCentroids (BaseIFFAB< Real > a_centroidFlux[SpaceDim], const BaseIFFAB< Real > *const a_fluxInterpolant[SpaceDim], const IntVectSet &a_irregIVS) |
void | averageVelToCC (EBCellFAB &a_normalVel, const EBFluxFAB &a_advectionVel, const Vector< BaseIVFAB< Real > * > &a_coveredVeloLo, const Vector< BaseIVFAB< Real > * > &a_coveredVeloHi, const Vector< Vector< VolIndex > > &a_coveredFaceLo, const Vector< Vector< VolIndex > > &a_coveredFaceHi, const Box &a_box) const |
void | extrapolateBCG (EBFluxFAB &a_flux, const EBCellFAB &a_consState, const EBCellFAB &a_source, const DataIndex &a_dit, const Real &a_time, const Real &a_dt) |
void | mvExtrapolateBCG (EBFluxFAB &a_flux, const EBCellFAB &a_consState, const EBFluxFAB &a_advectionVel, const EBCellFAB &a_normalVel, const EBCellFAB &a_source, const Vector< RefCountedPtr< EBPhysIBCFactory > > &a_allAdvectBC, const DataIndex &a_dit, const Real &a_time, const Real &a_dt, const int &a_doingVel) |
void | extrapToCoveredFaces (BaseIVFAB< Real > &a_extendedPrim, const EBFaceFAB &a_primFace, const EBCellFAB &a_primState, const Vector< VolIndex > &a_coveredFaces, const int &a_faceDir, const Side::LoHiSide &a_sd, const Box &a_box) |
void | setMaxMin (const Real &a_maxVal, const Real &a_minVal) |
Static Public Member Functions | |
static void | setCurComp (int a_curComp) |
here are a couple of awful hooks necessary to get the minutiae of the algorithm correct | |
static void | setDoingVel (int a_yesorno) |
static int | getDoingVel () |
static int | getCurComp () |
Private Member Functions | |
EBAdvectPatchIntegrator () | |
weak construction is bad. | |
void | extrapolatePrim3D (EBCellFAB a_primMinu[SpaceDim], EBCellFAB a_primPlus[SpaceDim], const EBCellFAB &a_consState, const EBCellFAB &a_source, const DataIndex &a_dit, const Real &a_time, const Real &a_dt) |
internal functions (all the madness below probably needs to get cleaned up) | |
void | extrapolateBCG (EBCellFAB a_primMinu[SpaceDim], EBCellFAB a_primPlus[SpaceDim], const EBCellFAB &a_consState, const EBCellFAB &a_source, const DataIndex &a_dit, const Real &a_time, const Real &a_dt) |
void | extrapolatePrim2D (EBCellFAB a_primMinu[SpaceDim], EBCellFAB a_primPlus[SpaceDim], const EBCellFAB &a_consState, const EBCellFAB &a_source, const DataIndex &a_dit, const Real &a_time, const Real &a_dt) |
void | riemann (BaseIVFAB< Real > &a_coveredPrim, const BaseIVFAB< Real > &a_exteState, const EBCellFAB &a_primState, const Vector< VolIndex > &a_vofset, const int &a_faceDir, const Side::LoHiSide &a_sd, const Box &a_box) |
void | riemann (EBFaceFAB &a_primGdnv, const EBCellFAB &a_primLeft, const EBCellFAB &a_primRigh, const int &a_faceDir, const Box &a_box) |
FaceStencil | getInterpStencil (const FaceIndex &a_face) const |
void | pointExtrapToCovered2D (Vector< Real > &a_extrapVal, const EBFaceFAB &a_primFace, const EBCellFAB &a_primState, const int &a_faceDir, const VolIndex &a_vof, const RealVect &a_normal, const Side::LoHiSide &a_sd, const int &a_numPrim) |
void | pointExtrapToCovered3D (Vector< Real > &a_extrapVal, const EBFaceFAB &a_primFace, const EBCellFAB &a_primState, const int &a_faceDir, const VolIndex &a_vof, const RealVect &a_normal, const Side::LoHiSide &a_sd, const int &a_numPrim) |
void | extrapToCoveredFaces (BaseIVFAB< Real > &a_extendedPrim, const EBCellFAB &a_primMinu, const EBCellFAB &a_primPlus, const EBCellFAB &a_primState, const Vector< VolIndex > &a_coveredFaces, const int &a_faceDir, const Side::LoHiSide &a_sd, const Box &a_box) |
void | pointExtrapToCovered2D (Vector< Real > &a_extrapVal, const EBCellFAB &a_primMinu, const EBCellFAB &a_primPlus, const EBCellFAB &a_primState, const int &a_faceDir, const VolIndex &a_vof, const RealVect &a_normal, const Side::LoHiSide &a_sd, const int &a_numPrim) |
void | pointExtrapToCovered3D (Vector< Real > &a_extrapVal, const EBCellFAB &a_primMinu, const EBCellFAB &a_primPlus, const EBCellFAB &a_primState, const int &a_faceDir, const VolIndex &a_vof, const RealVect &a_normal, const Side::LoHiSide &a_sd, const int &a_numPrim) |
void | floorPrimitives (EBCellFAB &a_primState, const Box &a_box) |
floors if m_isMaxMinSet | |
void | floorPrimitives (BaseIVFAB< Real > &a_primState, const IntVectSet &a_set) |
floors if m_isMaxMinSet | |
void | coveredExtrapSlopes (Real &a_dq, const VolIndex &a_vof, const EBCellFAB &a_primState, const int &a_dir, const int &a_ivar) |
void | pointGetSlopes (Real &a_dql, Real &a_dqr, Real &a_dqc, bool &a_hasFacesLeft, bool &a_hasFacesRigh, const VolIndex &a_vof, const EBCellFAB &a_primState, const int &a_dir, const int &a_ivar, const bool &a_verbose) |
Real | bilinearFunc (const Real a_WVal[2][2], const Real &a_xd1, const Real &a_xd2) |
void | pointGetSlopesUpwind (Real &a_dql, Real &a_dqr, Real &a_dqc, bool &a_hasFacesLeft, bool &a_hasFacesRigh, const VolIndex &a_vof, const EBCellFAB &a_primState, const int &a_dir, const int &a_ivar, const bool &a_verbose) |
void | doNormalDerivativeExtr2D (EBCellFAB a_primMinu[SpaceDim], EBCellFAB a_primPlus[SpaceDim], EBFaceFAB a_fluxOne[SpaceDim], BaseIVFAB< Real > a_coveredFluxNormMinu[SpaceDim], BaseIVFAB< Real > a_coveredFluxNormPlus[SpaceDim], Vector< VolIndex > a_coveredFaceNormMinu[SpaceDim], Vector< VolIndex > a_coveredFaceNormPlus[SpaceDim], const EBCellFAB &a_primState, const EBCellFAB &a_source, const DataIndex &a_dit, const Real &a_time, const Real &a_dt) |
and this is the *simplified* version | |
void | slope (EBCellFAB &a_slopePrim, const EBCellFAB &a_primState, const int &a_dir, const Box &a_box) |
options for 4th ordeer slopes and flattening removed | |
void | finalExtrap2D (EBCellFAB a_primMinu[SpaceDim], EBCellFAB a_primPlus[SpaceDim], const BaseIVFAB< Real > a_coveredFluxNormMinu[SpaceDim], const BaseIVFAB< Real > a_coveredFluxNormPlus[SpaceDim], const Vector< VolIndex > a_coveredFaceNormMinu[SpaceDim], const Vector< VolIndex > a_coveredFaceNormPlus[SpaceDim], const EBFaceFAB a_fluxOne[SpaceDim], const EBCellFAB &a_primState, const Real &a_time, const Real &a_dt) |
void | finalExtrap3D (EBCellFAB a_primMinu[SpaceDim], EBCellFAB a_primPlus[SpaceDim], const BaseIVFAB< Real > a_coveredFluxMinu3D[SpaceDim][SpaceDim], const BaseIVFAB< Real > a_coveredFluxPlus3D[SpaceDim][SpaceDim], const EBFaceFAB a_fluxTwo[SpaceDim][SpaceDim], const EBCellFAB &a_primState, const Real &a_time, const Real &a_dt) |
void | do111coupling (EBFaceFAB a_fluxTwo[SpaceDim][SpaceDim], BaseIVFAB< Real > a_coveredFluxMinu3D[SpaceDim][SpaceDim], BaseIVFAB< Real > a_coveredFluxPlus3D[SpaceDim][SpaceDim], const EBCellFAB a_primMinu[SpaceDim], const EBCellFAB a_primPlus[SpaceDim], const BaseIVFAB< Real > a_coveredFluxNormMinu[SpaceDim], const BaseIVFAB< Real > a_coveredFluxNormPlus[SpaceDim], const Vector< VolIndex > a_coveredFaceNormMinu[SpaceDim], const Vector< VolIndex > a_coveredFaceNormPlus[SpaceDim], const EBFaceFAB a_fluxOne[SpaceDim], const EBCellFAB &a_primState, const DataIndex &a_dit, const Real &a_time, const Real &a_dt) |
void | doNormalDerivativeExtr3D (EBCellFAB a_primMinu[SpaceDim], EBCellFAB a_primPlus[SpaceDim], EBFaceFAB a_fluxOne[SpaceDim], BaseIVFAB< Real > a_coveredFluxNormMinu[SpaceDim], BaseIVFAB< Real > a_coveredFluxNormPlus[SpaceDim], Vector< VolIndex > a_coveredFaceNormMinu[SpaceDim], Vector< VolIndex > a_coveredFaceNormPlus[SpaceDim], const EBCellFAB &a_primState, const EBCellFAB &a_source, const DataIndex &a_dit, const Real &a_time, const Real &a_dt) |
void | normalPred (EBCellFAB &a_primLo, EBCellFAB &a_primHi, const EBCellFAB &a_primState, const EBCellFAB &a_slopePrim, const Real &a_scale, const int &a_dir, const Box &a_box) |
void | incrementWithSource (EBCellFAB &a_primState, const EBCellFAB &a_source, const Real &a_scale, const Box &a_box) |
void | updatePrim (EBCellFAB &a_primMinu, EBCellFAB &a_primPlus, const EBFaceFAB &a_primFace, const BaseIVFAB< Real > &a_coveredPrimMinu, const BaseIVFAB< Real > &a_coveredPrimPlus, const Vector< VolIndex > &a_coveredFaceMinu, const Vector< VolIndex > &a_coveredFacePlus, const int &a_faceDir, const Box &a_box, const Real &a_scale) |
void | upwindSlope (EBCellFAB &a_slopeUpWi, const EBCellFAB &a_primState, const int &a_dir, const Box &a_box) |
void | transversePred (EBCellFAB &a_rhoLo, EBCellFAB &a_rhoHi, const EBCellFAB &a_rho, const EBCellFAB &a_dRho, const Real &a_dtbydx, const int &a_dir, const Box &a_box) |
Private Attributes | |
const EBFluxFAB * | m_advectionVelPtr |
const EBCellFAB * | m_normalVelPtr |
bool | m_isVelSet |
bool | m_isMaxMinSet |
bool | m_useLimiting |
Real | m_maxVal |
Real | m_minVal |
RefCountedPtr< EBPhysIBC > | m_bc |
bool | m_isBCSet |
Box | m_validBox |
ProblemDomain | m_domain |
EBISBox | m_ebisBox |
RealVect | m_dx |
IntVectSet | m_cfivs |
Box | m_validBoxG4 |
Vector< VolIndex > | m_irregVoFs |
IntVectSet | m_coveredSetsPlusG4 [SpaceDim] |
IntVectSet | m_coveredSetsMinuG4 [SpaceDim] |
Vector< VolIndex > | m_coveredFacePlusG4 [SpaceDim] |
Vector< VolIndex > | m_coveredFaceMinuG4 [SpaceDim] |
Static Private Attributes | |
static int | s_curComp |
these exist because special things have to be done for velocity | |
static int | s_doingVel |
EBAdvectPatchIntegrator::EBAdvectPatchIntegrator | ( | const Box & | a_validBox, | |
const EBISBox & | a_ebisBox, | |||
const IntVectSet & | a_coarseFineIVS, | |||
const ProblemDomain & | a_domain, | |||
const RealVect & | a_dx, | |||
bool | a_useSlopeLimiting | |||
) |
boundary condions are set via setEBPhysIBC
virtual EBAdvectPatchIntegrator::~EBAdvectPatchIntegrator | ( | ) | [inline, virtual] |
EBAdvectPatchIntegrator::EBAdvectPatchIntegrator | ( | ) | [private] |
weak construction is bad.
void EBAdvectPatchIntegrator::extrapolatePrim | ( | EBFluxFAB & | a_flux, | |
Vector< BaseIVFAB< Real > * > & | a_coveredFluxMinu, | |||
Vector< BaseIVFAB< Real > * > & | a_coveredFluxPlus, | |||
const Vector< IntVectSet > & | a_coveredSetsMinu, | |||
const Vector< IntVectSet > & | a_coveredSetsPlus, | |||
const Vector< Vector< VolIndex > > & | a_coveredFaceMinu, | |||
const Vector< Vector< VolIndex > > & | a_coveredFacePlus, | |||
const EBCellFAB & | a_consState, | |||
const EBCellFAB & | a_source, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) |
void EBAdvectPatchIntegrator::advectiveDerivative | ( | EBCellFAB & | a_uDotDelRho, | |
const EBFluxFAB & | a_faceRho, | |||
const EBFluxFAB & | a_faceVel, | |||
const Vector< BaseIVFAB< Real > * > & | a_coveredRhoLo, | |||
const Vector< BaseIVFAB< Real > * > & | a_coveredRhoHi, | |||
const Vector< BaseIVFAB< Real > * > & | a_coveredVelLo, | |||
const Vector< BaseIVFAB< Real > * > & | a_coveredVelHi, | |||
const Vector< Vector< VolIndex > > & | a_coveredFaceLo, | |||
const Vector< Vector< VolIndex > > & | a_coveredFaceHi, | |||
const Box & | a_box | |||
) |
void EBAdvectPatchIntegrator::advectiveDerivative | ( | EBCellFAB & | a_uDotDelRho, | |
const EBFluxFAB & | a_faceRho, | |||
const EBFluxFAB & | a_faceVel, | |||
const Box & | a_box | |||
) |
Version that leaves out the covered face stuff. This is wrong near the EB but the codes that use it overwrite the EB stuff anyway.
void EBAdvectPatchIntegrator::setEBPhysIBC | ( | const EBPhysIBCFactory & | a_bc | ) | [inline] |
References EBPhysIBCFactory::create(), m_bc, m_domain, m_dx, and m_isBCSet.
void EBAdvectPatchIntegrator::setVelocities | ( | const EBCellFAB & | a_normalVel, | |
const EBFluxFAB & | a_advectionVel | |||
) | [inline] |
References m_advectionVelPtr, m_isVelSet, and m_normalVelPtr.
void EBAdvectPatchIntegrator::consUndividedDivergence | ( | BaseIVFAB< Real > & | a_divF, | |
const BaseIFFAB< Real > | a_centroidFlux[SpaceDim], | |||
const IntVectSet & | a_ivs | |||
) |
For when EBFlux is always zero.
void EBAdvectPatchIntegrator::consUndividedDivergence | ( | BaseIVFAB< Real > & | a_divF, | |
const BaseIFFAB< Real > | a_centroidFlux[SpaceDim], | |||
const BaseIVFAB< Real > & | a_ebIrregFlux, | |||
const IntVectSet & | a_ivs | |||
) |
void EBAdvectPatchIntegrator::interpolateFluxToCentroids | ( | BaseIFFAB< Real > | a_centroidFlux[SpaceDim], | |
const BaseIFFAB< Real > *const | a_fluxInterpolant[SpaceDim], | |||
const IntVectSet & | a_irregIVS | |||
) |
void EBAdvectPatchIntegrator::averageVelToCC | ( | EBCellFAB & | a_normalVel, | |
const EBFluxFAB & | a_advectionVel, | |||
const Vector< BaseIVFAB< Real > * > & | a_coveredVeloLo, | |||
const Vector< BaseIVFAB< Real > * > & | a_coveredVeloHi, | |||
const Vector< Vector< VolIndex > > & | a_coveredFaceLo, | |||
const Vector< Vector< VolIndex > > & | a_coveredFaceHi, | |||
const Box & | a_box | |||
) | const |
void EBAdvectPatchIntegrator::extrapolateBCG | ( | EBFluxFAB & | a_flux, | |
const EBCellFAB & | a_consState, | |||
const EBCellFAB & | a_source, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) |
void EBAdvectPatchIntegrator::mvExtrapolateBCG | ( | EBFluxFAB & | a_flux, | |
const EBCellFAB & | a_consState, | |||
const EBFluxFAB & | a_advectionVel, | |||
const EBCellFAB & | a_normalVel, | |||
const EBCellFAB & | a_source, | |||
const Vector< RefCountedPtr< EBPhysIBCFactory > > & | a_allAdvectBC, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt, | |||
const int & | a_doingVel | |||
) |
static void EBAdvectPatchIntegrator::setCurComp | ( | int | a_curComp | ) | [inline, static] |
here are a couple of awful hooks necessary to get the minutiae of the algorithm correct
References s_curComp.
static void EBAdvectPatchIntegrator::setDoingVel | ( | int | a_yesorno | ) | [inline, static] |
References s_doingVel.
static int EBAdvectPatchIntegrator::getDoingVel | ( | ) | [inline, static] |
References s_doingVel.
static int EBAdvectPatchIntegrator::getCurComp | ( | ) | [inline, static] |
References s_curComp.
void EBAdvectPatchIntegrator::extrapToCoveredFaces | ( | BaseIVFAB< Real > & | a_extendedPrim, | |
const EBFaceFAB & | a_primFace, | |||
const EBCellFAB & | a_primState, | |||
const Vector< VolIndex > & | a_coveredFaces, | |||
const int & | a_faceDir, | |||
const Side::LoHiSide & | a_sd, | |||
const Box & | a_box | |||
) |
This is called by EBAMRNoSubCycle. The insane version that uses cell-centered data holders for face data (the plus-minus stuff) is called internally.
References m_isMaxMinSet, m_maxVal, and m_minVal.
void EBAdvectPatchIntegrator::extrapolatePrim3D | ( | EBCellFAB | a_primMinu[SpaceDim], | |
EBCellFAB | a_primPlus[SpaceDim], | |||
const EBCellFAB & | a_consState, | |||
const EBCellFAB & | a_source, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) | [private] |
internal functions (all the madness below probably needs to get cleaned up)
void EBAdvectPatchIntegrator::extrapolateBCG | ( | EBCellFAB | a_primMinu[SpaceDim], | |
EBCellFAB | a_primPlus[SpaceDim], | |||
const EBCellFAB & | a_consState, | |||
const EBCellFAB & | a_source, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) | [private] |
void EBAdvectPatchIntegrator::extrapolatePrim2D | ( | EBCellFAB | a_primMinu[SpaceDim], | |
EBCellFAB | a_primPlus[SpaceDim], | |||
const EBCellFAB & | a_consState, | |||
const EBCellFAB & | a_source, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) | [private] |
void EBAdvectPatchIntegrator::riemann | ( | BaseIVFAB< Real > & | a_coveredPrim, | |
const BaseIVFAB< Real > & | a_exteState, | |||
const EBCellFAB & | a_primState, | |||
const Vector< VolIndex > & | a_vofset, | |||
const int & | a_faceDir, | |||
const Side::LoHiSide & | a_sd, | |||
const Box & | a_box | |||
) | [private] |
void EBAdvectPatchIntegrator::riemann | ( | EBFaceFAB & | a_primGdnv, | |
const EBCellFAB & | a_primLeft, | |||
const EBCellFAB & | a_primRigh, | |||
const int & | a_faceDir, | |||
const Box & | a_box | |||
) | [private] |
FaceStencil EBAdvectPatchIntegrator::getInterpStencil | ( | const FaceIndex & | a_face | ) | const [private] |
void EBAdvectPatchIntegrator::pointExtrapToCovered2D | ( | Vector< Real > & | a_extrapVal, | |
const EBFaceFAB & | a_primFace, | |||
const EBCellFAB & | a_primState, | |||
const int & | a_faceDir, | |||
const VolIndex & | a_vof, | |||
const RealVect & | a_normal, | |||
const Side::LoHiSide & | a_sd, | |||
const int & | a_numPrim | |||
) | [private] |
void EBAdvectPatchIntegrator::pointExtrapToCovered3D | ( | Vector< Real > & | a_extrapVal, | |
const EBFaceFAB & | a_primFace, | |||
const EBCellFAB & | a_primState, | |||
const int & | a_faceDir, | |||
const VolIndex & | a_vof, | |||
const RealVect & | a_normal, | |||
const Side::LoHiSide & | a_sd, | |||
const int & | a_numPrim | |||
) | [private] |
void EBAdvectPatchIntegrator::extrapToCoveredFaces | ( | BaseIVFAB< Real > & | a_extendedPrim, | |
const EBCellFAB & | a_primMinu, | |||
const EBCellFAB & | a_primPlus, | |||
const EBCellFAB & | a_primState, | |||
const Vector< VolIndex > & | a_coveredFaces, | |||
const int & | a_faceDir, | |||
const Side::LoHiSide & | a_sd, | |||
const Box & | a_box | |||
) | [private] |
This insane version called internally. The primMinu and primPlus stuff are really face centered data but because they *came* from cell-centered data they are left there.
void EBAdvectPatchIntegrator::pointExtrapToCovered2D | ( | Vector< Real > & | a_extrapVal, | |
const EBCellFAB & | a_primMinu, | |||
const EBCellFAB & | a_primPlus, | |||
const EBCellFAB & | a_primState, | |||
const int & | a_faceDir, | |||
const VolIndex & | a_vof, | |||
const RealVect & | a_normal, | |||
const Side::LoHiSide & | a_sd, | |||
const int & | a_numPrim | |||
) | [private] |
void EBAdvectPatchIntegrator::pointExtrapToCovered3D | ( | Vector< Real > & | a_extrapVal, | |
const EBCellFAB & | a_primMinu, | |||
const EBCellFAB & | a_primPlus, | |||
const EBCellFAB & | a_primState, | |||
const int & | a_faceDir, | |||
const VolIndex & | a_vof, | |||
const RealVect & | a_normal, | |||
const Side::LoHiSide & | a_sd, | |||
const int & | a_numPrim | |||
) | [private] |
void EBAdvectPatchIntegrator::floorPrimitives | ( | EBCellFAB & | a_primState, | |
const Box & | a_box | |||
) | [private] |
floors if m_isMaxMinSet
void EBAdvectPatchIntegrator::floorPrimitives | ( | BaseIVFAB< Real > & | a_primState, | |
const IntVectSet & | a_set | |||
) | [private] |
floors if m_isMaxMinSet
void EBAdvectPatchIntegrator::coveredExtrapSlopes | ( | Real & | a_dq, | |
const VolIndex & | a_vof, | |||
const EBCellFAB & | a_primState, | |||
const int & | a_dir, | |||
const int & | a_ivar | |||
) | [private] |
void EBAdvectPatchIntegrator::pointGetSlopes | ( | Real & | a_dql, | |
Real & | a_dqr, | |||
Real & | a_dqc, | |||
bool & | a_hasFacesLeft, | |||
bool & | a_hasFacesRigh, | |||
const VolIndex & | a_vof, | |||
const EBCellFAB & | a_primState, | |||
const int & | a_dir, | |||
const int & | a_ivar, | |||
const bool & | a_verbose | |||
) | [private] |
Real EBAdvectPatchIntegrator::bilinearFunc | ( | const Real | a_WVal[2][2], | |
const Real & | a_xd1, | |||
const Real & | a_xd2 | |||
) | [private] |
void EBAdvectPatchIntegrator::pointGetSlopesUpwind | ( | Real & | a_dql, | |
Real & | a_dqr, | |||
Real & | a_dqc, | |||
bool & | a_hasFacesLeft, | |||
bool & | a_hasFacesRigh, | |||
const VolIndex & | a_vof, | |||
const EBCellFAB & | a_primState, | |||
const int & | a_dir, | |||
const int & | a_ivar, | |||
const bool & | a_verbose | |||
) | [private] |
void EBAdvectPatchIntegrator::doNormalDerivativeExtr2D | ( | EBCellFAB | a_primMinu[SpaceDim], | |
EBCellFAB | a_primPlus[SpaceDim], | |||
EBFaceFAB | a_fluxOne[SpaceDim], | |||
BaseIVFAB< Real > | a_coveredFluxNormMinu[SpaceDim], | |||
BaseIVFAB< Real > | a_coveredFluxNormPlus[SpaceDim], | |||
Vector< VolIndex > | a_coveredFaceNormMinu[SpaceDim], | |||
Vector< VolIndex > | a_coveredFaceNormPlus[SpaceDim], | |||
const EBCellFAB & | a_primState, | |||
const EBCellFAB & | a_source, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) | [private] |
and this is the *simplified* version
void EBAdvectPatchIntegrator::slope | ( | EBCellFAB & | a_slopePrim, | |
const EBCellFAB & | a_primState, | |||
const int & | a_dir, | |||
const Box & | a_box | |||
) | [private] |
options for 4th ordeer slopes and flattening removed
void EBAdvectPatchIntegrator::finalExtrap2D | ( | EBCellFAB | a_primMinu[SpaceDim], | |
EBCellFAB | a_primPlus[SpaceDim], | |||
const BaseIVFAB< Real > | a_coveredFluxNormMinu[SpaceDim], | |||
const BaseIVFAB< Real > | a_coveredFluxNormPlus[SpaceDim], | |||
const Vector< VolIndex > | a_coveredFaceNormMinu[SpaceDim], | |||
const Vector< VolIndex > | a_coveredFaceNormPlus[SpaceDim], | |||
const EBFaceFAB | a_fluxOne[SpaceDim], | |||
const EBCellFAB & | a_primState, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) | [private] |
void EBAdvectPatchIntegrator::finalExtrap3D | ( | EBCellFAB | a_primMinu[SpaceDim], | |
EBCellFAB | a_primPlus[SpaceDim], | |||
const BaseIVFAB< Real > | a_coveredFluxMinu3D[SpaceDim][SpaceDim], | |||
const BaseIVFAB< Real > | a_coveredFluxPlus3D[SpaceDim][SpaceDim], | |||
const EBFaceFAB | a_fluxTwo[SpaceDim][SpaceDim], | |||
const EBCellFAB & | a_primState, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) | [private] |
void EBAdvectPatchIntegrator::do111coupling | ( | EBFaceFAB | a_fluxTwo[SpaceDim][SpaceDim], | |
BaseIVFAB< Real > | a_coveredFluxMinu3D[SpaceDim][SpaceDim], | |||
BaseIVFAB< Real > | a_coveredFluxPlus3D[SpaceDim][SpaceDim], | |||
const EBCellFAB | a_primMinu[SpaceDim], | |||
const EBCellFAB | a_primPlus[SpaceDim], | |||
const BaseIVFAB< Real > | a_coveredFluxNormMinu[SpaceDim], | |||
const BaseIVFAB< Real > | a_coveredFluxNormPlus[SpaceDim], | |||
const Vector< VolIndex > | a_coveredFaceNormMinu[SpaceDim], | |||
const Vector< VolIndex > | a_coveredFaceNormPlus[SpaceDim], | |||
const EBFaceFAB | a_fluxOne[SpaceDim], | |||
const EBCellFAB & | a_primState, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) | [private] |
void EBAdvectPatchIntegrator::doNormalDerivativeExtr3D | ( | EBCellFAB | a_primMinu[SpaceDim], | |
EBCellFAB | a_primPlus[SpaceDim], | |||
EBFaceFAB | a_fluxOne[SpaceDim], | |||
BaseIVFAB< Real > | a_coveredFluxNormMinu[SpaceDim], | |||
BaseIVFAB< Real > | a_coveredFluxNormPlus[SpaceDim], | |||
Vector< VolIndex > | a_coveredFaceNormMinu[SpaceDim], | |||
Vector< VolIndex > | a_coveredFaceNormPlus[SpaceDim], | |||
const EBCellFAB & | a_primState, | |||
const EBCellFAB & | a_source, | |||
const DataIndex & | a_dit, | |||
const Real & | a_time, | |||
const Real & | a_dt | |||
) | [private] |
void EBAdvectPatchIntegrator::normalPred | ( | EBCellFAB & | a_primLo, | |
EBCellFAB & | a_primHi, | |||
const EBCellFAB & | a_primState, | |||
const EBCellFAB & | a_slopePrim, | |||
const Real & | a_scale, | |||
const int & | a_dir, | |||
const Box & | a_box | |||
) | [private] |
void EBAdvectPatchIntegrator::incrementWithSource | ( | EBCellFAB & | a_primState, | |
const EBCellFAB & | a_source, | |||
const Real & | a_scale, | |||
const Box & | a_box | |||
) | [private] |
void EBAdvectPatchIntegrator::updatePrim | ( | EBCellFAB & | a_primMinu, | |
EBCellFAB & | a_primPlus, | |||
const EBFaceFAB & | a_primFace, | |||
const BaseIVFAB< Real > & | a_coveredPrimMinu, | |||
const BaseIVFAB< Real > & | a_coveredPrimPlus, | |||
const Vector< VolIndex > & | a_coveredFaceMinu, | |||
const Vector< VolIndex > & | a_coveredFacePlus, | |||
const int & | a_faceDir, | |||
const Box & | a_box, | |||
const Real & | a_scale | |||
) | [private] |
void EBAdvectPatchIntegrator::upwindSlope | ( | EBCellFAB & | a_slopeUpWi, | |
const EBCellFAB & | a_primState, | |||
const int & | a_dir, | |||
const Box & | a_box | |||
) | [private] |
void EBAdvectPatchIntegrator::transversePred | ( | EBCellFAB & | a_rhoLo, | |
EBCellFAB & | a_rhoHi, | |||
const EBCellFAB & | a_rho, | |||
const EBCellFAB & | a_dRho, | |||
const Real & | a_dtbydx, | |||
const int & | a_dir, | |||
const Box & | a_box | |||
) | [private] |
const EBFluxFAB* EBAdvectPatchIntegrator::m_advectionVelPtr [private] |
Referenced by setVelocities().
const EBCellFAB* EBAdvectPatchIntegrator::m_normalVelPtr [private] |
Referenced by setVelocities().
bool EBAdvectPatchIntegrator::m_isVelSet [private] |
Referenced by setVelocities().
bool EBAdvectPatchIntegrator::m_isMaxMinSet [private] |
Referenced by setMaxMin().
bool EBAdvectPatchIntegrator::m_useLimiting [private] |
Real EBAdvectPatchIntegrator::m_maxVal [private] |
Referenced by setMaxMin().
Real EBAdvectPatchIntegrator::m_minVal [private] |
Referenced by setMaxMin().
RefCountedPtr<EBPhysIBC> EBAdvectPatchIntegrator::m_bc [private] |
Referenced by setEBPhysIBC().
bool EBAdvectPatchIntegrator::m_isBCSet [private] |
Referenced by setEBPhysIBC().
Box EBAdvectPatchIntegrator::m_validBox [private] |
Referenced by setEBPhysIBC().
EBISBox EBAdvectPatchIntegrator::m_ebisBox [private] |
RealVect EBAdvectPatchIntegrator::m_dx [private] |
Referenced by setEBPhysIBC().
IntVectSet EBAdvectPatchIntegrator::m_cfivs [private] |
Box EBAdvectPatchIntegrator::m_validBoxG4 [private] |
Vector<VolIndex> EBAdvectPatchIntegrator::m_irregVoFs [private] |
int EBAdvectPatchIntegrator::s_curComp [static, private] |
these exist because special things have to be done for velocity
Referenced by getCurComp(), and setCurComp().
int EBAdvectPatchIntegrator::s_doingVel [static, private] |
Referenced by getDoingVel(), and setDoingVel().