Skip to content

Commit 0d9f82b

Browse files
committed
maint: Remove deprecated methods and properties
1 parent b883125 commit 0d9f82b

File tree

7 files changed

+5
-789
lines changed

7 files changed

+5
-789
lines changed

parcels/field.py

Lines changed: 2 additions & 134 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
assert_valid_gridindexingtype,
2828
assert_valid_interp_method,
2929
)
30-
from parcels.tools._helpers import default_repr, deprecated_made_private, field_repr, timedelta_to_float
30+
from parcels.tools._helpers import default_repr, field_repr, timedelta_to_float
3131
from parcels.tools.converters import (
3232
TimeConverter,
3333
UnitConverter,
@@ -50,7 +50,7 @@
5050
DeferredNetcdfFileBuffer,
5151
NetcdfFileBuffer,
5252
)
53-
from .grid import CGrid, Grid, GridType, _calc_cell_areas, _calc_cell_edge_sizes
53+
from .grid import CGrid, Grid, GridType, _calc_cell_areas
5454

5555
if TYPE_CHECKING:
5656
from ctypes import _Pointer as PointerType
@@ -353,36 +353,6 @@ def __init__(
353353
def __repr__(self) -> str:
354354
return field_repr(self)
355355

356-
@property
357-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
358-
def dataFiles(self):
359-
return self._dataFiles
360-
361-
@property
362-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
363-
def chunk_set(self):
364-
return self._chunk_set
365-
366-
@property
367-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
368-
def c_data_chunks(self):
369-
return self._c_data_chunks
370-
371-
@property
372-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
373-
def data_chunks(self):
374-
return self._data_chunks
375-
376-
@property
377-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
378-
def creation_log(self):
379-
return self._creation_log
380-
381-
@property
382-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
383-
def loaded_time_indices(self):
384-
return self._loaded_time_indices
385-
386356
@property
387357
def dimensions(self):
388358
return self._dimensions
@@ -431,11 +401,6 @@ def cast_data_dtype(self):
431401
def netcdf_engine(self):
432402
return self._netcdf_engine
433403

434-
@classmethod
435-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
436-
def get_dim_filenames(cls, *args, **kwargs):
437-
return cls._get_dim_filenames(*args, **kwargs)
438-
439404
@classmethod
440405
def _get_dim_filenames(cls, filenames, dim):
441406
if isinstance(filenames, str) or not isinstance(filenames, collections.abc.Iterable):
@@ -450,11 +415,6 @@ def _get_dim_filenames(cls, filenames, dim):
450415
else:
451416
return filenames
452417

453-
@staticmethod
454-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
455-
def collect_timeslices(*args, **kwargs):
456-
return Field._collect_timeslices(*args, **kwargs)
457-
458418
@staticmethod
459419
def _collect_timeslices(
460420
timestamps, data_filenames, _grid_fb_class, dimensions, indices, netcdf_engine, netcdf_decodewarning=None
@@ -861,10 +821,6 @@ def from_xarray(
861821
**kwargs,
862822
)
863823

864-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
865-
def reshape(self, *args, **kwargs):
866-
return self._reshape(*args, **kwargs)
867-
868824
def _reshape(self, data, transpose=False):
869825
# Ensure that field data is the right data type
870826
if not isinstance(data, (np.ndarray, da.core.Array)):
@@ -963,51 +919,19 @@ def set_depth_from_field(self, field):
963919
if self.grid != field.grid:
964920
field.grid.depth_field = field
965921

966-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
967-
def calc_cell_edge_sizes(self):
968-
_calc_cell_edge_sizes(self.grid)
969-
970922
def cell_areas(self):
971923
"""Method to calculate cell sizes based on cell_edge_sizes.
972924
973925
Only works for Rectilinear Grids
974926
"""
975927
return _calc_cell_areas(self.grid)
976928

977-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
978-
def search_indices_vertical_z(self, *_):
979-
raise NotImplementedError
980-
981-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
982-
def search_indices_vertical_s(self, *args, **kwargs):
983-
raise NotImplementedError
984-
985-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
986-
def reconnect_bnd_indices(self, *args, **kwargs):
987-
raise NotImplementedError
988-
989-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
990-
def search_indices_rectilinear(self, *_):
991-
raise NotImplementedError
992-
993-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
994-
def search_indices_curvilinear(self, *_):
995-
raise NotImplementedError
996-
997-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
998-
def search_indices(self, *_):
999-
raise NotImplementedError
1000-
1001929
def _search_indices(self, time, z, y, x, ti=-1, particle=None, search2D=False):
1002930
if self.grid._gtype in [GridType.RectilinearSGrid, GridType.RectilinearZGrid]:
1003931
return _search_indices_rectilinear(self, time, z, y, x, ti, particle=particle, search2D=search2D)
1004932
else:
1005933
return _search_indices_curvilinear(self, time, z, y, x, ti, particle=particle, search2D=search2D)
1006934

1007-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1008-
def interpolator2D(self, *_):
1009-
raise NotImplementedError
1010-
1011935
def _interpolator2D(self, ti, z, y, x, particle=None):
1012936
"""Impelement 2D interpolation with coordinate transformations as seen in Delandmeter and Van Sebille (2019), 10.5194/gmd-12-3571-2019.."""
1013937
(_, eta, xsi, _, yi, xi) = self._search_indices(-1, z, y, x, particle=particle)
@@ -1024,10 +948,6 @@ def _interpolator2D(self, ti, z, y, x, particle=None):
1024948
raise RuntimeError(self.interp_method + " is not implemented for 2D grids")
1025949
return f(ctx)
1026950

1027-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1028-
def interpolator3D(self, *_):
1029-
raise NotImplementedError
1030-
1031951
def _interpolator3D(self, ti, z, y, x, time, particle=None):
1032952
"""Impelement 3D interpolation with coordinate transformations as seen in Delandmeter and Van Sebille (2019), 10.5194/gmd-12-3571-2019.."""
1033953
(zeta, eta, xsi, zi, yi, xi) = self._search_indices(time, z, y, x, ti, particle=particle)
@@ -1060,10 +980,6 @@ def temporal_interpolate_fullfield(self, ti, time):
1060980
f1 = self.data[ti + 1, :]
1061981
return f0 + (f1 - f0) * ((time - t0) / (t1 - t0))
1062982

1063-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1064-
def spatial_interpolation(self, *args, **kwargs):
1065-
return self._spatial_interpolation(*args, **kwargs)
1066-
1067983
def _spatial_interpolation(self, ti, z, y, x, time, particle=None):
1068984
"""Interpolate horizontal field values using a SciPy interpolator."""
1069985
try:
@@ -1084,10 +1000,6 @@ def _spatial_interpolation(self, ti, z, y, x, time, particle=None):
10841000
e = add_note(e, f"Error interpolating field '{self.name}'.", before=True)
10851001
raise e
10861002

1087-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1088-
def time_index(self, *_):
1089-
raise NotImplementedError
1090-
10911003
def _time_index(self, time):
10921004
"""Find the index in the time array associated with a given time.
10931005
@@ -1172,10 +1084,6 @@ def eval(self, time, z, y, x, particle=None, applyConversion=True):
11721084
else:
11731085
return value
11741086

1175-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1176-
def ccode_eval(self, *args, **kwargs):
1177-
return self._ccode_eval(*args, **kwargs)
1178-
11791087
def _ccode_eval(self, var, t, z, y, x):
11801088
self._check_velocitysampling()
11811089
ccode_str = (
@@ -1185,31 +1093,15 @@ def _ccode_eval(self, var, t, z, y, x):
11851093
)
11861094
return ccode_str
11871095

1188-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1189-
def ccode_convert(self, *args, **kwargs):
1190-
return self._ccode_convert(*args, **kwargs)
1191-
11921096
def _ccode_convert(self, _, z, y, x):
11931097
return self.units.ccode_to_target(z, y, x)
11941098

1195-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1196-
def get_block_id(self, *args, **kwargs):
1197-
return self._get_block_id(*args, **kwargs)
1198-
11991099
def _get_block_id(self, block):
12001100
return np.ravel_multi_index(block, self.nchunks)
12011101

1202-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1203-
def get_block(self, *args, **kwargs):
1204-
return self._get_block(*args, **kwargs)
1205-
12061102
def _get_block(self, bid):
12071103
return np.unravel_index(bid, self.nchunks[1:])
12081104

1209-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1210-
def chunk_setup(self, *args, **kwargs):
1211-
return self._chunk_setup(*args, **kwargs)
1212-
12131105
def _chunk_setup(self):
12141106
if isinstance(self.data, da.core.Array):
12151107
chunks = self.data.chunks
@@ -1240,10 +1132,6 @@ def _chunk_setup(self):
12401132
self.grid.chunk_info = sum(self.grid.chunk_info, []) # noqa: RUF017
12411133
self._chunk_set = True
12421134

1243-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1244-
def chunk_data(self, *args, **kwargs):
1245-
return self._chunk_data(*args, **kwargs)
1246-
12471135
def _chunk_data(self):
12481136
if not self._chunk_set:
12491137
self._chunk_setup()
@@ -1414,10 +1302,6 @@ def write(self, filename, varname=None):
14141302
)
14151303
dset.to_netcdf(filepath, unlimited_dims="time_counter")
14161304

1417-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1418-
def rescale_and_set_minmax(self, *args, **kwargs):
1419-
return self._rescale_and_set_minmax(*args, **kwargs)
1420-
14211305
def _rescale_and_set_minmax(self, data):
14221306
data[np.isnan(data)] = 0
14231307
if self._scaling_factor:
@@ -1428,10 +1312,6 @@ def _rescale_and_set_minmax(self, data):
14281312
data[data > self.vmax] = 0
14291313
return data
14301314

1431-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
1432-
def data_concatenate(self, *args, **kwargs):
1433-
return self._data_concatenate(*args, **kwargs)
1434-
14351315
def _data_concatenate(self, data, data_to_concat, tindex):
14361316
if data[tindex] is not None:
14371317
if isinstance(data, np.ndarray):
@@ -1554,14 +1434,6 @@ def _check_grid_dimensions(grid1, grid2):
15541434
and np.allclose(grid1.time_full, grid2.time_full)
15551435
)
15561436

1557-
@deprecated_made_private # TODO: Remove 6 months after v3.2.0
1558-
def dist(self, *args, **kwargs):
1559-
raise NotImplementedError
1560-
1561-
@deprecated_made_private # TODO: Remove 6 months after v3.2.0
1562-
def jacobian(self, *args, **kwargs):
1563-
raise NotImplementedError
1564-
15651437
def spatial_c_grid_interpolation2D(self, ti, z, y, x, time, particle=None, applyConversion=True):
15661438
grid = self.U.grid
15671439
(_, eta, xsi, zi, yi, xi) = self.U._search_indices(time, z, y, x, ti, particle=particle)
@@ -2051,10 +1923,6 @@ def __getitem__(self, key):
20511923
except tuple(AllParcelsErrorCodes.keys()) as error:
20521924
return _deal_with_errors(error, key, vector_type=self.vector_type)
20531925

2054-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
2055-
def ccode_eval(self, *args, **kwargs):
2056-
return self._ccode_eval(*args, **kwargs)
2057-
20581926
def _ccode_eval(self, varU, varV, varW, U, V, W, t, z, y, x):
20591927
ccode_str = ""
20601928
if "3D" in self.vector_type:

parcels/fieldset.py

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
from parcels.grid import Grid
1515
from parcels.gridset import GridSet
1616
from parcels.particlefile import ParticleFile
17-
from parcels.tools._helpers import deprecated_made_private, fieldset_repr
17+
from parcels.tools._helpers import fieldset_repr
1818
from parcels.tools.converters import TimeConverter, convert_xarray_time_units
1919
from parcels.tools.loggers import logger
2020
from parcels.tools.statuscodes import TimeExtrapolationError
@@ -63,11 +63,6 @@ def __repr__(self):
6363
def particlefile(self):
6464
return self._particlefile
6565

66-
@property
67-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
68-
def completed(self):
69-
return self._completed
70-
7166
@staticmethod
7267
def checkvaliddimensionsdict(dims):
7368
for d in dims:
@@ -248,10 +243,6 @@ def add_vector_field(self, vfield):
248243
for f in vfield:
249244
f.fieldset = self
250245

251-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
252-
def add_UVfield(self, *args, **kwargs):
253-
return self._add_UVfield(*args, **kwargs)
254-
255246
def _add_UVfield(self):
256247
if not hasattr(self, "UV") and hasattr(self, "U") and hasattr(self, "V"):
257248
if isinstance(self.U, NestedField):
@@ -264,10 +255,6 @@ def _add_UVfield(self):
264255
else:
265256
self.add_vector_field(VectorField("UVW", self.U, self.V, self.W))
266257

267-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
268-
def check_complete(self):
269-
return self._check_complete()
270-
271258
def _check_complete(self):
272259
assert self.U, 'FieldSet does not have a Field named "U"'
273260
assert self.V, 'FieldSet does not have a Field named "V"'
@@ -345,11 +332,6 @@ def check_velocityfields(U, V, W):
345332
f.grid._depth = depth_data if isinstance(depth_data, np.ndarray) else np.array(depth_data)
346333
self._completed = True
347334

348-
@classmethod
349-
@deprecated_made_private # TODO: Remove 6 months after v3.1.0
350-
def parse_wildcards(cls, *args, **kwargs):
351-
return cls._parse_wildcards(*args, **kwargs)
352-
353335
@classmethod
354336
def _parse_wildcards(cls, paths, filenames, var):
355337
if not isinstance(paths, list):

0 commit comments

Comments
 (0)