Chombo + EB  3.2
NeumannViscousTensorEBBC.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 _NEUMANNVISCOUSTENSOREBBC_H_
12 #define _NEUMANNVISCOUSTENSOREBBC_H_
13 
14 #include "RefCountedPtr.H"
15 
16 #include "BaseEBBC.H"
17 #include "BaseBCFuncEval.H"
18 #include "NamespaceHeader.H"
19 
20 ///
21 /**
22  */
24 {
25 public:
26  ///
27  /**
28  */
29  virtual void define(const LayoutData<IntVectSet>& a_cfivs,
30  const Real& a_factor)
31  {
32  }
33 
34 
35  virtual void applyEBFlux(EBCellFAB& a_lphi,
36  const EBCellFAB& a_phi,
37  VoFIterator& a_vofit,
38  const LayoutData<IntVectSet>& a_cfivs,
39  const DataIndex& a_dit,
40  const RealVect& a_probLo,
41  const RealVect& a_dx,
42  const Real& a_factor,
43  const bool& a_useHomogeneous,
44  const Real& a_time);
45  ///
46  /**
47  */
49  const EBISLayout& a_layout,
50  const RealVect& a_dx,
51  const IntVect* a_ghostCellsPhi,
52  const IntVect* a_ghostCellsRhs);
53 
54 
55  //no homogeneous stencil.
57  {
58  return NULL;
59  }
60 
61  ///
62  /**
63  */
64  virtual ~NeumannViscousTensorEBBC();
65 
66 
67  ///
68  /**
69  deprecated
70  */
71  virtual void getEBFlux(Real& a_flux,
72  const VolIndex& a_vof,
73  const LevelData<EBCellFAB>& a_phi,
74  const LayoutData<IntVectSet>& a_cfivs,
75  const DataIndex& a_dit,
76  const RealVect& a_probLo,
77  const RealVect& a_dx,
78  const bool& a_useHomogeneous,
79  const Real& a_time,
80  const pair<int,Real>* a_cacheHint=0 )
81  {
82  MayDay::Error();
83  }
84 
86  {
87  }
88 
89 private:
90 };
91 
92 ///
93 /**
94  */
96 {
97 public:
98  ///
99  /**
100  */
102  {;}
103 
104  ///
105  /**
106  */
108  {;}
109 
110  ///
111  /**
112  */
113  virtual void setValue(Real a_value);
114 
115  ///
116  /**
117  */
118  virtual void setFunction(RefCountedPtr<BaseBCFuncEval> a_flux);
119 
120  ///
121  /**
122  */
123  virtual NeumannViscousTensorEBBC* create(const ProblemDomain& a_domain,
124  const EBISLayout& a_layout,
125  const RealVect& a_dx,
126  const IntVect* a_ghostCellsPhi=0,
127  const IntVect* a_ghostCellsRhs=0);
128 
129 private:
133 
134 };
135 
136 #include "NamespaceFooter.H"
137 #endif
virtual ~NeumannViscousTensorEBBC()
NeumannViscousTensorEBBC()
Definition: NeumannViscousTensorEBBC.H:85
Definition: NeumannViscousTensorEBBC.H:95
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
Definition: NeumannViscousTensorEBBC.H:23
virtual void define(const LayoutData< IntVectSet > &a_cfivs, const Real &a_factor)
Definition: NeumannViscousTensorEBBC.H:29
NeumannViscousTensorEBBCFactory()
Definition: NeumannViscousTensorEBBC.H:101
virtual void setValue(Real a_value)
Definition: BaseEBBC.H:149
virtual void getEBFlux(Real &a_flux, const VolIndex &a_vof, const LevelData< EBCellFAB > &a_phi, const LayoutData< IntVectSet > &a_cfivs, const DataIndex &a_dit, const RealVect &a_probLo, const RealVect &a_dx, const bool &a_useHomogeneous, const Real &a_time, const pair< int, Real > *a_cacheHint=0)
Definition: NeumannViscousTensorEBBC.H:71
virtual ~NeumannViscousTensorEBBCFactory()
Definition: NeumannViscousTensorEBBC.H:107
RefCountedPtr< BaseBCFuncEval > m_func
Definition: NeumannViscousTensorEBBC.H:132
Definition: EBCellFAB.H:29
double Real
Definition: REAL.H:33
bool m_isFunction
Definition: NeumannViscousTensorEBBC.H:130
Definition: BaseEBBC.H:109
static void Error(const char *const a_msg=m_nullString, int m_exitCode=CH_DEFAULT_ERROR_CODE)
Print out message to cerr and exit with the specified exit code.
Real m_value
Definition: NeumannViscousTensorEBBC.H:131
A Real vector in SpaceDim-dimensional space.
Definition: RealVect.H:41
Definition: DataIndex.H:112
Definition: BaseEBBC.H:315
Iterator for all vofs within an IntVectSet and an Ebgraph.
Definition: VoFIterator.H:27
virtual void applyEBFlux(EBCellFAB &a_lphi, const EBCellFAB &a_phi, VoFIterator &a_vofit, const LayoutData< IntVectSet > &a_cfivs, const DataIndex &a_dit, const RealVect &a_probLo, const RealVect &a_dx, const Real &a_factor, const bool &a_useHomogeneous, const Real &a_time)
An integer Vector in SpaceDim-dimensional space.
Definition: CHArray.H:42
virtual LayoutData< BaseIVFAB< VoFStencil > > * getFluxStencil(int ivar)
Definition: NeumannViscousTensorEBBC.H:56
virtual void setFunction(RefCountedPtr< BaseBCFuncEval > a_func)
Definition: BaseEBBC.H:161
Volume of Fluid Index.
Definition: VolIndex.H:31
Definition: EBISLayout.H:39