Aerosol emissions: Difference between revisions

From Geos-chem
Jump to navigation Jump to search
No edit summary
 
Line 51: Line 51:


--[[User:Bmy|Bob Yantosca]] ([[User talk:Bmy|talk]]) 18:41, 13 October 2016 (UTC)
--[[User:Bmy|Bob Yantosca]] ([[User talk:Bmy|talk]]) 18:41, 13 October 2016 (UTC)
=== Bug fix for MOPO and MOPI definitions in species database ===
<span style="color:green">'''''This update was included in [[GEOS-Chem v11-02#v11-02c|v11-02c]] and approved on 21 Sep 2017.'''''</span>
'''''Katie Travis wrote:'''''
:I believe I have come across a bug in the marine organic simulation. In v11, the marine organic aerosol species (MOPI/MOPO) are given their own tracers (I believe they were added into OCPI/OCPO in v9-2?).  There is a note on the wiki that these species in the species database are set to gas, when they should be aerosol.  But they should also wet deposit, and in fact the parameters for that are on the [[Species_in_GEOS-Chem|wiki table]].  I ran this by one of the developers, Matt Johnson, and he also agrees this appears to be a bug. 
'''''Matthew Johnson wrote:'''''
:Yes that is correct.  Both marine organic tracers should be dry deposited.  For wet deposition, MOPO should be treated the same as OCPO (washout only, if this is still how OCPO is treated in the new model) and MOPI is treated the same as OCPI.
To fix this issue, the following lines in <tt>Headers/species_database_mod.F90</tt> should be changed from:
          CASE( 'MOPI' )
           
            ! Halve the Kc (cloud condensate -> precip) rate
            ! for the temperature range 237 K <= T < 258 K.
            KcScale = (/ 1.0_fp, 0.5_fp, 1.0_fp /)
            ! Turn off rainout only when 237 K <= T < 258K.
            RainEff = (/ 1.0_fp, 0.0_fp, 1.0_fp /)
            CALL Spc_Create( am_I_Root    = am_I_Root,                    &
                              ThisSpc      = SpcData(N)%Info,              &
                              ModelID      = N,                            &
                              KppSpcId      = KppSpcId(N),                  &
                              KppVarId      = KppVarId(N),                  &
                              KppFixId      = KppFixId(N),                  &
                              Name          = NameAllCaps,                  &
                              FullName      = 'Hydrophilic marine OC',      &
                              Formula      = '',                          &
                              MW_g          = 12.01_fp,                    &
                              EmMW_g        = 12.0_fp,                      &
                              MolecRatio    = 1.0_fp,                      &
                              Is_Advected  = Is_Advected,                  &
                              <span style="color:red">Is_Gas        = T,                            &
                              Is_Drydep    = F,                            &
                              Is_Wetdep    = F,                            &</span>
                              DD_DvzAerSnow = 0.03_fp,                      &
                              DD_Hstar_old  = 0.0_fp,                      &
                              WD_AerScavEff = 1.0_fp,                      &
                              WD_KcScaleFac = KcScale,                      &
                              WD_RainoutEff = RainEff,                      &
                              RC            = RC )
          CASE( 'MOPO' )
            ! Turn off rainout because MOPO is hydrophobic
            KcScale = (/ 1.0_fp, 1.0_fp, 1.0_fp /)
            RainEff = (/ 0.0_fp, 0.0_fp, 0.0_fp /)
            CALL Spc_Create( am_I_Root    = am_I_Root,                    &
                              ThisSpc      = SpcData(N)%Info,              &
                              ModelID      = N,                            &
                              KppSpcId      = KppSpcId(N),                  &
                              KppVarId      = KppVarId(N),                  &
                              KppFixId      = KppFixId(N),                  &
                              Name          = NameAllCaps,                  &
                              FullName      = 'Hydrophobic marine OC',      &
                              Formula      = '',                          &
                              MW_g          = 12.01_fp,                    &
                              EmMW_g        = 12.0_fp,                      &
                              MolecRatio    = 1.0_fp,                      &
                              Is_Advected  = Is_Advected,                  &
                              <span style="color:red">Is_Gas        = T,                            &
                              Is_Drydep    = F,                            &
                              Is_Wetdep    = F,                            &</span>
                              DD_DvzAerSnow = 0.03_fp,                      &
                              DD_Hstar_old  = 0.0_fp,                      &
                              WD_AerScavEff = 0.0_fp,                      &
                              WD_RainOutEff = RainEff,                      &
                              RC            = RC )
