Lightning NOx emissions

From Geos-chem
Revision as of 20:53, 27 November 2018 by Bmy (Talk | contribs) (Obsolete information)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

On this page we list various updates to GEOS-Chem's lightning NOx emissions algorithm.

Generating OTD/LIS factors

When running a GEOS-Chem simulation for a time period that doesn't have OTS/LIS factors, your simulation will stop with the following error:

    Your model framework has not had its
    lightnox code reprocessed for the correction
    to how CLDTOPS are calculated, probably due to
    the lack of your met fields at Harvard.
    
    Please contact Lee Murray
    (ltmurray@post.harvard.edu), who can help you
    prepare the necessary modifications and files
    to get lightnox working for you.
    
    You may remove this trap in lightnox_nox_mod.f
    at your own peril, but be aware that the
    magnitude and distribution of lightnox may be
    unrealistic.
    
    You can explicitly set the beta value in your
    HEMCO configuration file by adding it to the
    'Lightning NOx settings:
    # ExtNr ExtName            on/off Species
    103     LightNOx         : on     NO
        --> OTD-LIS scaling  :        1.00e-3
        
      CALL HCO_ERROR( 'Wrong beta - see information in standard output', RC )

To guarantee that lightning remains reasonable during your simulation period, you'll need to provide Lee Murray with the unconstrained flash rates so he can generate the OTD/LIS factor.

To generate unconstrained flash rates, run GEOS-Chem for your full period and turn off all emissions except lightning in HEMCO_Config.rc:

103     LightNOx          : on    NO
    --> OTD-LIS factors   :       false
    --> OTD-LIS scaling   :       1.000001
    --> CDF table         :       $ROOT/LIGHTNOX/v2014-07/light_dist.ott2010.dat

To speed up the simulation, we also recommend disabling all processes (transport, chemistry, convection, wet deposition, dry deposition) in input.geos. To avoid hitting the above error in this simulation, you can either use OTD-LIS scaling : 1.000001 in HEMCO_Config.rc or manually comment out the IF ( BETA == 1d0 ) trap in HEMCO/Extensions/hcox_lightnox_mod.F90 (you will need to inform Lee of which method you used). Archive monthly mean lightning flash rates using the ND56 diagnostic and send those to Lee Murray.

--Melissa Sulprizio (talk) 16:15, 18 November 2016 (UTC)

OTD/LIS redistribution for GEOS-FP

OTD/LIS factors in GEOS-Chem v10-01

In GEOS-Chem v10-01 and newer versions, the OTD/LIS lightning redistribution factors are read with the HEMCO emissions component. We have created new OTD/LIS data files (in COARDS-compliant netCDF format) for use with HEMCO. These new data files are contained in the HEMCO data directory tree. For detailed instructions on how to download these data files to your disk server, please see our Downloading the HEMCO data directories wiki post.

--Bob Y. 16:31, 13 February 2015 (EST)

OTD/LIS factors in GEOS-Chem v9-02

Lee Murray has generated OTD-LIS local redistribution factors for use with the GEOS-FP met fields. The scale factors were based on GEOS-FP met data from April 2012 through September 2013.

You may obtain the new OTD/LIS scale factors from:

ftp ftp.as.harvard.edu
cd gcgrid/data/GEOS_4x5/lightning_NOx_201311
mget *
cd gcgrid/data/GEOS_2x2.5/lightning_NOx_201311
mget *
cd gcgrid/data/GEOS_0.5x0.666_NA/lightning_NOx_201311
mget *
cd gcgrid/data/GEOS_0.25x0.3125_NA/lightning_NOx_201311
mget *

The OTD/LIS files are named with the following convention:

OTD-LIS-Local-Redist.CTH.v5.geos5.*
OTD-LIS-Local-Redist.CTH.v5.geosfp.*

Note that the version of the data has been updated from v4 to v5, in order to distinguish them from the files in the previous directory lightning_NOx_201101/.

Code updates have also been made to lightning_nox_mod.f in GEOS-Chem v9-02, so that GEOS-Chem reads in these new OTD/LIS local factors.

--Bob Y. 13:13, 18 June 2014 (EDT)

Update OTD/LIS factors for GEOS-FP through October 2014

These updates were validated with the 1-month benchmark simulation v10-01h and approved on Approved 01 May 2015.

Lee Murray has generated OTD-LIS factors for GEOS-FP through October 2014. These updates will be brought into GEOS-Chem v10-01 via HEMCO.

