123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475 |
- !
- #include "tm5.inc"
- !
- !-----------------------------------------------------------------------
- !
- ! changed for coupling with M7 by Elisabetta Vignati 2005
- !-----------------------------------------------------------------------
- module chem_param
- use global_types, only : d3_data
- use dims, only : nregions
- use binas, only : xmair
- use reaction_data
- #ifndef without_photolysis
- use photolysis_data
- #endif
- use deposition_data
- ! JadB. There was nmodes (from here) and nmod (from m7), both set to 7. Use only one parameter. I chose nmod.
- #ifdef with_m7
- Use mo_aero_m7, only : nmod
- use mo_aero_m7, only : dh2so4, ddust, dbc, doc, dnacl
- use mo_aero, only : cmr_ff, cmr_bb, cmr_sk, cmr_sa, cmr_sc, facso2
- use mo_aero, only : zbb_wsoc_perc, zbge_wsoc_perc
- !use mo_aero, only : zom2oc
- #endif
- implicit none
- #ifndef with_m7
- integer, parameter :: nmod = 1
- #endif
- ! For compatibility with old code, we will redefine nmodes as the same as nmod
- Integer, Parameter :: nmodes = nmod
- ! budget of SO4: specific
- !PLS type(d3_data), dimension(nregions), target :: so4pg, so4pa
- ! budget of ozone, and CH4 oxidation (double check)
- type(d3_data), dimension(nregions), target :: o3t, o3s ! transport, stratospheric
- type(d3_data), dimension(nregions), target :: o3ts ! to store 'old' o3 field
- type(d3_data), dimension(nregions), target :: o3p, o3l ! o3 production and loss terms..
- !PLS type(d3_data), dimension(nregions), target :: ch4oh, ch4_ps ! ch4+oh descrutct. and pseudosource
- integer, parameter :: nmark= 1 ! number of 'marked' tracers
- integer, parameter :: nstd = 1 ! number of 'std deviation' in mmix output
- #ifdef with_cariolle
- #ifdef with_budgets
- integer, parameter :: ncar = 2 ! o3 and psc
- #endif
- #endif
- !
- ! molar weights of components.
- ! These need to be calculated to a variable to which is referred
- ! in Tracers.txt
- !
- real, parameter :: xmh=1.0079
- real, parameter :: xmn=14.0067
- real, parameter :: xmc=12.01115
- real, parameter :: xms=32.064
- real, parameter :: xmo=15.9994
- real, parameter :: xmna=22.990
- real, parameter :: xmcl=35.453
- real, parameter :: xmnacl=xmna+xmcl
- ! Sea salt is 30.6% sodium (Millero, 2004)
- real, parameter :: xmo3=xmo*3
- real, parameter :: xmnox=xmn
- real, parameter :: xmh2o2=xmo*2.+xmh*2.
- real, parameter :: xmch4=xmc+xmh*4.
- real, parameter :: xmco=xmc+xmo
- real, parameter :: xmhno3=xmh+xmn+xmo*3.
- real, parameter :: xmmepe=xmc+xmh*4.+xmo*2.
- real, parameter :: xmch2o=xmc+xmh*2.+xmo
- real, parameter :: xmno=xmn+xmo
- real, parameter :: xmho2=xmh+xmo*2.
- real, parameter :: xmch3o2=xmc+2.*xmo+3.*xmh
- real, parameter :: xmoh=xmo+xmh
- real, parameter :: xmno2=xmn+2.*xmo
- real, parameter :: xmno3=xmn+3.*xmo
- real, parameter :: xmn2o5=2.*xmn+5.*xmo
- real, parameter :: xmhno4=xmn+4.*xmo+xmh
- ! FD real, parameter :: xmair=28.94
- real, parameter :: xmh2o=xmh*2+xmo
- ! xmpar is the results of the CBM4 implementation...calculate as C
- real, parameter :: xmpar=xmc
- real, parameter :: xmeth=2.*xmc
- real, parameter :: xmole=2.*xmc
- real, parameter :: xmisop=5.*xmc+8.*xmh
- real, parameter :: xmgly=3.*xmc+4.*xmh+2.*xmo
- real, parameter :: xmald2=2.*xmc
- real, parameter :: xmc2o3=2.*xmc+3.*xmo+3.*xmh
- real, parameter :: xmpan=2.*xmc+3.*xmh+3.*xmo+xmn+2.*xmo! ch3co-o2-no2
- real, parameter :: xmror=2.*xmc+4.*xmh
- real, parameter :: xmrxpar=xmc
- real, parameter :: xmrooh=xmc+3.*xmh+2*xmo
- real, parameter :: xmorgntr=xmn+3.*xmh+xmc+3*xmo ! JEW CH3ONO2
- real, parameter :: xmxo2=2.*xmo+xmc
- real, parameter :: xmxo2n=2.*xmo+xmc
- real, parameter :: xmbc=xmc
- real, parameter :: xmpom=xmair
- !EV needed for M7
- real, parameter :: xmh2so4=2.*xmh+xms+4.*xmo
- real, parameter :: xmdust=xmair
- real, parameter :: xmnumb=xmair
- ! attention xmso2: conversion emissions done when added...
- real, parameter :: xmso2=xms+2.*xmo
- real, parameter :: xmdms=xms+2*xmc+6*xmh
- ! attention xmnh3: conversion emissions when added...
- real, parameter :: xmnh3=xmn+3.*xmh
- ! attention: conversion emissions when added...
- real, parameter :: xmnh4=xmn+4.*xmh
- real, parameter :: xmmsa=xms+xmc+3*xmo+4*xmh
- real, parameter :: xmnh2=xmn+xmh*2.
- real, parameter :: xmso4=xms+4.*xmo
- real, parameter :: xmno3_a=xmn+xmo*3
- real, parameter :: xmrn222=222.
- real, parameter :: xmpb210=210.
- ! this is a dummy molecular mass
- real, parameter :: xmnmv=999.
- ! The following lines will be in the include file
- #ifdef with_m7
- include 'm7_chem_param.inc'
- #else
- include 'chem_param.inc'
- #endif
- !
- integer, parameter :: maxtrace = ntrace + 4
- ! Half-life in days
- real, dimension(maxtrace), parameter :: half_life = 999999999.
- !
- ! definition of the chemistry: #reactions, order of species, etc.
- ! parameters needed for chemistry and rate constants
- !
- ! densities (kg/m3) used in emission and/or optics routines
- real, parameter :: density_ref = 1800.0 ! for 'reference' density calculations
- #ifdef with_m7
- real, parameter :: ss_density = dnacl * 1.e3
- real, parameter :: dust_density = ddust * 1.e3
- real, parameter :: carbon_density = dbc * 1.e3
- real, parameter :: pom_density = doc * 1.e3 ! Note that doc actually is the density of POM not OC
- ! H2-SO4 particle density:
- real, parameter :: so4_density = dh2so4 * 1.e3
- real, parameter :: h2so4_factor = xmh2so4 / xmso4
- ! Ammonium-nitrate particle density used in the optics routine:
- ! Value based on Lowenthal et al. (Atmos. Environ., 2000) (see also De Meij et al., ACP, 2006).
- !real, parameter :: nh4no3_density = 1700.
- real, parameter :: nh4no3_density = 1.73 * 1.e3
- real, parameter :: nh4no3_factor = (xmnh4+xmno3)/xmno3
- real, parameter :: msa_density = 1.48 * 1.e3
- ! not used anymore (previously used for Whitby distributions):
- !real, parameter :: sigma_whitby = 2.0
- !real, parameter :: radius_whitby = 0.034e-6
- !real, parameter :: radius_bc = 0.034e-6
- ! real, parameter :: nh4so4_density = 1760.
- ! Geometric mean dry radii for sea salt emissions.
- ! These values have been updated
- ! following Vignati et al. (Atmos. Environ., 2010)
- ! For further explanations, see emission_ss.F90.
- !real, parameter :: radius_ssa = 0.0794e-6
- !real, parameter :: radius_ssc = 0.63e-6
- real, parameter :: radius_ssa = 0.09e-6 ! accumulation mode
- real, parameter :: radius_ssc = 0.794e-6 ! coarse mode
- ! not used anymore:
- !real, parameter :: rad_soa = 0.01e-6 ! soa average radius
- ! assuming 3nm particle formation and growth to
- ! that size in half an hour
- ! Geometric mean radii of primary carbonaceous and sulfate emissions
- ! based on AeroCom-I recommendations (Dentener et al., ACP, 2006).
- ! The corresponding values for the M7 modes are given by Stier et al. (ACP, 2005).
- ! The same values have also been adopted in GLOMAP (Mann et al., 2010).
- !
- ! Biofuel emissions should have similar characteristics as biomass burning emissions.
- ! However, as biofuel emissions are not separately provided
- ! they are treated as fossil fuel emissions.
- ! This also implies that changes in size characteristics
- ! since pre-industrial times (Dentener et al., 2006)
- ! are only partially accounted for.
- !
- ! Mean radii for carbonaceous aerosol emissions from Dentener et al.,
- ! corresponding to sigma = 1.8:
- !real, parameter :: rad_emi_ff = 0.015e-6 ! fossil/biofuel emission radius
- !real, parameter :: rad_emi_vg = 0.04e-6 ! vegetation fires emission radius
- ! Corresponding values for sigma = 1.59 used in M7:
- real, parameter :: rad_emi_ff = cmr_ff ! fossil/biofuel emission radius
- real, parameter :: rad_emi_vg = cmr_bb ! vegetation fires emission radius
- ! Since cmr_bb lies in the accumulation mode,
- ! a reduced value has to be used for the insoluble fraction
- ! One could use 0.04e-6 or set it to cmr_ff as done by Stier et al.:
- real, parameter :: rad_emi_vg_insol = cmr_ff
- ! Mean radii for sulfate aerosol emissions adapted to the M7 modes:
- !real, parameter :: rad_so4_ind = 0.075e-6 ! industrial emission radius (not used)
- real, parameter :: rad_so4_ait = cmr_sk ! aitken mode radius
- real, parameter :: rad_so4_acc = cmr_sa ! accumulation mode radius
- real, parameter :: rad_so4_coa = cmr_sc ! coarse mode radius
- !
- real, parameter :: frac_pom_sol_vg = zbb_wsoc_perc ! fraction of soluble pom emitted from vegetation fires
- real, parameter :: frac_pom_sol_ff = 0.65 ! fraction of soluble pom emitted from fossil fuel
- ! use same value as for vegetation fires
- real, parameter :: frac_soa_sol = zbge_wsoc_perc ! fraction of soluble surrogate SOA emissions
- real, parameter :: frac_so4=1.-facso2 ! fraction of so2 emission emitted directly as sulfate
- #else
- real, parameter :: frac_so4=1.-0.975 ! fraction of so2 emission emitted directly as sulfate
- #endif
-
- #ifdef with_m7
- real, dimension(nmod), parameter :: sigma_lognormal = (/ 1.59, 1.59, 1.59, 2.00, 1.59, 1.59, 2.00 /)
- !
- ! mode numbers
- !
- integer, parameter :: mode_nuc = 1
- integer, parameter :: mode_ais = 2
- integer, parameter :: mode_acs = 3
- integer, parameter :: mode_cos = 4
- integer, parameter :: mode_aii = 5
- integer, parameter :: mode_aci = 6
- integer, parameter :: mode_coi = 7
- ! mode_number => mode_start
- integer, parameter :: mode_start (nmod) = (/ inus_n, iais_n, iacs_n, icos_n, iaii_n, iaci_n, icoi_n /) ! first tracer in mode
- integer, parameter :: mode_end_so4 (nmod) = (/ iso4nus, iso4ais, iso4acs, iso4cos, 0, 0, 0 /)
- integer, parameter :: mode_end_bc (nmod) = (/ 0, ibcais, ibcacs, ibccos, ibcaii, 0, 0 /)
- integer, parameter :: mode_end_pom (nmod) = (/ 0, ipomais, ipomacs, ipomcos, ipomaii, 0, 0 /)
- integer, parameter :: mode_end_ss (nmod) = (/ 0, 0, issacs, isscos, 0, 0, 0 /)
- integer, parameter :: mode_end_dust(nmod) = (/ 0, 0, iduacs, iducos, 0, iduaci, iducoi /)
- integer, parameter :: mode_nm (nmod) = (/ 1, 3, 5, 5, 2, 1, 1 /) ! # tracers in mode
- integer, parameter :: mode_end (nmod) = mode_start + mode_nm ! last tracer in mode
- integer, parameter :: mode_tracers(0:5,nmod) = &
- reshape( (/ inus_n, iso4nus, 0 , 0, 0, 0 , &
- iais_n, iso4ais, ibcais, ipomais, 0, 0, &
- iacs_n, iso4acs, ibcacs, ipomacs, issacs, iduacs, &
- icos_n, iso4cos, ibccos, ipomcos, isscos, iducos, &
- iaii_n, ibcaii, ipomaii, 0, 0, 0, &
- iaci_n, iduaci, 0,0,0,0, &
- icoi_n, iducoi, 0,0,0,0 /), (/ 6, nmod/) )
-
- #else
- ! for gas phase: introduce dummy modes
- real, dimension(nmod), parameter :: sigma_lognormal = (/ 1.59 /)
- integer, parameter, dimension(nmod) :: mode_start = (/999 /) ! first tracer in mode
- integer, parameter, dimension(nmod) :: mode_end = (/999 /) ! last tracer in mode
- integer, parameter :: mode_nm(nmod) = (/ 1 /) ! # tracers in mode
- integer, parameter :: mode_tracers(0:1,nmod) = &
- reshape( (/ 999, 999 /), (/ 2, nmod/) )
- #endif
- integer, parameter :: iacid = ntrace + 1 !these are used in the 'chemistry'
- integer, parameter :: iair = ntrace + 2
- integer, parameter :: ih2o = ntrace + 3
- integer, parameter :: io2 = ntrace + 4
- integer, parameter :: ico2 = -999
- !
- ! additional fields used in chemistry routine alone
- ! (more meteo-like files in units different from #/cm3)
- !
- integer, parameter :: n_extra = 15
- integer, parameter :: i_pres = 1
- integer, parameter :: i_temp = 2
- integer, parameter :: iairn = 3 !number density = ntrace+2
- integer, parameter :: ih2on = 4 !
- integer, parameter :: iairm = 5 !air mass in kg
- integer, parameter :: ilwc = 6
- integer, parameter :: iiwc = 7
- integer, parameter :: icc = 8
- integer, parameter :: irh = 9 !0-100%
- integer, parameter :: iph = 10
- integer, parameter :: idz = 11
- integer, parameter :: ieno = 12 !nox emissions
- integer, parameter :: irinc = 13 !relative increas in aerosol radius
- integer, parameter :: iclwc = 14
- integer, parameter :: iciwc = 15
- ! id list of species, for which standard deviation is wanted (must be transported species)
- integer, dimension(nstd), parameter :: istd=(/io3/)
- !
- !
- character(len=8), dimension(nmark),parameter :: marknam= (/'O3S '/)
- #ifdef with_cariolle
- character(len=8), dimension(ncar), parameter :: carnam = (/'O3C ','PSC '/)
- #endif
- ! Uptake coefficients for heterogeneous chemistry (Huijnen et al., ACPD13)
- ! Uptake on ice and liquid cloud.
- ! VH: note: I don't use g_n2o5_l, as it's better to use a temperature dependency (see chem_rates.F90)
- real, parameter :: g_n2o5_i=0.02, g_n2o5_l=0.02
- real, parameter :: g_ho2_i =0.025, g_ho2_l =0.06
- real, parameter :: g_no3_i =1e-5, g_no3_l =1e-5 ! So far no NO3 uptake on cloud?
- ! Assumed bulk aerosol uptake efficiency if no M7
- ! Note that until now in the original parameterization gam_n2o5 was set to 0.04 in sources_sinks.F90!
- real,parameter :: g_n2o5_aer=0.02
- real,parameter :: g_no3_aer =0.001
- real,parameter :: g_ho2_aer =0.06
- #ifdef with_m7
- ! Uptake coefficients on aerosol - allowing a variable efficiency per mode.
- ! Last entry (nmod+1) allocated for EQSAM aerosols NO3_a and NH4 and for MSA.
- ! VH: I do include MSA here, even though it may have a different uptake than for NO3_A and NH4.
- ! Also it may largely be covered by SS. Please consider something different if you have any idea.
- real, dimension(nmod+1),parameter :: g_n2o5 = (/ 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02 , 0.02 /)
- real, dimension(nmod+1),parameter :: g_no3 = (/ 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001/)
- real, dimension(nmod+1),parameter :: g_ho2 = (/ 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06 , 0.06 /)
- #endif
- ! cbm4 split in hydrocarbons...
- integer, parameter :: ncb4=6
- integer, parameter, dimension(ncb4) :: nmhc= &
- (/ipar,ieth,iole,iald2,imgly,ich2o/)
- real, parameter, dimension(ncb4) :: xmcb4= &
- (/xmpar,xmeth,xmole,xmald2,xmgly,xmch2o/)
- ! fscale(ntrace) scaling factor for conversion of mixing ratios in
- ! kg tracer per kg air to practical mixing ratio units (e.g. ppm)
- ! In this version: ratio of molecular weight of tracer to that of air
- real,dimension(ntrace),parameter :: fscale = xmair/ra(:)
- ! uscale is for user-scale. This is a scale factor used in
- ! user_output_column and user_output_mix.
- real, dimension(ntrace), parameter :: uscale = 1.
-
-
- real, dimension(ntracet,ntemp) :: henry ! heterogeneous removal rates
- ! ********************************************************************
- ! dry deposition
- ! ********************************************************************
- ! number of tracers on which dry depositions should be applied:
- integer, parameter :: ndep = 14
- ! tracer indices on which dry depositions should be applied:
- ! note: SO4 dry deposition refers to aerosol dry deposition
- ! This should only be applied in gas-phase chemistry version (see ebischeme.F90)
- integer, parameter :: idep(ndep) = &
- (/ io3 , ihno3, ino , ino2 , iso2, iso4, &
- ih2o2, iald2, ich2o, ich3o2h, inh3, &
- ipan , ico , ihno4 /)
- real, parameter :: ddep_diffrb(ndep)= &
- (/ diffrb_o3 , diffrb_hno3, diffrb_no , diffrb_no2 , diffrb_so2, diffrb_so4,&
- diffrb_h2o2, diffrb_ald2, diffrb_ch2o, diffrb_ch3o2h, diffrb_nh3, &
- diffrb_pan , diffrb_co , diffrb_hno4 /)
- real, parameter :: ddep_rsoil(ndep) = &
- (/ rsoil_o3 , rsoil_hno3, rsoil_no , rsoil_no2 , rsoil_so2, rsoil_so4, &
- rsoil_h2o2, rsoil_ald2, rsoil_ch2o, rsoil_ch3o2h, rsoil_nh3, &
- rsoil_pan , rsoil_co , rsoil_hno4 /)
- real, parameter :: ddep_rwat(ndep) = &
- (/ rwat_o3 , rwat_hno3, rwat_no , rwat_no2 , rwat_so2, rwat_so4,&
- rwat_h2o2, rwat_ald2, rwat_ch2o, rwat_ch3o2h, rwat_nh3, &
- rwat_pan , rwat_co , rwat_hno4 /)
- real, parameter :: ddep_rws(ndep) = &
- (/ rws_o3 , rws_hno3, rws_no , rws_no2 , rws_so2, rws_so4,&
- rws_h2o2, rws_ald2, rws_ch2o, rws_ch3o2h, rws_nh3, &
- rws_pan , rws_co , rws_hno4 /)
- real, parameter :: ddep_rsnow(ndep) = &
- (/ rsnow_o3 , rsnow_hno3, rsnow_no , rsnow_no2 , rsnow_so2, rsnow_so4, &
- rsnow_h2o2, rsnow_ald2, rsnow_ch2o, rsnow_ch3o2h, rsnow_nh3, &
- rsnow_pan , rsnow_co , rsnow_hno4 /)
- real, parameter :: ddep_rmes(ndep) = &
- (/ rmes_o3 , rmes_hno3, rmes_no , rmes_no2 , rmes_so2, rmes_so4, &
- rmes_h2o2, rmes_ald2, rmes_ch2o, rmes_ch3o2h, rmes_nh3, &
- rmes_pan , rmes_co , rmes_hno4 /)
- real, parameter :: ddep_rcut(ndep) = &
- (/ rcut_o3 , rcut_hno3, rcut_no , rcut_no2 , rcut_so2, rcut_so4, &
- rcut_h2o2, rcut_ald2, rcut_ch2o, rcut_ch3o2h, rcut_nh3, &
- rcut_pan , rcut_co , rcut_hno4 /)
- real, parameter :: ddep_diffcf(ndep) = &
- (/ diffcf_o3 , diffcf_hno3, diffcf_no , diffcf_no2 , diffcf_so2, diffcf_so4, &
- diffcf_h2o2, diffcf_ald2, diffcf_ch2o, diffcf_ch3o2h, diffcf_nh3, &
- diffcf_pan , diffcf_co , diffcf_hno4 /)
- ! some vd fields are copies:
- integer, parameter :: vd_ncopy = 7
- integer, parameter :: vd_copy_itarget(vd_ncopy) = (/ irooh , iorgntr, in2o5, ino3, io3s, imgly, ino3_a/)
- integer, parameter :: vd_copy_isource(vd_ncopy) = (/ ich3o2h, ipan , ihno3, ino2, io3, ich2o , iso4/)
- ! number of aerosol bins used for deposition:
- integer, parameter :: nrdep = 23
-
- ! aerosol radii used for each bin:
- real, parameter :: lur(nrdep) = &
- (/ 0.001, 0.01, 0.05, 0.1, 0.3, &
- 0.5 , 0.7 , 0.8 , 0.9, 1.0, &
- 1.2 , 1.5 , 2.0 , 3.0, 4.0, &
- 5.0 , 6.0 , 8.0 , 10.0, 15.0, &
- 20.0 , 50.0 , 100.0 /)
- ! ********************************************************************
- ! wet deposition
- ! ********************************************************************
- ! nscav : selected species for scavenging
- ! nscav_index : index for scavenging:
- ! nscav_type : type of scavenging:
- ! 0 no scavenging
- ! 1 scavenging 100 % solubility assumed
- ! 2 scavenging henry solubility assumed
- ! 3 scavenging, aerosol removal assumed
- ! 4 scavenging, special case for SO2 with aq phase diss.
- !
- #ifdef with_m7
- integer,parameter :: nscav=40
- #else
- integer,parameter :: nscav=15
- #endif
- integer,parameter,dimension(nscav) :: &
- nscav_index = (/ih2o2, ihno3, ich3o2h, ich2o, iald2 , &
- irooh, iorgntr, iso2, inh3, &
- iso4, inh4, imsa, &
- ino3_a, imgly, ipb210 &
- #ifdef with_m7
- ,inus_n, iais_n, iacs_n, icos_n, iaii_n, iaci_n, icoi_n, &
- iso4nus, iso4ais, iso4acs, iso4cos, &
- ibcais, ibcacs, ibccos, ibcaii, &
- ipomais, ipomacs, ipomcos, ipomaii, &
- issacs, isscos, &
- iduacs, iducos, iduaci, iducoi &
- #endif
- /)
- ! nscav_type = 5 : nu mode soluble aerosol
- ! nscav_type = 6 : ai mode soluble aerosol
- ! nscav_type = 7 : ac mode soluble aerosol
- ! nscav_type = 8 : co mode soluble aerosol
- ! nscav_type = 9 : ai mode insoluble aerosol
- ! nscav_type = 10 : ac mode insoluble aerosol
- ! nscav_type = 11 : co mode insoluble aerosol
- #ifdef with_m7
- ! in m7-version so4 is treated as gas-phase sulphuric acid (H2SO4) (scav-type 2)
- integer, dimension(nscav),parameter :: &
- nscav_type = (/ 2, 1, 2, 2, 2, &
- 2, 2, 4, 1, &
- 2, 3, 3, &
- 3, 2, 3, &
- 5, 6, 7, 8, 9, 10, 11, & ! particle number
- 5, 6, 7, 8, & ! sulphate mass
- 6, 7, 8, 9, & ! BC mass
- 6, 7, 8, 9, & ! POM mass
- 7, 8, & ! SS mass
- 7, 8, 10, 11 /) ! DUST mass
-
- #else
- ! in gas-phase version so4 represents the sulphate aerosol. (scav-type 3)
- integer, dimension(nscav),parameter :: &
- nscav_type = (/ 2, 1, 2, 2, 2, &
- 2, 2, 4, 1, &
- 3, 3, 3, &
- 3, 2, 3 /)
- #endif
- end module chem_param
|