SCALE-RM
Functions/Subroutines
mod_atmos_phy_bl_driver Module Reference

module atmosphere / physics / PBL More...

Functions/Subroutines

subroutine, public atmos_phy_bl_driver_tracer_setup
 Config. More...
 
subroutine, public atmos_phy_bl_driver_setup
 Setup. More...
 
subroutine, public atmos_phy_bl_driver_finalize
 Finalize. More...
 
subroutine, public atmos_phy_bl_driver_mkinit (TKE_CONST)
 make initial state More...
 
subroutine, public atmos_phy_bl_driver_calc_tendency (update_flag)
 calculate tendency More...
 

Detailed Description

module atmosphere / physics / PBL

Description
Planetary boundary layer turbulence
Author
Team SCALE
NAMELIST
  • No namelist group
History Output
namedescriptionunitvariable
Kh_BL eddy diffusion m2/s Kh
Nu_BL eddy viscosity m2/s Nu
QL_BL liquid water content in partial condensation kg/kg QL
RHOT_t_BL RHOT tendency (BL) K.kg/m3/s RHOT_t_BL
RHOU_t_BL MOMX tendency (BL) kg/m2/s2 RHOU_t_BL
RHOV_t_BL MOMY tendency (BL) kg/m2/s2 RHOV_t_BL
Zi_BL depth of the boundary layer m Zi
cldfrac_BL cloud fraction in partial condensation 1 cldfrac
{TRACER_NAME}_t_BL RHO*{TRACER_NAME} tendency (BL);
{TRACER_NAME} depends on the physics schemes, e.g., QV, QC, QR.
kg/m3/s RHOQ_t_BL

Function/Subroutine Documentation

◆ atmos_phy_bl_driver_tracer_setup()

subroutine, public mod_atmos_phy_bl_driver::atmos_phy_bl_driver_tracer_setup

Config.

Definition at line 52 of file mod_atmos_phy_bl_driver.F90.

52  use scale_prc, only: &
53  prc_abort
54  use scale_tracer, only: &
56  use scale_atmos_phy_bl_mynn, only: &
67  use mod_atmos_admin, only: &
70  use mod_atmos_phy_bl_vars, only: &
71  qs, qe
72  implicit none
73  !---------------------------------------------------------------------------
74 
75  log_newline
76  log_info("ATMOS_PHY_BL_driver_tracer_setup",*) 'Setup'
77 
78  if ( atmos_sw_phy_bl ) then
79  select case ( atmos_phy_bl_type )
80  case ( 'MYNN' )
82  call tracer_regist( &
83  qs, &
89  case ( 'MYNN-JMAPPLIB' )
90  call tracer_regist( &
91  qs, &
97  case default
98  log_error("ATMOS_PHY_BL_driver_tracer_setup",*) 'ATMOS_PHY_BL_TYPE is invalid: ', trim(atmos_phy_bl_type)
99  call prc_abort
100  end select
101  end if
102 
103  return

References scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_desc, scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_desc, scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_name, scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_ntracer, scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_units, scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_name, scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_ntracer, scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_tracer_setup(), scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_units, mod_atmos_admin::atmos_phy_bl_type, mod_atmos_admin::atmos_sw_phy_bl, scale_prc::prc_abort(), mod_atmos_phy_bl_vars::qe, mod_atmos_phy_bl_vars::qs, and scale_tracer::tracer_regist().

Referenced by mod_atmos_driver::atmos_driver_tracer_setup().

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

◆ atmos_phy_bl_driver_setup()

subroutine, public mod_atmos_phy_bl_driver::atmos_phy_bl_driver_setup

Setup.

Definition at line 109 of file mod_atmos_phy_bl_driver.F90.

109  use scale_atmos_phy_bl_mynn, only: &
113  use scale_atmos_grid_cartesc, only: &
114  cz => atmos_grid_cartesc_cz, &
115  dx
116  use mod_atmos_admin, only: &
119  use mod_atmos_phy_bl_vars, only: &
120  atmos_phy_bl_zi, &
122  use scale_bulkflux, only: &
124  use scale_time, only: &
125  dt_bl => time_dtsec_atmos_phy_bl
126  implicit none
127  !---------------------------------------------------------------------------
128 
129  log_newline
130  log_info("ATMOS_PHY_BL_driver_setup",*) 'Setup'
131 
132  if ( atmos_sw_phy_bl ) then
133  select case ( atmos_phy_bl_type )
134  case ( 'MYNN' )
136  bulkflux_type, & ! (in)
137  dx = dx ) ! (in)
138  case ( 'MYNN-JMAPPLIB' )
140  ka, ks, ke, &
141  cz(:), &
142  dt_bl )
143  end select
144  else
145  log_info("ATMOS_PHY_BL_driver_setup",*) 'this component is never called.'
146  !$acc kernels
147  atmos_phy_bl_zi(:,:) = 0.0_rp
148  atmos_phy_bl_sflx_buoy(:,:) = 0.0_rp
149  !$acc end kernels
150  endif
151 
152  return

References scale_atmos_grid_cartesc::atmos_grid_cartesc_cz, scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_setup(), scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_setup(), mod_atmos_phy_bl_vars::atmos_phy_bl_sflx_buoy, mod_atmos_admin::atmos_phy_bl_type, mod_atmos_phy_bl_vars::atmos_phy_bl_zi, mod_atmos_admin::atmos_sw_phy_bl, scale_bulkflux::bulkflux_type, scale_atmos_grid_cartesc::dx, scale_atmos_grid_cartesc_index::ka, scale_atmos_grid_cartesc_index::ke, scale_atmos_grid_cartesc_index::ks, and scale_time::time_dtsec_atmos_phy_bl.

Referenced by mod_atmos_driver::atmos_driver_setup().

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

◆ atmos_phy_bl_driver_finalize()

subroutine, public mod_atmos_phy_bl_driver::atmos_phy_bl_driver_finalize

Finalize.

Definition at line 158 of file mod_atmos_phy_bl_driver.F90.

158  use scale_prc, only: &
159  prc_abort
160  use scale_atmos_phy_bl_mynn, only: &
164  use mod_atmos_admin, only: &
167  implicit none
168  !---------------------------------------------------------------------------
169 
170  log_newline
171  log_info("ATMOS_PHY_BL_driver_finalize",*) 'Finalize'
172 
173  if ( atmos_sw_phy_bl ) then
174  select case ( atmos_phy_bl_type )
175  case ( 'MYNN' )
177  case ( 'MYNN-JMAPPLIB' )
179  case default
180  log_error("ATMOS_PHY_BL_driver_finalize",*) 'ATMOS_PHY_BL_TYPE is invalid: ', trim(atmos_phy_bl_type)
181  call prc_abort
182  end select
183  end if
184 
185  return

References scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_finalize(), scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_finalize(), mod_atmos_admin::atmos_phy_bl_type, mod_atmos_admin::atmos_sw_phy_bl, and scale_prc::prc_abort().

Referenced by mod_atmos_driver::atmos_driver_finalize().

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

◆ atmos_phy_bl_driver_mkinit()

