anemoi-datasets 0.2.0__py3-none-any.whl → 0.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. anemoi/datasets/__main__.py +7 -51
  2. anemoi/datasets/_version.py +2 -2
  3. anemoi/datasets/commands/__init__.py +5 -59
  4. anemoi/datasets/commands/copy.py +141 -83
  5. anemoi/datasets/commands/create.py +14 -3
  6. anemoi/datasets/commands/inspect/__init__.py +1 -5
  7. anemoi/datasets/compute/{perturbations.py → recentre.py} +24 -23
  8. anemoi/datasets/create/__init__.py +3 -0
  9. anemoi/datasets/create/config.py +7 -1
  10. anemoi/datasets/create/functions/sources/accumulations.py +7 -3
  11. anemoi/datasets/create/functions/sources/hindcasts.py +437 -0
  12. anemoi/datasets/create/functions/sources/mars.py +13 -7
  13. anemoi/datasets/create/functions/sources/{perturbations.py → recentre.py} +5 -5
  14. anemoi/datasets/create/input.py +0 -5
  15. anemoi/datasets/create/loaders.py +36 -0
  16. anemoi/datasets/create/persistent.py +1 -3
  17. anemoi/datasets/create/statistics/__init__.py +7 -17
  18. anemoi/datasets/create/statistics/summary.py +1 -4
  19. anemoi/datasets/create/writer.py +4 -3
  20. anemoi/datasets/data/indexing.py +1 -3
  21. anemoi/datasets/data/stores.py +2 -6
  22. anemoi/datasets/data/unchecked.py +1 -6
  23. anemoi/datasets/grids.py +2 -2
  24. {anemoi_datasets-0.2.0.dist-info → anemoi_datasets-0.3.0.dist-info}/METADATA +30 -21
  25. {anemoi_datasets-0.2.0.dist-info → anemoi_datasets-0.3.0.dist-info}/RECORD +29 -28
  26. {anemoi_datasets-0.2.0.dist-info → anemoi_datasets-0.3.0.dist-info}/LICENSE +0 -0
  27. {anemoi_datasets-0.2.0.dist-info → anemoi_datasets-0.3.0.dist-info}/WHEEL +0 -0
  28. {anemoi_datasets-0.2.0.dist-info → anemoi_datasets-0.3.0.dist-info}/entry_points.txt +0 -0
  29. {anemoi_datasets-0.2.0.dist-info → anemoi_datasets-0.3.0.dist-info}/top_level.txt +0 -0
@@ -26,14 +26,14 @@ LOG = logging.getLogger(__name__)
26
26
 
27
27
 
28
28
  def default_statistics_dates(dates):
29
- """
30
- Calculate default statistics dates based on the given list of dates.
29
+ """Calculate default statistics dates based on the given list of dates.
31
30
 
32
31
  Args:
33
32
  dates (list): List of datetime objects representing dates.
34
33
 
35
34
  Returns:
36
35
  tuple: A tuple containing the default start and end dates.
