Skip to content

Merge GEOS-Chem develop into main - #17

Open
joewallwork wants to merge 84 commits into
mainfrom
develop
Open

Merge GEOS-Chem develop into main#17
joewallwork wants to merge 84 commits into
mainfrom
develop

Conversation

@joewallwork

@joewallwork joewallwork commented Mar 24, 2025

Copy link
Copy Markdown
Collaborator

This PR updates the main branch of the fetch4:geos-chem repository with the code changes from the project.

The changes include upgrading to a more recent version of HEMCO, accounting for MODEL_GISS preprocessor flags, and a bugfix for a case where pressure_mod arrays may be allocated twice.

ltmurray and others added 30 commits May 6, 2024 19:49
…ISS-GC.

The goal is to try to get GISS-GC to run, so we can go back to before this commit, and imeplement a version that does not break GCClassic.

Note, the "GISS_MODEL" mostly robust, it's just edits to where MODEL_CLASSIC lines that are wrong.
Fix typo for MassFlux_Entry
CHANGELOG.md
- Added note about fixing typo in setCommonRunSettings.sh

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This merge brings PR geoschem#2363 (Update setCommonRunSettings.sh.template, by
@ltmurray) into the GEOS-Chem "no-diff-to-benchmark" development stream.

This PR fixes a typo that caused GCHP simulations to always think that
they were using mass fluxes, regardless of the actual requested met field
setting.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
…loud-j

Updates include:
 - Add new Input_Opt setting Nlevs_Phot_Cloud
 - Set Input_Opt%Nlevs_Phot_Cloud from new setting in geoschem_config.yml
   photolysis menu
 - Move a few existing settings in input_opt_mod.F90 to photolysis menu
   since that is now where they are stored in geoschem_config.yml
 - Update all geoschem_config.yml templates. All use 34 as number of levels
   with clouds except CESM which uses 22.

Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
This merge brings PR geoschem#2342 (Read number of levels with clouds used in
photolysis from config file used in photolysis from config file, by
@lizziel) into the GEOS-Chem "no-diff-to-benchmark" development stream.

This PR fixes an issue where hardwiring of the number of levels with
clouds (for Cloud-J photolysis) broke GEOS-Chem in CESM.  We now specify
the number of levels with cloud in geoschem_config.yml.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This update goes an update to Cloud-J.

Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
This merge brings PR geoschem#2353 (Cloud-J error handling, by @lizziel) into
the GEOS-Chem "no-diff-to-benchmark" development stream.

This PR implements robust error handling for Cloud-J (i.e. error code
passed all the way to the main program, for graceful shutdown).
NOTE: Relies on Cloud-J PR geoschem#19,

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
History/history_netcdf_mod.F90
- Moved the zeroing of State_Diag%SatDiagnCount to routine
  History_Write in history_mod.F90
- Also now test if the container name is either SatDiagn or SatDiagnEdge
  only once at the top of History_Netcdf_Write.

History/history_mod.F90
- Reset State_Diag%SatDiagnCount outside of the loop over containers,
  after History_Netcdf_Write has been called.  This is because we now
  have separate SatDiagn and SatDiagnEdge collections that both use
  the same SatDiagnCount array.

run/GCClassic/HISTORY.rc.templates/HISTORY.rc.*
- Remove `SatDiagnPEDGE` from the `SatDiagn` collection; this needs to
  be in the separate `SatDiagnEdge` collection
- Fix typo "SatDiagnConc_PEDGE" -> "SatDiagnPEDGE"
- Remove fields from SatDiagn entries that are not relevant
  for the given simulation (the user can restore these)

CHANGELOG.md
- Updated accordingly

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
…apability)

This merge brings PR geoschem#2366 (Changes for coupling GEOS-Chem to CESM in
Spectral-element Dynamical Core (CAM-SE), by @jimmielin) into the
GEOS-Chem "no-diff-to-benchmark" development stream.

This PR adds the capability of running GEOS-Chem using the
spectral-element dynamical core in the latest version of CESM.

# Conflicts:
#	CHANGELOG.md
This merge brings PR # (Fix several issues with the GEOS-Chem Classic
satellite diagnostics (SatDiagn and SatDiagnEdge collections)
, by @yantosca) into the GEOS-Chem "no-diff-to-benchmark" development
stream.

This PR resolves several issues in the GEOS-Chem Classic satellite
diagnostics, as were reported by users.  The satellite diagnostics
are now also compatible with the GEOS-Chem carbon simulation.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This commit addresses the issue raised in geos-chem geoschem#2319.  We have
now updated the following files so that only the "benchmark" fullchem
simulation uses the MEGAN extension, while other "standard" simulations
use the offline emissions.

run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.aerosol
run/GCClassic/HEMCO_Config.rc.templates/HEMCO_Config.rc.fullchem
run/GCHP/HEMCO_Config.rc.templates/HEMCO_Config.rc.aerosol
- Replace "on" with ${RUNDIR_MEGAN_EXT} to toggle the MEGAN extension
  on or off based on the options given to createRunDir.sh.

run/GCClassic/createRunDir.sh
run/GCHP/createRunDir.sh
- Set RUNDIR_MEGAN_EXT='off' for the aerosol-only simulation
- Set RUNDIR_MEGAN_EXT='off' for the fullchem non-benchmark simulations
- Set RUNDIR_MEGAN_EXT='on'  for the fullchem benchmark simulation

CHANGELOG.md
- Updated accordingly

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
run/GCClassic/createRunDir.sh
- Add a line to set RUNDIR_MEGAN_EXT env var to "on" for GCAP2 met
- Reorder the RUNDIR_*_EXT variables alphabetically

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This merge brings PR geoschem#2372 (urn off the MEGAN extension for
fullchem "non-benchmark" simulations, by @yantosca) into the GEOS-Chem
"no-diff-to-benchmark" development stream.

