SCALE-RM
scale_tracer_sdm.F90
Go to the documentation of this file.
1 !-----------------------------------------------------------------------------
2 !!
3 !! @par Description
4 !! Tracer parameters for Super Droplet Method (dummy interface)
5 !!
6 !! @author Team SCALE
7 !!
8 !! @par History
9 !! @li 2013-09-18 (Y.Sato) [new]
10 !! @li 2014-01-22 (Y.Sato) [new] revised for develop 4.0.0
11 !! @li 2015-09-08 (Y.Sato) [mod] update for version SCALE 0.2.4
12 !!
13 
14 !-------------------------------------------------------------------------------
16  !-----------------------------------------------------------------------------
17  !
18  !++ used modules
19  !
20  use scale_precision
21  use scale_stdio
22  !-----------------------------------------------------------------------------
23  implicit none
24  private
25  !-----------------------------------------------------------------------------
26  !
27  !++ Public procedure
28  !
29  public :: tracer_sdm_setup
30  !-----------------------------------------------------------------------------
31  !
32  !++ Public parameters & variables
33  !
34  integer, public, parameter :: qa_mp = 3
35 
36  integer, public, parameter :: i_qv = 1
37  integer, public, parameter :: i_qc = 2
38  integer, public, parameter :: i_qr = 3
39  integer, public, parameter :: i_qi = 0
40  integer, public, parameter :: i_qs = 0
41  integer, public, parameter :: i_qg = 0
42  integer, public, parameter :: i_nc = 0
43  integer, public, parameter :: i_nr = 0
44  integer, public, parameter :: i_ni = 0
45  integer, public, parameter :: i_ns = 0
46  integer, public, parameter :: i_ng = 0
47 
48  integer, public, parameter :: qqa = 3 ! mass tracer (water)
49  integer, public, parameter :: qqs = 1 ! start index for mass tracer
50  integer, public, parameter :: qqe = 3 ! end index for mass tracer
51 
52  integer, public, parameter :: qws = 2 ! start index for water tracer
53  integer, public, parameter :: qwe = 3 ! end index for water tracer
54  integer, public, parameter :: qis = 0 ! start index for ice tracer
55  integer, public, parameter :: qie = -1 ! end index for ice tracer
56 
57  character(len=H_SHORT), public, save :: aq_mp_name(qa_mp)
58  character(len=H_MID), public, save :: aq_mp_desc(qa_mp)
59  character(len=H_SHORT), public, save :: aq_mp_unit(qa_mp)
60 
61  data aq_mp_name / 'QV', 'QC', 'QR' /
62 
63  data aq_mp_desc / 'Water Vapor mixing ratio', &
64  'cloud water mixing ratio', &
65  'rain water mixing ratio' /
66 
67  data aq_mp_unit / 'kg/kg', 'kg/kg', 'kg/kg' /
68 
69  !-----------------------------------------------------------------------------
70  !
71  !++ tracer index & relationship (MP_sn13+AE_dummy+RD_mstrnX)
72  !
73  !-----------------------------------------------------------------------------
74 
75  integer, public, parameter :: mp_qa = 2 ! number of hydrometeor tracer
76  integer, public, parameter :: i_mp_qc = 1
77  integer, private, parameter :: i_m_qr = 2
78 
79  integer, public, save :: i_mp2all(mp_qa)
80  data i_mp2all / i_qc, & ! I_mp_QC => I_QC
81  i_qr / ! I_mp_QR => I_QR
82 
83  integer, public, save :: i_mp2rd(mp_qa)
84  data i_mp2rd / 1, & ! I_mp_QC => MSTRN_nptype=1: water cloud
85  1 / ! I_mp_QR => MSTRN_nptype=1: water cloud
86 
87 ! integer, public, parameter :: AE_QA = 1 ! number of aerosol tracer
88 ! integer, public, parameter :: I_ae_dummy = 1
89 !
90 ! integer, public, save :: I_AE2ALL(AE_QA)
91 ! data I_AE2ALL / -999 / ! dummy
92 !
93 ! integer, public, save :: I_AE2RD(AE_QA)
94 ! data I_AE2RD / 3 / ! dummy => MSTRN_nptype=3: dust
95 
96 contains
97  subroutine tracer_sdm_setup
98 
99  return
100  end subroutine tracer_sdm_setup
101 
102 end module scale_tracer_sdm
integer, parameter, public i_nr
integer, parameter, public i_ng
integer, parameter, public qwe
module STDIO
Definition: scale_stdio.F90:12
integer, parameter, public qqs
integer, parameter, public mp_qa
character(len=h_short), dimension(qa_mp), save, public aq_mp_name
integer, parameter, public qa_mp
subroutine, public tracer_sdm_setup
integer, parameter, public qqa
integer, parameter, public i_qr
integer, dimension(mp_qa), save, public i_mp2rd
integer, parameter, public i_ns
integer, parameter, public i_nc
integer, parameter, public i_qs
integer, parameter, public qqe
integer, parameter, public i_qg
integer, parameter, public qws
integer, parameter, public i_mp_qc
character(len=h_mid), dimension(qa_mp), save, public aq_mp_desc
integer, parameter, public i_ni
module PRECISION
character(len=h_short), dimension(qa_mp), save, public aq_mp_unit
integer, dimension(mp_qa), save, public i_mp2all
integer, parameter, public qis
integer, parameter, public qie
integer, parameter, public i_qc
integer, parameter, public i_qi
integer, parameter, public i_qv