diff --git a/src/parcels/_core/fieldset.py b/src/parcels/_core/fieldset.py index fdb47f8e9..feb7c3d20 100644 --- a/src/parcels/_core/fieldset.py +++ b/src/parcels/_core/fieldset.py @@ -214,14 +214,13 @@ def from_ugrid_conventions(cls, ds: ux.UxDataset, mesh: str = "spherical"): if "U" in ds.data_vars and "V" in ds.data_vars: fields["U"] = Field("U", ds["U"], grid, _select_uxinterpolator(ds["U"])) fields["V"] = Field("V", ds["V"], grid, _select_uxinterpolator(ds["V"])) + fields["UV"] = VectorField("UV", fields["U"], fields["V"], vector_interp_method=Ux_Velocity) if "W" in ds.data_vars: fields["W"] = Field("W", ds["W"], grid, _select_uxinterpolator(ds["W"])) fields["UVW"] = VectorField( "UVW", fields["U"], fields["V"], fields["W"], vector_interp_method=Ux_Velocity ) - else: - fields["UV"] = VectorField("UV", fields["U"], fields["V"], vector_interp_method=Ux_Velocity) for varname in set(ds.data_vars) - set(fields.keys()): fields[varname] = Field(varname, ds[varname], grid, _select_uxinterpolator(ds[varname])) diff --git a/tests/test_fieldset.py b/tests/test_fieldset.py index 8056d4617..b2b05d33f 100644 --- a/tests/test_fieldset.py +++ b/tests/test_fieldset.py @@ -255,6 +255,7 @@ def test_fieldset_from_fesom2(): fieldset = FieldSet.from_ugrid_conventions(ds) assert "U" in fieldset.fields assert "V" in fieldset.fields + assert "UV" in fieldset.fields assert "UVW" in fieldset.fields