Difference between revisions of "GEOS-Chem Adjoint v35"
(→Overview) |
|||
(34 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
== Overview == | == Overview == | ||
− | |||
*Previous version: [[GEOS-Chem_Adjoint_v34]] | *Previous version: [[GEOS-Chem_Adjoint_v34]] | ||
Line 7: | Line 6: | ||
=== What's new in this version === | === What's new in this version === | ||
− | GEOS-Chem Adjoint v35 contains the following major updates and improvements | + | GEOS-Chem Adjoint v35 contains the following major updates and improvements: |
{| border=1 cellspacing=0 cellpadding=5 | {| border=1 cellspacing=0 cellpadding=5 | ||
Line 89: | Line 88: | ||
|Approved 30 Oct 2013 | |Approved 30 Oct 2013 | ||
|-bgcolor="#CCFFFF" | |-bgcolor="#CCFFFF" | ||
− | |||
|- | |- | ||
Line 206: | Line 204: | ||
|v35e | |v35e | ||
|Approved 10 Jul 2014 | |Approved 10 Jul 2014 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Updated_aerosols_optical_properties | Updated aerosols optical properties ]] | ||
+ | |Forward Model Update | ||
+ | |Randall Martin | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35e | ||
+ | |Approved 10 Jul 2014 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Fixed_undefined_variables_and_openMP_problems | Fixed undefined variables and openMP problems ]] | ||
+ | |Adjoint Model Bug Fix | ||
+ | |Collin Lee (Dalhousie), Bob Yantosca (Harvard) | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35f | ||
+ | |Approved 20 Aug 2014 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Makefile_sets_FFLAGS_and_LINK_automatically | Makefile sets FFLAGS and LINK automatically ]] | ||
+ | |Adjoint Model Update | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35f | ||
+ | |Approved 20 Aug 2014 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Added_support_for_GEOS_FP_meteorology | Added support for GEOS FP meteorology ]] | ||
+ | |Forward Model Update | ||
+ | |Lin Zhang | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35g | ||
+ | |Approved 26 Mar 2015 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Added_support_for_GEOS_FP_nested_meteorology | Added support for GEOS FP nested meteorology ]] | ||
+ | |Forward Model Update | ||
+ | |Lin Zhang | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35h | ||
+ | |Approved 2 Jun 2015 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Diagnostics_Bug_Fixes | Diagnostics Bug Fixes ]] | ||
+ | |Forward Model Bug Fix | ||
+ | |Thomas Walker, Alex Turner | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35i | ||
+ | |Approved 16 Jun 2015 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Add_PM_to_Diag59 | Add PM to Diag59 ]] | ||
+ | |Forward Model Update | ||
+ | |Luke Reed, Daven Henze | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35i | ||
+ | |Approved 16 Jun 2015 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Bug_Fixes_from_v9-02 | Bug Fixes from v9-02 ]] | ||
+ | |Forward Model Bug Fix | ||
+ | |Various | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35j | ||
+ | |Approved 19 Oct 2015 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#HTAP_Bug_Fixes | HTAP Bug Fixes ]] | ||
+ | |Adjoint Model Bug Fix | ||
+ | |Luke Reed, Daven Henze | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35j | ||
+ | |Approved 19 Oct 2015 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Observation_Operators_Updates | Observation Operators Updates ]] | ||
+ | |Adjoint Model Update | ||
+ | |Martin Keller, Jiang Zhe | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35j | ||
+ | |Approved 19 Oct 2015 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Model_Updates_from_v9-02 | Model Updates from v9-02 ]] | ||
+ | |Forward Model Update | ||
+ | |Various | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35k | ||
+ | |Approved 6 Apr 2016 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Paranox_DIV-BY-ZERO | Paranox DIV-BY-ZERO ]] | ||
+ | |Forward Model Bug Fix | ||
+ | |Geert Vinken | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35l | ||
+ | |Approved 20 Apr 2017 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#WETSCAV_Bug | WETSCAV Bug ]] | ||
+ | |Forward Model Bug Fix | ||
+ | |Choi Jinkyul | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35l | ||
+ | |Approved 20 Apr 2017 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Adjoint_Bugs | Adjoint Bugs]] | ||
+ | |Adjoint Model Bug Fix | ||
+ | |Various | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35l | ||
+ | |Approved 20 Apr 2017 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Dry-Wet_Pressure_Fix | Dry-Wet Pressure Fix]] | ||
+ | |Forward Model Bug Fix | ||
+ | |Meemong Lee | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35m | ||
+ | |Approved 19 Jun 2017 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Upper_Atmosphere_Sensitivities_Bug | Upper Atmosphere Sensitivities Bug]] | ||
+ | |Adjoint Model Bug Fix | ||
+ | |Daven Henze | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35m | ||
+ | |Approved 12 Jan 2018 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Nested_Code_Fix | Nested Code Fix]] | ||
+ | |Forward Model Bug Fix | ||
+ | |Zhen Qu, Daven Henze, Yanko Davila | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35n | ||
+ | |Approved 6 Aug 2018 | ||
+ | |-bgcolor="#CCFFFF" | ||
+ | |||
+ | |- | ||
+ | |[[#Logarithmic_Output_Bug_Fix | Logarithmic Output Bug Fix ]] | ||
+ | |Adjoint Model Bug Fix | ||
+ | |Daven Henze, Yanko Davila | ||
+ | |Yanko Davila (CU Boulder) | ||
+ | |v35n | ||
+ | |Approved 6 Aug 2018 | ||
|-bgcolor="#CCFFFF" | |-bgcolor="#CCFFFF" | ||
Line 247: | Line 407: | ||
===== Added support for HTAP emissions inventory ===== | ===== Added support for HTAP emissions inventory ===== | ||
− | A new module was developed in order to add support for HTAP emissions inventory. This update alongside some other small changes made possible the participation on the HTAP experiment . You can find more information about HTAP | + | A new module was developed in order to add support for HTAP emissions inventory. This update alongside some other small changes made possible the participation on the HTAP experiment . You can find more information about HTAP [http://www.htap.org here. ] |
--[[User:Yanko|Yanko]] 16:03, 10 July 2014 (EDT) | --[[User:Yanko|Yanko]] 16:03, 10 July 2014 (EDT) | ||
+ | |||
+ | ===== Updated aerosols optical properties ===== | ||
+ | |||
+ | Aerosols optical properties were updated to match the forward model v9-02q in which the user can specify the wavelenght (default 550nm). This updates also improves the representation of OC growth with RH and also made some correction to sulfate optics [[Aerosol_optical_properties | See forward wiki. ]] | ||
+ | |||
+ | --[[User:Yanko|Yanko]] 16:03, 10 July 2014 (EDT) | ||
+ | |||
+ | ===== Added support for GEOS FP meteorology ===== | ||
+ | |||
+ | Support for GEOS FP meteorology has been added. Nested support is on the way and will be supported very soon. | ||
+ | See benchmark results [https://docs.google.com/spreadsheet/ccc?key=0As2MewHKyWpDdDlTeFdPanU2RzlWc0luaFpEQXlyclE#gid=0 gcadj_std_v35g tests] | ||
+ | |||
+ | --[[User:Yanko|Yanko]] 15:58, 26 March 2015 (EDT) | ||
+ | |||
+ | ===== Added support for GEOS FP nested meteorology ===== | ||
+ | |||
+ | Support for GEOS FP Nested meteorology has been added. Please note that this a ongoing project. We've added support for full chemistry, excluding the following for the NA domain: BRAVO, CAC, Natural NH3 (GEIA) and Volcano SO2 emissions are not yet supported. Offline CH4 is supported. Tagged CO requires revision of archived OH and O3 production and loss. | ||
+ | |||
+ | See benchmark results [https://docs.google.com/spreadsheet/ccc?key=0As2MewHKyWpDdDlTeFdPanU2RzlWc0luaFpEQXlyclE#gid=0 gcadj_std_v35h tests] | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 04:19, 3 June 2015 (UTC) | ||
+ | |||
+ | ===== Add PM to Diag59 ===== | ||
+ | |||
+ | Added PM Tracer concentration in ug/m3 to diagnostic 59. | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 20:45, 16 June 2015 (UTC) | ||
+ | |||
+ | ===== Model Updates from v9-02===== | ||
+ | |||
+ | Fixed RO2+HO2 rate constant. [[New_isoprene_scheme#Update_One_-_RO2.2BHO2_Reaction_Rate | See forward wiki. ]] | ||
+ | |||
+ | Increase NO3 uptake by aerosol. [[New_isoprene_scheme#NO3_aerosol_reactive_uptake_coefficient | See forward wiki. ]] | ||
+ | |||
+ | Inhibition of N2O5 uptake by nitrate aerosol. [[ChemTelecon20111202 | See forward wiki. ]] | ||
+ | |||
+ | RCP emissions scenarios. [[Historical_and_Future_Emissions#RCP_future_emission_scenarios | See forward wiki. ]] | ||
+ | |||
+ | EDGAR v4.2 emissions for CH4 simulation. [[CH4_simulation#Update_CH4_emissions_to_EDGAR_v4.2 | See forward wiki. ]] | ||
+ | |||
+ | Update anthropogenic scale factors through 2010. [[Scale_factors_for_anthropogenic_emissions | See forward wiki. ]] | ||
+ | |||
+ | Update GFED3 emissions to 2011. [[Biomass_burning_emissions#Update_GFED3_emissions_to_2011 | See forward wiki. ]] | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 20:16, 6 April 2016 (UTC) | ||
Line 299: | Line 504: | ||
===== Emfossil Bug Fix ===== | ===== Emfossil Bug Fix ===== | ||
− | Fixed a bug on emfossil.f that made the model crash when ND49 diagnostic was turned on and NEI2005 emissions were used. If you want to see the changes on the code please find them | + | Fixed a bug on emfossil.f that made the model crash when ND49 diagnostic was turned on and NEI2005 emissions were used. If you want to see the changes on the code please find them |
− | + | [http://adjoint.colorado.edu:8080/yanko.davila/gcadj_std/commit/0bc8055f8eb63020acf5c597f9c2178f11708cf2#diff-7 here] | |
+ | |||
--[[User:Yanko|Yanko]] 16:03, 10 July 2014 (EDT) | --[[User:Yanko|Yanko]] 16:03, 10 July 2014 (EDT) | ||
+ | ===== Diagnostics Bug Fixes ===== | ||
+ | AD32_an needs to be scaled by SCALESRCE (the number of emissions timesteps) in order to give the right quantity to the ND32 emissions diagnostic. Tropopause heights reported in the ND67 was high. [[Dynamic_tropopause#Bug_in_ND67_diagnostic | See forward wiki. ]] | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 20:45, 16 June 2015 (UTC) | ||
+ | |||
+ | ===== Bug Fixes from v9-02 ===== | ||
+ | |||
+ | Included all relevant bug fixes from GEOS Chem v9-02. Here is a comprenhensive list of bug fixes included: | ||
+ | |||
+ | Bug fixes for MAP_A2A regridding algorithm. [[ Regridding_in_GEOS-Chem#Additional_bug_fixes_for_MAP_A2A_regridding_algorithm | See forward wiki. ]] | ||
+ | |||
+ | Parallelization error in routine DRYFLX [[ Dry_deposition#Parallelization_error_in_routine_DRYFLX | See forward wiki. ]] | ||
+ | |||
+ | Parallelization error in routine METERO[[ Dry_deposition#Parallelization_error_in_routine_METERO | See forward wiki. ]] | ||
+ | |||
+ | Rewritten the arguments in routines FVDAS_CONVECT, HACK_CONV, and ARCONVTRAN so as to avoid creating array temporaries. [[ Passing_array_arguments_efficiently_in_GEOS-Chem#fvdas_convect_mod.F | See forward wiki. ]] | ||
+ | |||
+ | Rewritten the arguments in routines GCAP_CONVECT and ARCONVTRAN so as to avoid creating array temporaries. [[ Passing_array_arguments_efficiently_in_GEOS-Chem#gcap_convect_mod.F | See forward wiki. ]] | ||
+ | |||
+ | Rewrite some argument definitions in routine DO_PJC_PFIX. [[ Passing_array_arguments_efficiently_in_GEOS-Chem#pjc_pfix_mod.F | See forward wiki. ]] | ||
+ | |||
+ | Rewrite some argument definitions in routine SET_FLOATING_PRESSURE. [[ Passing_array_arguments_efficiently_in_GEOS-Chem#pressure_mod.F | See forward wiki. ]] | ||
+ | |||
+ | Reactivate parallel DO loop in LINOZ_CHEMO3 [[ Linoz_stratospheric_ozone_chemistry#Reactivate_parallel_DO_loop_in_LINOZ_CHEMO3 | See forward wiki. ]] | ||
+ | |||
+ | Reactivate stratospheric P(Ox) in tagged Ox simulation [[ Tagged_O3_simulation#Reactivate_stratospheric_P.28Ox.29_in_tagged_Ox_simulation | See forward wiki. ]] | ||
+ | |||
+ | Replace LD65 with LLTROP in tagged_ox_mod.F [[ Tagged_O3_simulation#Replace_LD65_with_LLTROP_in_tagged_ox_mod.F | See forward wiki. ]] | ||
+ | |||
+ | Reset NaNs in MOISTQ to zero [[ GEOS-5_issues#Reset_NaNs_in_MOISTQ_to_zero | See forward wiki. ]] | ||
+ | |||
+ | Update molecular weight of sea salt tracers. [[ Sea_salt_aerosols#Update_molecular_weight_of_sea_salt_tracers | See forward wiki. ]] | ||
+ | |||
+ | Fixes for wetland emissions. [[ CH4_simulation#Fixes_for_wetland_emissions | See forward wiki. ]] | ||
+ | |||
+ | Fix for bug in acetone photolysis pressure dependency [[ FAST-J_photolysis_mechanism#v9-02_post-release_patch_to_fix_bug_in_acetone_photolysis_pressure_dependency | See forward wiki. ]] | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 21:40, 19 October 2015 (UTC) | ||
+ | |||
+ | ===== Paranox DIV-BY-ZERO ===== | ||
+ | |||
+ | In routine INTERPOLATE_LUT2 and its adjoint counterpart, there is a division JO1D / JNO2. But because JNO2 is a J-value, its value will go to zero at night. This will result in a div-by-zero error. [[ Numerical_issues_discovered_in_GEOS-Chem#Fixed_div-by-zero_issue_in_paranox_mod.F | See forward wiki. ]] | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 17:40, 29 April 2017 (UTC) | ||
+ | |||
+ | ===== WETSCAV Bug ===== | ||
+ | |||
+ | ALPHA value is sometimes higher than 1 without the restriction. This leads to a gain in tracer mass at the lower levels in excess of what is coming from above. This makes optical depth too thick and causes photolysis to crash. | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 17:40, 29 April 2017 (UTC) | ||
+ | |||
+ | ===== Dry-Wet Pressure Fix ===== | ||
+ | |||
+ | Meemong Lee and Richard Weidner (JPL) issued a [http://wiki.seas.harvard.edu/geos-chem/images/6/6f/GCA-M2O2-Final.pdf JPL Publication] detailing a transport moisture fix. Their fix consists of (1) deriving dry surface pressures from GMAO moist surface pressures and specific humidity, and (2) replacing moist pressures with dry pressures throughout the model. | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 17:51, 19 June 2017 (UTC) | ||
+ | |||
+ | ===== Nested Code Fix ===== | ||
+ | |||
+ | Updated the compiler flags for the nested small domain (NESTED_SD) for China and North America. Fixed several bugs in the nested code. | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 17:24, 7 August 2018 (UTC) | ||
==== - Updates to adjoint model ==== | ==== - Updates to adjoint model ==== | ||
Line 309: | Line 577: | ||
===== Add support for new deposition based cost functions ===== | ===== Add support for new deposition based cost functions ===== | ||
− | Added support for new deposition based cost functions. | + | Added support for new deposition based cost functions. |
See benchmark results [https://docs.google.com/spreadsheet/ccc?key=0As2MewHKyWpDdDlTeFdPanU2RzlWc0luaFpEQXlyclE#gid=0 gcadj_std_v35 tests 012 and 023] | See benchmark results [https://docs.google.com/spreadsheet/ccc?key=0As2MewHKyWpDdDlTeFdPanU2RzlWc0luaFpEQXlyclE#gid=0 gcadj_std_v35 tests 012 and 023] | ||
Line 318: | Line 586: | ||
Implemented new ship emissions scheme matching forward model [[Ship_emissions#PARANOX_ship_plume_model | paranox module. ]] Changes to the adjoint include, but are not limited to writing the adjoint of paranox and updating setemis_adj module. | Implemented new ship emissions scheme matching forward model [[Ship_emissions#PARANOX_ship_plume_model | paranox module. ]] Changes to the adjoint include, but are not limited to writing the adjoint of paranox and updating setemis_adj module. | ||
− | |||
− | |||
− | |||
− | |||
See benchmark results [https://docs.google.com/spreadsheet/ccc?key=0As2MewHKyWpDdDlTeFdPanU2RzlWc0luaFpEQXlyclE#gid=0 gcadj_std_v35a tests] | See benchmark results [https://docs.google.com/spreadsheet/ccc?key=0As2MewHKyWpDdDlTeFdPanU2RzlWc0luaFpEQXlyclE#gid=0 gcadj_std_v35a tests] | ||
--[[User:Yanko|Yanko]] 14:38, 30 October 2013 (EDT) | --[[User:Yanko|Yanko]] 14:38, 30 October 2013 (EDT) | ||
+ | |||
+ | ===== Makefile sets FFLAGS and LINK automatically ===== | ||
+ | |||
+ | Makefile automatically selects the best guess for FFLAGS and LINK. With this new makefile user's won't have to edit the Makefile anymore. Makefile now uses the netcdf utilities to guess the flags. If you don't have netcdf installed on your system please refer to the forward model to [[Installing libraries for GEOS-Chem|install GEOS-Chem required libraries.]] | ||
+ | |||
+ | --[[User:Yanko|Yanko]] 14:05, 22 August 2014 (EDT) | ||
+ | |||
+ | ===== Observation Operators Updates ===== | ||
+ | |||
+ | Fixed several bugs in TES, OMI and MOPITT observation operators. Dropped support for MOPITT v3 and v4. Added Support for MOPITT v5 and v6. Added covariance calculation for MOPPIT. Added flex diagnostics to TES HDF5 output. Updated OMI NO2 observation operator. Added OMI SO2 observation operator. | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 21:46, 20 October 2015 (UTC) | ||
Line 365: | Line 641: | ||
--[[User:Yanko|Yanko]] 15:25, 24 January 2014 (EST) | --[[User:Yanko|Yanko]] 15:25, 24 January 2014 (EST) | ||
+ | |||
+ | ===== Fixed undefined variables and openMP problems ===== | ||
+ | Fixed some undefined variables and some other minor issues on edgar_mod.f, inverse_mod.f, rpmares_adj_mod.f, time_mod.f, nei2008_anthro_mod.F90 and routines.f. Fixed the openMP loop in wet_settling, SALT_MASS was not declared as PRIVATE, due to this on every simulation the the values of coarse seasalt was different in the forward and adjoint run. | ||
+ | |||
+ | --[[User:Yanko|Yanko]] 14:05, 22 August 2014 (EDT) | ||
+ | |||
+ | ===== HTAP Bug Fixes ===== | ||
+ | |||
+ | Fixed an openMP declaration and logical flags in SRCCO2_ADJ and SRCNH3_ADJ. Fixed wrong initialization of MEK_HTAP in htap_mod.f | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 21:40, 19 October 2015 (UTC) | ||
+ | |||
+ | ===== Adjoint_Bugs ===== | ||
+ | |||
+ | * The variance for the logarithm of the scaling factors were computed incorrectly for the LOG optimization. | ||
+ | * Aerosol biofuel emissions didn't turn off when biofuel is turned off in input.geos. | ||
+ | * Fixed bug the caused GET_SPEC function to return “1” when the species name doesn’t match with any of the names in “NAMEGAS” array. | ||
+ | * Only initialize OBS_THIS_SPECIES if a species is being observed. | ||
+ | * Filter out small negative values without causing the code to crash. | ||
+ | * In subroutine READ_IN_POPULATION in population_mod.f, the code only printed out warnings if the pop data isn't found or read in correctly.This was change to cause and error and stop the simulation. | ||
+ | * REG_PARAM gamma doesn't have any impact if using off-diagonal error covariance calculation. | ||
+ | * Updated Makefile to use flags to use avoid compile error when using big arrays for example with quarter degree resolution. | ||
+ | * Fix initialization of RRATE_ADJ in chemistry_mod.f | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 17:40, 29 April 2017 (UTC) | ||
+ | |||
+ | ===== Upper Atmosphere Sensitivities Bug ===== | ||
+ | |||
+ | It has been brought to our attention that we had a bug that affected adjoint sensitivities in the upper atmosphere. This bug did not impact our tests of sensitivities of surface level concentrations or measurements with respect to emissions, but it does have an effect on sensitivities in the upper atmosphere that could accumulate and ultimately affect sensitivities with respect to emissions, particularly for longer simulations. The consequence was that NOx sensitivities in particular were being underestimated by significant (30-50%) amounts. | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 15:40, 12 January 2018 (UTC) | ||
+ | |||
+ | ===== Logarithmic Output Bug Fix ===== | ||
+ | |||
+ | Fixed bug that affected some cases of logarithmic output during initial conditions and emissions optimizations. | ||
+ | |||
+ | --[[User:Yanko|Yanko]] ([[User talk:Yanko|talk]]) 17:24, 7 August 2018 (UTC) |
Latest revision as of 16:06, 5 June 2022
Contents
- 1 Overview
- 1.1 What's new in this version
- 1.1.1 - Updates to forward model
- 1.1.1.1 Add NEI2008 Emissions
- 1.1.1.2 EDGAR v4.2 emissions for CH4 simulation
- 1.1.1.3 Update anthropogenic scale factors through 2010
- 1.1.1.4 Update GFED3 emissions to 2011
- 1.1.1.5 Update TOMS overhead O3 columns to 2010
- 1.1.1.6 Added support for HTAP emissions inventory
- 1.1.1.7 Updated aerosols optical properties
- 1.1.1.8 Added support for GEOS FP meteorology
- 1.1.1.9 Added support for GEOS FP nested meteorology
- 1.1.1.10 Add PM to Diag59
- 1.1.1.11 Model Updates from v9-02
- 1.1.2 - Bug fixes in forward model
- 1.1.2.1 Fixed a bug in Henry's constant
- 1.1.2.2 Prevent negative emissions over Canada
- 1.1.2.3 Bug fix in grid_mod.F90
- 1.1.2.4 Bug in ship CO emissions
- 1.1.2.5 Bugs in ship emissions and non-local PBL mixing
- 1.1.2.6 Eliminate several more array temporaries
- 1.1.2.7 Bug fix for 3-hourly GFED3 emissions
- 1.1.2.8 Emfossil Bug Fix
- 1.1.2.9 Diagnostics Bug Fixes
- 1.1.2.10 Bug Fixes from v9-02
- 1.1.2.11 Paranox DIV-BY-ZERO
- 1.1.2.12 WETSCAV Bug
- 1.1.2.13 Dry-Wet Pressure Fix
- 1.1.2.14 Nested Code Fix
- 1.1.3 - Updates to adjoint model
- 1.1.4 - Bug fixes in adjoint model
- 1.1.4.1 Small bug fix in wetscav_adj_mod.f
- 1.1.4.2 GFED2 8 Day Bug Fix
- 1.1.4.3 Deposition Diagnostics Bug Fix
- 1.1.4.4 Loose ANISO convergence
- 1.1.4.5 Off Diagonal Covariance Bug Fix
- 1.1.4.6 LBFGS allocation Fix
- 1.1.4.7 Fixed undefined variables and openMP problems
- 1.1.4.8 HTAP Bug Fixes
- 1.1.4.9 Adjoint_Bugs
- 1.1.4.10 Upper Atmosphere Sensitivities Bug
- 1.1.4.11 Logarithmic Output Bug Fix
- 1.1.1 - Updates to forward model
- 1.1 What's new in this version
Overview
- Previous version: GEOS-Chem_Adjoint_v34
What's new in this version
GEOS-Chem Adjoint v35 contains the following major updates and improvements:
Feature | Type | Submitted by | Committed by | Version | Status |
---|---|---|---|---|---|
Add support for NEI2008 Emissions | Forward Model Update | Daven Henze (CU Boulder) | Yanko Davila (CU Boulder) | v35 | Approved 24 Jul 2013 |
Fixed a bug in Henry's constant | Forward Model Bug Fix | Fabien Paulot (Harvard) | Yanko Davila (CU Boulder) | v35 | Approved 24 Jul 2013 |
Prevent negative emissions over Canada | Forward Model Bug Fix | Fabien Paulot (Harvard), Christoph Keller | Yanko Davila (CU Boulder) | v35 | Approved 24 Jul 2013 |
Add support for new deposition based cost functions | Adjoint Model Update | Fabien Paulot (Harvard), Daven Henze (CU Boulder) | Yanko Davila (CU Boulder) | v35 | Approved 24 Jul 2013 |
Bug fix in grid_mod.F90 | Forward Model Bug Fix | Christoph Keller | Yanko Davila (CU Boulder) | v35a | Approved 30 Oct 2013 |
Bug in ship CO emissions | Forward Model Bug Fix | Chris holmes | Yanko Davila (CU Boulder) | v35a | Approved 30 Oct 2013 |
Bugs in ship emissions and non-local PBL mixing | Forward Model Bug Fix | Chris holmes | Yanko Davila (CU Boulder) | v35a | Approved 30 Oct 2013 |
Eliminate several more array temporaries | Forward Model Bug Fix | GEOS-Chem Support Team | Yanko Davila (CU Boulder) | v35a | Approved 30 Oct 2013 |
Implemented new ship emissions scheme | Adjoint Model Update | Daven Henze (CU Boulder), Yanko Davila (CU Boulder) | Yanko Davila (CU Boulder) | v35a | Approved 30 Oct 2013 |
GFED2 8 Day Bug Fix | Adjoint Model Bug Fix | Li Zhang (CU Boulder) | Yanko Davila (CU Boulder) | v35c | Approved 23 Jan 2014 |
Deposition Diagnostics Bug Fix | Adjoint Model Bug Fix | Juliet (CU Boulder) | Yanko Davila (CU Boulder) | v35c | Approved 23 Jan 2014 |
Loose ANISO convergence | Adjoint Model Bug Fix | Shannon Capps (EPA) | Yanko Davila (CU Boulder) | v35c | Approved 23 Jan 2014 |
Off Diagonal Covariance Bug Fix | Adjoint Model Bug Fix | Nicolas Bousseres (CU Boulder) | Yanko Davila (CU Boulder) | v35c | Approved 23 Jan 2014 |
LBFGS allocation Fix | Adjoint Model Bug Fix | Alex Turner (Harvard) | Yanko Davila (CU Boulder) | v35c | Approved 23 Jan 2014 |
Bug fix for 3-hourly GFED3 emissions | Forward Model Bug Fix | Christoph Keller | Yanko Davila (CU Boulder) | v35c | Approved 23 Jan 2014 |
EDGAR v4.2 emissions for CH4 simulation | Forward Model Update | Kevin Wecht (Harvard) | Yanko Davila (CU Boulder) | v35d | Approved 11 Apr 2014 |
Update anthropogenic scale factors through 2010 | Forward Model Update | Aaron van Donkelaar (Dalhousie) | Yanko Davila (CU Boulder) | v35d | Approved 11 Apr 2014 |
Update GFED3 emissions to 2011 | Forward Model Update | Prasad Kasibhatla (Duke) | Yanko Davila (CU Boulder) | v35d | Approved 11 Apr 2014 |
Update TOMS overhead O3 columns to 2010 | Forward Model Update | Jenny Fisher (U. Wollongong) | Yanko Davila (CU Boulder) | v35d | Approved 11 Apr 2014 |
Added support for HTAP emissions inventory | Forward Model Update | Kateryna Lapina, Daven Henze, Yanko Davila (CU Boulder) | Yanko Davila (CU Boulder) | v35e | Approved 10 Jul 2014 |
Emfossil Bug Fix | Forward Model Update | Yi Wang (CU Boulder) | Yanko Davila (CU Boulder) | v35e | Approved 10 Jul 2014 |
Updated aerosols optical properties | Forward Model Update | Randall Martin | Yanko Davila (CU Boulder) | v35e | Approved 10 Jul 2014 |
Fixed undefined variables and openMP problems | Adjoint Model Bug Fix | Collin Lee (Dalhousie), Bob Yantosca (Harvard) | Yanko Davila (CU Boulder) | v35f | Approved 20 Aug 2014 |
Makefile sets FFLAGS and LINK automatically | Adjoint Model Update | Yanko Davila (CU Boulder) | Yanko Davila (CU Boulder) | v35f | Approved 20 Aug 2014 |
Added support for GEOS FP meteorology | Forward Model Update | Lin Zhang | Yanko Davila (CU Boulder) | v35g | Approved 26 Mar 2015 |
Added support for GEOS FP nested meteorology | Forward Model Update | Lin Zhang | Yanko Davila (CU Boulder) | v35h | Approved 2 Jun 2015 |
Diagnostics Bug Fixes | Forward Model Bug Fix | Thomas Walker, Alex Turner | Yanko Davila (CU Boulder) | v35i | Approved 16 Jun 2015 |
Add PM to Diag59 | Forward Model Update | Luke Reed, Daven Henze | Yanko Davila (CU Boulder) | v35i | Approved 16 Jun 2015 |
Bug Fixes from v9-02 | Forward Model Bug Fix | Various | Yanko Davila (CU Boulder) | v35j | Approved 19 Oct 2015 |
HTAP Bug Fixes | Adjoint Model Bug Fix | Luke Reed, Daven Henze | Yanko Davila (CU Boulder) | v35j | Approved 19 Oct 2015 |
Observation Operators Updates | Adjoint Model Update | Martin Keller, Jiang Zhe | Yanko Davila (CU Boulder) | v35j | Approved 19 Oct 2015 |
Model Updates from v9-02 | Forward Model Update | Various | Yanko Davila (CU Boulder) | v35k | Approved 6 Apr 2016 |
Paranox DIV-BY-ZERO | Forward Model Bug Fix | Geert Vinken | Yanko Davila (CU Boulder) | v35l | Approved 20 Apr 2017 |
WETSCAV Bug | Forward Model Bug Fix | Choi Jinkyul | Yanko Davila (CU Boulder) | v35l | Approved 20 Apr 2017 |
Adjoint Bugs | Adjoint Model Bug Fix | Various | Yanko Davila (CU Boulder) | v35l | Approved 20 Apr 2017 |
Dry-Wet Pressure Fix | Forward Model Bug Fix | Meemong Lee | Yanko Davila (CU Boulder) | v35m | Approved 19 Jun 2017 |
Upper Atmosphere Sensitivities Bug | Adjoint Model Bug Fix | Daven Henze | Yanko Davila (CU Boulder) | v35m | Approved 12 Jan 2018 |
Nested Code Fix | Forward Model Bug Fix | Zhen Qu, Daven Henze, Yanko Davila | Yanko Davila (CU Boulder) | v35n | Approved 6 Aug 2018 |
Logarithmic Output Bug Fix | Adjoint Model Bug Fix | Daven Henze, Yanko Davila | Yanko Davila (CU Boulder) | v35n | Approved 6 Aug 2018 |
- Updates to forward model
Add NEI2008 Emissions
Implemented NEI2008 Emissions Inventory
See benchmark results gcadj_std_v35 tests 003 and 023
--Yanko 15:28, 24 July 2013 (EDT)
EDGAR v4.2 emissions for CH4 simulation
Kevin Wecht has prepared EDGAR v4.2 emissions of methane for 2004-2008. See forward wiki.
--Yanko 15:15, 11 April 2014 (EDT)
Update anthropogenic scale factors through 2010
Annual anthropogenic scale factors will be extended to 2010 for U.S.A. and Canada. See forward wiki.
--Yanko 15:15, 11 April 2014 (EDT)
Update GFED3 emissions to 2011
Updated the GFED3 database to include data for 2011. See forward wiki.
--Yanko 15:15, 11 April 2014 (EDT)
Update TOMS overhead O3 columns to 2010
Jenny Fisher has updated to TOMS overhead O3 columns to account for years through December 2010. See forward wiki.
--Yanko 15:15, 11 April 2014 (EDT)
Added support for HTAP emissions inventory
A new module was developed in order to add support for HTAP emissions inventory. This update alongside some other small changes made possible the participation on the HTAP experiment . You can find more information about HTAP here.
--Yanko 16:03, 10 July 2014 (EDT)
Updated aerosols optical properties
Aerosols optical properties were updated to match the forward model v9-02q in which the user can specify the wavelenght (default 550nm). This updates also improves the representation of OC growth with RH and also made some correction to sulfate optics See forward wiki.
--Yanko 16:03, 10 July 2014 (EDT)
Added support for GEOS FP meteorology
Support for GEOS FP meteorology has been added. Nested support is on the way and will be supported very soon. See benchmark results gcadj_std_v35g tests
--Yanko 15:58, 26 March 2015 (EDT)
Added support for GEOS FP nested meteorology
Support for GEOS FP Nested meteorology has been added. Please note that this a ongoing project. We've added support for full chemistry, excluding the following for the NA domain: BRAVO, CAC, Natural NH3 (GEIA) and Volcano SO2 emissions are not yet supported. Offline CH4 is supported. Tagged CO requires revision of archived OH and O3 production and loss.
See benchmark results gcadj_std_v35h tests
--Yanko (talk) 04:19, 3 June 2015 (UTC)
Add PM to Diag59
Added PM Tracer concentration in ug/m3 to diagnostic 59.
--Yanko (talk) 20:45, 16 June 2015 (UTC)
Model Updates from v9-02
Fixed RO2+HO2 rate constant. See forward wiki.
Increase NO3 uptake by aerosol. See forward wiki.
Inhibition of N2O5 uptake by nitrate aerosol. See forward wiki.
RCP emissions scenarios. See forward wiki.
EDGAR v4.2 emissions for CH4 simulation. See forward wiki.
Update anthropogenic scale factors through 2010. See forward wiki.
Update GFED3 emissions to 2011. See forward wiki.
--Yanko (talk) 20:16, 6 April 2016 (UTC)
- Bug fixes in forward model
Fixed a bug in Henry's constant
Small error in the definition of the Henry's constant, which is used in the wet deposition routine. See forward wiki.
--Yanko 15:28, 24 July 2013 (EDT)
Prevent negative emissions over Canada
Found a nasty bug in CAC emissions. We should set the emissions to 0 when 2002 exceeds 2005 by more than a factor of three. See forward wiki.
--Yanko 15:28, 24 July 2013 (EDT)
Bug fix in grid_mod.F90
The sine of the last latitude edge (i.e. the north pole) is not calculated, which can cause problems for the regridding. See forward wiki.
--Yanko 14:38, 30 October 2013 (EDT)
Bug in ship CO emissions
EMEP ship emissions inventory was previously overwriting all ship CO emissions globally. See forward wiki.
--Yanko 19:02, 30 October 2013 (EDT)
Bugs in ship emissions and non-local PBL mixing
Ship NOx emissions with the ICOADS-AMVER inventory were 3.3 times too low, due to a NO2 vs. N molecular weight error. Emissions should be 5.0Tg(N)/yr. As a result, O3 and HNO3 concentrations were underestimated, especially over the N. Atlantic and N. Pacific. See forward wiki.
--Yanko 19:02, 30 October 2013 (EDT)
Eliminate several more array temporaries
In many areas of GEOS-Chem, we pass arrays as arguments from one routine to another. But if this is not done properly, it can cause GEOS-Chem to use an excessive amount of memory and take longer to run, especially at very fine resolutions. See forward wiki.
--Yanko 14:38, 30 October 2013 (EDT)
Bug fix for 3-hourly GFED3 emissions
Running with 3-hourly emissions from the first day of a month seems to work fine, but trying to start on any other day appears to cause a problem. See forward wiki.
--Yanko 17:11, 27 January 2014 (EST)
Emfossil Bug Fix
Fixed a bug on emfossil.f that made the model crash when ND49 diagnostic was turned on and NEI2005 emissions were used. If you want to see the changes on the code please find them here
--Yanko 16:03, 10 July 2014 (EDT)
Diagnostics Bug Fixes
AD32_an needs to be scaled by SCALESRCE (the number of emissions timesteps) in order to give the right quantity to the ND32 emissions diagnostic. Tropopause heights reported in the ND67 was high. See forward wiki.
--Yanko (talk) 20:45, 16 June 2015 (UTC)
Bug Fixes from v9-02
Included all relevant bug fixes from GEOS Chem v9-02. Here is a comprenhensive list of bug fixes included:
Bug fixes for MAP_A2A regridding algorithm. See forward wiki.
Parallelization error in routine DRYFLX See forward wiki.
Parallelization error in routine METERO See forward wiki.
Rewritten the arguments in routines FVDAS_CONVECT, HACK_CONV, and ARCONVTRAN so as to avoid creating array temporaries. See forward wiki.
Rewritten the arguments in routines GCAP_CONVECT and ARCONVTRAN so as to avoid creating array temporaries. See forward wiki.
Rewrite some argument definitions in routine DO_PJC_PFIX. See forward wiki.
Rewrite some argument definitions in routine SET_FLOATING_PRESSURE. See forward wiki.
Reactivate parallel DO loop in LINOZ_CHEMO3 See forward wiki.
Reactivate stratospheric P(Ox) in tagged Ox simulation See forward wiki.
Replace LD65 with LLTROP in tagged_ox_mod.F See forward wiki.
Reset NaNs in MOISTQ to zero See forward wiki.
Update molecular weight of sea salt tracers. See forward wiki.
Fixes for wetland emissions. See forward wiki.
Fix for bug in acetone photolysis pressure dependency See forward wiki.
--Yanko (talk) 21:40, 19 October 2015 (UTC)
Paranox DIV-BY-ZERO
In routine INTERPOLATE_LUT2 and its adjoint counterpart, there is a division JO1D / JNO2. But because JNO2 is a J-value, its value will go to zero at night. This will result in a div-by-zero error. See forward wiki.
--Yanko (talk) 17:40, 29 April 2017 (UTC)
WETSCAV Bug
ALPHA value is sometimes higher than 1 without the restriction. This leads to a gain in tracer mass at the lower levels in excess of what is coming from above. This makes optical depth too thick and causes photolysis to crash.
--Yanko (talk) 17:40, 29 April 2017 (UTC)
Dry-Wet Pressure Fix
Meemong Lee and Richard Weidner (JPL) issued a JPL Publication detailing a transport moisture fix. Their fix consists of (1) deriving dry surface pressures from GMAO moist surface pressures and specific humidity, and (2) replacing moist pressures with dry pressures throughout the model.
--Yanko (talk) 17:51, 19 June 2017 (UTC)
Nested Code Fix
Updated the compiler flags for the nested small domain (NESTED_SD) for China and North America. Fixed several bugs in the nested code.
--Yanko (talk) 17:24, 7 August 2018 (UTC)
- Updates to adjoint model
Add support for new deposition based cost functions
Added support for new deposition based cost functions.
See benchmark results gcadj_std_v35 tests 012 and 023
--Yanko 15:28, 24 July 2013 (EDT)
Implemented new ship emissions scheme
Implemented new ship emissions scheme matching forward model paranox module. Changes to the adjoint include, but are not limited to writing the adjoint of paranox and updating setemis_adj module.
See benchmark results gcadj_std_v35a tests
--Yanko 14:38, 30 October 2013 (EDT)
Makefile sets FFLAGS and LINK automatically
Makefile automatically selects the best guess for FFLAGS and LINK. With this new makefile user's won't have to edit the Makefile anymore. Makefile now uses the netcdf utilities to guess the flags. If you don't have netcdf installed on your system please refer to the forward model to install GEOS-Chem required libraries.
--Yanko 14:05, 22 August 2014 (EDT)
Observation Operators Updates
Fixed several bugs in TES, OMI and MOPITT observation operators. Dropped support for MOPITT v3 and v4. Added Support for MOPITT v5 and v6. Added covariance calculation for MOPPIT. Added flex diagnostics to TES HDF5 output. Updated OMI NO2 observation operator. Added OMI SO2 observation operator.
--Yanko (talk) 21:46, 20 October 2015 (UTC)
- Bug fixes in adjoint model
Small bug fix in wetscav_adj_mod.f
Fixed a small bug related to the ALPHA2 variable on WETDEP_ADJ subroutine in wetscav_adj_mod.f
--Yanko 15:28, 24 July 2013 (EDT)
GFED2 8 Day Bug Fix
GFED2 data was not read correctly in the backward calculation if the simulation include the first day of the year ( January 1st ). Because the last day of GFED2 data in December is Dec 27th, and the first day of January is 1st, so the gap is not 8 day.
--Yanko 15:25, 24 January 2014 (EST)
Deposition Diagnostics Bug Fix
Fix wetdep diagnostics 37, 38 and drydep 44, which previously did not include all species.
--Yanko 15:25, 24 January 2014 (EST)
Loose ANISO convergence
The convergence criteria for ANISO have been relaxed to allow for quicker calculations.
--Yanko 15:25, 24 January 2014 (EST)
Off Diagonal Covariance Bug Fix
Off diagonal covariance fix.
--Yanko 15:25, 24 January 2014 (EST)
LBFGS allocation Fix
LBFGS allocation fix, and also update to more recent implementation of the algorithm (v3.0).
--Yanko 15:25, 24 January 2014 (EST)
Fixed undefined variables and openMP problems
Fixed some undefined variables and some other minor issues on edgar_mod.f, inverse_mod.f, rpmares_adj_mod.f, time_mod.f, nei2008_anthro_mod.F90 and routines.f. Fixed the openMP loop in wet_settling, SALT_MASS was not declared as PRIVATE, due to this on every simulation the the values of coarse seasalt was different in the forward and adjoint run.
--Yanko 14:05, 22 August 2014 (EDT)
HTAP Bug Fixes
Fixed an openMP declaration and logical flags in SRCCO2_ADJ and SRCNH3_ADJ. Fixed wrong initialization of MEK_HTAP in htap_mod.f
--Yanko (talk) 21:40, 19 October 2015 (UTC)
Adjoint_Bugs
- The variance for the logarithm of the scaling factors were computed incorrectly for the LOG optimization.
- Aerosol biofuel emissions didn't turn off when biofuel is turned off in input.geos.
- Fixed bug the caused GET_SPEC function to return “1” when the species name doesn’t match with any of the names in “NAMEGAS” array.
- Only initialize OBS_THIS_SPECIES if a species is being observed.
- Filter out small negative values without causing the code to crash.
- In subroutine READ_IN_POPULATION in population_mod.f, the code only printed out warnings if the pop data isn't found or read in correctly.This was change to cause and error and stop the simulation.
- REG_PARAM gamma doesn't have any impact if using off-diagonal error covariance calculation.
- Updated Makefile to use flags to use avoid compile error when using big arrays for example with quarter degree resolution.
- Fix initialization of RRATE_ADJ in chemistry_mod.f
--Yanko (talk) 17:40, 29 April 2017 (UTC)
Upper Atmosphere Sensitivities Bug
It has been brought to our attention that we had a bug that affected adjoint sensitivities in the upper atmosphere. This bug did not impact our tests of sensitivities of surface level concentrations or measurements with respect to emissions, but it does have an effect on sensitivities in the upper atmosphere that could accumulate and ultimately affect sensitivities with respect to emissions, particularly for longer simulations. The consequence was that NOx sensitivities in particular were being underestimated by significant (30-50%) amounts.
--Yanko (talk) 15:40, 12 January 2018 (UTC)
Logarithmic Output Bug Fix
Fixed bug that affected some cases of logarithmic output during initial conditions and emissions optimizations.