2 #ifndef _PROTO_MB_BOX_OP_ 3 #define _PROTO_MB_BOX_OP_ 36 template <
typename T,
typename MAP,
62 inline virtual void init() {}
71 #if 0 //CURRENTLY UNUSED 84 const StateData& a_state,
86 T a_scale = 1.0)
const ;
98 const StateData& a_state,
99 T a_scale = 1.0)
const ;
100 #if 0 // CURRENTLY UNUSED 114 const StateData& a_state,
115 const AuxData& a_aux,
116 T a_scale = 1.0)
const ;
129 const StateData& a_state,
130 T a_scale = 1.0)
const ;
136 const StateData& a_state)
const {}
138 #if 0 //CURRENTLY UNUSED 148 inline virtual StateData
150 const StateData& a_state,
151 const AuxData& a_aux,
153 T a_scale = 1.0)
const ;
165 const StateData& a_state,
167 T a_scale = 1.0)
const ;
177 const StateData& a_state)
const;
182 StateData& a_divergence,
193 const StateData& a_state,
194 Face a_face)
const {}
206 inline virtual void flux(
208 const StateData& a_state,
209 const AuxData& a_aux,
220 inline virtual void flux(
222 const StateData& a_state,
233 inline virtual void source(
235 const StateData& a_state,
236 const AuxData& a_aux)
const ;
245 inline virtual void source(
247 const StateData& a_state)
const ;
257 inline virtual void diag(
259 const StateData& a_state,
260 const AuxData& a_aux)
const ;
269 inline virtual void diag(
271 const StateData& a_state)
const ;
283 inline unsigned int block()
const;
304 inline virtual void matchFlux(
306 const StateData& a_locFlux,
307 const StateData& a_adjFlux,
308 const StateData& a_state,
309 Point a_localDir)
const;
312 inline void matchFluxAverage(
314 const StateData& a_locFlux,
315 const StateData& a_adjFlux,
327 #include "implem/Proto_MBBoxOpImplem.H" 330 #endif // end include guard void boundaryConditions(Array< StateData, DIM > &a_fluxes, const StateData &a_state) const
Apply All Boundary Conditions.
Definition: Proto_MBBoxOp.H:136
Definition: Proto_Face.H:122
Abstract Box-Scope Operator for Mapped Multiblock.
Definition: Proto_MBBoxOp.H:38
Abstract Box-Scope Operator.
Definition: Proto_BoxOp.H:33
MBIndex index() const
Get Index.
Definition: Proto_MBBoxOp.H:266
virtual void flux(StateData &a_flux, const StateData &a_state, const AuxData &a_aux, int a_dir) const
User Defined Flux.
Definition: Proto_BoxOp.H:269
Multidimensional Rectangular Array.
Definition: Proto_BoxData.H:314
const MBLevelMap< MAP, MEM > & map() const
Get Map.
Definition: Proto_MBBoxOp.H:258
Array< T, DIM > da() const
Get Differential Area (Mapped Coordinates)
Definition: Proto_MBBoxOp.H:298
const BoxData< double, 1, MEM > & jacobian() const
Get Coordinates.
Definition: Proto_MBBoxOp.H:324
BoxData< T, C_STATE, MEM > StateData
Definition: Proto_MBBoxOp.H:41
Single Level Mapped Multiblock Map.
Definition: Proto_MBLevelBoxData.H:19
unsigned int block() const
Get Block.
Definition: Proto_MBBoxOp.H:274
MemType
Definition: Proto_MemType.H:7
const BoxData< double, DIM, MEM > & x() const
Get Coordinates.
Definition: Proto_MBBoxOp.H:316
virtual void apply(StateData &a_output, Array< StateData, DIM > &a_fluxes, const StateData &a_state) const
Definition: Proto_MBBoxOp.H:133
Array< T, DIM > dx() const
Get Grid Spacing (Mapped Coordinates)
Definition: Proto_MBBoxOp.H:290
MBBoxOp< T, MAP, C_STATE, C_AUX, MEM > & operator=(MBBoxOp< T, MAP, C_STATE, C_AUX, MEM > &&a_bop)=default
Box box() const
Get Box.
Definition: Proto_MBBoxOp.H:282
An interval in DIM dimensional space.
Definition: Proto_Box.H:29
const MBLevelMap< MAP, MEM > & m_map
Definition: Proto_MBBoxOp.H:323
void divergence(StateData &a_divergence, const Array< StateData, DIM > &a_fluxes) const
Definition: Proto_MBBoxOp.H:161
virtual void init()
Initialize.
Definition: Proto_MBBoxOp.H:62
BoxData< T, C_AUX, MEM > AuxData
Definition: Proto_MBBoxOp.H:42
MBIndex m_mbIndex
Definition: Proto_MBBoxOp.H:322
const MBDisjointBoxLayout & layout() const
Get Layout.
Definition: Proto_MBBoxOp.H:250
virtual void applyBC(Array< StateData, DIM > &a_fluxes, const StateData &a_state, Face a_face) const
Apply Boundary Condition (User Specified)
Definition: Proto_MBBoxOp.H:191
Definition: Proto_Array.H:17
A templated constant size array object similar to std::array, but with the ability to be used inside ...
Definition: Proto_Array.H:28
virtual void diag(StateData &a_diag, const StateData &a_state, const AuxData &a_aux) const
User Defined Diagonal.
Definition: Proto_BoxOp.H:329
Integer Valued Vector.
Definition: Proto_Point.H:24
Definition: Proto_MBDisjointBoxLayout.H:14
void operator()(StateData &a_output, const StateData &a_state, T a_scale=1.0) const
Apply (In Place)
Definition: Proto_MBBoxOp.H:47
#define MEMTYPE_DEFAULT
Definition: Proto_MemType.H:24
virtual void source(StateData &a_source, const StateData &a_state, const AuxData &a_aux) const
User Defined Source.
Definition: Proto_BoxOp.H:300
virtual T spectralRadius() const
Spectral Radius (User Defined)
Definition: Proto_MBBoxOp.H:69
MBBoxOp(const MBLevelMap< MAP, MEM > &a_map, const MBIndex &a_index)
Non-Trivial Constructor.
Definition: Proto_MBBoxOp.H:5