SCALE-RM
Functions/Subroutines | Variables
scale_atmos_phy_mp_sdm Module Reference

module ATMOSPHERE / Physics Cloud Microphysics More...

Functions/Subroutines

subroutine, public atmos_phy_mp_sdm_config (MP_TYPE, QA, QS)
 Confif. More...
 
subroutine, public atmos_phy_mp_sdm_setup
 Setup Cloud Microphysics. More...
 
subroutine, public atmos_phy_mp_sdm (DENS, MOMZ, MOMX, MOMY, RHOT, QTRC, CCN, EVAPORATE, SFLX_rain, SFLX_snow)
 Cloud Microphysics. More...
 
subroutine, public atmos_phy_mp_sdm_cloudfraction (cldfrac, QTRC, mask_criterion)
 Calculate Cloud Fraction. More...
 
subroutine, public atmos_phy_mp_sdm_effectiveradius (Re, QTRC0, DENS0, TEMP0)
 Calculate Effective Radius. More...
 
subroutine, public atmos_phy_mp_sdm_mixingratio (Qe, QTRC0)
 Calculate mixing ratio of each category. More...
 

Variables

character(len=h_short), dimension(qa_mp), target, public atmos_phy_mp_sdm_name
 
character(len=h_mid), dimension(qa_mp), target, public atmos_phy_mp_sdm_desc
 
character(len=h_short), dimension(qa_mp), target, public atmos_phy_mp_sdm_unit
 
real(rp), dimension(n_hyd), target, public atmos_phy_mp_sdm_dens
 

Detailed Description

module ATMOSPHERE / Physics Cloud Microphysics

Description
Cloud Microphysics by Super Droplet Method (SDM), dummy interface
Author
Team SCALE
History
  • 2012-10-18 (S.Nishizawa) [new]
  • 2015-09-08 (Y.Sato) [mod] update for version SCALE 0.2.4

Function/Subroutine Documentation

◆ atmos_phy_mp_sdm_config()

subroutine, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_config ( character(len=*), intent(in)  MP_TYPE,
integer, intent(out)  QA,
integer, intent(out)  QS 
)

Confif.

Definition at line 80 of file scale_atmos_phy_mp_sdm.F90.

References scale_process::prc_mpistop().

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

80  use scale_process, only: &
82  implicit none
83 
84  character(len=*), intent(in) :: MP_TYPE
85  integer, intent(out) :: QA
86  integer, intent(out) :: QS
87  !---------------------------------------------------------------------------
88 
89  write(*,*) '*** SDM not supported.'
90  write(*,*) '*** Please contact SCALE developers'
91  call prc_mpistop
92 
93  qa = 0
94  qs = 0
95 
96  return
subroutine, public prc_mpistop
Abort MPI.
module PROCESS
Here is the call graph for this function:
Here is the caller graph for this function:

◆ atmos_phy_mp_sdm_setup()

subroutine, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_setup ( )

Setup Cloud Microphysics.

Definition at line 103 of file scale_atmos_phy_mp_sdm.F90.

References atmos_phy_mp_sdm_dens, scale_const::const_undef, and scale_process::prc_mpistop().

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

103  use scale_process, only: &
105  use scale_const, only: &
106  undef => const_undef
107  implicit none
108  !---------------------------------------------------------------------------
109 
110  write(*,*) '*** SDM not supported.'
111  write(*,*) '*** Please contact SCALE developers'
112  call prc_mpistop
113 
114  atmos_phy_mp_sdm_dens(:) = undef
115 
116  return
subroutine, public prc_mpistop
Abort MPI.
real(rp), public const_undef
Definition: scale_const.F90:43
module PROCESS
module CONSTANT
Definition: scale_const.F90:14
real(rp), dimension(n_hyd), target, public atmos_phy_mp_sdm_dens
Here is the call graph for this function:
Here is the caller graph for this function:

◆ atmos_phy_mp_sdm()

