GEOS-Chem v9-01-03

From Geos-chem
Jump to: navigation, search

Overview

History

The table below shows the previous, current, and successive versions of GEOS-Chem:

Previous version This version Next version
GEOS-Chem v9-01-02 GEOS-Chem v9-01-03 GEOS-Chem v9-02
PUBLIC RELEASE 28 Nov 2011 PUBLIC RELEASE 14 Sep 2012 PROVISIONAL RELEASE TBD
View v9-01-02 benchmark history View v9-01-03 benchmark history View v9-02 benchmark history

--Bob Y. 10:21, 16 January 2014 (EST)

What's new in this version

GEOS-Chem v9-01-03 contains the following major updates and improvements.

v9-01-03a, v9-01-03b, etc. denote 1-month benchmark simulations, which are designed to evaluate GEOS-Chem's performance at intermediate stages of development.
Alternating stripes of color (white & cyan) in the table below group together features that were evaluated in the same 1-month benchmark.

Feature Type Submitted by Benchmark(s) Status
Fix for GLCO3/GLPAN bug in standard chemistry mechanism Bug Fix Fabien Paulot (Harvard) v9-01-03a Approved 08 Dec 2011
Updated acetone chemistry (ocean source & sink) Science Emily Fischer (Harvard) v9-01-03b Approved 14 Dec 2011
Retirement of obsolete GEIA biogenic emissions Structural Emily Fischer (Harvard)
Dylan Millet (U. Minnesota)
" " " "
OVOC dry deposition updates Science Jingqiu Mao (NOAA/GFDL) v9-01-03c Approved 19 Dec 2011
Improved sea salt emission & deposition Science Lyatt Jaeglé (U. Washington) v9-01-03d Approved 12 Jan 2012
Update dry deposition to use local surface pressure Science Lyatt Jaeglé (U. Washington); GEOS-Chem Support Team " " " "
Dust submicron size distribution for optics Science David Ridley (Colo. State) " " " "
Improved snow scavenging and washout parameterization Science Qiaoqiao Wang (Harvard) v9-01-03e
+ Rn-Pb-Be benchmark
Approved 02 Feb 2012
Structural changes to clarify science behind washout Structural Helen Amos (Harvard) " " " "
PARANOX ship plume emissions Science Geert Vinken (Eindhoven) v9-01-03f Approved 17 Feb 2012
Bug fixes for David Streets emissions for years 2005 and earlier Bug fix Jenny Fisher (Harvard) " " " "
Bug fix in emep_mod.F for offline simulations Bug fix GEOS-Chem Support Team v9-01-03g Approved 27 Feb 2012
Bug fix in nei2005_anthro_mod.F for offline simulations Bug fix GEOS-Chem Support Team " " " "
Bug fix to prevent crash in wetdep when encountering anomalously low PRECTOT values Bug fix GEOS-Chem Support Team " " " "
Minor fix in Rn-Pb-Be simulation to prevent missing drydep diagnostics Bug fix GEOS-Chem Support Team " " " "
Correct out-of-bounds error in offline aerosol simulation Bug fix GEOS-Chem Support Team " " " "
Bug fixes in diag3.F Bug fix Mat Evans (Leeds)
GEOS-Chem Support Team
" " " "
Bug fixes for nested-grid simulation Bug fix Dylan Millet (U. Minnesota) " " " "
Bug fix for reading Hg emissions Bug fix Jenny Fisher (Harvard) " " " "
Add scaling of lightning NOx for 2x2.5 MERRA simulations Science Lee Murray (Harvard)
Matt Cooper (Dalhousie)
" " " "
Initial source code modifications for GEOS-FP Structural GEOS-Chem Support Team " " " "
Hg(II) gas-aerosol partitioning Science Helen Amos (Harvard) v9-01-03h Approved 09 Mar 2012
Nested-grid CO2 Science Yuxuan Wang (Tsinghua) " " " "
Historical emission inventories of SO2, NOx, BC, and POA Science Eric Leibensperger (MIT) " " " "
CH4 simulation updates Science Kevin Wecht (Harvard) " " " "
Remove support for GEOS-3 meteorology Structural GEOS-Chem Support Team " " " "
Bug fix in streets anthro mod.F for offline simulations Bug fix Fabien Paulot (Harvard) " " " "
Grid-independent GEOS-Chem updates #1: Fixes to facilitate implementation of grid-independent code Structural GEOS-Chem Support Team v9-01-03i Approved 26 Mar 2012
Replace RETRO C2H6 emissions with emissions from offline C2H6 simulation Bug fix GEOS-Chem Support Team " " " "
Implementation of updated LAI code Structural GEOS-Chem Support Team v9-01-03j Approved 17 Apr 2012
Grid-independent GEOS-Chem updates #2: Preliminary interface to link driving GCM Structural GEOS-Chem Support Team " " Note: We have merged code into v9-01-03j that will allow GEOS-Chem to be driven by the NASA/GEOS-5 GCM, for the Grid-independent GEOS-Chem project.
Replace existing regridding routines with the MAP_A2A regridding package Structural Matt Cooper (Dalhousie)
Prasad Kasibhatla (Duke)
v9-01-03k Approved 27 Apr 2012
Daily and 3-hourly GFED3 biomass emissions Science Prasad Kasibhatla (Duke) v9-01-03l Approved 18 May 2012
Tropospheric bromine chemistry Science Justin Parrella (Harvard) v9-01-03m Approved 06 Jun 2012
Bug fix in routine ARSL1K Bug fix GEOS-Chem Support Team " " " "
Satellite-based NOx emission trends Science Lok Lamsal (NASA GSFC) v9-01-03n Approved 08 Jun 2012
Bug fixes for the MAP_A2A regridding algorithm Bug fix Lee Murray (Harvard) " " " "
Bug fixes for dicarbonyl simulation Bug fix GEOS-Chem Support Team " " " "
Stratospheric P and k (monthly climatological) Science Lee Murray (Harvard) v9-01-03o Approved 11 Jul 2012
Standardization of structural changes to facilitate the GEOS-Chem/GEOS-5 GCM interface Structural Eric Nielsen (NASA GSFC)
GEOS-Chem Support Team
v9-01-03p Approved 21 Aug 2012
Fixed minor bug in stratospheric chemistry module Bug Fix GEOS-Chem Support Team " " " "
Additional modifications that are activated with the DEVEL=yes option Structural GEOS-Chem Support Team " " " "
Bug fixes for regional emission masks Bug fix Lee Murray v9-01-03q Approved 22 Aug 2012
Updates to enhance the performance of the MAP_A2A regridding scheme Performance GEOS-Chem Support Team v9-01-03r Approved 28 Aug 2012
Size-dependent depletion factors for sea salt aerosol debromination Science Justin Parrella (Harvard)
GEOS-Chem Support Team
Last-minute update 28 Aug 2012
Fixes for numerical stability in the nested-grid simulation Bug fix GEOS-Chem Support Team Last-minute update 07 Sep 2012
Fix for regridding error in offline CO2 simulation Bug fix GEOS-Chem Support Team Post-release patch 22 Sep 2012
Bug fix for improving speedup in calcrate.F Bug fix GEOS-Chem Support Team Post-release patch 04 Oct 2012
Fixed typos in vdiff_mod.F90 Bug fix GEOS-Chem Support Team Post-release patch 04 Oct 2012
Bug fix for Intel Fortran Compiler 12 Bug fix GEOS-Chem Support Team Post-release patch 05 Oct 2012

