SCALE-RM
mod_atmos_phy_bl_vars.F90
Go to the documentation of this file.
1 !-------------------------------------------------------------------------------
10 !-------------------------------------------------------------------------------
11 #include "scalelib.h"
13  !-----------------------------------------------------------------------------
14  !
15  !++ used modules
16  !
17  use scale_precision
18  use scale_io
19  use scale_prof
21  use scale_tracer
22  !-----------------------------------------------------------------------------
23  implicit none
24  private
25  !-----------------------------------------------------------------------------
26  !
27  !++ Public procedure
28  !
29  public :: atmos_phy_bl_vars_setup
30 
31  !-----------------------------------------------------------------------------
32  !
33  !++ Public parameters & variables
34  !
35  integer, public :: qs, qe
36 
37  real(RP), public, allocatable :: atmos_phy_bl_rhou_t(:,:,:) ! tendency RHOU [kg/m2/s2]
38  real(RP), public, allocatable :: atmos_phy_bl_rhov_t(:,:,:) ! tendency RHOV [kg/m2/s2]
39  real(RP), public, allocatable :: atmos_phy_bl_rhot_t(:,:,:) ! tendency RHOT [K*kg/m3/s]
40 
41  real(RP), public, allocatable :: atmos_phy_bl_rhoq_t(:,:,:,:) ! tendency rho*QTRC [kg/kg/s]
42 
43  real(RP), public, allocatable :: atmos_phy_bl_zi (:,:) ! depth of the PBL
44 
45  !-----------------------------------------------------------------------------
46  !
47  !++ Private procedure
48  !
49  !-----------------------------------------------------------------------------
50  !
51  !++ Private parameters & variables
52  !
53  !-----------------------------------------------------------------------------
54 contains
55  !-----------------------------------------------------------------------------
57  subroutine atmos_phy_bl_vars_setup
58  use scale_prc, only: &
59  prc_abort
60  use scale_const, only: &
61  undef => const_undef
62  implicit none
63 
64  !---------------------------------------------------------------------------
65 
66  log_newline
67  log_info("ATMOS_PHY_BL_vars_setup",*) 'Setup'
68 
69  allocate( atmos_phy_bl_rhou_t(ka,ia,ja) )
70  allocate( atmos_phy_bl_rhov_t(ka,ia,ja) )
71  allocate( atmos_phy_bl_rhot_t(ka,ia,ja) )
72  allocate( atmos_phy_bl_rhoq_t(ka,ia,ja,qa) )
73  atmos_phy_bl_rhou_t(:,:,:) = undef
74  atmos_phy_bl_rhov_t(:,:,:) = undef
75  atmos_phy_bl_rhot_t(:,:,:) = undef
76  atmos_phy_bl_rhoq_t(:,:,:,:) = undef
77 
78  allocate( atmos_phy_bl_zi(ia,ja) )
79  atmos_phy_bl_zi(:,:) = 100.0_rp ! tentative
80 
81  return
82  end subroutine atmos_phy_bl_vars_setup
83 
84 end module mod_atmos_phy_bl_vars
integer, public ia
of whole cells: x, local, with HALO
real(rp), dimension(:,:,:), allocatable, public atmos_phy_bl_rhov_t
integer, public qa
integer, public ja
of whole cells: y, local, with HALO
real(rp), public const_undef
Definition: scale_const.F90:41
real(rp), dimension(:,:,:), allocatable, public atmos_phy_bl_rhou_t
real(rp), dimension(:,:), allocatable, public atmos_phy_bl_zi
module TRACER
module atmosphere / grid / cartesC index
module PROCESS
Definition: scale_prc.F90:11
real(rp), dimension(:,:,:,:), allocatable, public atmos_phy_bl_rhoq_t
module atmosphere / physics / PBL
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:338
module CONSTANT
Definition: scale_const.F90:11
subroutine, public atmos_phy_bl_vars_setup
Setup.
module profiler
Definition: scale_prof.F90:11
module PRECISION
integer, public ka
of whole cells: z, local, with HALO
real(rp), dimension(:,:,:), allocatable, public atmos_phy_bl_rhot_t
module STDIO
Definition: scale_io.F90:10