|
ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
|
#include <AMReX_REAL.H>#include <AMReX_GpuQualifiers.H>#include <AMReX_Algorithm.H>

Go to the source code of this file.
Classes | |
| struct | RibCrossing |
Functions | |
| template<typename RibAt , typename ZAt > | |
| AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE RibCrossing | find_rib_crossing (int ksrf, int khi, amrex::Real Ribcr, RibAt const &rib_at, ZAt const &z_at, amrex::Real pblh_min, amrex::Real pblh_max) noexcept |
|
noexcept |
Find the PBL height where the bulk Richardson number first reaches Ribcr, scanning one column from its surface cell ksrf up to the top cell khi (YSU, Hong et al. 2006; WRF bl_ysu.F90, the "brint" interpolation).
Every height is then kept in [pblh_min, pblh_max] in that order, so pblh_min wins when a shallow column has pblh_max < pblh_min.
| [in] | ksrf | first fluid cell of the column |
| [in] | khi | top cell of the scan |
| [in] | Ribcr | critical bulk Richardson number |
| [in] | rib_at | callable, rib_at(k) gives the bulk Richardson number at level k |
| [in] | z_at | callable, z_at(k) gives the height of level k |
| [in] | pblh_min | lower bound on the height |
| [in] | pblh_max | upper bound on the height |
Referenced by ComputeDiffusivityYSUNew().
