Collects various functions to operate on the RBox structure.
More...
|
void | RBoxCopy (RBox *box, Data_Arr Q_dst, Data_Arr Q_src, int nvar, char order) |
|
void | RBoxDefine (int ib, int ie, int jb, int je, int kb, int ke, int vpos, RBox *box) |
|
void | RBoxEnlarge (RBox *box, int di, int dj, int dk) |
|
void | RBoxSetDirections (RBox *box, int dir) |
|
- RBoxDefine() is used to set the box extent in terms of six indices (beg..end for each direction) and the variable location inside the cell.
- RBoxSetDirections() is used to set normal, tangent and binormal indices with respect to the specified (sweeping) direction. The convention is here respects the fastest running index,
(i,j,k) -> (j,i,k) -> (k,i,j)
. Useful for sweeping along different directions during the time stepping routines.
- Author
- A. Mignone (migno.nosp@m.ne@t.nosp@m.o.inf.nosp@m.n.it)
- Date
- June 21, 2019
◆ RBoxCopy()
void RBoxCopy |
( |
RBox * |
box, |
|
|
Data_Arr |
Q_dst, |
|
|
Data_Arr |
Q_src, |
|
|
int |
nvar, |
|
|
char |
order |
|
) |
| |
Copy 3D arrays on a RBox.
- Parameters
-
[in] | box | the box where the copy takes place. A NULL pointer implies the total domain. |
[out] | Q_dst | The array where data is copied to. |
[in] | Q_src | The array where data is copied from. |
[in] | nvar | the number of variables |
[in] | order | the array ordering (either CONS_ARRAY or PRIM_ARRAY). |
◆ RBoxDefine()
void RBoxDefine |
( |
int |
ib, |
|
|
int |
ie, |
|
|
int |
jb, |
|
|
int |
je, |
|
|
int |
kb, |
|
|
int |
ke, |
|
|
int |
vpos, |
|
|
RBox * |
box |
|
) |
| |
- Parameters
-
[in] | ib | leftmost index in the X1 direction |
[in] | ie | rightmost index in the X1 direction |
[in] | jb | leftmost index in the X2 direction |
[in] | je | rightmost index in the X2 direction |
[in] | kb | leftmost index in the X3 direction |
[in] | ke | rightmost index in the X3 direction |
[in] | vpos | the variable location inside the cell (CENTER/X1FACE/.../X3FACE) |
[out] | box | pointer to a RBox structure |
◆ RBoxEnlarge()
void RBoxEnlarge |
( |
RBox * |
box, |
|
|
int |
di, |
|
|
int |
dj, |
|
|
int |
dk |
|
) |
| |
Increase the size of the box by di, dj, dk in the three directions. Enlargment of the box in a given direction is permitted only if that dimension is enabled.
- Parameters
-
[in] | di | leftmost index in the X1 direction |
[in] | dj | leftmost index in the X2 direction |
[in] | dk | leftmost index in the X3 direction |
[out] | box | pointer to a RBox structure |
◆ RBoxSetDirections()
void RBoxSetDirections |
( |
RBox * |
box, |
|
|
int |
dir |
|
) |
| |
Set normal, tangent and binormal directions while sweeping across a box using the BOX_TRANSVERSE_LOOP macro;
- Parameters
-
[in,out] | box | pointer to a RBox structure |
[in] | dir | the sweeping direction giving the normal direction and respect to which assign the tangent and binormal indices. |