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

CMORiser for the IAPv4.2 global ocean temperature dataset #3887

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

Conversation

rbeucher
Copy link
Contributor

@rbeucher rbeucher commented Jan 28, 2025

Description

This dataset provides gridded ocean temperature data at 1°×1° horizontal resolution, covering 0–6000m depth (119 levels), with monthly data from 1940 to the present. The data incorporates bias corrections, quality control, and mapping improvements (Cheng et al. 2024), making it suitable for climate variability and change studies over various scales and timescales.


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 28, 2025 23:21
@rbeucher rbeucher requested a review from flicj191 January 28, 2025 23:23
@rbeucher rbeucher force-pushed the cmoriser_iap_oceanTemp branch from 865d3fe to f69970b Compare January 29, 2025 00:49
@rbeucher rbeucher force-pushed the cmoriser_iap_oceanTemp branch from 33fc979 to 0423369 Compare January 29, 2025 01:30
@flicj191
Copy link
Contributor

I ran this and we need to check the units for tos
image

and when trying to load thetao I'm getting
Generic level coordinate olevel has wrong var_name. but I'll check if there's something missing on my side

@rbeucher
Copy link
Contributor Author

Units should be in Kelvin right? I think that's what I did.

@flicj191
Copy link
Contributor

I know tas is in kelvin, i think i've found tos data in degC but the cube should know the units so that hasn't come through? Or it just applies from the cmor info table..

@rbeucher
Copy link
Contributor Author

Hi @flicj191 , I have removed the unit conversion. I wonder if the cmorisation requires the units to be converted to kelvin or if degC is OK. Are the NOAA convert product in degC or K?

@flicj191
Copy link
Contributor

It's degC in the cmor table for tos and the other CMORised products for tos were in degC that I could see. I think when it loads it just applies the units from the cmor info.
Looks good now, will add something for thetao when I check that

latitude_coord = cube.coord("latitude")
longitude_coord = cube.coord("longitude")
depth_coord = cube.coord("standard depth")
depth_coord.rename("depth")
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
depth_coord.rename("depth")
depth_coord.rename("depth")
depth_coord.var_name = "lev"
depth_coord.attributes['positive'] = "down"

I was getting CMOR errors with the depth coordinate var_name, and couldn't load, have added corrections here

with catch_warnings():
warnings.simplefilter("ignore") # Ignore all warnings
cubes = iris.load(in_files, rawvar)
reference_year = raw_info["reference_year"]
Copy link
Contributor

Choose a reason for hiding this comment

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

reference_year isn't used

return file_list


def process_data(cube, reference_year):
Copy link
Contributor

Choose a reason for hiding this comment

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

reference_year isn't used



def process_data(cube, reference_year):
""" Process raw data. Convert to Kelvin and add time dimension.
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
""" Process raw data. Convert to Kelvin and add time dimension.
""" Process raw data. Add time dimension.

not converting to Kelvin

""" Process raw data. Convert to Kelvin and add time dimension.
Concatenate the cubes and return the new cube.
"""
# Convert temperature from Celsius to Kelvin and add time dimension
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
# Convert temperature from Celsius to Kelvin and add time dimension
# Add time dimension

not converting to Kelvin

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

Successfully merging this pull request may close these issues.

Add Downloader and CMORiser for IAPv4.2 ocean temperature and ocean heat content gridded dataset
2 participants