Skip to content

Commit ec70ca0

Browse files
Merge remote-tracking branch 'origin/main' into ss/omip-prototype
2 parents 92fda28 + 8e26abd commit ec70ca0

File tree

12 files changed

+23
-17
lines changed

12 files changed

+23
-17
lines changed

.buildkite/examples_build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ steps:
2929
- label: "Run documentation"
3030
key: "build_documentation"
3131
commands:
32-
- "$TARTARUS_HOME/julia-$JULIA_VERSION/bin/julia --color=yes -O0 --project=docs/ -e 'using Pkg; Pkg.add(url=\"https://github.com/CliMA/Oceananigans.jl\", rev=\"ss/fix-zstar-bc\"); Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate(); Pkg.precompile(; strict=true)'"
32+
- "$TARTARUS_HOME/julia-$JULIA_VERSION/bin/julia --color=yes -O0 --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate(); Pkg.precompile(; strict=true)'"
3333
- "$TARTARUS_HOME/julia-$JULIA_VERSION/bin/julia --color=yes -O0 --project=docs/ docs/make.jl"
3434
agents:
3535
queue: ClimaOcean-docs

CondaPkg.toml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
2+
[pip.deps]
3+
copernicusmarine = ">=2.0.0"
4+
xarray = ">=2024.7.0"
5+
numpy = ">=2.0.0"
6+
jax = ">=0.6"
7+
tensorflow = ">=2.17"

Project.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name = "ClimaOcean"
22
uuid = "0376089a-ecfe-4b0e-a64f-9c555d74d754"
33
license = "MIT"
44
authors = ["Climate Modeling Alliance and contributors"]
5-
version = "0.8.0"
5+
version = "0.8.1"
66

