|
template<class T > |
AMREX_GPU_DEVICE constexpr AMREX_FORCE_INLINE T | GetNeigh (const amrex::Array4< T > &arr, const int i, const int j, const int k, const int i_n, const int j_n, const int dim) |
| Get the value of arr in the neighbor (i_n, j_n) on the plane with normal 'dim'. More...
|
|
template<class T > |
AMREX_GPU_DEVICE constexpr AMREX_FORCE_INLINE void | SetNeigh (const amrex::Array4< T > &arr, const T val, const int i, const int j, const int k, const int i_n, const int j_n, const int dim) |
| Set the value of arr in the neighbor (i_n, j_n) on the plane with normal 'dim'. More...
|
|
AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real | ComputeSStab (const int i, const int j, const int k, const amrex::Array4< const amrex::Real > lx, const amrex::Array4< const amrex::Real > ly, const amrex::Array4< const amrex::Real > lz, const amrex::Real dx, const amrex::Real dy, const amrex::Real dz, const int dim) |
| Compute the minimal area for stability for the face i, j, k with normal 'dim'. More...
|
|
AMREX_GPU_DEVICE AMREX_FORCE_INLINE int | ComputeNBorrowOneFaceExtension (const amrex::Dim3 cell, const amrex::Real S_ext, const amrex::Array4< amrex::Real > &S_red, const amrex::Array4< int > &flag_info_face, const amrex::Array4< int > &flag_ext_face, const int idim) |
| For the face of cell pointing in direction idim, return the number of faces we need to intrude with the one-way extension. Returns only one or zero: one if the face can be extended with the the one-way extension, zeros if it can't. More...
|
|
AMREX_GPU_DEVICE AMREX_FORCE_INLINE int | ComputeNBorrowEightFacesExtension (const amrex::Dim3 cell, const amrex::Real S_ext, const amrex::Array4< amrex::Real > &S_red, const amrex::Array4< amrex::Real > &S, const amrex::Array4< int > &flag_info_face, const int idim) |
| For the face of cell pointing in direction idim, return the number of faces we need to intrude with the eight-ways extension. More...
|
|
Get the value of arr in the neighbor (i_n, j_n) on the plane with normal 'dim'.
I.E. If dim==0 it return arr(i, j + i_n, k + j_n),
if dim==1 it return arr(i + i_n, j, k + j_n),
if dim==2 it return arr(i + i_n, j + j_n, k)
- Parameters
-
[in] | arr | data To be accessed |
[in] | i,j,k | the indices of the "center" cell |
[in] | i_n | the offset of the neighbor in the first direction |
[in] | j_n | the offset of the neighbor in the second direction |
[in] | dim | normal direction to the plane in consideration (0 for x, 1 for y, 2 for z) |
Set the value of arr in the neighbor (i_n, j_n) on the plane with normal 'dim'.
I.E. If dim==0 it return arr(i, j + i_n, k + j_n),
if dim==1 it return arr(i + i_n, j, k + j_n),
if dim==2 it return arr(i + i_n, j + j_n, k)
- Parameters
-
[in] | arr | data to be modified |
[in] | val | the value to be set |
[in] | i,j,k | the indices of the "center" cell |
[in] | i_n | the offset of the neighbor in the first direction |
[in] | j_n | the offset of the neighbor in the second direction |
[in] | dim | normal direction to the plane in consideration (0 for x, 1 for y, 2 for z) |