--Bob Y. 14:16, 5 October 2012 (EDT)

New data directories

The following new data directories have been added for GEOS-Chem v9-01-03. You will have to download the directories relevant to your simulation.

You can download these directories with anonymous FTP or the Wget utility. For instructions, please see Chapter 2.4, Downloading the GEOS-Chem shared data directories in the GEOS-Chem Online User's Guide.

GEOS_0.5x0.666_NA/CH4_201203                # For nested-grid NA CH4 simulation
GEOS_0.5x0.666_NA/mercury_201203            # For nested-grid NA mercury simulation

GEOS_1x1/anth_scale_factors_201111          # Contains updated NOx scale factors derived from OMI
GEOS_1x1/PARANOX_201202                     # For PARANOX ship plume model

GEOS_2x2.5/CH4_201203                       # Updated CH4 simulation files
GEOS_2x2.5/TOMS_201203                      # Update TOMS O3 columns (currently only used for GEOS-FP)
GEOS_2x2.5/bromine_201205                   # Bromine emissions and stratospheric Bry concentrations
GEOS_2x2.5/historical_emissions_201203      # Historical emission inventories of BC and POA
GEOS_2x2.5/lightning_NOx_201101             # Contains new lightning redistribution file for MERRA 2x2.5
GEOS_2x2.5/strat_chem_201206                # Input files for applying linearized stratospheric chemistry

