69 use physparam
, only : kind_phys
78 real (kind=kind_phys) :: upfxc
80 real (kind=kind_phys) :: dnfxc
82 real (kind=kind_phys) :: upfx0
88 real (kind=kind_phys) :: upfxc
90 real (kind=kind_phys) :: dnfxc
92 real (kind=kind_phys) :: upfx0
94 real (kind=kind_phys) :: dnfx0
100 real (kind=kind_phys) :: upfxc
102 real (kind=kind_phys) :: dnfxc
104 real (kind=kind_phys) :: upfx0
106 real (kind=kind_phys) :: dnfx0
112 real (kind=kind_phys) :: uvbfc
114 real (kind=kind_phys) :: uvbf0
116 real (kind=kind_phys) :: nirbm
118 real (kind=kind_phys) :: nirdf
120 real (kind=kind_phys) :: visbm
122 real (kind=kind_phys) :: visdf
145 integer,
parameter :: nbdsw =
nbands
148 integer :: ng16, ng17, ng18, ng19, ng20, ng21, ng22,
149 & ng23, ng24, ng25, ng26, ng27, ng28, ng29
150 parameter( ng16=06, ng17=12, ng18=08, ng19=08, ng20=10,
151 & ng21=10, ng22=02, ng23=10, ng24=08, ng25=06,
152 & ng26=06, ng27=08, ng28=06, ng29=12)
154 integer,
dimension(NBLOW:NBHGH) :: ng
155 data ng / ng16, ng17, ng18, ng19, ng20, ng21, ng22,
156 & ng23, ng24, ng25, ng26, ng27, ng28, ng29 /
159 integer :: ns16, ns17, ns18, ns19, ns20, ns21, ns22,
160 & ns23, ns24, ns25, ns26, ns27, ns28, ns29
161 parameter( ns16=00, ns17=ns16+ng16, ns18=ns17+ng17,
162 & ns19=ns18+ng18, ns20=ns19+ng19, ns21=ns20+ng20,
163 & ns22=ns21+ng21, ns23=ns22+ng22, ns24=ns23+ng23,
164 & ns25=ns24+ng24, ns26=ns25+ng25, ns27=ns26+ng26,
165 & ns28=ns27+ng27, ns29=ns28+ng28 )
168 integer,
dimension(NBLOW:NBHGH) ::
ngs
169 data ngs / ns16, ns17, ns18, ns19, ns20, ns21, ns22, &
170 & ns23, ns24, ns25, ns26, ns27, ns28, ns29 /
173 integer,
dimension(NGPTSW) ::
ngb
174 data ngb(:) / 16,16,16,16,16,16, &
175 & 17,17,17,17,17,17,17,17,17,17,17,17, &
176 & 18,18,18,18,18,18,18,18, &
177 & 19,19,19,19,19,19,19,19, &
178 & 20,20,20,20,20,20,20,20,20,20, &
179 & 21,21,21,21,21,21,21,21,21,21, &
181 & 23,23,23,23,23,23,23,23,23,23, &
182 & 24,24,24,24,24,24,24,24, &
183 & 25,25,25,25,25,25, &
184 & 26,26,26,26,26,26, &
185 & 27,27,27,27,27,27,27,27, &
186 & 28,28,28,28,28,28, &
187 & 29,29,29,29,29,29,29,29,29,29,29,29 /
190 real (kind=kind_phys),
dimension(NBANDS):: wvnum1, wvnum2
192 & 2600.0, 3251.0, 4001.0, 4651.0, 5151.0, 6151.0, 7701.0, &
193 & 8051.0,12851.0,16001.0,22651.0,29001.0,38001.0, 820.0 /
195 & 3250.0, 4000.0, 4650.0, 5150.0, 6150.0, 7700.0, 8050.0, &
196 & 12850.0,16000.0,22650.0,29000.0,38000.0,50000.0, 2600.0 /
integer, parameter nbands
total number of SW bands (14)
derived type for special components of surface SW fluxes
integer, parameter nbhgh
band range upper index
integer, parameter ntbmx
index upper limit of optical depth and transmittance tables
integer, parameter ngptsw
total number of g-point in all bands
derived type for SW fluxes' column profiles (at layer interfaces)
integer, parameter nswstr
SW bands counter starting index (for compatibility with previous SW radiation schemes) ...
This module is for specifying the band structures and program parameters used by the RRTMG-SW scheme...
integer, parameter nblow
band range lower index
integer, dimension(nblow:nbhgh) ngs
array contains values of NS16-NS29
derived type for SW fluxes at TOA
integer, dimension(ngptsw) ngb
reverse checking of band index for each g-point
integer, parameter maxgas
maximum number of absorbing gases
derived type for SW fluxes at surface
integer, parameter ngmax
maximum number of g-point in one band