subroutine, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm ( real(rp), dimension(ka,ia,ja), intent(inout)  DENS,
real(rp), dimension(ka,ia,ja), intent(inout)  MOMZ,
real(rp), dimension(ka,ia,ja), intent(inout)  MOMX,
real(rp), dimension(ka,ia,ja), intent(inout)  MOMY,
real(rp), dimension(ka,ia,ja), intent(inout)  RHOT,
real(rp), dimension(ka,ia,ja,qa), intent(inout)  QTRC,
real(rp), dimension (ka,ia,ja), intent(in)  CCN,
real(rp), dimension(ka,ia,ja), intent(out)  EVAPORATE,
real(rp), dimension(ia,ja), intent(out)  SFLX_rain,
real(rp), dimension(ia,ja), intent(out)  SFLX_snow 
)

Cloud Microphysics.

Definition at line 133 of file scale_atmos_phy_mp_sdm.F90.

References scale_const::const_undef, scale_process::prc_mpistop(), and scale_tracer::qa.

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

133  use scale_grid_index
134  use scale_const, only: &
135  undef => const_undef
136  use scale_tracer, only: &
137  qa
138  use scale_process, only: &
140  implicit none
141 
142  real(RP), intent(inout) :: DENS(KA,IA,JA)
143  real(RP), intent(inout) :: MOMZ(KA,IA,JA)
144  real(RP), intent(inout) :: MOMX(KA,IA,JA)
145  real(RP), intent(inout) :: MOMY(KA,IA,JA)
146  real(RP), intent(inout) :: RHOT(KA,IA,JA)
147  real(RP), intent(inout) :: QTRC(KA,IA,JA,QA)
148  real(RP), intent(in) :: CCN (KA,IA,JA)
149  real(RP), intent(out) :: EVAPORATE(KA,IA,JA) !---- evaporated cloud number concentration [/m3]
150  real(RP), intent(out) :: SFLX_rain(IA,JA)
151  real(RP), intent(out) :: SFLX_snow(IA,JA)
152  !---------------------------------------------------------------------------
153 
154  write(*,*) '*** SDM not supported.'
155  write(*,*) '*** Please contact SCALE developers'
156  call prc_mpistop
157 
158  evaporate = undef
159  sflx_rain = undef
160  sflx_snow = undef
161 
162  return
subroutine, public prc_mpistop
Abort MPI.
real(rp), public const_undef
Definition: scale_const.F90:43
module grid index
module TRACER
module PROCESS
module CONSTANT
Definition: scale_const.F90:14
Here is the call graph for this function:
Here is the caller graph for this function:

◆ atmos_phy_mp_sdm_cloudfraction()

subroutine, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_cloudfraction ( real(rp), dimension(ka,ia,ja), intent(out)  cldfrac,
real(rp), dimension (ka,ia,ja,qa), intent(in)  QTRC,
real(rp), intent(in)  mask_criterion 
)

Calculate Cloud Fraction.

Definition at line 171 of file scale_atmos_phy_mp_sdm.F90.

References scale_tracer::qa.

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

171  use scale_grid_index
172  use scale_tracer, only: &
173  qa
174  implicit none
175 
176  real(RP), intent(out) :: cldfrac(KA,IA,JA)
177  real(RP), intent(in) :: QTRC (KA,IA,JA,QA)
178  real(RP), intent(in) :: mask_criterion ! not used
179  !---------------------------------------------------------------------------
180 
181  cldfrac(:,:,:) = 0.0_rp ! dummy
182 
183  return
module grid index
module TRACER
Here is the caller graph for this function:

◆ atmos_phy_mp_sdm_effectiveradius()

subroutine, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_effectiveradius ( real(rp), dimension (ka,ia,ja,n_hyd), intent(out)  Re,
real(rp), dimension(ka,ia,ja,qa), intent(in)  QTRC0,
real(rp), dimension(ka,ia,ja), intent(in)  DENS0,
real(rp), dimension(ka,ia,ja), intent(in)  TEMP0 
)