GEOS_4x5/CH4_201203                         # Updated CH4 simulation files
GEOS_4x5/TOMS_201203                        # Update TOMS O3 columns (currently only used for GEOS-FP)
GEOS_4x5/bromine_201205                     # Bromine emissions and stratospheric Bry concentrations
GEOS_4x5/historical_emissions_201203        # Historical emission inventories of BC and POA
GEOS_4x5/strat_chem_201206                  # Input files for applying linearized stratospheric chemistry

GEOS_NATIVE/FastJ_201204                    # Contains netCDF version of old ASCII file jv_atms.dat
GEOS_NATIVE/Olson_Land_Map_201203           # Olson 1992 and 2001 land map files in netCDF format
GEOS_NATIVE/MODIS_LAI_201204                # MODIS LAI files in netCDF format
GEOS_NATIVE/MAP_A2A_Regrid_201203           # Contains files with lon and lat edge info used for regridding
GEOS_NATIVE/GFED3_201203                    # Monthly, daily, and 3-hourly GFED3 biomass burning emissions
GEOS_NATIVE/TOMS_201203                     # Update TOMS O3 columns (currently only used for GEOS-FP)
GEOS_NATIVE/bromine_201205                  # Bromine emissions and stratospheric Bry concentrations
GEOS_NATIVE/historical_emissions_201203     # Historical emission inventories of SO2, NOx, BC, and POA
GEOS_NATIVE/strat_chem_201206               # Input files for applying linearized stratospheric chemistry

--Melissa Payer 14:12, 23 July 2012 (EDT)

Previous issues now resolved in v9-01-03

This section contains a list of improvements and bug fixes that have been included in GEOS-Chem v9-01-03. For a complete list of bug fixes in GEOS-Chem, please see our Bugs and fixes wiki page.

Bug fix for GLCO3 and GLPAN in standard mechanism

Obsolete.jpg

This update was tested in the 1-month benchmark simulation v9-01-03a and approved on 08 Dec 2011.

NOTE: SMVGEAR was removed from GEOS-Chem v11-01, when FlexChem was implemented.

Prior to v9-01-02, some species in the globchem.dat and ratj.d files were left as inactive, but should have been declared as dead. For a full description of this issue, please see this wiki post on our Chemistry Issues page.

--Bob Y. 17:07, 14 December 2011 (EST)
--Bob Yantosca (talk) 17:27, 15 November 2017 (UTC)

Structural changes to clarify science behind washout

This update was tested in the 1-month benchmark simulation v9-01-03e and approved on 02 Feb 2012.

Helen Amos wrote:

Qiaoqiao's aerosol scavenging updates should *not* be applied to HNO3. HNO3 should still be scavenged according to Eq (14) from Jacob (2000). This issue came up a while back and as a result I wrote code to split washout into three cases: aerosols, HNO3, and soluble gases. I restructured the washout code specifically to handle Qiaoqiao's updates and make sure HNO3 didn't change, so if no one objects I suggest these structure changes go into the std code with Qiaoqiao's updates.

--Melissa Payer 16:01, 23 January 2012 (EST)

Correct out-of-bounds error in offline aerosol simulation

This update was tested in the 1-month benchmark simulation v9-01-03g and approved on 27 Feb 2012.

When using the offline aerosol simulation, an out-of-bounds error was found to occur in array WTAERA within subroutine RDAER (aerosol_mod.F). To fix the error, add the following lines to INIT_COMODE (comode_mod.F) below the offline aerosol simulation IF statement:

        ALLOCATE( WTAREA( ITLOOP, NDUST+NAER ), STAT=AS )
        IF ( AS /= 0 ) CALL ALLOC_ERR( 'WTAREA' )
        WTAREA = 0d0

        ALLOCATE( WERADIUS( ITLOOP, NDUST+NAER ), STAT=AS )
        IF ( AS /= 0 ) CALL ALLOC_ERR( 'WERADIUS' )
        WERADIUS = 0d0

--Melissa Payer 17:47, 11 January 2012 (EST)

Bug fixes in diag3.F

Bug fix for mass transport flux diagnostics

This update was tested in the 1-month benchmark simulation v9-01-03g and approved on 27 Feb 2012. (Included in Adjoint v34h )