to:
          CASE( 'MOPI', 'MOPO' )
           
            ! MOPO is treated the same as OCPO and
            ! MOPI is treated the same as OCPI (msj, krt, 8/23/17)
            ! These have mostly identical properties
            ! Turn off rainout for hydrophobic OC, for all temperatures.
            SELECT CASE( NameAllCaps )
                CASE( 'MOPI' )
                  FullName = 'Hydrophilic marine organic carbon aerosol'
                  ! Halve the Kc (cloud condensate -> precip) rate
                  ! for the temperature range 237 K <= T < 258 K.
                  KcScale  = (/ 1.0_fp, 0.5_fp, 1.0_fp /)
                  ! Turn off rainout only when 237 K <= T < 258K.
                  RainEff  = (/ 1.0_fp, 0.0_fp, 1.0_fp /)
                CASE( 'MOPO' )
                  Fullname = 'Hydrophobic marine organic carbon aerosol'
                  ! For all temperatures:
                  ! (1) Halve the Kc (cloud condensate -> precip) rate
                  ! (2) Turn off rainout (OCPO is hydrophobic)
                  KcScale  = (/ 0.5_fp, 0.5_fp, 0.5_fp /)
                  RainEff  = (/ 0.0_fp, 0.0_fp, 0.0_fp /)
            END SELECT
            CALL Spc_Create( am_I_Root    = am_I_Root,                    &
                              ThisSpc      = SpcData(N)%Info,              &
                              ModelID      = N,                            &
                              KppSpcId      = KppSpcId(N),                  &
                              KppVarId      = KppVarId(N),                  &
                              KppFixId      = KppFixId(N),                  &
                              Name          = NameAllCaps,                  &
                              FullName      = FullName,                    &
                              Formula      = '',                          &
                              MW_g          = 12.01_fp,                    &
                              EmMW_g        = 12.0_fp,                      &
                              Is_Advected  = Is_Advected,                  &
                              <span style="color:green">Is_Gas        = F,                            &
                              Is_Drydep    = T,                            &
                              Is_Wetdep    = T,                            &</span>
                              Density      = 1300.0_fp,                    &
                              DD_DvzAerSnow = 0.03_fp,                      &
                              DD_F0        = 0.0_fp,                      &
                              DD_Hstar_Old  = 0.0_fp,                      &
                              WD_AerScavEff = 1.0_fp,                      &
                              WD_KcScaleFac = KcScale,                      &
                              WD_RainoutEff = RainEff,                      &
                              RC            = RC )
--[[User:Melissa Payer|Melissa Sulprizio]] ([[User talk:Melissa Payer|talk]]) 15:59, 23 August 2017 (UTC)

Latest revision as of 17:57, 25 August 2022

This page contains links to the relevant pages which detail the aerosol emissions inventories used by GEOS-Chem.

Emissions by sector

Online emission of marine primary organic aerosol (POA)

This update was validated with 1-month benchmark simulation v11-01b and 1-year benchmark simulation v11-01b-Run0. This version was approved on 19 Aug 2015.

Matthew Johnson wrote:

The online emission parameterization for sub-micron marine primary organic aerosol (POA) was developed for implementation into GEOS-Chem at North Carolina State University (Gantt et al., 2012). The wind speed dependent size-resolved parameterization calculates the organic mass fraction of sea spray aerosol under varying levels of surface ocean chlorophyll-α concentrations ([Chl-α]). The parameterization was designed to be used for all global and regionally nested spatial resolutions and was tested in GEOS-Chem v9-02. The submicron marine POA emissions proved to improve the model-predicted concentrations of total organic aerosol concentrations over coastal and marine regions (Gantt et al., 2015).

References for this work include:

  • Gantt, B., Johnson, M. S., Meskhidze, N., Sciare, J., Ovadnevaite, J., Ceburnis, D., and O'Dowd, C. D.: Model evaluation of marine primary organic aerosol emission schemes, Atmos. Chem. Phys., 12, 8553-8566, doi:10.5194/acp-12-8553-2012, 2012.
  • Gantt, B., Johnson, M. S., Crippa, M., Prévôt, A. S. H., and Meskhidze, N.: Implementing marine organic aerosols into the GEOS-Chem model, Geosci. Model Dev., 8, 619-629, doi:10.5194/gmd-8-619-2015, 2015.

As part of this update, Matthew Johnson has provided MODIS-Aqua chlorophyll-A data. For more information about these data, please visit this post on our Leaf area indices in GEOS-Chem wiki page.

NOTE: A minor bug fix for this update was included in v11-01d to declare variable CHLR as OMP private in routine HCOX_SeaSalt_Run in file HEMCO/Extensions/hcox_seasalt_mod.F90.

--Lizzie Lundgren (talk) 15:21, 22 October 2015 (UTC)

Bug fix: Allocate the OCCONV array for marine POA simulations

This fix was included in v11-01j and approved on 03 Dec 2016

While unit testing GEOS-Chem with the GNU Fortran compiler, we discovered an error in the marine POA simulation. The array OCCONV should have been allocated in routine INIT_SEASALT (in module GeosCore/seasalt_mod.F) but wasn't. We have now added the following IF statement in GREEN, below the existing code:

       IF ( AS /= 0 ) CALL ALLOC_ERR( 'DMID' )
       DMID = 0e+0_fp

      ! Allocate OCCONV only for marine-POA simulations (bmy, 10/13/16)
      IF ( Input_Opt%LMPOA ) THEN
         ALLOCATE( OCCONV( IIPAR, JJPAR, LLPAR ), STAT=AS )
         IF ( AS /= 0 ) CALL ALLOC_ERR( 'OCCONV' )
         OCCONV = 0e+0_fp
      ENDIF

This will only allocate OCCONV if we are doing a marine POA simulation.

--Bob Yantosca (talk) 18:41, 13 October 2016 (UTC)