Users of GEOS-Chem v9-02 may use the updated OTD/LIS factors by following the steps below.

Download the updated OTD/LIS scale factors

You may obtain the latest OTD/LIS scale factors using:

ftp ftp.as.harvard.edu
cd gcgrid/data/GEOS_4x5/lightning_NOx_201408
mget *
cd gcgrid/data/GEOS_2x2.5/lightning_NOx_201408
mget *
cd gcgrid/data/GEOS_0.25x0.3125_NA/lightning_NOx_201408
mget *

Modify the code in lightning_nox_mod.F

(1) In routine READ_LOCAL_REDIST, change FILENAME to point to the lightning_NOx_201408 data directory and use the appropriate suffix. The code should now look like this:

      ! OTD-LIS local redist filename for CTH parameterization
      ! Now read from lightning_NOx_201408 (ltm, 7/23/14)
      FILENAME = 
     &        'lightning_NOx_201408/OTD-LIS-Local-Redist.CTH.v5.' // 
     &        TRIM( MODELNAME ) // '.' // GET_RES_EXT()

      ! Prefix directory to file name
      FILENAME = TRIM( DATA_DIR ) // TRIM( FILENAME ) 

      ! Append suffix for GEOS-FP nested grids
#if   defined( GEOS_FP ) && defined( NESTED_CH )
      FILENAME = TRIM( FILENAME ) // '.CH'
#elif defined( GEOS_FP ) && defined( NESTED_NA )
      FILENAME = TRIM( FILENAME ) // '.NA'
#elif defined( GEOS_FP ) && defined( NESTED_EU ) 
      FILENAME = TRIM( FILENAME ) // '.EU'
#elif defined( GEOS_FP ) && defined( NESTED_SE ) 
      FILENAME = TRIM( FILENAME ) // '.SE'
#endif

      ! Append suffix for developmental lightning redistribution files
      ! This file constrains lightning distribution from Apr. 2012-Oct. 2014
      ! (ltm, 12/10/2014)
#if   defined( GEOS_FP )
      FILENAME = TRIM( FILENAME ) // '.v20141210'
#endif

(2) In routine READ_LOCAL_REDIST, update the BETA factors for GEOS-FP. The code should now look like this:

#if   defined( GEOS_FP ) && defined( GRID4x5 ) 

      !---------------------------------------
      ! GEOS-FP: 4 x 5 global simulation
      !---------------------------------------

      ! Constrained with simulated "climatology" for
      ! April 2012 - Oct 2014. Will need to be updated as more
      ! met fields become available (ltm, 2014-12-10).
      IF ( ( GET_YEAR() .eq. 2012 .and. GET_MONTH() .ge. 4  ) .or.
     &     ( GET_YEAR() .eq. 2013                           ) .or.
     &     ( GET_YEAR() .eq. 2014 .and. GET_MONTH() .le. 10 ) ) THEN
         BETA = ANN_AVG_FLASHRATE / 82.373293d0
      ENDIF

#elif defined( GEOS_FP ) && defined( GRID2x25 )

      !---------------------------------------
      ! GEOS-FP: 2 x 2.5 global simulation
      !---------------------------------------
 
      ! Constrained with simulated "climatology" for
      ! April 2012 - Oct 2014. Will need to be updated as more
      ! met fields become available (ltm, 2014-12-10).
      IF ( ( GET_YEAR() .eq. 2012 .and. GET_MONTH() .ge. 4  ) .or.
     &     ( GET_YEAR() .eq. 2013                           ) .or.
     &     ( GET_YEAR() .eq. 2014 .and. GET_MONTH() .le. 10 ) ) THEN
         BETA = ANN_AVG_FLASHRATE / 260.40253d0
      ENDIF

#elif defined( GEOS_FP ) && defined( GRID025x0325 ) && defined( NESTED_CH )

      !---------------------------------------
      ! GEOS-FP: Nested China simulation
      !---------------------------------------
     
      ! Constrained with simulated "climatology" for
      ! Jan 2013 - Dec 2013. Will need to be updated as more
      ! met fields become available (ltm, 2014-10-22).
      IF ( ( cYr .eq. 2013 .and. cMt .ge. 1  )   .or. &
           ( cYr .eq. 2013 .and. cMt .le. 12 ) ) THEN
         BETA = ANN_AVG_FLASHRATE / 1052.6366d0
      ENDIF

#elif defined( GEOS_FP ) && defined( GRID025x03125 ) && defined( NESTED_NA )

      !---------------------------------------
      ! GEOS-FP: Nested N America simulation
      !---------------------------------------

      ! Constrained with simulated "climatology" for
      ! April 2012 - Oct 2014. Will need to be updated as more
      ! met fields become available (ltm, 2015-01-13).
      IF ( ( GET_YEAR() .eq. 2012 .and. GET_MONTH() .ge. 4  ) .or. 
     &     ( GET_YEAR() .eq. 2013                           ) .or.
     &     ( GET_YEAR() .eq. 2014 .and. GET_MONTH() .le. 10 ) ) THEN
         BETA = ANN_AVG_FLASHRATE / 720.10258d0
      ENDIF

(3) In routine INIT_LIGHTNING_NOX, change FILENAME to point to the lightning_NOx_201408 data directory.

     !=================================================================
     ! Read lightning CDF from Ott et al [JGR, 2010]. (ltm, 1/25/11)
     !=================================================================

     ! Define filename
     FILENAME = 'lightning_NOx_201408/light_dist.ott2010.dat'
     FILENAME = TRIM( DATA_DIR ) // TRIM( FILENAME ) 

--Melissa Sulprizio 14:19, 12 January 2015 (EST)

Previous issues that are now resolved

Limit flash rate density in hcox_lightnox_mod.F90

This update was included in GEOS-Chem 12.0.0.

Chris Holmes suggested:

When operating outside the time range that Lee has calculated scale factors, we could cap the flash/emission rate at the maximum value at the maximum value that occurs during the OTD/LIS record. That way we use Lee’s work when it’s available, but things don’t go crazy outside it.

Lee Murray wrote:

After we apply the OTD/LIS redistribution, you can globally limit the flash rate to its highest observed value of 4.2e-3 flashes / km2 / s from the newish ENTLN global product.
For the grid-independent lightning product, I'm using local upper values from ENTLN to limit unrealistically high values.
      !-----------------------------------------------------------
      ! (6a) Compute flash rate and apply OTD/LIS redistribution
      !-----------------------------------------------------------

      ! Convert [flashes/min] to [flashes/6h]
      RATE     = FLASHRATE * 360.0d0

      ! Apply regional or local OTD-LIS redistribution so that the 
      ! flashes occur in the right place. 
      RATE = RATE * REDIST

      ! Apply scaling factor to make sure annual average flash rate 
      ! equals that of the climatology. (ltm, 09/24/07)
      RATE = RATE * Inst%OTD_LIS_SCALE

      END IF ! LBOTTOM >  1
      END IF ! LTOP    >= LCHARGE 
      END IF ! LTOP    >  0 
      END IF ! LCHARGE >  1 

      ! Do not allow flash density to become unrealistically high
      IF ( ( RATE / 21600. / A_KM2 ) > 0.004177159 ) THEN
           RATE = 0.004177159 * 21600. * A_KM2
      END IF

      !-----------------------------------------------------------
      ! Eventually overwrite with values determined from imported
      ! flash rate 
      !-----------------------------------------------------------

--Melissa Sulprizio (talk) 12:11, 10 August 2018 (UTC)

Update WEST_NS_DIV to fix ozone overestimate in southern US

This update was validated with 1-month benchmark simulation v11-01f and 1-year benchmark simulation v11-01k-Run0. This version was approved on 19 Dec 2016.

From Travis et al. (2016, ACP):

We constrain the lightning NOx source with satellite data as described by Murray et al. (2012). Lightning NOx is mainly released at the top of convective updrafts following Ott et al. (2010). The standard GEOS-Chem model uses higher NOx yields for midlatitudes lightning (500 mol flash-1) than for tropical (260 mol flash-1) (Huntrieser et al. 2007, 2008; Hudman et al., 2007; Ott et al., 2010) with a fairly arbitrary boundary between the two at 23° N in North America and 35° N in Eurasia. Zhang et al. (2014) previously found that this leads GEOS-Chem to overestimate background ozone in the southwestern US and we find the same here for the eastern US and the Gulf of Mexico. We treat here all lightning in the 35° S-35° N band as tropical and this remove the distinction between North America and Eurasia.

Katie Travis wrote:

All that is needed [for this update] is to change the following line in hcox_lightnox_mod.F90 from
 REAL*8,  PARAMETER            :: WEST_NS_DIV   =  23d0
to
 REAL*8,  PARAMETER            :: WEST_NS_DIV   =  35d0

--Melissa Sulprizio (talk) 20:57, 2 December 2016 (UTC)