NOTE: We are phasing out binary punch diagnostics output, in favor of netCDF output.

Mat Evans wrote:

In diag3.f line 1740
  ARRAY(:,:,1:LD24) = MASSFLEW(:,:,LD24:1:-1,N) / SCALEDYN
Should be
  ARRAY(:,:,1:LD24) = MASSFLEW(:,:,LLPAR:LLPAR-LD24+1:-1,N) / SCALEDYN
And the same for LD25 Line 1773
And for same for LD26 line 1806
Everything is fine if LD24 = LLPAR but it seems to go wrong if you try to output a subset of the model levels..

--Melissa Payer 17:28, 12 January 2012 (EST)

Bug fix in ND67 sea level pressure diagnostic

This update was tested in the 1-month benchmark simulation v9-01-03g and approved on 27 Feb 2012.

NOTE: We are phasing out binary punch diagnostics output, in favor of netCDF output.

When plotting SLP in GAMAP for GEOS-5 at both 4°x5° and 2°x2.5° resolutions, the values appeared to be half of what they should be (SLP ~500 hPa globally).

In diag3.F, the lines:

              CASE ( 18 ) 
                 SCALEX = SCALE_ND67
                 UNIT   = 'hPa'

should be changed to:

              CASE ( 18 ) 
#if   defined( MERRA )
                 SCALEX = SCALE_A1     ! MERRA SLP is hourly
#else
                 SCALEX = SCALE_I6     ! Otherwise SLP is 6-h inst.
#endif
                 UNIT   = 'hPa'

As it is now, SCALE_ND67 = SCALE_A3 but SLP is an I6 field for GCAP, GEOS-3, GEOS-4, and GEOS-5.

--Melissa Payer 17:42, 12 January 2012 (EST)

Bug fixes for nested-grid simulation

This update was tested in the 1-month benchmark simulation v9-01-03g and approved on 27 Feb 2012.

Dylan Millet wrote:

My student Lu is running N. American nested grid with the v9-3-1b that Bob provided. We found a few minor glitches, mostly specific to the nested grid, that we thought we'd pass along. Perhaps they've already been fixed on your end.
  1. in land_mercury_mod.f, the variable "SOIL_EMS_FAC" is undefined for the 05x0666 case.
  2. the Makefiles in the GeosApm and GeosTomas directories each have an intermediate "else" that needs to be changed to an "elif"
  3. in tpcore_bc_mod.F, when reading in the boundary conditions if ITS_A_NEW_DAY, the call to ITS_A_NEW_DAY() needs to be ITS_A_NEW_DAY(.TRUE.) so that it will read in the boundary conditions actually at midnight. Otherwise it won't read them in at the start of the run.

--Melissa Payer 11:11, 18 January 2012 (EST)

Bug fix in streets_anthro_mod.F for offline simulations

Obsolete.jpg

This update was tested in the 1-month benchmark simulation v9-01-03h and approved on 09 Mar 2012. (Included in Adjoint v34h ).

This code was removed from GEOS-Chem v10-01 and higher versions. All emissions are now handled by HEMCO.

Please see this wiki post on our David Streets regional emissions for China and SE Asia wiki page for a full description of the issue.

--Bob Y. 15:12, 20 December 2012 (EST)
--Bob Yantosca (talk) 17:27, 15 November 2017 (UTC)

Bug fixes for dicarbonyls simulation

This update was tested in the 1-month benchmark simulation v9-01-03n and approved on 08 Jun 2012.

NOTE: The dicarbonyls simulation is not compatible with GEOS-Chem v9-02 and higher versions. But we anticipate that the dicarbonyls mechanism can be easily added into GEOS-Chem after the new FlexChem solver is implemented.

The following issues were discovered in the dicarbonyls simulation shortly after the release of GEOS-Chem v9-01-01. These will all been fixed in v9-01-03. Please follow the links below for more information:

  1. Out-of-bounds error in SOAG_LIGGIO_DIFF
  2. NL parameter needs to be increased

--Melissa Payer 12:34, 20 March 2012 (EDT)
--Bob Yantosca (talk) 21:06, 13 April 2016 (UTC)

Bug fixes for regional emission masks

Obsolete.jpg

This update was tested in the 1-month benchmark simulation v9-01-03q.

This code was removed from GEOS-Chem v10-01 and higher versions. All regional emissions masks are now applied by HEMCO.

Please see this wiki post on our Regridding in GEOS-Chem wiki page for a full description of the issue.