subroutine, public mod_atmos_phy_bl_driver::atmos_phy_bl_driver_mkinit ( real(rp), intent(in)  TKE_CONST)

make initial state

Definition at line 191 of file mod_atmos_phy_bl_driver.F90.

191  use scale_const, only: &
192  undef => const_undef
193  use scale_time, only: &
194  dt_bl => time_dtsec_atmos_phy_bl
195  use scale_atmos_phy_bl_mynn, only: &
197  use scale_atmos_grid_cartesc_real, only: &
202  use scale_bulkflux, only: &
204  use scale_landuse, only: &
205  frac_land => landuse_frac_land
206  use scale_topography, only: &
207  tansl_x => topography_tansl_x, &
208  tansl_y => topography_tansl_y
209  use scale_atmos_bottom, only: &
210  bottom_estimate => atmos_bottom_estimate
211  use scale_atmos_phy_sf_bulk, only: &
213  use scale_comm_cartesc, only: &
214  comm_vars8, &
215  comm_wait
216  use mod_atmos_phy_bl_vars, only: &
217  qs, qe, &
218  zi => atmos_phy_bl_zi
219  use mod_atmos_phy_sf_vars, only: &
220  sfc_temp => atmos_phy_sf_sfc_temp, &
221  sfc_dens => atmos_phy_sf_sfc_dens, &
222  sfc_pres => atmos_phy_sf_sfc_pres, &
223  sfc_z0m => atmos_phy_sf_sfc_z0m, &
224  sfc_z0h => atmos_phy_sf_sfc_z0h, &
225  sfc_z0e => atmos_phy_sf_sfc_z0e, &
226  sflx_mu => atmos_phy_sf_sflx_mu, &
227  sflx_mv => atmos_phy_sf_sflx_mv, &
228  sflx_mw => atmos_phy_sf_sflx_mv, &
229  sflx_sh => atmos_phy_sf_sflx_sh, &
230  sflx_lh => atmos_phy_sf_sflx_lh, &
231  sflx_qv => atmos_phy_sf_sflx_qv, &
232  ustar => atmos_phy_sf_ustar, &
233  tstar => atmos_phy_sf_tstar, &
234  qstar => atmos_phy_sf_qstar, &
235  wstar => atmos_phy_sf_wstar, &
236  rlmo => atmos_phy_sf_rlmo, &
237  u10 => atmos_phy_sf_u10, &
238  v10 => atmos_phy_sf_v10, &
239  t2 => atmos_phy_sf_t2, &
240  q2 => atmos_phy_sf_q2
241  use mod_atmos_admin, only: &
244  use mod_atmos_vars, only: &
245  dens, &
246  momz, &
247  momx, &
248  momy, &
249  rhot, &
250  qtrc, &
251  u, &
252  v, &
253  w, &
254  temp, &
255  pott, &
256  pres, &
257  exner, &
258  qdry, &
259  qv, &
260  qc, &
261  qi, &
263  atmos_vars_get_diagnostic
264  implicit none
265  real(RP), intent(in) :: TKE_CONST
266 
267  real(RP) :: N2 (KA,IA,JA)
268  real(RP) :: POTL(KA,IA,JA)
269  real(RP) :: POTV(KA,IA,JA)
270 
271  real(RP) :: ATM_TEMP(IA,JA)
272  real(RP) :: ATM_PRES(IA,JA)
273  real(RP) :: ATM_U (IA,JA)
274  real(RP) :: ATM_V (IA,JA)
275  real(RP) :: ATM_W (IA,JA)
276  real(RP) :: ATM_QV (IA,JA)
277 
278  real(RP) :: QW(KA,IA,JA)
279 
280  integer :: k, i, j, iq
281  !---------------------------------------------------------------------------
282 
283  if ( .not. atmos_sw_phy_bl ) return
284 
285  select case ( atmos_phy_bl_type )
286  case ( 'MYNN' )
287  if ( qtrc(ks,is,je,qs) == undef ) then
288 
289  !$acc data create(N2,POTL,POTV,ATM_TEMP,ATM_PRES,ATM_U,ATM_V,ATM_W,ATM_QV,QW)
290 
291  call comm_vars8(dens, 1)
292  call comm_vars8(momz, 2)
293  call comm_vars8(momx, 3)
294  call comm_vars8(momy, 4)
295  call comm_vars8(rhot, 5)
296  call comm_vars8(qv, 6)
297  call comm_vars8(qc, 7)
298  call comm_vars8(qi, 8)
299  call comm_wait(dens, 1)
300  call comm_wait(momz, 2)
301  call comm_wait(momx, 3)
302  call comm_wait(momy, 4)
303  call comm_wait(rhot, 5)
304  call comm_wait(qv, 6)
305  call comm_wait(qc, 7)
306  call comm_wait(qi, 8)
307 
309  call atmos_vars_get_diagnostic( "N2", n2 )
310  call atmos_vars_get_diagnostic( "POTL", potl )
311  call atmos_vars_get_diagnostic( "POTV", potv )
312 
313  call bottom_estimate( ka, ks, ke, ia, isb, ieb, ja, jsb, jeb, &
314  dens(:,:,:), pres(:,:,:), qv(:,:,:), & ! [IN]
315  sfc_temp(:,:), & ! [IN]
316  fz(:,:,:), & ! [IN]
317  sfc_dens(:,:), sfc_pres(:,:) ) ! [OUT]
318 
319  !$omp parallel do
320  !$acc kernels
321  do j = jsb, jeb
322  do i = isb, ieb
323  atm_temp(i,j) = temp(ks,i,j)
324  atm_pres(i,j) = pres(ks,i,j)
325  atm_u(i,j) = u(ks,i,j)
326  atm_v(i,j) = v(ks,i,j)
327  atm_w(i,j) = atm_u(i,j) * tansl_x(i,j) + atm_v(i,j) * tansl_y(i,j)
328  atm_qv(i,j) = qv(ks,i,j)
329  enddo
330  enddo
331  !$acc end kernels
332 
333  call atmos_phy_sf_bulk_flux( ia, isb, ieb, ja, jsb, jeb, &
334  atm_w(:,:), atm_u(:,:), atm_v(:,:), & ! [IN]
335  atm_temp(:,:), atm_pres(:,:), atm_qv(:,:), & ! [IN]
336  sfc_dens(:,:), sfc_temp(:,:), sfc_pres(:,:), & ! [IN]
337  sfc_z0m(:,:), sfc_z0h(:,:), sfc_z0e(:,:), & ! [IN]
338  zi(:,:), z1(:,:), & ! [IN]
339  sflx_mw(:,:), sflx_mu(:,:), sflx_mv(:,:), & ! [OUT]
340  sflx_sh(:,:), sflx_lh(:,:), sflx_qv(:,:), & ! [OUT]
341  ustar(:,:), tstar(:,:), qstar(:,:), & ! [OUT]
342  wstar(:,:), & ! [OUT]
343  rlmo(:,:), & ! [OUT]
344  u10(:,:), v10(:,:), t2(:,:), q2(:,:) ) ! [OUT]
345 
346  !$acc kernels
347  do j = jsb, jeb
348  do i = isb, ieb
349  do k = ks, ke
350  qw(k,i,j) = qv(k,i,j) + qc(k,i,j) + qi(k,i,j)
351  end do
352  end do
353  end do
354  !$acc end kernels
355 
357  ka, ks, ke, ia, isb, ieb, ja, jsb, jeb, &
358  qtrc(:,:,:,qs:qe), & ! (out)
359  dens(:,:,:), u(:,:,:), v(:,:,:), w(:,:,:), pott(:,:,:), & ! (in)
360  pres(:,:,:), exner(:,:,:), n2(:,:,:), & ! (in)
361  qdry(:,:,:), qv(:,:,:), qw(:,:,:), & ! (in)
362  potl(:,:,:), potv(:,:,:), & ! (in)
363  sfc_dens(:,:), & ! (in)
364  sflx_mu(:,:), sflx_mv(:,:), sflx_sh(:,:), sflx_qv(:,:), & ! (in)
365  ustar(:,:), tstar(:,:), qstar(:,:), rlmo(:,:), & ! (in)
366  frac_land(:,:), & ! (in)
367  cz(:,:,:), fz(:,:,:), f2h(:,:,:,:), & ! (in)
368  bulkflux_type ) ! (in)
369 
370  !$acc end data
371 
372  end if
373 
374  case ( 'MYNN-JMAPPLIB' )
375  !$acc kernels
376  !$acc loop independent collapse(3)
377  do j = jsb, jeb
378  do i = isb, ieb
379  do k = ks, ke
380  if ( qtrc(k,i,j,qs) == undef ) then
381  qtrc(k,i,j,qs) = tke_const
382  end if
383  end do
384  end do
385  end do
386  !$acc end kernels
387  !$acc kernels
388  !$acc loop independent collapse(4)
389  do iq = qs+1, qe
390  do j = jsb, jeb
391  do i = isb, ieb
392  do k = ks, ke
393  if ( qtrc(k,i,j,iq) == undef ) then
394  qtrc(k,i,j,iq) = 0.0_rp
395  end if
396  end do
397  end do
398  end do
399  end do
400  !$acc end kernels
401  end select
402 
403  return

