-
Notifications
You must be signed in to change notification settings - Fork 163
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PULL REQUEST] Add RO2concAfterChem diagnostic #1334
Conversation
Previously the RO2concAfterChem (and O3concAfterChem) diagnostics were only enabled when building with -DMODEL_GEOS=y. The #ifdef MODEL_GEOS bracketing lines are now removed for these diagnostics in fullchem_mod.F90 and state_diag_mod.F90. These diagnostics are now added to the ConcAfterChem collections in GCClassic and GCHP HISTORY.rc files. This addresses feature request: #1265. Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
RO2 is now defined as a a production family (PRO2) in KPP/fullchem/fullchem.kpp rather than summing the species included in RO2 in GeosCore/fullchem_mod.F90. This greatly cleans up the lines of code in fullchem_mod.F90. Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This all looks OK, as it is adding a new diagnostic via KPP. This greatly simplifies the code as well.
@@ -17,6 +17,7 @@ LCO : CO; | |||
PSO4 : SO4; | |||
LCH4 : CH4; | |||
PH2O2 : H2O2; | |||
PRO2: A3O2 + ATO2 + B3O2 + BRO2 + ETO2 + HO2 + LIMO2 + MO2 + PIO2 + PO2 + PRN1 + R4N1 + R4O2 + TRO2 + XRO2 + IHOO1 + IHOO4 + ICHOO + IHPOO1 + IHPOO2 + IHPOO3 + IEPOXAOO + IEPOXBOO + C4HVP1 + C4HVP2 + HPALD1OO + HPALD2OO + ISOPNOO1 + ISOPNOO2 + INO2D + INO2B + IDHNBOO + IDHNDOO1 + IDHNDOO2 + IHPNBOO + IHPNDOO + ICNOO + IDNOO; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Will also have to add this to the KPP/custom/custom.kpp
fille as well.
This issue has been automatically marked as stale because it has not had recent activity. If there are no updates within 7 days it will be closed. You can add the "never stale" tag to prevent the Stale bot from closing this issue. |
This issue has been automatically marked as stale because it has not had recent activity. If there are no updates within 7 days it will be closed. You can add the "never stale" tag to prevent the Stale bot from closing this issue. |
This update brings the feature/ro2-diag up to dev/14.1.0 Resolved conflicts in: Headers/state_diag_mod.F90 Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
Headers/state_diag_mod.F90 - Update the CASE statement that stops the run if we request fullchem diagnostics without running a simulation that uses KPP run/shared/species_database.yml - Add PRO2 entry for dummy KPP species that tracks chemical production of the RO2 family Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
Made a few updates:
|
run/GCClassic/createRunDir.sh run/GCHP/createRunDir.sh - Now get the fullchem & TOMAS restart files from the v2022-10 subdirectory of GEOSCHEM_RESTARTS. These restart files have the extra KPP family species SpeciesRst_PRO2 (GCClassic) and SPC_PRO2 (GCHP) added. This is needed in order to avoid the simulation dying in HEMCO due to the EFYO time cycle flag being specified. Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
run/GCHP/createRunDir.sh - Copy ExtData/GEOSCHEM_RESTARTS/v2022-10/GEOSChem.Restart.${sim_name}* restart files to the Restarts folder of the GCHP run directory. These restart files contain dummy species SPC_PRO2 (initialized to all zeroes). This is necessary in order to ensure that all species are defined in the restart file for GCHP (to avoid I/O errors at startup). Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
After creating new restart files with an additional variable ==============================================================================
GEOS-Chem Classic: Execution Test Results
Using 24 OpenMP threads
Number of execution tests: 48
==============================================================================
Execution tests:
------------------------------------------------------------------------------
gc_025x03125_CH4_geosfp_47L_na...................Execute Simulation.....PASS
gc_025x03125_fullchem_geosfp_47L_na..............Execute Simulation.....PASS
gc_05x0625_CH4_merra2_47L_na.....................Execute Simulation.....PASS
gc_05x0625_fullchem_merra2_47L_na................Execute Simulation.....PASS
gc_2x25_aerosol_merra2...........................Execute Simulation.....PASS
gc_2x25_CH4_merra2...............................Execute Simulation.....PASS
gc_2x25_CO2_merra2...............................Execute Simulation.....PASS
gc_2x25_fullchem_merra2..........................Execute Simulation.....PASS
gc_2x25_Hg_merra2................................Execute Simulation.....PASS
gc_2x25_metals_merra2............................Execute Simulation.....PASS
gc_2x25_POPs_BaP_merra2..........................Execute Simulation.....PASS
gc_2x25_tagCH4_merra2............................Execute Simulation.....PASS
gc_2x25_tagCO_merra2.............................Execute Simulation.....PASS
gc_2x25_tagO3_merra2.............................Execute Simulation.....PASS
gc_2x25_TransportTracers_merra2..................Execute Simulation.....PASS
gc_2x25_TransportTracers_merra2_LuoWd............Execute Simulation.....PASS
gc_4x5_aerosol_geosfp............................Execute Simulation.....PASS
gc_4x5_aerosol_merra2............................Execute Simulation.....PASS
gc_4x5_CH4_geosfp................................Execute Simulation.....PASS
gc_4x5_CH4_merra2................................Execute Simulation.....PASS
gc_4x5_fullchem_aciduptake_merra2................Execute Simulation.....PASS
gc_4x5_fullchem_APM_merra2.......................Execute Simulation.....PASS
gc_4x5_fullchem_benchmark_merra2.................Execute Simulation.....PASS
gc_4x5_fullchem_complexSOA_merra2................Execute Simulation.....PASS
gc_4x5_fullchem_complexSOA_SVPOA_merra2..........Execute Simulation.....PASS
gc_4x5_fullchem_geosfp...........................Execute Simulation.....PASS
gc_4x5_fullchem_marinePOA_merra2.................Execute Simulation.....PASS
gc_4x5_fullchem_merra2...........................Execute Simulation.....PASS
gc_4x5_fullchem_merra2_47L.......................Execute Simulation.....PASS
gc_4x5_fullchem_merra2_LuoWd.....................Execute Simulation.....PASS
gc_4x5_fullchem_RRTMG_merra2.....................Execute Simulation.....PASS
gc_4x5_fullchem_TOMAS15_merra2_47L...............Execute Simulation.....PASS
gc_4x5_fullchem_TOMAS40_merra2_47L...............Execute Simulation.....PASS
gc_4x5_Hg_geosfp.................................Execute Simulation.....PASS
gc_4x5_Hg_merra2.................................Execute Simulation.....PASS
gc_4x5_metals_merra2.............................Execute Simulation.....PASS
gc_4x5_POPs_BaP_geosfp...........................Execute Simulation.....PASS
gc_4x5_POPs_BaP_merra2...........................Execute Simulation.....PASS
gc_4x5_tagCH4_geosfp.............................Execute Simulation.....PASS
gc_4x5_tagCH4_merra2.............................Execute Simulation.....PASS
gc_4x5_tagCO_geosfp..............................Execute Simulation.....PASS
gc_4x5_tagCO_merra2..............................Execute Simulation.....PASS
gc_4x5_tagO3_geosfp..............................Execute Simulation.....PASS
gc_4x5_tagO3_merra2..............................Execute Simulation.....PASS
gc_4x5_TransportTracers_geosfp...................Execute Simulation.....PASS
gc_4x5_TransportTracers_geosfp_LuoWd.............Execute Simulation.....PASS
gc_4x5_TransportTracers_merra2...................Execute Simulation.....PASS
gc_4x5_TransportTracers_merra2_LuoWd.............Execute Simulation.....PASS
Summary of test results:
------------------------------------------------------------------------------
Execution tests passed: 48
Execution tests failed: 0
Execution tests not yet completed: 0
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% All execution tests passed! %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
After creating new restart files with the ==============================================================================
GCHP: Execution Test Results
Number of execution tests: 3
==============================================================================
Execution tests:
------------------------------------------------------------------------------
gchp_fullchem_benchmark_merra2_c48...............Execute Simulation.....PASS
gchp_fullchem_standard_merra2_c24................Execute Simulation.....PASS
gchp_TransportTracers_geosfp_c24.................Execute Simulation.....PASS
Summary of execution test results:
------------------------------------------------------------------------------
Execution tests passed: 3
Execution tests failed: 0
Execution tests not completed: 0
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% All execution tests passed! %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% NOTE: New restart files for GCClassic and GCHP fullchem and TOMAS Simulations will be stored in the path |
Note: This update causes slight differences in the full-chemistry benchmark simulations at the level of numerical noise attributed to adding a new prod-loss species into the KPP mechanism. We will put off merging in the PR for now until we decide (1) if these changes are acceptable and (2) if this diagnostic is widely needed by the community. |
I will close out this pull request for now. If it is deemed a priority by GEOS-Chem users/working groups then we can reopen it at a later date. |
This PR closes #1265 by enabling the RO2concAfterChem diagnostic for all full-chemistry simulations. Previously, this was available only when
MODEL_GEOS
was used. The calculation of RO2 has been removed from fullchem_mod.F90 and instead we define RO2 as a family in fullchem.kpp.