--Bob Y. 15:15, 20 December 2012 (EST)
--Bob Yantosca (talk) 17:27, 15 November 2017 (UTC)

Fixes for numerical stability in the nested-grid simulation

NOTE: Subroutine GET_RATES_INTERP was removed from GEOS-Chem v10-01 and higher versions. The GMI stratospheric chemistry prod and loss data are now read and regridded by the HEMCO emissions component.

Several minor fixes were added for the nested-grid simulation, mostly for numerical stability and more efficient memory usage.

(1) In GeosCore/strat_chem_mod.F90, routine GET_RATES_INTERP: we now avoid using array slices in the call to the TRANSFER_3D subroutine. This prevents the creation of large "temporary" arrays by the code. You will now see this code:
    !##############################################################################
    !###       call transfer_3D( array, array2 )
    !###
    !###       PROD(:,:,:,N) = ARRAY2
    !##############################################################################
           ptr_3D => PROD(:,:,:,N)
           call transfer_3D( array, ptr_3D )
           NULLIFY( ptr_3D )
(2) In GeosCore/tpcore_bc_mod.F:
  • Remove parallel loops from routine CLEAN_TPCORE_BC. Now just use F90 array assignment statements (i.e. BC = 0d0).
  • Use 0d0 instead of 0e0 to initialize arrays, in order to avoid loss of precision. The 0d0 constant will give a zero result out to 15 or 16 places of precision, rather than about 6 or 7.
(3) In GeosCore/transport_mod.F:
  • Add more calls to DEBUG_MSG after DO_WINDOW_TPCORE_BC and the array flipping.
We also made the structural changes described below. These do not affect any scientific results.
(4) In GeosCore/main.F:
  • Rename the argument to routine CHECK_STT_05x0666 from "after chemistry" to "end of chem section, before wetdep". An error may be flagged here on a timestep where chemistry isn't done.
(5) In Headers/define.h:
  • Removed C-preprocessor flags EXTERNAL_GRID, EXTERNAL_FORCING flags. These are now set by Makefile_Header.mk.
(6) In Makefile_header.mk:
  • Add the following new optional Makefile variables:
    • OPT: Lets you change the default optimization level (e.g. from -O2 (default) to -O1)
    • DEVEL=yes: Activates the DEVEL C-preprocessor switch for Grid-Independent model development.
    • EXTERNAL_GRID=yes: Activates the EXTERNAL_GRID C-preprocessor switch for Grid-Independent model development.
    • EXTERNAL_FORCING=yes: Activates the EXTERNAL_FORCING C-preprocessor switch for Grid-Independent model development.

--Bob Y. 16:20, 7 September 2012 (EDT)

Post-release patches

The following fixes were implemented after the official release of v9-01-03.

Fix for regridding error in offline CO2 simulation

We have corrected this issue as a post-release patch on 22 Sep 2012. This issue does not affect the full-chemistry simulations, only the CO2 simulation.

Ray Nassar wrote:

There is a bug in v9-01-03 for the CO2 simulation that causes a crash. It relates to the MAP_A2A regridding and the fact that the net terrestrial exchange file is named with geos.1x1 (360x181) although it is actually generic 1x1 (360x180) and it is trying to be read as geos.1x1.

Please see this wiki post on our CO2 simulation wiki page for a full description of the issue.

--Bob Y. 15:21, 20 December 2012 (EST)

Bug fix for improving speedup in calcrate.F

Obsolete.jpg

NOTE: SMVGEAR was removed from GEOS-Chem v11-01, when FlexChem was implemented.

We have just discovered a issue after the release of v9-01-03 that may be causing the full-chemistry simulation to take longer to execute than is necessary. When the Bromine chemistry updates were added, a this DO loop over all lons/lats/levels was placed within subroutine calcrate.F:

      REAL*8  :: QLIQ(IIPAR,JJPAR,LLPAR), QICE(IIPAR,JJPAR,LLPAR)
      darea  = 0d0
#if defined( GEOS_5 ) || defined( MERRA ) || defined( GEOS_57 )
      QICE      = QI
      QLIQ      = QL
