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

Feature request for History wildcard support in GCHP #2647

Open
lizziel opened this issue Mar 12, 2024 · 1 comment
Open

Feature request for History wildcard support in GCHP #2647

lizziel opened this issue Mar 12, 2024 · 1 comment
Assignees
Labels
❓ Question Further information is requested

Comments

@lizziel
Copy link
Contributor

lizziel commented Mar 12, 2024

This feature request is an expansion of #210 with an updated summary of the wildcard functionality we would like to have in GCHP. Wildcards are functional in GEOS-Chem Classic via configuration of HISTORY.rc, such as in this entry:

  DryDep.template:            '%y4%m2%d2_%h2%n2z.nc4',
  DryDep.format:              'CFIO',
  DryDep.frequency:           010000
  DryDep.duration:            010000
  DryDep.mode:                'time-averaged'
  DryDep.fields:              'DryDepVel_?DRY?'
::

In this example, ?DRY? represents a list of all dry deposited species. The list is assembled at run-time by reading all advected species from a text file and then filtering it based on dry deposition logical per species stored in another text file. N exports are then created, where N is the number of advected species that are dry deposited. Each export has name DryDepVel_{species_name}, e.g. DryDepVel_O3.

We would like to do this in GCHP for two reasons: (1) to reduce the size of theGCHP History configuration file, and (2) to eliminate the need to maintain duplicate lists of species which can get out-of-date, e.g. if a new species is added to the model.

Currently in GCHP the text file that contains the advected species list is read during SetServices. The text file containing species properties (i.e. which species are dry deposited) is read during Initialize, but could be read during SetServices if needed.

Do you think this functionality is feasible in GCHP using MAPL v3?

@mathomp4 mathomp4 added the ❓ Question Further information is requested label Mar 12, 2024
@tclune
Copy link
Collaborator

tclune commented Mar 12, 2024

A related but somewhat confounding concern is a request by another user to have components maintain named sets of variables to be used in History. This avoids a current problem in which updates to components necessitate an update into the "app" repository which maintains the baseline history config file.

As @lizziel explained, the problem with this approach is often such lists of variables are dependent on other run-time switches. At best History would have to allow missing imports to be ignored, rather than raising an exception.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
❓ Question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants