Skip to content

Commit 413b73a

Browse files
author
Wyatt Sieminski
committed
Added mesh warning to add_constant_field and revised test suite to only combine/create FieldSets with the same underlying mesh
1 parent 3a0b551 commit 413b73a

2 files changed

Lines changed: 6 additions & 6 deletions

File tree

src/parcels/_core/fieldset.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ def add_constant_field(self, name: str, value, mesh: ptyping.Mesh = "spherical")
219219
self.reconstruct_fields()
220220
field = getattr(self, name)
221221
field.interp_method = XConstantField()
222-
# _warn_if_fields_use_different_meshes(self.fields.values())
222+
_warn_if_fields_use_different_meshes(self.fields.values())
223223

224224
def add_context(self, name, value):
225225
"""Add context variable to the FieldSet.
@@ -385,7 +385,7 @@ def _warn_if_fields_use_different_meshes(fields: Iterable[Field | VectorField]):
385385
warnings.warn(
386386
f"FieldSet has multiple different meshes: {meshes}. This may lead to unexpected behavior during execution.",
387387
category=FieldSetWarning,
388-
stacklevel=2,
388+
stacklevel=3,
389389
)
390390

391391

tests/test_fieldset.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def fieldset_two_models():
3131
fset2 = FieldSet.from_sgrid_conventions(ds2, mesh="flat", vector_fields={"UV_wind": ("U_wind", "V_wind")})
3232
fset2.add_context("my_value", 2.0)
3333
fset2.add_context("my_list", [1, 2, "hello"])
34-
fset2.add_constant_field("constant_field", 3.0)
34+
fset2.add_constant_field("constant_field", 3.0, mesh="flat")
3535
return fset1 + fset2
3636

3737

@@ -68,7 +68,7 @@ def test_fieldset_add_context_invalid_name(fieldset, name):
6868

6969

7070
def test_fieldset_add_constant_field(fieldset):
71-
fieldset.add_constant_field("test_constant_field", 1.0)
71+
fieldset.add_constant_field("test_constant_field", 1.0, mesh="flat")
7272

7373
# Get a point in the domain
7474
time = ds["time"].mean()
@@ -85,7 +85,7 @@ def test_fieldset_gridset(fieldset):
8585
assert fieldset.fields["UV"].grid in fieldset.gridset
8686
assert len(fieldset.gridset) == 1
8787

88-
fieldset.add_constant_field("constant_field", 1.0)
88+
fieldset.add_constant_field("constant_field", 1.0, mesh="flat")
8989
assert len(fieldset.gridset) == 2
9090

9191

@@ -232,7 +232,7 @@ def test_fieldset_time_interval():
232232
field2 = Field("field2", ds2["U_A_grid"], grid2, interp_method=XLinear)
233233

234234
fieldset = FieldSet([field1, field2])
235-
fieldset.add_constant_field("constant_field", 1.0)
235+
fieldset.add_constant_field("constant_field", 1.0, mesh="flat")
236236

237237
assert fieldset.time_interval.left == np.datetime64("2000-01-02")
238238
assert fieldset.time_interval.right == np.datetime64("2001-01-01")

0 commit comments

Comments
 (0)