SCALE-RM
|
module Atmosphere / Dyn Tinteg More...
Functions/Subroutines | |
subroutine, public | atmos_dyn_tinteg_short_rk11s8o_setup (tinteg_type) |
Setup. More... | |
subroutine, public | atmos_dyn_tinteg_short_rk11s8o (DENS, MOMZ, MOMX, MOMY, RHOT, PROG, mflx_hi, tflx_hi, DENS_t, MOMZ_t, MOMX_t, MOMY_t, RHOT_t, DPRES0, CVtot, CORIOLI, num_diff, wdamp_coef, divdmp_coef, DDIV, FLAG_FCT_MOMENTUM, FLAG_FCT_T, FLAG_FCT_ALONG_STREAM, CDZ, FDZ, FDX, FDY, RCDZ, RCDX, RCDY, RFDZ, RFDX, RFDY, PHI, GSQRT, J13G, J23G, J33G, MAPF, REF_pres, REF_dens, BND_W, BND_E, BND_S, BND_N, TwoD, dt) |
RK7s6o. More... | |
Variables | |
real(rp), dimension(11, 11), parameter, public | rkcoef_a_11s8o_cooperverner1972 = reshape( (/ ZERO, 0.5_RP, 0.25_RP, RC41, RC51, RC61, RC71, RC81, RC91, RC101, ZERO, ZERO, ZERO, 0.25_RP, RC42, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC43, RC53, RC63, RC73, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC54, RC64, RC74, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC65, RC75, RC85, RC95, RC105, RC115, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC76, RC86, RC96, RC106, RC116, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC87, RC97, RC107, RC117, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC98, RC108, RC118, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC109, RC119, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC1110, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO /), shape(RKCoef_a_11s8o_CooperVerner1972) ) |
real(rp), dimension(11), parameter, public | rkcoef_b_11s8o_cooperverner1972 = (/ 0.05_RP, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, 49.0_RP/180.0_RP, 16.0_RP/45.0_RP, 49.0_RP/180.0_RP, 0.05_RP /) |
module Atmosphere / Dyn Tinteg
This module provides two type of 11 stage Runge-Kutta scheme with 8th order accuracy proposed by Cooper and Verner (1972). See this source file for the detail of RK coffecients.
subroutine, public scale_atmos_dyn_tinteg_short_rk11s8o::atmos_dyn_tinteg_short_rk11s8o_setup | ( | character(len=*) | tinteg_type | ) |
Setup.
Definition at line 149 of file scale_atmos_dyn_tinteg_short_rk11s8o.F90.
References scale_comm_cartesc::comm_vars8_init(), scale_const::const_undef, scale_prc::prc_abort(), rkcoef_a_11s8o_cooperverner1972, rkcoef_b_11s8o_cooperverner1972, and scale_index::va.
Referenced by scale_atmos_dyn_tinteg_short::atmos_dyn_tinteg_short_setup().
subroutine, public scale_atmos_dyn_tinteg_short_rk11s8o::atmos_dyn_tinteg_short_rk11s8o | ( | real(rp), dimension(ka,ia,ja), intent(inout) | DENS, |
real(rp), dimension(ka,ia,ja), intent(inout) | MOMZ, | ||
real(rp), dimension(ka,ia,ja), intent(inout) | MOMX, | ||
real(rp), dimension(ka,ia,ja), intent(inout) | MOMY, | ||
real(rp), dimension(ka,ia,ja), intent(inout) | RHOT, | ||
real(rp), dimension(ka,ia,ja,va), intent(inout) | PROG, | ||
real(rp), dimension(ka,ia,ja,3), intent(inout) | mflx_hi, | ||
real(rp), dimension(ka,ia,ja,3), intent(out) | tflx_hi, | ||
real(rp), dimension(ka,ia,ja), intent(in) | DENS_t, | ||
real(rp), dimension(ka,ia,ja), intent(in) | MOMZ_t, | ||
real(rp), dimension(ka,ia,ja), intent(in) | MOMX_t, | ||
real(rp), dimension(ka,ia,ja), intent(in) | MOMY_t, | ||
real(rp), dimension(ka,ia,ja), intent(in) | RHOT_t, | ||
real(rp), dimension(ka,ia,ja), intent(in) | DPRES0, | ||
real(rp), dimension(ka,ia,ja), intent(in) | CVtot, | ||
real(rp), dimension(ia,ja), intent(in) | CORIOLI, | ||
real(rp), dimension(ka,ia,ja,5,3), intent(in) | num_diff, | ||
real(rp), dimension(ka), intent(in) | wdamp_coef, | ||
real(rp), intent(in) | divdmp_coef, | ||
real(rp), dimension(ka,ia,ja), intent(in) | DDIV, | ||
logical, intent(in) | FLAG_FCT_MOMENTUM, | ||
logical, intent(in) | FLAG_FCT_T, | ||
logical, intent(in) | FLAG_FCT_ALONG_STREAM, | ||
real(rp), dimension (ka), intent(in) | CDZ, | ||
real(rp), dimension (ka-1), intent(in) | FDZ, | ||
real(rp), dimension (ia-1), intent(in) | FDX, | ||
real(rp), dimension (ja-1), intent(in) | FDY, | ||
real(rp), dimension(ka), intent(in) | RCDZ, | ||
real(rp), dimension(ia), intent(in) | RCDX, | ||
real(rp), dimension(ja), intent(in) | RCDY, | ||
real(rp), dimension(ka-1), intent(in) | RFDZ, | ||
real(rp), dimension(ia-1), intent(in) | RFDX, | ||
real(rp), dimension(ja-1), intent(in) | RFDY, | ||
real(rp), dimension (ka,ia,ja), intent(in) | PHI, | ||
real(rp), dimension(ka,ia,ja,7), intent(in) | GSQRT, | ||
real(rp), dimension (ka,ia,ja,7), intent(in) | J13G, | ||
real(rp), dimension (ka,ia,ja,7), intent(in) | J23G, | ||
real(rp), intent(in) | J33G, | ||
real(rp), dimension (ia,ja,2,4), intent(in) | MAPF, | ||
real(rp), dimension(ka,ia,ja), intent(in) | REF_pres, | ||
real(rp), dimension(ka,ia,ja), intent(in) | REF_dens, | ||
logical, intent(in) | BND_W, | ||
logical, intent(in) | BND_E, | ||
logical, intent(in) | BND_S, | ||
logical, intent(in) | BND_N, | ||
logical, intent(in) | TwoD, | ||
real(rp), intent(in) | dt | ||
) |
RK7s6o.
[in] | phi | geopotential |
[in] | gsqrt | vertical metrics {G}^1/2 |
[in] | j13g | (1,3) element of Jacobian matrix |
[in] | j23g | (2,3) element of Jacobian matrix |
[in] | j33g | (3,3) element of Jacobian matrix |
[in] | mapf | map factor |
[in] | ref_pres | reference pressure |
Definition at line 222 of file scale_atmos_dyn_tinteg_short_rk11s8o.F90.
References scale_atmos_dyn_common::atmos_dyn_copy_boundary(), scale_atmos_dyn_tstep_short::atmos_dyn_tstep_short, scale_atmos_grid_cartesc_index::ie, scale_atmos_grid_cartesc_index::is, scale_atmos_grid_cartesc_index::je, scale_atmos_grid_cartesc_index::js, scale_tracer::k, scale_atmos_grid_cartesc_index::ka, scale_atmos_grid_cartesc_index::ke, scale_atmos_grid_cartesc_index::ks, scale_prof::prof_rapend(), scale_prof::prof_rapstart(), and scale_index::va.
Referenced by scale_atmos_dyn_tinteg_short::atmos_dyn_tinteg_short_setup().
real(rp), dimension(11,11), parameter, public scale_atmos_dyn_tinteg_short_rk11s8o::rkcoef_a_11s8o_cooperverner1972 = reshape( (/ ZERO, 0.5_RP, 0.25_RP, RC41, RC51, RC61, RC71, RC81, RC91, RC101, ZERO, ZERO, ZERO, 0.25_RP, RC42, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC43, RC53, RC63, RC73, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC54, RC64, RC74, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC65, RC75, RC85, RC95, RC105, RC115, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC76, RC86, RC96, RC106, RC116, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC87, RC97, RC107, RC117, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC98, RC108, RC118, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC109, RC119, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, RC1110, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO /), shape(RKCoef_a_11s8o_CooperVerner1972) ) |
Definition at line 102 of file scale_atmos_dyn_tinteg_short_rk11s8o.F90.
Referenced by atmos_dyn_tinteg_short_rk11s8o_setup().
real(rp), dimension(11), parameter, public scale_atmos_dyn_tinteg_short_rk11s8o::rkcoef_b_11s8o_cooperverner1972 = (/ 0.05_RP, ZERO, ZERO, ZERO, ZERO, ZERO, ZERO, 49.0_RP/180.0_RP, 16.0_RP/45.0_RP, 49.0_RP/180.0_RP, 0.05_RP /) |
Definition at line 116 of file scale_atmos_dyn_tinteg_short_rk11s8o.F90.
Referenced by atmos_dyn_tinteg_short_rk11s8o_setup().