#else
      ! GEOS-4 and GCAP do not have QI or QL variables. Make same assumption
      ! as we do in wetscav_mod.F.
      DO I=1,IIPAR
      DO J=1,JJPAR
      DO L=1,LLPAR
         IF ( T(I,J,L) .LE. 248d0 ) THEN
            QLIQ(I,J,L) = 0d0
         ELSE IF ( T(I,J,L) .GE. 268d0 ) THEN
            QLIQ(I,J,L) = 1d-6
         ELSE
            QLIQ(I,J,L) = 1d-6 * ( ( T(I,J,L) - 248d0 ) / 20d0 )
         ENDIF
      ENDDO
      ENDDO
      ENDDO
      QICE = 1d-6 - QLIQ
#endif

But calcrate.F itself is called from within a parallel loop from a higher level routine. This means that calcrate.F only works on a few grid boxes at a time, and not the whole globe. The extra DO loop over all lons/lats/levels from within calcrate.F is therefore unnecessary. The extra iterations DO NOT appear to impact the scientific results, but they do add extra CPU cycles to the simulation.

We have rewritten the QICE and QLIQ arrays so that they are dimensioned with KBLOOP instead of IIPAR,JJPAR,LLPAR. We have also disabled a debug print statement in the routine cldice_HbrHOBr_rxn.F.

We have pushed update this to the GEOS_Chem repository on 04 Oct 2012 (Git commit named "Remove potential parallelization bottleneck in calcrate.F").

--Bob Y. 12:27, 4 October 2012 (EDT)
--Bob Yantosca (talk) 17:28, 15 November 2017 (UTC)

Fixed typos in vdiff_mod.F90

Obsolete.jpg

This code was removed from GEOS-Chem v10-01 and higher versions. All emissions are now handled by HEMCO.

When we call routine SETEMIS from within the non-local PBL mixing scheme (VDIFF), then we have to change this line:

!-------------------------------------------------------------------------------
! Prior to 10/2/12:
! Need to also pass a value to the am_I_Root argument of setemis.F
! (mpayer, bmy, 10/2/12)
!          CALL SETEMIS( EMISRR, EMISRRN )
!-------------------------------------------------------------------------------
          CALL SETEMIS( EMISRR, EMISRRN, .TRUE. )

The third argument of SETEMIS is am_I_Root, which is a modification for the Grid-independent GEOS-Chem project.

--Bob Y. 12:40, 4 October 2012 (EDT)
--Bob Yantosca (talk) 17:29, 15 November 2017 (UTC)

Bug fix for Intel Fortran Compiler 12

Prasad Kasibhatla wrote:

I am experiencing the IFORT 12 compile failure of GEOS-Chem v9-01-03 with nested grid options turned on in define.h. The compile seems to be failing in the Stratospheric chemistry module GeosCore/strat_chem_mod.F90.

Please see this wiki post on our Intel Fortran Compiler wiki page for a full description of the issue. Also see our Known issues caused by compiler bugs wiki page for a complete list reported problems in GEOS-Chem that are known to be caused by bugs in the Intel or PGI fortran compilers.

--Bob Y. 15:27, 20 December 2012 (EST)
--Bob Yantosca (talk) 14:41, 14 April 2016 (UTC)

Outstanding issues not yet resolved in v9-01-03

The following issues shall be corrected in a future version.

Negative ship emissions caused by PARANOX

NOTE: PARANOX is now implemented as a HEMCO extension in GEOS-Chem v10-01 and higher versions.

Bob Yantosca wrote:

I found that in some grid boxes the INT_OPE quantity from PARANOX is going negative, which is probably causing my runs to die. Here are some outputs for 2005/08/01 at 1:30 GMT (the problem time):
   With TURBDAY PBL mixing (run dies):

   ### JLOOP   :        12447          11=IDEOX
   ### int_ope :  -0.1077172
   ### frac_nox:   0.7866639
   ### ship    :   0.425996044565739 
   ### EMIS_BL :  -6.823105207003066E+019
   ### VOLUME  :   1.043702600336568E+018
   ### REMIS :   -65.3740366729256

   With Non-local PBL mixing (run does not die):

   ### JLOOP   :        12447          11=IDEOX
   ### int_ope :  -3.7102826E-02
   ### frac_nox:   0.7883647
   ### ship    :   0.425996044565739
   ### EMIS_BL :  -2.331458316043083E+019
   ### VOLUME  :   1.043702600336568E+018
   ### REMIS :   -22.3383396313399