References scale_atmos_bottom::atmos_bottom_estimate(), scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_cz, scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_f2h, scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_fz, scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_z1, scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_mkinit(), mod_atmos_admin::atmos_phy_bl_type, mod_atmos_phy_bl_vars::atmos_phy_bl_zi, scale_atmos_phy_sf_bulk::atmos_phy_sf_bulk_flux(), mod_atmos_phy_sf_vars::atmos_phy_sf_q2, mod_atmos_phy_sf_vars::atmos_phy_sf_qstar, mod_atmos_phy_sf_vars::atmos_phy_sf_rlmo, mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_dens, mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_pres, mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_temp, mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_z0e, mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_z0h, mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_z0m, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_lh, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_mu, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_mv, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_qv, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_sh, mod_atmos_phy_sf_vars::atmos_phy_sf_t2, mod_atmos_phy_sf_vars::atmos_phy_sf_tstar, mod_atmos_phy_sf_vars::atmos_phy_sf_u10, mod_atmos_phy_sf_vars::atmos_phy_sf_ustar, mod_atmos_phy_sf_vars::atmos_phy_sf_v10, mod_atmos_phy_sf_vars::atmos_phy_sf_wstar, mod_atmos_admin::atmos_sw_phy_bl, mod_atmos_vars::atmos_vars_calc_diagnostics(), scale_bulkflux::bulkflux_type, scale_const::const_undef, mod_atmos_vars::dens, mod_atmos_vars::exner, scale_atmos_grid_cartesc_index::ia, scale_atmos_grid_cartesc_index::ieb, 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::jsb, scale_tracer::k, scale_atmos_grid_cartesc_index::ka, scale_atmos_grid_cartesc_index::ke, scale_atmos_grid_cartesc_index::ks, scale_landuse::landuse_frac_land, mod_atmos_vars::momx, mod_atmos_vars::momy, mod_atmos_vars::momz, mod_atmos_vars::pott, mod_atmos_vars::pres, mod_atmos_vars::qc, mod_atmos_vars::qdry, mod_atmos_phy_bl_vars::qe, mod_atmos_vars::qi, mod_atmos_phy_bl_vars::qs, mod_atmos_vars::qtrc, mod_atmos_vars::qv, mod_atmos_vars::rhot, mod_atmos_vars::temp, scale_time::time_dtsec_atmos_phy_bl, scale_topography::topography_tansl_x, scale_topography::topography_tansl_y, mod_atmos_vars::u, mod_atmos_vars::v, and mod_atmos_vars::w.

Referenced by mod_mkinit::tke_setup().

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

◆ atmos_phy_bl_driver_calc_tendency()

subroutine, public mod_atmos_phy_bl_driver::atmos_phy_bl_driver_calc_tendency ( logical, intent(in)  update_flag)

calculate tendency

Definition at line 409 of file mod_atmos_phy_bl_driver.F90.

