FV3 Bundle
sw_core_adm.F90 File Reference

Go to the source code of this file.

Modules

module  sw_core_adm_mod
 

Functions/Subroutines

subroutine, public sw_core_adm_mod::c_sw_fwd (delpc, delp, ptc, pt, u, v, w, uc, vc, ua, va, wc, ut, vt, divg_d, nord, dt2, hydrostatic, dord4, bd, gridstruct, flagstruct)
 
subroutine, public sw_core_adm_mod::c_sw_bwd (delpc, delpc_ad, delp, delp_ad, ptc, ptc_ad, pt, pt_ad, u, u_ad, v, v_ad, w, w_ad, uc, uc_ad, vc, vc_ad, ua, ua_ad, va, va_ad, wc, wc_ad, ut, ut_ad, vt, vt_ad, divg_d, divg_d_ad, nord, dt2, hydrostatic, dord4, bd, gridstruct, flagstruct)
 
subroutine, public sw_core_adm_mod::c_sw (delpc, delp, ptc, pt, u, v, w, uc, vc, ua, va, wc, ut, vt, divg_d, nord, dt2, hydrostatic, dord4, bd, gridstruct, flagstruct)
 
subroutine, public sw_core_adm_mod::d_sw_fwd (delpc, delp, ptc, pt, u, v, w, uc, vc, ua, va, divg_d, xflux, yflux, cx, cy, crx_adv, cry_adv, xfx_adv, yfx_adv, q_con, z_rat, kgb, heat_source, dpx, zvir, sphum, nq, q, k, km, inline_q, dt, hord_tr, hord_mt, hord_vt, hord_tm, hord_dp, nord, nord_v, nord_w, nord_t, dddmp, d2_bg, d4_bg, damp_v, damp_w, damp_t, d_con, hydrostatic, gridstruct, flagstruct, bd, hord_tr_pert, hord_mt_pert, hord_vt_pert, hord_tm_pert, hord_dp_pert, split_damp, nord_pert, nord_v_pert, nord_w_pert, nord_t_pert, dddmp_pert, d2_bg_pert, d4_bg_pert, damp_v_pert, damp_w_pert, damp_t_pert)
 
subroutine, public sw_core_adm_mod::d_sw_bwd (delpc, delpc_ad, delp, delp_ad, ptc, ptc_ad, pt, pt_ad, u, u_ad, v, v_ad, w, w_ad, uc, uc_ad, vc, vc_ad, ua, ua_ad, va, va_ad, divg_d, divg_d_ad, xflux, xflux_ad, yflux, yflux_ad, cx, cx_ad, cy, cy_ad, crx_adv, crx_adv_ad, cry_adv, cry_adv_ad, xfx_adv, xfx_adv_ad, yfx_adv, yfx_adv_ad, q_con, z_rat, z_rat_ad, kgb, heat_source, heat_source_ad, dpx, dpx_ad, zvir, sphum, nq, q, q_ad, k, km, inline_q, dt, hord_tr, hord_mt, hord_vt, hord_tm, hord_dp, nord, nord_v, nord_w, nord_t, dddmp, d2_bg, d4_bg, damp_v, damp_w, damp_t, d_con, hydrostatic, gridstruct, flagstruct, bd, hord_tr_pert, hord_mt_pert, hord_vt_pert, hord_tm_pert, hord_dp_pert, split_damp, nord_pert, nord_v_pert, nord_w_pert, nord_t_pert, dddmp_pert, d2_bg_pert, d4_bg_pert, damp_v_pert, damp_w_pert, damp_t_pert)
 
subroutine, public sw_core_adm_mod::d_sw (delpc, delp, ptc, pt, u, v, w, uc, vc, ua, va, divg_d, xflux, yflux, cx, cy, crx_adv, cry_adv, xfx_adv, yfx_adv, q_con, z_rat, kgb, heat_source, dpx, zvir, sphum, nq, q, k, km, inline_q, dt, hord_tr, hord_mt, hord_vt, hord_tm, hord_dp, nord, nord_v, nord_w, nord_t, dddmp, d2_bg, d4_bg, damp_v, damp_w, damp_t, d_con, hydrostatic, gridstruct, flagstruct, bd, hord_tr_pert, hord_mt_pert, hord_vt_pert, hord_tm_pert, hord_dp_pert, split_damp, nord_pert, nord_v_pert, nord_w_pert, nord_t_pert, dddmp_pert, d2_bg_pert, d4_bg_pert, damp_v_pert, damp_w_pert, damp_t_pert)
 
