|
ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
|
Functions | |
| AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void | perturb_temperature_and_vapour (const amrex::Real rho, const amrex::Real rhotheta, const amrex::Real rhoqv, const amrex::Real dT, const amrex::Real dqv, const bool perturb_T, const bool moist, const amrex::Real rdOcp, amrex::Real &drho, amrex::Real &drhoqv) noexcept |
Initial temperature and vapour perturbations of a moist column, applied together.
Shared by the BOMEX, GATE and RICO setups (and DYCOMS, which uses the RICO one). rho*theta is held, so the temperature perturbation is stored as a density change; the vapour mixing ratio after the perturbation is qv + dqv, whatever the density.
|
noexcept |
Perturbation of rho and rho*qv for a temperature change dT and a vapour change dqv.
With perturb_T, the new density gives T = T_old + dT at the pressure of the new state, P(rho*theta, qv + dqv); with dqv = 0 that is the old pressure. Without perturb_T the density is left as it is. rho*qv then holds qv + dqv on the new density.
| [in] | rho | dry density of the unperturbed state |
| [in] | rhotheta | rho*theta of the unperturbed state (held) |
| [in] | rhoqv | rho*qv of the unperturbed state (0 without moisture) |
| [in] | dT | temperature change [K] |
| [in] | dqv | vapour mixing ratio change |
| [in] | perturb_T | whether the temperature is perturbed |
| [in] | moist | whether a moisture model is active |
| [in] | rdOcp | R_d / c_p |
| [out] | drho | perturbation of rho |
| [out] | drhoqv | perturbation of rho*qv (0 without moisture) |
Referenced by ParallelForRNG().

