Chombo + EB
3.0
src
EBAMRTimeDependent
ExtrapAdvectBC.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 _EXTRAPADVECTBC_H_
12
#define _EXTRAPADVECTBC_H_
13
14
#include <iostream>
15
16
#include "
LevelData.H
"
17
#include "
FArrayBox.H
"
18
#include "
Vector.H
"
19
#include "
RealVect.H
"
20
#include "
AMRIO.H
"
21
22
#include "
EBPhysIBC.H
"
23
#include "
EBPhysIBCFactory.H
"
24
#include "NamespaceHeader.H"
25
26
///uses extrapolated value in all cases
27
class
ExtrapAdvectBC
:
public
EBPhysIBC
28
{
29
public
:
30
virtual
~ExtrapAdvectBC
();
31
32
///
33
ExtrapAdvectBC
();
34
35
36
///
37
void
define
(
const
ProblemDomain
& a_domain,
38
const
RealVect
& a_dx);
39
40
/// For every box in this level, this function is called.
41
void
fluxBC
(
EBFluxFAB
& a_flux,
42
const
EBCellFAB
& a_Wcenter,
43
const
EBCellFAB
& a_Wextrap,
44
const
Side::LoHiSide
& a_sd,
45
const
Real
& a_time,
46
const
EBISBox
& a_ebisBox,
47
const
DataIndex
& a_dit,
48
const
Box
& a_box,
49
const
Box
& a_faceBox,
50
const
int
& a_dir);
51
52
/// Initialize---no op here
53
void
initialize
(
LevelData<EBCellFAB>
& a_conState,
54
const
EBISLayout
& a_ebisl)
const
;
55
56
/// Set boundary slopes --no op here
57
void
setBndrySlopes
(
EBCellFAB
& a_deltaPrim,
58
const
EBCellFAB
& a_primState,
59
const
EBISBox
& a_ebisBox,
60
const
Box
& a_box,
61
const
int
& a_dir)
62
{;}
63
64
65
protected
:
66
bool
m_isDefined
;
67
RealVect
m_dx
;
68
ProblemDomain
m_domain
;
69
70
};
71
72
73
///
74
/**
75
*/
76
class
ExtrapAdvectBCFactory
:
public
EBPhysIBCFactory
77
{
78
public
:
79
80
///
81
~
ExtrapAdvectBCFactory
();
82
83
///
84
ExtrapAdvectBCFactory
();
85
86
87
///
88
EBPhysIBC
* create()
const
;
89
90
91
};
92
93
#include "NamespaceFooter.H"
94
#endif
ProblemDomain
A class to facilitate interaction with physical boundary conditions.
Definition:
ProblemDomain.H:130
EBISBox
Definition:
EBISBox.H:46
FArrayBox.H
ExtrapAdvectBC
uses extrapolated value in all cases
Definition:
ExtrapAdvectBC.H:27
RealVect.H
ExtrapAdvectBC::setBndrySlopes
void setBndrySlopes(EBCellFAB &a_deltaPrim, const EBCellFAB &a_primState, const EBISBox &a_ebisBox, const Box &a_box, const int &a_dir)
Set boundary slopes –no op here.
Definition:
ExtrapAdvectBC.H:57
ExtrapAdvectBC::initialize
void initialize(LevelData< EBCellFAB > &a_conState, const EBISLayout &a_ebisl) const
Initialize—no op here.
ExtrapAdvectBC::m_isDefined
bool m_isDefined
Definition:
ExtrapAdvectBC.H:66
EBFluxFAB
A EBFaceFAB-like container for edge-centered fluxes.
Definition:
EBFluxFAB.H:25
ExtrapAdvectBC::m_dx
RealVect m_dx
Definition:
ExtrapAdvectBC.H:67
ExtrapAdvectBC::fluxBC
void fluxBC(EBFluxFAB &a_flux, const EBCellFAB &a_Wcenter, const EBCellFAB &a_Wextrap, const Side::LoHiSide &a_sd, const Real &a_time, const EBISBox &a_ebisBox, const DataIndex &a_dit, const Box &a_box, const Box &a_faceBox, const int &a_dir)
For every box in this level, this function is called.
LevelData< EBCellFAB >
EBPhysIBC.H
EBCellFAB
Definition:
EBCellFAB.H:29
AMRIO.H
Real
double Real
Definition:
REAL.H:33
ExtrapAdvectBC::~ExtrapAdvectBC
virtual ~ExtrapAdvectBC()
ExtrapAdvectBC::m_domain
ProblemDomain m_domain
Definition:
ExtrapAdvectBC.H:68
Side::LoHiSide
LoHiSide
Definition:
LoHiSide.H:27
EBPhysIBCFactory
Definition:
EBPhysIBCFactory.H:25
Box
A Rectangular Domain on an Integer Lattice.
Definition:
Box.H:465
RealVect
A Real vector in SpaceDim-dimensional space.
Definition:
RealVect.H:41
EBPhysIBC
Definition:
EBPhysIBC.H:27
DataIndex
Definition:
DataIndex.H:112
Vector.H
ExtrapAdvectBCFactory
Definition:
ExtrapAdvectBC.H:76
ExtrapAdvectBC::ExtrapAdvectBC
ExtrapAdvectBC()
EBISLayout
Definition:
EBISLayout.H:39
EBPhysIBCFactory.H
LevelData.H
ExtrapAdvectBC::define
void define(const ProblemDomain &a_domain, const RealVect &a_dx)
Generated by
1.8.13