Skip to content

Update to ClimaOcean 0.10.0#1971

Open
simone-silvestri wants to merge 1 commit into
mainfrom
ss/climaocean-0.10.0
Open

Update to ClimaOcean 0.10.0#1971
simone-silvestri wants to merge 1 commit into
mainfrom
ss/climaocean-0.10.0

Conversation

@simone-silvestri

Copy link
Copy Markdown
Contributor

ClimaOcean changed a lot recently, this PR is updating ClimaCoupler to use ClimaOcean 0.10.0

@juliasloan25

juliasloan25 commented Jun 4, 2026

Copy link
Copy Markdown
Member

It looks like with the new interface, we can't pass the model clock for the ocean or sea ice models to use anymore. In main it gets passed to ClimaOcean.ocean_simulation here and to ClimaOcean.SeaIces.sea_ice_simulation here.

We now call:

  • ClimaOcean.OceanConfigurations.latitude_longitude_ocean -->
  • NumericalEarth.Oceans.ocean_simulation -->
  • NumericalEarth.Oceans.hydrostatic_ocean_simulation -->
  • Oceananigans.Models.HydrostaticFreeSurfaceModel

The only function in this callstack that exposes the clock kwarg is Oceananigans.Models.HydrostaticFreeSurfaceModel. The default clock uses Float64, so this PR means that we can't use ITime/DateTime times in CMIP anymore. I think this is still worth merging so we can use it to push the TripolarGrid change through, but we should re-enable non-Float time types.

I didn't trace through the callstack for the sea ice model but it has the same issue.

The fix would be to open PRs in NumericalEarth and ClimaOcean to expose the clock arg for the functions listed above, as well as the corresponding functions for the sea ice model. For now I switched all the CMIP models to use float time (use_itime = false).

@juliasloan25

Copy link
Copy Markdown
Member

I got this to a point where the ocean simulation can be constructed successfully. Now it fails when trying to access the sea ice artifact: ERROR: LoadError: IOError: mktempdir("/resnick/groups/esm/ClimaArtifacts/artifacts/ecco4_SIarea_SIheff_2010_01"): permission denied (EACCES) (full stacktrace here).

The fix that was applied in ClimaOcean here needs to be moved over into NumericalEarth.jl. After that's resolved, we may need to make more changes in the sea ice setup here, or in ClimaOcean/NumericalEarth/ClimaSeaIce, but we'll have to re-run CMIP to see.

@hgpeterson

Copy link
Copy Markdown
Member

I got this to a point where the ocean simulation can be constructed successfully. Now it fails when trying to access the sea ice artifact: ERROR: LoadError: IOError: mktempdir("/resnick/groups/esm/ClimaArtifacts/artifacts/ecco4_SIarea_SIheff_2010_01"): permission denied (EACCES) (full stacktrace here).

The fix that was applied in ClimaOcean here needs to be moved over into NumericalEarth.jl. After that's resolved, we may need to make more changes in the sea ice setup here, or in ClimaOcean/NumericalEarth/ClimaSeaIce, but we'll have to re-run CMIP to see.

The corresponding PR in NumericalEarth for the sea-ice dataset is here

Comment thread ext/ClimaCouplerCMIPExt/oceananigans.jl Outdated
# Set up ocean grid (1 degree)
resolution_points = (360, 160, 32)
Nz = last(resolution_points)
depth = 4000 # meters

@akshaysridhar akshaysridhar Jun 10, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

The vertical range of the NumericalEarth.DataWrangling.EN4.EN4Monthly() dataset (5500.0 m) is smaller than the target grid (6000.0 m). Some vertical levels cannot be filled with data.

(when using new default from CO.OceanConfigurations )

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

We should initialize with WOAAnnual

Comment thread ext/ClimaCouplerCMIPExt/oceananigans.jl Outdated
@akshaysridhar

Copy link
Copy Markdown
Member

Needs CliMA/ClimaAtmos.jl#4574

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Keep only CMIP runs (test only - revert before merge).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Shortened for <12h turnaround : revert.

Comment thread ext/ClimaCouplerCMIPExt/oceananigans.jl Outdated
@akshaysridhar akshaysridhar linked an issue Jun 12, 2026 that may be closed by this pull request
@akshaysridhar akshaysridhar force-pushed the ss/climaocean-0.10.0 branch from 778819a to 376eae0 Compare June 12, 2026 23:01
2) Update to use new regridder via ConservativeRegridding#0.2.5
3) Update to use tripolar ocean grid (1deg)
4) Temporarily disable ITime in CMIP until clock kwarg issues are resolved

Co-authored-by: Simone Silvestri <silvestri.simone0@gmail.com>
Co-authored-by: Akshay Sridhar <43710045+akshaysridhar@users.noreply.github.com>
Co-authored-by: Julia Sloan <jsloan@caltech.edu>
@akshaysridhar akshaysridhar force-pushed the ss/climaocean-0.10.0 branch from 376eae0 to 7c51613 Compare June 12, 2026 23:12
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.

Use improved SE conservative regridding

4 participants