77
[deps]
88
Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e"
@@ -44,7 +44,7 @@ ClimaOceanReactantExt = "Reactant"
4444
Adapt = "4"
4545
CFTime = "0.1, 0.2"
4646
CUDA = "4, 5"
47-
ClimaSeaIce = "0.3.1"
47+
ClimaSeaIce = "0.3.3"
4848
CondaPkg = "0.2.28"
4949
CubicSplines = "0.2"
5050
DataDeps = "0.7"
@@ -55,7 +55,7 @@ JLD2 = "0.4, 0.5"
5555
KernelAbstractions = "0.9"
5656
MPI = "0.20"
5757
NCDatasets = "0.12, 0.13, 0.14"
58-
Oceananigans = "0.97.3"
58+
Oceananigans = "0.97.4"
5959
OffsetArrays = "1.14"
6060
PrecompileTools = "1"
6161
PythonCall = "0.9"

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ Note that though ClimaOcean is currently focused on hydrostatic modeling with `O
105105
If you use ClimaOcean for your research, teaching, or fun 🤩, everyone in our community will be grateful
106106
if you give credit by citing the corresponding Zenodo record, e.g.,
107107

108-
> Wagner, G. L. et al. (2025). CliMA/ClimaOcean.jl: v0.7.0 (v0.7.0). Zenodo. https://doi.org/10.5281/zenodo.7677442
108+
> Wagner, G. L. et al. (2025). CliMA/ClimaOcean.jl: v0.8.1 (v0.8.1). Zenodo. https://doi.org/10.5281/zenodo.7677442
109109
110110
and also the recent [preprint submitted to the Journal of Advances in Modeling Earth Systems](https://arxiv.org/abs/2502.14148) that presents an overview of all the things that make Oceananigans unique:
111111

examples/one_degree_simulation.jl

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ Nz = 40
2929
depth = 4000meters
3030
z = ExponentialCoordinate(Nz, -depth, 0; scale = 0.85*depth)
3131
z = Oceananigans.Grids.MutableVerticalDiscretization(z)
32-
3332
underlying_grid = TripolarGrid(arch; size = (Nx, Ny, Nz), halo = (5, 5, 4), z)
3433

3534
# Next, we build bathymetry on this grid, using interpolation passes to smooth the bathymetry.

experiments/arctic_simulation.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ arch = GPU()
1515

1616
depth = 2000meters
1717
Nz = 30
18-
z = ExponentialCoordinate(Nz, depth, 0; scale=depth/3)
18+
z = ExponentialCoordinate(Nz, -depth, 0; scale=depth/3)
1919
z = MutableVerticalDiscretization(z)
2020

2121
Nx = 180 # longitudinal direction -> 250 points is about 1.5ᵒ resolution

experiments/flux_climatology/flux_climatology.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -133,10 +133,10 @@ function PrescribedOcean(timeseries;
133133
Jᵀ = Field{Center, Center, Nothing}(grid)
134134
= Field{Center, Center, Nothing}(grid)
135135

136-
u = XFaceField(grid, boundary_conditions=FieldBoundaryConditions(grid, (Face, Center, Center), top = FluxBoundaryCondition(τx)))
137-
v = YFaceField(grid, boundary_conditions=FieldBoundaryConditions(grid, (Center, Face, Center), top = FluxBoundaryCondition(τy)))
138-
T = CenterField(grid, boundary_conditions=FieldBoundaryConditions(grid, (Center, Center, Center), top = FluxBoundaryCondition(Jᵀ)))
139-
S = CenterField(grid, boundary_conditions=FieldBoundaryConditions(grid, (Center, Center, Center), top = FluxBoundaryCondition(Jˢ)))
136+
u = XFaceField(grid, boundary_conditions=FieldBoundaryConditions(grid, (Face(), Center(), Center()), top = FluxBoundaryCondition(τx)))
137+
v = YFaceField(grid, boundary_conditions=FieldBoundaryConditions(grid, (Center(), Face(), Center()), top = FluxBoundaryCondition(τy)))
138+
T = CenterField(grid, boundary_conditions=FieldBoundaryConditions(grid, (Center(), Center(), Center()), top = FluxBoundaryCondition(Jᵀ)))
139+
S = CenterField(grid, boundary_conditions=FieldBoundaryConditions(grid, (Center(), Center(), Center()), top = FluxBoundaryCondition(Jˢ)))
140140

141141
PrescribedOcean(architecture(grid), grid, clock, (; u, v, w=ZeroField()), (; T, S), timeseries)
142142
end

ext/ClimaOceanPythonCallExt.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ function download_dataset(meta::CopernicusMetadata, grid=nothing; skip_existing
3131
output_path = joinpath(output_directory, output_filename)
3232
isfile(output_path) && return output_path
3333

34-
toolbox = try
34+
toolbox = try
3535
pyimport("copernicusmarine")
3636
catch
3737
install_copernicusmarine()
@@ -97,4 +97,4 @@ function depth_bounds_kw(z)
9797
return (; minimum_depth, maximum_depth)
9898
end
9999

100-
end # module ClimaOceanPythonCallExt
100+
end # module ClimaOceanPythonCallExt

src/DataWrangling/JRA55/JRA55_field_time_series.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -433,7 +433,7 @@ function JRA55FieldTimeSeries(metadata::JRA55Metadata, architecture=CPU(), FT=Fl
433433
latitude = φr,
434434
topology = (TX, Bounded, Flat))
435435

436-
boundary_conditions = FieldBoundaryConditions(JRA55_native_grid, (Center, Center, Nothing))
436+
boundary_conditions = FieldBoundaryConditions(JRA55_native_grid, (Center(), Center(), nothing))
437437
start_time = first_date(metadata.dataset, metadata.name)
438438
times = native_times(metadata; start_time)
439439

src/DataWrangling/metadata_field_time_series.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ function FieldTimeSeries(metadata::Metadata, grid::AbstractGrid;
120120

121121
times = native_times(metadata)
122122
loc = LX, LY, LZ = location(metadata)
123-
boundary_conditions = FieldBoundaryConditions(grid, loc)
123+
boundary_conditions = FieldBoundaryConditions(grid, instantiate.(loc))
124124
fts = FieldTimeSeries{LX, LY, LZ}(grid, times; backend, time_indexing, boundary_conditions)
125125
set!(fts)
126126

0 commit comments

Comments
 (0)