36
+
37
37
  """
38
38
 
39
39
  def to_datetime(d):
@@ -84,25 +84,15 @@ def check_variance(x, variables_names, minimum, maximum, mean, count, sums, squa
84
84
  return
85
85
  print(x)
86
86
  print(variables_names)
87
- print(count)
88
87
  for i, (name, y) in enumerate(zip(variables_names, x)):
89
88
  if y >= 0:
90
89
  continue
91
90
  print("---")
92
- print(
93
- name,
94
- y,
95
- maximum[i],
96
- minimum[i],
97
- mean[i],
98
- count[i],
99
- sums[i],
100
- squares[i],
101
- )
102
-
103
- print(name, np.min(sums[i]), np.max(sums[i]), np.argmin(sums[i]))
104
- print(name, np.min(squares[i]), np.max(squares[i]), np.argmin(squares[i]))
105
- print(name, np.min(count[i]), np.max(count[i]), np.argmin(count[i]))
91
+ print(f"❗ Negative variance for {name=}, variance={y}")
92
+ print(f" max={maximum[i]} min={minimum[i]} mean={mean[i]} count={count[i]} sum={sums[i]} square={squares[i]}")
93
+ print(f" -> sums: min={np.min(sums[i])}, max={np.max(sums[i])}, argmin={np.argmin(sums[i])}")
94
+ print(f" -> squares: min={np.min(squares[i])}, max={np.max(squares[i])}, argmin={np.argmin(squares[i])}")
95
+ print(f" -> count: min={np.min(count[i])}, max={np.max(count[i])}, argmin={np.argmin(count[i])}")
106
96
 
107
97
  raise ValueError("Negative variance")
108
98
 
@@ -17,10 +17,7 @@ from ..check import check_stats
17
17
 
18
18
 
19
19
  class Summary(dict):
20
- """This class is used to store the summary statistics of a dataset.
21
- It can be saved and loaded from a json file.
22
- And does some basic checks on the data.
23
- """
20
+ """This class is used to store the summary statistics of a dataset. It can be saved and loaded from a json file. And does some basic checks on the data."""
24
21
 
25
22
  STATS_NAMES = [
26
23
  "minimum",
@@ -17,11 +17,12 @@ LOG = logging.getLogger(__name__)
17
17
  class ViewCacheArray:
18
18
  """A class that provides a caching mechanism for writing to a NumPy-like array.
19
19
 
20
- The is initialized with a NumPy-like array, a shape and a list to reindex the first dimension.
21
- The array is used to store the final data, while the cache is used to temporarily
22
- store the data before flushing it to the array.
20
+ The is initialized with a NumPy-like array, a shape and a list to reindex the first
21
+ dimension. The array is used to store the final data, while the cache is used to
22
+ temporarily store the data before flushing it to the array.
23
23
 
24
24
  The `flush` method copies the contents of the cache to the final array.
