UPP (develop)
Loading...
Searching...
No Matches
PARAMR.f
1! SUBPROGRAM DOCUMENTATION BLOCK
2
3! HISTORY
4
5! Original MM5 code received frm Roelof Bruintjes, 8 Jan 96.
6
7! 1996 - early 1998: Numerous small changes by John B., Tanya Smirnova
8! and Stan Benjamin.
9
10! 2000 Jan: Changes by John B.
11! in conjunction with major revamping of EXMOISG
12! by Roy Rasmussen, Greg Thompson, Kevin Manning of NCAR.
13
14! PURPOSE: Sets utility constants and physical parameters used in
15! EXMOISG, mixed phase microphysics routine.
16
17! CALLING ROUTINES: INITHYBV
18
19! SUBPROGRAMS CALLED: fgamma (Computes Gamma function)
20
21! REMARKS:
22
23 SUBROUTINE paramr
24! module PARAMR_mod
25
26
27 use pmicrph_mod, only: pi, r1, ron, ron2, son, gon, br, bs, bg, arain,&
28 asnow, agraupel, rho_not, drain, dsnow, xr0s, xr0g, xm01, xm0s,&
29 xm0g, diace_min, topr, tops, topg, ron_min, qr0, dgraupel, dice,&
30 drain2, dsnow2, delqr0, const1r, const2r, const1a, const1b,&
31 const_ns1, const_ns2, const_ng1, const_ng2, slor_r1, slos_r1,&
32 tno, ato, int0, berc1, bp, ap, cnp, xnu, frd1, fra1, efis, efir,&
33 efsr, efcs, slog_r1, efgi, efgc, efgr, efgs, efcr, acris, bacris,&
34 cir, cirf, cpiacr0, cpiacr1, cpiacr2, cpiacr3, frain, fsnow,&
35 fgraupel, csr, alpha1, beta1, gamma3, crs, acrcs, bacrcs, acrcs_new,&
36 acrls, acrcg, bacrcg, bacrcs_new, bacls, acrcg_new, bacrcg_new,&
37 acrig, bacrig, crg, csg, depg1, depg2, depg3, depg4, deps1, deps2,&
38 deps3, deps4, c1, xsmax, qck1, qcth, acrcr, bacrcr, depr1, depr2,&
39 depr3, depr4, psm1, psm2, psm3, psm4, pgm1, pgm2, pgm3, pgm4,&
40 cw, hgfr
41
42 implicit none
43
44 REAL ABER1(31),ABER2(31)
45 REAL fgamma
46! REAL xnu ! Added 01 Dec 2004 GREG T.
47! COMMON/BER/ ABER1(31),ABER2(31)
48! LOOKUP TABLE FOR A1 AND A2 IN BERGERGON PROCESS
49
50
51 REAL GI,GS,GR,GG
52
53!jmb--declare local variables
54 real consta,constd,constgb
55 real cpiacr7,cpiacr8,cpiacr9
56 real const1,const2
57
58 DATA aber1/.7939e-07,.7841e-06,.3369e-05,.4336e-05, &
59 .5285e-05,.3728e-05,.1852e-05,.2991e-06,.4248e-06, &
60 .7434e-06,.1812e-05,.4394e-05,.9145e-05,.1725e-06, &
61 .3348e-04,.1725e-04,.9175e-05,.4412e-05,.2252e-05, &
62 .9115e-06,.4876e-06,.3473e-06,.4758e-06,.6306e-06, &
63 .8573e-06,.7868e-06,.7192e-06,.6513e-06,.5956e-06, &
64 .5333e-06,.4834e-06/
65
66 DATA aber2/.4006,.4831,.5320,.5307,.5319,.5249, &
67 .4888,.3894,.4047,.4318,.4771,.5183,.5463,.5651, &
68 .5813,.5655,.5478,.5203,.4906,.4447,.4126,.3960, &
69 .4149,.4320,.4506,.4483,.4460,.4433,.4413,.4382, &
70 .4361/
71!gt
72!gt The value .4506 replaces .4406 which was a typo - check original
73!gt Koenig, 1971 paper.
74!gt
75
76 pi=acos(-1.)
77
78! Min value for hydrometeor mixing ratios
79 r1 = 1.e-15
80
81! SLOPE INTERCEPT FOR RAIN, SNOW, AND GRAUPEL
82
83!jmb--Roy R. suggests a larger value for the slope-intercept for rain.
84! This will slow down the fall speed.--16dec98
85 ron=8.e6 ! Original M-P value.
86!gt RON2=1.E10 ! GREG T. MWR Part1 vrbl intercept
87 ron2=1.e9 ! GREG T. changed 01 Dec 2004
88! SON=2.E6 ! Original M-P value.
89 son=2.e7
90!jmb--According to Roy Rasmussens data (from a QJRMS paper he was reviewing)
91! the value of the M-P slope intercept can be as large as 3.E7 for
92! graupel. The value GON = 4.E6 as an upper bound on the intercept value
93! appears too small. Use same value as for snow.--17oct96
94! GON=4.E6 ! Original M-P value.
95!gt GON=5.e7 ! Roy R., summer 1998, 19 Jan 00, Oct 00
96 gon=4.e6 ! Original M-P value. GREG T. changed 01 Dec 2004
97
98! EXPONENT FOR RAIN, SNOW, AND GRAUPEL, IN FALL SPEED V(D)=A*D**B
99! THIS FROM SEKHON AND SRIVASTAVA (1970,JAS)
100
101 br=0.8
102 bs=0.41
103 bg=0.37
104
105! A IN FALL SPEED
106
107 arain=842.
108 asnow=11.72
109 agraupel=19.3
110
111!jmb--Standard density (p/RT, values from ICAO standard atmosphere)
112! used in computing density correction to fall
113! speeds--22jan99
114
115 rho_not = 101325.0/(287.0586*298.0)
116
117! DENSITY OF RAIN, SNOW, AND GRAUPEL
118
119 drain=1000.
120 dsnow=100.
121 dgraupel=400.
122! DICE=150.
123 dice=500.
124!jmb--added square of rain and snow densities--24jun96
125 drain2=drain*drain
126 dsnow2=dsnow*dsnow
127
128! SMALLEST SIZE OF SNOW AND GRAUPEL (RADIUS, METERS)
129!gt XR0S=0.75E-4
130!gt XR0G=0.457E-4
131 xr0s= 75.e-6
132 xr0g=150.e-6
133! MINIMUM MASS OF ICE, SNOW, GRAUPEL
134 xm01=1.0e-12
135 xm0s=4.*pi/3.*dsnow*xr0s**3 ! GREG T.
136 xm0g=4.*pi/3.*dgraupel*xr0g**3 ! GREG T.
137 diace_min = 2.0 * (3.0*xm01/(4.0*pi*dice))**0.3333 ! GREG T.
138
139! TOP OF SLOPE FOR RAIN, SNOW, AND GRAUPEL
140!jmb--By top of slope is meant numerator Marshall-Palmer slope parameter
141! [See (4) in Reisner et al 1998, QJRMS].
142
143 topr=pi*drain*ron
144 tops=pi*dsnow*son
145 topg=pi*dgraupel*gon
146
147!CONSTANTS FOR VARIABLE RON
148
149!jmb qr0 is center value of rain mixing ratio for transition from
150! M-P slope-intercept for drizzle formed by a collision-coalescence
151! process to M-P slope-intercept for traditional rain.--nov00
152!jmb delqr0 governs sharpness of transition: small delt_qr0 makes the
153! transition sharper:
154! if the rate of change of zero intercept wrt rain mixing ratio
155! were linear, with the slope at QR0 given by present tanh formula,
156! the transition would occur between qr0-delqr0 and qr0+delqr0.--nov00
157!gt RON_min = RON
158 ron_min = 2.e7
159!gt qr0 = 0.0001 ! Roy R. 26oct00
160 qr0 = 0.0002 ! GREG T. 01 Dec 2004
161!gt delqr0 = 0.25*qr0
162 delqr0 = 0.5*qr0 ! GREG T. 01 Dec 2004
163 const1r=(ron2-ron_min)*0.5
164 const2r=(ron2+ron_min)*0.5
165
166!CONSTANTS FOR VARIABLE SON
167
168! CONST1A is for unit conversion of Sekhon and Srivastava (1970, JAS, Eq 45)
169! from M-P intercept in [m^-3 mm^-1] to [m^-4], and rain rate in
170! [mm/h] to [m/s].
171 const1a=2.5e6*(1./1000*1./3600.)**(0.94) ! = 1.718
172 gi = 4.+bs
173 consta=fgamma(gi)
174 const1b=asnow*consta/6.
175 const1=2.5e6*(1./1000*1./3600.)**(0.94) ! = 1.718 Reisner et al (5)
176 const2=fgamma(4.+bs)
177 const_ns1 = (const1* &
178 (((asnow*const2)/(6.*drain*((pi*dsnow)**(0.25*bs))))**(-0.94))) &
179 **(4./(4. - 0.94*bs))
180 const_ns2 = -0.94*(1.+.25*bs)*(4./(4.-0.94*bs))
181! const_ns2 is exponent on the product rho*qnib (or rho*qnia)
182
183!CONSTANTS FOR VARIABLE GON
184! Based on Roy R s formulation, Jun 96
185
186 constd=1./0.52
187 constgb=12./13.
188 const_ng1=(1.57**constd)*((pi*dgraupel)**constgb)
189 const_ng2=-constgb
190
191!jmb--Specify inverse slope values when q_r, q_s and q_g are default
192! small values.--22jan99
193!jmb--Dry air density assumed unity.
194
195 slor_r1=(1.*r1/topr)**0.25
196 slos_r1=(1.*r1/tops)**0.25
197 slog_r1=(1.*r1/topg)**0.25
198
199! CONSTANT IN FLETCHER CURVES
200
201!c TNO=1.E-2
202!c ATO=0.6
203
204! CONSTANT IN COOPER CURVES ! GREG T.
205 tno=5.0 ! GREG T.
206 ato=0.304 ! GREG T.
207
208! CONSTANTS FOR BERGERON PROCESS
209
210 int0=273
211 berc1=pi*50.0e-06*50.0e-06
212
213! FREEZING OF CLOUD DROPLETS, MURAKAMI (1989)
214 bp=100.
215 ap=0.66
216 cnp=100.e6 ! GREG T. Jul98
217!gt
218!gt Berry and Reinhardt autoconversion uses this cloud drop
219!gt shape parameter (effectively a measure of dispersion) and
220!gt if CNP is changed, be sure to change the section of code
221!gt in EXMOISG too.
222!gt
223 xnu = max(0.0, (cnp*1e-6 - 100.)/100.)
224
225! FREEZING OF RAIN DROPLETS, LIN ET AL (45)
226
227 frd1=pi*pi*20.*bp*ron
228 fra1=ap
229
230! COLLECTION EFFICIENCIES
231
232 efis=0.1
233 efir=1.0
234 efsr=1.0
235 efcs=1.0
236 efgi=0.1
237 efgc=1.0
238 efgr=1.0
239 efgs=0.1
240 efcr=1.0
241
242
243! COLLECTION OF CLOUD ICE BY SNOW
244
245 gi=3.+bs
246 gs=fgamma(gi)
247 acris=0.25*pi*asnow*efis*son*gs
248 bacris=3+bs
249
250! COLLECTION OF CLOUD ICE BY RAIN
251
252 cir=0.25*pi*efir*ron
253
254! RATE AT WHICH RAIN IS FROZEN BY COLLISION WITH CLOUD ICE
255
256 cirf=1./24.*pi*pi*drain*ron*efir
257!jmb--Additional constants for PIACR--26may97
258 cpiacr0 = cirf*.267*120.
259 cpiacr7 = 6.*5.15e3/.267
260 cpiacr8 = 6.*7.*1.0225e6/.267
261 cpiacr9 = 6.*7.*8.*7.55e7/.267
262 cpiacr1 = cpiacr7
263 cpiacr2 = cpiacr8/cpiacr7
264 cpiacr3 = cpiacr9/cpiacr8
265
266
267! PARAMETERS FOR MEAN FALL SPEED
268
269 gi=4.+br
270 gr=fgamma(gi)
271 frain=arain*gr/6.
272 gi=4.+bs
273 gs=fgamma(gi)
274 fsnow=asnow*gs/6.
275 gi=4.+bg
276 gg=fgamma(gi)
277 fgraupel=agraupel*gg/6.
278
279! COLLECTION OF SNOW BY RAIN
280
281 csr=pi*pi*efsr*drain*ron*son
282 alpha1=1.2
283 beta1=0.95
284!jmb--Changed GAMMA1-->GAMMA3 in FSL version of PARAMR
285!jmb to avoid conflicts with GAMMA1 in CUP.--12feb99
286!jmb****GAMMA1 is used in MM5 EXMOISG in loop 30 for PSACR, PRACS. Make sure
287!jmb**** these are changed to GAMMA3 in FSL version.--26jan00
288 gamma3=0.08
289
290! COLLECTION OF RAIN BY SNOW
291
292 crs=pi*pi*efsr*dsnow*ron*son
293
294! COLLECTION OF CLOUD WATER BY SNOW
295
296! Old particle size distribution for snow
297 gi=bs+3.
298 gs=fgamma(gi)
299 acrcs=0.25*pi*asnow*efcs*son*gs
300 bacrcs=3.+bs
301
302! New particle size distribution for snow (Roy R., Jul 99)
303 gi=bs+4.
304 gs=fgamma(gi)
305 acrcs_new=0.25*pi*asnow*efcs*son*gs
306 bacrcs_new=4.+bs ! New particle size distribution for snow
307
308! LOSS OF SNOW DUE TO COLLISION WITH CLOUD WATER
309!jmb--These constants follow Reisner et al (1998) (A.43)--20jan99
310 gi = 2.*bs + 2.0
311 gs = fgamma(gi)
312 acrls = 3.0*pi*son*gs*asnow*asnow
313 bacls = gi
314!c RMC=4.E-12
315!c GI=6.+BS
316!c GS=GAMMA(GI)
317!c ACRLS=(1./24.)*PI*PI*EFCS*SON*ASNOW*DSNOW*GS
318!c BACLS=6.+BS
319
320! COLLECTION OF CLOUD WATER BY GRAUPEL
321
322! Old particle size distribution for graupel
323!gt As of 01 Dec 2004, again use this, not new gamma distrib below - GREG T.
324 gi=3.+bg
325 gg=fgamma(gi)
326 acrcg=0.25*pi*agraupel*efgc*gon*gg
327 bacrcg=3.+bg
328
329! New particle size distribution for graupel (Roy R, Jul 99)
330 gi=4.+bg
331 gg=fgamma(gi)
332 acrcg_new=0.25*pi*agraupel*efgc*gon*gg
333 bacrcg_new=4.+bg
334
335! COLLECTION OF CLOUD ICE BY GRAUPEL
336
337 gi=3.+bg
338 gg=fgamma(gi)
339 acrig=0.25*pi*agraupel*efgi*gon*gg
340 bacrig=3.+bg
341
342! COLLECTION OF RAIN BY GRAUPEL
343
344 crg=pi*pi*efgr*drain*ron*gon
345
346! COLLECTION OF SNOW BY GRAUPEL
347
348 csg=pi*pi*efgs*dsnow*son*gon
349
350! DEPOSITIONAL GROWTH OF GRAUPEL
351
352 gi=bg/2.+2.5
353 gg=fgamma(gi)
354 depg1=2*pi*gon
355 depg2=agraupel
356 depg3=0.31*gg
357 depg4=bg/2.+2.5
358
359! DEPOSITIONAL GROWTH OF SNOW
360
361 gi=bs/2.+2.5
362 gs=fgamma(gi)
363 deps1=4.*son
364 deps2=asnow
365 deps3=0.44*gs
366 deps4=bs/2.+2.5
367
368! AGGREGATION OF CLOUD ICE
369
370 c1=700.*0.1*0.25/dice ! GREG T. to conform to R:Eq (A.33) Jul98
371
372! AUTOCONVERSION TO SNOW
373
374 xsmax=9.4e-10
375
376! AUTOCONVERSION OF CLOUD WATER TO RAINWATER [Reisner et al 1998, (A.60)]
377!jmb--Moved QCK1 and QCTH definition from INITHYBV to here to keep it with
378! other setting of microphysics constants.
379
380 qck1 = 1.e-3
381!c QCTH = .00010 ! Used in RUC Apr 98 -
382!c QCTH = .00015 ! Suggested by Greg T., 26feb99
383!c QCTH = .00025 ! Desired by Roy R., 12 Jan 00
384 qcth = .00035 ! Desired by Roy R., Oct 00
385!gt ! No longer used, replaced by Berry&Reinhardt - GREG T.
386
387! COLLECTION OF CLOUD WATER BY RAIN
388
389 gi=3.+br
390 gr=fgamma(gi)
391 acrcr=0.25*pi*arain*efcr*ron*gr
392 bacrcr=3.+br
393
394
395! DEPOSITIONAL GROWTH OF RAIN
396
397 gi=br/2.+2.5
398 gr=fgamma(gi)
399 depr1=2*pi*ron
400 depr2=arain
401 depr3=0.31*gr
402 depr4=br/2.+2.5
403
404! FOR MELTING OF SNOW
405
406 gi=bs/2.+2.5
407 gs=fgamma(gi)
408 psm1=2*pi*son
409 psm2=asnow
410 psm3=0.44*gs
411 psm4=bs/2.+2.5
412
413! FOR MELTING OF GRAUPEL
414
415 gi=bg/2.+2.5
416 gg=fgamma(gi)
417 pgm1=2*pi*gon
418 pgm2=agraupel
419 pgm3=0.31*gg
420 pgm4=bg/2.+2.5
421
422! CONSTANT FOR ENHANCED MELTING OF GRAUPEL BY RAIN AND CLOUD WATER
423
424 cw=4218.
425
426
427! CONSTANT FOR HOMOGENEOUS FREEZING OF CLOUD DROPLETS
428
429 hgfr=233.15
430
431 RETURN
432 END
433! end module PARAMR_mod