This PR edits rundir scripts and HEMCO_Config.rc templates so that the
MEGAN emissions are only activated for the fullchem_benchmark simulation.
The other fullchem simulations use offline emissions (except when using
GCAP2 met, which uses online MEGAN).

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
GeosCore/gc_environment_mod.F90
- Throw an error (right before the call to Init_FJX) if FAST-JX
  photolysis is activated for fullchem or carbon simulations.
  FAST-JX is currently only supported for Hg.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
GeosCore/gc_environment_mod.F90
- Now test if it is NOT a Hg simulation rather than testing if it is
  a fullchem or carbon simulation.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This merge brings PR geoschem#2379 (Disable support for FAST-JX except for
the Hg simulation, by @yantosca) into the GEOS-Chem "no-diff-to-benchmark"
simulation.

This PR adds a runtime error trap that will halt execution if FAST-JX is
selected for any simulation other than Hg.  Eventually Hg will use Cloud-J.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
…_emissions_in_cesm

Update standard emissions in CESM to match standard model
We now run a 2x2.5 ModelE2.1 (aka GCAP 2.0) full-chemistry simulation in
the GCClassic integration tests. Only one scenario (SSP2-4.5) is evaluated
here simply to ensure these future scenario simulations compile and run
for 1 hour successfully. I will defer to @ltmurray for guidance on whether
additional simulations are needed.

The GCAP 2.0 integration test is passing off of 14.4.1, confirming that the
fixes in geoschem#2342 should have resolved
the issues of GCAP 2.0 not working in 14.0.0 (as reported by Lee Murray at
IGC11).

Sample integration test output:

```
==============================================================================
GEOS-Chem Classic: Execution Test Results

GCClassic #c49fcec Submod updates: Merge GEOS-Chem PR geoschem#2353 and Cloud-J PR geoschem#19
GEOS-Chem #7e4001658 Merge PR geoschem#2369 (Fix several issues with satellite diagnostics)
HEMCO     #2192e0e HEMCO 3.9.1 release

Using 24 OpenMP threads
Number of execution tests: 29

Submitted as SLURM job: 40462513
==============================================================================

Execution tests:
------------------------------------------------------------------------------
gc_05x0625_NA_47L_merra2_CH4........................Execute Simulation....PASS
gc_05x0625_NA_47L_merra2_fullchem...................Execute Simulation....PASS
gc_2x25_ModelE2.1_fullchem..........................Execute Simulation....PASS
```

Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
…racers

Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
…ur to 20 minutes

To speed up integration tests, we now run the ModelE2.1 (GCAP 2.0) simulation
for 20 minutes instead of 1 hour since these simulations run at 2x2.5 resolution.

Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
yantosca and others added 25 commits August 5, 2024 18:12
… w/ GEOS-IT)

This merge brings PR # (Add GC-Classic transport tracer global half-degree
run option with GEOS-IT, by @lizziel) into the GEOS-Chem "no-diff-to-benchmark"
development stream.

This PR updates the GC-Classic create run directory script. It now offers
the option of a global 1/2-degree run using the transport tracer simulation
with GEOS-IT meteorology fields.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
GeosCore/sulfate_mod.F90
- Remove XNUMOL_H2O2 / CMPERM3 from the equation for DH2O2.  This used
  to convert PH2O2 to molec/cm3/s, but with KPP, PH2O2 is already in
  molec/cm3/s.
- Add !$OMP COLLAPSE( 3 ) for efficiency
- Add !$OMP SCHEDULE( DYNAMIC, 8 ) for better load balancing
- Change e.g. 0.0e+0_fp to 0.0_fp for clarity

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
GeosCore/sulfate_mod.F90
- Fix typo "SCHEUDLE" -> "SCHEDULE"

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
Previously the run directory was configured to always use online biogenic
MOH values for the EmisMOH_Biogenic variable in HEMCO emissions.

Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
…ig.rc

This update impacts only GCHP emissions for which we have both online and
offline sources, namely seasalt, soil NOx, biogenic, and dust emissions.
Previously HEMCO_Diagn.rc always specified offline emissions for use
in emissions diagnostic unless using the benchmark simulation. Now the
file is automatically updated at run-time to use online values instead
if the extension is turned on within HEMCO_Config.rc.

Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
This merge brings PR geoschem#2413 (Fix incorrect unit conversion for H2O2 in
the aerosol-only simulation, by @yantosca) into the GEOS-Chem
"no-diff-to-benchmark" development stream.

This PR fixes a longstanding unit conversion issue in the aerosol-only
simulation.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This merge brings PR # (Fixes for HEMCO diagnostic config file
HEMCO_Diagn.rc, by @lizziel) into the GEOS-Chem "no-diff-to-benchmark"
development stream.

This PR adds 2 fixes:

1. Use offline biogenic MOH emissions (except for the benchmark simulation,
   which uses online emissions by default)

2. Auto-set GCHP emissions sources in HEMCO_Diagn.rc based on HEMCO_Config.rc.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This merge brings the "no-diff-to-benchmark" updates into the main
branch in preparation for the GEOS-Chem 14.4.3 release.

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
Updated version numbers in:
- CHANGELOG.md

Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
Upgrade `develop` to v14.3.1
Add allocate guards for `PFLT_DRY` and co.
Use `MODEL_GISS` rather than `MODEL_CLASSIC`
Upgrade `develop` to GEOS-Chem v14.4.3
@joewallwork joewallwork added bug Something isn't working enhancement New feature or request labels Mar 24, 2025
@joewallwork joewallwork self-assigned this Mar 24, 2025
@joewallwork
joewallwork requested a review from ltmurray March 24, 2025 14:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants