SCALE-RM
Data Types | Functions/Subroutines | Variables
scale_atmos_dyn_tinteg_short Module Reference

module Atmosphere / Dynamics Temporal integration More...

Functions/Subroutines

subroutine, public atmos_dyn_tinteg_short_setup (ATMOS_DYN_Tinteg_short_TYPE, ATMOS_DYN_Tstep_short_TYPE)
 Register. More...
 

Variables

procedure(short), pointer, public atmos_dyn_tinteg_short => NULL()
 

Detailed Description

module Atmosphere / Dynamics Temporal integration

Description
Temporal integration scheme selecter for dynamical short time step
Author
Team SCALE

Function/Subroutine Documentation

◆ atmos_dyn_tinteg_short_setup()

subroutine, public scale_atmos_dyn_tinteg_short::atmos_dyn_tinteg_short_setup ( character(len=*), intent(in)  ATMOS_DYN_Tinteg_short_TYPE,
character(len=*), intent(in)  ATMOS_DYN_Tstep_short_TYPE 
)

Register.

Definition at line 130 of file scale_atmos_dyn_tinteg_short.F90.

130 
131  use scale_precision
133  use scale_index
134  use scale_prc, only: &
135  prc_abort
148  implicit none
149 
150  character(len=*), intent(in) :: ATMOS_DYN_Tinteg_short_TYPE
151  character(len=*), intent(in) :: ATMOS_DYN_Tstep_short_TYPE
152  !---------------------------------------------------------------------------
153 
154  select case( atmos_dyn_tinteg_short_type )
155  case( 'RK3', 'RK3WS2002' )
157  atmos_dyn_tinteg_short_type )
158  atmos_dyn_tinteg_short => atmos_dyn_tinteg_short_rk3
159  case( 'RK4' )
161  atmos_dyn_tinteg_short_type )
162  atmos_dyn_tinteg_short => atmos_dyn_tinteg_short_rk4
163  case( 'RK7s6o', 'RK7s6oLawson1967', 'RK7s6oButcher1964' )
164  if ( .not. (atmos_dyn_tstep_short_type == 'HEVE' .or. atmos_dyn_tstep_short_type == 'FVM-HEVE') ) then
165  log_error("ATMOS_DYN_Tinteg_short_setup",*) "ATMOS_DYN_TINTEG_SHORT_TYPE is now supported only for 'HEVE',", atmos_dyn_tinteg_short_type
166  end if
168  atmos_dyn_tinteg_short_type )
169  atmos_dyn_tinteg_short => atmos_dyn_tinteg_short_rk7s6o
170  case( 'RK11s8o', 'RK11s8oCooperVerner1972' )
171  if ( .not. (atmos_dyn_tstep_short_type == 'HEVE' .or. atmos_dyn_tstep_short_type == 'FVM-HEVE') ) then
172  log_error("ATMOS_DYN_Tinteg_short_setup",*) "ATMOS_DYN_TINTEG_SHORT_TYPE is now supported only for 'HEVE',", atmos_dyn_tinteg_short_type
173  end if
175  atmos_dyn_tinteg_short_type )
176  atmos_dyn_tinteg_short => atmos_dyn_tinteg_short_rk11s8o
177  case( 'OFF', 'NONE' )
178  ! do nothing
179  case default
180  log_error("ATMOS_DYN_Tinteg_short_setup",*) 'ATMOS_DYN_TINTEG_SHORT_TYPE is invalid: ', atmos_dyn_tinteg_short_type
181  call prc_abort
182  end select
183 
184  return

References atmos_dyn_tinteg_short, scale_atmos_dyn_tinteg_short_rk11s8o::atmos_dyn_tinteg_short_rk11s8o(), scale_atmos_dyn_tinteg_short_rk11s8o::atmos_dyn_tinteg_short_rk11s8o_setup(), scale_atmos_dyn_tinteg_short_rk3::atmos_dyn_tinteg_short_rk3(), scale_atmos_dyn_tinteg_short_rk3::atmos_dyn_tinteg_short_rk3_setup(), scale_atmos_dyn_tinteg_short_rk4::atmos_dyn_tinteg_short_rk4(), scale_atmos_dyn_tinteg_short_rk4::atmos_dyn_tinteg_short_rk4_setup(), scale_atmos_dyn_tinteg_short_rk7s6o::atmos_dyn_tinteg_short_rk7s6o(), scale_atmos_dyn_tinteg_short_rk7s6o::atmos_dyn_tinteg_short_rk7s6o_setup(), and scale_prc::prc_abort().

