From 22acb3a3725d4b6e60cdb2d40be081822a67972d Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Wed, 30 Oct 2024 09:03:20 -0400 Subject: [PATCH 01/10] Fix typos in HEMCO_Config.rc.CH4 causing double counting of mobile combustion emissions The emission for GHGI_EE_COAST_OTHER_MCOMB in HEMCO_Config.rc.CH4 was incorrectly assigned a hierarcy of 100 (added to regional US emissions) when it should have been 1 (added to EDGAR global emissions). The wrong mask was also applied to this field - it should be 1009 (CONUS_MASK_MIRROR) and not 1008 (CONUS_MASK). These typos caused mobile combustion emissions to be double counted over the US. The typos were not present in the HEMCO_Config.rc files for carbon simulations. Also made other white space and comment updates to HEMCO_Config.rc files for the carbon and CH4 simulations to ensure consistency between the two simulations. Signed-off-by: Melissa Sulprizio --- CHANGELOG.md | 1 + .../HEMCO_Config.rc.CH4 | 18 ++++++++--------- .../HEMCO_Config.rc.carbon | 20 +++++++++---------- .../HEMCO_Config.rc.carbon | 20 +++++++++---------- 4 files changed, 30 insertions(+), 29 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 922526803..27b0d05f0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Added fix to turn on ship emissions for CO2 in the carbon simulation - Updated `HEMCO_Config.rc` for carbon simulation to read data based on carbon species used - Fixed entries for CO2 emissions in `ExtData.rc.carbon` +- Fixed typos in `HEMCO_Config.rc` for CH4 simulations causing mobile combustion emissions to be double counted ## [Unreleased] - TBD ### Added diff --git a/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.CH4 b/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.CH4 index 6d90088d3..c4d504b86 100644 --- a/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.CH4 +++ b/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.CH4 @@ -135,6 +135,7 @@ VerboseOnCores: root # Accepted values: root all )))UseTotalPriorEmis (((.not.UseTotalPriorEmis + #============================================================================== # --- Gridded GHGI v2 (Maasakkers et al., submitted to ES&T, 2023) --- # @@ -251,7 +252,7 @@ VerboseOnCores: root # Accepted values: root all 0 GHGI_EE_COAST_GAS_TRANSMISSION - - - - - - CH4 1009 2 5 0 GHGI_EE_GAS_POSTMETER $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_Supp_1B2b_PostMeter 2012-2020/1/1/0 C xy molec/cm2/s CH4 1008 2 100 -### Coal ### +### Coal ### 0 GHGI_EE_COAL_UNDERGROUND $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_1B1a_Underground_Coal 2012-2020/1/1/0 C xy molec/cm2/s CH4 1008 3 100 0 GHGI_EE_COAST_COAL_UNDERGROUND - - - - - - CH4 1009 3 5 0 GHGI_EE_COAL_SURFACE $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_1B1a_Surface_Coal 2012-2020/1/1/0 C xy molec/cm2/s CH4 1008 3 100 @@ -281,11 +282,11 @@ VerboseOnCores: root # Accepted values: root all ### Rice ### 0 GHGI_EE_RICE $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_3C_Rice_Cultivation 2012-2020/1-12/1/0 C xy molec/cm2/s CH4 58/1008 7 100 -0 GHGI_EE_COAST_RICE - - - - -y - CH4 58/1009 7 1 +0 GHGI_EE_COAST_RICE - - - - - - CH4 58/1009 7 1 ### Other Anthro ### 0 GHGI_EE_OTHER_MCOMB $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_1A_Combustion_Mobile 2012-2020/1/1/0 C xy molec/cm2/s CH4 1008 8 100 -0 GHGI_EE_COAST_OTHER_MCOMB - - - - - - CH4 1008 8 100 +0 GHGI_EE_COAST_OTHER_MCOMB - - - - - - CH4 1009 8 1 0 GHGI_EE_OTHER_SCOMB $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_1A_Combustion_Stationary 2012-2020/1-12/1/0 C xy molec/cm2/s CH4 50/1008 8 100 0 GHGI_EE_COAST_OTHER_SCOMB - - - - - - CH4 50/1009 8 1 0 GHGI_EE_OTHER_PIND $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_2B8_Industry_Petrochemical 2012-2020/1/1/0 C xy molec/cm2/s CH4 1008 8 100 @@ -411,7 +412,7 @@ VerboseOnCores: root # Accepted values: root all )))EDGARv8 #============================================================================== -# CEDS (historical) or Shared Socioeconomic Pathways (future) +# --- CEDS (historical) or Shared Socioeconomic Pathways (future) --- #============================================================================== (((CMIP6_SFC_LAND_ANTHRO 0 CMIP6_CH4_AGR $ROOT/CMIP6/v2021-01/$GCAPSCENARIO/$GCAPSCENARIO_$YYYY.nc4 CH4_agr 1970-2014/1-12/1/0 C xy kg/m2/s CH4 - 4 1 @@ -427,7 +428,7 @@ VerboseOnCores: root # Accepted values: root all )))CMIP6_SHIP #============================================================================== -# BB4MIPs historical / SSP future biomass burning inventories +# --- BB4MIPs historical / SSP future biomass burning inventories --- #============================================================================== (((BB4MIPS 0 CMIP6_BB_CH4 $ROOT/CMIP6/v2021-01/$GCAPSCENARIO/$GCAPSCENARIO_$YYYY.nc4 CH4_bbn 1750-2015/1-12/1/0 C xyL=1:PBL kg/m2/s CH4 75 9 1 @@ -446,7 +447,7 @@ VerboseOnCores: root # Accepted values: root all #============================================================================== # --- CH4: JPL WetCHARTs v1.0 (Bloom et al., https://doi.org/10.3334/ORNLDAAC/1502) --- # -# # Use updated files (v2024-01); these are COARDS-compliant. +# Use updated files (v2024-01); these are COARDS-compliant. #============================================================================== (((JPL_WETCHARTS 0 JPLW_CH4 $ROOT/CH4/v2024-01/JPL_WetCharts/HEensemble/JPL_WetCharts_2010-2019.Ensemble_Mean.0.5x0.5.nc emi_ch4 2010-2019/1-12/1/0 C xy molec/cm2/s CH4 - 10 1 @@ -492,7 +493,7 @@ VerboseOnCores: root # Accepted values: root all )))FUNG_SOIL_ABSORPTION #============================================================================== -# --- # Soil absorption from MeMo model (Murguia-Flores et al. 2018, GMD) --- +# --- Soil absorption from MeMo model (Murguia-Flores et al. 2018, GMD) --- # # - Multiply soil absorption by -1 to get a "negative" flux #============================================================================== @@ -619,7 +620,7 @@ VerboseOnCores: root # Accepted values: root all # --- GEOS-Chem boundary condition file --- #============================================================================== (((GC_BCs -* BC_ $ROOT/SAMPLE_BCs/v2021-07/CH4/GEOSChem.BoundaryConditions.$YYYY$MM$DD_0000z.nc4 SpeciesBC_?ADV? 1900-2100/1-12/1-31/* EFY xyz 1 * - 1 1 +* BC_ $ROOT/SAMPLE_BCs/v2021-07/CH4/GEOSChem.BoundaryConditions.$YYYY$MM$DD_0000z.nc4 SpeciesBC_?ADV? 1900-2100/1-12/1-31/* EFY xyz 1 * - 1 1 )))GC_BCs #============================================================================== @@ -933,7 +934,6 @@ ${RUNDIR_GLOBAL_Cl} # Country/region masks #============================================================================== -# Use updated files (v2024-01); these are COARDS-compliant. (((Scarpelli_Mexico 1001 MEX_MASK $ROOT/MASKS/v2024-04/Mexico_Mask.01x01.nc MASK 2000/1/1/0 C xy 1 1 -118/17/-95/33 1010 MEX_MASK_MIRROR $ROOT/MASKS/v2024-04/Mexico_Mask_Mirror.01x01.nc MASK 2000/1/1/0 C xy 1 1 -118/17/-95/33 diff --git a/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon b/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon index e643c0581..dfea74d91 100644 --- a/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon +++ b/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon @@ -240,8 +240,8 @@ Mask fractions: false 0 GHGI_COAST_WASTEWATER_IND - - - - - - CH4 1009 6 1 ### Rice ### -0 GHGI_RICE $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_3C_Rice_Cultivation 2012-2018/1-12/1/0 EFY xy molec/cm2/s CH4 58/1008 7 100 -0 GHGI_COAST_RICE - - - - - - CH4 58/1009 7 1 +0 GHGI_RICE $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_3C_Rice_Cultivation 2012-2018/1-12/1/0 EFY xy molec/cm2/s CH4 58/1008 7 100 +0 GHGI_COAST_RICE - - - - - - CH4 58/1009 7 1 ### Other Anthro ### 0 GHGI_OTHER_MCOMB $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_1A_Combustion_Mobile 2012-2018/1/1/0 EFY xy molec/cm2/s CH4 1008 8 100 @@ -324,7 +324,7 @@ Mask fractions: false ### Rice ### 0 GHGI_EE_RICE $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_3C_Rice_Cultivation 2012-2020/1-12/1/0 C xy molec/cm2/s CH4 58/1008 7 100 -0 GHGI_EE_COAST_RICE - - - - - - CH4 58/1009 7 1 +0 GHGI_EE_COAST_RICE - - - - - - CH4 58/1009 7 1 ### Other Anthro ### 0 GHGI_EE_OTHER_MCOMB $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_1A_Combustion_Mobile 2012-2020/1/1/0 C xy molec/cm2/s CH4 1008 8 100 @@ -399,7 +399,7 @@ Mask fractions: false )))Scarpelli_Canada #============================================================================== -# --- CH4: Global Fuel Exploitation Inventory (GFEI v2, Scarpelli et al., 2021) +# --- CH4: Global Fuel Exploitation Inventory (GFEI v2, Scarpelli et al., 2021) --- # # This inventory will replace EDGAR (oil, gas, & coal) #============================================================================== @@ -477,11 +477,11 @@ Mask fractions: false )))BB4MIPS #============================================================================== -# --- CH4: biomass burning --- +# --- CH4: QFED2 biomass burning --- +# +# Use QFED v2.4r8 for CH4. The data in QFED/v2014-09 are for v2.4r5 and have +# been found to be buggy for CH4 (same emissions on each day). #============================================================================== - -# --- QFED v2.4r8 --- -# NOTE: Use this instead of data in QFED/v2014-09 (these are buggy) (((QFED2 0 QFED_CH4 $ROOT/CH4/v2017-10/QFED/QFEDv2.4r8.emis_ch4.$YYYY.nc emi_ch4 2009-2015/1-12/1-31/0 C xy molec/cm2/s CH4 - 9 2 )))QFED2 @@ -1394,7 +1394,7 @@ ${RUNDIR_CO2_COPROD} (((EMISSIONS #============================================================================== -# --- Scale factors for CH4 emissions ---- +# --- CH4: Seasonal scaling factors ---- #============================================================================== (((USE_CH4_DATA @@ -1415,7 +1415,7 @@ ${RUNDIR_CO2_COPROD} )))GHGI_v2.or.GHGI_v2_Express_Ext #------------------------------------------------------------------------------ -# --- Scarpelli et al Mexico manure & rice scale factors --- +# --- Scarpelli_Mexico manure & rice scale factors --- #------------------------------------------------------------------------------ (((Scarpelli_Mexico 10 MANURE_SF $ROOT/CH4/v2017-10/Seasonal_SF/EMICH4_Manure_ScalingFactors.WithClimatology.nc sf_ch4 2008-2016/1-12/1/0 C xy 1 1 diff --git a/run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon b/run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon index ee31e6ee9..5dfd08450 100644 --- a/run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon +++ b/run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon @@ -240,8 +240,8 @@ Mask fractions: false 0 GHGI_COAST_WASTEWATER_IND - - - - - - CH4 1009 6 1 ### Rice ### -0 GHGI_RICE $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_3C_Rice_Cultivation 2012-2018/1-12/1/0 EFY xy molec/cm2/s CH4 58/1008 7 100 -0 GHGI_COAST_RICE - - - - - - CH4 58/1009 7 1 +0 GHGI_RICE $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_3C_Rice_Cultivation 2012-2018/1-12/1/0 EFY xy molec/cm2/s CH4 58/1008 7 100 +0 GHGI_COAST_RICE - - - - - - CH4 58/1009 7 1 ### Other Anthro ### 0 GHGI_OTHER_MCOMB $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_1A_Combustion_Mobile 2012-2018/1/1/0 EFY xy molec/cm2/s CH4 1008 8 100 @@ -324,7 +324,7 @@ Mask fractions: false ### Rice ### 0 GHGI_EE_RICE $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_3C_Rice_Cultivation 2012-2020/1-12/1/0 C xy molec/cm2/s CH4 58/1008 7 100 -0 GHGI_EE_COAST_RICE - - - - - - CH4 58/1009 7 1 +0 GHGI_EE_COAST_RICE - - - - - - CH4 58/1009 7 1 ### Other Anthro ### 0 GHGI_EE_OTHER_MCOMB $ROOT/CH4/v2023-07/Gridded_GHGI_v2/Express_Extension_Gridded_GHGI_Methane_v2_$YYYY.nc emi_ch4_1A_Combustion_Mobile 2012-2020/1/1/0 C xy molec/cm2/s CH4 1008 8 100 @@ -399,7 +399,7 @@ Mask fractions: false )))Scarpelli_Canada #============================================================================== -# --- CH4: Global Fuel Exploitation Inventory (GFEI v2, Scarpelli et al., 2021) +# --- CH4: Global Fuel Exploitation Inventory (GFEI v2, Scarpelli et al., 2021) --- # # This inventory will replace EDGAR (oil, gas, & coal) #============================================================================== @@ -477,11 +477,11 @@ Mask fractions: false )))BB4MIPS #============================================================================== -# --- CH4: biomass burning --- +# --- CH4: QFED2 biomass burning --- +# +# Use QFED v2.4r8 for CH4. The data in QFED/v2014-09 are for v2.4r5 and have +# been found to be buggy for CH4 (same emissions on each day). #============================================================================== - -# --- QFED v2.4r8 --- -# NOTE: Use this instead of data in QFED/v2014-09 (these are buggy) (((QFED2 0 QFED_CH4 $ROOT/CH4/v2017-10/QFED/QFEDv2.4r8.emis_ch4.$YYYY.nc emi_ch4 2009-2015/1-12/1-31/0 C xy molec/cm2/s CH4 - 9 2 )))QFED2 @@ -1394,7 +1394,7 @@ ${RUNDIR_CO2_COPROD} (((EMISSIONS #============================================================================== -# --- Scale factors for CH4 emissions ---- +# --- CH4: Seasonal scaling factors ---- #============================================================================== (((USE_CH4_DATA @@ -1415,7 +1415,7 @@ ${RUNDIR_CO2_COPROD} )))GHGI_v2.or.GHGI_v2_Express_Ext #------------------------------------------------------------------------------ -# --- Scarpelli et al Mexico manure & rice scale factors --- +# --- Scarpelli_Mexico manure & rice scale factors --- #------------------------------------------------------------------------------ (((Scarpelli_Mexico 10 MANURE_SF $ROOT/CH4/v2017-10/Seasonal_SF/EMICH4_Manure_ScalingFactors.WithClimatology.nc sf_ch4 2008-2016/1-12/1/0 C xy 1 1 From d5889c7672a8cccbb569289f0715d84290b27864 Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Wed, 30 Oct 2024 12:00:42 -0400 Subject: [PATCH 02/10] Modify tagCO simulation to use GFED emissions and v5 OH for validation against carbon simulation The carbon simulation currently uses GFED biomass burning emissions by default (for all carbon species). It also uses GEOS-Chem v5 OH which is currently required for CH4 in the carbon simulation. To simplify validation of the CO in the tagCO simulation vs the carbon simulation, we update the HEMCO_Config.rc.tagCO to use the same options. Also made a minor change to the OCS biomass burning diagnostic name for consistency with the other carbon species. Signed-off-by: Melissa Sulprizio --- CHANGELOG.md | 1 + .../HEMCO_Config.rc.tagCO | 32 +++++++++++++++++-- .../HEMCO_Diagn.rc.carbon | 2 +- 3 files changed, 32 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 27b0d05f0..2df26359f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ### Changed - Renamed `Emiss_Carbon_Gases` to `CO2_Production` in `carbon_gases_mod.F90` - Updated start date and restart file for CO2 and tagCO simulations for consistency with carbon simulations +- Modified tagCO simulation to use GFED4 biomass burning emissions and GEOS-Chem v5 OH fields for consistency with carbon simulation ### Fixed - Added a fix to skip the call to KPP when only CO2 is defined in the carbon simulation diff --git a/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.tagCO b/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.tagCO index a9e02c190..49c972ac6 100644 --- a/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.tagCO +++ b/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.tagCO @@ -116,7 +116,7 @@ Mask fractions: false --> CMIP6_AIRCRAFT : false # 1850-2100 --> CMIP6_SHIP : false # 1850-2100 # ----- BIOMASS BURNING EMISSIONS ----------------------------- - --> QFED2 : true # 2000-2020 + --> QFED2 : false # 2000-2020 --> GFAS : false # 2003-2021 --> BB4MIPS : false # 1850-2100 # ----- NON-EMISSIONS DATA ------------------------------------ @@ -139,6 +139,11 @@ Mask fractions: false --> Monoterp to SOAS : 0.050 --> Othrterp to SOAP : 0.050 --> Othrterp to SOAS : 0.050 +111 GFED : on CH4/CO/CO2 + --> GFED4 : true + --> GFED_daily : true + --> GFED_3hourly : false + --> Scaling_CO : 1.05 ### END SECTION EXTENSION SWITCHES ### @@ -838,6 +843,28 @@ Mask fractions: false 108 CLM4_PFT_CROP $ROOT/MEGAN/v2018-05/CLM4_PFT.geos.025x03125.v201805.nc PFT_CROP 2000/1/1/0 C xy 1 * - 1 1 )))MEGAN +#============================================================================== +# --- GFED biomass burning emissions (Extension 111) +# NOTE: These are the base emissions in kgDM/m2/s. +#============================================================================== + +(((GFED4 +111 GFED_TEMP $ROOT/GFED4/v2023-03/$YYYY/GFED4_gen.025x025.$YYYY$MM.nc DM_TEMP 2010-2023/1-12/01/0 RF xy kgDM/m2/s * - 1 1 +111 GFED_AGRI $ROOT/GFED4/v2023-03/$YYYY/GFED4_gen.025x025.$YYYY$MM.nc DM_AGRI 2010-2023/1-12/01/0 RF xy kgDM/m2/s * - 1 1 +111 GFED_DEFO $ROOT/GFED4/v2023-03/$YYYY/GFED4_gen.025x025.$YYYY$MM.nc DM_DEFO 2010-2023/1-12/01/0 RF xy kgDM/m2/s * - 1 1 +111 GFED_BORF $ROOT/GFED4/v2023-03/$YYYY/GFED4_gen.025x025.$YYYY$MM.nc DM_BORF 2010-2023/1-12/01/0 RF xy kgDM/m2/s * - 1 1 +111 GFED_PEAT $ROOT/GFED4/v2023-03/$YYYY/GFED4_gen.025x025.$YYYY$MM.nc DM_PEAT 2010-2023/1-12/01/0 RF xy kgDM/m2/s * - 1 1 +111 GFED_SAVA $ROOT/GFED4/v2023-03/$YYYY/GFED4_gen.025x025.$YYYY$MM.nc DM_SAVA 2010-2023/1-12/01/0 RF xy kgDM/m2/s * - 1 1 + +(((GFED_daily +111 GFED_FRAC_DAY $ROOT/GFED4/v2023-03/$YYYY/GFED4_dailyfrac_gen.025x025.$YYYY$MM.nc GFED_FRACDAY 2010-2023/1-12/1-31/0 RF xy 1 * - 1 1 +)))GFED_daily + +(((GFED_3hourly +111 GFED_FRAC_3HOUR $ROOT/GFED4/v2023-03/$YYYY/GFED4_3hrfrac_gen.025x025.$YYYY$MM.nc GFED_FRAC3HR 2010-2023/1-12/1/0-23 RF xy 1 * - 1 1 +)))GFED_3hourly +)))GFED4 + )))EMISSIONS ############################################################################### @@ -878,7 +905,8 @@ Mask fractions: false # --- Quantities needed for CO chemistry --- #============================================================================== (((GLOBAL_OH -${RUNDIR_GLOBAL_OH} +# Revert to GEOS-Chem v5 OH for validation with carbon simulation +* GLOBAL_OH $ROOT/OH/v2022-11/v5-07-08/OH_3Dglobal.geos5.72L.4x5.nc OH 1985/1-12/1/0 C xyz kg/m3 * - 1 1 )))GLOBAL_OH (((PROD_CO_CH4 ${RUNDIR_PCO_CH4} diff --git a/run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon b/run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon index 47504a22c..2ab560915 100644 --- a/run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon +++ b/run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon @@ -62,6 +62,6 @@ EmisCO2_BiomassBurn CO2 111 -1 -1 2 kg/m2/s CO2_biomass_burning_emi ############################################################################### EmisOCS_Total OCS 0 -1 -1 3 kg/m2/s OCS_emission_flux_from_all_sectors EmisOCS_Anthro OCS 0 1 -1 2 kg/m2/s OCS_emission_flux_from_anthropogenic -EmisOCS_Bioburn OCS 0 2 -1 2 kg/m2/s OCS_emission_flux_from_biomass_burning +EmisOCS_BiomassBurn OCS 0 2 -1 2 kg/m2/s OCS_emission_flux_from_biomass_burning EmisOCS_MissingOcean OCS 0 3 -1 2 kg/m2/s OCS_emission_flux_from_missing_ocean EmisOCS_Ocean OCS 0 4 -1 2 kg/m2/s OCS_emission_flux_from_ocean From 4dc8c60bc93afb5d8cafe9438b5c38008d831ecf Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Fri, 1 Nov 2024 16:57:45 -0400 Subject: [PATCH 03/10] Add missing update to FIRST flag in carbon_based_mod.F90 This update prevents printing a message every timestep intended only to be printed once. Signed-off-by: Lizzie Lundgren --- GeosCore/carbon_gases_mod.F90 | 3 +++ 1 file changed, 3 insertions(+) diff --git a/GeosCore/carbon_gases_mod.F90 b/GeosCore/carbon_gases_mod.F90 index 4a91aeb40..7a30db321 100644 --- a/GeosCore/carbon_gases_mod.F90 +++ b/GeosCore/carbon_gases_mod.F90 @@ -238,6 +238,9 @@ SUBROUTINE CO2_Production( Input_Opt, State_Chm, State_Diag, & Spc => NULL() ENDIF + ! Reset first-time flag + FIRST = .FALSE. + ! Free pointers for safety's sake Spc => NULL() Ptr2D => NULL() From 7e793e43376d95b39605539ca4632998a3b17466 Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Fri, 1 Nov 2024 17:00:51 -0400 Subject: [PATCH 04/10] Include transport activate in GCHP carbon geoschem_config.yml The activate flag is needed in the transport menu since it is used to set Input_Opt%LTRAN. This update fixes a bug that caused mixing ratio update with pressure ratio every timestep. Signed-off-by: Lizzie Lundgren --- .../geoschem_config.yml.templates/geoschem_config.yml.carbon | 1 + 1 file changed, 1 insertion(+) diff --git a/run/GCHP/geoschem_config.yml.templates/geoschem_config.yml.carbon b/run/GCHP/geoschem_config.yml.templates/geoschem_config.yml.carbon index 323f4f2d8..2b7be1c21 100644 --- a/run/GCHP/geoschem_config.yml.templates/geoschem_config.yml.carbon +++ b/run/GCHP/geoschem_config.yml.templates/geoschem_config.yml.carbon @@ -30,6 +30,7 @@ operations: use_non_local_pbl: ${RUNDIR_USE_NLPBL} transport: + activate: true transported_species: - CH4 - CO From 7d7ee590bc6ff1bbb91cbe7e398946dd15310688 Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Fri, 1 Nov 2024 17:02:50 -0400 Subject: [PATCH 05/10] Fix double-counting of km2 to m2 conversion for OCS emissions in GC-Classic The scale factor is removed from HEMCO_Config.rc since the conversion happens automatically in HEMCO read for GC-Classic. For GCHP the scale factor is now configured in ExtData.rc. Signed-off-by: Lizzie Lundgren --- .../HEMCO_Config.rc.carbon | 13 ++++--------- run/GCHP/ExtData.rc.templates/ExtData.rc.carbon | 8 ++++---- .../HEMCO_Config.rc.carbon | 13 ++++--------- 3 files changed, 12 insertions(+), 22 deletions(-) diff --git a/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon b/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon index dfea74d91..1c867543e 100644 --- a/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon +++ b/run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon @@ -982,19 +982,19 @@ Mask fractions: false (((USE_OCS_DATA (((OCS_ANTHRO_FLUX -0 OCS_ANTHRO $ROOT/OCS_FLUX/v2022-11/anthro_v3/v3_anthro/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70/71 1 1 +0 OCS_ANTHRO $ROOT/OCS_FLUX/v2022-11/anthro_v3/v3_anthro/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70 1 1 )))OCS_ANTHRO_FLUX (((OCS_BIOMASS_FLUX -0 OCS_BIOMASS $ROOT/OCS_FLUX/v2022-11/Biomassburn/CMSV2-CO2-GFED3-ZC/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70/71 2 1 +0 OCS_BIOMASS $ROOT/OCS_FLUX/v2022-11/Biomassburn/CMSV2-CO2-GFED3-ZC/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70 2 1 )))OCS_BIOMASS_FLUX (((OCS_MISSING_OCEAN_FLUX -0 OCS_MISSING_OCEAN $ROOT/OCS_FLUX/v2022-11/MissingOcean/LUKAI/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70/71 3 1 +0 OCS_MISSING_OCEAN $ROOT/OCS_FLUX/v2022-11/MissingOcean/LUKAI/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70 3 1 )))OCS_MISSING_OCEAN_FLUX (((OCS_OCEAN_FLUX -0 OCS_OCEAN $ROOT/OCS_FLUX/v2022-11/OceanCOS/Kettle/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70/71 4 1 +0 OCS_OCEAN $ROOT/OCS_FLUX/v2022-11/OceanCOS/Kettle/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70 4 1 )))OCS_OCEAN_FLUX )))USE_OCS_DATA @@ -1543,11 +1543,6 @@ ${RUNDIR_CO2_COPROD} #------------------------------------------------------------------------------ 70 StoOCS MATH:60.07/32.06 - - - xy unitless 1 -#------------------------------------------------------------------------------ -# --- km-2 to m-2 --- -#------------------------------------------------------------------------------ -71 Km2ToM2 1.0e-6 - - - xy unitless 1 - )))USE_OCS_DATA #============================================================================== diff --git a/run/GCHP/ExtData.rc.templates/ExtData.rc.carbon b/run/GCHP/ExtData.rc.templates/ExtData.rc.carbon index 1c03505b6..bab43cbe7 100644 --- a/run/GCHP/ExtData.rc.templates/ExtData.rc.carbon +++ b/run/GCHP/ExtData.rc.templates/ExtData.rc.carbon @@ -314,10 +314,10 @@ CO2_COPROD kgC/m3/s N Y F%y4-%m2-01T00:00:00 none none LCO ./HcoDir/CO2/ #============================================================================== # --- OCS emission fluxes --- #============================================================================== -OCS_ANTHRO kgS/km2/s N Y F%y4-%m2-01T00:00:00 none none COS_Flux ./HcoDir/OCS_FLUX/v2022-11/anthro_v3/v3_anthro/%y4/%m2.nc -OCS_BIOMASS kgS/km2/s N Y F%y4-%m2-01T00:00:00 none none COS_Flux ./HcoDir/OCS_FLUX/v2022-11/Biomassburn/CMSV2-CO2-GFED3-ZC/%y4/%m2.nc -OCS_MISSING_OCEAN kgS/km2/s N Y F%y4-%m2-01T00:00:00 none none COS_Flux ./HcoDir/OCS_FLUX/v2022-11/MissingOcean/LUKAI/%y4/%m2.nc -OCS_OCEAN kgS/km2/s N Y F%y4-%m2-01T00:00:00 none none COS_Flux ./HcoDir/OCS_FLUX/v2022-11/OceanCOS/Kettle/%y4/%m2.nc +OCS_ANTHRO kgS/km2/s N Y F%y4-%m2-01T00:00:00 none 1.0e-6 COS_Flux ./HcoDir/OCS_FLUX/v2022-11/anthro_v3/v3_anthro/%y4/%m2.nc +OCS_BIOMASS kgS/km2/s N Y F%y4-%m2-01T00:00:00 none 1.0e-6 COS_Flux ./HcoDir/OCS_FLUX/v2022-11/Biomassburn/CMSV2-CO2-GFED3-ZC/%y4/%m2.nc +OCS_MISSING_OCEAN kgS/km2/s N Y F%y4-%m2-01T00:00:00 none 1.0e-6 COS_Flux ./HcoDir/OCS_FLUX/v2022-11/MissingOcean/LUKAI/%y4/%m2.nc +OCS_OCEAN kgS/km2/s N Y F%y4-%m2-01T00:00:00 none 1.0e-6 COS_Flux ./HcoDir/OCS_FLUX/v2022-11/OceanCOS/Kettle/%y4/%m2.nc ############################################################################### ### diff --git a/run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon b/run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon index 5dfd08450..3cb2d4059 100644 --- a/run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon +++ b/run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.carbon @@ -982,19 +982,19 @@ Mask fractions: false (((USE_OCS_DATA (((OCS_ANTHRO_FLUX -0 OCS_ANTHRO $ROOT/OCS_FLUX/v2022-11/anthro_v3/v3_anthro/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70/71 1 1 +0 OCS_ANTHRO $ROOT/OCS_FLUX/v2022-11/anthro_v3/v3_anthro/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70 1 1 )))OCS_ANTHRO_FLUX (((OCS_BIOMASS_FLUX -0 OCS_BIOMASS $ROOT/OCS_FLUX/v2022-11/Biomassburn/CMSV2-CO2-GFED3-ZC/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70/71 2 1 +0 OCS_BIOMASS $ROOT/OCS_FLUX/v2022-11/Biomassburn/CMSV2-CO2-GFED3-ZC/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70 2 1 )))OCS_BIOMASS_FLUX (((OCS_MISSING_OCEAN_FLUX -0 OCS_MISSING_OCEAN $ROOT/OCS_FLUX/v2022-11/MissingOcean/LUKAI/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70/71 3 1 +0 OCS_MISSING_OCEAN $ROOT/OCS_FLUX/v2022-11/MissingOcean/LUKAI/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70 3 1 )))OCS_MISSING_OCEAN_FLUX (((OCS_OCEAN_FLUX -0 OCS_OCEAN $ROOT/OCS_FLUX/v2022-11/OceanCOS/Kettle/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70/71 4 1 +0 OCS_OCEAN $ROOT/OCS_FLUX/v2022-11/OceanCOS/Kettle/$YYYY/$MM.nc COS_Flux 2012-2016/1-12/1/0 C xy kgS/km2/s OCS 70 4 1 )))OCS_OCEAN_FLUX )))USE_OCS_DATA @@ -1543,11 +1543,6 @@ ${RUNDIR_CO2_COPROD} #------------------------------------------------------------------------------ 70 StoOCS MATH:60.07/32.06 - - - xy unitless 1 -#------------------------------------------------------------------------------ -# --- km-2 to m-2 --- -#------------------------------------------------------------------------------ -71 Km2ToM2 1.0e-6 - - - xy unitless 1 - )))USE_OCS_DATA #============================================================================== From 630e84a30bb8a977c239a1d799aba8c463bf30ca Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Fri, 1 Nov 2024 18:04:10 -0400 Subject: [PATCH 06/10] Fix typos in balanced biosphere exchange emissions in GCHP carbon config Signed-off-by: Lizzie Lundgren --- run/GCHP/ExtData.rc.templates/ExtData.rc.carbon | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/run/GCHP/ExtData.rc.templates/ExtData.rc.carbon b/run/GCHP/ExtData.rc.templates/ExtData.rc.carbon index bab43cbe7..b6eb6ea3a 100644 --- a/run/GCHP/ExtData.rc.templates/ExtData.rc.carbon +++ b/run/GCHP/ExtData.rc.templates/ExtData.rc.carbon @@ -287,7 +287,7 @@ FOSSILCO2_ODIAC kg/m2/s N Y F%y4-%m2-01T00:00:00 none none CO2 ./HcoDir/CO2/v2 OCEANCO2_SCALED_MONTHLY kg/m2/s N Y F%y4-%m2-01T00:00:00 none none CO2 ./HcoDir/CO2/v2022-11/OCEAN/Scaled_Ocean_CO2_monthly.nc # --- Balanced biosphere exchange --- -SIB_BBIO_CO2 kg/m2/s N Y F1985-%m2-%d2T%h2-01-01 none none CO2 ./HcoDir/CO2/v2022-11/BIO/SiB3_3hr_NEP.nc +SIB_BBIO_CO2 kg/m2/s N Y F%y4-%m2-%d2T%h2:00:00 none none CO2 ./HcoDir/CO2/v2022-11/BIO/SiB3_3hr_NEP.nc # --- Net Terrestrial Exchange --- CO2_NET_TERRESTRIAL kg/m2/s N Y - none none CO2 ./HcoDir/CO2/v2022-11/BIO/Net_terrestrial_exch_5.29Pg.generic.1x1.nc From 77d7fea5e0c340dec417f3ce26c103e0af239ba1 Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Mon, 4 Nov 2024 13:39:40 -0500 Subject: [PATCH 07/10] Change carbon simulation OCS total emissions diag from 3D to 2D All emissions for OCS are surface so total can be 2-dimensional rather than 3-dimensional. Signed-off-by: Lizzie Lundgren --- run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon | 2 +- run/GCHP/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon b/run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon index 2ab560915..6d1f0b2e9 100644 --- a/run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon +++ b/run/GCClassic/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon @@ -60,7 +60,7 @@ EmisCO2_BiomassBurn CO2 111 -1 -1 2 kg/m2/s CO2_biomass_burning_emi ############################################################################### ##### OCS sources ##### ############################################################################### -EmisOCS_Total OCS 0 -1 -1 3 kg/m2/s OCS_emission_flux_from_all_sectors +EmisOCS_Total OCS 0 -1 -1 2 kg/m2/s OCS_emission_flux_from_all_sectors EmisOCS_Anthro OCS 0 1 -1 2 kg/m2/s OCS_emission_flux_from_anthropogenic EmisOCS_BiomassBurn OCS 0 2 -1 2 kg/m2/s OCS_emission_flux_from_biomass_burning EmisOCS_MissingOcean OCS 0 3 -1 2 kg/m2/s OCS_emission_flux_from_missing_ocean diff --git a/run/GCHP/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon b/run/GCHP/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon index 73c1d3129..cb3cbfac7 100644 --- a/run/GCHP/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon +++ b/run/GCHP/HEMCO_Diagn.rc.templates/HEMCO_Diagn.rc.carbon @@ -60,7 +60,7 @@ EmisCO2_BiomassBurn CO2 111 -1 -1 2 kg/m2/s CO2_biomass_burning_emi ############################################################################### ##### OCS sources ##### ############################################################################### -EmisOCS_Total OCS 0 -1 -1 3 kg/m2/s OCS_emission_flux_from_all_sectors +EmisOCS_Total OCS 0 -1 -1 2 kg/m2/s OCS_emission_flux_from_all_sectors EmisOCS_Anthro OCS 0 1 -1 2 kg/m2/s OCS_emission_flux_from_anthropogenic EmisOCS_Bioburn OCS 0 2 -1 2 kg/m2/s OCS_emission_flux_from_biomass_burning EmisOCS_MissingOcean OCS 0 3 -1 2 kg/m2/s OCS_emission_flux_from_missing_ocean From f8ca428ebdb639e383a023b086814555d8c261c5 Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Thu, 14 Nov 2024 16:47:01 -0500 Subject: [PATCH 08/10] Update changelog Signed-off-by: Lizzie Lundgren --- CHANGELOG.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2df26359f..4470b5dfe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,8 +14,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Added a fix to skip the call to KPP when only CO2 is defined in the carbon simulation - Added fix to turn on ship emissions for CO2 in the carbon simulation - Updated `HEMCO_Config.rc` for carbon simulation to read data based on carbon species used -- Fixed entries for CO2 emissions in `ExtData.rc.carbon` +- Fixed entries for several carbon emissions inventorin GCHP config file `ExtData.rc.carbon` - Fixed typos in `HEMCO_Config.rc` for CH4 simulations causing mobile combustion emissions to be double counted +- Fixed handling of FIRST flag in carbon_gases_mod.F to limit log prints to first timestep only +- Removed extraneous pressure correction in GCHP carbon simulations by adding 'activate: true' to geoschem_config.yml +- Fixed bug in GC-Classic OCS emissions where unit conversion of km2 to m2 occurred twice +- Changed dimension of EmisOCS_Total from 2D to 3D since all emissions for all sectors are 2D ## [Unreleased] - TBD ### Added From f408db975f1aacabd71aeae91bee5cf87f70b4e7 Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Fri, 13 Dec 2024 11:34:32 -0500 Subject: [PATCH 09/10] Added fixes to only apply archived PCO_CH4 field for carbon simulations with CO only To make it more clear that the PCO_CH4 fields are read from file, the option in in the CO2 menu of geoschem_config.yml has been renamed from from "use_fullchem_PCO_from_CH4" to "use_archived_PCO_from_CH4 (same for NMVOC source)". The use_archived_PCO_from_CH4 option is now set to false by default for carbon simulations and only set to true in carbon simulations where only CO is advected. Similarly, "3D_chemical_oxidation_source" in the CO2 menu has been renamed to "use_archived_PCO2_from_CO". The carbon mechanism was rebuilt with KPP 3.1.1 here but that is a zero- difference update simply changing the headers of the KPP/carbon/gckpp* files. Signed-off-by: Melissa Sulprizio --- CHANGELOG.md | 1 + GeosCore/input_mod.F90 | 14 +++++------ KPP/carbon/carbon_Funcs.F90 | 2 +- KPP/carbon/gckpp_Function.F90 | 2 +- KPP/carbon/gckpp_Global.F90 | 2 +- KPP/carbon/gckpp_Initialize.F90 | 2 +- KPP/carbon/gckpp_Integrator.F90 | 2 +- KPP/carbon/gckpp_Jacobian.F90 | 2 +- KPP/carbon/gckpp_LinearAlgebra.F90 | 2 +- KPP/carbon/gckpp_Monitor.F90 | 2 +- KPP/carbon/gckpp_Parameters.F90 | 2 +- KPP/carbon/gckpp_Rates.F90 | 2 +- KPP/carbon/gckpp_Util.F90 | 2 +- .../geoschem_config.yml.CO2 | 2 +- .../geoschem_config.yml.carbon | 6 ++--- .../geoschem_config.yml.tagCO | 4 +-- run/shared/singleCarbonSpecies.sh | 25 +++++++++++-------- 17 files changed, 40 insertions(+), 34 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b696ccef0..ef8a7ab8b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -49,6 +49,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Removed extraneous pressure correction in GCHP carbon simulations by adding 'activate: true' to geoschem_config.yml - Fixed bug in GC-Classic OCS emissions where unit conversion of km2 to m2 occurred twice - Changed dimension of EmisOCS_Total from 2D to 3D since all emissions for all sectors are 2D +- Added fixes to only apply archived PCO_CH4 field for carbon simulations with CO only ### Removed - Removed duplicate `WD_RetFactor` tag for HgClHO2 in `species_database.yml` diff --git a/GeosCore/input_mod.F90 b/GeosCore/input_mod.F90 index 0812c9924..1e2c1c180 100644 --- a/GeosCore/input_mod.F90 +++ b/GeosCore/input_mod.F90 @@ -2020,7 +2020,7 @@ SUBROUTINE Config_CO( Config, Input_Opt, RC ) !------------------------------------------------------------------------ ! Use P(CO) from CH4 (archived from a fullchem simulation)? !------------------------------------------------------------------------ - key = "CO_simulation_options%use_fullchem_PCO_from_CH4" + key = "CO_simulation_options%use_archived_PCO_from_CH4" v_bool = MISSING_BOOL CALL QFYAML_Add_Get( Config, key, v_bool, "", RC ) IF ( RC /= GC_SUCCESS ) THEN @@ -2033,7 +2033,7 @@ SUBROUTINE Config_CO( Config, Input_Opt, RC ) !------------------------------------------------------------------------ ! Use P(CO) from NMVOC (archived from a fullchem simulation)? !------------------------------------------------------------------------ - key = "CO_simulation_options%use_fullchem_PCO_from_NMVOC" + key = "CO_simulation_options%use_archived_PCO_from_NMVOC" v_bool = MISSING_BOOL CALL QFYAML_Add_Get( Config, key, v_bool, "", RC ) IF ( RC /= GC_SUCCESS ) THEN @@ -2050,8 +2050,8 @@ SUBROUTINE Config_CO( Config, Input_Opt, RC ) WRITE(6,90 ) 'TAGGED CO SIMULATION SETTINGS' WRITE(6,95 ) '(overwrites any other settings related to CO)' WRITE(6,95 ) '---------------------------------------------' - WRITE(6,100) 'Use full chem. P(CO) from CH4? :', Input_Opt%LPCO_CH4 - WRITE(6,100) 'Use full chem. P(CO) from NMVOC? :', Input_Opt%LPCO_NMVOC + WRITE(6,100) 'Use archived P(CO) from CH4? :', Input_Opt%LPCO_CH4 + WRITE(6,100) 'Use archived P(CO) from NMVOC? :', Input_Opt%LPCO_NMVOC ENDIF ! FORMAT statements @@ -2113,9 +2113,9 @@ SUBROUTINE Config_CO2( Config, Input_Opt, RC ) thisLoc = ' -> at Config_CO2 (in module GeosCore/input_mod.F90)' !------------------------------------------------------------------------ - ! Turn on CO2 3D chemical source and surface correction? + ! Use archived fields of CO2 production from CO oxidation? !------------------------------------------------------------------------ - key = "CO2_simulation_options%sources%3D_chemical_oxidation_source" + key = "CO2_simulation_options%sources%use_archived_PCO2_from_CO" v_bool = MISSING_BOOL CALL QFYAML_Add_Get( Config, key, v_bool, "", RC ) IF ( RC /= GC_SUCCESS ) THEN @@ -2158,7 +2158,7 @@ SUBROUTINE Config_CO2( Config, Input_Opt, RC ) WRITE( 6,90 ) 'CO2 SIMULATION SETTINGS' WRITE( 6,95 ) '(overwrites any other settings related to CO2)' WRITE( 6,95 ) '----------------------------------------------' - WRITE( 6,100 ) 'CO2 from oxidation (CO,CH4,..):', Input_Opt%LCHEMCO2 + WRITE( 6,100 ) 'Use archived P(CO2) from CO? :', Input_Opt%LCHEMCO2 WRITE( 6, 95 ) 'Tagged CO2 settings' WRITE( 6,100 ) ' Tag Biosphere/Ocean CO2 :', Input_Opt%LBIOSPHTAG WRITE( 6,100 ) ' Tag Fossil Fuel CO2 :', Input_Opt%LFOSSILTAG diff --git a/KPP/carbon/carbon_Funcs.F90 b/KPP/carbon/carbon_Funcs.F90 index cfe12a7d2..734604aa2 100644 --- a/KPP/carbon/carbon_Funcs.F90 +++ b/KPP/carbon/carbon_Funcs.F90 @@ -193,7 +193,7 @@ SUBROUTINE carbon_ComputeRateConstants( & C(ind_FixedCl) = ConcClMnd ! CH4 + offline OH reaction rate [1/s] - ! This is a pseudo-2nd order rate appropriate for CH4 + OH + ! Use rates saved from full-chemistry run (if CH4 is not advected) IF ( PCO_fr_CH4_use ) THEN k_Trop(1) = PCO_fr_CH4 * OHdiurnalFac k_Trop(1) = SafeDiv( k_Trop(1), C(ind_CH4)*C(ind_FixedOH), 0.0_dp ) diff --git a/KPP/carbon/gckpp_Function.F90 b/KPP/carbon/gckpp_Function.F90 index 31145e8f7..05a1fe789 100644 --- a/KPP/carbon/gckpp_Function.F90 +++ b/KPP/carbon/gckpp_Function.F90 @@ -2,7 +2,7 @@ ! ! The ODE Function of Chemical Model File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_Global.F90 b/KPP/carbon/gckpp_Global.F90 index ab0d870d2..35126180f 100644 --- a/KPP/carbon/gckpp_Global.F90 +++ b/KPP/carbon/gckpp_Global.F90 @@ -2,7 +2,7 @@ ! ! Global Data Module File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_Initialize.F90 b/KPP/carbon/gckpp_Initialize.F90 index b04d661ad..fc2a3904c 100644 --- a/KPP/carbon/gckpp_Initialize.F90 +++ b/KPP/carbon/gckpp_Initialize.F90 @@ -2,7 +2,7 @@ ! ! Initialization File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_Integrator.F90 b/KPP/carbon/gckpp_Integrator.F90 index 3a267e9fa..15e1ee7dd 100644 --- a/KPP/carbon/gckpp_Integrator.F90 +++ b/KPP/carbon/gckpp_Integrator.F90 @@ -2,7 +2,7 @@ ! ! Numerical Integrator (Time-Stepping) File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_Jacobian.F90 b/KPP/carbon/gckpp_Jacobian.F90 index a79264e6f..65cfcc29d 100644 --- a/KPP/carbon/gckpp_Jacobian.F90 +++ b/KPP/carbon/gckpp_Jacobian.F90 @@ -2,7 +2,7 @@ ! ! The ODE Jacobian of Chemical Model File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_LinearAlgebra.F90 b/KPP/carbon/gckpp_LinearAlgebra.F90 index 655002792..afd23849e 100644 --- a/KPP/carbon/gckpp_LinearAlgebra.F90 +++ b/KPP/carbon/gckpp_LinearAlgebra.F90 @@ -2,7 +2,7 @@ ! ! Linear Algebra Data and Routines File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_Monitor.F90 b/KPP/carbon/gckpp_Monitor.F90 index 7063190ad..126258534 100644 --- a/KPP/carbon/gckpp_Monitor.F90 +++ b/KPP/carbon/gckpp_Monitor.F90 @@ -2,7 +2,7 @@ ! ! Utility Data Module File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_Parameters.F90 b/KPP/carbon/gckpp_Parameters.F90 index 70d35690b..874e5dfeb 100644 --- a/KPP/carbon/gckpp_Parameters.F90 +++ b/KPP/carbon/gckpp_Parameters.F90 @@ -2,7 +2,7 @@ ! ! Parameter Module File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_Rates.F90 b/KPP/carbon/gckpp_Rates.F90 index 8d0b302e7..0195411f7 100644 --- a/KPP/carbon/gckpp_Rates.F90 +++ b/KPP/carbon/gckpp_Rates.F90 @@ -2,7 +2,7 @@ ! ! The Reaction Rates File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/KPP/carbon/gckpp_Util.F90 b/KPP/carbon/gckpp_Util.F90 index 7fd3d92fb..4fd4fee48 100644 --- a/KPP/carbon/gckpp_Util.F90 +++ b/KPP/carbon/gckpp_Util.F90 @@ -2,7 +2,7 @@ ! ! Auxiliary Routines File ! -! Generated by KPP-3.0.0 symbolic chemistry Kinetics PreProcessor +! Generated by KPP-3.1.1 symbolic chemistry Kinetics PreProcessor ! (https:/github.com/KineticPreProcessor/KPP ! KPP is distributed under GPL, the general public licence ! (http://www.gnu.org/copyleft/gpl.html) diff --git a/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.CO2 b/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.CO2 index 54e8554a8..24fd480d1 100644 --- a/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.CO2 +++ b/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.CO2 @@ -73,7 +73,7 @@ operations: CO2_simulation_options: sources: - 3D_chemical_oxidation_source: true + use_archived_PCO2_from_CO: true tagged_species: tag_bio_and_ocean_CO2: false diff --git a/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.carbon b/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.carbon index c35423f8b..fcf79603d 100644 --- a/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.carbon +++ b/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.carbon @@ -86,8 +86,8 @@ CH4_simulation_options: #============================================================================ CO_simulation_options: - use_fullchem_PCO_from_CH4: true - use_fullchem_PCO_from_NMVOC: true + use_archived_PCO_from_CH4: false + use_archived_PCO_from_NMVOC: true #============================================================================ # Options for CO2 @@ -96,7 +96,7 @@ CO_simulation_options: CO2_simulation_options: sources: - 3D_chemical_oxidation_source: true + use_archived_PCO2_from_CO: false tagged_species: tag_bio_and_ocean_CO2: false diff --git a/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.tagCO b/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.tagCO index 6ac1a9500..e47984860 100644 --- a/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.tagCO +++ b/run/GCClassic/geoschem_config.yml.templates/geoschem_config.yml.tagCO @@ -84,8 +84,8 @@ operations: #============================================================================ CO_simulation_options: - use_fullchem_PCO_from_CH4: true - use_fullchem_PCO_from_NMVOC: true + use_archived_PCO_from_CH4: true + use_archived_PCO_from_NMVOC: true #============================================================================ # Settings for diagnostics (other than HISTORY and HEMCO) diff --git a/run/shared/singleCarbonSpecies.sh b/run/shared/singleCarbonSpecies.sh index a727dc2e8..ac9a166ff 100755 --- a/run/shared/singleCarbonSpecies.sh +++ b/run/shared/singleCarbonSpecies.sh @@ -31,7 +31,7 @@ function isItemInList() { # # Arguments: # ${1}: The item - # ${2}: Thie list + # ${2}: The list # # Returns (via $?) # 0 if item is in the list @@ -110,17 +110,22 @@ function updateGeosChemConfig() { sed -i -e "${cmd}" "${file}" done - # NOTE: CH4 options are already deactivated - # in the out-of-the-box geoschem_config.yml - - # If CO2 is in the exclude list, turn off CO2 options + # If CO2 is in the include list, turn on CO2 production options isItemInList "CO2" "${1}" - if [[ $? == 0 ]]; then - keys=("3D_chemical_oxidation_source" \ - "tag_bio_and_ocean_CO2" \ - "tag_land_fossil_fuel_CO2" ) + if [[ $? == 1 ]]; then + keys=("use_archived_PCO2_from_CO" ) + for key in ${keys[@]}; do + keyValueUpdate "${key}" "false" "true" "${file}" + done + fi + + # If CO is in the include list, turn on CO production options + isItemInList "CO" "${1}" + if [[ $? == 1 ]]; then + keys=("use_archived_PCO_from_CH4" \ + "use_archived_PCO_from_NMVOC" ) for key in ${keys[@]}; do - keyValueUpdate "${key}" "true" "false" "${file}" + keyValueUpdate "${key}" "false" "true" "${file}" done fi } From efedff3fee4eedc69b0163cecfa77c9093f23d31 Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Wed, 8 Jan 2025 08:16:04 -0500 Subject: [PATCH 10/10] Fix typo in CHANGELOG.md for EmisOCS_Total fix Signed-off-by: Melissa Sulprizio --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ef8a7ab8b..f61067d70 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -48,7 +48,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Fixed handling of FIRST flag in carbon_gases_mod.F to limit log prints to first timestep only - Removed extraneous pressure correction in GCHP carbon simulations by adding 'activate: true' to geoschem_config.yml - Fixed bug in GC-Classic OCS emissions where unit conversion of km2 to m2 occurred twice -- Changed dimension of EmisOCS_Total from 2D to 3D since all emissions for all sectors are 2D +- Changed dimension of EmisOCS_Total from 3D to 2D since all emissions for all sectors are 2D - Added fixes to only apply archived PCO_CH4 field for carbon simulations with CO only ### Removed