Calculate Effective Radius.

Definition at line 193 of file scale_atmos_phy_mp_sdm.F90.

References scale_atmos_hydrometeor::n_hyd, and scale_tracer::qa.

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

193  use scale_grid_index
194  use scale_tracer, only: &
195  qa
196  use scale_atmos_hydrometeor, only: &
197  n_hyd
198  implicit none
199 
200  real(RP), intent(out) :: Re (KA,IA,JA,N_HYD) ! effective radius
201  real(RP), intent(in) :: QTRC0(KA,IA,JA,QA) ! tracer mass concentration [kg/kg]
202  real(RP), intent(in) :: DENS0(KA,IA,JA) ! Density [kg/m3]
203  real(RP), intent(in) :: TEMP0(KA,IA,JA) ! Temperatuer [K]
204  !---------------------------------------------------------------------------
205 
206  re(:,:,:,:) = 8.e-6_rp ! dummy
207 
208  return
module grid index
module TRACER
Here is the caller graph for this function:

◆ atmos_phy_mp_sdm_mixingratio()

subroutine, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_mixingratio ( real(rp), dimension (ka,ia,ja,n_hyd), intent(out)  Qe,
real(rp), dimension(ka,ia,ja,qa), intent(in)  QTRC0 
)

Calculate mixing ratio of each category.

Definition at line 215 of file scale_atmos_phy_mp_sdm.F90.

References scale_const::const_eps, scale_atmos_hydrometeor::n_hyd, and scale_tracer::qa.

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

215  use scale_const, only: &
216  eps => const_eps
217  use scale_grid_index
218  use scale_tracer, only: &
219  qa
220  use scale_atmos_hydrometeor, only: &
221  n_hyd
222  implicit none
223 
224  real(RP), intent(out) :: Qe (KA,IA,JA,N_HYD) ! mixing ratio of each cateory [kg/kg]
225  real(RP), intent(in) :: QTRC0(KA,IA,JA,QA) ! tracer mass concentration [kg/kg]
226 
227  integer :: ihydro
228  !---------------------------------------------------------------------------
229 
230  qe(:,:,:,:) = 8.e-6_rp ! dummy
231 
232  return
module grid index
module TRACER
module CONSTANT
Definition: scale_const.F90:14
real(rp), public const_eps
small number
Definition: scale_const.F90:36
Here is the caller graph for this function:

Variable Documentation

◆ atmos_phy_mp_sdm_name

character(len=h_short), dimension(qa_mp), target, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_name

Definition at line 47 of file scale_atmos_phy_mp_sdm.F90.

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

47  character(len=H_SHORT), public, target :: ATMOS_PHY_MP_sdm_NAME(QA_MP)

◆ atmos_phy_mp_sdm_desc

character(len=h_mid), dimension(qa_mp), target, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_desc

Definition at line 48 of file scale_atmos_phy_mp_sdm.F90.

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

48  character(len=H_MID), public, target :: ATMOS_PHY_MP_sdm_DESC(QA_MP)

◆ atmos_phy_mp_sdm_unit

character(len=h_short), dimension(qa_mp), target, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_unit

Definition at line 49 of file scale_atmos_phy_mp_sdm.F90.

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config().

49  character(len=H_SHORT), public, target :: ATMOS_PHY_MP_sdm_UNIT(QA_MP)

◆ atmos_phy_mp_sdm_dens

real(rp), dimension(n_hyd), target, public scale_atmos_phy_mp_sdm::atmos_phy_mp_sdm_dens

Definition at line 51 of file scale_atmos_phy_mp_sdm.F90.

Referenced by scale_atmos_phy_mp::atmos_phy_mp_config(), and atmos_phy_mp_sdm_setup().

51  real(RP), public, target :: ATMOS_PHY_MP_sdm_DENS(N_HYD) ! hydrometeor density [kg/m3]=[g/L]