The module 'fv_nesting' is a collection of routines pertaining to grid nesting [harris2013two]. More...
Functions/Subroutines | |
subroutine, public | setup_nested_grid_bcs (npx, npy, npz, zvir, ncnst, u, v, w, pt, delp, delz, q, uc, vc, pkz, nested, inline_q, make_nh, ng, gridstruct, flagstruct, neststruct, nest_timestep, tracer_nest_timestep, domain, bd, nwat) |
The subroutine 'setup_nested_grid_BCs' fetches data from the coarse grid to set up the nested-grid boundary conditions. More... | |
subroutine | setup_pt_bc (pt_BC, pkz_BC, sphum_BC, npx, npy, npz, zvir, bd) |
subroutine | setup_pt_nh_bc (pt_BC, delp_BC, delz_BC, sphum_BC, q_BC, nq, ifdef USE_COND |
subroutine | set_nh_bcs_t0 (neststruct) |
subroutine | set_bcs_t0 (ncnst, hydrostatic, neststruct) |
subroutine, public | twoway_nesting (Atm, ngrids, grids_on_this_pe, zvir) |
The subroutine'twoway_nesting' performs a two-way update of nested-grid data onto the parent grid. More... | |
subroutine | twoway_nest_update (npx, npy, npz, zvir, ncnst, sphum, u, v, w, omga, pt, delp, q, uc, vc, pkz, delz, ps, ptop, gridstruct, flagstruct, neststruct, parent_grid, bd, conv_theta_in) |
subroutine | level_sum (q, area, domain, bd, npz, L_sum) |
subroutine | after_twoway_nest_update (npx, npy, npz, ng, ncnst, u, v, w, delz, pt, delp, q, ps, pe, pk, peln, pkz, phis, ua, va, ptop, gridstruct, flagstruct, domain, bd) |
subroutine | update_remap_tqw (npz, ak, bk, ps, delp, t, q, w, hydrostatic, kmd, ps0, zvir, ptop, nq, kord_tm, kord_tr, kord_wz, is, ie, js, je, isd, ied, jsd, jed, do_q) |
The subroutine 'update_remap_tqw' remaps (interpolated) nested-grid data to the coarse-grid's vertical coordinate. More... | |
subroutine | update_remap_uv (npz, ak, bk, ps, u, v, kmd, ps0, kord_mt, is, ie, js, je, isd, ied, jsd, jed, ptop) |
Variables | |
logical | rf_initialized = .false. |
logical | bad_range |
real, dimension(:), allocatable | rf |
real, dimension(:), allocatable | rw |
integer | kmax =1 |
real, dimension(:,:), allocatable | te_2d_coarse |
real, dimension(:,:,:), allocatable | dp1_coarse |
type(fv_nest_bc_type_3d) | u_buf |
type(fv_nest_bc_type_3d) | v_buf |
type(fv_nest_bc_type_3d) | uc_buf |
type(fv_nest_bc_type_3d) | vc_buf |
type(fv_nest_bc_type_3d) | delp_buf |
type(fv_nest_bc_type_3d) | delz_buf |
type(fv_nest_bc_type_3d) | pt_buf |
type(fv_nest_bc_type_3d) | pkz_buf |
type(fv_nest_bc_type_3d) | w_buf |
type(fv_nest_bc_type_3d) | divg_buf |
type(fv_nest_bc_type_3d), dimension(:), allocatable | q_buf |
real, dimension(:,:,:), allocatable, target | dum_west |
real, dimension(:,:,:), allocatable, target | dum_east |
real, dimension(:,:,:), allocatable, target | dum_north |
real, dimension(:,:,:), allocatable, target | dum_south |
The module 'fv_nesting' is a collection of routines pertaining to grid nesting [harris2013two].
|
private |
[in,out] | u | D grid zonal wind (m/s) |
[in,out] | v | D grid meridional wind (m/s) |
[in,out] | w | W (m/s) |
[in,out] | pt | temperature (K) |
[in,out] | delp | pressure thickness (pascal) |
[in,out] | q | specific humidity and constituents |
[in,out] | delz | delta-height (m); non-hydrostatic only |
[in,out] | ps | Surface pressure (pascal) |
[in,out] | pe | edge pressure (pascal) |
[in,out] | pk | pe**cappa |
[in,out] | peln | ln(pe) |
[in,out] | pkz | finite-volume mean pk |
[in,out] | phis | Surface geopotential (g*Z_surf) |
Definition at line 1546 of file fv_nesting.F90.
|
private |
Definition at line 1513 of file fv_nesting.F90.
|
private |
Definition at line 948 of file fv_nesting.F90.
|
private |
Definition at line 930 of file fv_nesting.F90.
subroutine, public fv_nesting_mod::setup_nested_grid_bcs | ( | integer, intent(in) | npx, |
integer, intent(in) | npy, | ||
integer, intent(in) | npz, | ||
real, intent(in) | zvir, | ||
integer, intent(in) | ncnst, | ||
real, dimension(bd%isd:bd%ied ,bd%jsd:bd%jed+1,npz), intent(inout) | u, | ||
real, dimension(bd%isd:bd%ied+1,bd%jsd:bd%jed ,npz), intent(inout) | v, | ||
real, dimension( bd%isd: ,bd%jsd: ,1:), intent(inout) | w, | ||
real, dimension( bd%isd:bd%ied ,bd%jsd:bd%jed ,npz), intent(inout) | pt, | ||
real, dimension(bd%isd:bd%ied ,bd%jsd:bd%jed ,npz), intent(inout) | delp, | ||
real, dimension(bd%isd: ,bd%jsd: ,1:), intent(inout) | delz, | ||
real, dimension( bd%isd:bd%ied ,bd%jsd:bd%jed ,npz, ncnst), intent(inout) | q, | ||
real, dimension(bd%isd:bd%ied+1,bd%jsd:bd%jed ,npz), intent(inout) | uc, | ||
real, dimension(bd%isd:bd%ied ,bd%jsd:bd%jed+1,npz), intent(inout) | vc, | ||
real, dimension (bd%is:bd%ie,bd%js:bd%je,npz), intent(inout) | pkz, | ||
logical, intent(in) | nested, | ||
logical, intent(in) | inline_q, | ||
logical, intent(in) | make_nh, | ||
integer, intent(in) | ng, | ||
type(fv_grid_type), intent(inout) | gridstruct, | ||
type(fv_flags_type), intent(inout) | flagstruct, | ||
type(fv_nest_type), intent(inout), target | neststruct, | ||
integer, intent(inout) | nest_timestep, | ||
integer, intent(inout) | tracer_nest_timestep, | ||
type(domain2d), intent(inout) | domain, | ||
type(fv_grid_bounds_type), intent(in) | bd, | ||
integer, intent(in) | nwat | ||
) |
The subroutine 'setup_nested_grid_BCs' fetches data from the coarse grid to set up the nested-grid boundary conditions.
[in,out] | u | D grid zonal wind (m/s) |
[in,out] | v | D grid meridional wind (m/s) |
[in,out] | w | W (m/s) |
[in,out] | pt | temperature (K) |
[in,out] | delp | pressure thickness (pascal) |
[in,out] | delz | height thickness (m) |
[in,out] | q | specific humidity and constituents |
[in,out] | uc | (uc,vc) mostly used as the C grid winds |
[in,out] | pkz | finite-volume mean pk |
Definition at line 163 of file fv_nesting.F90.
|
private |
Definition at line 422 of file fv_nesting.F90.
|
private |
Definition at line 531 of file fv_nesting.F90.
|
private |
[in,out] | u | D grid zonal wind (m/s) |
[in,out] | v | D grid meridional wind (m/s) |
[in,out] | w | W (m/s) |
[in,out] | omga | Vertical pressure velocity (pa/s) |
[in,out] | pt | temperature (K) |
[in,out] | delp | pressure thickness (pascal) |
[in,out] | q | specific humidity and constituents |
[in,out] | uc | (uc,vc) C grid winds |
[in,out] | pkz | finite-volume mean pk |
[in,out] | delz | delta-height (m); non-hydrostatic only |
[in,out] | ps | Surface pressure (pascal) |
Definition at line 1095 of file fv_nesting.F90.
subroutine, public fv_nesting_mod::twoway_nesting | ( | type(fv_atmos_type), dimension(ngrids), intent(inout) | Atm, |
integer, intent(in) | ngrids, | ||
logical, dimension(ngrids), intent(in) | grids_on_this_pe, | ||
real, intent(in) | zvir | ||
) |
The subroutine'twoway_nesting' performs a two-way update of nested-grid data onto the parent grid.
Definition at line 1044 of file fv_nesting.F90.
|
private |
The subroutine 'update_remap_tqw' remaps (interpolated) nested-grid data to the coarse-grid's vertical coordinate.
Definition at line 1639 of file fv_nesting.F90.
|
private |
Definition at line 1727 of file fv_nesting.F90.
logical fv_nesting_mod::bad_range |
Definition at line 132 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::delp_buf |
Definition at line 141 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::delz_buf |
Definition at line 141 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::divg_buf |
Definition at line 141 of file fv_nesting.F90.
real, dimension(:,:,:), allocatable fv_nesting_mod::dp1_coarse |
Definition at line 137 of file fv_nesting.F90.
real, dimension(:,:,:), allocatable, target fv_nesting_mod::dum_east |
Definition at line 144 of file fv_nesting.F90.
real, dimension(:,:,:), allocatable, target fv_nesting_mod::dum_north |
Definition at line 144 of file fv_nesting.F90.
real, dimension(:,:,:), allocatable, target fv_nesting_mod::dum_south |
Definition at line 144 of file fv_nesting.F90.
real, dimension(:,:,:), allocatable, target fv_nesting_mod::dum_west |
Definition at line 144 of file fv_nesting.F90.
integer fv_nesting_mod::kmax =1 |
Definition at line 134 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::pkz_buf |
Definition at line 141 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::pt_buf |
Definition at line 141 of file fv_nesting.F90.
type(fv_nest_bc_type_3d), dimension(:), allocatable fv_nesting_mod::q_buf |
Definition at line 142 of file fv_nesting.F90.
real, dimension(:), allocatable fv_nesting_mod::rf |
Definition at line 133 of file fv_nesting.F90.
logical fv_nesting_mod::rf_initialized = .false. |
Definition at line 131 of file fv_nesting.F90.
real, dimension(:), allocatable fv_nesting_mod::rw |
Definition at line 133 of file fv_nesting.F90.
real, dimension(:,:), allocatable fv_nesting_mod::te_2d_coarse |
Definition at line 136 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::u_buf |
Definition at line 141 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::uc_buf |
Definition at line 141 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::v_buf |
Definition at line 141 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::vc_buf |
Definition at line 141 of file fv_nesting.F90.
type(fv_nest_bc_type_3d) fv_nesting_mod::w_buf |
Definition at line 141 of file fv_nesting.F90.