|
ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
|
AMReX EB implicit-function sign convention: >0 is body, 0 is boundary, <0 is fluid. More...
#include <ERF_EBIFTerrain.H>


Public Member Functions | |
| TerrainIF (amrex::FArrayBox const &a_z_terrain, amrex::Geometry const &a_geom, amrex::Gpu::DeviceVector< amrex::Real > &a_dz_stretched) | |
| Construct a terrain implicit function from height and geometry data. More... | |
| AMREX_GPU_HOST_DEVICE amrex::Real | operator() (AMREX_D_DECL(amrex::Real x, amrex::Real y, amrex::Real z)) const noexcept |
| Evaluate the signed implicit-function value at physical coordinates. More... | |
| AMREX_GPU_HOST_DEVICE amrex::Real | operator() (const amrex::RealArray &p) const noexcept |
| Evaluate the signed implicit-function value at a point array. More... | |
Protected Attributes | |
| amrex::Array4< amrex::Real const > | terr_arr |
| Terrain height array sampled on the horizontal mesh. More... | |
| amrex::Real const * | dz_s |
| Device pointer to stretched vertical cell sizes. More... | |
| amrex::Real | dx |
| Uniform computational grid spacing in each direction. More... | |
| amrex::Real | dy |
| Uniform computational grid spacing in y. More... | |
| amrex::Real | dz |
| Uniform computational grid spacing in z. More... | |
| amrex::Real | prob_lo_x |
| Low problem bounds used for interpolation. More... | |
| amrex::Real | prob_lo_y |
| Low problem bound in y. More... | |
| amrex::Real | prob_lo_z |
| Low problem bound in z. More... | |
| amrex::Real | prob_hi_x |
| High problem bounds used for interpolation. More... | |
| amrex::Real | prob_hi_y |
| High problem bound in y. More... | |
| int | i_hi |
| Highest terrain-array index in the x and y directions. More... | |
| int | j_hi |
| Highest terrain-array index in y. More... | |
| int | k_hi |
| Number of vertical cells (one past the highest valid dz_s index). More... | |
AMReX EB implicit-function sign convention: >0 is body, 0 is boundary, <0 is fluid.
Terrain implicit function backed by gridded terrain heights.
The operator interpolates terrain height in x-y, maps the query z coordinate through stretched vertical spacing, and returns the AMReX EB signed value.
|
inline |
Construct a terrain implicit function from height and geometry data.
| a_z_terrain | Terrain elevation values on the horizontal mesh. |
| a_geom | Geometry used for grid spacing and problem bounds. |
| a_dz_stretched | Device vector of stretched vertical cell sizes. |
|
inlinenoexcept |
Evaluate the signed implicit-function value at physical coordinates.
The coordinates are passed through AMREX_D_DECL for spatial-dimension portability.
Referenced by operator()().

|
inlinenoexcept |
Evaluate the signed implicit-function value at a point array.
| p | Physical coordinate array. |

|
protected |
Uniform computational grid spacing in each direction.
Referenced by operator()().
|
protected |
Uniform computational grid spacing in y.
Referenced by operator()().
|
protected |
Uniform computational grid spacing in z.
Referenced by operator()().
|
protected |
Device pointer to stretched vertical cell sizes.
Referenced by operator()().
|
protected |
Highest terrain-array index in the x and y directions.
Referenced by operator()().
|
protected |
Highest terrain-array index in y.
Referenced by operator()().
|
protected |
Number of vertical cells (one past the highest valid dz_s index).
Referenced by operator()().
|
protected |
High problem bounds used for interpolation.
Referenced by operator()().
|
protected |
High problem bound in y.
Referenced by operator()().
|
protected |
Low problem bounds used for interpolation.
Referenced by operator()().
|
protected |
Low problem bound in y.
Referenced by operator()().
|
protected |
Low problem bound in z.
Referenced by operator()().
|
protected |
Terrain height array sampled on the horizontal mesh.
Referenced by operator()().