Skip to content

Commit 4b76275

Browse files
Testing offsets on mitgcm example data
1 parent 3e68800 commit 4b76275

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

src/parcels/convert.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,11 @@
4545
_MITGCM_AXIS_VARNAMES = {
4646
"XC": "X",
4747
"XG": "X",
48+
"Xp1": "X",
4849
"lon": "X",
4950
"YC": "Y",
5051
"YG": "Y",
52+
"Yp1": "Y",
5153
"lat": "Y",
5254
"Zu": "Z",
5355
"Zl": "Z",
@@ -330,7 +332,7 @@ def mitgcm_to_sgrid(*, fields: dict[str, xr.Dataset | xr.DataArray], coords: xr.
330332
ds.attrs.clear() # Clear global attributes from the merging
331333

332334
ds = _maybe_rename_variables(ds, _MITGCM_VARNAMES_MAPPING)
333-
# ds = _set_axis_attrs(ds, _MITGCM_AXIS_VARNAMES)
335+
ds = _set_axis_attrs(ds, _MITGCM_AXIS_VARNAMES)
334336
ds = _maybe_swap_depth_direction(ds)
335337

336338
if "grid" in ds.cf.cf_roles:

tests/test_convert.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from parcels import FieldSet
77
from parcels._core.utils import sgrid
88
from parcels._datasets.structured.circulation_models import datasets as datasets_circulation_models
9+
from parcels.interpolators._xinterpolators import _get_offsets_dictionary
910

1011

1112
def test_nemo_to_sgrid():
@@ -39,6 +40,18 @@ def test_nemo_to_sgrid():
3940
}.issubset(set(ds["V"].dims))
4041

4142

43+
def test_convert_mitgcm_offsets():
44+
data_folder = parcels.download_example_dataset("MITgcm_example_data")
45+
ds_fields = xr.open_dataset(data_folder / "mitgcm_UV_surface_zonally_reentrant.nc")
46+
coords = ds_fields[["XG", "YG", "Zl", "time"]]
47+
ds_fset = convert.mitgcm_to_sgrid(fields={"U": ds_fields.UVEL, "V": ds_fields.VVEL}, coords=coords)
48+
fieldset = FieldSet.from_sgrid_conventions(ds_fset)
49+
offsets = _get_offsets_dictionary(fieldset.UV.grid)
50+
assert offsets["X"] == 0
51+
assert offsets["Y"] == 0
52+
assert offsets["Z"] == 0
53+
54+
4255
_COPERNICUS_DATASETS = [
4356
datasets_circulation_models["ds_copernicusmarine"],
4457
datasets_circulation_models["ds_copernicusmarine_waves"],

0 commit comments

Comments
 (0)