subroutine, public sw_core_adm_mod::del6_vt_flux_adm (nord, npx, npy, damp, q, q_ad, d2, d2_ad, fx2, fx2_ad, fy2, fy2_ad, gridstruct, bd)
 
subroutine, public sw_core_adm_mod::del6_vt_flux (nord, npx, npy, damp, q, d2, fx2, fy2, gridstruct, bd)
 
subroutine, public sw_core_adm_mod::divergence_corner_fwd (u, v, ua, va, divg_d, gridstruct, flagstruct, bd)
 
subroutine, public sw_core_adm_mod::divergence_corner_bwd (u, u_ad, v, v_ad, ua, ua_ad, va, va_ad, divg_d, divg_d_ad, gridstruct, flagstruct, bd)
 
subroutine, public sw_core_adm_mod::divergence_corner (u, v, ua, va, divg_d, gridstruct, flagstruct, bd)
 
subroutine, public sw_core_adm_mod::divergence_corner_nest_fwd (u, v, ua, va, divg_d, gridstruct, flagstruct, bd)
 
subroutine, public sw_core_adm_mod::divergence_corner_nest_bwd (u, u_ad, v, v_ad, ua, ua_ad, va, va_ad, divg_d, divg_d_ad, gridstruct, flagstruct, bd)
 
subroutine, public sw_core_adm_mod::divergence_corner_nest (u, v, ua, va, divg_d, gridstruct, flagstruct, bd)
 
subroutine sw_core_adm_mod::smag_corner (dt, u, v, ua, va, smag_c, bd, npx, npy, gridstruct, ng)
 
subroutine sw_core_adm_mod::xtp_u_adm (is, ie, js, je, isd, ied, jsd, jed, c, c_ad, u, u_ad, v, flux, flux_ad, iord, dx, rdx, npx, npy, grid_type, nested)
 
subroutine sw_core_adm_mod::xtp_u (is, ie, js, je, isd, ied, jsd, jed, c, u, v, flux, iord, dx, rdx, npx, npy, grid_type, nested)
 
subroutine sw_core_adm_mod::ytp_v_adm (is, ie, js, je, isd, ied, jsd, jed, c, c_ad, u, v, v_ad, flux, flux_ad, jord, dy, rdy, npx, npy, grid_type, nested)
 
subroutine sw_core_adm_mod::ytp_v (is, ie, js, je, isd, ied, jsd, jed, c, u, v, flux, jord, dy, rdy, npx, npy, grid_type, nested)
 
subroutine, public sw_core_adm_mod::d2a2c_vect_fwd (u, v, ua, va, uc, vc, ut, vt, dord4, gridstruct, bd, npx, npy, nested, grid_type)
 
subroutine, public sw_core_adm_mod::d2a2c_vect_bwd (u, u_ad, v, v_ad, ua, ua_ad, va, va_ad, uc, uc_ad, vc, vc_ad, ut, ut_ad, vt, vt_ad, dord4, gridstruct, bd, npx, npy, nested, grid_type)
 
subroutine, public sw_core_adm_mod::d2a2c_vect (u, v, ua, va, uc, vc, ut, vt, dord4, gridstruct, bd, npx, npy, nested, grid_type)
 
real function sw_core_adm_mod::edge_interpolate4_fwd (ua, dxa)
 
subroutine sw_core_adm_mod::edge_interpolate4_bwd (ua, ua_ad, dxa, edge_interpolate4_ad)
 
real function sw_core_adm_mod::edge_interpolate4 (ua, dxa)
 
subroutine sw_core_adm_mod::fill3_4corners (q1, q2, q3, dir, bd, npx, npy, sw_corner, se_corner, ne_corner, nw_corner)
 
subroutine sw_core_adm_mod::fill2_4corners_fwd (q1, q2, dir, bd, npx, npy, sw_corner, se_corner, ne_corner, nw_corner)
 
subroutine sw_core_adm_mod::fill2_4corners_bwd (q1, q1_ad, q2, q2_ad, dir, bd, npx, npy, sw_corner, se_corner, ne_corner, nw_corner)
 
subroutine sw_core_adm_mod::fill2_4corners (q1, q2, dir, bd, npx, npy, sw_corner, se_corner, ne_corner, nw_corner)
 
subroutine, public sw_core_adm_mod::fill_4corners_fwd (q, dir, bd, npx, npy, sw_corner, se_corner, ne_corner, nw_corner)
 
subroutine, public sw_core_adm_mod::fill_4corners_bwd (q, q_ad, dir, bd, npx, npy, sw_corner, se_corner, ne_corner, nw_corner)
 
subroutine, public sw_core_adm_mod::fill_4corners (q, dir, bd, npx, npy, sw_corner, se_corner, ne_corner, nw_corner)
 