25
+
25
26
  """
26
27
 
27
28
  def __init__(self, array, *, shape, indexes):
@@ -119,9 +119,7 @@ def _as_tuples(index):
119
119
 
120
120
 
121
121
  def expand_list_indexing(method):
122
- """Allows to use slices, lists, and tuples to select data from the dataset.
123
- Zarr does not support indexing with lists/arrays directly, so we need to implement it ourselves.
124
- """
122
+ """Allows to use slices, lists, and tuples to select data from the dataset. Zarr does not support indexing with lists/arrays directly, so we need to implement it ourselves."""
125
123
 
126
124
  @wraps(method)
127
125
  def wrapper(self, index):
@@ -39,9 +39,7 @@ class ReadOnlyStore(zarr.storage.BaseStore):
39
39
 
40
40
 
41
41
  class HTTPStore(ReadOnlyStore):
42
- """We write our own HTTPStore because the one used by zarr (fsspec) does not play
43
- well with fork() and multiprocessing.
44
- """
42
+ """We write our own HTTPStore because the one used by zarr (fsspec) does not play well with fork() and multiprocessing."""
45
43
 
46
44
  def __init__(self, url):
47
45
  self.url = url
@@ -59,9 +57,7 @@ class HTTPStore(ReadOnlyStore):
59
57
 
60
58
 
61
59
  class S3Store(ReadOnlyStore):
62
- """We write our own S3Store because the one used by zarr (fsspec) does not play well
63
- with fork() and multiprocessing.
64
- """
60
+ """We write our own S3Store because the one used by zarr (fsspec) does not play well with fork() and multiprocessing."""
65
61
 
66
62
  def __init__(self, url):
67
63
  import boto3
@@ -29,12 +29,7 @@ class check:
29
29
 
30
30
  @wraps(method)
31
31
  def wrapper(obj):
32
- """
33
- This is a decorator that checks the compatibility of the datasets
34
- before calling the method. If the datasets are compatible, it
35
- will return the result of the method, otherwise it will raise an
36
- exception.
37
- """
32
+ """This is a decorator that checks the compatibility of the datasets before calling the method. If the datasets are compatible, it will return the result of the method, otherwise it will raise an exception."""
38
33
 
39
34
  for d in obj.datasets[1:]:
40
35
  getattr(obj, check)(obj.datasets[0], d)
anemoi/datasets/grids.py CHANGED
@@ -178,7 +178,7 @@ def cutout_mask(
178
178
  min_dlats = np.min(np.diff(glats))
179
179
  min_dlons = np.min(np.diff(glons))
180
180
 
181
- # Use the center of the LAM grid as the reference point
181
+ # Use the centre of the LAM grid as the reference point
182
182
  centre = np.mean(lats), np.mean(lons)
183
183
  centre_xyz = np.array(latlon_to_xyz(*centre))
184
184
 
@@ -198,7 +198,7 @@ def cutout_mask(
198
198
  t = Triangle3D(lam_points[index[0]], lam_points[index[1]], lam_points[index[2]])
199
199
  # distance = np.min(distance)
200
200
  # The point is inside the triangle if the intersection with the ray
201
- # from the point to the center of the Earth is not None
201
+ # from the point to the centre of the Earth is not None
202
202
  # (the direction of the ray is not important)
203
203
 
204
204
  intersect = t.intersect(zero, global_point)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: anemoi-datasets
3
- Version: 0.2.0
3
+ Version: 0.3.0
4
4
  Summary: A package to hold various functions to support training of ML models on ECMWF data.
5
5
  Author-email: "European Centre for Medium-Range Weather Forecasts (ECMWF)" <software.support@ecmwf.int>
6
6
  License: Apache License
@@ -205,59 +205,68 @@ License: Apache License
205
205
  See the License for the specific language governing permissions and
206
206
  limitations under the License.
207
207
 
208
- Project-URL: Homepage, https://github.com/ecmwf/anemoi-datasets/
209
208
  Project-URL: Documentation, https://anemoi-datasets.readthedocs.io/
210
- Project-URL: Repository, https://github.com/ecmwf/anemoi-datasets/
209
+ Project-URL: Homepage, https://github.com/ecmwf/anemoi-datasets/
211
210
  Project-URL: Issues, https://github.com/ecmwf/anemoi-datasets/issues
212
- Keywords: tools,datasets,ai
211
+ Project-URL: Repository, https://github.com/ecmwf/anemoi-datasets/
212
+ Keywords: ai,datasets,tools
213
213
  Classifier: Development Status :: 4 - Beta
214
214
  Classifier: Intended Audience :: Developers
215
215
  Classifier: License :: OSI Approved :: Apache Software License
216
- Classifier: Programming Language :: Python :: 3
216
+ Classifier: Operating System :: OS Independent
217
+ Classifier: Programming Language :: Python :: 3 :: Only
217
218
  Classifier: Programming Language :: Python :: 3.9
218
219
  Classifier: Programming Language :: Python :: 3.10
219
220
  Classifier: Programming Language :: Python :: 3.11
221
+ Classifier: Programming Language :: Python :: 3.12
220
222
  Classifier: Programming Language :: Python :: Implementation :: CPython
221
223
  Classifier: Programming Language :: Python :: Implementation :: PyPy
222
- Classifier: Operating System :: OS Independent
223
224
  Requires-Python: >=3.9
224
225
  License-File: LICENSE
225
- Requires-Dist: anemoi-utils[provenance] >=0.1.7
226
- Requires-Dist: zarr <=2.17.0
227
- Requires-Dist: pyyaml
226
+ Requires-Dist: anemoi-utils[provenance] >=0.3
228
227
  Requires-Dist: numpy
229
- Requires-Dist: tqdm
228
+ Requires-Dist: pyyaml
230
229
  Requires-Dist: semantic-version
230
+ Requires-Dist: tqdm
231
+ Requires-Dist: zarr <=2.17
231
232
  Provides-Extra: all
233
+ Requires-Dist: anemoi-utils[provenance] >=0.3 ; extra == 'all'
232
234
  Requires-Dist: boto3 ; extra == 'all'
233
- Requires-Dist: requests ; extra == 'all'
234
- Requires-Dist: s3fs ; extra == 'all'
235
235
  Requires-Dist: climetlab >=0.22.1 ; extra == 'all'
236
236
  Requires-Dist: earthkit-meteo ; extra == 'all'
237
- Requires-Dist: pyproj ; extra == 'all'
238
237
  Requires-Dist: ecmwflibs >=0.6.3 ; extra == 'all'
238
+ Requires-Dist: numpy ; extra == 'all'
239
+ Requires-Dist: pyproj ; extra == 'all'
240
+ Requires-Dist: pyyaml ; extra == 'all'
241
+ Requires-Dist: requests ; extra == 'all'
242
+ Requires-Dist: s3fs ; extra == 'all'
243
+ Requires-Dist: semantic-version ; extra == 'all'
244
+ Requires-Dist: tqdm ; extra == 'all'
245
+ Requires-Dist: zarr <=2.17 ; extra == 'all'
239
246
  Provides-Extra: create
240
247
  Requires-Dist: climetlab >=0.22.1 ; extra == 'create'
241
248
  Requires-Dist: earthkit-meteo ; extra == 'create'
242
- Requires-Dist: pyproj ; extra == 'create'
243
249
  Requires-Dist: ecmwflibs >=0.6.3 ; extra == 'create'
250
+ Requires-Dist: pyproj ; extra == 'create'
244
251
  Provides-Extra: dev
245
252
  Requires-Dist: boto3 ; extra == 'dev'
246
- Requires-Dist: requests ; extra == 'dev'
247
- Requires-Dist: s3fs ; extra == 'dev'
248
253
  Requires-Dist: climetlab >=0.22.1 ; extra == 'dev'
249
254
  Requires-Dist: earthkit-meteo ; extra == 'dev'
250
- Requires-Dist: pyproj ; extra == 'dev'
251
255
  Requires-Dist: ecmwflibs >=0.6.3 ; extra == 'dev'
252
- Requires-Dist: sphinx ; extra == 'dev'
253
- Requires-Dist: sphinx-rtd-theme ; extra == 'dev'
254
256
  Requires-Dist: nbsphinx ; extra == 'dev'
255
257
  Requires-Dist: pandoc ; extra == 'dev'
258
+ Requires-Dist: pyproj ; extra == 'dev'
259
+ Requires-Dist: requests ; extra == 'dev'
260
+ Requires-Dist: s3fs ; extra == 'dev'
261
+ Requires-Dist: sphinx ; extra == 'dev'
262
+ Requires-Dist: sphinx-argparse ; extra == 'dev'
263
+ Requires-Dist: sphinx-rtd-theme ; extra == 'dev'
256
264
  Provides-Extra: docs
257
- Requires-Dist: sphinx ; extra == 'docs'
258
- Requires-Dist: sphinx-rtd-theme ; extra == 'docs'
259
265
  Requires-Dist: nbsphinx ; extra == 'docs'
260
266
  Requires-Dist: pandoc ; extra == 'docs'
267
+ Requires-Dist: sphinx ; extra == 'docs'
268
+ Requires-Dist: sphinx-argparse ; extra == 'docs'
269
+ Requires-Dist: sphinx-rtd-theme ; extra == 'docs'
261
270
  Provides-Extra: remote
262
271
  Requires-Dist: boto3 ; extra == 'remote'
263
272
  Requires-Dist: requests ; extra == 'remote'
@@ -1,28 +1,28 @@
1
1
  anemoi/datasets/__init__.py,sha256=DC7ttKT--pmhBQALX_Cn7P28dngsJucKi5y-Ydm28QM,700
2
- anemoi/datasets/__main__.py,sha256=CGl8WF7rWMx9EoArysla0-ThjUFtEZUEGM58LbdU488,1798
3
- anemoi/datasets/_version.py,sha256=H-qsvrxCpdhaQzyddR-yajEqI71hPxLa4KxzpP3uS1g,411
4
- anemoi/datasets/grids.py,sha256=B4a4X9vGQC2lxJlYsm7rz2pQZ0HlW7ntLpoS8bYUQzU,8481
5
- anemoi/datasets/commands/__init__.py,sha256=Pc5bhVgW92ox1lMR5WUOLuhiY2HT6PsadSHclyw99Vc,1983
2
+ anemoi/datasets/__main__.py,sha256=cLA2PidDTOUHaDGzd0_E5iioKYNe-PSTv567Y2fuwQk,723
3
+ anemoi/datasets/_version.py,sha256=Jk2iAU7m-7Vx9XV1TtdD9ZoJraIncDq_4_Wd-qtUotg,411
4
+ anemoi/datasets/grids.py,sha256=3YBMMJodgYhavarXPAlMZHaMtDT9v2IbTmAXZTqf8Qo,8481
5
+ anemoi/datasets/commands/__init__.py,sha256=qAybFZPBBQs0dyx7dZ3X5JsLpE90pwrqt1vSV7cqEIw,706
6
6
  anemoi/datasets/commands/compare.py,sha256=tN3eqihvnZ0rFc0OUzrfI34PHDlYfc2l90ZIQBE1TDQ,1300
7
- anemoi/datasets/commands/copy.py,sha256=GZ5TmJKDOAKka9zc0YUtvmqynRqBTeb3hI_v3jLtUDM,7995
8
- anemoi/datasets/commands/create.py,sha256=UVieF0g1cEgNP_myklUZOSH_MuxwfYzKay5s8WDRzro,562
7
+ anemoi/datasets/commands/copy.py,sha256=fba-zjD0iTHHXHhPEcm8VhDzsXQXDUxlbtTA1TovyT0,9991
8
+ anemoi/datasets/commands/create.py,sha256=POdOsVDlvRrHFFkI3SNXNgNIbSxkVUUPMoo660x7Ma0,987
9
9
  anemoi/datasets/commands/scan.py,sha256=HxsLdCgBMSdEXjlJfPq5M_9LxXHHQIoZ1ZEHO_AoPgA,2881
10
- anemoi/datasets/commands/inspect/__init__.py,sha256=SqiWlIJSov7-RnZmIQBzsE4Br7hgl9CqshpXaQqpios,1701
10
+ anemoi/datasets/commands/inspect/__init__.py,sha256=v6fPUTdMRdmUiEUUs0F74QlzPr-x5XEEOql3mkFme7E,1500
11
11
  anemoi/datasets/commands/inspect/zarr.py,sha256=Q1waDTgdJZwJXNST4jkO4DCIbqbf2T_2Us2k6yKGToo,19684
12
12
  anemoi/datasets/compute/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
- anemoi/datasets/compute/perturbations.py,sha256=wUWco1MUt1DKd0EQQua0iUJmL11lTim-VyA8C9-zKz4,4748
14
- anemoi/datasets/create/__init__.py,sha256=o7pZTL71XqoD3a10VrSnwroAFvN4g_9o98jEoMArjfk,5731
13
+ anemoi/datasets/compute/recentre.py,sha256=j8LdC8kq1t4PW7WFTXf93hSxok10un8ENIPwCehzbP8,4768
14
+ anemoi/datasets/create/__init__.py,sha256=jji65Zni5aPTvS269fAMix4pN9ukmSoK0z5SVsbpr5E,5807
15
15
  anemoi/datasets/create/check.py,sha256=DLjw-eyaCNxPhoKFsP4Yn_l3SIr57YHdyPR-tE5vx80,5791
16
16
  anemoi/datasets/create/chunks.py,sha256=YEDcr0K2KiiceSTiBuZzj0TbRbzZ9J546XO7rrrTFQw,2441
17
- anemoi/datasets/create/config.py,sha256=GI-_-7JEQABtBk9ZRv4fM7GiRdCLCM8RiYeEUb2XDb4,7406
18
- anemoi/datasets/create/input.py,sha256=6Nd72ZWlCUEW-qjpMa9Pl8fhvCly8o0R1h3esbpTquI,27981
19
- anemoi/datasets/create/loaders.py,sha256=06lAzaNXjwkYd_F3uQ7IMNHibzbAsELhwIdx9gYO-xE,28416
17
+ anemoi/datasets/create/config.py,sha256=uLIp1WHg3hbqwwMV9EepMwJQsXJAGImkbo0okBeEVd4,7683
18
+ anemoi/datasets/create/input.py,sha256=UqEIqbsld0whUJUPPVKMfF_LoeKTaTyxP5kBE6zjhsE,27888
19
+ anemoi/datasets/create/loaders.py,sha256=BDeb2CI_oWqIGcBnt39nRGIt3r3dK4rIidNO3pBunTk,29865
20
20
  anemoi/datasets/create/patch.py,sha256=xjCLhvIQKRqmypsKInRU1CvFh1uoaB3YGSQP1UVZZik,3682
21
- anemoi/datasets/create/persistent.py,sha256=vQuKuEggLGhNO8A7lsUHXzdVOhqAzZh50xsb-eSF6qQ,4307
21
+ anemoi/datasets/create/persistent.py,sha256=nT8gvhVPdI1H3zW_F7uViGKIlQQ94jCDrMSWTmhQ2_A,4290
22
22
  anemoi/datasets/create/size.py,sha256=A1w6RkaL0L9IlwIdmYsCTJTecmY_QtvbkGf__jvQle0,1068
23
23
  anemoi/datasets/create/template.py,sha256=2roItOYJzjGB0bKS28f6EjfpomP0ppT4v6T9fYzjRxQ,4263
24
24
  anemoi/datasets/create/utils.py,sha256=H1-auNSZUSDW0Aog8CHnIfZlzgKE1XPoi1I40CqquA4,3676
25
- anemoi/datasets/create/writer.py,sha256=BHzPDhET2BnPt-359CZ_yaaR2otIz2iENbsyQIaktxU,1378
25
+ anemoi/datasets/create/writer.py,sha256=G1qAPvdn8anGnpWYhvSSP4u3Km_tHKPdMXm0G4skKSk,1379
26
26
  anemoi/datasets/create/zarr.py,sha256=hwM_PaYTa_IgFY1VC7qdYTWQ5MXCWWlMrzXsV_eAY0Q,4776
27
27
  anemoi/datasets/create/functions/__init__.py,sha256=K-Wi11mZI5Y6od0y6I_apDutoeay7wNrtB1P3-PizgI,513
28
28
  anemoi/datasets/create/functions/filters/__init__.py,sha256=Xe9G54CKvCI3ji-7k0R5l0WZZdhlydRgawsXuBcX_hg,379
@@ -32,19 +32,20 @@ anemoi/datasets/create/functions/filters/rename.py,sha256=Nvmwor6S5E-mhp60hF58Kk
32
32
  anemoi/datasets/create/functions/filters/rotate_winds.py,sha256=fUdh8ILcMzMzckGlvwzdgG-c7w5R9NnWfaijp28Bf5M,4092
33
33
  anemoi/datasets/create/functions/filters/unrotate_winds.py,sha256=nsa3EHly8ppWd2WH4ROoMczM8WFu5qKaIhO_UFcL9TY,3502
34
34
  anemoi/datasets/create/functions/sources/__init__.py,sha256=Xe9G54CKvCI3ji-7k0R5l0WZZdhlydRgawsXuBcX_hg,379
35
- anemoi/datasets/create/functions/sources/accumulations.py,sha256=cYdchyIY4yvEIDYOa1haQWyg-72ea3ecQusUARU_IMg,12520
35
+ anemoi/datasets/create/functions/sources/accumulations.py,sha256=li1tpEew1XUv4sJzNCFYJHx1bve8LuXhEv-mgDoUqPE,12739
36
36
  anemoi/datasets/create/functions/sources/constants.py,sha256=aqquu6HDc8t-zsF9KRFLaj0eV4S0UPZ59BVna8E3bU8,785
37
37
  anemoi/datasets/create/functions/sources/empty.py,sha256=SBuAfC33imbfcRnFnnOR44y8Q3KSQcqx3juIcXfCa3c,481
38
38
  anemoi/datasets/create/functions/sources/forcings.py,sha256=EVcdu8puMSW451qj3LKCWWXaSf2LlmF8YXVs8hSMxkU,643
39
39
  anemoi/datasets/create/functions/sources/grib.py,sha256=p1vYlRfV0irlkVBTYhNfQ7OrJjHaMfe2KkSphyNtyU0,1540
40
- anemoi/datasets/create/functions/sources/mars.py,sha256=Y1EJdpAx6TVBF6Zzc1p_jPRf7rGIjjTui6DdeLrUcIQ,3718
40
+ anemoi/datasets/create/functions/sources/hindcasts.py,sha256=0Psnsx2J0cRLMpJuNN-gESm1xJFC1gmQzI8sdnXCoYE,13042
41
+ anemoi/datasets/create/functions/sources/mars.py,sha256=Jau-ceN_cI3Z2-uql92iS4-Emh9Pie7omdRkFB5oe1I,4025
41
42
  anemoi/datasets/create/functions/sources/netcdf.py,sha256=XeV3ZlQWPZD2Yxxi5HzvhKKS-04WpLnVSORv-cBa-nM,1726
42
43
  anemoi/datasets/create/functions/sources/opendap.py,sha256=T0CPinscfafrVLaye5ue-PbiCNbcNqf_3m6pphN9rCU,543
43
- anemoi/datasets/create/functions/sources/perturbations.py,sha256=RIjfrWOd8OZDOTMPCkNCi7SUb2NdwNRCWABTJYwkxQU,1815
44
+ anemoi/datasets/create/functions/sources/recentre.py,sha256=t07LIXG3Hp9gmPkPriILVt86TxubsHyS1EL1lzwgtXY,1810
44
45
  anemoi/datasets/create/functions/sources/source.py,sha256=hPQnV_6UIxFw97uRKcTA8TplcgG1kC8NlFHoEaaLet4,1418
45
46
  anemoi/datasets/create/functions/sources/tendencies.py,sha256=kwS_GZt8R9kpfs5RrvxPb0Gj-5nDP0sgJgfSRCAwwww,4057
46
- anemoi/datasets/create/statistics/__init__.py,sha256=kiY6BjrR46gg7PjV_-VGh04Gl6oowA9ib6Z61pJrY3M,15388
47
- anemoi/datasets/create/statistics/summary.py,sha256=NHzKwsMOlJENBGs6GlbmcIq4mAwsfvR9q6mdfXXgCXk,3383
47
+ anemoi/datasets/create/statistics/__init__.py,sha256=X50drgE-ltuNe7bSIyvyeC4GeTqGTQGbglh2-2aVWKE,15445
48
+ anemoi/datasets/create/statistics/summary.py,sha256=sgmhA24y3VRyjmDUgTnPIqcHSlWBbFA0qynx6gJ9Xw8,3370
48
49
  anemoi/datasets/data/__init__.py,sha256=tacn6K_VZ-pYhLmGePG5sze8kmqGpqscYb-bMyQnWtk,888
49
50
  anemoi/datasets/data/concat.py,sha256=U6IZi6NkI6yccrDamgasENBqwyJ1m0ZesuDtHXoqEh8,3551
50
51
  anemoi/datasets/data/dataset.py,sha256=UDnidq2amyCT2COH05pGfDCJcmkdMj1ubtHk9cl-qcE,7384
@@ -53,21 +54,21 @@ anemoi/datasets/data/debug.py,sha256=PcyrjgxaLzeb_vf12pvUtPPVvBRHNm1SimythZvqsP4
53
54
  anemoi/datasets/data/ensemble.py,sha256=PcrdNL4DhAuWYSXgNxC6igDXpDndXC_QrbLrL4Lvj-Y,1138
54
55
  anemoi/datasets/data/forewards.py,sha256=4IsaNDhYlLiCbawUvTynm2vdpGPqdXcrSoAENwsJoqI,7456
55
56
  anemoi/datasets/data/grids.py,sha256=vgZMIQbv5SnIcnPu2ujsrAQ8VyBz5o2a1SnxsjXkDuw,7495
56
- anemoi/datasets/data/indexing.py,sha256=ymuFO2yH12ztYnP_gmHpuBuLmKAxv2t8Pz5m1gGmBzk,4808
57
+ anemoi/datasets/data/indexing.py,sha256=625m__JG5m_tDMrkz1hB6Vydenwt0oHuyAlc-o3Zwos,4799
57
58
  anemoi/datasets/data/join.py,sha256=m_lpxWPy8-xYOjPbVoBV3V92VGtBFIriiDWvQM6KqXc,4893
58
59
  anemoi/datasets/data/masked.py,sha256=KZZ-3nq9saj_W8PTN9V4YdZ24BayHgECj12i4yjyKpc,3525
59
60
  anemoi/datasets/data/misc.py,sha256=a-YIrCaSkOuEKHT_Q1UYADkb2wYycekRrFwZCgyW8-s,10428
60
61
  anemoi/datasets/data/select.py,sha256=JoEepq8iRSSX6L75hzhLrBFhy0RJInuBM3C_Eu2Ryv0,3608
61
62
  anemoi/datasets/data/statistics.py,sha256=rWuG5qlfQoo9shOXR6TleJbJONwYggxxLy_HRet8azM,1582
62
- anemoi/datasets/data/stores.py,sha256=gJVyg4ydIsVXWwnww-UV3uaWNXLkcz_dx2r9AREPZrE,10869
63
+ anemoi/datasets/data/stores.py,sha256=damJzNScaGenARAv8xpNa7d32f03MpGk5adRoRi34yw,10851
63
64
  anemoi/datasets/data/subset.py,sha256=RjfOMu7p69DZXRxQpvTfDOjVAURhgUO2pWyuZpXlJGY,3671
64
- anemoi/datasets/data/unchecked.py,sha256=LSBLSQXzkLhoprkI2PY6OEoeX0lVT-nIe-ZyibH2jv0,4100
65
+ anemoi/datasets/data/unchecked.py,sha256=qeUKthbvVVSPH-P366q1DEofvPzZSSXCXA49x-RkBOc,4038
65
66
  anemoi/datasets/dates/__init__.py,sha256=zOph2N_mXYbjSvqEWYF1mmm-UZpljb61WLrdFJmi0qQ,4469
66
67
  anemoi/datasets/dates/groups.py,sha256=iq310Pi7ullglOhcNblv14MmcT8FPgYCD5s45qAfV_s,3383
67
68
  anemoi/datasets/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
- anemoi_datasets-0.2.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
69
- anemoi_datasets-0.2.0.dist-info/METADATA,sha256=5jyLpAFoW0Ki-1umKyRlG28g8IFGmbx4cLMBf4nYUJM,15628
70
- anemoi_datasets-0.2.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
71
- anemoi_datasets-0.2.0.dist-info/entry_points.txt,sha256=yR-o-4uiPEA_GLBL81SkMYnUoxq3CAV3hHulQiRtGG0,66
72
- anemoi_datasets-0.2.0.dist-info/top_level.txt,sha256=DYn8VPs-fNwr7fNH9XIBqeXIwiYYd2E2k5-dUFFqUz0,7
73
- anemoi_datasets-0.2.0.dist-info/RECORD,,
69
+ anemoi_datasets-0.3.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
70
+ anemoi_datasets-0.3.0.dist-info/METADATA,sha256=ZuzJCJFDaqkrUj-SDmawuIKXkj8U43Gwc-ksUneU7AA,16050
71
+ anemoi_datasets-0.3.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
72
+ anemoi_datasets-0.3.0.dist-info/entry_points.txt,sha256=yR-o-4uiPEA_GLBL81SkMYnUoxq3CAV3hHulQiRtGG0,66
73
+ anemoi_datasets-0.3.0.dist-info/top_level.txt,sha256=DYn8VPs-fNwr7fNH9XIBqeXIwiYYd2E2k5-dUFFqUz0,7
74
+ anemoi_datasets-0.3.0.dist-info/RECORD,,