Skip to content

Commit 6f178dc

Browse files
Merge pull request #2407 from Parcels-code/spherical_mesh_in_from_copernicusmarine
Setting the grid mesh to "spherical" in from_copernicusmarine
2 parents 0d419a2 + 863cf18 commit 6f178dc

File tree

2 files changed

+11
-4
lines changed

2 files changed

+11
-4
lines changed

src/parcels/_core/fieldset.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -235,15 +235,14 @@ def from_copernicusmarine(ds: xr.Dataset):
235235
},
236236
autoparse_metadata=False,
237237
**_DEFAULT_XGCM_KWARGS,
238-
)
238+
),
239+
mesh="spherical",
239240
)
240241

241242
fields = {}
242243
if "U" in ds.data_vars and "V" in ds.data_vars:
243244
fields["U"] = Field("U", ds["U"], grid, XLinear)
244245
fields["V"] = Field("V", ds["V"], grid, XLinear)
245-
fields["U"].units = GeographicPolar()
246-
fields["V"].units = Geographic()
247246

248247
if "W" in ds.data_vars:
249248
ds["W"] -= ds[

tests/test_fieldset.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import pytest
77
import xarray as xr
88

9-
from parcels import Field, ParticleFile, ParticleSet, VectorField, XGrid
9+
from parcels import Field, Geographic, GeographicPolar, ParticleFile, ParticleSet, VectorField, XGrid
1010
from parcels._core.fieldset import CalendarError, FieldSet, _datetime_to_msg
1111
from parcels._datasets.structured.circulation_models import datasets as datasets_circulation_models
1212
from parcels._datasets.structured.generic import T as T_structured
@@ -259,6 +259,14 @@ def test_fieldset_from_copernicusmarine(ds, caplog):
259259
assert "renamed it to 'V'" in caplog.text
260260

261261

262+
@pytest.mark.parametrize("ds", _COPERNICUS_DATASETS)
263+
def test_grid_mesh_units_from_copernicusmarine(ds):
264+
fieldset = FieldSet.from_copernicusmarine(ds)
265+
assert fieldset.U.grid._mesh == "spherical"
266+
assert isinstance(fieldset.U.units, GeographicPolar)
267+
assert isinstance(fieldset.V.units, Geographic)
268+
269+
262270
@pytest.mark.parametrize("ds", [datasets_circulation_models["ds_copernicusmarine"].copy()])
263271
def test_fieldset_from_copernicusmarine_missing_axis(ds, caplog):
264272
del ds["latitude"].attrs["axis"]

0 commit comments

Comments
 (0)