409  use scale_statistics, only: &
411  statistics_total
412  use scale_file_history, only: &
413  file_history_in
414  use scale_time, only: &
415  dt_bl => time_dtsec_atmos_phy_bl
416  use scale_atmos_phy_bl_common, only: &
418  use scale_atmos_phy_bl_mynn, only: &
422  use scale_atmos_grid_cartesc_real, only: &
428  use scale_atmos_hydrometeor, only: &
429  i_qv
430  use scale_bulkflux, only: &
432  use scale_landuse, only: &
433  frac_land => landuse_frac_land
434  use mod_atmos_admin, only: &
436  use mod_atmos_vars, only: &
437  dens => dens_av, &
438  qtrc => qtrc_av, &
439  u, &
440  v, &
441  w, &
442  pott, &
443  pres, &
444  exner, &
445  qdry, &
446  qv, &
447  qc, &
448  qi, &
449  rhou_t => rhou_tp, &
450  rhov_t => rhov_tp, &
451  rhot_t => rhot_tp, &
452  rhoq_t => rhoq_tp, &
453  atmos_vars_get_diagnostic
454  use mod_atmos_phy_bl_vars, only: &
455  qs, qe, &
457  rhou_t_bl => atmos_phy_bl_rhou_t, &
458  rhov_t_bl => atmos_phy_bl_rhov_t, &
459  rhot_t_bl => atmos_phy_bl_rhot_t, &
460  rhoq_t_bl => atmos_phy_bl_rhoq_t, &
461  zi => atmos_phy_bl_zi, &
462  sflx_buoy => atmos_phy_bl_sflx_buoy, &
463  ql => atmos_phy_bl_ql, &
464  cldfrac => atmos_phy_bl_cldfrac
465  use mod_atmos_phy_sf_vars, only: &
466  sfc_dens => atmos_phy_sf_sfc_dens, &
467  sfc_pres => atmos_phy_sf_sfc_pres, &
468  sflx_mu => atmos_phy_sf_sflx_mu, &
469  sflx_mv => atmos_phy_sf_sflx_mv, &
470  sflx_sh => atmos_phy_sf_sflx_sh, &
471  sflx_q => atmos_phy_sf_sflx_qtrc, &
472  sflx_qv => atmos_phy_sf_sflx_qv, &
473  ustar => atmos_phy_sf_ustar, &
474  tstar => atmos_phy_sf_tstar, &
475  qstar => atmos_phy_sf_qstar, &
476  rlmo => atmos_phy_sf_rlmo
477  implicit none
478 
479  logical, intent(in) :: update_flag
480 
481  real(RP) :: Nu(KA,IA,JA)
482  real(RP) :: Kh(KA,IA,JA)
483 
484  real(RP) :: QW(KA,IA,JA)
485 
486  real(RP) :: N2 (KA,IA,JA)
487  real(RP) :: POTL(KA,IA,JA)
488  real(RP) :: POTV(KA,IA,JA)
489 
490  real(RP), pointer :: RHOQV_t(:,:,:)
491 
492  integer :: k, i, j, iq
493  !---------------------------------------------------------------------------
494 
495  if ( update_flag ) then
496 
497  !$acc data create(Nu,Kh,QW,N2,POTL,POTV)
498 
499  !$acc kernels
500  rhoq_t_bl(:,:,:,:) = 0.0_rp
501  !$acc end kernels
502 
503  select case ( atmos_phy_bl_type )
504  case ( 'MYNN' )
505  call atmos_vars_get_diagnostic( "N2", n2 )
506  call atmos_vars_get_diagnostic( "POTL", potl )
507  call atmos_vars_get_diagnostic( "POTV", potv )
508  !$acc kernels
509  do j = jsb, jeb
510  do i = isb, ieb
511  do k = ks, ke
512  qw(k,i,j) = qv(k,i,j) + qc(k,i,j) + qi(k,i,j)
513  end do
514  end do
515  end do
516  !$acc end kernels
517  if ( i_qv > 0 ) then
518  rhoqv_t => rhoq_t_bl(:,:,:,i_qv)
519  else
520  allocate( rhoqv_t(ka,ia,ja) )
521  !$acc enter data create(RHOQV_t)
522  end if
524  ka, ks, ke, ia, is, ie, ja, js, je, &
525  dens(:,:,:), u(:,:,:), v(:,:,:), w(:,:,:), & ! (in)
526  pott(:,:,:), qtrc(:,:,:,qs:qe), & ! (in)
527  pres(:,:,:), exner(:,:,:), n2(:,:,:), & ! (in)
528  qdry(:,:,:), qv(:,:,:), qw(:,:,:), & ! (in)
529  potl(:,:,:), potv(:,:,:), & ! (in)
530  sfc_dens(:,:), & ! (in)
531  sflx_mu(:,:), sflx_mv(:,:), sflx_sh(:,:), sflx_qv(:,:), & ! (in)
532  ustar(:,:), tstar(:,:), qstar(:,:), rlmo(:,:), & ! (in)
533  frac_land(:,:), & ! (in)
534  cz(:,:,:), fz(:,:,:), f2h(:,:,:,:), dt_bl, & ! (in)
535  bulkflux_type, & ! (in)
536  rhou_t_bl(:,:,:), rhov_t_bl(:,:,:), rhot_t_bl(:,:,:), & ! (out)
537  rhoqv_t(:,:,:), rhoq_t_bl(:,:,:,qs:qe), & ! (out)
538  nu(:,:,:), kh(:,:,:), & ! (out)
539  ql(:,:,:), cldfrac(:,:,:), zi(:,:), sflx_buoy(:,:) ) ! (out)
540  if ( i_qv <= 0 ) then
541  !$acc exit data delete(RHOQV_t)
542  deallocate( rhoqv_t )
543  end if
544  case ( 'MYNN-JMAPPLIB' )
545  if ( i_qv > 0 ) then
546  rhoqv_t => rhoq_t_bl(:,:,:,i_qv)
547  else
548  allocate( rhoqv_t(ka,ia,ja) )
549  !$acc enter data create(RHOQV_t)
550  end if
551  !$acc update host(DENS,U,V,POTT,QTRC(:,:,:,QS:QE),PRES,EXNER,QDRY,QV,QC,QI,SFC_DENS,SFC_PRES,SFLX_MU,SFLX_MV,SFLX_SH,SFLX_QV,Ustar,RLmo)
553  ka, ks, ke, ia, is, ie, ja, js, je, &
554  dens(:,:,:), u(:,:,:), v(:,:,:), & ! (in)
555  pott(:,:,:), qtrc(:,:,:,qs:qe), & ! (in)
556  pres(:,:,:), exner(:,:,:), & ! (in)
557  qdry(:,:,:), qv(:,:,:), qc(:,:,:), qi(:,:,:), & ! (in)
558  sfc_dens(:,:), sfc_pres(:,:), & ! (in)
559  sflx_mu(:,:), sflx_mv(:,:), sflx_sh(:,:), sflx_qv(:,:), & ! (in)
560  ustar(:,:), rlmo(:,:), & ! (in)
561  cz(:,:,:), fz(:,:,:), f2h(:,:,:,:), dt_bl, & ! (in)
562  rhou_t_bl(:,:,:), rhov_t_bl(:,:,:), rhot_t_bl(:,:,:), & ! (out)
563  rhoqv_t(:,:,:), rhoq_t_bl(:,:,:,qs:qe), & ! (out)
564  nu(:,:,:), kh(:,:,:), & ! (out)
565  zi = zi(:,:), sflx_buoy = sflx_buoy(:,:) ) ! (out)
566  !$acc update device(RHOU_t_BL,RHOV_t_BL,RHOT_t_BL,RHOQV_t,RHOQ_t_BL,Nu,Kh,Zi,SFLX_BUOY)
567  if ( i_qv <= 0 ) then
568  !$acc exit data delete(RHOQV_t)
569  deallocate( rhoqv_t )
570  end if
571  end select
572 
573  if ( atmos_phy_bl_mix_tracers ) then
574  do iq = 1, qa
575  if ( ( .not. tracer_advc(iq) ) .or. iq==i_qv .or. (iq>=qs .and. iq<=qe) ) cycle
577  ka, ks, ke, ia, is, ie, ja, js, je, &
578  dens(:,:,:), qtrc(:,:,:,iq), & ! (in)
579  sflx_q(:,:,iq), & ! (in)
580  kh(:,:,:), & ! (in)
581  tracer_mass(iq), & ! (in)
582  cz(:,:,:), fz(:,:,:), f2h(:,:,:,:), & ! (in)
583  dt_bl, tracer_name(iq), & ! (in)
584  rhoq_t_bl(:,:,:,iq) ) ! (out)
585  end do
586  end if
587 
588  call file_history_in( nu(:,:,:), 'Nu_BL', 'eddy viscosity', 'm2/s', fill_halo=.true., dim_type="ZHXY" )
589  call file_history_in( kh(:,:,:), 'Kh_BL', 'eddy diffusion', 'm2/s', fill_halo=.true., dim_type="ZHXY" )
590 
591  call file_history_in( ql(:,:,:), 'QL_BL', 'liquid water content in partial condensation', 'kg/kg', fill_halo=.true. )
592  call file_history_in( cldfrac(:,:,:), 'cldfrac_BL', 'cloud fraction in partial condensation', '1', fill_halo=.true. )
593 
594  call file_history_in( zi(:,:), 'Zi_BL', 'depth of the boundary layer', 'm', fill_halo=.true. )
595 
596  call file_history_in( rhou_t_bl(:,:,:), 'RHOU_t_BL', 'MOMX tendency (BL)', 'kg/m2/s2', fill_halo=.true. )
597  call file_history_in( rhov_t_bl(:,:,:), 'RHOV_t_BL', 'MOMY tendency (BL)', 'kg/m2/s2', fill_halo=.true. )
598  call file_history_in( rhot_t_bl(:,:,:), 'RHOT_t_BL', 'RHOT tendency (BL)', 'K.kg/m3/s', fill_halo=.true. )
599 
600  do iq = 1, qa
601  if ( .not. tracer_advc(iq) ) cycle
602  call file_history_in( rhoq_t_bl(:,:,:,iq), trim(tracer_name(iq))//'_t_BL', &
603  'RHO*'//trim(tracer_name(iq))//' tendency (BL)', 'kg/m3/s', fill_halo=.true. )
604  enddo
605 
606  if ( statistics_checktotal ) then
607  call statistics_total( ka, ks, ke, ia, is, ie, ja, js, je, &
608  rhou_t_bl(:,:,:), 'RHOU_t_BL', &
611  call statistics_total( ka, ks, ke, ia, is, ie, ja, js, je, &
612  rhov_t_bl(:,:,:), 'RHOV_t_BL', &
615  call statistics_total( ka, ks, ke, ia, is, ie, ja, js, je, &
616  rhot_t_bl(:,:,:), 'RHOT_t_BL', &
619  call statistics_total( ka, ks, ke, ia, is, ie, ja, js, je, &
620  nu(:,:,:), 'Nu_BL', &
623  call statistics_total( ka, ks, ke, ia, is, ie, ja, js, je, &
624  kh(:,:,:), 'Kh_BL', &
627 
628  do iq = 1, qa
629  if ( .not. tracer_advc(iq) ) cycle
630  call statistics_total( ka, ks, ke, ia, is, ie, ja, js, je, &
631  rhoq_t_bl(:,:,:,iq), trim(tracer_name(iq))//'_t_BL', &
634  enddo
635  endif
636 
637  !$acc end data
638 
639  endif
640 
641  !$omp parallel do default(none) private(i,j,k) OMP_SCHEDULE_ collapse(2) &
642  !$omp shared(JS,JE,IS,IE,KS,KE,RHOU_t,RHOU_t_BL,RHOV_t,RHOV_t_BL,RHOT_t,RHOT_t_BL)
643  !$acc kernels
644  do j = js, je
645  do i = is, ie
646  do k = ks, ke
647  rhou_t(k,i,j) = rhou_t(k,i,j) + rhou_t_bl(k,i,j)
648  rhov_t(k,i,j) = rhov_t(k,i,j) + rhov_t_bl(k,i,j)
649  rhot_t(k,i,j) = rhot_t(k,i,j) + rhot_t_bl(k,i,j)
650  enddo
651  enddo
652  enddo
653  !$acc end kernels
654 
655  !$omp parallel private(iq,i,j,k)
656  !$acc kernels
657  do iq = 1, qa
658 #ifndef _OPENACC
659  if ( .not. tracer_advc(iq) ) cycle
660 #endif
661  !$omp do OMP_SCHEDULE_ collapse(2)
662  do j = js, je
663  do i = is, ie
664  do k = ks, ke
665 #ifdef _OPENACC
666  if ( tracer_advc(iq) ) &
667 #endif
668  rhoq_t(k,i,j,iq) = rhoq_t(k,i,j,iq) + rhoq_t_bl(k,i,j,iq)
669  enddo
670  enddo
671  enddo
672  !$omp end do nowait
673  enddo
674  !$acc end kernels
675  !$omp end parallel
676 
677  return

References scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_cz, scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_f2h, scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_fz, scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_totvol, scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_vol, mod_atmos_phy_bl_vars::atmos_phy_bl_cldfrac, mod_atmos_phy_bl_vars::atmos_phy_bl_mix_tracers, scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_tendency(), scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_tendency(), mod_atmos_phy_bl_vars::atmos_phy_bl_ql, mod_atmos_phy_bl_vars::atmos_phy_bl_rhoq_t, mod_atmos_phy_bl_vars::atmos_phy_bl_rhot_t, mod_atmos_phy_bl_vars::atmos_phy_bl_rhou_t, mod_atmos_phy_bl_vars::atmos_phy_bl_rhov_t, mod_atmos_phy_bl_vars::atmos_phy_bl_sflx_buoy, scale_atmos_phy_bl_common::atmos_phy_bl_tendency_tracer(), mod_atmos_admin::atmos_phy_bl_type, mod_atmos_phy_bl_vars::atmos_phy_bl_zi, mod_atmos_phy_sf_vars::atmos_phy_sf_qstar, mod_atmos_phy_sf_vars::atmos_phy_sf_rlmo, mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_dens, mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_pres, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_mu, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_mv, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_qtrc, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_qv, mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_sh, mod_atmos_phy_sf_vars::atmos_phy_sf_tstar, mod_atmos_phy_sf_vars::atmos_phy_sf_ustar, scale_bulkflux::bulkflux_type, mod_atmos_vars::dens, mod_atmos_vars::dens_av, mod_atmos_vars::exner, scale_atmos_hydrometeor::i_qv, scale_atmos_grid_cartesc_index::ia, scale_atmos_grid_cartesc_index::ie, scale_atmos_grid_cartesc_index::ieb, 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_tracer::k, scale_atmos_grid_cartesc_index::ka, scale_atmos_grid_cartesc_index::ke, scale_atmos_grid_cartesc_index::ks, scale_landuse::landuse_frac_land, mod_atmos_vars::pott, mod_atmos_vars::pres, scale_tracer::qa, mod_atmos_vars::qc, mod_atmos_vars::qdry, mod_atmos_phy_bl_vars::qe, mod_atmos_vars::qi, mod_atmos_phy_bl_vars::qs, mod_atmos_vars::qtrc, mod_atmos_vars::qtrc_av, mod_atmos_vars::qv, mod_atmos_vars::rhoq_tp, mod_atmos_vars::rhot_tp, mod_atmos_vars::rhou_tp, mod_atmos_vars::rhov_tp, scale_statistics::statistics_checktotal, scale_time::time_dtsec_atmos_phy_bl, scale_tracer::tracer_advc, scale_tracer::tracer_mass, scale_tracer::tracer_name, mod_atmos_vars::u, mod_atmos_vars::v, and mod_atmos_vars::w.

Referenced by mod_atmos_driver::atmos_driver_calc_tendency(), and mod_atmos_driver::atmos_driver_calc_tendency_from_sflux().

Here is the call graph for this function:
Here is the caller graph for this function:
mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_z0m
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sfc_z0m
Definition: mod_atmos_phy_sf_vars.F90:67
mod_atmos_admin::atmos_phy_bl_type
character(len=h_short), public atmos_phy_bl_type
Definition: mod_atmos_admin.F90:42
scale_statistics
module Statistics
Definition: scale_statistics.F90:11
mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_dens
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sfc_dens
Definition: mod_atmos_phy_sf_vars.F90:72
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_desc
character(len=h_long), dimension(:), allocatable, public atmos_phy_bl_mynn_desc
Definition: scale_atmos_phy_bl_mynn.F90:59
mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_mu
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sflx_mu
Definition: mod_atmos_phy_sf_vars.F90:78
scale_prc::prc_abort
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:350
scale_atmos_phy_sf_bulk::atmos_phy_sf_bulk_flux
subroutine, public atmos_phy_sf_bulk_flux(IA, IS, IE, JA, JS, JE, ATM_W, ATM_U, ATM_V, ATM_TEMP, ATM_PRES, ATM_QV, SFC_DENS, SFC_TEMP, SFC_PRES, SFC_Z0M, SFC_Z0H, SFC_Z0E, PBL, ATM_Z1, SFLX_MW, SFLX_MU, SFLX_MV, SFLX_SH, SFLX_LH, SFLX_QV, Ustar, Tstar, Qstar, Wstar, RLmo, U10, V10, T2, Q2)
Calculate surface flux.
Definition: scale_atmos_phy_sf_bulk.F90:95
mod_atmos_vars::rhoq_tp
real(rp), dimension(:,:,:,:), allocatable, public rhoq_tp
Definition: mod_atmos_vars.F90:121
scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_cz
real(rp), dimension(:,:,:), allocatable, public atmos_grid_cartesc_real_cz
geopotential height [m] (zxy)
Definition: scale_atmos_grid_cartesC_real.F90:39
mod_atmos_phy_sf_vars::atmos_phy_sf_v10
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_v10
Definition: mod_atmos_phy_sf_vars.F90:96
mod_atmos_vars::pott
real(rp), dimension(:,:,:), allocatable, target, public pott
Definition: mod_atmos_vars.F90:133
scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_desc
character(len=h_long), dimension(1), public atmos_phy_bl_mynn_jmapplib_desc
Definition: scale_atmos_phy_bl_mynn_jmapplib.F90:54
mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_z0e
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sfc_z0e
Definition: mod_atmos_phy_sf_vars.F90:69
mod_atmos_vars::qtrc_av
real(rp), dimension(:,:,:,:), pointer, public qtrc_av
Definition: mod_atmos_vars.F90:95
scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_z1
real(rp), dimension(:,:), allocatable, public atmos_grid_cartesc_real_z1
Height of the lowermost grid from surface (cell center) [m].
Definition: scale_atmos_grid_cartesC_real.F90:60
scale_topography::topography_tansl_y
real(rp), dimension(:,:), allocatable, public topography_tansl_y
tan(slope_y)
Definition: scale_topography.F90:41
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_units
character(len=h_short), dimension(:), allocatable, public atmos_phy_bl_mynn_units
Definition: scale_atmos_phy_bl_mynn.F90:60
mod_atmos_vars::rhov_tp
real(rp), dimension(:,:,:), allocatable, public rhov_tp
Definition: mod_atmos_vars.F90:118
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
scale_atmos_phy_bl_mynn
module atmosphere / physics / pbl / mynn
Definition: scale_atmos_phy_bl_mynn.F90:23
mod_atmos_admin
module ATMOS admin
Definition: mod_atmos_admin.F90:11
mod_atmos_phy_sf_vars::atmos_phy_sf_qstar
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_qstar
Definition: mod_atmos_phy_sf_vars.F90:92
mod_atmos_vars::qdry
real(rp), dimension(:,:,:), allocatable, target, public qdry
Definition: mod_atmos_vars.F90:140
mod_atmos_phy_sf_vars::atmos_phy_sf_ustar
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_ustar
Definition: mod_atmos_phy_sf_vars.F90:90
mod_atmos_phy_sf_vars::atmos_phy_sf_wstar
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_wstar
Definition: mod_atmos_phy_sf_vars.F90:93
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_mkinit
subroutine, public atmos_phy_bl_mynn_mkinit(KA, KS, KE, IA, IS, IE, JA, JS, JE, PROG, DENS, U, V, W, POTT, PRES, EXNER, N2, QDRY, QV, Qw, POTL, POTV, SFC_DENS, SFLX_MU, SFLX_MV, SFLX_SH, SFLX_QV, us, ts, qs, RLmo, frac_land, CZ, FZ, F2H, BULKFLUX_type)
ATMOS_PHY_BL_MYNN_mkinit initialize TKE.
Definition: scale_atmos_phy_bl_mynn.F90:371
mod_atmos_phy_bl_vars::atmos_phy_bl_sflx_buoy
real(rp), dimension(:,:), allocatable, public atmos_phy_bl_sflx_buoy
Definition: mod_atmos_phy_bl_vars.F90:68
scale_time::time_dtsec_atmos_phy_bl
real(dp), public time_dtsec_atmos_phy_bl
time interval of physics(pbl ) [sec]
Definition: scale_time.F90:42
mod_atmos_phy_bl_vars::atmos_phy_bl_rhou_t
real(rp), dimension(:,:,:), allocatable, public atmos_phy_bl_rhou_t
Definition: mod_atmos_phy_bl_vars.F90:61
scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_units
character(len=h_short), dimension(1), public atmos_phy_bl_mynn_jmapplib_units
Definition: scale_atmos_phy_bl_mynn_jmapplib.F90:55
scale_bulkflux
module Surface bulk flux
Definition: scale_bulkflux.F90:12
scale_atmos_hydrometeor
module atmosphere / hydrometeor
Definition: scale_atmos_hydrometeor.F90:12
mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_mv
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sflx_mv
Definition: mod_atmos_phy_sf_vars.F90:79
mod_atmos_phy_bl_vars::atmos_phy_bl_rhoq_t
real(rp), dimension(:,:,:,:), allocatable, target, public atmos_phy_bl_rhoq_t
Definition: mod_atmos_phy_bl_vars.F90:65
mod_atmos_phy_sf_vars
module ATMOSPHERIC Surface Variables
Definition: mod_atmos_phy_sf_vars.F90:12
scale_topography
module TOPOGRAPHY
Definition: scale_topography.F90:11
mod_atmos_vars::rhot
real(rp), dimension(:,:,:), allocatable, target, public rhot
Definition: mod_atmos_vars.F90:80
mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_z0h
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sfc_z0h
Definition: mod_atmos_phy_sf_vars.F90:68
scale_atmos_grid_cartesc_real
module Atmosphere GRID CartesC Real(real space)
Definition: scale_atmos_grid_cartesC_real.F90:11
mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_temp
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sfc_temp
Definition: mod_atmos_phy_sf_vars.F90:65
mod_atmos_vars::qtrc
real(rp), dimension(:,:,:,:), allocatable, target, public qtrc
Definition: mod_atmos_vars.F90:81
scale_file_history
module file_history
Definition: scale_file_history.F90:15
scale_atmos_grid_cartesc::dx
real(rp), public dx
Definition: scale_atmos_grid_cartesC.F90:39
scale_atmos_phy_sf_bulk
module atmosphere / physics / surface / bulk
Definition: scale_atmos_phy_sf_bulk.F90:13
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_tendency
subroutine, public atmos_phy_bl_mynn_tendency(KA, KS, KE, IA, IS, IE, JA, JS, JE, DENS, U, V, W, POTT, PROG, PRES, EXNER, N2, QDRY, QV, Qw, POTL, POTV, SFC_DENS, SFLX_MU, SFLX_MV, SFLX_SH, SFLX_QV, us, ts, qs, RLmo, frac_land, CZ, FZ, F2H, dt_DP, BULKFLUX_type, RHOU_t, RHOV_t, RHOT_t, RHOQV_t, RPROG_t, Nu, Kh, Qlp, cldfrac, Zi, SFLX_BUOY)
ATMOS_PHY_BL_MYNN_tendency calculate tendency by the vertical eddy viscosity.
Definition: scale_atmos_phy_bl_mynn.F90:720
scale_prc
module PROCESS
Definition: scale_prc.F90:11
mod_atmos_phy_sf_vars::atmos_phy_sf_u10
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_u10
Definition: mod_atmos_phy_sf_vars.F90:95
mod_atmos_phy_bl_vars::atmos_phy_bl_rhov_t
real(rp), dimension(:,:,:), allocatable, public atmos_phy_bl_rhov_t
Definition: mod_atmos_phy_bl_vars.F90:62
mod_atmos_vars::rhou_tp
real(rp), dimension(:,:,:), allocatable, public rhou_tp
Definition: mod_atmos_vars.F90:117
mod_atmos_phy_bl_vars
module atmosphere / physics / PBL
Definition: mod_atmos_phy_bl_vars.F90:12
mod_atmos_vars::dens
real(rp), dimension(:,:,:), allocatable, target, public dens
Definition: mod_atmos_vars.F90:76
scale_const
module CONSTANT
Definition: scale_const.F90:11
scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_vol
real(rp), dimension(:,:,:), allocatable, public atmos_grid_cartesc_real_vol
control volume (zxy) [m3]
Definition: scale_atmos_grid_cartesC_real.F90:84
scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_setup
subroutine, public atmos_phy_bl_mynn_jmapplib_setup(KA, KS, KE, CZ, dt, PBL_MAX, SHCU_MAX)
ATMOS_PHY_BL_MYNN_JMAPPLIB_setup Setup.
Definition: scale_atmos_phy_bl_mynn_jmapplib.F90:98
scale_landuse::landuse_frac_land
real(rp), dimension(:,:), allocatable, public landuse_frac_land
land fraction
Definition: scale_landuse.F90:55
mod_atmos_vars::momz
real(rp), dimension(:,:,:), allocatable, target, public momz
Definition: mod_atmos_vars.F90:77
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_finalize
subroutine, public atmos_phy_bl_mynn_finalize
Definition: scale_atmos_phy_bl_mynn.F90:349
scale_topography::topography_tansl_x
real(rp), dimension(:,:), allocatable, public topography_tansl_x
tan(slope_x)
Definition: scale_topography.F90:40
mod_atmos_phy_sf_vars::atmos_phy_sf_rlmo
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_rlmo
Definition: mod_atmos_phy_sf_vars.F90:100
mod_atmos_vars::v
real(rp), dimension(:,:,:), allocatable, target, public v
Definition: mod_atmos_vars.F90:131
scale_atmos_phy_bl_common::atmos_phy_bl_tendency_tracer
subroutine, public atmos_phy_bl_tendency_tracer(KA, KS, KE, IA, IS, IE, JA, JS, JE, DENS, QTRC, SFLX_Q, Kh, MASS, CZ, FZ, F2H, DDT, TRACER_NAME, RHOQ_t)
ATMOS_PHY_BL_tendency_tracer calculate tendency of tracers by the eddy viscosity.
Definition: scale_atmos_phy_bl_common.F90:62
mod_atmos_vars::w
real(rp), dimension(:,:,:), allocatable, target, public w
Definition: mod_atmos_vars.F90:129
mod_atmos_vars::momx
real(rp), dimension(:,:,:), allocatable, target, public momx
Definition: mod_atmos_vars.F90:78
mod_atmos_vars::exner
real(rp), dimension(:,:,:), allocatable, target, public exner
Definition: mod_atmos_vars.F90:136
mod_atmos_vars::temp
real(rp), dimension(:,:,:), allocatable, target, public temp
Definition: mod_atmos_vars.F90:134
mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_qv
real(rp), dimension(:,:), pointer, public atmos_phy_sf_sflx_qv
Definition: mod_atmos_phy_sf_vars.F90:88
mod_atmos_vars::momy
real(rp), dimension(:,:,:), allocatable, target, public momy
Definition: mod_atmos_vars.F90:79
scale_bulkflux::bulkflux_type
character(len=h_short), public bulkflux_type
Definition: scale_bulkflux.F90:92
scale_time
module TIME
Definition: scale_time.F90:11
mod_atmos_vars::qv
real(rp), dimension(:,:,:), allocatable, pointer, target, public qv
Definition: mod_atmos_vars.F90:97
mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_qtrc
real(rp), dimension(:,:,:), allocatable, target, public atmos_phy_sf_sflx_qtrc
Definition: mod_atmos_phy_sf_vars.F90:86
scale_tracer::tracer_regist
subroutine, public tracer_regist(QS, NQ, NAME, DESC, UNIT, CV, CP, R, ENGI0, ADVC, MASS)
Regist tracer.
Definition: scale_tracer.F90:68
mod_atmos_phy_bl_vars::qe
integer, public qe
Definition: mod_atmos_phy_bl_vars.F90:46
scale_tracer
module TRACER
Definition: scale_tracer.F90:12
scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_ntracer
integer, parameter, public atmos_phy_bl_mynn_jmapplib_ntracer
Definition: scale_atmos_phy_bl_mynn_jmapplib.F90:52
scale_atmos_hydrometeor::i_qv
integer, public i_qv
Definition: scale_atmos_hydrometeor.F90:93
mod_atmos_vars::pres
real(rp), dimension(:,:,:), allocatable, target, public pres
Definition: mod_atmos_vars.F90:135
mod_atmos_vars::dens_av
real(rp), dimension(:,:,:), pointer, public dens_av
Definition: mod_atmos_vars.F90:90
mod_atmos_vars::u
real(rp), dimension(:,:,:), allocatable, target, public u
Definition: mod_atmos_vars.F90:130
scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_f2h
real(rp), dimension(:,:,:,:), allocatable, public atmos_grid_cartesc_real_f2h
coefficient for interpolation from full to half levels
Definition: scale_atmos_grid_cartesC_real.F90:47
mod_atmos_phy_sf_vars::atmos_phy_sf_t2
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_t2
Definition: mod_atmos_phy_sf_vars.F90:97
scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_name
character(len=h_short), dimension(1), public atmos_phy_bl_mynn_jmapplib_name
Definition: scale_atmos_phy_bl_mynn_jmapplib.F90:53
mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_lh
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sflx_lh
Definition: mod_atmos_phy_sf_vars.F90:81
mod_atmos_phy_sf_vars::atmos_phy_sf_sfc_pres
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sfc_pres
Definition: mod_atmos_phy_sf_vars.F90:73
scale_statistics::statistics_checktotal
logical, public statistics_checktotal
calc&report variable totals to logfile?
Definition: scale_statistics.F90:109
scale_comm_cartesc
module COMMUNICATION
Definition: scale_comm_cartesC.F90:11
mod_atmos_vars
module ATMOSPHERIC Variables
Definition: mod_atmos_vars.F90:12
scale_atmos_bottom
module atmosphere / bottom boundary extrapolation
Definition: scale_atmos_bottom.F90:12
mod_atmos_vars::qi
real(rp), dimension(:,:,:), pointer, public qi
Definition: mod_atmos_vars.F90:100
mod_atmos_vars::rhot_tp
real(rp), dimension(:,:,:), allocatable, public rhot_tp
Definition: mod_atmos_vars.F90:119
mod_atmos_phy_sf_vars::atmos_phy_sf_sflx_sh
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_sflx_sh
Definition: mod_atmos_phy_sf_vars.F90:80
scale_atmos_phy_bl_mynn_jmapplib
module atmosphere / physics / pbl / mynn-jmapplib
Definition: scale_atmos_phy_bl_mynn_jmapplib.F90:13
mod_atmos_admin::atmos_sw_phy_bl
logical, public atmos_sw_phy_bl
Definition: mod_atmos_admin.F90:58
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_ntracer
integer, public atmos_phy_bl_mynn_ntracer
Definition: scale_atmos_phy_bl_mynn.F90:57
mod_atmos_vars::atmos_vars_calc_diagnostics
subroutine, public atmos_vars_calc_diagnostics
Calc diagnostic variables.
Definition: mod_atmos_vars.F90:1747
mod_atmos_phy_sf_vars::atmos_phy_sf_q2
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_q2
Definition: mod_atmos_phy_sf_vars.F90:98
mod_atmos_vars::qc
real(rp), dimension(:,:,:), pointer, public qc
Definition: mod_atmos_vars.F90:98
scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_tendency
subroutine, public atmos_phy_bl_mynn_jmapplib_tendency(KA, KS, KE, IA, IS, IE, JA, JS, JE, DENS, U, V, POTT, PROG, PRES, EXNER, QDRY, QV, QC, QI, SFC_DENS, SFC_PRES, SFLX_MU, SFLX_MV, SFLX_SH, SFLX_QV, us, RLmo, CZ, FZ, F2H, dt, RHOU_t, RHOV_t, RHOT_t, RHOQV_t, RPROG_t, Nu, Kh, Zi, SFLX_BUOY)
ATMOS_PHY_BL_MYNN_JMAPPLIB_tendency calculate tendency by the virtical eddy viscosity.
Definition: scale_atmos_phy_bl_mynn_jmapplib.F90:224
scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_fz
real(rp), dimension(:,:,:), allocatable, public atmos_grid_cartesc_real_fz
geopotential height [m] (wxy)
Definition: scale_atmos_grid_cartesC_real.F90:43
scale_atmos_grid_cartesc_real::atmos_grid_cartesc_real_totvol
real(rp), public atmos_grid_cartesc_real_totvol
total volume (zxy, local) [m3]
Definition: scale_atmos_grid_cartesC_real.F90:88
mod_atmos_phy_bl_vars::atmos_phy_bl_cldfrac
real(rp), dimension(:,:,:), allocatable, public atmos_phy_bl_cldfrac
Definition: mod_atmos_phy_bl_vars.F90:71
scale_atmos_grid_cartesc
module atmosphere / grid / cartesC
Definition: scale_atmos_grid_cartesC.F90:12
scale_landuse
module LANDUSE
Definition: scale_landuse.F90:19
scale_atmos_grid_cartesc::atmos_grid_cartesc_cz
real(rp), dimension(:), allocatable, public atmos_grid_cartesc_cz
center coordinate [m]: z, local
Definition: scale_atmos_grid_cartesC.F90:41
mod_atmos_phy_bl_vars::atmos_phy_bl_rhot_t
real(rp), dimension(:,:,:), allocatable, public atmos_phy_bl_rhot_t
Definition: mod_atmos_phy_bl_vars.F90:63
mod_atmos_phy_bl_vars::atmos_phy_bl_ql
real(rp), dimension(:,:,:), allocatable, public atmos_phy_bl_ql
Definition: mod_atmos_phy_bl_vars.F90:70
scale_atmos_phy_bl_mynn_jmapplib::atmos_phy_bl_mynn_jmapplib_finalize
subroutine, public atmos_phy_bl_mynn_jmapplib_finalize
Definition: scale_atmos_phy_bl_mynn_jmapplib.F90:202
scale_const::const_undef
real(rp), public const_undef
Definition: scale_const.F90:43
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_name
character(len=h_short), dimension(:), allocatable, public atmos_phy_bl_mynn_name
Definition: scale_atmos_phy_bl_mynn.F90:58
scale_atmos_bottom::atmos_bottom_estimate
subroutine, public atmos_bottom_estimate(KA, KS, KE, IA, IS, IE, JA, JS, JE, DENS, PRES, QV, SFC_TEMP, FZ, SFC_DENS, SFC_PRES)
Calc bottom boundary of atmosphere (just above surface)
Definition: scale_atmos_bottom.F90:51
mod_atmos_phy_sf_vars::atmos_phy_sf_tstar
real(rp), dimension(:,:), allocatable, public atmos_phy_sf_tstar
Definition: mod_atmos_phy_sf_vars.F90:91
mod_atmos_phy_bl_vars::atmos_phy_bl_mix_tracers
logical, public atmos_phy_bl_mix_tracers
Definition: mod_atmos_phy_bl_vars.F90:59
scale_atmos_phy_bl_common
module atmosphere / physics / pbl / common
Definition: scale_atmos_phy_bl_common.F90:12
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_setup
subroutine, public atmos_phy_bl_mynn_setup(BULKFLUX_type, dx, TKE_MIN, PBL_MAX)
ATMOS_PHY_BL_MYNN_setup Setup.
Definition: scale_atmos_phy_bl_mynn.F90:231
mod_atmos_phy_bl_vars::qs
integer, public qs
Definition: mod_atmos_phy_bl_vars.F90:46
scale_atmos_phy_bl_mynn::atmos_phy_bl_mynn_tracer_setup
subroutine, public atmos_phy_bl_mynn_tracer_setup
ATMOS_PHY_BL_MYNN_tracer_setup Tracer Setup.
Definition: scale_atmos_phy_bl_mynn.F90:175