subroutine sw_core_adm_mod::xtp_u_fwd (is, ie, js, je, isd, ied, jsd, jed, c, u, v, flux, iord, dx, rdx, npx, npy, grid_type, nested)
 
subroutine sw_core_adm_mod::xtp_u_bwd (is, ie, js, je, isd, ied, jsd, jed, c, c_ad, u, u_ad, v, flux, flux_ad, iord, dx, rdx, npx, npy, grid_type, nested)
 
subroutine sw_core_adm_mod::ytp_v_fwd (is, ie, js, je, isd, ied, jsd, jed, c, u, v, flux, jord, dy, rdy, npx, npy, grid_type, nested)
 
subroutine sw_core_adm_mod::ytp_v_bwd (is, ie, js, je, isd, ied, jsd, jed, c, c_ad, u, v, v_ad, flux, flux_ad, jord, dy, rdy, npx, npy, grid_type, nested)
 
subroutine sw_core_adm_mod::compute_divergence_damping_adm (nord, d2_bg, d4_bg, dddmp, dt, vort, vort_ad, ptc, ptc_ad, delpc, delpc_ad, ke, ke_ad, u, u_ad, v, v_ad, uc, uc_ad, vc, vc_ad, ua, ua_ad, va, va_ad, divg_d, divg_d_ad, wk, wk_ad, gridstruct, flagstruct, bd)
 
subroutine sw_core_adm_mod::smag_corner_adm (dt, u, u_ad, v, v_ad, ua, va, smag_c, smag_c_ad, bd, npx, npy, gridstruct, ng)
 
subroutine sw_core_adm_mod::compute_divergence_damping (nord, d2_bg, d4_bg, dddmp, dt, vort, ptc, delpc, ke, u, v, uc, vc, ua, va, divg_d, wk, gridstruct, flagstruct, bd)
 
subroutine sw_core_adm_mod::compute_divergence_damping_fwd (nord, d2_bg, d4_bg, dddmp, dt, vort, ptc, delpc, ke, u, v, uc, vc, ua, va, divg_d, wk, gridstruct, flagstruct, bd)
 
subroutine sw_core_adm_mod::compute_divergence_damping_bwd (nord, d2_bg, d4_bg, dddmp, dt, vort, vort_ad, ptc, ptc_ad, delpc, delpc_ad, ke, ke_ad, u, u_ad, v, v_ad, uc, uc_ad, vc, vc_ad, ua, ua_ad, va, va_ad, divg_d, divg_d_ad, wk, wk_ad, gridstruct, flagstruct, bd)
 
subroutine sw_core_adm_mod::smag_corner_fwd (dt, u, v, ua, va, smag_c, bd, npx, npy, gridstruct, ng)
 
subroutine sw_core_adm_mod::smag_corner_bwd (dt, u, u_ad, v, v_ad, ua, va, smag_c, smag_c_ad, bd, npx, npy, gridstruct, ng)
 

Variables

real, parameter sw_core_adm_mod::r3 = 1./3.
 
real, parameter sw_core_adm_mod::t11 =27./28.
 
real, parameter sw_core_adm_mod::t12 =-13./28.
 
real, parameter sw_core_adm_mod::t13 =3./7.
 
real, parameter sw_core_adm_mod::t14 =6./7.
 
real, parameter sw_core_adm_mod::t15 =3./28.
 
real, parameter sw_core_adm_mod::s11 =11./14.
 
real, parameter sw_core_adm_mod::s13 =-13./14.
 
real, parameter sw_core_adm_mod::s14 =4./7.
 
real, parameter sw_core_adm_mod::s15 =3./14.
 
real, parameter sw_core_adm_mod::near_zero = 1.E-9
 
real, parameter sw_core_adm_mod::big_number = 1.E30
 
real, parameter sw_core_adm_mod::p1 = 7./12.
 
real, parameter sw_core_adm_mod::p2 = -1./12.
 
real, parameter sw_core_adm_mod::a1 = 0.5625
 
real, parameter sw_core_adm_mod::a2 = -0.0625
 
real, parameter sw_core_adm_mod::c1 = -2./14.
 
real, parameter sw_core_adm_mod::c2 = 11./14.
 
real, parameter sw_core_adm_mod::c3 = 5./14.
 
real, parameter sw_core_adm_mod::b1 =1./30.
 
real, parameter sw_core_adm_mod::b2 =-(13./60.)
 
real, parameter sw_core_adm_mod::b3 =-(13./60.)
 
real, parameter sw_core_adm_mod::b4 =0.45
 
real, parameter sw_core_adm_mod::b5 =-0.05