SCALE-RM
Functions/Subroutines | Variables
mod_mkinit Module Reference

module INITIAL More...

Functions/Subroutines

subroutine, public mkinit_setup
 Setup. More...
 
subroutine, public mkinit_finalize
 Finalize. More...
 
subroutine, public mkinit (output)
 Driver. More...
 
subroutine rect_setup
 Bubble. More...
 
real(rp) function faero (f0, r0, x, alpha, rhoa)
 
subroutine flux_setup
 flux setup More...
 
subroutine land_setup
 Land setup. More...
 
subroutine ocean_setup
 Ocean setup. More...
 
subroutine urban_setup
 Urban setup. More...
 
subroutine tke_setup
 TKE setup. More...
 
subroutine read_sounding (DENS, VELX, VELY, POTT, QV)
 Read sounding data from file. More...
 

Variables

integer, public mkinit_type = -1
 
integer, parameter, public i_ignore = 0
 
integer, parameter, public i_planestate = 1
 
integer, parameter, public i_tracerbubble = 2
 
integer, parameter, public i_coldbubble = 3
 
integer, parameter, public i_lambwave = 4
 
integer, parameter, public i_gravitywave = 5
 
integer, parameter, public i_khwave = 6
 
integer, parameter, public i_turbulence = 7
 
integer, parameter, public i_mountainwave = 8
 
integer, parameter, public i_warmbubble = 9
 
integer, parameter, public i_supercell = 10
 
integer, parameter, public i_squallline = 11
 
integer, parameter, public i_wk1982 = 12
 
integer, parameter, public i_dycoms2_rf01 = 13
 
integer, parameter, public i_dycoms2_rf02 = 14
 
integer, parameter, public i_rico = 15
 
integer, parameter, public i_interporation = 16
 
integer, parameter, public i_landcouple = 17
 
integer, parameter, public i_oceancouple = 18
 
integer, parameter, public i_urbancouple = 19
 
integer, parameter, public i_triplecouple = 20
 
integer, parameter, public i_bubblecouple = 21
 
integer, parameter, public i_seabreeze = 22
 
integer, parameter, public i_heatisland = 23
 
integer, parameter, public i_dycoms2_rf02_dns = 24
 
integer, parameter, public i_real = 25
 
integer, parameter, public i_grayzone = 26
 
integer, parameter, public i_boxaero = 27
 
integer, parameter, public i_warmbubbleaero = 28
 
integer, parameter, public i_cavityflow = 29
 
integer, parameter, public i_barocwave = 30
 
integer, parameter, public i_bomex = 31
 

Detailed Description

module INITIAL

