1 !**********************************************************************************
2 ! This computer software was prepared by Battelle Memorial Institute, hereinafter
3 ! the Contractor, under Contract No. DE-AC05-76RL0 1830 with the Department of
4 ! Energy (DOE). NEITHER THE GOVERNMENT NOR THE CONTRACTOR MAKES ANY WARRANTY,
5 ! EXPRESS OR IMPLIED, OR ASSUMES ANY LIABILITY FOR THE USE OF THIS SOFTWARE.
7 ! MOSAIC module: see module_mosaic_driver.F for references and terms of use
8 !**********************************************************************************
9 module module_data_mosaic_asect
15 !-----------------------------------------------------------------------
17 ! The variables in this module provide a means of organizing and accessing
18 ! aerosol species in the "chem" array by their chemical component,
19 ! size bin (or mode), "type", and "phase"
21 ! Their purpose is to allow flexible coding of process modules,
22 ! compared to "hard-coding" using the chem array p_xxx indices
23 ! (e.g., p_so4_a01, p_so4_a02, ...; p_num_a01, ...)
25 !-----------------------------------------------------------------------
27 ! rce & sg 2004-dec-03 - added phase and type capability,
28 ! which changed this module almost completely
30 !-----------------------------------------------------------------------
32 ! maxd_atype = maximum allowable number of aerosol types
33 ! maxd_asize = maximum allowable number of aerosol size bins
34 ! maxd_acomp = maximum allowable number of chemical components
35 ! in each aerosol size bin
36 ! maxd_aphase = maximum allowable number of aerosol phases
37 ! (gas, cloud, ice, rain, ...)
39 ! ntype_aer = number of aerosol types
40 ! The aerosol type will allow treatment of an externally mixed
41 ! aerosol. The current MOSAIC code has only 1 type, with the implicit
42 ! assumption of internal mixing. Eventually, multiple types
43 ! could treat fresh primary BC/OC, fresh SO4 from nucleation,
44 ! aged BC/OC/SO4/... mixture, soil dust, sea salt, ...
46 ! nphase_aer = number of aerosol phases
48 ! ai_phase = phase (p) index for interstitial (unactivated) aerosol particles
49 ! cw_phase = phase (p) index for aerosol particles in cloud water
50 ! ci_phase = phase (p) index for aerosol particles in cloud ice
51 ! rn_phase = phase (p) index for aerosol particles in rain
52 ! sn_phase = phase (p) index for aerosol particles in snow
53 ! gr_phase = phase (p) index for aerosol particles in graupel
54 ! [Note: the value of "xx_phase" will be between 1 and nphase_aer
55 ! for phases that are active in a simulation. The others
56 ! will have non-positive values.]
58 ! nsize_aer(t) = number of aerosol size bins for aerosol type t
60 ! ncomp_aer(t) = number of "regular" chemical components for aerosol type t
61 ! ncomp_plustracer_aer(t) = number of "regular" plus "tracer"
62 ! chemical components for aerosol type t
63 ! [Note: only "regular" components are used for calculating
64 ! aerosol physical (mass, volume) and chemical properties.
65 ! "Tracer" components are optional, and can be used to track source
66 ! regions, source mechanisms, etc.]
67 ! [Note: for aerosol type t, all phases have the same number of size
68 ! bins, and all size bins have the same number of
69 ! both regular and tracer components.]
71 ! ntot_mastercomp_aer = number of aerosol chemical components defined
72 ! in the "master component list".
73 ! [Note: each aerosol type will use some but not necessarily all
74 ! of the components in the "master component list".]
76 ! mastercompptr_aer(c,t) = the position/index/i.d. in the
77 ! "master component list" for chemical component c of aerosol type t.
78 ! (1=sulfate, others to be defined by user.)
80 ! massptr_aer(c,s,t,p) = the position/index in the chem array for mixing-
81 ! ratio for chemical component c, size bin s, type t, and phase p.
83 ! lptr_so4_aer(s,t,p) = the position/index in the chem array for mixing-
84 ! ratio for sulfate for aerosol size bin s, type t, and phase p
85 ! (similar lptr's are defined for no3, cl, msa, co3,
86 ! nh4, na, ca, oin, oc, bc, ...)
87 ! [Note: the massptr_aer allow you to loop over all species of
88 ! an aerosol type. The lptr_so4_aer, etc., allow you to access
89 ! a specific chemical component.]
91 ! waterptr_aer(s,t) = the position/index in the chem array for mixing-
92 ! ratio of aerosol water content for size bin s, type t.
93 ! [Note: water content is only carried for the interstitial aerosol
94 ! phase, so there is no p dimension.]
96 ! hyswptr_aer(s,t) = the position/index in the chem array for mixing-
97 ! ratio of aerosol "hysteresis water" content for size bin s, type t.
98 ! This is used to determine if aerosol is in the dry or wet state, when
99 ! the ambient RH is between the crystallization and deliquescence RH.
100 ! [Note: hysteresis water content is only carried for the
101 ! interstitial aerosol phase, so there is no p dimension.]
103 ! numptr_aer(s,t,p) = the position/index in the chem array for mixing-
104 ! ratio of particle number for size bin s, type t, and phase p.
106 ! mprognum_aer(s,t,p) - if positive, number mixing-ratio for size s, type t,
107 ! and phase p will be prognosed. Otherwise, it is diagnosed using
108 ! mass mixing-ratio add assumed/prescribed size.
110 ! mixing ratio (moles-water/mole-air) for water
111 ! associated with aerosol size bin s and type t
114 ! mastercompindx_so4_aer = the position/index in the
115 ! "master component list" for sulfate.
116 ! (similar lptr's are defined for no3, cl, msa, co3,
117 ! nh4, na, ca, oin, oc, bc, ...)
118 ! [Note: the mastercompindx_xxx_aer are used primarily in
119 ! initialization routines, and generally aren't needed elsewhere.]
121 !-----------------------------------------------------------------------
123 ! dens_mastercomp_aer(mc) = dry density (g/cm^3) of component mc
124 ! of the master component list.
125 ! dens_aer(c,t) = dry density (g/cm^3) of aerosol chemical component
127 ! [Note: dens_aer(c,t) == dens_mastercomp_aer(mastercompptr_aer(c,t))
128 ! The dens_mastercomp_aer is used in some initialization routines.
129 ! The dens_aer is used in most other places because of convenience.]
131 ! mw_mastercomp_aer(mc) = molecular weight (g/mole) of component mc
132 ! of the master component list.
133 ! mw_aer(c,t) = molecular weight (g/mole) of aerosol chemical component
135 ! [Note: mw_aer(c,t) == mw_mastercomp_aer(mastercompptr_aer(c,t)) ]
137 ! name_mastercomp_aer(mc) = name of component mc of the
138 ! master component list (e.g., "sulfate", "nitrate", ...).
139 ! name_aer(c,t) = molecular weight (g/mole) of aerosol chemical component
141 ! [Note: name_aer(c,t) == name_mastercomp_aer(mastercompptr_aer(c,t)) ]
143 ! hygro_mastercomp_aer(mc) = bulk hygroscopicity (--) at dilute conditions
144 ! (RH near 100%) of component mc of the master component list.
145 ! hygro_aer(c,t) = bulk hygroscopicity (--) at dilute conditions
146 ! (RH near 100%) of aerosol chemical component c of type t
147 ! [For definition of bulk hygroscopicity,
148 ! see Abdul-Razzak and Ghan, 2004, J Geophys Res, V105, p. 6837-6844.]
149 ! [Note: hygro_aer(c,t) == hygro_mastercomp_aer(mastercompptr_aer(c,t)) ]
151 !-----------------------------------------------------------------------
153 ! volumlo_sect(s,t) = 1-particle volume (cm^3) at lower boundary of section m
154 ! volumhi_sect(s,t) = 1-particle volume (cm^3) at upper boundary of section m
155 ! volumcen_sect(s,t)= 1-particle volume (cm^3) at "center" of section m
157 ! dlo_sect(s,t) = 1-particle diameter (cm) at lower boundary of section m
158 ! dhi_sect(s,t) = 1-particle diameter (cm) at upper boundary of section m
159 ! dcen_sect(s,t) = 1-particle diameter (cm) at "center" section m
161 ! [Note: the "center" values are defined as follows:
162 ! volumcen_sect == 0.5*(volumlo_sect + volumhi_sect)
163 ! == (pi/6) * (dcen_sect**3) ]
165 !-----------------------------------------------------------------------
167 ! msectional - if positive, each aerosol size bin is a section.
168 ! if equals 10, use jacobson moving center
169 ! if equals 20, use tzivion mass-number advection
170 ! if zero/negative, each size bin is a mode (aitken, accumulation, ...)
172 ! maerosolincw - if positive, both unactivated/interstitial and activated
173 ! aerosol species are simulated. if zero/negative, only the
174 ! unactivated are simulated. [maerosolincw>0 only when cw_phase>0]
176 ! maerocoag - if positive, aerosol coagulation is done.
177 ! If zero/negative, it is skipped.
178 ! (This is not yet implemented in WRF-Chem.)
180 ! maerchem - if positive, aerosol gas-particle condensation/evaporation
181 ! of inorganic species is done. If zero/negative, it is skipped.
182 ! (This is not yet implemented in WRF-Chem.)
184 ! maerchem_boxtest_output - if positive, "boxtest" output is done from
185 ! the aerchemistry routine. If zero/negative, it is skipped.
186 ! (This is not yet implemented in WRF-Chem.)
188 ! maeroptical - if positive, aerosol optical properties are calculated.
189 ! If zero/negative, it is skipped.
190 ! (This is not yet implemented in WRF-Chem.)
192 !-----------------------------------------------------------------------
194 integer, parameter :: maxd_atype = 1
195 integer, parameter :: maxd_asize = 8
196 ! integer, parameter :: maxd_acomp = 120 ! for additional SOA species changed by Manish Shrivastava on 01/25/10
197 integer, parameter :: maxd_acomp = 400 ! for additional SOA species changed by Manish Shrivastava on 01/25/10
198 integer, parameter :: maxd_aphase = 2
200 integer, save :: ai_phase = -999888777
201 integer, save :: cw_phase = -999888777
202 integer, save :: ci_phase = -999888777
203 integer, save :: rn_phase = -999888777
204 integer, save :: sn_phase = -999888777
205 integer, save :: gr_phase = -999888777
207 integer, save :: ntype_aer = 0 ! number of types
208 integer, save :: ntot_mastercomp_aer = 0 ! number of master components
209 integer, save :: nphase_aer = 0 ! number of phases
212 nsize_aer( maxd_atype ), & ! number of size bins
213 ncomp_aer( maxd_atype ), & ! number of chemical components
214 ncomp_plustracer_aer( maxd_atype ), &
215 mastercompptr_aer(maxd_acomp, maxd_atype), & ! mastercomp index
216 massptr_aer( maxd_acomp, maxd_asize, maxd_atype, maxd_aphase ), &
217 ! index for mixing ratio
218 waterptr_aer( maxd_asize, maxd_atype ), & ! index for aerosol water
219 hyswptr_aer( maxd_asize, maxd_atype ), &
220 numptr_aer( maxd_asize, maxd_atype, maxd_aphase ), &
221 ! index for the number mixing ratio
222 mprognum_aer(maxd_asize,maxd_atype,maxd_aphase)
226 dens_aer( maxd_acomp, maxd_atype ), &
227 dens_mastercomp_aer( maxd_acomp ), &
228 mw_mastercomp_aer( maxd_acomp ), &
229 mw_aer( maxd_acomp, maxd_atype ), &
230 hygro_mastercomp_aer( maxd_acomp ), &
231 hygro_aer( maxd_acomp, maxd_atype )
234 volumcen_sect( maxd_asize, maxd_atype ), &
235 volumlo_sect( maxd_asize, maxd_atype ), &
236 volumhi_sect( maxd_asize, maxd_atype ), &
237 dcen_sect( maxd_asize, maxd_atype ), &
238 dlo_sect( maxd_asize, maxd_atype ), &
239 dhi_sect( maxd_asize, maxd_atype ), &
240 sigmag_aer(maxd_asize, maxd_atype)
242 character*20, save :: &
243 name_mastercomp_aer( maxd_acomp ), &
244 name_aer( maxd_acomp, maxd_atype )
249 ! rce 11-sep-2004 - eliminated all of the "..._wrfch" pointers
250 ! so now there is only one set of pointers ("..._amode")
251 ! sg/rce nov-2004 - totally new pointer system - "..._aer"
256 msectional, maerosolincw, &
257 maerocoag, maerchem, maeroptical, maerchem_boxtest_output
260 !-----------------------------------------------------------------------
261 ! the following arrays are used during "column calculations" within
264 ! aqvoldry_sub(n,k,m) = dry-volume (cm^3-aerosol/mole-air) for mode n,
266 ! aqmassdry_sub(n,k,m) = dry-mass (g-aerosol/mole-air) for mode n, ...
267 ! adrydens_sub(n,k,m) = dry-density (g-aerosol/cm^3-aerosol) for mode n, ...
268 ! == amassdry_sub/avoldry_sub
269 ! awetdens_sub(n,k,m) = wet-density (g-aerosol/cm^3-aerosol) for mode n, ...
271 ! admeandry_sub(n,k,m) = current mean dry-diameter (cm)
272 ! for unactivated aerosol in mode n, layer k, subarea m.
273 ! (Used in sectional code)
274 ! admeanwet_sub(n,k,m) = current mean wet-diameter (cm)
275 ! for unactivated aerosol in mode n, layer k, subarea m.
276 ! (Used in sectional code)
278 ! awetdens_sfc(n,i,j) = wet-density for mode n and k=1. This value is
279 ! saved after the second pass thru subr. aerosol_wetsize
280 ! for use in subr. bounds
281 ! admeanwet_sfc(n,i,j) = mean wet-diameter for mode n and k=1.
282 ! This value is saved after the second pass thru
283 ! subr. aerosol_wetsize for use in subr. bounds
286 ! following are used in aerosol growth routine and are locally
287 ! defined for the current layer (k) and subarea (m)
288 ! drymass_pregrow(n) = dry-mass (g/mole-air) for section n
289 ! before the aerosol growth
290 ! drymass_aftgrow(n) = dry-mass (g/mole-air) for section n
291 ! after the growth but before inter-section transfer
292 ! drydens_pregrow(n) = dry-density (g/cm3) for section n
293 ! before the aerosol growth
294 ! drydens_aftgrow(n) = dry-density (g/cm3) for section n
295 ! after the growth but before inter-section transfer
297 !-----------------------------------------------------------------------
299 ! integer, parameter :: imaxd_asize = 78
300 ! integer, parameter :: jmaxd_asize = 28
301 integer, parameter :: kmaxd_asize = 100
302 integer, parameter :: nsubareamaxd_asize = 5
304 ! rce 22-jul-2006 - added maxd_atype dimension to following 6 arrays
305 ! and changed avoldry_sub,amassdry_sub to aqvoldry_sub,aqmassdry_sub
306 real, save :: aqvoldry_sub( maxd_asize,maxd_atype,kmaxd_asize,nsubareamaxd_asize)
307 real, save :: aqmassdry_sub(maxd_asize,maxd_atype,kmaxd_asize,nsubareamaxd_asize)
308 real, save :: adrydens_sub( maxd_asize,maxd_atype,kmaxd_asize,nsubareamaxd_asize)
309 real, save :: awetdens_sub( maxd_asize,maxd_atype,kmaxd_asize,nsubareamaxd_asize)
310 real, save :: admeandry_sub(maxd_asize,maxd_atype,kmaxd_asize,nsubareamaxd_asize)
311 real, save :: admeanwet_sub(maxd_asize,maxd_atype,kmaxd_asize,nsubareamaxd_asize)
313 ! real, save :: awetdens_sfc(maxd_asize,imaxd_asize,jmaxd_asize)
314 ! real, save :: admeanwet_sfc(maxd_asize,imaxd_asize,jmaxd_asize)
316 real, save :: drymass_pregrow(maxd_asize,maxd_atype)
317 real, save :: drydens_pregrow(maxd_asize,maxd_atype)
318 real, save :: drymass_aftgrow(maxd_asize,maxd_atype)
319 real, save :: drydens_aftgrow(maxd_asize,maxd_atype)
321 ! table lookup of aerosol impaction/interception
323 real dlndg_nimptblgrow
324 integer nimptblgrow_mind, nimptblgrow_maxd
325 parameter (nimptblgrow_mind=-7, nimptblgrow_maxd=12)
326 real scavimptblnum(4, nimptblgrow_mind:nimptblgrow_maxd, maxd_asize, maxd_atype), &
327 scavimptblvol(4, nimptblgrow_mind:nimptblgrow_maxd, maxd_asize, maxd_atype)
331 ! water density (g/cm3)
332 ! real, parameter :: dens_water_asize = 1.0
333 real, parameter :: dens_water_aer = 1.0
335 ! dry densities (g/cm3)
336 real, parameter :: dens_so4_aer = 1.80
337 real, parameter :: dens_no3_aer = 1.80
338 real, parameter :: dens_cl_aer = 2.20
339 real, parameter :: dens_msa_aer = 1.80
340 real, parameter :: dens_co3_aer = 2.60
341 real, parameter :: dens_nh4_aer = 1.80
342 real, parameter :: dens_na_aer = 2.20
343 real, parameter :: dens_ca_aer = 2.60
344 real, parameter :: dens_oin_aer = 2.60
345 real, parameter :: dens_oc_aer = 1.00
346 real, parameter :: dens_bc_aer = 1.70
347 real, parameter :: dens_pcg1_b_c_aer = 1.0
348 real, parameter :: dens_pcg2_b_c_aer = 1.0
349 real, parameter :: dens_pcg3_b_c_aer = 1.0
350 real, parameter :: dens_pcg4_b_c_aer = 1.0
351 real, parameter :: dens_pcg5_b_c_aer = 1.0
352 real, parameter :: dens_pcg6_b_c_aer = 1.0
353 real, parameter :: dens_pcg7_b_c_aer = 1.0
354 real, parameter :: dens_pcg8_b_c_aer = 1.0
355 real, parameter :: dens_pcg9_b_c_aer = 1.0
356 real, parameter :: dens_pcg1_b_o_aer = 1.0
357 real, parameter :: dens_pcg2_b_o_aer = 1.0
358 real, parameter :: dens_pcg3_b_o_aer = 1.0
359 real, parameter :: dens_pcg4_b_o_aer = 1.0
360 real, parameter :: dens_pcg5_b_o_aer = 1.0
361 real, parameter :: dens_pcg6_b_o_aer = 1.0
362 real, parameter :: dens_pcg7_b_o_aer = 1.0
363 real, parameter :: dens_pcg8_b_o_aer = 1.0
364 real, parameter :: dens_pcg9_b_o_aer = 1.0
365 real, parameter :: dens_opcg1_b_c_aer = 1.0
366 real, parameter :: dens_opcg2_b_c_aer = 1.0
367 real, parameter :: dens_opcg3_b_c_aer = 1.0
368 real, parameter :: dens_opcg4_b_c_aer = 1.0
369 real, parameter :: dens_opcg5_b_c_aer = 1.0
370 real, parameter :: dens_opcg6_b_c_aer = 1.0
371 real, parameter :: dens_opcg7_b_c_aer = 1.0
372 real, parameter :: dens_opcg8_b_c_aer = 1.0
373 real, parameter :: dens_opcg1_b_o_aer = 1.0
374 real, parameter :: dens_opcg2_b_o_aer = 1.0
375 real, parameter :: dens_opcg3_b_o_aer = 1.0
376 real, parameter :: dens_opcg4_b_o_aer = 1.0
377 real, parameter :: dens_opcg5_b_o_aer = 1.0
378 real, parameter :: dens_opcg6_b_o_aer = 1.0
379 real, parameter :: dens_opcg7_b_o_aer = 1.0
380 real, parameter :: dens_opcg8_b_o_aer = 1.0
381 real, parameter :: dens_pcg1_f_c_aer = 1.0
382 real, parameter :: dens_pcg2_f_c_aer = 1.0
383 real, parameter :: dens_pcg3_f_c_aer = 1.0
384 real, parameter :: dens_pcg4_f_c_aer = 1.0
385 real, parameter :: dens_pcg5_f_c_aer = 1.0
386 real, parameter :: dens_pcg6_f_c_aer = 1.0
387 real, parameter :: dens_pcg7_f_c_aer = 1.0
388 real, parameter :: dens_pcg8_f_c_aer = 1.0
389 real, parameter :: dens_pcg9_f_c_aer = 1.0
390 real, parameter :: dens_pcg1_f_o_aer = 1.0
391 real, parameter :: dens_pcg2_f_o_aer = 1.0
392 real, parameter :: dens_pcg3_f_o_aer = 1.0
393 real, parameter :: dens_pcg4_f_o_aer = 1.0
394 real, parameter :: dens_pcg5_f_o_aer = 1.0
395 real, parameter :: dens_pcg6_f_o_aer = 1.0
396 real, parameter :: dens_pcg7_f_o_aer = 1.0
397 real, parameter :: dens_pcg8_f_o_aer = 1.0
398 real, parameter :: dens_pcg9_f_o_aer = 1.0
399 real, parameter :: dens_opcg1_f_c_aer = 1.0
400 real, parameter :: dens_opcg2_f_c_aer = 1.0
401 real, parameter :: dens_opcg3_f_c_aer = 1.0
402 real, parameter :: dens_opcg4_f_c_aer = 1.0
403 real, parameter :: dens_opcg5_f_c_aer = 1.0
404 real, parameter :: dens_opcg6_f_c_aer = 1.0
405 real, parameter :: dens_opcg7_f_c_aer = 1.0
406 real, parameter :: dens_opcg8_f_c_aer = 1.0
407 real, parameter :: dens_opcg1_f_o_aer = 1.0
408 real, parameter :: dens_opcg2_f_o_aer = 1.0
409 real, parameter :: dens_opcg3_f_o_aer = 1.0
410 real, parameter :: dens_opcg4_f_o_aer = 1.0
411 real, parameter :: dens_opcg5_f_o_aer = 1.0
412 real, parameter :: dens_opcg6_f_o_aer = 1.0
413 real, parameter :: dens_opcg7_f_o_aer = 1.0
414 real, parameter :: dens_opcg8_f_o_aer = 1.0
415 real, parameter :: dens_smpa_aer = 1.0
416 real, parameter :: dens_smpbb_aer = 1.0
418 real, parameter :: dens_glysoa_r1_aer = 1.0
419 real, parameter :: dens_glysoa_r2_aer = 1.0
420 real, parameter :: dens_glysoa_oh_aer = 1.0
421 real, parameter :: dens_glysoa_nh4_aer = 1.0
422 real, parameter :: dens_glysoa_sfc_aer = 1.0
424 real, parameter :: dens_ant1_c_aer = 1.0
425 real, parameter :: dens_ant2_c_aer = 1.0
426 real, parameter :: dens_ant3_c_aer = 1.0
427 real, parameter :: dens_ant4_c_aer = 1.0
428 real, parameter :: dens_ant1_o_aer = 1.0
429 real, parameter :: dens_ant2_o_aer = 1.0
430 real, parameter :: dens_ant3_o_aer = 1.0
431 real, parameter :: dens_ant4_o_aer = 1.0
432 real, parameter :: dens_biog1_c_aer = 1.0
433 real, parameter :: dens_biog2_c_aer = 1.0
434 real, parameter :: dens_biog3_c_aer = 1.0
435 real, parameter :: dens_biog4_c_aer = 1.0
436 real, parameter :: dens_biog1_o_aer = 1.0
437 real, parameter :: dens_biog2_o_aer = 1.0
438 real, parameter :: dens_biog3_o_aer = 1.0
439 real, parameter :: dens_biog4_o_aer = 1.0
441 ! dens based on Murphy and Pandis, ES&T, 2009
442 real, parameter :: dens_asoaX_aer = 1.5
443 real, parameter :: dens_asoa1_aer = 1.5
444 real, parameter :: dens_asoa2_aer = 1.5
445 real, parameter :: dens_asoa3_aer = 1.5
446 real, parameter :: dens_asoa4_aer = 1.5
447 real, parameter :: dens_bsoaX_aer = 1.5
448 real, parameter :: dens_bsoa1_aer = 1.5
449 real, parameter :: dens_bsoa2_aer = 1.5
450 real, parameter :: dens_bsoa3_aer = 1.5
451 real, parameter :: dens_bsoa4_aer = 1.5
455 ! molecular weights (g/mol)
456 real, parameter :: mw_so4_aer = 96.066
457 real, parameter :: mw_no3_aer = 62.007
458 real, parameter :: mw_cl_aer = 35.450
459 real, parameter :: mw_msa_aer = 96.109
460 real, parameter :: mw_co3_aer = 60.007
461 real, parameter :: mw_nh4_aer = 18.042
462 real, parameter :: mw_na_aer = 22.990
463 real, parameter :: mw_ca_aer = 40.080
464 real, parameter :: mw_oin_aer = 1.0
465 real, parameter :: mw_oc_aer = 250.0
466 real, parameter :: mw_bc_aer = 1.0
467 real, parameter :: mw_water_aer = 18.016
468 real, parameter :: mw_pcg1_b_c_aer = 250.0
469 real, parameter :: mw_pcg2_b_c_aer = 250.0
470 real, parameter :: mw_pcg3_b_c_aer = 250.0
471 real, parameter :: mw_pcg4_b_c_aer = 250.0
472 real, parameter :: mw_pcg5_b_c_aer = 250.0
473 real, parameter :: mw_pcg6_b_c_aer = 250.0
474 real, parameter :: mw_pcg7_b_c_aer = 250.0
475 real, parameter :: mw_pcg8_b_c_aer = 250.0
476 real, parameter :: mw_pcg9_b_c_aer = 250.0
477 real, parameter :: mw_pcg1_b_o_aer = 250.0
478 real, parameter :: mw_pcg2_b_o_aer = 250.0
479 real, parameter :: mw_pcg3_b_o_aer = 250.0
480 real, parameter :: mw_pcg4_b_o_aer = 250.0
481 real, parameter :: mw_pcg5_b_o_aer = 250.0
482 real, parameter :: mw_pcg6_b_o_aer = 250.0
483 real, parameter :: mw_pcg7_b_o_aer = 250.0
484 real, parameter :: mw_pcg8_b_o_aer = 250.0
485 real, parameter :: mw_pcg9_b_o_aer = 250.0
486 real, parameter :: mw_opcg1_b_c_aer = 250.0
487 real, parameter :: mw_opcg2_b_c_aer = 250.0
488 real, parameter :: mw_opcg3_b_c_aer = 250.0
489 real, parameter :: mw_opcg4_b_c_aer = 250.0
490 real, parameter :: mw_opcg5_b_c_aer = 250.0
491 real, parameter :: mw_opcg6_b_c_aer = 250.0
492 real, parameter :: mw_opcg7_b_c_aer = 250.0
493 real, parameter :: mw_opcg8_b_c_aer = 250.0
494 real, parameter :: mw_opcg1_b_o_aer = 250.0
495 real, parameter :: mw_opcg2_b_o_aer = 250.0
496 real, parameter :: mw_opcg3_b_o_aer = 250.0
497 real, parameter :: mw_opcg4_b_o_aer = 250.0
498 real, parameter :: mw_opcg5_b_o_aer = 250.0
499 real, parameter :: mw_opcg6_b_o_aer = 250.0
500 real, parameter :: mw_opcg7_b_o_aer = 250.0
501 real, parameter :: mw_opcg8_b_o_aer = 250.0
502 real, parameter :: mw_pcg1_f_c_aer = 250.0
503 real, parameter :: mw_pcg2_f_c_aer = 250.0
504 real, parameter :: mw_pcg3_f_c_aer = 250.0
505 real, parameter :: mw_pcg4_f_c_aer = 250.0
506 real, parameter :: mw_pcg5_f_c_aer = 250.0
507 real, parameter :: mw_pcg6_f_c_aer = 250.0
508 real, parameter :: mw_pcg7_f_c_aer = 250.0
509 real, parameter :: mw_pcg8_f_c_aer = 250.0
510 real, parameter :: mw_pcg9_f_c_aer = 250.0
511 real, parameter :: mw_pcg1_f_o_aer = 250.0
512 real, parameter :: mw_pcg2_f_o_aer = 250.0
513 real, parameter :: mw_pcg3_f_o_aer = 250.0
514 real, parameter :: mw_pcg4_f_o_aer = 250.0
515 real, parameter :: mw_pcg5_f_o_aer = 250.0
516 real, parameter :: mw_pcg6_f_o_aer = 250.0
517 real, parameter :: mw_pcg7_f_o_aer = 250.0
518 real, parameter :: mw_pcg8_f_o_aer = 250.0
519 real, parameter :: mw_pcg9_f_o_aer = 250.0
520 real, parameter :: mw_opcg1_f_c_aer = 250.0
521 real, parameter :: mw_opcg2_f_c_aer = 250.0
522 real, parameter :: mw_opcg3_f_c_aer = 250.0
523 real, parameter :: mw_opcg4_f_c_aer = 250.0
524 real, parameter :: mw_opcg5_f_c_aer = 250.0
525 real, parameter :: mw_opcg6_f_c_aer = 250.0
526 real, parameter :: mw_opcg7_f_c_aer = 250.0
527 real, parameter :: mw_opcg8_f_c_aer = 250.0
528 real, parameter :: mw_opcg1_f_o_aer = 250.0
529 real, parameter :: mw_opcg2_f_o_aer = 250.0
530 real, parameter :: mw_opcg3_f_o_aer = 250.0
531 real, parameter :: mw_opcg4_f_o_aer = 250.0
532 real, parameter :: mw_opcg5_f_o_aer = 250.0
533 real, parameter :: mw_opcg6_f_o_aer = 250.0
534 real, parameter :: mw_opcg7_f_o_aer = 250.0
535 real, parameter :: mw_opcg8_f_o_aer = 250.0
536 real, parameter :: mw_smpa_aer = 250.0
537 real, parameter :: mw_smpbb_aer = 250.0
539 real, parameter :: mw_glysoa_r1_aer = 250.0
540 real, parameter :: mw_glysoa_r2_aer = 250.0
541 real, parameter :: mw_glysoa_oh_aer = 250.0
542 real, parameter :: mw_glysoa_nh4_aer = 250.0
543 real, parameter :: mw_glysoa_sfc_aer = 250.0
545 real, parameter :: mw_ant1_c_aer = 250.0
546 real, parameter :: mw_ant2_c_aer = 250.0
547 real, parameter :: mw_ant3_c_aer = 250.0
548 real, parameter :: mw_ant4_c_aer = 250.0
549 real, parameter :: mw_ant1_o_aer = 250.0
550 real, parameter :: mw_ant2_o_aer = 250.0
551 real, parameter :: mw_ant3_o_aer = 250.0
552 real, parameter :: mw_ant4_o_aer = 250.0
553 real, parameter :: mw_biog1_c_aer = 250.0
554 real, parameter :: mw_biog2_c_aer = 250.0
555 real, parameter :: mw_biog3_c_aer = 250.0
556 real, parameter :: mw_biog4_c_aer = 250.0
557 real, parameter :: mw_biog1_o_aer = 250.0
558 real, parameter :: mw_biog2_o_aer = 250.0
559 real, parameter :: mw_biog3_o_aer = 250.0
560 real, parameter :: mw_biog4_o_aer = 250.0
562 real, parameter :: mw_asoaX_aer = 250.0
563 real, parameter :: mw_asoa1_aer = 250.0
564 real, parameter :: mw_asoa2_aer = 250.0
565 real, parameter :: mw_asoa3_aer = 250.0
566 real, parameter :: mw_asoa4_aer = 250.0
567 real, parameter :: mw_bsoaX_aer = 250.0
568 real, parameter :: mw_bsoa1_aer = 250.0
569 real, parameter :: mw_bsoa2_aer = 250.0
570 real, parameter :: mw_bsoa3_aer = 250.0
571 real, parameter :: mw_bsoa4_aer = 250.0
575 ! hygroscopicities (dimensionless)
576 real, parameter :: hygro_so4_aer = 0.5
577 real, parameter :: hygro_no3_aer = 0.5
578 real, parameter :: hygro_ca_aer = 0.1
579 real, parameter :: hygro_co3_aer = 0.1
580 real, parameter :: hygro_nh4_aer = 0.5
581 real, parameter :: hygro_msa_aer = 0.58
582 real, parameter :: hygro_cl_aer = 1.16
583 real, parameter :: hygro_na_aer = 1.16
584 real, parameter :: hygro_oin_aer = 0.068 ! = cam5/mam value, previously 0.14
585 real, parameter :: hygro_oc_aer = 1.0e-4 ! previously 0.20
586 real, parameter :: hygro_bc_aer = 1.e-6
587 real, parameter :: hygro_pcg1_b_c_aer = 0.04
588 real, parameter :: hygro_pcg2_b_c_aer = 0.04
589 real, parameter :: hygro_pcg3_b_c_aer = 0.04
590 real, parameter :: hygro_pcg4_b_c_aer = 0.04
591 real, parameter :: hygro_pcg5_b_c_aer = 0.04
592 real, parameter :: hygro_pcg6_b_c_aer = 0.04
593 real, parameter :: hygro_pcg7_b_c_aer = 0.04
594 real, parameter :: hygro_pcg8_b_c_aer = 0.04
595 real, parameter :: hygro_pcg9_b_c_aer = 0.04
596 real, parameter :: hygro_pcg1_b_o_aer = 0.04
597 real, parameter :: hygro_pcg2_b_o_aer = 0.04
598 real, parameter :: hygro_pcg3_b_o_aer = 0.04
599 real, parameter :: hygro_pcg4_b_o_aer = 0.04
600 real, parameter :: hygro_pcg5_b_o_aer = 0.04
601 real, parameter :: hygro_pcg6_b_o_aer = 0.04
602 real, parameter :: hygro_pcg7_b_o_aer = 0.04
603 real, parameter :: hygro_pcg8_b_o_aer = 0.04
604 real, parameter :: hygro_pcg9_b_o_aer = 0.04
605 real, parameter :: hygro_opcg1_b_c_aer = 0.10
606 real, parameter :: hygro_opcg2_b_c_aer = 0.10
607 real, parameter :: hygro_opcg3_b_c_aer = 0.10
608 real, parameter :: hygro_opcg4_b_c_aer = 0.10
609 real, parameter :: hygro_opcg5_b_c_aer = 0.10
610 real, parameter :: hygro_opcg6_b_c_aer = 0.10
611 real, parameter :: hygro_opcg7_b_c_aer = 0.10
612 real, parameter :: hygro_opcg8_b_c_aer = 0.10
613 real, parameter :: hygro_opcg1_b_o_aer = 0.10
614 real, parameter :: hygro_opcg2_b_o_aer = 0.10
615 real, parameter :: hygro_opcg3_b_o_aer = 0.10
616 real, parameter :: hygro_opcg4_b_o_aer = 0.10
617 real, parameter :: hygro_opcg5_b_o_aer = 0.10
618 real, parameter :: hygro_opcg6_b_o_aer = 0.10
619 real, parameter :: hygro_opcg7_b_o_aer = 0.10
620 real, parameter :: hygro_opcg8_b_o_aer = 0.10
621 real, parameter :: hygro_pcg1_f_c_aer = 1.0e-6
622 real, parameter :: hygro_pcg2_f_c_aer = 1.0e-6
623 real, parameter :: hygro_pcg3_f_c_aer = 1.0e-6
624 real, parameter :: hygro_pcg4_f_c_aer = 1.0e-6
625 real, parameter :: hygro_pcg5_f_c_aer = 1.0e-6
626 real, parameter :: hygro_pcg6_f_c_aer = 1.0e-6
627 real, parameter :: hygro_pcg7_f_c_aer = 1.0e-6
628 real, parameter :: hygro_pcg8_f_c_aer = 1.0e-6
629 real, parameter :: hygro_pcg9_f_c_aer = 1.0e-6
630 real, parameter :: hygro_pcg1_f_o_aer = 1.0e-6
631 real, parameter :: hygro_pcg2_f_o_aer = 1.0e-6
632 real, parameter :: hygro_pcg3_f_o_aer = 1.0e-6
633 real, parameter :: hygro_pcg4_f_o_aer = 1.0e-6
634 real, parameter :: hygro_pcg5_f_o_aer = 1.0e-6
635 real, parameter :: hygro_pcg6_f_o_aer = 1.0e-6
636 real, parameter :: hygro_pcg7_f_o_aer = 1.0e-6
637 real, parameter :: hygro_pcg8_f_o_aer = 1.0e-6
638 real, parameter :: hygro_pcg9_f_o_aer = 1.0e-6
639 real, parameter :: hygro_opcg1_f_c_aer = 0.10
640 real, parameter :: hygro_opcg2_f_c_aer = 0.10
641 real, parameter :: hygro_opcg3_f_c_aer = 0.10
642 real, parameter :: hygro_opcg4_f_c_aer = 0.10
643 real, parameter :: hygro_opcg5_f_c_aer = 0.10
644 real, parameter :: hygro_opcg6_f_c_aer = 0.10
645 real, parameter :: hygro_opcg7_f_c_aer = 0.10
646 real, parameter :: hygro_opcg8_f_c_aer = 0.10
647 real, parameter :: hygro_opcg1_f_o_aer = 0.10
648 real, parameter :: hygro_opcg2_f_o_aer = 0.10
649 real, parameter :: hygro_opcg3_f_o_aer = 0.10
650 real, parameter :: hygro_opcg4_f_o_aer = 0.10
651 real, parameter :: hygro_opcg5_f_o_aer = 0.10
652 real, parameter :: hygro_opcg6_f_o_aer = 0.10
653 real, parameter :: hygro_opcg7_f_o_aer = 0.10
654 real, parameter :: hygro_opcg8_f_o_aer = 0.10
655 real, parameter :: hygro_smpa_aer = 0.10
656 real, parameter :: hygro_smpbb_aer = 0.140
658 real, parameter :: hygro_glysoa_r1_aer = 0.14
659 real, parameter :: hygro_glysoa_r2_aer = 0.14
660 real, parameter :: hygro_glysoa_oh_aer = 0.14
661 real, parameter :: hygro_glysoa_nh4_aer = 0.14
662 real, parameter :: hygro_glysoa_sfc_aer = 0.14
664 real, parameter :: hygro_ant1_c_aer = 0.10
665 real, parameter :: hygro_ant2_c_aer = 0.10
666 real, parameter :: hygro_ant3_c_aer = 0.10
667 real, parameter :: hygro_ant4_c_aer = 0.10
668 real, parameter :: hygro_ant1_o_aer = 0.10
669 real, parameter :: hygro_ant2_o_aer = 0.10
670 real, parameter :: hygro_ant3_o_aer = 0.10
671 real, parameter :: hygro_ant4_o_aer = 0.10
672 real, parameter :: hygro_biog1_c_aer = 0.10
673 real, parameter :: hygro_biog2_c_aer = 0.10
674 real, parameter :: hygro_biog3_c_aer = 0.10
675 real, parameter :: hygro_biog4_c_aer = 0.10
676 real, parameter :: hygro_biog1_o_aer = 0.10
677 real, parameter :: hygro_biog2_o_aer = 0.10
678 real, parameter :: hygro_biog3_o_aer = 0.10
679 real, parameter :: hygro_biog4_o_aer = 0.10
681 real, parameter :: hygro_asoaX_aer = 0.14
682 real, parameter :: hygro_asoa1_aer = 0.14
683 real, parameter :: hygro_asoa2_aer = 0.14
684 real, parameter :: hygro_asoa3_aer = 0.14
685 real, parameter :: hygro_asoa4_aer = 0.14
686 real, parameter :: hygro_bsoaX_aer = 0.14
687 real, parameter :: hygro_bsoa1_aer = 0.14
688 real, parameter :: hygro_bsoa2_aer = 0.14
689 real, parameter :: hygro_bsoa3_aer = 0.14
690 real, parameter :: hygro_bsoa4_aer = 0.14
694 ! these indices give the location in the "mastercomp list" of
695 ! the different aerosol chemical (or tracer) components
696 integer, save :: mastercompindx_so4_aer = -999888777
697 integer, save :: mastercompindx_no3_aer = -999888777
698 integer, save :: mastercompindx_cl_aer = -999888777
699 integer, save :: mastercompindx_msa_aer = -999888777
700 integer, save :: mastercompindx_co3_aer = -999888777
701 integer, save :: mastercompindx_nh4_aer = -999888777
702 integer, save :: mastercompindx_na_aer = -999888777
703 integer, save :: mastercompindx_ca_aer = -999888777
704 integer, save :: mastercompindx_oin_aer = -999888777
705 integer, save :: mastercompindx_oc_aer = -999888777
706 integer, save :: mastercompindx_bc_aer = -999888777
707 integer, save :: mastercompindx_pcg1_b_c_aer = -999888777
708 integer, save :: mastercompindx_pcg2_b_c_aer = -999888777
709 integer, save :: mastercompindx_pcg3_b_c_aer = -999888777
710 integer, save :: mastercompindx_pcg4_b_c_aer = -999888777
711 integer, save :: mastercompindx_pcg5_b_c_aer = -999888777
712 integer, save :: mastercompindx_pcg6_b_c_aer = -999888777
713 integer, save :: mastercompindx_pcg7_b_c_aer = -999888777
714 integer, save :: mastercompindx_pcg8_b_c_aer = -999888777
715 integer, save :: mastercompindx_pcg9_b_c_aer = -999888777
716 integer, save :: mastercompindx_pcg1_b_o_aer = -999888777
717 integer, save :: mastercompindx_pcg2_b_o_aer = -999888777
718 integer, save :: mastercompindx_pcg3_b_o_aer = -999888777
719 integer, save :: mastercompindx_pcg4_b_o_aer = -999888777
720 integer, save :: mastercompindx_pcg5_b_o_aer = -999888777
721 integer, save :: mastercompindx_pcg6_b_o_aer = -999888777
722 integer, save :: mastercompindx_pcg7_b_o_aer = -999888777
723 integer, save :: mastercompindx_pcg8_b_o_aer = -999888777
724 integer, save :: mastercompindx_pcg9_b_o_aer = -999888777
725 integer, save :: mastercompindx_opcg1_b_c_aer = -999888777
726 integer, save :: mastercompindx_opcg2_b_c_aer = -999888777
727 integer, save :: mastercompindx_opcg3_b_c_aer = -999888777
728 integer, save :: mastercompindx_opcg4_b_c_aer = -999888777
729 integer, save :: mastercompindx_opcg5_b_c_aer = -999888777
730 integer, save :: mastercompindx_opcg6_b_c_aer = -999888777
731 integer, save :: mastercompindx_opcg7_b_c_aer = -999888777
732 integer, save :: mastercompindx_opcg8_b_c_aer = -999888777
733 integer, save :: mastercompindx_opcg1_b_o_aer = -999888777
734 integer, save :: mastercompindx_opcg2_b_o_aer = -999888777
735 integer, save :: mastercompindx_opcg3_b_o_aer = -999888777
736 integer, save :: mastercompindx_opcg4_b_o_aer = -999888777
737 integer, save :: mastercompindx_opcg5_b_o_aer = -999888777
738 integer, save :: mastercompindx_opcg6_b_o_aer = -999888777
739 integer, save :: mastercompindx_opcg7_b_o_aer = -999888777
740 integer, save :: mastercompindx_opcg8_b_o_aer = -999888777
741 integer, save :: mastercompindx_pcg1_f_c_aer = -999888777
742 integer, save :: mastercompindx_pcg2_f_c_aer = -999888777
743 integer, save :: mastercompindx_pcg3_f_c_aer = -999888777
744 integer, save :: mastercompindx_pcg4_f_c_aer = -999888777
745 integer, save :: mastercompindx_pcg5_f_c_aer = -999888777
746 integer, save :: mastercompindx_pcg6_f_c_aer = -999888777
747 integer, save :: mastercompindx_pcg7_f_c_aer = -999888777
748 integer, save :: mastercompindx_pcg8_f_c_aer = -999888777
749 integer, save :: mastercompindx_pcg9_f_c_aer = -999888777
750 integer, save :: mastercompindx_pcg1_f_o_aer = -999888777
751 integer, save :: mastercompindx_pcg2_f_o_aer = -999888777
752 integer, save :: mastercompindx_pcg3_f_o_aer = -999888777
753 integer, save :: mastercompindx_pcg4_f_o_aer = -999888777
754 integer, save :: mastercompindx_pcg5_f_o_aer = -999888777
755 integer, save :: mastercompindx_pcg6_f_o_aer = -999888777
756 integer, save :: mastercompindx_pcg7_f_o_aer = -999888777
757 integer, save :: mastercompindx_pcg8_f_o_aer = -999888777
758 integer, save :: mastercompindx_pcg9_f_o_aer = -999888777
759 integer, save :: mastercompindx_opcg1_f_c_aer = -999888777
760 integer, save :: mastercompindx_opcg2_f_c_aer = -999888777
761 integer, save :: mastercompindx_opcg3_f_c_aer = -999888777
762 integer, save :: mastercompindx_opcg4_f_c_aer = -999888777
763 integer, save :: mastercompindx_opcg5_f_c_aer = -999888777
764 integer, save :: mastercompindx_opcg6_f_c_aer = -999888777
765 integer, save :: mastercompindx_opcg7_f_c_aer = -999888777
766 integer, save :: mastercompindx_opcg8_f_c_aer = -999888777
767 integer, save :: mastercompindx_opcg1_f_o_aer = -999888777
768 integer, save :: mastercompindx_opcg2_f_o_aer = -999888777
769 integer, save :: mastercompindx_opcg3_f_o_aer = -999888777
770 integer, save :: mastercompindx_opcg4_f_o_aer = -999888777
771 integer, save :: mastercompindx_opcg5_f_o_aer = -999888777
772 integer, save :: mastercompindx_opcg6_f_o_aer = -999888777
773 integer, save :: mastercompindx_opcg7_f_o_aer = -999888777
774 integer, save :: mastercompindx_opcg8_f_o_aer = -999888777
775 integer, save :: mastercompindx_smpa_aer = -999888777
776 integer, save :: mastercompindx_smpbb_aer = -999888777
778 integer, save :: mastercompindx_glysoa_r1_aer = -999888777
779 integer, save :: mastercompindx_glysoa_r2_aer = -999888777
780 integer, save :: mastercompindx_glysoa_oh_aer = -999888777
781 integer, save :: mastercompindx_glysoa_nh4_aer = -999888777
782 integer, save :: mastercompindx_glysoa_sfc_aer = -999888777
784 integer, save :: mastercompindx_ant1_c_aer = -999888777
785 integer, save :: mastercompindx_ant2_c_aer = -999888777
786 integer, save :: mastercompindx_ant3_c_aer = -999888777
787 integer, save :: mastercompindx_ant4_c_aer = -999888777
788 integer, save :: mastercompindx_ant1_o_aer = -999888777
789 integer, save :: mastercompindx_ant2_o_aer = -999888777
790 integer, save :: mastercompindx_ant3_o_aer = -999888777
791 integer, save :: mastercompindx_ant4_o_aer = -999888777
792 integer, save :: mastercompindx_biog1_c_aer = -999888777
793 integer, save :: mastercompindx_biog2_c_aer = -999888777
794 integer, save :: mastercompindx_biog3_c_aer = -999888777
795 integer, save :: mastercompindx_biog4_c_aer = -999888777
796 integer, save :: mastercompindx_biog1_o_aer = -999888777
797 integer, save :: mastercompindx_biog2_o_aer = -999888777
798 integer, save :: mastercompindx_biog3_o_aer = -999888777
799 integer, save :: mastercompindx_biog4_o_aer = -999888777
801 integer, save :: mastercompindx_asoaX_aer = -999888777
802 integer, save :: mastercompindx_asoa1_aer = -999888777
803 integer, save :: mastercompindx_asoa2_aer = -999888777
804 integer, save :: mastercompindx_asoa3_aer = -999888777
805 integer, save :: mastercompindx_asoa4_aer = -999888777
806 integer, save :: mastercompindx_bsoaX_aer = -999888777
807 integer, save :: mastercompindx_bsoa1_aer = -999888777
808 integer, save :: mastercompindx_bsoa2_aer = -999888777
809 integer, save :: mastercompindx_bsoa3_aer = -999888777
810 integer, save :: mastercompindx_bsoa4_aer = -999888777
815 lptr_so4_aer(maxd_asize, maxd_atype, maxd_aphase), &
816 lptr_msa_aer(maxd_asize, maxd_atype, maxd_aphase), &
817 lptr_no3_aer(maxd_asize, maxd_atype, maxd_aphase), &
818 lptr_cl_aer(maxd_asize, maxd_atype, maxd_aphase), &
819 lptr_co3_aer(maxd_asize, maxd_atype, maxd_aphase), &
820 lptr_nh4_aer(maxd_asize, maxd_atype, maxd_aphase), &
821 lptr_na_aer(maxd_asize, maxd_atype, maxd_aphase), &
822 lptr_ca_aer(maxd_asize, maxd_atype, maxd_aphase), &
823 lptr_oin_aer(maxd_asize, maxd_atype, maxd_aphase), &
824 lptr_oc_aer(maxd_asize, maxd_atype, maxd_aphase), &
825 lptr_bc_aer(maxd_asize, maxd_atype, maxd_aphase), &
826 lptr_pcg1_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
827 lptr_pcg2_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
828 lptr_pcg3_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
829 lptr_pcg4_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
830 lptr_pcg5_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
831 lptr_pcg6_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
832 lptr_pcg7_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
833 lptr_pcg8_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
834 lptr_pcg9_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
835 lptr_pcg1_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
836 lptr_pcg2_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
837 lptr_pcg3_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
838 lptr_pcg4_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
839 lptr_pcg5_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
840 lptr_pcg6_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
841 lptr_pcg7_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
842 lptr_pcg8_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
843 lptr_pcg9_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
844 lptr_opcg1_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
845 lptr_opcg2_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
846 lptr_opcg3_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
847 lptr_opcg4_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
848 lptr_opcg5_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
849 lptr_opcg6_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
850 lptr_opcg7_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
851 lptr_opcg8_b_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
852 lptr_opcg1_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
853 lptr_opcg2_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
854 lptr_opcg3_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
855 lptr_opcg4_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
856 lptr_opcg5_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
857 lptr_opcg6_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
858 lptr_opcg7_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
859 lptr_opcg8_b_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
860 lptr_pcg1_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
861 lptr_pcg2_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
862 lptr_pcg3_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
863 lptr_pcg4_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
864 lptr_pcg5_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
865 lptr_pcg6_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
866 lptr_pcg7_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
867 lptr_pcg8_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
868 lptr_pcg9_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
869 lptr_pcg1_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
870 lptr_pcg2_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
871 lptr_pcg3_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
872 lptr_pcg4_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
873 lptr_pcg5_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
874 lptr_pcg6_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
875 lptr_pcg7_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
876 lptr_pcg8_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
877 lptr_pcg9_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
878 lptr_opcg1_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
879 lptr_opcg2_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
880 lptr_opcg3_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
881 lptr_opcg4_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
882 lptr_opcg5_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
883 lptr_opcg6_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
884 lptr_opcg7_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
885 lptr_opcg8_f_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
886 lptr_opcg1_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
887 lptr_opcg2_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
888 lptr_opcg3_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
889 lptr_opcg4_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
890 lptr_opcg5_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
891 lptr_opcg6_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
892 lptr_opcg7_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
893 lptr_opcg8_f_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
894 lptr_smpa_aer(maxd_asize, maxd_atype, maxd_aphase), &
895 lptr_smpbb_aer(maxd_asize, maxd_atype, maxd_aphase), &
897 lptr_glysoa_r1_aer(maxd_asize, maxd_atype, maxd_aphase), &
898 lptr_glysoa_r2_aer(maxd_asize, maxd_atype, maxd_aphase), &
899 lptr_glysoa_oh_aer(maxd_asize, maxd_atype, maxd_aphase), &
900 lptr_glysoa_nh4_aer(maxd_asize, maxd_atype, maxd_aphase), &
901 lptr_glysoa_sfc_aer(maxd_asize, maxd_atype, maxd_aphase), &
903 lptr_ant1_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
904 lptr_ant2_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
905 lptr_ant3_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
906 lptr_ant4_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
907 lptr_ant1_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
908 lptr_ant2_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
909 lptr_ant3_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
910 lptr_ant4_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
911 lptr_biog1_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
912 lptr_biog2_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
913 lptr_biog3_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
914 lptr_biog4_c_aer(maxd_asize, maxd_atype, maxd_aphase), &
915 lptr_biog1_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
916 lptr_biog2_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
917 lptr_biog3_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
918 lptr_biog4_o_aer(maxd_asize, maxd_atype, maxd_aphase), &
920 lptr_asoaX_aer(maxd_asize, maxd_atype, maxd_aphase), &
921 lptr_asoa1_aer(maxd_asize, maxd_atype, maxd_aphase), &
922 lptr_asoa2_aer(maxd_asize, maxd_atype, maxd_aphase), &
923 lptr_asoa3_aer(maxd_asize, maxd_atype, maxd_aphase), &
924 lptr_asoa4_aer(maxd_asize, maxd_atype, maxd_aphase), &
925 lptr_bsoaX_aer(maxd_asize, maxd_atype, maxd_aphase), &
926 lptr_bsoa1_aer(maxd_asize, maxd_atype, maxd_aphase), &
927 lptr_bsoa2_aer(maxd_asize, maxd_atype, maxd_aphase), &
928 lptr_bsoa3_aer(maxd_asize, maxd_atype, maxd_aphase), &
929 lptr_bsoa4_aer(maxd_asize, maxd_atype, maxd_aphase)
933 end module module_data_mosaic_asect