|
| | MBBoxOp (const MBLevelMap< MAP, MEM > &a_map, const MBIndex &a_index) |
| | Non-Trivial Constructor. More...
|
| |
| | MBBoxOp (MBBoxOp< T, MAP, C_STATE, C_AUX, MEM > &&a_bop)=default |
| |
| MBBoxOp< T, MAP, C_STATE, C_AUX, MEM > & | operator= (MBBoxOp< T, MAP, C_STATE, C_AUX, MEM > &&a_bop)=default |
| |
| virtual void | init () |
| | Initialize. More...
|
| |
| virtual T | spectralRadius () const |
| | Spectral Radius (User Defined) More...
|
| |
| void | operator() (StateData &a_output, const StateData &a_state, T a_scale=1.0) const |
| | Apply (In Place) More...
|
| |
| void | operator() (StateData &a_output, Array< StateData, DIM > &a_fluxes, const StateData &a_state, T a_scale=1.0) const |
| | Apply (In Place, Flux Output) More...
|
| |
| virtual void | apply (StateData &a_output, Array< StateData, DIM > &a_fluxes, const StateData &a_state) const |
| |
| StateData | operator() (const StateData &a_state, Box a_range, T a_scale=1.0) const |
| | Apply (Out of Place) More...
|
| |
| void | boundaryConditions (Array< StateData, DIM > &a_fluxes, const StateData &a_state) const |
| | Apply All Boundary Conditions. More...
|
| |
| void | divergence (StateData &a_divergence, const Array< StateData, DIM > &a_fluxes) const |
| |
| virtual void | applyBC (Array< StateData, DIM > &a_fluxes, const StateData &a_state, Face a_face) const |
| | Apply Boundary Condition (User Specified) More...
|
| |
| const MBLevelMap< MAP, MEM > & | map () const |
| | Get Map. More...
|
| |
| MBIndex | index () const |
| | Get Index. More...
|
| |
| const MBDisjointBoxLayout & | layout () const |
| | Get Layout. More...
|
| |
| unsigned int | block () const |
| | Get Block. More...
|
| |
| Box | box () const |
| | Get Box. More...
|
| |
| Array< T, DIM > | dx () const |
| | Get Grid Spacing (Mapped Coordinates) More...
|
| |
| Array< T, DIM > | da () const |
| | Get Differential Area (Mapped Coordinates) More...
|
| |
| const BoxData< double, DIM, MEM > & | x () const |
| | Get Coordinates. More...
|
| |
| const BoxData< double, 1, MEM > & | jacobian () const |
| | Get Coordinates. More...
|
| |
| | BoxOp () |
| | Default Constructor. More...
|
| |
| | BoxOp (const DisjointBoxLayout &a_layout, const LevelIndex &a_index, T a_dx) |
| | Non-Trivial Isotropic Constructor. More...
|
| |
| | BoxOp (const DisjointBoxLayout &a_layout, const LevelIndex &a_index, Array< T, DIM > a_dx) |
| | Non-Trivial Anisotropic Constructor. More...
|
| |
| | BoxOp (BoxOp< T, C_STATE, C_AUX, MEM > &&a_bop)=default |
| |
| BoxOp< T, C_STATE, C_AUX, MEM > & | operator= (BoxOp< T, C_STATE, C_AUX, MEM > &&a_bop)=default |
| |
| void | define (const DisjointBoxLayout &a_layout, const LevelIndex &a_index, T a_dx) |
| | Lazy Isotropic Constructor. More...
|
| |
| void | define (const DisjointBoxLayout &a_layout, const LevelIndex &a_index, Array< T, DIM > a_dx) |
| | Lazy Anisotropic Constructor. More...
|
| |
| virtual void | operator() (StateData &a_output, const StateData &a_state, const AuxData &a_aux, T a_scale=1.0) const |
| | Apply (In Place) More...
|
| |
| virtual void | operator() (StateData &a_output, Array< StateData, DIM > &a_fluxes, const StateData &a_state, const AuxData &a_aux, T a_scale=1.0) const |
| | Apply (In Place, Flux Output) More...
|
| |
| virtual StateData | operator() (const StateData &a_state, const AuxData &a_aux, Box a_range, T a_scale=1.0) const |
| | Apply (Out of Place) More...
|
| |
| void | applyBC (Array< StateData, DIM > &a_fluxes, const StateData &a_state) const |
| | Apply All Boundary Conditions. More...
|
| |
| virtual void | flux (StateData &a_flux, const StateData &a_state, const AuxData &a_aux, int a_dir) const |
| | User Defined Flux. More...
|
| |
| virtual void | flux (StateData &a_flux, const StateData &a_state, int a_dir) const |
| | User Defined Flux. More...
|
| |
| virtual void | source (StateData &a_source, const StateData &a_state, const AuxData &a_aux) const |
| | User Defined Source. More...
|
| |
| virtual void | source (StateData &a_source, const StateData &a_state) const |
| | User Defined Source. More...
|
| |
| virtual void | diag (StateData &a_diag, const StateData &a_state, const AuxData &a_aux) const |
| | User Defined Diagonal. More...
|
| |
| virtual void | diag (StateData &a_diag, const StateData &a_state) const |
| | User Defined Diagonal. More...
|
| |
| void | setDiagScale (T a_value) |
| | TODO: not implemented (see MMB version which has this implemented) More...
|
| |
| void | setFluxScale (T a_value) |
| | Set Flux Term Scaling. More...
|
| |
| void | setTime (T a_time) |
| | Set Time. More...
|
| |
| void | setRKStage (unsigned int a_stage) |
| | Set Runge Kutta Stage. More...
|
| |
| T | diagScale () const |
| | Read Diagonal Term Scaling. More...
|
| |
| T | fluxScale () const |
| | Read Flux Term Scaling. More...
|
| |
| unsigned int | RKStage () const |
| | Read Flux Term Scaling. More...
|
| |
| T | time () const |
| | Get Time. More...
|
| |
| Array< T, DIM > | dx () const |
| | Get Grid Spacing. More...
|
| |
| T | dxMin () const |
| | Get Min Grid Spacing. More...
|
| |
| T | dxMax () const |
| | Get Max Grid Spacing. More...
|
| |
| const LevelIndex & | index () const |
| | Get Index. More...
|
| |
| const DisjointBoxLayout & | layout () const |
| | Get Layout. More...
|
| |
| const Box & | box () const |
| | Get Box. More...
|
| |
template<typename T, typename MAP, unsigned int C_STATE, unsigned int C_AUX, MemType MEM = MEMTYPE_DEFAULT>
class Proto::MBBoxOp< T, MAP, C_STATE, C_AUX, MEM >
Abstract Box-Scope Operator for Mapped Multiblock.
MBBoxOp is the class from which all mapped multiblock operators are derived. It is a special case of BoxOp with additional built in capabilities for providing mapped coordinate context.
FIXME: update this for mapped L(phi, rho) = d*D(phi, rho)*I + f*[Div(F(phi, rho)) + S(phi, rho)] L: Full Operator phi: State Variables rho: Auxiliary Variables D: Diagonal Component of L F: Flux Component of L S: Source Component of L I: Identity d: Diagonal Term Scaling f: Flux and Source Term Scaling
TODO: potentially template the op on the data-holder itself (e.g. BoxData) for additional flexibility.
- Template Parameters
-
| T | Datatype of the data holder (e.g. int, double, etc.) |
| MAP | Datatype of the MBMapOp (this is the same as the MBLevelMap's MAP parameter) |
| C_STATE | Number of state variables |
| C_AUX | Number of auxiliary (non-state) variables |
| MEM | Proto::MemType of the data holder |