module_data_sorgam.F
References to this file elsewhere.
1
2 MODULE module_data_sorgam
3 USE module_data_radm2
4 !
5 ! param.inc start
6 IMPLICIT NONE
7 INTEGER NP !bs maximum expected value of N
8 PARAMETER (NP = 8)
9 ! integer numaer
10 ! parameter (numaer=50)
11
12 INTEGER MAXITS !bs maximum number of iterations
13 PARAMETER (MAXITS = 100)
14
15 REAL TOLF !bs convergence criterion on function values
16 PARAMETER (TOLF = 1.E-09)
17
18 REAL TOLMIN !bs criterion whether superios convergence to
19 PARAMETER (TOLMIN = 1.E-12) !bs a minimum of fmin has occurred
20
21 REAL TOLX !bs convergence criterion on delta_x
22 PARAMETER (TOLX = 1.E-10)
23
24 REAL STPMX !bs scaled maximum step length allowed
25 PARAMETER (STPMX = 100.)
26
27
28 REAL c303, c302
29 PARAMETER (c303=19.83,c302=5417.4)
30
31 INTEGER lcva, lcvb, lspcv, ldesn
32 PARAMETER (lcva=4,lcvb=4,lspcv=lcva+lcvb)
33 PARAMETER (ldesn=13)
34 !mh ldesn is number of deposition species
35 !mh true number of deposited species may be larger since there
36 !mh are species which are deposited with the same rate
37
38 INTEGER laerdvc, lnonaerdvc, l1ae, laero, imodes, aspec
39 PARAMETER (laerdvc=34,lnonaerdvc=8+lspcv)
40 PARAMETER (l1ae=laerdvc+lnonaerdvc)
41 PARAMETER (laero=4,imodes=4,aspec=1)
42 ! LAERDVC number of advected aerosol dynamic parameters for a given
43 ! component species
44 !ia L1AE advected parameters+non-advected parameters
45 !ia LAERO number of aerosol component species
46 !ia imodes number of aerosol modes
47 !ia ASPEC number of gas phase comp. that are added dynamically
48 !ia currently only sulfate (=1)
49 !bs
50 !bs * BS ** BS ** BS ** BS ** BS ** BS ** BS ** BS ** BS ** BS ** BS **
51 !bs
52 INTEGER aemiss
53 PARAMETER (aemiss=4)
54 !bs * AEMISS # of aerosol species with emissions link to gas phase
55 !bs currently ECI, ECJ, BCI, BCJ
56 INTEGER ldroga
57 PARAMETER (ldroga=11)
58 INTEGER ldrogb
59 PARAMETER (ldrogb=6)
60 INTEGER ldrog
61 PARAMETER (ldrog=ldroga+ldrogb)
62 !bs * LDROGA # of anthropogenic organic aerosol precursor gases (DR
63 !bs * LDROGB # of biogenic organic aerosol precursor gases (DROG)
64 !bs * LSPCV # of condensable organic vapor interacting between gas
65 !bs aerosol phase with SORGAM
66 !bs
67 ! param.inc stop
68
69 ! //////////////////////////////////////////////////////////////////////
70 ! FSB include file
71
72 ! *** declare and set flag for organic aerosol production method
73 ! *** Two method are available:
74
75 ! *** The method of Pandis,Harley, Cass, and Seinfeld, 1992,
76 ! Secondary aerosol formation and transport, Atmos. Environ., 26A,
77 ! pp 2453-2466
78 ! Bowman et al. Atmospheric Environment
79 ! Vol 29, pp 579-589, 1995.
80 ! *** and
81 ! *** The method of Odum, Hoffmann, Bowman, Collins, Flagen and
82 ! Seinfeld, 1996, Gas/particle partitioning and secondary organic ae
83 ! yields, Environ. Sci, Technol, 30, pp 2580-2585.
84
85
86 ! 1 = Pandis et al. 1992 method is used
87 INTEGER orgaer
88 ! 2 = Pankow 1994/Odum et al. 1996 method is
89 ! ***
90 ! switch for organic aerosol method
91 PARAMETER (orgaer=2)
92
93 ! *** information about visibility variables
94 ! number of visibility variables
95 INTEGER n_ae_vis_spc
96 PARAMETER (n_ae_vis_spc=2)
97
98 ! index for visual range in deciview
99 INTEGER idcvw
100 PARAMETER (idcvw=1)
101 ! index for extinction [ 1/km ]
102 INTEGER ibext
103 PARAMETER (ibext=2)
104
105
106 ! *** set up indices for array CBLK
107
108 ! index for Accumulation mode sulfate aeroso
109 INTEGER vso4aj
110 PARAMETER (vso4aj=1)
111
112 ! index for Aitken mode sulfate concentraton
113 INTEGER vso4ai
114 PARAMETER (vso4ai=2)
115
116 ! index for Accumulation mode aerosol ammoni
117 INTEGER vnh4aj
118 PARAMETER (vnh4aj=3)
119
120 ! index for Aitken mode ammonium concentrati
121 INTEGER vnh4ai
122 PARAMETER (vnh4ai=4)
123
124 ! index for Accumulation mode aerosol nitrat
125 INTEGER vno3aj
126 PARAMETER (vno3aj=5)
127
128 ! index for Aitken mode nitrate concentratio
129 INTEGER vno3ai
130 PARAMETER (vno3ai=6)
131
132 ! index for Accumulation mode anthropogen
133 INTEGER vorgaro1j
134 PARAMETER (vorgaro1j=7)
135
136 ! index for Aitken mode anthropogenic org
137 INTEGER vorgaro1i
138 PARAMETER (vorgaro1i=8)
139
140 ! index for Accumulation mode anthropogen
141 INTEGER vorgaro2j
142 PARAMETER (vorgaro2j=9)
143
144 ! index for Aitken mode anthropogenic org
145 INTEGER vorgaro2i
146 PARAMETER (vorgaro2i=10)
147
148 ! index for Accumulation mode anthropogen
149 INTEGER vorgalk1j
150 PARAMETER (vorgalk1j=11)
151
152 ! index for Aitken mode anthropogenic org
153 INTEGER vorgalk1i
154 PARAMETER (vorgalk1i=12)
155
156 ! index for Accumulation mode anthropogen
157 INTEGER vorgole1j
158 PARAMETER (vorgole1j=13)
159
160 ! index for Aitken mode anthropogenic org
161 INTEGER vorgole1i
162 PARAMETER (vorgole1i=14)
163
164 ! index for Accumulation mode biogenic aero
165 INTEGER vorgba1j
166 PARAMETER (vorgba1j=15)
167
168 ! index for Aitken mode biogenic aerosol co
169 INTEGER vorgba1i
170 PARAMETER (vorgba1i=16)
171
172 ! index for Accumulation mode biogenic aero
173 INTEGER vorgba2j
174 PARAMETER (vorgba2j=17)
175
176 ! index for Aitken mode biogenic aerosol co
177 INTEGER vorgba2i
178 PARAMETER (vorgba2i=18)
179
180 ! index for Accumulation mode biogenic aero
181 INTEGER vorgba3j
182 PARAMETER (vorgba3j=19)
183
184 ! index for Aitken mode biogenic aerosol co
185 INTEGER vorgba3i
186 PARAMETER (vorgba3i=20)
187
188 ! index for Accumulation mode biogenic aero
189 INTEGER vorgba4j
190 PARAMETER (vorgba4j=21)
191
192 ! index for Aitken mode biogenic aerosol co
193 INTEGER vorgba4i
194 PARAMETER (vorgba4i=22)
195
196 ! index for Accumulation mode primary anthro
197 INTEGER vorgpaj
198 PARAMETER (vorgpaj=23)
199
200 ! index for Aitken mode primary anthropogeni
201 INTEGER vorgpai
202 PARAMETER (vorgpai=24)
203
204 ! index for Accumulation mode aerosol elemen
205 INTEGER vecj
206 PARAMETER (vecj=25)
207
208 ! index for Aitken mode elemental carbon
209 INTEGER veci
210 PARAMETER (veci=26)
211
212 ! index for Accumulation mode primary PM2.5
213 INTEGER vp25aj
214 PARAMETER (vp25aj=27)
215
216 ! index for Aitken mode primary PM2.5 concen
217 INTEGER vp25ai
218 PARAMETER (vp25ai=28)
219
220 ! index for coarse mode anthropogenic aeroso
221 INTEGER vantha
222 PARAMETER (vantha=29)
223
224 ! index for coarse mode marine aerosol conce
225 INTEGER vseas
226 PARAMETER (vseas=30)
227
228 ! index for coarse mode soil-derived aerosol
229 INTEGER vsoila
230 PARAMETER (vsoila=31)
231
232 ! index for Aitken mode number
233 INTEGER vnu0
234 PARAMETER (vnu0=32)
235
236 ! index for accum mode number
237 INTEGER vac0
238 PARAMETER (vac0=33)
239
240 ! index for coarse mode number
241 INTEGER vcorn
242 PARAMETER (vcorn=34)
243
244 ! index for Accumulation mode aerosol water
245 INTEGER vh2oaj
246 PARAMETER (vh2oaj=35)
247
248 ! index for Aitken mode aerosol water concen
249 INTEGER vh2oai
250 PARAMETER (vh2oai=36)
251
252 ! index for Aitken mode 3'rd moment
253 INTEGER vnu3
254 PARAMETER (vnu3=37)
255
256 ! index for Accumulation mode 3'rd moment
257 INTEGER vac3
258 PARAMETER (vac3=38)
259
260 ! index for coarse mode 3rd moment
261 INTEGER vcor3
262 PARAMETER (vcor3=39)
263
264 ! index for sulfuric acid vapor concentratio
265 INTEGER vsulf
266 PARAMETER (vsulf=40)
267
268 ! index for nitric acid vapor concentration
269 INTEGER vhno3
270 PARAMETER (vhno3=41)
271
272 ! index for ammonia gas concentration
273 INTEGER vnh3
274 PARAMETER (vnh3=42)
275
276 ! index for cond. vapor from aromatics
277 INTEGER vcvaro1
278 PARAMETER (vcvaro1=43)
279
280 ! index for cond. vapor from aromatics
281 INTEGER vcvaro2
282 PARAMETER (vcvaro2=44)
283
284 ! index for cond. vapor from anth. alkane
285 INTEGER vcvalk1
286 PARAMETER (vcvalk1=45)
287
288 ! index for cond. vapor from anth. olefin
289 INTEGER vcvole1
290 PARAMETER (vcvole1=46)
291
292 ! index for cond. vapor from biogenics
293 INTEGER vcvapi1
294 PARAMETER (vcvapi1=47)
295
296 ! index for cond. vapor from biogenics
297 INTEGER vcvapi2
298 PARAMETER (vcvapi2=48)
299
300 ! index for cond. vapor from biogenics
301 INTEGER vcvlim1
302 PARAMETER (vcvlim1=49)
303
304 ! index for cond. vapor from biogenics
305 INTEGER vcvlim2
306 PARAMETER (vcvlim2=50)
307
308 ! COMMON /CBLKINDCS/
309 ! & VSO4AJ,VSO4AI,VNH4AJ,VNH4AI,VNO3AJ,VNO3AI,
310 ! & VORGAJ,VORGAI, VORGPAJ,VORGPAI,
311 ! & VORGBAJ,VORGBAI,VECJ,VECI,
312 ! & VP25AJ,VP25AI,VANTHA,VSEAS,VSOILA,
313 ! & VNU0,VAC0,VCORN,
314 ! & VH2OAJ,VH2OAI,
315 ! & VNU3,VAC3,VCOR3,
316 ! & VSULF,VHNO3,VNH3
317
318 ! *** set up species dimension and indices for sedimentation
319 ! velocity array VSED
320
321 ! number of sedimentation velocities
322 INTEGER naspcssed
323 PARAMETER (naspcssed=6)
324
325 ! index for Aitken mode number
326 INTEGER vsnnuc
327 PARAMETER (vsnnuc=1)
328
329 ! index for Accumulation mode number
330 INTEGER vsnacc
331 PARAMETER (vsnacc=2)
332
333 ! index for coarse mode number
334 INTEGER vsncor
335 PARAMETER (vsncor=3)
336
337 ! index for Aitken mode mass
338 INTEGER vsmnuc
339 PARAMETER (vsmnuc=4)
340
341 ! index for accumulation mode mass
342 INTEGER vsmacc
343 PARAMETER (vsmacc=5)
344
345 ! index for coarse mass
346 INTEGER vsmcor
347 PARAMETER (vsmcor=6)
348
349 ! *** set up species dimension and indices for deposition
350 ! velocity array VDEP
351
352 ! number of deposition velocities
353 INTEGER naspcsdep
354 PARAMETER (naspcsdep=7)
355
356 ! index for Aitken mode number
357 INTEGER vdnnuc
358 PARAMETER (vdnnuc=1)
359
360 ! index for accumulation mode number
361 INTEGER vdnacc
362 PARAMETER (vdnacc=2)
363
364 ! index for coarse mode number
365 INTEGER vdncor
366 PARAMETER (vdncor=3)
367
368 ! index for Aitken mode mass
369 INTEGER vdmnuc
370 PARAMETER (vdmnuc=4)
371
372 ! index for accumulation mode
373 INTEGER vdmacc
374 PARAMETER (vdmacc=5)
375
376 ! index for fine mode mass (Aitken + accumulatio
377 INTEGER vdmfine
378 PARAMETER (vdmfine=6)
379
380 ! index for coarse mode mass
381 INTEGER vdmcor
382 PARAMETER (vdmcor=7)
383
384 ! *** END AEROSTUFF.EXT
385 !bs
386 !BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * !
387 !BS * * !
388 !BS * include file used in SORGAM routines * !
389 !BS * * !
390 !BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * BS * !
391 !bs
392 !bs
393 !bs * species pointer for condensable vapor production
394 !bs
395 !bs XYL + OH
396 INTEGER pxyl
397 PARAMETER (pxyl=1)
398 !bs TOL + OH
399 INTEGER ptol
400 PARAMETER (ptol=2)
401 !bs CSL + OH
402 INTEGER pcsl1
403 PARAMETER (pcsl1=3)
404 !bs CSL + NO
405 INTEGER pcsl2
406 PARAMETER (pcsl2=4)
407 !bs HC8 + OH
408 INTEGER phc8
409 PARAMETER (phc8=5)
410 !bs OLI + OH
411 INTEGER poli1
412 PARAMETER (poli1=6)
413 !bs OLI + NO
414 INTEGER poli2
415 PARAMETER (poli2=7)
416 !bs OLI + O3
417 INTEGER poli3
418 PARAMETER (poli3=8)
419 !bs OLT + OH
420 INTEGER polt1
421 PARAMETER (polt1=9)
422 !bs OLT + NO
423 INTEGER polt2
424 PARAMETER (polt2=10)
425 !bs OLT + O3
426 INTEGER polt3
427 PARAMETER (polt3=11)
428 !bs API + OH
429 INTEGER papi1
430 PARAMETER (papi1=12)
431 !bs API + NO
432 INTEGER papi2
433 PARAMETER (papi2=13)
434 !bs API + O3
435 INTEGER papi3
436 PARAMETER (papi3=14)
437 !bs LIM + OH
438 INTEGER plim1
439 PARAMETER (plim1=15)
440 !bs LIM + NO
441 INTEGER plim2
442 PARAMETER (plim2=16)
443 !bs LIM + O3
444 INTEGER plim3
445 PARAMETER (plim3=17)
446 !bs
447 !bs * Number of lumped condensable vapors in SORGAM
448 !bs
449 !bs INTEGER NACV !bs # of anth. cond. vapors
450 !bs PARAMETER (NACV = 2)
451 !bs INTEGER NBCV !bs # of bio. cond. vapors
452 !bs PARAMETER (NBCV = 1)
453 !bs INTEGER NCV !bs total # of cond. vapor
454 !bs PARAMETER (NCV = NACV + NBCV)
455 !bs
456 !bs * species pointer for SOA species
457 !bs
458 INTEGER psoaaro1
459 PARAMETER (psoaaro1=1)
460 INTEGER psoaaro2
461 PARAMETER (psoaaro2=2)
462 INTEGER psoaalk1
463 PARAMETER (psoaalk1=3)
464 INTEGER psoaole1
465 PARAMETER (psoaole1=4)
466 INTEGER psoaapi1
467 PARAMETER (psoaapi1=5)
468 INTEGER psoaapi2
469 PARAMETER (psoaapi2=6)
470 INTEGER psoalim1
471 PARAMETER (psoalim1=7)
472 INTEGER psoalim2
473 PARAMETER (psoalim2=8)
474 !bs
475 !bs * end of AERO_SOA.EXT *
476 !bs
477
478 ! *** include file for aerosol routines
479
480
481 !....................................................................
482
483 ! CONTAINS: Fundamental constants for air quality modeling
484
485 ! DEPENDENT UPON: none
486
487 ! REVISION HISTORY:
488
489 ! Adapted 6/92 by CJC from ROM's PI.EXT.
490
491 ! Revised 3/1/93 John McHenry to include constants needed by
492 ! LCM aqueous chemistry
493 ! Revised 9/93 by John McHenry to include additional constants
494 ! needed for FMEM clouds and aqueous chemistry
495
496 ! Revised 3/4/96 by Dr. Francis S. Binkowski to reflect current
497 ! Models3 view that MKS units should be used wherever possible,
498 ! and that sources be documentated. Some variables have been added
499 ! names changed, and values revised.
500
501 ! Revised 3/7/96 to have universal gas constant input and compute
502 ! gas constant is chemical form. TWOPI is now calculated rather than
503
504 ! Revised 3/13/96 to group declarations and parameter statements.
505
506 ! Revised 9/13/96 to include more physical constants.
507 ! Revised 12/24/96 eliminate silly EPSILON, AMISS
508
509 ! Revised 1/06/97 to eliminate most derived constants
510
511 ! FSB REFERENCES:
512
513 ! CRC76, CRC Handbook of Chemistry and Physics (76th Ed),
514 ! CRC Press, 1995
515 ! Hobbs, P.V. Basic Physical Chemistry for the Atmospheric Scien
516 ! Cambridge Univ. Press, 206 pp, 1995.
517 ! Snyder, J.P., Map Projections-A Working Manual, U.S. Geological
518 ! Paper 1395 U.S.GPO, Washington, DC, 1987.
519 ! Stull, R. B., An Introduction to Bounday Layer Meteorology, Klu
520 ! Dordrecht, 1988
521
522 ! Geometric Constants:
523
524 REAL*8 & ! PI (single precision 3.141593)
525 pirs
526 PARAMETER (pirs=3.14159265358979324)
527 ! REAL PIRS ! PI (single precision 3.141593)
528 ! PARAMETER ( PIRS = 3.141593 )
529 ! Fundamental Constants: ( Source: CRC76, pp 1-1 to 1-6)
530
531 ! Avogadro's Constant [ 1/mol ]
532 REAL avo
533 PARAMETER (avo=6.0221367E23)
534
535 ! universal gas constant [ J/mol-K ]
536 REAL rgasuniv
537 PARAMETER (rgasuniv=8.314510)
538
539 ! standard atmosphere [ Pa ]
540 REAL stdatmpa
541 PARAMETER (stdatmpa=101325.0)
542
543 ! Standard Temperature [ K ]
544 REAL stdtemp
545 PARAMETER (stdtemp=273.15)
546
547 ! Stefan-Boltzmann [ W/(m**2 K**4) ]
548 REAL stfblz
549 PARAMETER (stfblz=5.67051E-8)
550
551
552 ! mean gravitational acceleration [ m/sec**2 ]
553 REAL grav
554 PARAMETER (grav=9.80622)
555 ! FSB Non MKS qualtities:
556
557 ! Molar volume at STP [ L/mol ] Non MKS units
558 REAL molvol
559 PARAMETER (molvol=22.41410)
560
561
562 ! Atmospheric Constants:
563
564 ! FSB 78.06% N2, 21% O2 and 0.943% A on a mole
565 REAL mwair
566 ! fraction basis. ( Source : Hobbs, 1995) pp 69-
567 ! mean molecular weight for dry air [ g/mol ]
568 PARAMETER (mwair=28.9628)
569
570 ! dry-air gas constant [ J / kg-K ]
571 REAL rdgas
572 PARAMETER (rdgas=1.0E3*rgasuniv/mwair)
573
574 ! 3*PI
575 REAL threepi
576 PARAMETER (threepi=3.0*pirs)
577
578 ! 6/PI
579 REAL f6dpi
580 PARAMETER (f6dpi=6.0/pirs)
581
582 ! 1.0e9 * 6/PIRS
583 REAL f6dpi9
584 PARAMETER (f6dpi9=1.0E9*f6dpi)
585
586 ! 1.0e-9 * 6/PIRS
587 REAL f6dpim9
588 PARAMETER (f6dpim9=1.0E-9*f6dpi)
589
590 ! SQRT( PI )
591 REAL sqrtpi
592 PARAMETER (sqrtpi=1.7724539)
593
594 ! SQRT( 2 )
595 REAL sqrt2
596 PARAMETER (sqrt2=1.4142135623731)
597
598 ! ln( sqrt( 2 ) )
599 REAL lgsqt2
600 PARAMETER (lgsqt2=0.34657359027997)
601
602 ! 1/ln( sqrt( 2 ) )
603 REAL dlgsqt2
604 PARAMETER (dlgsqt2=1.0/lgsqt2)
605
606 ! 1/3
607 REAL one3
608 PARAMETER (one3=1.0/3.0)
609
610 ! 2/3
611 REAL two3
612 PARAMETER (two3=2.0/3.0)
613
614
615 ! *** physical constants:
616
617 ! Boltzmann's Constant [ J / K]
618 REAL boltz
619 PARAMETER (boltz=rgasuniv/avo)
620
621
622 ! *** component densities [ kg/m**3 ] :
623
624
625 ! bulk density of aerosol sulfate
626 REAL rhoso4
627 PARAMETER (rhoso4=1.8E3)
628
629 ! bulk density of aerosol ammonium
630 REAL rhonh4
631 PARAMETER (rhonh4=1.8E3)
632
633 ! bulk density of aerosol nitrate
634 REAL rhono3
635 PARAMETER (rhono3=1.8E3)
636
637 ! bulk density of aerosol water
638 REAL rhoh2o
639 PARAMETER (rhoh2o=1.0E3)
640
641 ! bulk density for aerosol organics
642 REAL rhoorg
643 PARAMETER (rhoorg=1.0E3)
644
645 ! bulk density for aerosol soil dust
646 REAL rhosoil
647 PARAMETER (rhosoil=2.6E3)
648
649 ! bulk density for marine aerosol
650 REAL rhoseas
651 PARAMETER (rhoseas=2.2E3)
652
653 ! bulk density for anthropogenic aerosol
654 REAL rhoanth
655 PARAMETER (rhoanth=2.2E3)
656
657 ! *** Factors for converting aerosol mass concentration [ ug m**-3] to
658 ! to 3rd moment concentration [ m**3 m^-3]
659
660 REAL so4fac
661 PARAMETER (so4fac=f6dpim9/rhoso4)
662
663 REAL nh4fac
664 PARAMETER (nh4fac=f6dpim9/rhonh4)
665
666 REAL h2ofac
667 PARAMETER (h2ofac=f6dpim9/rhoh2o)
668
669 REAL no3fac
670 PARAMETER (no3fac=f6dpim9/rhono3)
671
672 REAL orgfac
673 PARAMETER (orgfac=f6dpim9/rhoorg)
674
675 REAL soilfac
676 PARAMETER (soilfac=f6dpim9/rhosoil)
677
678 REAL seasfac
679 PARAMETER (seasfac=f6dpim9/rhoseas)
680
681 REAL anthfac
682 PARAMETER (anthfac=f6dpim9/rhoanth)
683
684 ! starting standard surface pressure [ Pa ]
685 REAL pss0
686 PARAMETER (pss0=101325.0)
687
688 ! starting standard surface temperature [ K ]
689 REAL tss0
690 PARAMETER (tss0=288.15)
691
692 ! initial sigma-G for nucleimode
693 REAL sginin
694 PARAMETER (sginin=1.70)
695
696 ! initial sigma-G for accumulation mode
697 REAL sginia
698 PARAMETER (sginia=2.00)
699
700 ! initial sigma-G for coarse mode
701 REAL sginic
702 PARAMETER (sginic=2.5)
703
704 ! initial mean diameter for nuclei mode [ m ]
705 REAL dginin
706 PARAMETER (dginin=0.01E-6)
707
708 ! initial mean diameter for accumulation mode [ m
709 REAL dginia
710 PARAMETER (dginia=0.07E-6)
711
712 ! initial mean diameter for coarse mode [ m ]
713 REAL dginic
714 PARAMETER (dginic=1.0E-6)
715
716
717
718 !................ end AERO3box.EXT ...............................
719 !///////////////////////////////////////////////////////////////////////
720
721
722
723
724
725 LOGICAL diagnostics
726 ! *** Scalar variables for fixed standard deviations.
727
728 ! Flag for writing diagnostics to file
729 ! nuclei mode exp( log^2( sigmag )/8 )
730 REAL en1
731 ! accumulation mode exp( log^2( sigmag )
732 REAL ea1
733
734 REAL ec1
735 ! coarse mode exp( log^2( sigmag )/8 )
736 ! nuclei **4
737 REAL esn04
738 ! accumulation
739 REAL esa04
740
741 REAL esc04
742 ! coarse
743 ! nuclei **5
744 REAL esn05
745
746 REAL esa05
747 ! accumulation
748 ! nuclei **8
749 REAL esn08
750 ! accumulation
751 REAL esa08
752
753 REAL esc08
754 ! coarse
755 ! nuclei **9
756 REAL esn09
757
758 REAL esa09
759 ! accumulation
760 ! nuclei **12
761 REAL esn12
762 ! accumulation
763 REAL esa12
764
765 REAL esc12
766 ! coarse mode
767 ! nuclei **16
768 REAL esn16
769 ! accumulation
770 REAL esa16
771
772 REAL esc16
773 ! coarse
774 ! nuclei **20
775 REAL esn20
776 ! accumulation
777 REAL esa20
778
779 REAL esc20
780 ! coarse
781 ! nuclei **25
782 REAL esn25
783
784 REAL esa25
785 ! accumulation
786 ! nuclei **24
787 REAL esn24
788 ! accumulation
789 REAL esa24
790
791 REAL esc24
792 ! coarse
793 ! nuclei **28
794 REAL esn28
795 ! accumulation
796 REAL esa28
797
798 REAL esc28
799 ! coarse
800 ! nuclei **32
801 REAL esn32
802 ! accumulation
803 REAL esa32
804
805 REAL esc32
806 ! coarese
807 ! nuclei **36
808 REAL esn36
809 ! accumulation
810 REAL esa36
811
812 REAL esc36
813 ! coarse
814 ! nuclei **49
815 REAL esn49
816
817 REAL esa49
818 ! accumulation
819 ! nuclei **52
820 REAL esn52
821
822 REAL esa52
823 ! accumulation
824 ! nuclei **64
825 REAL esn64
826 ! accumulation
827 REAL esa64
828
829 REAL esc64
830 ! coarse
831
832 REAL esn100
833 ! nuclei **100
834 ! nuclei **(-20)
835 REAL esnm20
836 ! accumulation
837 REAL esam20
838
839 REAL escm20
840 ! coarse
841 ! nuclei **(-32)
842 REAL esnm32
843 ! accumulation
844 REAL esam32
845
846 REAL escm32
847 ! coarse
848 ! log(sginin)
849 REAL xxlsgn
850 ! log(sginia)
851 REAL xxlsga
852
853 REAL xxlsgc
854 ! log(sginic )
855 ! log(sginin ) ** 2
856 REAL l2sginin
857 ! log(sginia ) ** 2
858 REAL l2sginia
859
860 REAL l2sginic
861
862
863 ! *** set up COMMON blocks for esg's:
864
865
866
867 ! log(sginic ) ** 2
868
869 ! *** SET NUCLEATION FLAG:
870
871 ! INUCL = 0, Kerminen & Wexler Mechanism
872 INTEGER inucl
873 ! INUCL = 1, Youngblood and Kreidenweis mech
874 ! INUCL = 2, Kulmala et al. mechanism
875 ! Flag for Choice of nucleation Mechanism
876 PARAMETER (inucl=2)
877
878 ! *** Set flag for sedimentation velocities:
879
880 LOGICAL icoarse
881 PARAMETER (icoarse=.FALSE.) ! *** END AERO_INTERNAL.EXT
882 ! *** Diameters and standard deviations for emissions
883 ! the diameters are the volume (mass) geometric mean diameters
884
885 ! *** Aitken mode:
886 ! special factor to compute mass transfer
887 REAL dgvem_i
888 PARAMETER (dgvem_i=0.03E-6) ! [ m ]
889 REAL sgem_i
890 PARAMETER (sgem_i=1.7)
891
892 ! *** Accumulation mode:
893 REAL dgvem_j
894 PARAMETER (dgvem_j=0.3E-6) ! [ m ]
895 REAL sgem_j
896 PARAMETER (sgem_j=2.0)
897
898 ! *** Coarse mode
899 REAL dgvem_c
900 PARAMETER (dgvem_c=6.0E-6) ! [ m ] <<< Corrected 11/19/97
901 REAL sgem_c
902 PARAMETER (sgem_c=2.2)
903
904 ! *** factors for getting number emissions rate from mass emissions rate
905 ! Aitken mode
906 REAL factnumn
907 ! accumulation mode
908 REAL factnuma
909
910 REAL factnumc
911 ! coarse mode
912 REAL facatkn_min, facacc_min
913 PARAMETER (facatkn_min=0.04,facacc_min=1.0-facatkn_min)
914 REAL conmin,xxm3
915 PARAMETER (conmin=epsilc)
916 ! [ ug/m**3 ] ! changed 1/6/98
917 REAL*8 & ! factor to set minimum for Aitken mode number
918 nummin_i
919 REAL*8 & ! factor to set minimum for accumulation mode nu
920 nummin_j
921 REAL*8 &
922 nummin_c
923 ! factor to set minimum for coarse mode number
924 !bs
925 !bs REAL ALPHSULF ! Accommodation coefficient for sulfuric acid
926 !bs PARAMETER ( ALPHSULF = 0.05 ) ! my be set to one in future
927 !bs
928 !bs REAL DIFFSULF ! molecular diffusivity for sulfuric acid [ m**2
929 !bs PARAMETER( DIFFSULF = 0.08E-4 ) ! may be changed in future
930 !bs
931 !bs * 23/03/99 updates of ALPHSULF and DIFFSULF adopted fro new code fro
932 !bs * DIFFSULF is calculated from Reid, Prausnitz, and Poling, The prope
933 !bs * of gases and liquids, 4th edition, McGraw-Hill, 1987, pp 587-588.
934 !bs * Equation (11-4.4) was used.
935 !bs * The value is at T = 273.16 K and P = 1.01325E05 Pa
936 !bs * Temperature dependence is included for DIFFSULF via DIFFCORR (see
937 !bs
938 ! Accommodation coefficient for sulfuric
939 REAL alphsulf
940 PARAMETER (alphsulf=1.0)
941 !bs updated from code of FSB
942 ! molecular weight for sulfuric acid [ kg/mole ] MKS
943 REAL mwh2so4
944 PARAMETER (mwh2so4=98.07354E-3)
945 !cia corrected error 24/11/97
946 ! molecular diffusivity for sulfuric acid [ m**2 /se
947 REAL diffsulf
948 PARAMETER (diffsulf=9.362223E-06)
949 !bs updated from code of FSB
950 !bs Accomodation coefficient for organic
951 REAL alphaorg
952 PARAMETER (alphaorg=1.0) !bs Kleeman et al. '99 propose alpha
953 !bs Bowman et al. '97 uses alpha = 1.
954 !bs mean molecular weight of organics [k
955 REAL mworg
956 PARAMETER (mworg=175.0E-03)
957 !bs
958 !bs * DIFFORG is calculated from the same formula as DIFFSULF.
959 !bs * An average elemental composition of C=8, O=3, N=1, H=17 is asuumed
960 !bs * to calculate DIFFORG at T = 273.16K and P = 1.01325E05 Pa.
961 !bs * Temepratur dependence is included below.
962 !bs molecular diffusivity for organics [
963 REAL difforg
964 PARAMETER (difforg=5.151174E-06)
965 ! *** CCONC is the factor for near-continuum condensation.
966 ! ccofm * sqrt( ta )
967 REAL cconc
968 PARAMETER (cconc=2.0*pirs*diffsulf)
969 !bs * factor for NC condensation for organics
970 ! [ m**2 / sec ]
971 REAL cconc_org
972 PARAMETER (cconc_org=2.0*pirs*difforg)
973 ! [ m**2 / sec ]
974 !bs analogue to CCOFM but for organics
975 REAL ccofm_org
976 ! FSB CCOFM is the accommodation coefficient
977 ! times the mean molecular velocity for h2so4 without the temperatu
978 ! after some algebra
979
980 !bs CCOFM_ORG * sqrt(TA)
981 ! set to a value below
982 REAL ccofm
983 ! minimum aerosol sulfate concentration
984 REAL aeroconcmin
985 PARAMETER (aeroconcmin=0.0001)
986
987
988
989 END Module module_data_sorgam