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

module Atmosphere / Dynamics Temporal integration More...

Data Types

interface  finalize
 

Functions/Subroutines

subroutine, public atmos_dyn_tinteg_tracer_setup (ATMOS_DYN_Tinteg_tracer_TYPE)
 Register. More...
 
subroutine dyn_tinteg_tracer_finalize
 

Variables

procedure(tinteg), pointer, public atmos_dyn_tinteg_tracer => NULL()
 
procedure(finalize), pointer, public atmos_dyn_tinteg_tracer_finalize => NULL()
 

Detailed Description

module Atmosphere / Dynamics Temporal integration

Description
Temporal integration scheme selecter for dynamical tracer advection
Author
Team SCALE

Function/Subroutine Documentation

◆ atmos_dyn_tinteg_tracer_setup()

subroutine, public scale_atmos_dyn_tinteg_tracer::atmos_dyn_tinteg_tracer_setup ( character(len=*), intent(in)  ATMOS_DYN_Tinteg_tracer_TYPE)

Register.

Definition at line 99 of file scale_atmos_dyn_tinteg_tracer.F90.

99 
100  use scale_precision
102  use scale_index
103  use scale_prc, only: &
104  prc_abort
116  implicit none
117  character(len=*), intent(in) :: ATMOS_DYN_Tinteg_tracer_TYPE
118 
119  character(len=H_SHORT) :: Tinteg_type
120  !---------------------------------------------------------------------------
121 
122 
123  if (atmos_dyn_tinteg_tracer_type(1:5) == 'LINRK') then
124  tinteg_type = 'LINRK'
125  else
126  tinteg_type = atmos_dyn_tinteg_tracer_type
127  end if
128 
129  atmos_dyn_tinteg_tracer_finalize => dyn_tinteg_tracer_finalize
130 
131  select case( tinteg_type )
132  case( 'EULER' )
134  atmos_dyn_tinteg_tracer_type )
135  atmos_dyn_tinteg_tracer => atmos_dyn_tinteg_tracer_euler
136  case( 'RK3WS2002' )
138  atmos_dyn_tinteg_tracer_type )
139  atmos_dyn_tinteg_tracer => atmos_dyn_tinteg_tracer_rk3
141  case( 'LINRK' )
143  atmos_dyn_tinteg_tracer_type )
144  atmos_dyn_tinteg_tracer => atmos_dyn_tinteg_tracer_linrk
146  case( 'OFF', 'NONE' )
147  ! do nothing
148  case default
149  log_error("ATMOS_DYN_Tinteg_tracer_setup",*) 'ATMOS_DYN_TINTEG_TRACER_TYPE is invalid: ', atmos_dyn_tinteg_tracer_type
150  call prc_abort
151  end select
152 
153  return

References atmos_dyn_tinteg_tracer, scale_atmos_dyn_tinteg_tracer_euler::atmos_dyn_tinteg_tracer_euler(), scale_atmos_dyn_tinteg_tracer_euler::atmos_dyn_tinteg_tracer_euler_setup(), atmos_dyn_tinteg_tracer_finalize, scale_atmos_dyn_tinteg_tracer_linrk::atmos_dyn_tinteg_tracer_linrk(), scale_atmos_dyn_tinteg_tracer_linrk::atmos_dyn_tinteg_tracer_linrk_finalize(), scale_atmos_dyn_tinteg_tracer_linrk::atmos_dyn_tinteg_tracer_linrk_setup(), scale_atmos_dyn_tinteg_tracer_rk3::atmos_dyn_tinteg_tracer_rk3(), scale_atmos_dyn_tinteg_tracer_rk3::atmos_dyn_tinteg_tracer_rk3_finalize(), scale_atmos_dyn_tinteg_tracer_rk3::atmos_dyn_tinteg_tracer_rk3_setup(), dyn_tinteg_tracer_finalize(), 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:

◆ dyn_tinteg_tracer_finalize()

subroutine scale_atmos_dyn_tinteg_tracer::dyn_tinteg_tracer_finalize

Definition at line 157 of file scale_atmos_dyn_tinteg_tracer.F90.

157 
158  return

Referenced by atmos_dyn_tinteg_tracer_setup().

Here is the caller graph for this function:

Variable Documentation

◆ atmos_dyn_tinteg_tracer

procedure(tinteg), pointer, public scale_atmos_dyn_tinteg_tracer::atmos_dyn_tinteg_tracer => NULL()

Definition at line 76 of file scale_atmos_dyn_tinteg_tracer.F90.

76  procedure(tinteg), pointer :: ATMOS_DYN_Tinteg_tracer => null()

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

◆ atmos_dyn_tinteg_tracer_finalize

procedure(finalize), pointer, public scale_atmos_dyn_tinteg_tracer::atmos_dyn_tinteg_tracer_finalize => NULL()

Definition at line 78 of file scale_atmos_dyn_tinteg_tracer.F90.

