|
| template<class T> |
| AMREX_GPU_DEVICE AMREX_FORCE_INLINE constexpr 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'.
|
| |
| template<class T> |
| AMREX_GPU_DEVICE AMREX_FORCE_INLINE constexpr 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'.
|
| |
| 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.
|
| |
| 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.
|
| |
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) |