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

Add TropFlux CMORiser #3863

Open
wants to merge 30 commits into
base: main
Choose a base branch
from
Open

Add TropFlux CMORiser #3863

wants to merge 30 commits into from

Conversation

rbeucher
Copy link
Contributor

@rbeucher rbeucher commented Jan 15, 2025

Description

This PR introduces CMORizers for the TropFlux dataset to enable the processing of its variables for use within ESMValTool.

Global Attributes
Dataset ID: TROPFLUX
Project ID: OBS6
Tier: 2
Version: v1
Modeling Realm: reanaly
Source: https://incois.gov.in/tropflux/
Reference: tropflux

Variables CMORised
The following variables, with their corresponding CMOR tables, are included in this implementation:

ts (Amon): Derived from t2m
tos (Omon): Derived from sst
hfls (Lmon/CFmon): Derived from lhf
rlut (Amon): Derived from lwr
tau (Omon): Derived from tauy
rsds (Amon): Derived from swr

TropFlux provides air-sea flux estimates over the tropics and is widely used for evaluating tropical climate processes like ENSO. Since the CLIVAR package already utilizes TropFlux for ENSO diagnostics, including it in ESMValTool ensures compatibility and allows meaningful cross-framework comparisons.


Before you get started

Checklist

It is the responsibility of the author to make sure the pull request is ready to review. The icons indicate whether the item will be subject to the 🛠 Technical or 🧪 Scientific review.

New or updated data reformatting script


To help with the number of pull requests:

@rbeucher rbeucher requested a review from a team as a code owner January 15, 2025 06:27
@rbeucher rbeucher requested a review from flicj191 January 15, 2025 06:28
Copy link
Contributor

@valeriupredoi valeriupredoi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cheers @rbeucher looking good from a technical stand point - will approve when you add the dataset to the check obs recipe 😁

Copy link
Contributor

@flicj191 flicj191 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Edits and add some variables when I was checking, and found tauu looks in opposite direction

esmvaltool/cmorizers/data/cmor_config/TROPFLUX.yml Outdated Show resolved Hide resolved
esmvaltool/cmorizers/data/cmor_config/TROPFLUX.yml Outdated Show resolved Hide resolved
esmvaltool/cmorizers/data/cmor_config/TROPFLUX.yml Outdated Show resolved Hide resolved
esmvaltool/cmorizers/data/formatters/datasets/tropflux.py Outdated Show resolved Hide resolved
@rbeucher
Copy link
Contributor Author

I believe this is good to go @flicj191 ?

Copy link
Contributor

@flicj191 flicj191 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clean up of updated variables and adding messages to the log file from the formatter

esmvaltool/cmorizers/data/cmor_config/TROPFLUX.yml Outdated Show resolved Hide resolved
esmvaltool/cmorizers/data/cmor_config/TROPFLUX.yml Outdated Show resolved Hide resolved
esmvaltool/cmorizers/data/formatters/datasets/tropflux.py Outdated Show resolved Hide resolved
esmvaltool/recipes/examples/recipe_check_obs.yml Outdated Show resolved Hide resolved
doc/sphinx/source/input.rst Outdated Show resolved Hide resolved
doc/sphinx/source/input.rst Outdated Show resolved Hide resolved
doc/sphinx/source/input.rst Outdated Show resolved Hide resolved
esmvaltool/recipes/examples/recipe_check_obs.yml Outdated Show resolved Hide resolved
@rbeucher rbeucher requested a review from flicj191 January 30, 2025 03:28
@rbeucher
Copy link
Contributor Author

Thanks @flicj191

@rbeucher
Copy link
Contributor Author

rbeucher commented Feb 5, 2025

Hi @valeriupredoi, would you mind having a quick look? This should be good to go. Thanks!

Copy link
Contributor

@valeriupredoi valeriupredoi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looking good! Maybe just add a pointer to the iris dox about the new Future? Cheers guys 🍺

from esmvaltool.cmorizers.data import utilities as utils

logger = logging.getLogger(__name__)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# scitools-iris.readthedocs.io/en/stable/generated/api/iris.html#iris.Future

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

prob best to add a pointer why using that flag (also, the link may be >79 chars long)

@valeriupredoi
Copy link
Contributor

also, how is this data gonna live? Will we have to add it to the data pool or you guys doing that? Ping @axel-lauer on this one as well

@valeriupredoi valeriupredoi added this to the v2.12.0 milestone Feb 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add CMORiser for TropFlux
3 participants