Note that in both cases, INT_OPE is negative. However, when TURBDAY PBL mixing is used, INT_OPE causes the REMIS emissions array to be 3X more negative. This probably causes SMVGEAR not to be able to converge. (Why it doesn’t choke when the Non-local PBL mixing (aka NLPBL) is turned on may just be a matter of how sensitive SMVGEAR is to negative inputs; maybe that run would eventually die at some later point, we don’t know.)
I have implemented a kludge in this section of calcrate.F in order to prevent negative emissions from going to the solver:
              !========================================================
              ! SHIP O3 emissions [molec/box/s]
              ! Distribute emissions thru the entire boundary layer
              !========================================================
              . . .  

              ! Loop over the boundary layer
              DO L = 1, TOP
                 . . .
                 
                 IF ( JLOOP /= 0 ) THEN
                    . . .
                   
                    ! Convert ship O3 emissions from [molec NO/box/s]
                    ! to [molec NO/cm3/s] and store in the REMIS array
                    REMIS(JLOOP,IDEOX) = REMIS(JLOOP,IDEOX) + 
    &                                    EMIS_BL / VOLUME(JLOOP)

                    !%%% DO NOT LET NEGATIVE SHIP EMISSIONS GET  
                    !%%% ARCHIVED INTO REMIS (bmy, mpayer, 6/20/12)
                    IF ( REMIS(JLOOP,IDEOX) < 0d0 ) THEN
                       REMIS(JLOOP,IDEOX) = 0d0
                    ENDIF
                 ENDIF
              ENDDO

Geert Vinken wrote:

Negative O3 emissions are physical, as O3 could be titrated by the NO in the plume. Especially during night and winter conditions I expect this to happen. I put them in as negative emissions, do you think this should be changed somehow?

Bob Yantosca wrote:

I am not 100% convinced that negative emissions are good for the chemical solver. We need to study that further. Even if we do not apply the above kludge when NLPBL=.TRUE. then we don't really know if that will cause the code to choke after several months. Until we get a chance to study this in more depth I would keep the kludge as-is, and make a note of it for now.
Also, the way we have implemented the kludge is that we do allow for negative production efficiencies to reduce the total emissions, but just that we don't reduce them below zero. I think that is a reasonable compromise for the time being.

--Bob Y. 12:07, 29 August 2012 (EDT)

IFORT 12 issues

Some users have reported compilation issues with version 12 of the Intel Fortran Compiler. For a complete list of issues in GEOS-Chem that are known to be caused by compiler bugs, please see our Known issues caused by compiler bugs wiki page.

--Bob Y. 12:42, 4 October 2012 (EDT)
--Bob Yantosca (talk) 14:44, 14 April 2016 (UTC)

Bug fix in hdf_mod.F

This update was validated with 1-month benchmark simulation v9-02b (approved on 29 Oct 2012).

NOTE: We are phasing out the HDF satellite diagnostics, in favor of netCDF output.

Sajeev Philip wrote:

Bug fix in hdf_mod.F (line 155):

     DO J = 0, NJ-1
        LAT(J+1) = GET_YMID(J+JMIN,1,1)
     ENDDO

should be

     DO J = 0, NJ-1
        LAT(J+1) = GET_YMID(1,J+JMIN,1)
     ENDDO

Otherwise, LAT variable in HDF files will be wrong.

Tagged CO simulation dies with compilation errors

We discovered some minor errors in the tagged CO simulation after the release of v9-01-03. These are now corrected in GEOS-Chem v9-02.

--Bob Y. 11:30, 23 October 2012 (EDT)

Bug fix in nei2005_anthro_mod.F

Obsolete.jpg

This code was removed from GEOS-Chem v10-01 and higher versions. All emissions are now handled by HEMCO.

The following bug in the EPA/NEI2005 nested-grid emissions was present in GEOS-Chem v9-01-03. This bug was corrected in GEOS-Chem v9-02. Thanks to Sajeev Philip for implementing the fix.

--Bob Y. 11:09, 25 October 2012 (EDT)
--Bob Yantosca (talk) 17:29, 15 November 2017 (UTC)

Bug fix for non-NOx scale factors

Obsolete.jpg

In GEOS-Chem v10-01 and higher versions, all emission scale factors are applied by HEMCO.

The following bug in the anthropogenic scaling factors was present in GEOS-Chem v9-01-03. This bug was corrected in GEOS-Chem v9-02.

--Melissa Sulprizio 16:23, 4 October 2013 (EDT)
--Bob Yantosca (talk) 17:29, 15 November 2017 (UTC)