Description
subroutines for preparing initial data
Author
Team SCALE
NAMELIST
  • PARAM_MKINIT
    nametypedefault valuecomment
    MKINIT_INITNAME character(len=H_SHORT) 'NONE'

  • PARAM_BUBBLE
    nametypedefault valuecomment
    BBL_EACHNODE logical .false. Arrange bubble at each node? [kg/kg]
    BBL_CZ real(RP) 2.E3_RP center location [m]: z
    BBL_CX real(RP) 2.E3_RP center location [m]: x
    BBL_CY real(RP) 2.E3_RP center location [m]: y
    BBL_RZ real(RP) 0.0_RP bubble radius [m]: z
    BBL_RX real(RP) 0.0_RP bubble radius [m]: x
    BBL_RY real(RP) 0.0_RP bubble radius [m]: y
    BBL_FUNCTYPE character(len=H_SHORT) 'COSBELL' COSBELL or GAUSSIAN

  • PARAM_RECT
    nametypedefault valuecomment
    RCT_EACHNODE logical .false. Arrange rectangle at each node? [kg/kg]
    RCT_CZ real(RP) 2.E3_RP center location [m]: z
    RCT_CX real(RP) 2.E3_RP center location [m]: x
    RCT_CY real(RP) 2.E3_RP center location [m]: y
    RCT_RZ real(RP) 2.E3_RP rectangle z width [m]: z
    RCT_RX real(RP) 2.E3_RP rectangle x width [m]: x
    RCT_RY real(RP) 2.E3_RP rectangle y width [m]: y

  • PARAM_AERO
    nametypedefault valuecomment
    CCN_INIT real(RP) 50.E+6_RP initial cloud condensation nucrei [#/m3]
    M0_INIT real(RP) 0.0_RP initial total num. conc. of modes (Atk,Acm,Cor) [#/m3]
    DG_INIT real(RP) 80.e-9_RP initial number equivalen diameters of modes [m]
    SG_INIT real(RP) 1.6_RP initial standard deviation [-]
    D_MIN_INP real(RP), dimension(3) d_min_def
    D_MAX_INP real(RP), dimension(3) d_max_def
    K_MIN_INP real(RP), dimension(3) k_min_def
    K_MAX_INP real(RP), dimension(3) k_max_def
    N_KAP_INP integer, dimension(3) n_kap_def

  • PARAM_MKINIT_FLUX
    nametypedefault valuecomment
    FLX_RAIN real(RP) 0.0_RP surface rain flux [kg/m2/s]
    FLX_SNOW real(RP) 0.0_RP surface snow flux [kg/m2/s]
    FLX_IR_DN real(RP) 0.0_RP surface downwad radiation flux [J/m2/s]
    FLX_NIR_DN real(RP) 0.0_RP surface downwad radiation flux [J/m2/s]
    FLX_VIS_DN real(RP) 0.0_RP surface downwad radiation flux [J/m2/s]

  • PARAM_MKINIT_LAND
    nametypedefault valuecomment
    LND_TEMP real(RP) land soil temperature [K]
    LND_WATER real(RP) 0.15_RP land soil moisture [m3/m3]
    LND_ICE real(RP) 0.00_RP land soil ice [m3/m3]
    SFC_TEMP real(RP) ocean skin temperature [K]
    SFC_ALBEDO_LW real(RP) 0.04_RP ocean surface albedo for LW (0-1)
    SFC_ALBEDO_SW real(RP) 0.05_RP ocean surface albedo for SW (0-1)

  • PARAM_MKINIT_OCEAN
    nametypedefault valuecomment
    OCN_TEMP real(RP) ocean temperature [K]
    OCN_SALT real(RP) 0.0_RP ocean salinity [psu]
    OCN_UVEL real(RP) 0.0_RP ocean u-velocity [m/s]
    OCN_VVEL real(RP) 0.0_RP ocean v-velocity [m/s]
    ICE_TEMP real(RP) ocean temperature [K]
    ICE_MASS real(RP) 0.0_RP ocean temperature [K]
    SFC_TEMP real(RP) ocean skin temperature [K]
    SFC_ALBEDO_LW real(RP) 0.04_RP ocean surface albedo for LW (0-1)
    SFC_ALBEDO_SW real(RP) 0.05_RP ocean surface albedo for SW (0-1)
    SFC_Z0M real(RP) 1.E-4_RP ocean surface roughness length (momentum) [m]
    SFC_Z0H real(RP) 1.E-4_RP ocean surface roughness length (heat) [m]
    SFC_Z0E real(RP) 1.E-4_RP ocean surface roughness length (vapor) [m]

  • PARAM_MKINIT_URBAN
    nametypedefault valuecomment
    URB_ROOF_TEMP real(RP) Surface temperature of roof [K]
    URB_BLDG_TEMP real(RP) Surface temperature of building [K]
    URB_GRND_TEMP real(RP) Surface temperature of ground [K]
    URB_CNPY_TEMP real(RP) Diagnostic canopy air temperature [K]
    URB_CNPY_HMDT real(RP) 0.0_RP Diagnostic canopy humidity [kg/kg]
    URB_CNPY_WIND real(RP) 0.0_RP Diagnostic canopy wind [m/s]
    URB_ROOF_LAYER_TEMP real(RP) temperature in layer of roof [K]
    URB_BLDG_LAYER_TEMP real(RP) temperature in layer of building [K]
    URB_GRND_LAYER_TEMP real(RP) temperature in layer of ground [K]
    URB_ROOF_RAIN real(RP) 0.0_RP temperature in layer of roof [kg/m2]
    URB_BLDG_RAIN real(RP) 0.0_RP temperature in layer of building [kg/m2]
    URB_GRND_RAIN real(RP) 0.0_RP temperature in layer of ground [kg/m2]
    URB_SFC_TEMP real(RP) Grid average of surface temperature [K]
    URB_ALB_LW real(RP) 0.10_RP Grid average of surface albedo for LW (0-1)
    URB_ALB_SW real(RP) 0.20_RP Grid average of surface albedo for SW (0-1)

  • PARAM_MKINIT_TKE
    nametypedefault valuecomment
    TKE_CONST real(RP)
    ZI_CONST real(RP)

  • PARAM_MKINIT_SOUNDING
    nametypedefault valuecomment
    ENV_IN_SOUNDING_FILE character(len=H_LONG) ''

  • PARAM_MKINIT_PLANESTATE
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    SFC_RH real(RP) 80.0_RP surface relative humidity [%]
    ENV_THETA real(RP) potential temperature of environment [K]
    ENV_TLAPS real(RP) 4.E-3_RP Lapse rate of THETA [K/m]
    ENV_U real(RP) 0.0_RP velocity u of environment [m/s]
    ENV_V real(RP) 0.0_RP velocity v of environment [m/s]
    ENV_RH real(RP) 80.0_RP Relative Humidity of environment [%]
    RANDOM_THETA real(RP) 0.01_RP
    RANDOM_U real(RP) 0.0_RP amplitude of random disturbance u
    RANDOM_V real(RP) 0.0_RP amplitude of random disturbance v
    RANDOM_RH real(RP) 0.0_RP amplitude of random disturbance RH

  • PARAM_MKINIT_TRACERBUBBLE
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    ENV_THETA real(RP) potential temperature of environment [K]
    ENV_U real(RP) 0.0_RP velocity u of environment [m/s]
    ENV_V real(RP) 0.0_RP velocity v of environment [m/s]
    SHAPE_PTRACER character(len=H_SHORT) 'BUBBLE' BUBBLE or RECT
    BBL_PTRACER real(RP) 0.0_RP extremum of passive tracer in bubble [kg/kg]

  • PARAM_MKINIT_COLDBUBBLE
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    ENV_THETA real(RP) potential temperature of environment [K]
    BBL_TEMP real(RP) -15.0_RP extremum of temperature in bubble [K]

  • PARAM_MKINIT_LAMBWAVE
    nametypedefault valuecomment
    SFC_PRES real(RP) surface pressure [Pa]
    ENV_U real(RP) 0.0_RP velocity u of environment [m/s]
    ENV_V real(RP) 0.0_RP velocity v of environment [m/s]
    ENV_TEMP real(RP) 300.0_RP temperature of environment [K]
    BBL_PRES real(RP) 100._RP extremum of pressure in bubble [Pa]

  • PARAM_MKINIT_GRAVITYWAVE
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    ENV_U real(RP) 0.0_RP velocity u of environment [m/s]
    ENV_V real(RP) 0.0_RP velocity v of environment [m/s]
    ENV_BVF real(RP) 0.01_RP Brunt Vaisala frequencies of environment [1/s]
    BBL_THETA real(RP) 1.0_RP extremum of temperature in bubble [K]

  • PARAM_MKINIT_KHWAVE
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    ENV_L1_ZTOP real(RP) 1.E3_RP top height of the layer1 (constant THETA) [m]
    ENV_L3_ZBOTTOM real(RP) 2100.0_RP bottom height of the layer3 (high THETA) [m]
    ENV_L1_THETA real(RP) 300.0_RP THETA in the layer1 (low THETA) [K]
    ENV_L3_THETA real(RP) 301.0_RP THETA in the layer3 (high THETA) [K]
    ENV_L1_U real(RP) 0.0_RP velocity u in the layer1 (low THETA) [K]
    ENV_L3_U real(RP) 20.0_RP velocity u in the layer3 (high THETA) [K]
    RANDOM_U real(RP) 0.0_RP amplitude of random disturbance u

  • PARAM_MKINIT_TURBULENCE
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    SFC_RH real(RP) 80.0_RP surface relative humidity [%]
    ENV_THETA real(RP) potential temperature of environment [K]
    ENV_TLAPS real(RP) 4.E-3_RP Lapse rate of THETA [K/m]
    ENV_U real(RP) 0.0_RP velocity u of environment [m/s]
    ENV_V real(RP) 0.0_RP velocity v of environment [m/s]
    ENV_RH real(RP) 80.0_RP Relative Humidity of environment [%]
    RANDOM_THETA real(RP) 0.01_RP
    RANDOM_U real(RP) 0.0_RP amplitude of random disturbance u
    RANDOM_V real(RP) 0.0_RP amplitude of random disturbance v
    RANDOM_RH real(RP) 0.0_RP amplitude of random disturbance RH

  • PARAM_MKINIT_CAVITYFLOW
    nametypedefault valuecomment
    ULID real(RP) 1.D01
    PRES0 real(RP) 1.D05
    REYNOLDS_NUM real(RP) 1.D03
    MACH_NUM real(RP) 3.D-2

  • PARAM_MKINIT_MOUNTAINWAVE
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    ENV_U real(RP) 0.0_RP velocity u of environment [m/s]
    ENV_V real(RP) 0.0_RP velocity v of environment [m/s]
    SCORER real(RP) 2.E-3_RP Scorer parameter (~=N/U) [1/m]
    BBL_PTRACER real(RP) 0.0_RP extremum of passive tracer in bubble [kg/kg]

  • PARAM_MKINIT_BAROCWAVE
    nametypedefault valuecomment
    REF_TEMP real(RP) 288.E0_RP The reference temperature [K]
    REF_PRES real(RP) 1.E5_RP The reference pressure [Pa]
    LAPSE_RATE real(RP) 5.E-3_RP The lapse rate [K/m]
    PHI0DEG real(RP) 45.E0_RP The central latitude [degree_north]
    U0 real(RP) 35.E0_RP The parameter associated with zonal jet maximum amplitude [m/s]
    B real(RP) 2.E0_RP The vertical half-width [1]
    UP real(RP) 1.E0_RP The maximum amplitude of zonal wind perturbation [m/s]
    LP real(RP) 600.E3_RP The width of Gaussian profile
    XC real(RP) 2000.E3_RP The center point (x) of inital perturbation
    YC real(RP) 2500.E3_RP The center point (y) of inital perturbation

  • PARAM_MKINIT_WARMBUBBLE
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    ENV_U real(RP) 0.0_RP velocity u of environment [m/s]
    ENV_V real(RP) 0.0_RP velocity v of environment [m/s]
    ENV_RH real(RP) 80.0_RP Relative Humidity of environment [%]
    ENV_L1_ZTOP real(RP) 1.E3_RP top height of the layer1 (constant THETA) [m]
    ENV_L2_ZTOP real(RP) 14.E3_RP top height of the layer2 (small THETA gradient) [m]
    ENV_L2_TLAPS real(RP) 4.E-3_RP Lapse rate of THETA in the layer2 (small THETA gradient) [K/m]
    ENV_L3_TLAPS real(RP) 3.E-2_RP Lapse rate of THETA in the layer3 (large THETA gradient) [K/m]
    BBL_THETA real(RP) 1.0_RP extremum of temperature in bubble [K]

  • PARAM_MKINIT_SUPERCELL
    nametypedefault valuecomment
    BBL_THETA real(RP) 1.0_RP extremum of temperature in bubble [K]

  • PARAM_MKINIT_SQUALLLINE
    nametypedefault valuecomment
    RANDOM_THETA real(RP) 0.01_RP
    OFFSET_VELX real(RP) 12.0_RP
    OFFSET_VELY real(RP) -2.0_RP

  • PARAM_MKINIT_WK1982
    nametypedefault valuecomment
    SFC_THETA real(RP) surface potential temperature [K]
    SFC_PRES real(RP) surface pressure [Pa]
    TR_Z real(RP) 12000.0_RP height of tropopause [m]
    TR_THETA real(RP) 343.0_RP pot. temperature at tropopause [K]
    TR_TEMP real(RP) 213.0_RP temperature at tropopause [K]
    SHEAR_Z real(RP) 3000.0_RP center height of shear layer [m]
    SHEAR_U real(RP) 15.0_RP velocity u over the shear layer [m/s]
    QV0 real(RP) 14.0_RP maximum vapor mixing ration [g/kg]
    BBL_THETA real(RP) 1.0_RP extremum of temperature in bubble [K]

  • PARAM_MKINIT_RF01
    nametypedefault valuecomment
    PERTURB_AMP real(RP) 0.0_RP
    RANDOM_LIMIT integer 0
    RANDOM_FLAG integer 0 0 -> no perturbation
    USE_LWSET logical .false. use liq. water. static energy temp.?

  • PARAM_MKINIT_RF02
    nametypedefault valuecomment
    PERTURB_AMP real(RP) 0.0_RP
    RANDOM_LIMIT integer 0
    RANDOM_FLAG integer 0 0 -> no perturbation

  • PARAM_MKINIT_RF02_DNS
    nametypedefault valuecomment
    ZB real(RP) 750.0_RP domain bottom
    CONST_U real(RP) 0.0_RP
    CONST_V real(RP) 0.0_RP
    PRES_ZB real(RP) 93060.0_RP
    PERTURB_AMP real(RP) 0.0_RP
    RANDOM_LIMIT integer 0
    RANDOM_FLAG integer 0 0 -> no perturbation

  • PARAM_MKINIT_RICO
    nametypedefault valuecomment
    PERTURB_AMP_PT real(RP) 0.1_RP
    PERTURB_AMP_QV real(RP) 2.5E-5_RP

  • PARAM_MKINIT_BOMEX
    nametypedefault valuecomment
    PERTURB_AMP_PT real(RP) 0.1_RP
    PERTURB_AMP_QV real(RP) 2.5E-5_RP

  • PARAM_MKINIT_SEABREEZE
    nametypedefault valuecomment
    LAND_SIZE real(RP)

  • PARAM_MKINIT_GRAYZONE
    nametypedefault valuecomment
    PERTURB_AMP real(RP) 0.0_RP
    RANDOM_LIMIT integer 0
    RANDOM_FLAG integer 0 0 -> no perturbation

  • PARAM_MKINIT_BOXAERO
    nametypedefault valuecomment
    INIT_DENS real(RP) 1.12_RP [kg/m3]
    INIT_TEMP real(RP) 298.18_RP [K]
    INIT_PRES real(RP) 1.E+5_RP [Pa]
    INIT_SSLIQ real(RP) 0.01_RP [%]

History Output
No history output

Function/Subroutine Documentation

◆ mkinit_setup()

subroutine, public mod_mkinit::mkinit_setup

Setup.

Definition at line 210 of file mod_mkinit.F90.

210  implicit none
211 
212  character(len=H_SHORT) :: MKINIT_initname = 'NONE'
213 
214  namelist / param_mkinit / &
215  mkinit_initname
216 
217  integer :: ierr
218  !---------------------------------------------------------------------------
219 
220  log_newline
221  log_info("MKINIT_setup",*) 'Setup'
222 
223  !--- read namelist
224  rewind(io_fid_conf)
225  read(io_fid_conf,nml=param_mkinit,iostat=ierr)
226  if( ierr < 0 ) then !--- missing
227  log_info("MKINIT_setup",*) 'Not found namelist. Default used.'
228  elseif( ierr > 0 ) then !--- fatal error
229  log_error("MKINIT_setup",*) 'Not appropriate names in namelist PARAM_MKINIT. Check!'
230  call prc_abort
231  endif
232  log_nml(param_mkinit)
233 
234  allocate( pres(ka,ia,ja) )
235  allocate( temp(ka,ia,ja) )
236  allocate( pott(ka,ia,ja) )
237  allocate( psat(ka,ia,ja) )
238  allocate( qv(ka,ia,ja) )
239  allocate( qc(ka,ia,ja) )
240  allocate( nc(ka,ia,ja) )
241  allocate( velx(ka,ia,ja) )
242  allocate( vely(ka,ia,ja) )
243  allocate( ptrc(ka,ia,ja) )
244 
245  allocate( pres_sfc(ia,ja) )
246  allocate( temp_sfc(ia,ja) )
247  allocate( pott_sfc(ia,ja) )
248  allocate( qsat_sfc(ia,ja) )
249  allocate( qv_sfc(ia,ja) )
250  allocate( qc_sfc(ia,ja) )
251 
252  allocate( rndm(ka,ia,ja) )
253  allocate( bubble(ka,ia,ja) )
254  allocate( rect(ka,ia,ja) )
255 
256  !$acc enter data create(pres,temp,pott,psat,qv,qc,nc,velx,vely,ptrc,pres_sfc,temp_sfc,pott_sfc,qsat_sfc,qv_sfc,qc_sfc,rndm,bubble,rect)
257 
258  select case(trim(mkinit_initname))
259  case('NONE')
260  mkinit_type = i_ignore
261  case('PLANESTATE')
262  mkinit_type = i_planestate
263  case('TRACERBUBBLE')
264  mkinit_type = i_tracerbubble
265  case('COLDBUBBLE')
266  mkinit_type = i_coldbubble
267  call bubble_setup
268  case('LAMBWAVE')
269  mkinit_type = i_lambwave
270  call bubble_setup
271  case('GRAVITYWAVE')
272  mkinit_type = i_gravitywave
273  call bubble_setup
274  case('KHWAVE')
275  mkinit_type = i_khwave
276  case('TURBULENCE')
277  mkinit_type = i_turbulence
278  case('MOUNTAINWAVE')
279  mkinit_type = i_mountainwave
280  call bubble_setup
281  case('WARMBUBBLE')
282  mkinit_type = i_warmbubble
283  call bubble_setup
284  case('SUPERCELL')
285  mkinit_type = i_supercell
286  call bubble_setup
287  case('SQUALLLINE')
288  mkinit_type = i_squallline
289  case('WK1982')
290  mkinit_type = i_wk1982
291  call bubble_setup
292  case('DYCOMS2_RF01')
293  mkinit_type = i_dycoms2_rf01
294  case('DYCOMS2_RF02')
295  mkinit_type = i_dycoms2_rf02
296  case('RICO')
297  mkinit_type = i_rico
298  case('BOMEX')
299  mkinit_type = i_bomex
300  case('INTERPORATION')
301  mkinit_type = i_interporation
302  case('LANDCOUPLE')
303  mkinit_type = i_landcouple
304  case('OCEANCOUPLE')
305  mkinit_type = i_oceancouple
306  case('URBANCOUPLE')
307  mkinit_type = i_urbancouple
308  case('TRIPLECOUPLE')
309  mkinit_type = i_triplecouple
310  case('BUBBLECOUPLE')
311  mkinit_type = i_bubblecouple
312  call bubble_setup
313  case('SEABREEZE')
314  mkinit_type = i_seabreeze
315  case('HEATISLAND')
316  mkinit_type = i_heatisland
317  case('DYCOMS2_RF02_DNS')
318  mkinit_type = i_dycoms2_rf02_dns
319  case('REAL')
320  mkinit_type = i_real
321  case('GRAYZONE')
322  mkinit_type = i_grayzone
323  case('BOXAERO')
324  mkinit_type = i_boxaero
325  case('WARMBUBBLEAERO')
326  mkinit_type = i_warmbubbleaero
327  call bubble_setup
328  case('CAVITYFLOW')
329  mkinit_type = i_cavityflow
330  case('BAROCWAVE')
331  mkinit_type = i_barocwave
332  case default
333  log_error("MKINIT_setup",*) 'Unsupported TYPE:', trim(mkinit_initname)
334  call prc_abort
335  endselect
336 
337  return

References i_barocwave, i_bomex, i_boxaero, i_bubblecouple, i_cavityflow, i_coldbubble, i_dycoms2_rf01, i_dycoms2_rf02, i_dycoms2_rf02_dns, i_gravitywave, i_grayzone, i_heatisland, i_ignore, i_interporation, i_khwave, i_lambwave, i_landcouple, i_mountainwave, i_oceancouple, i_planestate, i_real, i_rico, i_seabreeze, i_squallline, i_supercell, i_tracerbubble, i_triplecouple, i_turbulence, i_urbancouple, i_warmbubble, i_warmbubbleaero, i_wk1982, scale_atmos_grid_cartesc_index::ia, scale_io::io_fid_conf, scale_atmos_grid_cartesc_index::ja, scale_atmos_grid_cartesc_index::ka, mkinit_type, and scale_prc::prc_abort().

Referenced by mod_rm_prep::rm_prep().

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

◆ mkinit_finalize()

subroutine, public mod_mkinit::mkinit_finalize

Finalize.

Definition at line 343 of file mod_mkinit.F90.

343  implicit none
344  !---------------------------------------------------------------------------
345 
346  log_newline
347  log_info("MKINIT_finalize",*) 'Finalize'
348 
349  !$acc exit data delete(pres,temp,pott,psat,qv,qc,nc,velx,vely,ptrc,pres_sfc,temp_sfc,pott_sfc,qsat_sfc,qv_sfc,qc_sfc,rndm,bubble,rect)
350 
351  deallocate( pres )
352  deallocate( temp )
353  deallocate( pott )
354  deallocate( psat )
355  deallocate( qv )
356  deallocate( qc )
357  deallocate( nc )
358  deallocate( velx )
359  deallocate( vely )
360  deallocate( ptrc )
361 
362  deallocate( pres_sfc )
363  deallocate( temp_sfc )
364  deallocate( pott_sfc )
365  deallocate( qsat_sfc )
366  deallocate( qv_sfc )
367  deallocate( qc_sfc )
368 
369  deallocate( rndm )
370  deallocate( bubble )
371  deallocate( rect )
372 
373  return

Referenced by mod_rm_prep::rm_prep().

Here is the caller graph for this function:

◆ mkinit()

subroutine, public mod_mkinit::mkinit ( logical, intent(out)  output)

Driver.

Definition at line 379 of file mod_mkinit.F90.

379  use scale_const, only: &
380  undef => const_undef
381  use scale_atmos_hydrometeor, only: &
383  n_hyd, &
384  i_hc
385  use mod_atmos_phy_mp_vars, only: &
386  qs_mp, &
387  qe_mp
388  use mod_atmos_phy_mp_driver, only: &
390  implicit none
391  logical, intent(out) :: output
392 
393  real(RP) :: QHYD(KA,IA,JA,N_HYD)
394  real(RP) :: QNUM(KA,IA,JA,N_HYD)
395 
396  logical :: convert_qtrc
397  integer :: k, i, j, iq
398  !---------------------------------------------------------------------------
399 
400  if ( mkinit_type == i_ignore ) then
401  log_newline
402  log_progress(*) 'skip making initial data'
403  output = .false.
404  else
405  log_newline
406  log_progress(*) 'start making initial data'
407 
408  !--- Initialize variables
409  !$omp workshare
410  !$acc kernels
411  pres(:,:,:) = undef
412  temp(:,:,:) = undef
413  pott(:,:,:) = undef
414  psat(:,:,:) = undef
415  velx(:,:,:) = undef
416  vely(:,:,:) = undef
417 
418  rndm(:,:,:) = undef
419  !$acc end kernels
420 
421  !$acc kernels
422  pres_sfc(:,:) = undef
423  temp_sfc(:,:) = undef
424  pott_sfc(:,:) = undef
425  qsat_sfc(:,:) = undef
426  !$acc end kernels
427 
428  !$acc kernels
429  qv(:,:,:) = 0.0_rp
430  qc(:,:,:) = 0.0_rp
431  nc(:,:,:) = 0.0_rp
432  !$acc end kernels
433  !$acc kernels
434  qv_sfc(:,:) = 0.0_rp
435  qc_sfc(:,:) = 0.0_rp
436  !$acc end kernels
437 
438  !$acc kernels
439  ptrc(:,:,:) = undef
440  !$acc end kernels
441 
442  !$acc kernels
443 !OCL XFILL
444  qtrc(:,:,:,:) = undef
445 !OCL XFILL
446  qhyd(:,:,:,:) = 0.0_rp
447 !OCL XFILL
448  qnum(:,:,:,:) = 0.0_rp
449  !$acc end kernels
450  !$omp end workshare
451 
452  call prof_rapstart('_MkInit_main',3)
453 
454  convert_qtrc = .true.
455 
456  select case(mkinit_type)
457  case(i_planestate)
458  call mkinit_planestate
459  case(i_tracerbubble)
460  call mkinit_tracerbubble
461  case(i_coldbubble)
462  call mkinit_coldbubble
463  case(i_lambwave)
464  call mkinit_lambwave
465  case(i_gravitywave)
466  call mkinit_gravitywave
467  case(i_khwave)
468  call mkinit_khwave
469  case(i_turbulence)
470  call mkinit_turbulence
471  case(i_mountainwave)
472  call mkinit_mountainwave
473  case(i_warmbubble)
474  call mkinit_warmbubble
475  case(i_supercell)
476  call mkinit_supercell
477  case(i_squallline)
478  call mkinit_squallline
479  case(i_wk1982)
480  call mkinit_wk1982
481  case(i_dycoms2_rf01)
482  call mkinit_dycoms2_rf01
483  case(i_dycoms2_rf02)
484  call mkinit_dycoms2_rf02
485  case(i_rico)
486  call mkinit_rico
487  case(i_bomex)
488  call mkinit_bomex
489  case(i_oceancouple)
490  call mkinit_planestate
491  call mkinit_oceancouple
492  case(i_landcouple)
493  call mkinit_planestate
494  call mkinit_landcouple
495  case(i_urbancouple)
496  call mkinit_planestate
497  call mkinit_urbancouple
498  case(i_triplecouple)
499  call mkinit_planestate
500  call mkinit_oceancouple
501  call mkinit_landcouple
502  call mkinit_urbancouple
503  case(i_bubblecouple)
504  call mkinit_planestate
505  call mkinit_warmbubble
506  call mkinit_oceancouple
507  call mkinit_landcouple
508  call mkinit_urbancouple
509  case(i_seabreeze)
510  call mkinit_planestate
511  call mkinit_seabreeze
512  case(i_heatisland)
513  call mkinit_planestate
514  call mkinit_heatisland
515  case(i_dycoms2_rf02_dns)
516  call mkinit_dycoms2_rf02_dns
517  case(i_real)
518  call mkinit_real
519  convert_qtrc = .false.
520  case(i_grayzone)
521  call mkinit_grayzone
522  case(i_boxaero)
523  call mkinit_boxaero
524  case(i_warmbubbleaero)
525  call mkinit_warmbubbleaero
526  case(i_cavityflow)
527  call mkinit_cavityflow
528  case(i_barocwave)
529  call mkinit_barocwave
530  case default
531  log_error("MKINIT",*) 'Unsupported TYPE:', mkinit_type
532  call prc_abort
533  endselect
534 
535  ! water content
536  if ( ( .not. atmos_hydrometeor_dry ) .AND. convert_qtrc ) then
537  !$acc kernels
538 !OCL XFILL
539  qhyd(:,:,:,i_hc) = qc(:,:,:)
540 !OCL XFILL
541  qnum(:,:,:,i_hc) = nc(:,:,:)
542  !$acc end kernels
543  call atmos_phy_mp_driver_qhyd2qtrc( ka, ks, ke, ia, is, ie, ja, js, je, &
544  qv(:,:,:), qhyd(:,:,:,:), & ! [IN]
545  qtrc(:,:,:,qs_mp:qe_mp), & ! [OUT]
546  qnum=qnum(:,:,:,:) ) ! [IN]
547  end if
548 
549  call tke_setup
550 
551  call aerosol_setup
552 
553  call sbmaero_setup( convert_qtrc ) ! [INOUT]
554 
555  ! passive tracer
556  call tracer_inq_id( "PTracer", iq )
557  if ( iq > 0 ) qtrc(:,:,:,iq) = ptrc(:,:,:)
558 
559  !$omp parallel do collapse(3)
560  !$acc kernels
561  do iq = 1, qa
562  do j = 1, ja
563  do i = 1, ia
564  do k = 1, ka
565  if ( qtrc(k,i,j,iq) == undef ) then
566  qtrc(k,i,j,iq) = 0.0_rp
567  end if
568  end do
569  end do
570  end do
571  end do
572  !$acc end kernels
573 
574  call prof_rapend ('_MkInit_main',3)
575 
576  log_progress(*) 'end making initial data'
577 
578  output = .true.
579 
580  endif
581 
582  return

References scale_atmos_hydrometeor::atmos_hydrometeor_dry, mod_atmos_phy_mp_driver::atmos_phy_mp_driver_qhyd2qtrc(), scale_const::const_undef, scale_const::const_undef8, i_barocwave, i_bomex, i_boxaero, i_bubblecouple, i_cavityflow, i_coldbubble, i_dycoms2_rf01, i_dycoms2_rf02, i_dycoms2_rf02_dns, i_gravitywave, i_grayzone, scale_atmos_hydrometeor::i_hc, i_heatisland, i_ignore, i_khwave, i_lambwave, i_landcouple, i_mountainwave, i_oceancouple, i_planestate, i_real, i_rico, i_seabreeze, i_squallline, i_supercell, i_tracerbubble, i_triplecouple, i_turbulence, i_urbancouple, i_warmbubble, i_warmbubbleaero, i_wk1982, scale_atmos_grid_cartesc_index::ia, scale_atmos_grid_cartesc_index::iag, scale_atmos_grid_cartesc_index::ie, scale_atmos_grid_cartesc_index::ihalo, scale_io::io_fid_conf, scale_atmos_grid_cartesc_index::is, scale_atmos_grid_cartesc_index::ja, scale_atmos_grid_cartesc_index::jag, scale_atmos_grid_cartesc_index::je, scale_atmos_grid_cartesc_index::jhalo, 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, mkinit_type, scale_atmos_hydrometeor::n_hyd, scale_prc::prc_abort(), scale_prof::prof_rapend(), scale_prof::prof_rapstart(), scale_tracer::qa, mod_atmos_phy_mp_vars::qe_mp, mod_atmos_phy_mp_vars::qs_mp, mod_atmos_vars::qtrc, tke_setup(), and scale_tracer::tracer_inq_id().

Referenced by mod_rm_prep::rm_prep().

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

◆ rect_setup()

subroutine mod_mkinit::rect_setup

Bubble.

Definition at line 709 of file mod_mkinit.F90.

709  use scale_const, only: &
711  implicit none
712 
713  ! Bubble
714  logical :: RCT_eachnode = .false. ! Arrange rectangle at each node? [kg/kg]
715  real(RP) :: RCT_CZ = 2.e3_rp ! center location [m]: z
716  real(RP) :: RCT_CX = 2.e3_rp ! center location [m]: x
717  real(RP) :: RCT_CY = 2.e3_rp ! center location [m]: y
718  real(RP) :: RCT_RZ = 2.e3_rp ! rectangle z width [m]: z
719  real(RP) :: RCT_RX = 2.e3_rp ! rectangle x width [m]: x
720  real(RP) :: RCT_RY = 2.e3_rp ! rectangle y width [m]: y
721 
722  namelist / param_rect / &
723  rct_eachnode, &
724  rct_cz, &
725  rct_cx, &
726  rct_cy, &
727  rct_rz, &
728  rct_rx, &
729  rct_ry
730 
731  real(RP) :: CZ_offset
732  real(RP) :: CX_offset
733  real(RP) :: CY_offset
734  real(RP) :: dist
735 
736  integer :: ierr
737  integer :: k, i, j
738  !---------------------------------------------------------------------------
739 
740  log_newline
741  log_info("RECT_setup",*) 'Setup'
742 
743  !--- read namelist
744  rewind(io_fid_conf)
745  read(io_fid_conf,nml=param_rect,iostat=ierr)
746  if( ierr < 0 ) then !--- missing
747  log_error("RECT_setup",*) 'Not found namelist. Check!'
748  call prc_abort
749  elseif( ierr > 0 ) then !--- fatal error
750  log_error("RECT_setup",*) 'Not appropriate names in namelist PARAM_RECT. Check!'
751  call prc_abort
752  endif
753  log_nml(param_rect)
754 
755  !$acc kernels
756  rect(:,:,:) = const_undef8
757  !$acc end kernels
758 
759  if ( rct_eachnode ) then
760  cz_offset = cz(ks)
761  cx_offset = cx(is)
762  cy_offset = cy(js)
763  else
764  cz_offset = 0.0_rp
765  cx_offset = 0.0_rp
766  cy_offset = 0.0_rp
767  endif
768 
769  !$acc kernels
770  do j = 1, ja
771  do i = 1, ia
772  do k = ks, ke
773 
774  ! make tracer rectangle
775  dist = 2.0_rp * max( &
776  abs(cz(k) - cz_offset - rct_cz)/rct_rz, &
777  abs(cx(i) - cx_offset - rct_cx)/rct_rx, &
778  abs(cy(j) - cy_offset - rct_cy)/rct_ry &
779  & )
780  if ( dist <= 1.0_rp ) then
781  rect(k,i,j) = 1.0_rp
782  else
783  rect(k,i,j) = 0.0_rp
784  end if
785  enddo
786  enddo
787  enddo
788  !$acc end kernels
789 
790  return

References scale_atmos_phy_ae_kajino13::atmos_phy_ae_kajino13_mkinit(), scale_atmos_phy_ae_offline::atmos_phy_ae_offline_mkinit(), mod_atmos_admin::atmos_phy_ae_type, mod_atmos_admin::atmos_phy_mp_type, scale_const::const_undef8, mod_atmos_vars::dens, scale_atmos_hydrometeor::i_qv, scale_atmos_grid_cartesc_index::ia, scale_atmos_grid_cartesc_index::ie, scale_atmos_grid_cartesc_index::ieb, scale_io::io_fid_conf, scale_atmos_grid_cartesc_index::is, scale_atmos_grid_cartesc_index::isb, scale_atmos_grid_cartesc_index::ja, scale_atmos_grid_cartesc_index::je, scale_atmos_grid_cartesc_index::jeb, scale_atmos_grid_cartesc_index::js, scale_atmos_grid_cartesc_index::jsb, scale_atmos_grid_cartesc_index::ke, scale_atmos_grid_cartesc_index::ks, scale_atmos_phy_mp_suzuki10::nccn, scale_prc::prc_abort(), mod_atmos_phy_ae_vars::qa_ae, mod_atmos_phy_ae_vars::qe_ae, scale_atmos_hydrometeor::qhe, mod_atmos_phy_ae_vars::qs_ae, and mod_atmos_vars::qtrc.

Referenced by read_sounding().

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

◆ faero()

real(rp) function mod_mkinit::faero ( real(rp), intent(in)  f0,
real(rp), intent(in)  r0,
real(rp), intent(in)  x,
real(rp), intent(in)  alpha,
real(rp), intent(in)  rhoa 
)

Definition at line 954 of file mod_mkinit.F90.

954  use scale_const, only: &
955  pi => const_pi
956  implicit none
957 
958  real(RP), intent(in) :: x, f0, r0, alpha, rhoa
959  real(RP) :: faero
960  real(RP) :: rad
961  !---------------------------------------------------------------------------
962 
963  rad = ( exp(x) * 3.0_rp / 4.0_rp / pi / rhoa )**(1.0_rp/3.0_rp)
964 
965  faero = f0 * (rad/r0)**(-alpha)
966 
967  return

References scale_const::const_pi.

◆ flux_setup()

subroutine mod_mkinit::flux_setup

flux setup

Definition at line 973 of file mod_mkinit.F90.

973  use mod_atmos_phy_mp_vars, only: &
974  sflx_rain => atmos_phy_mp_sflx_rain, &
975  sflx_snow => atmos_phy_mp_sflx_snow
976  use mod_atmos_phy_rd_vars, only: &
977  sflx_lw_up => atmos_phy_rd_sflx_lw_up, &
978  sflx_lw_dn => atmos_phy_rd_sflx_lw_dn, &
979  sflx_sw_up => atmos_phy_rd_sflx_sw_up, &
980  sflx_sw_dn => atmos_phy_rd_sflx_sw_dn
981  implicit none
982 
983  ! Flux from Atmosphere
984  real(RP) :: FLX_rain = 0.0_rp ! surface rain flux [kg/m2/s]
985  real(RP) :: FLX_snow = 0.0_rp ! surface snow flux [kg/m2/s]
986  real(RP) :: FLX_IR_dn = 0.0_rp ! surface downwad radiation flux [J/m2/s]
987  real(RP) :: FLX_NIR_dn = 0.0_rp ! surface downwad radiation flux [J/m2/s]
988  real(RP) :: FLX_VIS_dn = 0.0_rp ! surface downwad radiation flux [J/m2/s]
989 
990  namelist / param_mkinit_flux / &
991  flx_rain, &
992  flx_snow, &
993  flx_ir_dn, &
994  flx_nir_dn, &
995  flx_vis_dn
996 
997  integer :: i, j
998  integer :: ierr
999  !---------------------------------------------------------------------------
1000 
1001  !--- read namelist
1002  rewind(io_fid_conf)
1003  read(io_fid_conf,nml=param_mkinit_flux,iostat=ierr)
1004  if( ierr < 0 ) then !--- missing
1005  log_info("flux_setup",*) 'Not found namelist. Default used.'
1006  elseif( ierr > 0 ) then !--- fatal error
1007  log_error("flux_setup",*) 'Not appropriate names in namelist PARAM_MKINIT_FLUX. Check!'
1008  call prc_abort
1009  endif
1010  log_nml(param_mkinit_flux)
1011 
1012  !$acc kernels
1013  do j = jsb, jeb
1014  do i = isb, ieb
1015  sflx_rain(i,j) = flx_rain
1016  sflx_snow(i,j) = flx_snow
1017 
1018  sflx_lw_up(i,j) = 0.0_rp
1019  sflx_lw_dn(i,j) = flx_ir_dn
1020  sflx_sw_up(i,j) = 0.0_rp
1021  sflx_sw_dn(i,j) = flx_nir_dn + flx_vis_dn
1022  enddo
1023  enddo
1024  !$acc end kernels
1025 
1026  return

References mod_atmos_phy_mp_vars::atmos_phy_mp_sflx_rain, mod_atmos_phy_mp_vars::atmos_phy_mp_sflx_snow, mod_atmos_phy_rd_vars::atmos_phy_rd_sflx_lw_dn, mod_atmos_phy_rd_vars::atmos_phy_rd_sflx_lw_up, mod_atmos_phy_rd_vars::atmos_phy_rd_sflx_sw_dn, mod_atmos_phy_rd_vars::atmos_phy_rd_sflx_sw_up, scale_atmos_grid_cartesc_index::ieb, scale_io::io_fid_conf, scale_atmos_grid_cartesc_index::isb, scale_atmos_grid_cartesc_index::jeb, scale_atmos_grid_cartesc_index::jsb, and scale_prc::prc_abort().

Referenced by read_sounding().

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

◆ land_setup()

subroutine mod_mkinit::land_setup

Land setup.

Definition at line 1032 of file mod_mkinit.F90.

1032  use mod_land_vars, only: &
1033  land_temp, &
1034  land_water, &
1035  land_ice, &
1036  land_sfc_temp, &
1037  land_sfc_albedo, &
1038  snow_flag, &
1039  snow_sfc_temp, &
1040  snow_swe, &
1041  snow_depth, &
1042  snow_dzero, &
1044  implicit none
1045 
1046  real(RP) :: LND_TEMP ! land soil temperature [K]
1047  real(RP) :: LND_WATER = 0.15_rp ! land soil moisture [m3/m3]
1048  real(RP) :: LND_ICE = 0.00_rp ! land soil ice [m3/m3]
1049  real(RP) :: SFC_TEMP ! land skin temperature [K]
1050  real(RP) :: SFC_albedo_LW = 0.01_rp ! land surface albedo for LW (0-1)
1051  real(RP) :: SFC_albedo_SW = 0.20_rp ! land surface albedo for SW (0-1)
1052 
1053  namelist / param_mkinit_land / &
1054  lnd_temp, &
1055  lnd_water, &
1056  lnd_ice, &
1057  sfc_temp, &
1058  sfc_albedo_lw, &
1059  sfc_albedo_sw
1060 
1061  integer :: ierr
1062  !---------------------------------------------------------------------------
1063 
1064  lnd_temp = thetastd
1065  sfc_temp = thetastd
1066 
1067  !--- read namelist
1068  rewind(io_fid_conf)
1069  read(io_fid_conf,nml=param_mkinit_land,iostat=ierr)
1070  if( ierr < 0 ) then !--- missing
1071  log_info("land_setup",*) 'Not found namelist. Default used.'
1072  elseif( ierr > 0 ) then !--- fatal error
1073  log_error("land_setup",*) 'Not appropriate names in namelist PARAM_MKINIT_LAND. Check!'
1074  call prc_abort
1075  endif
1076  log_nml(param_mkinit_land)
1077 
1078  !$acc kernels
1079  land_temp(:,:,:) = lnd_temp
1080  land_water(:,:,:) = lnd_water
1081  land_ice(:,:,:) = lnd_ice
1082  !$acc end kernels
1083 
1084  !$acc kernels
1085  land_sfc_temp(:,:) = sfc_temp
1086  !$acc end kernels
1087  !$acc kernels
1088  land_sfc_albedo(:,:,:,i_r_ir) = sfc_albedo_lw
1089  land_sfc_albedo(:,:,:,i_r_nir) = sfc_albedo_sw
1090  land_sfc_albedo(:,:,:,i_r_vis) = sfc_albedo_sw
1091  !$acc end kernels
1092 
1093  if ( snow_flag ) then
1094  !!!!! Tentative for snow model !!!!!
1095  !$acc kernels
1096  snow_sfc_temp(:,:) = 273.15_rp
1097  snow_swe(:,:) = 0.0_rp
1098  snow_depth(:,:) = 0.0_rp
1099  snow_dzero(:,:) = 0.0_rp
1100  snow_nosnowsec(:,:) = 0.0_rp
1101  !$acc end kernels
1102  end if
1103 
1104  return

References scale_cpl_sfc_index::i_r_ir, scale_cpl_sfc_index::i_r_nir, scale_cpl_sfc_index::i_r_vis, scale_io::io_fid_conf, mod_land_vars::land_ice, mod_land_vars::land_sfc_albedo, mod_land_vars::land_sfc_temp, mod_land_vars::land_temp, mod_land_vars::land_water, scale_prc::prc_abort(), mod_land_vars::snow_depth, mod_land_vars::snow_dzero, mod_land_vars::snow_flag, mod_land_vars::snow_nosnowsec, mod_land_vars::snow_sfc_temp, and mod_land_vars::snow_swe.

Referenced by read_sounding().

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

◆ ocean_setup()

subroutine mod_mkinit::ocean_setup

Ocean setup.

Definition at line 1110 of file mod_mkinit.F90.

1110  use mod_ocean_vars, only: &
1111  ice_flag, &
1112  ocean_temp, &
1113  ocean_salt, &
1114  ocean_uvel, &
1115  ocean_vvel, &
1116  ocean_ocn_z0m, &
1117  ocean_ice_temp, &
1118  ocean_ice_mass, &
1119  ocean_sfc_temp, &
1120  ocean_sfc_albedo, &
1121  ocean_sfc_z0m, &
1122  ocean_sfc_z0h, &
1124  implicit none
1125 
1126  real(RP) :: OCN_TEMP ! ocean temperature [K]
1127  real(RP) :: OCN_SALT = 0.0_rp ! ocean salinity [psu]
1128  real(RP) :: OCN_UVEL = 0.0_rp ! ocean u-velocity [m/s]
1129  real(RP) :: OCN_VVEL = 0.0_rp ! ocean v-velocity [m/s]
1130  real(RP) :: ICE_TEMP ! ocean temperature [K]
1131  real(RP) :: ICE_MASS = 0.0_rp ! ocean temperature [K]
1132  real(RP) :: SFC_TEMP ! ocean skin temperature [K]
1133  real(RP) :: SFC_albedo_LW = 0.04_rp ! ocean surface albedo for LW (0-1)
1134  real(RP) :: SFC_albedo_SW = 0.05_rp ! ocean surface albedo for SW (0-1)
1135  real(RP) :: SFC_Z0M = 1.e-4_rp ! ocean surface roughness length (momentum) [m]
1136  real(RP) :: SFC_Z0H = 1.e-4_rp ! ocean surface roughness length (heat) [m]
1137  real(RP) :: SFC_Z0E = 1.e-4_rp ! ocean surface roughness length (vapor) [m]
1138 
1139  namelist / param_mkinit_ocean / &
1140  ocn_temp, &
1141  ocn_salt, &
1142  ocn_uvel, &
1143  ocn_vvel, &
1144  ice_temp, &
1145  ice_mass, &
1146  sfc_temp, &
1147  sfc_albedo_lw, &
1148  sfc_albedo_sw, &
1149  sfc_z0m, &
1150  sfc_z0h, &
1151  sfc_z0e
1152 
1153  integer :: ierr
1154  !---------------------------------------------------------------------------
1155 
1156  ocn_temp = thetastd
1157  ice_temp = 271.35_rp ! freezing point of the ocean
1158  sfc_temp = thetastd
1159 
1160  !--- read namelist
1161  rewind(io_fid_conf)
1162  read(io_fid_conf,nml=param_mkinit_ocean,iostat=ierr)
1163  if( ierr < 0 ) then !--- missing
1164  log_info("ocean_setup",*) 'Not found namelist. Default used.'
1165  elseif( ierr > 0 ) then !--- fatal error
1166  log_error("ocean_setup",*) 'Not appropriate names in namelist PARAM_MKINIT_OCEAN. Check!'
1167  call prc_abort
1168  endif
1169  log_nml(param_mkinit_ocean)
1170 
1171  !$acc kernels
1172  ocean_temp(:,:,:) = ocn_temp
1173  ocean_salt(:,:,:) = ocn_salt
1174  ocean_uvel(:,:,:) = ocn_uvel
1175  ocean_vvel(:,:,:) = ocn_vvel
1176  !$acc end kernels
1177  !$acc kernels
1178  ocean_ocn_z0m(:,:) = sfc_z0m
1179  ocean_sfc_temp(:,:) = sfc_temp
1180  !$acc end kernels
1181  !$acc kernels
1182  ocean_sfc_albedo(:,:,:,i_r_ir) = sfc_albedo_lw
1183  ocean_sfc_albedo(:,:,:,i_r_nir) = sfc_albedo_sw
1184  ocean_sfc_albedo(:,:,:,i_r_vis) = sfc_albedo_sw
1185  !$acc end kernels
1186  !$acc kernels
1187  ocean_sfc_z0m(:,:) = sfc_z0m
1188  ocean_sfc_z0h(:,:) = sfc_z0h
1189  ocean_sfc_z0e(:,:) = sfc_z0e
1190  !$acc end kernels
1191 
1192  if ( ice_flag ) then
1193  !$acc kernels
1194  ocean_ice_temp(:,:) = ice_temp
1195  ocean_ice_mass(:,:) = ice_mass
1196  !$acc end kernels
1197  end if
1198 
1199  return

References scale_cpl_sfc_index::i_r_ir, scale_cpl_sfc_index::i_r_nir, scale_cpl_sfc_index::i_r_vis, mod_ocean_vars::ice_flag, scale_io::io_fid_conf, mod_ocean_vars::ocean_ice_mass, mod_ocean_vars::ocean_ice_temp, mod_ocean_vars::ocean_ocn_z0m, mod_ocean_vars::ocean_salt, mod_ocean_vars::ocean_sfc_albedo, mod_ocean_vars::ocean_sfc_temp, mod_ocean_vars::ocean_sfc_z0e, mod_ocean_vars::ocean_sfc_z0h, mod_ocean_vars::ocean_sfc_z0m, mod_ocean_vars::ocean_temp, mod_ocean_vars::ocean_uvel, mod_ocean_vars::ocean_vvel, and scale_prc::prc_abort().

Referenced by read_sounding().

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

◆ urban_setup()

subroutine mod_mkinit::urban_setup

Urban setup.

Definition at line 1205 of file mod_mkinit.F90.

1205  use mod_urban_vars, only: &
1206  urban_tr, &
1207  urban_tb, &
1208  urban_tg, &
1209  urban_tc, &
1210  urban_qc, &
1211  urban_uc, &
1212  urban_trl, &
1213  urban_tbl, &
1214  urban_tgl, &
1215  urban_rainr, &
1216  urban_rainb, &
1217  urban_raing, &
1218  urban_sfc_temp, &
1220  implicit none
1221 
1222  real(RP) :: URB_ROOF_TEMP ! Surface temperature of roof [K]
1223  real(RP) :: URB_BLDG_TEMP ! Surface temperature of building [K]
1224  real(RP) :: URB_GRND_TEMP ! Surface temperature of ground [K]
1225  real(RP) :: URB_CNPY_TEMP ! Diagnostic canopy air temperature [K]
1226  real(RP) :: URB_CNPY_HMDT = 0.0_rp ! Diagnostic canopy humidity [kg/kg]
1227  real(RP) :: URB_CNPY_WIND = 0.0_rp ! Diagnostic canopy wind [m/s]
1228  real(RP) :: URB_ROOF_LAYER_TEMP ! temperature in layer of roof [K]
1229  real(RP) :: URB_BLDG_LAYER_TEMP ! temperature in layer of building [K]
1230  real(RP) :: URB_GRND_LAYER_TEMP ! temperature in layer of ground [K]
1231  real(RP) :: URB_ROOF_RAIN = 0.0_rp ! temperature in layer of roof [kg/m2]
1232  real(RP) :: URB_BLDG_RAIN = 0.0_rp ! temperature in layer of building [kg/m2]
1233  real(RP) :: URB_GRND_RAIN = 0.0_rp ! temperature in layer of ground [kg/m2]
1234  real(RP) :: URB_SFC_TEMP ! Grid average of surface temperature [K]
1235  real(RP) :: URB_ALB_LW = 0.10_rp ! Grid average of surface albedo for LW (0-1)
1236  real(RP) :: URB_ALB_SW = 0.20_rp ! Grid average of surface albedo for SW (0-1)
1237 
1238  namelist / param_mkinit_urban / &
1239  urb_roof_temp, &
1240  urb_bldg_temp, &
1241  urb_grnd_temp, &
1242  urb_cnpy_temp, &
1243  urb_cnpy_hmdt, &
1244  urb_cnpy_wind, &
1245  urb_roof_layer_temp, &
1246  urb_bldg_layer_temp, &
1247  urb_grnd_layer_temp, &
1248  urb_roof_rain, &
1249  urb_bldg_rain, &
1250  urb_grnd_rain, &
1251  urb_sfc_temp, &
1252  urb_alb_lw, &
1253  urb_alb_sw
1254 
1255  integer :: ierr
1256  !---------------------------------------------------------------------------
1257 
1258  urb_roof_temp = thetastd
1259  urb_bldg_temp = thetastd
1260  urb_grnd_temp = thetastd
1261  urb_cnpy_temp = thetastd
1262  urb_roof_layer_temp = thetastd
1263  urb_bldg_layer_temp = thetastd
1264  urb_grnd_layer_temp = thetastd
1265  urb_sfc_temp = thetastd
1266 
1267  !--- read namelist
1268  rewind(io_fid_conf)
1269  read(io_fid_conf,nml=param_mkinit_urban,iostat=ierr)
1270  if( ierr < 0 ) then !--- missing
1271  log_info("urban_setup",*) 'Not found namelist. Default used.'
1272  elseif( ierr > 0 ) then !--- fatal error
1273  log_error("urban_setup",*) 'Not appropriate names in namelist PARAM_MKINIT_URBAN. Check!'
1274  call prc_abort
1275  endif
1276  log_nml(param_mkinit_urban)
1277 
1278  !$acc kernels
1279  urban_trl(:,:,:) = urb_roof_layer_temp
1280  urban_tbl(:,:,:) = urb_bldg_layer_temp
1281  urban_tgl(:,:,:) = urb_grnd_layer_temp
1282  !$acc end kernels
1283 
1284  !$acc kernels
1285  urban_tr(:,:) = urb_roof_temp
1286  urban_tb(:,:) = urb_bldg_temp
1287  urban_tg(:,:) = urb_grnd_temp
1288  urban_tc(:,:) = urb_cnpy_temp
1289  urban_qc(:,:) = urb_cnpy_hmdt
1290  urban_uc(:,:) = urb_cnpy_wind
1291  urban_rainr(:,:) = urb_roof_rain
1292  urban_rainb(:,:) = urb_bldg_rain
1293  urban_raing(:,:) = urb_grnd_rain
1294  urban_sfc_temp(:,:) = urb_sfc_temp
1295  !$acc end kernels
1296  !$acc kernels
1297  urban_sfc_albedo(:,:,:,i_r_ir) = urb_alb_lw
1298  urban_sfc_albedo(:,:,:,i_r_nir) = urb_alb_sw
1299  urban_sfc_albedo(:,:,:,i_r_vis) = urb_alb_sw
1300  !$acc end kernels
1301 
1302  return

References scale_cpl_sfc_index::i_r_ir, scale_cpl_sfc_index::i_r_nir, scale_cpl_sfc_index::i_r_vis, scale_io::io_fid_conf, scale_prc::prc_abort(), mod_urban_vars::urban_qc, mod_urban_vars::urban_rainb, mod_urban_vars::urban_raing, mod_urban_vars::urban_rainr, mod_urban_vars::urban_sfc_albedo, mod_urban_vars::urban_sfc_temp, mod_urban_vars::urban_tb, mod_urban_vars::urban_tbl, mod_urban_vars::urban_tc, mod_urban_vars::urban_tg, mod_urban_vars::urban_tgl, mod_urban_vars::urban_tr, mod_urban_vars::urban_trl, and mod_urban_vars::urban_uc.

Referenced by read_sounding().

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

◆ tke_setup()

subroutine mod_mkinit::tke_setup

TKE setup.

Definition at line 1308 of file mod_mkinit.F90.

1308  use scale_const, only: &
1309  eps => const_eps, &
1310  undef => const_undef
1311  use mod_atmos_phy_tb_vars, only: &
1312  i_tke
1313  use mod_atmos_phy_bl_vars, only: &
1314  zi => atmos_phy_bl_zi
1315  use mod_atmos_phy_bl_driver, only: &
1317  implicit none
1318 
1319  real(RP) :: TKE_CONST
1320  real(RP) :: Zi_CONST
1321 
1322  namelist / param_mkinit_tke / &
1323  tke_const, &
1324  zi_const
1325 
1326  integer :: k, i, j
1327  integer :: ierr
1328  !---------------------------------------------------------------------------
1329 
1330  tke_const = eps
1331  zi_const = 100.0_rp
1332 
1333  !--- read namelist
1334  rewind(io_fid_conf)
1335  read(io_fid_conf,nml=param_mkinit_tke,iostat=ierr)
1336  if( ierr < 0 ) then !--- missing
1337  log_info("tke_setup",*) 'Not found namelist. Default used.'
1338  elseif( ierr > 0 ) then !--- fatal error
1339  log_error("tke_setup",*) 'Not appropriate names in namelist PARAM_MKINIT_TKE. Check!'
1340  call prc_abort
1341  endif
1342  log_nml(param_mkinit_tke)
1343 
1344  if ( i_tke > 0 ) then ! TB
1345  !$omp parallel do collapse(2)
1346  !$acc kernels
1347  do j = jsb, jeb
1348  do i = isb, ieb
1349  do k = 1, ka
1350  if ( qtrc(k,i,j,i_tke) == undef ) then
1351  qtrc(k,i,j,i_tke) = tke_const
1352  end if
1353  enddo
1354  enddo
1355  enddo
1356  !$acc end kernels
1357  end if
1358 
1359  !$acc kernels
1360  do j = jsb, jeb
1361  do i = isb, ieb
1362  zi(i,j) = zi_const
1363  end do
1364  end do
1365  !$acc end kernels
1366 
1367  ! BL
1368  call atmos_phy_bl_driver_mkinit( tke_const )
1369 
1370  return

References mod_atmos_phy_bl_driver::atmos_phy_bl_driver_mkinit(), mod_atmos_phy_bl_vars::atmos_phy_bl_zi, scale_const::const_eps, scale_const::const_undef, mod_atmos_phy_tb_vars::i_tke, scale_atmos_grid_cartesc_index::ieb, scale_io::io_fid_conf, scale_atmos_grid_cartesc_index::isb, scale_atmos_grid_cartesc_index::jeb, scale_atmos_grid_cartesc_index::jsb, scale_atmos_grid_cartesc_index::ka, scale_prc::prc_abort(), and mod_atmos_vars::qtrc.

Referenced by mkinit().

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

◆ read_sounding()

subroutine mod_mkinit::read_sounding ( real(rp), dimension(ka), intent(out)  DENS,
real(rp), dimension(ka), intent(out)  VELX,
real(rp), dimension(ka), intent(out)  VELY,
real(rp), dimension(ka), intent(out)  POTT,
real(rp), dimension (ka), intent(out)  QV 
)

Read sounding data from file.

Definition at line 1377 of file mod_mkinit.F90.

1377  use scale_atmos_hydrometeor, only: &
1379  implicit none
1380 
1381  real(RP), intent(out) :: DENS(KA)
1382  real(RP), intent(out) :: VELX(KA)
1383  real(RP), intent(out) :: VELY(KA)
1384  real(RP), intent(out) :: POTT(KA)
1385  real(RP), intent(out) :: QV (KA)
1386 
1387  real(RP) :: TEMP(KA)
1388  real(RP) :: PRES(KA)
1389  real(RP) :: QC (KA)
1390 
1391  character(len=H_LONG) :: ENV_IN_SOUNDING_file = ''
1392 
1393  integer, parameter :: EXP_klim = 100
1394  integer :: EXP_kmax
1395 
1396  real(RP) :: SFC_THETA ! surface potential temperature [K]
1397  real(RP) :: SFC_PRES ! surface pressure [hPa]
1398  real(RP) :: SFC_QV ! surface watervapor [g/kg]
1399 
1400  real(RP) :: EXP_z (EXP_klim+1) ! height [m]
1401  real(RP) :: EXP_pott(EXP_klim+1) ! potential temperature [K]
1402  real(RP) :: EXP_qv (EXP_klim+1) ! water vapor [g/kg]
1403  real(RP) :: EXP_u (EXP_klim+1) ! velocity u [m/s]
1404  real(RP) :: EXP_v (EXP_klim+1) ! velocity v [m/s]
1405 
1406  real(RP) :: fact1, fact2
1407  integer :: k, kref
1408 
1409  integer :: fid
1410  character(len=H_LONG) :: fname
1411 
1412  logical :: converged
1413 
1414 #ifdef _OPENACC
1415  real(RP) :: work1(KA)
1416  real(RP) :: work2(KA)
1417  real(RP) :: work3(KA)
1418 #endif
1419 
1420  integer :: ierr
1421 
1422  namelist / param_mkinit_sounding / &
1423  env_in_sounding_file
1424 
1425  !--- read namelist
1426  rewind(io_fid_conf)
1427  read(io_fid_conf,nml=param_mkinit_sounding,iostat=ierr)
1428 
1429  if( ierr < 0 ) then !--- missing
1430  log_info("read_sounding",*) 'Not found namelist. Default used.'
1431  elseif( ierr > 0 ) then !--- fatal error
1432  log_error("read_sounding",*) 'Not appropriate names in namelist PARAM_MKINIT_SOUNDING. Check!'
1433  call prc_abort
1434  endif
1435  log_nml(param_mkinit_sounding)
1436 
1437  !--- prepare sounding profile
1438  fid = io_get_available_fid()
1439  call io_get_fname(fname, env_in_sounding_file)
1440  log_info("read_sounding",*) 'Input sounding file:', trim(fname)
1441  open( fid, &
1442  file = fname, &
1443  form = 'formatted', &
1444  status = 'old', &
1445  iostat = ierr )
1446 
1447  if ( ierr /= 0 ) then
1448  log_error("read_sounding",*) '[mod_mkinit/read_sounding] Input file not found!'
1449  endif
1450 
1451  !--- read sounding file till end
1452  read(fid,*) sfc_pres, sfc_theta, sfc_qv
1453 
1454  log_info("read_sounding",*) '+ Surface pressure [hPa]', sfc_pres
1455  log_info("read_sounding",*) '+ Surface pot. temp [K]', sfc_theta
1456  log_info("read_sounding",*) '+ Surface water vapor [g/kg]', sfc_qv
1457 
1458  do k = 2, exp_klim
1459  read(fid,*,iostat=ierr) exp_z(k), exp_pott(k), exp_qv(k), exp_u(k), exp_v(k)
1460  if ( ierr /= 0 ) exit
1461  enddo
1462 
1463  exp_kmax = k - 1
1464  close(fid)
1465 
1466  ! Boundary
1467  exp_z(1) = 0.0_rp
1468  exp_pott(1) = sfc_theta
1469  exp_qv(1) = sfc_qv
1470  exp_u(1) = exp_u(2)
1471  exp_v(1) = exp_v(2)
1472  exp_z(exp_kmax+1) = 100.e3_rp
1473  exp_pott(exp_kmax+1) = exp_pott(exp_kmax)
1474  exp_qv(exp_kmax+1) = exp_qv(exp_kmax)
1475  exp_u(exp_kmax+1) = exp_u(exp_kmax)
1476  exp_v(exp_kmax+1) = exp_v(exp_kmax)
1477 
1478  do k = 1, exp_kmax+1
1479  exp_qv(k) = exp_qv(k) * 1.e-3_rp ! [g/kg]->[kg/kg]
1480  enddo
1481 
1482  ! calc in dry condition
1483  pres_sfc(:,:) = sfc_pres * 1.e2_rp ! [hPa]->[Pa]
1484  pott_sfc(:,:) = sfc_theta
1485  if ( .not. atmos_hydrometeor_dry ) then
1486  qv_sfc(:,:) = sfc_qv * 1.e-3_rp ! [g/kg]->[kg/kg]
1487  end if
1488 
1489  !--- linear interpolate to model grid
1490  do k = ks, ke
1491  do kref = 2, exp_kmax+1
1492  if ( cz(k) > exp_z(kref-1) &
1493  .AND. cz(k) <= exp_z(kref ) ) then
1494 
1495  fact1 = ( exp_z(kref) - cz(k) ) / ( exp_z(kref)-exp_z(kref-1) )
1496  fact2 = ( cz(k) - exp_z(kref-1) ) / ( exp_z(kref)-exp_z(kref-1) )
1497 
1498  pott(k) = exp_pott(kref-1) * fact1 &
1499  + exp_pott(kref ) * fact2
1500  qv(k) = exp_qv(kref-1) * fact1 &
1501  + exp_qv(kref ) * fact2
1502  velx(k) = exp_u(kref-1) * fact1 &
1503  + exp_u(kref ) * fact2
1504  vely(k) = exp_v(kref-1) * fact1 &
1505  + exp_v(kref ) * fact2
1506  endif
1507  enddo
1508  enddo
1509  if ( atmos_hydrometeor_dry ) qv(:) = 0.0_rp
1510 
1511  qc(:) = 0.0_rp
1512 
1513  ! make density & pressure profile in moist condition
1514  call hydrostatic_buildrho( ka, ks, ke, &
1515  pott(:), qv(:), qc(:), & ! [IN]
1516  pres_sfc(1,1), pott_sfc(1,1), qv_sfc(1,1), qc_sfc(1,1), & ! [IN]
1517  cz(:), fz(:), & ! [IN]
1518 #ifdef _OPENACC
1519  work1(:), work2(:), work3(:), & ! [WORK]
1520 #endif
1521  dens(:), temp(:), pres(:), temp_sfc(1,1), & ! [OUT]
1522  converged ) ! [OUT]
1523 
1524  return

References scale_atmos_grid_cartesc::atmos_grid_cartesc_domain_center_x, scale_atmos_grid_cartesc::atmos_grid_cartesc_domain_center_y, scale_atmos_grid_cartesc::atmos_grid_cartesc_fyg, scale_atmos_hydrometeor::atmos_hydrometeor_dry, mod_atmos_admin::atmos_phy_ae_type, scale_const::const_cl, scale_const::const_cpdry, scale_const::const_cpvap, scale_const::const_cvdry, scale_const::const_cvvap, scale_const::const_grav, scale_const::const_ohm, scale_const::const_radius, scale_const::const_rdry, scale_const::const_rvap, mod_atmos_vars::dens, flux_setup(), scale_atmos_grid_cartesc_index::ia, scale_atmos_grid_cartesc_index::ieb, scale_atmos_grid_cartesc_index::imax, scale_io::io_fid_conf, scale_io::io_get_available_fid(), scale_io::io_get_fname(), scale_atmos_grid_cartesc_index::is, scale_atmos_grid_cartesc_index::isb, scale_atmos_grid_cartesc_index::ja, scale_atmos_grid_cartesc_index::jag, scale_atmos_grid_cartesc_index::je, scale_atmos_grid_cartesc_index::jeb, scale_atmos_grid_cartesc_index::jhalo, scale_atmos_grid_cartesc_index::js, scale_atmos_grid_cartesc_index::jsb, scale_atmos_grid_cartesc_index::ka, scale_atmos_grid_cartesc_index::ke, scale_atmos_grid_cartesc_index::ks, scale_land_grid_cartesc_real::land_grid_cartesc_real_set_areavol(), land_setup(), scale_landuse::landuse_calc_fact(), scale_landuse::landuse_fillhalo(), scale_landuse::landuse_frac_land, scale_landuse::landuse_frac_urban, mod_atmos_vars::momx, mod_atmos_vars::momy, mod_atmos_vars::momz, scale_ocean_grid_cartesc_real::ocean_grid_cartesc_real_set_areavol(), ocean_setup(), scale_prc::prc_abort(), scale_prc_cartesc::prc_num_x, scale_prof::prof_rapend(), scale_prof::prof_rapstart(), mod_realinput::realinput_atmos(), mod_realinput::realinput_surface(), rect_setup(), mod_atmos_vars::rhot, and urban_setup().

Here is the call graph for this function:

Variable Documentation

◆ mkinit_type

integer, public mod_mkinit::mkinit_type = -1

Definition at line 88 of file mod_mkinit.F90.

88  integer, public :: MKINIT_TYPE = -1

Referenced by mkinit(), and mkinit_setup().

◆ i_ignore

integer, parameter, public mod_mkinit::i_ignore = 0

Definition at line 89 of file mod_mkinit.F90.

89  integer, public, parameter :: I_IGNORE = 0

Referenced by mkinit(), and mkinit_setup().

◆ i_planestate

integer, parameter, public mod_mkinit::i_planestate = 1

Definition at line 91 of file mod_mkinit.F90.

91  integer, public, parameter :: I_PLANESTATE = 1

Referenced by mkinit(), and mkinit_setup().

◆ i_tracerbubble

integer, parameter, public mod_mkinit::i_tracerbubble = 2

Definition at line 92 of file mod_mkinit.F90.

92  integer, public, parameter :: I_TRACERBUBBLE = 2

Referenced by mkinit(), and mkinit_setup().

◆ i_coldbubble

integer, parameter, public mod_mkinit::i_coldbubble = 3

Definition at line 93 of file mod_mkinit.F90.

93  integer, public, parameter :: I_COLDBUBBLE = 3

Referenced by mkinit(), and mkinit_setup().

◆ i_lambwave

integer, parameter, public mod_mkinit::i_lambwave = 4

Definition at line 95 of file mod_mkinit.F90.

95  integer, public, parameter :: I_LAMBWAVE = 4

Referenced by mkinit(), and mkinit_setup().

◆ i_gravitywave

integer, parameter, public mod_mkinit::i_gravitywave = 5

Definition at line 96 of file mod_mkinit.F90.

96  integer, public, parameter :: I_GRAVITYWAVE = 5

Referenced by mkinit(), and mkinit_setup().

◆ i_khwave

integer, parameter, public mod_mkinit::i_khwave = 6

Definition at line 97 of file mod_mkinit.F90.

97  integer, public, parameter :: I_KHWAVE = 6

Referenced by mkinit(), and mkinit_setup().

◆ i_turbulence

integer, parameter, public mod_mkinit::i_turbulence = 7

Definition at line 98 of file mod_mkinit.F90.

98  integer, public, parameter :: I_TURBULENCE = 7

Referenced by mkinit(), and mkinit_setup().

◆ i_mountainwave

integer, parameter, public mod_mkinit::i_mountainwave = 8

Definition at line 99 of file mod_mkinit.F90.

99  integer, public, parameter :: I_MOUNTAINWAVE = 8

Referenced by mkinit(), and mkinit_setup().

◆ i_warmbubble

integer, parameter, public mod_mkinit::i_warmbubble = 9

Definition at line 101 of file mod_mkinit.F90.

101  integer, public, parameter :: I_WARMBUBBLE = 9

Referenced by mkinit(), and mkinit_setup().

◆ i_supercell

integer, parameter, public mod_mkinit::i_supercell = 10

Definition at line 102 of file mod_mkinit.F90.

102  integer, public, parameter :: I_SUPERCELL = 10

Referenced by mkinit(), and mkinit_setup().

◆ i_squallline

integer, parameter, public mod_mkinit::i_squallline = 11

Definition at line 103 of file mod_mkinit.F90.

103  integer, public, parameter :: I_SQUALLLINE = 11

Referenced by mkinit(), and mkinit_setup().

◆ i_wk1982

integer, parameter, public mod_mkinit::i_wk1982 = 12

Definition at line 104 of file mod_mkinit.F90.

104  integer, public, parameter :: I_WK1982 = 12

Referenced by mkinit(), and mkinit_setup().

◆ i_dycoms2_rf01

integer, parameter, public mod_mkinit::i_dycoms2_rf01 = 13

Definition at line 105 of file mod_mkinit.F90.

105  integer, public, parameter :: I_DYCOMS2_RF01 = 13

Referenced by mkinit(), and mkinit_setup().

◆ i_dycoms2_rf02

integer, parameter, public mod_mkinit::i_dycoms2_rf02 = 14

Definition at line 106 of file mod_mkinit.F90.

106  integer, public, parameter :: I_DYCOMS2_RF02 = 14

Referenced by mkinit(), and mkinit_setup().

◆ i_rico

integer, parameter, public mod_mkinit::i_rico = 15

Definition at line 107 of file mod_mkinit.F90.

107  integer, public, parameter :: I_RICO = 15

Referenced by mkinit(), and mkinit_setup().

◆ i_interporation

integer, parameter, public mod_mkinit::i_interporation = 16

Definition at line 109 of file mod_mkinit.F90.

109  integer, public, parameter :: I_INTERPORATION = 16

Referenced by mkinit_setup().

◆ i_landcouple

integer, parameter, public mod_mkinit::i_landcouple = 17

Definition at line 111 of file mod_mkinit.F90.

111  integer, public, parameter :: I_LANDCOUPLE = 17

Referenced by mkinit(), and mkinit_setup().

◆ i_oceancouple

integer, parameter, public mod_mkinit::i_oceancouple = 18

Definition at line 112 of file mod_mkinit.F90.

112  integer, public, parameter :: I_OCEANCOUPLE = 18

Referenced by mkinit(), and mkinit_setup().

◆ i_urbancouple

integer, parameter, public mod_mkinit::i_urbancouple = 19

Definition at line 113 of file mod_mkinit.F90.

113  integer, public, parameter :: I_URBANCOUPLE = 19

Referenced by mkinit(), and mkinit_setup().

◆ i_triplecouple

integer, parameter, public mod_mkinit::i_triplecouple = 20

Definition at line 114 of file mod_mkinit.F90.

114  integer, public, parameter :: I_TRIPLECOUPLE = 20

Referenced by mkinit(), and mkinit_setup().

◆ i_bubblecouple

integer, parameter, public mod_mkinit::i_bubblecouple = 21

Definition at line 115 of file mod_mkinit.F90.

115  integer, public, parameter :: I_BUBBLECOUPLE = 21

Referenced by mkinit(), and mkinit_setup().

◆ i_seabreeze

integer, parameter, public mod_mkinit::i_seabreeze = 22

Definition at line 117 of file mod_mkinit.F90.

117  integer, public, parameter :: I_SEABREEZE = 22

Referenced by mkinit(), and mkinit_setup().

◆ i_heatisland

integer, parameter, public mod_mkinit::i_heatisland = 23

Definition at line 118 of file mod_mkinit.F90.

118  integer, public, parameter :: I_HEATISLAND = 23

Referenced by mkinit(), and mkinit_setup().

◆ i_dycoms2_rf02_dns

integer, parameter, public mod_mkinit::i_dycoms2_rf02_dns = 24

Definition at line 120 of file mod_mkinit.F90.

120  integer, public, parameter :: I_DYCOMS2_RF02_DNS = 24

Referenced by mkinit(), and mkinit_setup().

◆ i_real

integer, parameter, public mod_mkinit::i_real = 25

Definition at line 122 of file mod_mkinit.F90.

122  integer, public, parameter :: I_REAL = 25

Referenced by mkinit(), and mkinit_setup().

◆ i_grayzone

integer, parameter, public mod_mkinit::i_grayzone = 26

Definition at line 124 of file mod_mkinit.F90.

124  integer, public, parameter :: I_GRAYZONE = 26

Referenced by mkinit(), and mkinit_setup().

◆ i_boxaero

integer, parameter, public mod_mkinit::i_boxaero = 27

Definition at line 125 of file mod_mkinit.F90.

125  integer, public, parameter :: I_BOXAERO = 27

Referenced by mkinit(), and mkinit_setup().

◆ i_warmbubbleaero

integer, parameter, public mod_mkinit::i_warmbubbleaero = 28

Definition at line 126 of file mod_mkinit.F90.

126  integer, public, parameter :: I_WARMBUBBLEAERO = 28

Referenced by mkinit(), and mkinit_setup().

◆ i_cavityflow

integer, parameter, public mod_mkinit::i_cavityflow = 29

Definition at line 128 of file mod_mkinit.F90.

128  integer, public, parameter :: I_CAVITYFLOW = 29

Referenced by mkinit(), and mkinit_setup().

◆ i_barocwave

integer, parameter, public mod_mkinit::i_barocwave = 30

Definition at line 129 of file mod_mkinit.F90.

129  integer, public, parameter :: I_BAROCWAVE = 30

Referenced by mkinit(), and mkinit_setup().

◆ i_bomex

integer, parameter, public mod_mkinit::i_bomex = 31

Definition at line 130 of file mod_mkinit.F90.

130  integer, public, parameter :: I_BOMEX = 31

Referenced by mkinit(), and mkinit_setup().

mod_atmos_phy_mp_vars
module Atmosphere / Physics Cloud Microphysics
Definition: mod_atmos_phy_mp_vars.F90:12
mod_ocean_vars::ocean_ocn_z0m
real(rp), dimension(:,:), allocatable, public ocean_ocn_z0m
surface roughness length for momentum, open ocean [m]
Definition: mod_ocean_vars.F90:66
mod_land_vars::land_temp
real(rp), dimension(:,:,:), allocatable, public land_temp
temperature of each soil layer [K]
Definition: mod_land_vars.F90:62
scale_atmos_grid_cartesc_index::ke
integer, public ke
end point of inner domain: z, local
Definition: scale_atmos_grid_cartesC_index.F90:52
mod_urban_vars::urban_sfc_temp
real(rp), dimension(:,:), allocatable, public urban_sfc_temp
Definition: mod_urban_vars.F90:75
scale_prc::prc_abort
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:350
mod_ocean_vars::ocean_ice_temp
real(rp), dimension(:,:), allocatable, public ocean_ice_temp
sea ice temperature [K]
Definition: mod_ocean_vars.F90:74
mod_land_vars::snow_sfc_temp
real(rp), dimension(:,:), allocatable, public snow_sfc_temp
snow surface temperature [K]
Definition: mod_land_vars.F90:69
scale_tracer::qa
integer, public qa
Definition: scale_tracer.F90:35
mod_urban_vars::urban_tb
real(rp), dimension(:,:), allocatable, public urban_tb
Definition: mod_urban_vars.F90:65
mod_atmos_vars::pott
real(rp), dimension(:,:,:), allocatable, target, public pott
Definition: mod_atmos_vars.F90:133
mod_ocean_vars::ocean_sfc_z0e
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0e
ocean surface roughness length for vapor [m]
Definition: mod_ocean_vars.F90:72
mod_land_vars::land_sfc_albedo
real(rp), dimension(:,:,:,:), allocatable, public land_sfc_albedo
land surface albedo (direct/diffuse,IR/near-IR/VIS) (0-1)
Definition: mod_land_vars.F90:66
scale_const::const_undef8
real(dp), parameter, public const_undef8
undefined value (REAL8)
Definition: scale_const.F90:42
scale_atmos_grid_cartesc_index::ka
integer, public ka
Definition: scale_atmos_grid_cartesC_index.F90:47
mod_atmos_phy_bl_vars::atmos_phy_bl_zi
real(rp), dimension(:,:), allocatable, public atmos_phy_bl_zi
Definition: mod_atmos_phy_bl_vars.F90:67
mod_ocean_vars::ice_flag
logical, public ice_flag
Definition: mod_ocean_vars.F90:142
mod_urban_vars::urban_sfc_albedo
real(rp), dimension(:,:,:,:), allocatable, public urban_sfc_albedo
Definition: mod_urban_vars.F90:76
mod_atmos_phy_mp_vars::qs_mp
integer, public qs_mp
Definition: mod_atmos_phy_mp_vars.F90:79
mod_land_vars::land_water
real(rp), dimension(:,:,:), allocatable, public land_water
moisture of each soil layer [m3/m3]
Definition: mod_land_vars.F90:63
scale_const::const_eps
real(rp), public const_eps
small number
Definition: scale_const.F90:35
mod_urban_vars::urban_trl
real(rp), dimension(:,:,:), allocatable, public urban_trl
Definition: mod_urban_vars.F90:61
scale_atmos_hydrometeor
module atmosphere / hydrometeor
Definition: scale_atmos_hydrometeor.F90:12
mod_atmos_phy_rd_vars
module Atmosphere / Physics Radiation
Definition: mod_atmos_phy_rd_vars.F90:12
mod_atmos_phy_mp_vars::atmos_phy_mp_sflx_rain
real(rp), dimension(:,:), allocatable, public atmos_phy_mp_sflx_rain
Definition: mod_atmos_phy_mp_vars.F90:74
mod_urban_vars::urban_raing
real(rp), dimension(:,:), allocatable, public urban_raing
Definition: mod_urban_vars.F90:72
mod_urban_vars::urban_qc
real(rp), dimension(:,:), allocatable, public urban_qc
Definition: mod_urban_vars.F90:68
mod_ocean_vars::ocean_sfc_z0m
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0m
ocean surface roughness length for momentum [m]
Definition: mod_ocean_vars.F90:70
scale_atmos_hydrometeor::atmos_hydrometeor_dry
logical, public atmos_hydrometeor_dry
Definition: scale_atmos_hydrometeor.F90:114
mod_atmos_vars::qtrc
real(rp), dimension(:,:,:,:), allocatable, target, public qtrc
Definition: mod_atmos_vars.F90:81
mod_atmos_phy_mp_driver
module atmosphere / physics / cloud microphysics
Definition: mod_atmos_phy_mp_driver.F90:12
scale_atmos_grid_cartesc_index::ie
integer, public ie
end point of inner domain: x, local
Definition: scale_atmos_grid_cartesC_index.F90:54
mod_atmos_phy_rd_vars::atmos_phy_rd_sflx_lw_dn
real(rp), dimension(:,:), allocatable, public atmos_phy_rd_sflx_lw_dn
Definition: mod_atmos_phy_rd_vars.F90:62
mod_atmos_phy_bl_vars
module atmosphere / physics / PBL
Definition: mod_atmos_phy_bl_vars.F90:12
mod_atmos_phy_rd_vars::atmos_phy_rd_sflx_sw_dn
real(rp), dimension(:,:), allocatable, public atmos_phy_rd_sflx_sw_dn
Definition: mod_atmos_phy_rd_vars.F90:64
mod_atmos_vars::dens
real(rp), dimension(:,:,:), allocatable, target, public dens
Definition: mod_atmos_vars.F90:76
mod_ocean_vars::ocean_sfc_z0h
real(rp), dimension(:,:), allocatable, public ocean_sfc_z0h
ocean surface roughness length for heat [m]
Definition: mod_ocean_vars.F90:71
scale_const
module CONSTANT
Definition: scale_const.F90:11
scale_atmos_grid_cartesc_index::ia
integer, public ia
Definition: scale_atmos_grid_cartesC_index.F90:48
mod_atmos_phy_bl_driver::atmos_phy_bl_driver_mkinit
subroutine, public atmos_phy_bl_driver_mkinit(TKE_CONST)
make initial state
Definition: mod_atmos_phy_bl_driver.F90:191
mod_ocean_vars::ocean_uvel
real(rp), dimension(:,:,:), allocatable, public ocean_uvel
ocean zonal velocity [m/s]
Definition: mod_ocean_vars.F90:63
mod_atmos_phy_rd_vars::atmos_phy_rd_sflx_sw_up
real(rp), dimension(:,:), allocatable, public atmos_phy_rd_sflx_sw_up
Definition: mod_atmos_phy_rd_vars.F90:63
mod_atmos_phy_rd_vars::atmos_phy_rd_sflx_lw_up
real(rp), dimension(:,:), allocatable, public atmos_phy_rd_sflx_lw_up
Definition: mod_atmos_phy_rd_vars.F90:61
mod_urban_vars::urban_tgl
real(rp), dimension(:,:,:), allocatable, public urban_tgl
Definition: mod_urban_vars.F90:63
mod_atmos_phy_tb_vars
module Atmosphere / Physics Turbulence
Definition: mod_atmos_phy_tb_vars.F90:12
mod_land_vars
module LAND Variables
Definition: mod_land_vars.F90:11
mod_land_vars::snow_nosnowsec
real(rp), dimension(:,:), allocatable, public snow_nosnowsec
sec while no snow [s]
Definition: mod_land_vars.F90:73
scale_atmos_grid_cartesc_index::is
integer, public is
start point of inner domain: x, local
Definition: scale_atmos_grid_cartesC_index.F90:53
mod_ocean_vars
module OCEAN Variables
Definition: mod_ocean_vars.F90:12
mod_atmos_vars::temp
real(rp), dimension(:,:,:), allocatable, target, public temp
Definition: mod_atmos_vars.F90:134
scale_atmos_grid_cartesc_index::ja
integer, public ja
Definition: scale_atmos_grid_cartesC_index.F90:49
mod_atmos_vars::qv
real(rp), dimension(:,:,:), allocatable, pointer, target, public qv
Definition: mod_atmos_vars.F90:97
scale_const::const_pi
real(rp), parameter, public const_pi
pi
Definition: scale_const.F90:32
mod_land_vars::snow_swe
real(rp), dimension(:,:), allocatable, public snow_swe
snow water equivalent [kg/m2]
Definition: mod_land_vars.F90:70
scale_atmos_hydrometeor::i_hc
integer, parameter, public i_hc
liquid water cloud
Definition: scale_atmos_hydrometeor.F90:97
mod_urban_vars::urban_tc
real(rp), dimension(:,:), allocatable, public urban_tc
Definition: mod_urban_vars.F90:67
mod_urban_vars::urban_tg
real(rp), dimension(:,:), allocatable, public urban_tg
Definition: mod_urban_vars.F90:66
mod_atmos_vars::pres
real(rp), dimension(:,:,:), allocatable, target, public pres
Definition: mod_atmos_vars.F90:135
mod_urban_vars::urban_uc
real(rp), dimension(:,:), allocatable, public urban_uc
Definition: mod_urban_vars.F90:69
scale_atmos_grid_cartesc_index::ks
integer, public ks
start point of inner domain: z, local
Definition: scale_atmos_grid_cartesC_index.F90:51
mod_atmos_phy_bl_driver
module atmosphere / physics / PBL
Definition: mod_atmos_phy_bl_driver.F90:12
mod_atmos_phy_tb_vars::i_tke
integer, public i_tke
Definition: mod_atmos_phy_tb_vars.F90:62
mod_land_vars::land_sfc_temp
real(rp), dimension(:,:), allocatable, public land_sfc_temp
land surface skin temperature [K]
Definition: mod_land_vars.F90:65
mod_ocean_vars::ocean_ice_mass
real(rp), dimension(:,:), allocatable, public ocean_ice_mass
sea ice mass [kg]
Definition: mod_ocean_vars.F90:75
mod_ocean_vars::ocean_vvel
real(rp), dimension(:,:,:), allocatable, public ocean_vvel
ocean meridional velocity [m/s]
Definition: mod_ocean_vars.F90:64
mod_land_vars::snow_depth
real(rp), dimension(:,:), allocatable, public snow_depth
snow depth [m]
Definition: mod_land_vars.F90:71
mod_urban_vars::urban_rainb
real(rp), dimension(:,:), allocatable, public urban_rainb
Definition: mod_urban_vars.F90:71
scale_atmos_grid_cartesc_index::js
integer, public js
start point of inner domain: y, local
Definition: scale_atmos_grid_cartesC_index.F90:55
mod_land_vars::snow_flag
logical, public snow_flag
Definition: mod_land_vars.F90:133
mod_ocean_vars::ocean_sfc_albedo
real(rp), dimension(:,:,:,:), allocatable, public ocean_sfc_albedo
ocean surface albedo (direct/diffuse,IR/near-IR/VIS) (0-1)
Definition: mod_ocean_vars.F90:69
mod_atmos_phy_mp_vars::atmos_phy_mp_sflx_snow
real(rp), dimension(:,:), allocatable, public atmos_phy_mp_sflx_snow
Definition: mod_atmos_phy_mp_vars.F90:75
mod_urban_vars::urban_tr
real(rp), dimension(:,:), allocatable, public urban_tr
Definition: mod_urban_vars.F90:64
mod_ocean_vars::ocean_sfc_temp
real(rp), dimension(:,:), allocatable, public ocean_sfc_temp
ocean surface skin temperature [K]
Definition: mod_ocean_vars.F90:68
mod_atmos_vars::qc
real(rp), dimension(:,:,:), pointer, public qc
Definition: mod_atmos_vars.F90:98
mod_atmos_phy_mp_vars::qe_mp
integer, public qe_mp
Definition: mod_atmos_phy_mp_vars.F90:80
mod_ocean_vars::ocean_salt
real(rp), dimension(:,:,:), allocatable, public ocean_salt
ocean salinity [PSU]
Definition: mod_ocean_vars.F90:62
mod_urban_vars::urban_tbl
real(rp), dimension(:,:,:), allocatable, public urban_tbl
Definition: mod_urban_vars.F90:62
mod_land_vars::land_ice
real(rp), dimension(:,:,:), allocatable, public land_ice
ice of each soil layer [m3/m3]
Definition: mod_land_vars.F90:64
scale_const::const_undef
real(rp), public const_undef
Definition: scale_const.F90:43
mod_atmos_phy_mp_driver::atmos_phy_mp_driver_qhyd2qtrc
subroutine, public atmos_phy_mp_driver_qhyd2qtrc(KA, KS, KE, IA, IS, IE, JA, JS, JE, QV, QHYD, QTRC, QNUM)
Definition: mod_atmos_phy_mp_driver.F90:1553
mod_urban_vars::urban_rainr
real(rp), dimension(:,:), allocatable, public urban_rainr
Definition: mod_urban_vars.F90:70
scale_atmos_grid_cartesc_index::je
integer, public je
end point of inner domain: y, local
Definition: scale_atmos_grid_cartesC_index.F90:56
scale_atmos_hydrometeor::n_hyd
integer, parameter, public n_hyd
Definition: scale_atmos_hydrometeor.F90:95
mod_urban_vars
module URBAN Variables
Definition: mod_urban_vars.F90:12
mod_land_vars::snow_dzero
real(rp), dimension(:,:), allocatable, public snow_dzero
snow depth at melting point [m]
Definition: mod_land_vars.F90:72
mod_ocean_vars::ocean_temp
real(rp), dimension(:,:,:), allocatable, public ocean_temp
ocean temperature [K]
Definition: mod_ocean_vars.F90:61