Skip to content
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

Implementing GEOS-Chem chemistry in CESM (CESM-GC) #424

Open
lizziel opened this issue Sep 1, 2021 · 1 comment
Open

Implementing GEOS-Chem chemistry in CESM (CESM-GC) #424

lizziel opened this issue Sep 1, 2021 · 1 comment
Milestone

Comments

@lizziel
Copy link
Collaborator

lizziel commented Sep 1, 2021

This issue is to discuss the proposed changes in #378 and how they interact with the other components in CESM. Other PRs and issues related to the changes are:

This work was done by @fritzt but I am working to bring it up to the latest version of CESM and submit as PRs acceptable to merge. The original message from Thibaud in #378 is as follows:

Hello!

I have been working on implementing the GEOS-Chem (version 13.0.0) chemistry module in CESM2.1.1. This new option is designated as CESM2-GC. The implementation of GEOS-Chem chemistry inside CESM2 aims to provide an additional chemistry option alongside CAM-Chem.

Since the implementation of GEOS-Chem requires changes to multiple Git repositories, this is the first PR out of three (CAM, CLM, cime).

All GEOS-Chem source code and other dependencies for this project are obtained and handled with the Externals feature. The top-level Externals.cfg is provided as an attachment to this PR (renamed to Externals.txt).

CESM2-GC relies heavily on the implementation of HEMCO in CESM2 (https://github.com/ESCOMP/HEMCO_CESM). HEMCO is an ESMF-compatible interface to perform I/O (e.g. loading emission inventories) in atmospheric models. Note that HEMCO has been implemented in CAM and lives at a higher level than GEOS-Chem. This allows HEMCO to feed data (e.g. emission fluxes) to either GEOS-Chem or CAM-Chem. Compiling CESM2-GC with HEMCO requires the use of ESMF libraries (USE_ESMF_LIB).

Additionally, this implementation comes with a few modifications in cime and CLM. First, we wanted to have the option to let GEOS-Chem compute its own dry deposition velocities. This requires the coupler to pass land types from CLM to CAM. We have modified CLM, cime, and CAM accordingly. Finally, not all files in the GEOS-Chem subdirectories should be compiled. To deal with this, we introduced a feature that can exclude files from the compilation process (ESMCI/cime#3366). This feature, as well as changes to the Henry coefficients (due to added GEOS-Chem species) and the land type changes, will be introduced in another PR.

Because some of GEOS-Chem modules rely on module arrays, CESM2-GC cannot run with NTHRDS_ATM > 1. However, I have noticed that if any NTHRDS_* are greater than 1, then CESM2-GC still crashes, which I haven't been able to understand why.

Some of the input files required for CESM2-GC can be found on Cheyenne.

Let me know if you need anything else.

Regards,
Thibaud Fritz
Laboratory for Aviation and the Environment

@fritzt
Copy link

fritzt commented Sep 2, 2021

@gold2718 Here is an example case directory using GEOS-Chem chemistry on Cheyenne:
~fritzt/CESM-GC_13.0.0/cesm_standard/cesm.2.1.1/cime/scripts/FCSD_GEOSChem

It uses initial conditions that can be found for different horizontal resolutions in this folder: /glade/p/univ/umit0034/Shared/GEOS-Chem/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: To Do
Development

No branches or pull requests

3 participants