The module 'nh_utils' peforms non-hydrostatic computations. More...
Functions/Subroutines | |
subroutine, public | update_dz_c (is, ie, js, je, km, ng, dt, dp0, zs, area, ut, vt, gz, ws, npx, npy, sw_corner, se_corner, ne_corner, nw_corner, bd, grid_type) |
subroutine, public | update_dz_d (ndif, damp, hord, is, ie, js, je, km, ng, npx, npy, area, rarea, dp0, zs, zh, crx, cry, xfx, yfx, delz, ws, rdt, gridstruct, bd, lim_fac, regional) |
subroutine, public | riem_solver_c (ms, dt, is, ie, js, je, km, ng, akap, cappa, cp, ptop, hs, w3, pt, q_con, delp, gz, pef, ws, p_fac, a_imp, scale_m) |
subroutine | riem_solver3test (ms, dt, is, ie, js, je, km, ng, isd, ied, jsd, jed, akap, cappa, cp, ptop, zs, q_con, w, delz, pt, delp, zh, pe, ppe, pk3, pk, peln, ws, scale_m, p_fac, a_imp, use_logp, last_call, fp_out) |
GFDL - This routine will not give absoulte reproducibility when compiled with -fast-transcendentals. GFDL - It is now inside of nh_core.F90 and being compiled without -fast-transcendentals. More... | |
subroutine | imp_diff_w (j, is, ie, js, je, ng, km, cd, delz, ws, w, w3) |
subroutine, public | rim_2d (ms, bdt, is, ie, km, rgas, gama, gm2, pe2, dm2, pm2, w2, dz2, pt2, ws, c_core) |
subroutine, public | sim3_solver (dt, is, ie, km, rgas, gama, kappa, pe2, dm, pem, w2, dz2, pt2, ws, alpha, p_fac, scale_m) |
subroutine, public | sim3p0_solver (dt, is, ie, km, rgas, gama, kappa, pe2, dm, pem, w2, dz2, pt2, ws, p_fac, scale_m) |
subroutine, public | sim1_solver (dt, is, ie, km, rgas, gama, gm2, cp2, kappa, pe, dm2, pm2, pem, w2, dz2, pt2, ws, p_fac) |
subroutine, public | sim_solver (dt, is, ie, km, rgas, gama, gm2, cp2, kappa, pe2, dm2, pm2, pem, w2, dz2, pt2, ws, alpha, p_fac, scale_m) |
subroutine | edge_scalar (q1, qe, i1, i2, km, id) |
subroutine | edge_profile (q1, q2, q1e, q2e, i1, i2, j1, j2, j, km, dp0, uniform_grid, limiter) |
subroutine, public | nest_halo_nh (ptop, grav, kappa, cp, delp, delz, pt, phis, pkc, gz, pk3, npx, npy, npz, nested, pkc_pertn, computepk3, fullhalo, bd, regional) |
Variables | |
real, parameter | dz_min = 2. |
real, parameter | r3 = 1./3. |
The module 'nh_utils' peforms non-hydrostatic computations.
|
private |
Definition at line 1791 of file nh_utils.F90.
|
private |
Definition at line 1741 of file nh_utils.F90.
|
private |
[in] | delz | delta-height (m) |
[in] | w | vertical vel. (m/s) |
Definition at line 680 of file nh_utils.F90.
subroutine, public nh_utils_mod::nest_halo_nh | ( | real, intent(in) | ptop, |
real, intent(in) | grav, | ||
real, intent(in) | kappa, | ||
real, intent(in) | cp, | ||
real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed,npz), intent(in) | delp, | ||
real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed,npz), intent(in) | delz, | ||
real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed,npz), intent(in) | pt, | ||
real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed), intent(in) | phis, | ||
real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed,npz+1), intent(inout) | pkc, | ||
real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed,npz+1), intent(inout) | gz, | ||
real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed,npz+1), intent(inout) | pk3, | ||
integer, intent(in) | npx, | ||
integer, intent(in) | npy, | ||
integer, intent(in) | npz, | ||
logical, intent(in) | nested, | ||
logical, intent(in) | pkc_pertn, | ||
logical, intent(in) | computepk3, | ||
logical, intent(in) | fullhalo, | ||
type(fv_grid_bounds_type), intent(in) | bd, | ||
logical, intent(in) | regional | ||
) |
Definition at line 1910 of file nh_utils.F90.
|
private |
GFDL - This routine will not give absoulte reproducibility when compiled with -fast-transcendentals. GFDL - It is now inside of nh_core.F90 and being compiled without -fast-transcendentals.
Definition at line 483 of file nh_utils.F90.
subroutine, public nh_utils_mod::riem_solver_c | ( | integer, intent(in) | ms, |
real, intent(in) | dt, | ||
integer, intent(in) | is, | ||
integer, intent(in) | ie, | ||
integer, intent(in) | js, | ||
integer, intent(in) | je, | ||
integer, intent(in) | km, | ||
integer, intent(in) | ng, | ||
real, intent(in) | akap, | ||
real, dimension(is-ng:,js-ng:,1:), intent(in) | cappa, | ||
real, intent(in) | cp, | ||
real, intent(in) | ptop, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in) | hs, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in) | w3, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in) | pt, | ||
real, dimension(is-ng:,js-ng:,1:), intent(in) | q_con, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in) | delp, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km+1), intent(inout) | gz, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km+1), intent(out) | pef, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in) | ws, | ||
real, intent(in) | p_fac, | ||
real, intent(in) | a_imp, | ||
real, intent(in) | scale_m | ||
) |
Definition at line 338 of file nh_utils.F90.
subroutine, public nh_utils_mod::rim_2d | ( | integer, intent(in) | ms, |
real, intent(in) | bdt, | ||
integer, intent(in) | is, | ||
integer, intent(in) | ie, | ||
integer, intent(in) | km, | ||
real, intent(in) | rgas, | ||
real, intent(in) | gama, | ||
real, dimension(is:ie,km), intent(in) | gm2, | ||
real, dimension(is:ie,km+1), intent(out) | pe2, | ||
real, dimension(is:ie,km), intent(in) | dm2, | ||
real, dimension(is:ie,km), intent(in) | pm2, | ||
real, dimension(is:ie,km), intent(inout) | w2, | ||
real, dimension(is:ie,km), intent(inout) | dz2, | ||
real, dimension(is:ie,km), intent(in) | pt2, | ||
real, dimension(is:ie), intent(in) | ws, | ||
logical, intent(in) | c_core | ||
) |
Definition at line 747 of file nh_utils.F90.
subroutine, public nh_utils_mod::sim1_solver | ( | real, intent(in) | dt, |
integer, intent(in) | is, | ||
integer, intent(in) | ie, | ||
integer, intent(in) | km, | ||
real, intent(in) | rgas, | ||
real, intent(in) | gama, | ||
real, dimension(is:ie,km), intent(in) | gm2, | ||
real, dimension(is:ie,km), intent(in) | cp2, | ||
real, intent(in) | kappa, | ||
real, dimension(is:ie,km+1), intent(out) | pe, | ||
real, dimension(is:ie,km), intent(in) | dm2, | ||
real, dimension(is:ie,km), intent(in) | pm2, | ||
real, dimension(is:ie,km+1), intent(in) | pem, | ||
real, dimension(is:ie,km), intent(inout) | w2, | ||
real, dimension(is:ie,km), intent(inout) | dz2, | ||
real, dimension(is:ie,km), intent(in) | pt2, | ||
real, dimension(is:ie), intent(in) | ws, | ||
real, intent(in) | p_fac | ||
) |
Definition at line 1379 of file nh_utils.F90.
subroutine, public nh_utils_mod::sim3_solver | ( | real, intent(in) | dt, |
integer, intent(in) | is, | ||
integer, intent(in) | ie, | ||
integer, intent(in) | km, | ||
real, intent(in) | rgas, | ||
real, intent(in) | gama, | ||
real, intent(in) | kappa, | ||
real, dimension(is:ie,km+1), intent(out) | pe2, | ||
real, dimension(is:ie,km), intent(in) | dm, | ||
real, dimension(is:ie,km+1), intent(in) | pem, | ||
real, dimension(is:ie,km), intent(inout) | w2, | ||
real, dimension(is:ie,km), intent(inout) | dz2, | ||
real, dimension(is:ie,km), intent(in) | pt2, | ||
real, dimension(is:ie), intent(in) | ws, | ||
real, intent(in) | alpha, | ||
real, intent(in) | p_fac, | ||
real, intent(in) | scale_m | ||
) |
Definition at line 1012 of file nh_utils.F90.
subroutine, public nh_utils_mod::sim3p0_solver | ( | real, intent(in) | dt, |
integer, intent(in) | is, | ||
integer, intent(in) | ie, | ||
integer, intent(in) | km, | ||
real, intent(in) | rgas, | ||
real, intent(in) | gama, | ||
real, intent(in) | kappa, | ||
real, dimension(is:ie,km+1), intent(out) | pe2, | ||
real, dimension(is:ie,km), intent(in) | dm, | ||
real, dimension(is:ie,km+1), intent(in) | pem, | ||
real, dimension(is:ie,km), intent(inout) | w2, | ||
real, dimension(is:ie,km), intent(inout) | dz2, | ||
real, dimension(is:ie,km), intent(in) | pt2, | ||
real, dimension(is:ie), intent(in) | ws, | ||
real, intent(in) | p_fac, | ||
real, intent(in) | scale_m | ||
) |
Definition at line 1199 of file nh_utils.F90.
subroutine, public nh_utils_mod::sim_solver | ( | real, intent(in) | dt, |
integer, intent(in) | is, | ||
integer, intent(in) | ie, | ||
integer, intent(in) | km, | ||
real, intent(in) | rgas, | ||
real, intent(in) | gama, | ||
real, dimension(is:ie,km), intent(in) | gm2, | ||
real, dimension(is:ie,km), intent(in) | cp2, | ||
real, intent(in) | kappa, | ||
real, dimension(is:ie,km+1), intent(out) | pe2, | ||
real, dimension(is:ie,km), intent(in) | dm2, | ||
real, dimension(is:ie,km), intent(in) | pm2, | ||
real, dimension(is:ie,km+1), intent(in) | pem, | ||
real, dimension(is:ie,km), intent(inout) | w2, | ||
real, dimension(is:ie,km), intent(inout) | dz2, | ||
real, dimension(is:ie,km), intent(in) | pt2, | ||
real, dimension(is:ie), intent(in) | ws, | ||
real, intent(in) | alpha, | ||
real, intent(in) | p_fac, | ||
real, intent(in) | scale_m | ||
) |
Definition at line 1550 of file nh_utils.F90.
subroutine, public nh_utils_mod::update_dz_c | ( | integer, intent(in) | is, |
integer, intent(in) | ie, | ||
integer, intent(in) | js, | ||
integer, intent(in) | je, | ||
integer, intent(in) | km, | ||
integer, intent(in) | ng, | ||
real, intent(in) | dt, | ||
real, dimension(km), intent(in) | dp0, | ||
real, dimension(is-ng:ie+ng, js-ng:je+ng), intent(in) | zs, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in) | area, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in) | ut, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in) | vt, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km+1), intent(inout) | gz, | ||
real, dimension(is-ng:ie+ng, js-ng:je+ng), intent(out) | ws, | ||
integer, intent(in) | npx, | ||
integer, intent(in) | npy, | ||
logical, intent(in) | sw_corner, | ||
logical, intent(in) | se_corner, | ||
logical, intent(in) | ne_corner, | ||
logical, intent(in) | nw_corner, | ||
type(fv_grid_bounds_type), intent(in) | bd, | ||
integer, intent(in) | grid_type | ||
) |
Definition at line 76 of file nh_utils.F90.
subroutine, public nh_utils_mod::update_dz_d | ( | integer, dimension(km+1), intent(inout) | ndif, |
real, dimension(km+1), intent(inout) | damp, | ||
integer, intent(in) | hord, | ||
integer, intent(in) | is, | ||
integer, intent(in) | ie, | ||
integer, intent(in) | js, | ||
integer, intent(in) | je, | ||
integer, intent(in) | km, | ||
integer, intent(in) | ng, | ||
integer, intent(in) | npx, | ||
integer, intent(in) | npy, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in) | area, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in) | rarea, | ||
real, dimension(km), intent(in) | dp0, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in) | zs, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km+1), intent(inout) | zh, | ||
real, dimension(is:ie+1,js-ng:je+ng,km), intent(inout) | crx, | ||
real, dimension(is-ng:ie+ng,js:je+1,km), intent(inout) | cry, | ||
real, dimension(is:ie+1,js-ng:je+ng,km), intent(inout) | xfx, | ||
real, dimension(is-ng:ie+ng,js:je+1,km), intent(inout) | yfx, | ||
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(out) | delz, | ||
real, dimension(is:ie,js:je), intent(out) | ws, | ||
real, intent(in) | rdt, | ||
type(fv_grid_type), intent(in), target | gridstruct, | ||
type(fv_grid_bounds_type), intent(in) | bd, | ||
real, intent(in) | lim_fac, | ||
logical, intent(in) | regional | ||
) |
Definition at line 216 of file nh_utils.F90.
|
private |
Definition at line 69 of file nh_utils.F90.
|
private |
Definition at line 70 of file nh_utils.F90.