Referenced by scale_atmos_dyn::atmos_dyn_setup().

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ atmos_dyn_tinteg_short

procedure(short), pointer, public scale_atmos_dyn_tinteg_short::atmos_dyn_tinteg_short => NULL()

Definition at line 109 of file scale_atmos_dyn_tinteg_short.F90.

109  procedure(short), pointer :: ATMOS_DYN_Tinteg_short => null()

Referenced by atmos_dyn_tinteg_short_setup(), and scale_atmos_dyn_tstep_large_fvm_heve::atmos_dyn_tstep_large_fvm_heve().

scale_prc::prc_abort
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:342
scale_index
module Index
Definition: scale_index.F90:11
scale_atmos_dyn_tinteg_short_rk11s8o::atmos_dyn_tinteg_short_rk11s8o_setup
subroutine, public atmos_dyn_tinteg_short_rk11s8o_setup(tinteg_type)
Setup.
Definition: scale_atmos_dyn_tinteg_short_rk11s8o.F90:149
scale_precision
module PRECISION
Definition: scale_precision.F90:14
scale_atmos_dyn_tinteg_short_rk4::atmos_dyn_tinteg_short_rk4
subroutine, public atmos_dyn_tinteg_short_rk4(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)
RK3.
Definition: scale_atmos_dyn_tinteg_short_rk4.F90:220
scale_atmos_dyn_tinteg_short_rk4::atmos_dyn_tinteg_short_rk4_setup
subroutine, public atmos_dyn_tinteg_short_rk4_setup(tinteg_type)
Setup.
Definition: scale_atmos_dyn_tinteg_short_rk4.F90:107
scale_prc
module PROCESS
Definition: scale_prc.F90:11
scale_atmos_dyn_tinteg_short_rk7s6o
module Atmosphere / Dyn Tinteg
Definition: scale_atmos_dyn_tinteg_short_rk7s6o.F90:17
scale_atmos_grid_cartesc_index
module atmosphere / grid / cartesC index
Definition: scale_atmos_grid_cartesC_index.F90:12
scale_atmos_dyn_tinteg_short_rk3::atmos_dyn_tinteg_short_rk3
subroutine, public atmos_dyn_tinteg_short_rk3(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)
RK3.
Definition: scale_atmos_dyn_tinteg_short_rk3.F90:205
scale_atmos_dyn_tinteg_short_rk3
module Atmosphere / Dyn Tinteg
Definition: scale_atmos_dyn_tinteg_short_rk3.F90:15
scale_atmos_dyn_tinteg_short_rk11s8o
module Atmosphere / Dyn Tinteg
Definition: scale_atmos_dyn_tinteg_short_rk11s8o.F90:15
scale_atmos_dyn_tinteg_short_rk3::atmos_dyn_tinteg_short_rk3_setup
subroutine, public atmos_dyn_tinteg_short_rk3_setup(tinteg_type)
Setup.
Definition: scale_atmos_dyn_tinteg_short_rk3.F90:93
scale_atmos_dyn_tinteg_short_rk11s8o::atmos_dyn_tinteg_short_rk11s8o
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.
Definition: scale_atmos_dyn_tinteg_short_rk11s8o.F90:222
scale_atmos_dyn_tinteg_short_rk4
module Atmosphere / Dyn Tinteg
Definition: scale_atmos_dyn_tinteg_short_rk4.F90:20
scale_atmos_dyn_tinteg_short_rk7s6o::atmos_dyn_tinteg_short_rk7s6o
subroutine, public atmos_dyn_tinteg_short_rk7s6o(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.
Definition: scale_atmos_dyn_tinteg_short_rk7s6o.F90:202
scale_atmos_dyn_tinteg_short_rk7s6o::atmos_dyn_tinteg_short_rk7s6o_setup
subroutine, public atmos_dyn_tinteg_short_rk7s6o_setup(tinteg_type)
Setup.
Definition: scale_atmos_dyn_tinteg_short_rk7s6o.F90:126