78  procedure(finalize), pointer :: ATMOS_DYN_Tinteg_tracer_finalize => null()

Referenced by scale_atmos_dyn::atmos_dyn_finalize(), and atmos_dyn_tinteg_tracer_setup().

scale_atmos_dyn_tinteg_tracer_linrk
module Atmosphere / Dyn Tinteg
Definition: scale_atmos_dyn_tinteg_tracer_linrk.F90:17
scale_prc::prc_abort
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:350
scale_atmos_dyn_tinteg_tracer_rk3::atmos_dyn_tinteg_tracer_rk3_setup
subroutine, public atmos_dyn_tinteg_tracer_rk3_setup(tinteg_type)
Setup.
Definition: scale_atmos_dyn_tinteg_tracer_rk3.F90:66
scale_index
module Index
Definition: scale_index.F90:11
scale_atmos_dyn_tinteg_tracer_rk3
module Atmosphere / Dyn Tinteg
Definition: scale_atmos_dyn_tinteg_tracer_rk3.F90:13
scale_atmos_dyn_tinteg_tracer_euler
module Atmosphere / Dyn Tinteg
Definition: scale_atmos_dyn_tinteg_tracer_euler.F90:13
scale_precision
module PRECISION
Definition: scale_precision.F90:14
scale_atmos_dyn_tinteg_tracer_linrk::atmos_dyn_tinteg_tracer_linrk
subroutine, public atmos_dyn_tinteg_tracer_linrk(QTRC, qflx, QTRC0, RHOQ_t, DENS0, DENS, mflx_hi, num_diff, GSQRT, MAPF, CDZ, RCDZ, RCDX, RCDY, BND_W, BND_E, BND_S, BND_N, TwoD, dtl, FLAG_FCT_TRACER, FLAG_FCT_ALONG_STREAM)
linear case RK
Definition: scale_atmos_dyn_tinteg_tracer_linrk.F90:115
scale_atmos_dyn_tinteg_tracer_rk3::atmos_dyn_tinteg_tracer_rk3_finalize
subroutine, public atmos_dyn_tinteg_tracer_rk3_finalize
finalize
Definition: scale_atmos_dyn_tinteg_tracer_rk3.F90:102
scale_atmos_dyn_tinteg_tracer::atmos_dyn_tinteg_tracer_finalize
procedure(finalize), pointer, public atmos_dyn_tinteg_tracer_finalize
Definition: scale_atmos_dyn_tinteg_tracer.F90:78
scale_prc
module PROCESS
Definition: scale_prc.F90:11
scale_atmos_grid_cartesc_index
module atmosphere / grid / cartesC index
Definition: scale_atmos_grid_cartesC_index.F90:12
scale_atmos_dyn_tinteg_tracer_euler::atmos_dyn_tinteg_tracer_euler
subroutine, public atmos_dyn_tinteg_tracer_euler(QTRC, qflx, QTRC0, RHOQ_t, DENS0, DENS, mflx_hi, num_diff, GSQRT, MAPF, CDZ, RCDZ, RCDX, RCDY, BND_W, BND_E, BND_S, BND_N, TwoD, dtl, FLAG_FCT_TRACER, FLAG_FCT_ALONG_STREAM)
EULER.
Definition: scale_atmos_dyn_tinteg_tracer_euler.F90:93
scale_atmos_dyn_tinteg_tracer_rk3::atmos_dyn_tinteg_tracer_rk3
subroutine, public atmos_dyn_tinteg_tracer_rk3(QTRC, qflx, QTRC0, RHOQ_t, DENS0, DENS, mflx_hi, num_diff, GSQRT, MAPF, CDZ, RCDZ, RCDX, RCDY, BND_W, BND_E, BND_S, BND_N, TwoD, dtl, FLAG_FCT_TRACER, FLAG_FCT_ALONG_STREAM)
RK3.
Definition: scale_atmos_dyn_tinteg_tracer_rk3.F90:125
scale_atmos_dyn_tinteg_tracer_linrk::atmos_dyn_tinteg_tracer_linrk_setup
subroutine, public atmos_dyn_tinteg_tracer_linrk_setup(tinteg_type)
Setup.
Definition: scale_atmos_dyn_tinteg_tracer_linrk.F90:70
scale_atmos_dyn_tinteg_tracer_euler::atmos_dyn_tinteg_tracer_euler_setup
subroutine, public atmos_dyn_tinteg_tracer_euler_setup(tinteg_type)
Setup.
Definition: scale_atmos_dyn_tinteg_tracer_euler.F90:61
scale_atmos_dyn_tinteg_tracer_linrk::atmos_dyn_tinteg_tracer_linrk_finalize
subroutine, public atmos_dyn_tinteg_tracer_linrk_finalize
finalize
Definition: scale_atmos_dyn_tinteg_tracer_linrk.F90:97