2 #ifndef _PROTO_MB_MAP_OP_ 3 #define _PROTO_MB_MAP_OP_ 24 unsigned int a_focalBlock = 0);
30 unsigned int a_focalBlock = 0);
36 inline virtual void init() {}
49 inline virtual void apply(
65 inline virtual void apply(
77 "MBMapOp::apply (analytic) | Error: function not implemented in subclass");
85 "MBMapOp::inverse | Error: function not implemented in subclass");
92 "MBMapOp::inverse (analytic) | Error: function not implemented in subclass");
109 apply(a_X, a_J, a_NT);
116 inline unsigned int block()
const;
143 #include "implem/Proto_MBMapOpImplem.H" 145 #endif //end include guard MBMapOp()
Trivial Constructor.
Definition: Proto_MBMapOp.H:18
void define(Array< double, DIM > a_dx, unsigned int a_block, unsigned int a_focalBlock=0)
Lazy Constructor.
Definition: Proto_MBMapOp.H:13
BoxData< double, DIM, MEM > X(const Box &a_box, const Array< double, DIM > &a_dx) const
Get Mapped Coordinate Values.
Definition: Proto_MBMapOp.H:56
virtual void init()
User Defined Initialization.
Definition: Proto_MBMapOp.H:36
Multidimensional Rectangular Array.
Definition: Proto_BoxData.H:314
void setFocalBlock(unsigned int a_block)
Definition: Proto_MBMapOp.H:130
const Array< double, DIM > & dx() const
Get Mapped Grid Spacing.
Definition: Proto_MBMapOp.H:50
Array< double, DIM > m_dx
Grid spacing in mapped space.
Definition: Proto_MBMapOp.H:138
virtual Array< double, DIM > inverse(const Array< double, DIM > &a_x)
Analytic Inverse Map.
Definition: Proto_MBMapOp.H:90
An interval in DIM dimensional space.
Definition: Proto_Box.H:29
Definition: Proto_MBMapOp.H:13
virtual void apply(BoxData< double, DIM, MEM > &a_X, BoxData< double, 1, MEM > &a_J)
Compute Map.
Definition: Proto_MBMapOp.H:29
Stencil< double > m_c2c
Cached corners-to-cells Stencil.
Definition: Proto_MBMapOp.H:139
void _apply(BoxData< double, DIM, MEM > &a_X, BoxData< double, 1, MEM > &a_J, FluxBoxData< double, DIM, MEM > &a_NT)
Definition: Proto_MBMapOp.H:104
unsigned int m_block
Block in which this map is applied.
Definition: Proto_MBMapOp.H:140
unsigned int focalBlock() const
Definition: Proto_MBMapOp.H:133
virtual void inverse(BoxData< double, DIM, MEM > &a_XMap, const BoxData< double, DIM, MEM > &a_XCart)
Definition: Proto_MBMapOp.H:80
void _apply(BoxData< double, DIM, MEM > &a_X, BoxData< double, 1, MEM > &a_J)
Definition: Proto_MBMapOp.H:96
#define PROTO_ASSERT(stmt, args...)
Definition: Proto_PAssert.H:48
Definition: Proto_Array.H:17
unsigned int block() const
Get Block.
Definition: Proto_MBMapOp.H:53
unsigned int m_focalBlock
Block on which this map is focused (often unused)
Definition: Proto_MBMapOp.H:141
virtual Array< double, DIM > apply(const Array< double, DIM > &a_xi)
Analytic Map.
Definition: Proto_MBMapOp.H:74
Definition: Proto_BoxData.H:1436