anemoi-datasets 0.5.19__tar.gz → 0.5.21__tar.gz
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.
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.gitignore +5 -0
- anemoi_datasets-0.5.21/.readthedocs.yaml +19 -0
- anemoi_datasets-0.5.21/.release-please-manifest.json +3 -0
- anemoi_datasets-0.5.21/03-constant-fields.rst +3 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/CHANGELOG.md +40 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/PKG-INFO +11 -4
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/Makefile +1 -0
- anemoi_datasets-0.5.21/docs/_templates/apidoc/package.rst.jinja +55 -0
- anemoi_datasets-0.5.21/docs/cli/compare-lam.rst +51 -0
- anemoi_datasets-0.5.21/docs/cli/grib-index.rst +24 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/cli/introduction.rst +1 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/orog_to_z.rst +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/regrid.rst +8 -9
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/rename.rst +4 -4
- anemoi_datasets-0.5.21/docs/datasets/building/filters/sum.rst +13 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/wz_to_w.rst +2 -2
- anemoi_datasets-0.5.21/docs/datasets/building/filters/yaml/orog_to_z.yaml +11 -0
- anemoi_datasets-0.5.21/docs/datasets/building/filters/yaml/regrid1.yaml +11 -0
- anemoi_datasets-0.5.21/docs/datasets/building/filters/yaml/regrid2.yaml +9 -0
- anemoi_datasets-0.5.21/docs/datasets/building/filters/yaml/rename.yaml +13 -0
- anemoi_datasets-0.5.21/docs/datasets/building/filters/yaml/sum.yaml +15 -0
- anemoi_datasets-0.5.21/docs/datasets/building/filters/yaml/wz_to_w.yaml +11 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters.rst +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/handling-missing-dates.rst +2 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/handling-missing-values.rst +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/incremental.rst +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/introduction.rst +7 -7
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/naming-conventions.rst +10 -10
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/naming-variables.rst +3 -3
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/operations.rst +8 -8
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/accumulations.rst +11 -12
- anemoi_datasets-0.5.21/docs/datasets/building/sources/anemoi-dataset.rst +19 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/cds.rst +3 -3
- anemoi_datasets-0.5.19/docs/datasets/building/sources/eccc_fstd.rst → anemoi_datasets-0.5.21/docs/datasets/building/sources/eccc-fstd.rst +5 -3
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/forcings.rst +17 -17
- anemoi_datasets-0.5.21/docs/datasets/building/sources/grib-index.rst +11 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/grib.rst +10 -6
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/hindcasts.rst +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/mars.rst +4 -4
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/netcdf.rst +3 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/opendap.rst +2 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/recentre.rst +5 -5
- anemoi_datasets-0.5.21/docs/datasets/building/sources/repeated-dates.rst +39 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/xarray-based.rst +7 -5
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/xarray-kerchunk.rst +2 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/xarray-zarr.rst +7 -5
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/accumulations1.yaml +1 -1
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/accumulations2.yaml +6 -0
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/anemoi-dataset.yaml +11 -0
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/forcings.yaml +11 -0
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/grib2.yaml +5 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/mars-cds.yaml +1 -1
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/mars1.yaml +5 -0
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/mars2.yaml +10 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/recentre.yaml +3 -3
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/repeated_dates1.yaml → anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/repeated-dates1.yaml +1 -1
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/repeated-dates2.yaml +6 -0
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/repeated-dates3.yaml +8 -0
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/repeated-dates4.yaml +9 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/xarray-kerchunk.yaml +1 -1
- anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/xarray-zarr.yaml +22 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/zenodo.yaml +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources.rst +10 -9
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/statistics.rst +10 -11
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/introduction.rst +3 -3
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/combining.rst +23 -22
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/configuration.rst +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/ensembles.rst +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/grids.rst +24 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/introduction.rst +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/matching.rst +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/methods.rst +24 -15
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/miscellaneous.rst +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/missing.rst +14 -14
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/opening.rst +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/other.rst +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/selecting.rst +8 -8
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/statistics.rst +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/subsetting.rst +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/zip.rst +7 -7
- anemoi_datasets-0.5.21/docs/howtos/create/01-grib-data.rst +165 -0
- anemoi_datasets-0.5.21/docs/howtos/create/02-cf-data.rst +117 -0
- anemoi_datasets-0.5.21/docs/howtos/create/03-constant-fields.rst +7 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-flavour1.yaml +8 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-flavour2.yaml +10 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-flavour3.yaml +12 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-flavour4.yaml +23 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-recipe1.yaml +9 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-recipe2.yaml +10 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-recipe3.yaml +9 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-recipe4.yaml +10 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/grib-recipe5.yaml +17 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/netcdf1.yaml +9 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/opendap1.yaml +8 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/xarray-flavour1.yaml +11 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/xarray-patch1.yaml +11 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/xarray-patch2.yaml +6 -0
- anemoi_datasets-0.5.21/docs/howtos/create/yaml/zarr1.yaml +8 -0
- anemoi_datasets-0.5.21/docs/howtos/introduction.rst +37 -0
- anemoi_datasets-0.5.21/docs/howtos/usage/01-interpolate-step-dataset-combination.rst +45 -0
- anemoi_datasets-0.5.21/docs/howtos/usage/code/interpolate1.py +19 -0
- anemoi_datasets-0.5.21/docs/howtos/usage/code/interpolate2.py +19 -0
- anemoi_datasets-0.5.21/docs/howtos/usage/yaml/interpolate1.yaml +9 -0
- anemoi_datasets-0.5.21/docs/howtos/usage/yaml/interpolate2.yaml +8 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/index.rst +19 -10
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/installing.rst +6 -6
- anemoi_datasets-0.5.21/docs/modules/dataset.rst +10 -0
- anemoi_datasets-0.5.21/docs/modules/filters.rst +5 -0
- anemoi_datasets-0.5.21/docs/modules/sources.rst +5 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/overview.rst +5 -5
- anemoi_datasets-0.5.21/docs/scripts/api_build.sh +13 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/usage/getting_started.rst +3 -3
- anemoi_datasets-0.5.21/docs/using/code/trimedge1_.py +1 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/pyproject.toml +13 -5
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/_version.py +2 -2
- anemoi_datasets-0.5.21/src/anemoi/datasets/commands/compare-lam.py +401 -0
- anemoi_datasets-0.5.21/src/anemoi/datasets/commands/grib-index.py +111 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/inspect.py +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/__init__.py +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/pressure_level_relative_humidity_to_specific_humidity.py +3 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/pressure_level_specific_humidity_to_relative_humidity.py +3 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/wz_to_w.py +3 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/action.py +2 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/result.py +1 -1
- anemoi_datasets-0.5.21/src/anemoi/datasets/create/sources/anemoi_dataset.py +73 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/forcings.py +1 -1
- anemoi_datasets-0.5.21/src/anemoi/datasets/create/sources/grib.py +142 -0
- anemoi_datasets-0.5.21/src/anemoi/datasets/create/sources/grib_index.py +614 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/__init__.py +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/fieldlist.py +2 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/flavour.py +6 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/writer.py +1 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/__init__.py +16 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/complement.py +4 -1
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/dataset.py +14 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/interpolate.py +76 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/masked.py +77 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/misc.py +159 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/grids.py +8 -2
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi_datasets.egg-info/PKG-INFO +11 -4
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi_datasets.egg-info/SOURCES.txt +48 -9
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi_datasets.egg-info/requires.txt +10 -3
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/test_create.py +4 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/test_sources.py +9 -10
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/test_data.py +17 -6
- anemoi_datasets-0.5.21/tests/test_data_gridded.py +551 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/xarray/test_opendap.py +4 -5
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/xarray/test_samples.py +4 -5
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/xarray/test_zarr.py +14 -12
- anemoi_datasets-0.5.19/.readthedocs.yaml +0 -16
- anemoi_datasets-0.5.19/.release-please-manifest.json +0 -3
- anemoi_datasets-0.5.19/docs/datasets/building/filters/sum.rst +0 -13
- anemoi_datasets-0.5.19/docs/datasets/building/filters/yaml/orog_to_z.yaml +0 -10
- anemoi_datasets-0.5.19/docs/datasets/building/filters/yaml/regrid1.yaml +0 -10
- anemoi_datasets-0.5.19/docs/datasets/building/filters/yaml/regrid2.yaml +0 -8
- anemoi_datasets-0.5.19/docs/datasets/building/filters/yaml/rename.yaml +0 -11
- anemoi_datasets-0.5.19/docs/datasets/building/filters/yaml/sum.yaml +0 -13
- anemoi_datasets-0.5.19/docs/datasets/building/filters/yaml/wz_to_w.yaml +0 -10
- anemoi_datasets-0.5.19/docs/datasets/building/sources/repeated_dates.rst +0 -39
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/accumulations2.yaml +0 -6
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/forcings.yaml +0 -11
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/grib2.yaml +0 -5
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/mars1.yaml +0 -5
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/mars2.yaml +0 -10
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/repeated_dates2.yaml +0 -6
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/repeated_dates3.yaml +0 -8
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/repeated_dates4.yaml +0 -9
- anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/xarray-zarr.yaml +0 -22
- anemoi_datasets-0.5.19/docs/modules/create.rst +0 -8
- anemoi_datasets-0.5.19/docs/modules/data.rst +0 -15
- anemoi_datasets-0.5.19/src/anemoi/datasets/create/sources/grib.py +0 -297
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.gitattributes +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/CODEOWNERS +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/ci-hpc-config.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/dependabot.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/labeler.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/pull_request_template.md +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/release.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/downstream-ci-hpc.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/pr-conventional-commit.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/pr-label-conventional-commits.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/pr-label-file-based.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/pr-label-public.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/push-to-private.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/python-publish.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/python-pull-request.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/readthedocs-pr-update.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.github/workflows/release-please.yml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.pre-commit-config.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.release-please-config.json +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/.vscode/spellright.dict +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/CONTRIBUTORS.md +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/LICENSE +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/README.md +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/2t_map_example.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/area-1.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/concat.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/cutout-1.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/cutout-2.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/cutout-3.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/cutout-4.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/cutout-5.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/cutout-6.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/join.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/logo.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/overlay.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/schemas/matrix.excalidraw +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/schemas/matrix.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/schemas/overview.excalidraw +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/schemas/overview.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/schemas/recipe.excalidraw +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/schemas/recipe.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/skip-missing.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/style.css +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/thinning-after.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_static/thinning-before.png +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/_templates/.gitkeep +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/apply-fmt.sh +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/check-index.sh +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/cli/compare.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/cli/copy.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/cli/create.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/cli/inspect.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/cli/patch.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/cli/scan.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/conf.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/advanced-options.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/empty.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/noop.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/rotate_winds.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/select.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/unrotate_winds.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/xarray-kerchunk.py +0 -0
- /anemoi_datasets-0.5.19/docs/datasets/building/sources/yaml/eccc_fstd.yaml → /anemoi_datasets-0.5.21/docs/datasets/building/sources/yaml/eccc-fstd.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/grib1.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/grib3.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/grib4.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/hindcasts.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/netcdf.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/opendap.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/yaml/xarray-based.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/sources/zenodo.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/syntax.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/using/configuration.toml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/Makefile +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/building1.txt +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/building1.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/building2.txt +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/building2.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/building3.txt +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/building3.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/concat.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/hindcasts.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/input.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/missing_dates.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/nan.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/yaml/pipe.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/dev/contributing.rst +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/pptx/images.pptx +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/usage/yaml/aifs-ea-an-oper-0001-mars-o48-2020-2021-6h-v1.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/setup.cfg +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/__main__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/cleanup.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/compare.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/copy.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/create.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/finalise-additions.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/finalise.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/init-additions.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/init.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/load-additions.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/load.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/patch.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/publish.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/commands/scan.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/compute/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/compute/recentre.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/check.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/chunks.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/config.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filter.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/empty.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/legacy.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/noop.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/orog_to_z.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/rename.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/rotate_winds.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/single_level_dewpoint_to_relative_humidity.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/single_level_relative_humidity_to_dewpoint.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/single_level_relative_humidity_to_specific_humidity.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/single_level_specific_humidity_to_relative_humidity.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/speeddir_to_uv.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/sum.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/transform.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/unrotate_winds.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/filters/uv_to_speeddir.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/concat.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/context.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/data_sources.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/empty.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/filter.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/function.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/join.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/misc.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/pipe.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/repeated_dates.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/step.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/template.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/input/trace.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/patch.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/persistent.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/size.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/source.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/accumulations.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/accumulations2.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/constants.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/eccc_fstd.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/empty.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/hindcasts.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/legacy.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/mars.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/netcdf.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/opendap.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/patterns.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/recentre.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/source.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/tendencies.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_kerchunk.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/README.md +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/coordinates.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/field.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/grid.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/metadata.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/patch.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/time.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_support/variable.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/xarray_zarr.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/sources/zenodo.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/statistics/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/statistics/summary.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/testing.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/typing.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/utils.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/create/zarr.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/concat.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/debug.css +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/debug.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/ensemble.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/fill_missing.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/forwards.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/grids.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/indexing.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/join.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/merge.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/missing.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/rescale.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/select.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/statistics.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/stores.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/subset.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/unchecked.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/data/xy.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/dates/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/dates/groups.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/testing.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi/datasets/utils/__init__.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi_datasets.egg-info/dependency_links.txt +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi_datasets.egg-info/entry_points.txt +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/src/anemoi_datasets.egg-info/top_level.txt +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/accumulation.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/concat.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/join.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/missing.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/nan.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/pipe.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/recentre.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/regrid.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create/run.sh +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create-perturbations-full.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/create-shift.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/test_chunks.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/test_dates.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/test_indexing.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tests/xarray/test_netcdf.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/.gitignore +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/examples/Makefile +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/examples/an-oper-2023-2023-2p5-6h-v1.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/Makefile +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids.ipynb +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids1.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids2.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids3.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids4.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids5.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids6.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids7.yaml +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/grids/grids_multilam.ipynb +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/make-sample-dataset.py +0 -0
- {anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/tools/upload-sample-dataset.py +0 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
|
|
3
|
+
build:
|
|
4
|
+
os: ubuntu-22.04
|
|
5
|
+
tools:
|
|
6
|
+
python: "3.11"
|
|
7
|
+
# jobs:
|
|
8
|
+
# pre_build:
|
|
9
|
+
# - bash docs/scripts/api_build.sh
|
|
10
|
+
|
|
11
|
+
sphinx:
|
|
12
|
+
configuration: docs/conf.py
|
|
13
|
+
|
|
14
|
+
python:
|
|
15
|
+
install:
|
|
16
|
+
- method: pip
|
|
17
|
+
path: .
|
|
18
|
+
extra_requirements:
|
|
19
|
+
- docs
|
|
@@ -8,6 +8,46 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
8
8
|
Please add your functional changes to the appropriate section in the PR.
|
|
9
9
|
Keep it human-readable, your future self will thank you!
|
|
10
10
|
|
|
11
|
+
## [0.5.21](https://github.com/ecmwf/anemoi-datasets/compare/0.5.20...0.5.21) (2025-04-08)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
* more tests ([#277](https://github.com/ecmwf/anemoi-datasets/issues/277)) ([0ea7d46](https://github.com/ecmwf/anemoi-datasets/commit/0ea7d46a61aaa4381f8eb75b2623033bd404da5b))
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### Bug Fixes
|
|
20
|
+
|
|
21
|
+
* grib-index command default ([#275](https://github.com/ecmwf/anemoi-datasets/issues/275)) ([04a37d8](https://github.com/ecmwf/anemoi-datasets/commit/04a37d8a046dc6b314e9f2376c69f1824cbfa43d))
|
|
22
|
+
* pin version of numcodecs ([#285](https://github.com/ecmwf/anemoi-datasets/issues/285)) ([d86f317](https://github.com/ecmwf/anemoi-datasets/commit/d86f317981a312438a19323d5d67e1b31f80cf23))
|
|
23
|
+
* update version of transform ([#284](https://github.com/ecmwf/anemoi-datasets/issues/284)) ([e72cdde](https://github.com/ecmwf/anemoi-datasets/commit/e72cddedd8160a27a9e63e2581f4fcc1a91cd8b6))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Documentation
|
|
27
|
+
|
|
28
|
+
* some cleanup ([#276](https://github.com/ecmwf/anemoi-datasets/issues/276)) ([496b82a](https://github.com/ecmwf/anemoi-datasets/commit/496b82a5e10119c1fd27a58a85d5964fcad3c7bb))
|
|
29
|
+
* time interpolation example ([#274](https://github.com/ecmwf/anemoi-datasets/issues/274)) ([9d19bd6](https://github.com/ecmwf/anemoi-datasets/commit/9d19bd6bc3c8e0c25718a05d670357936ec99a8b))
|
|
30
|
+
* update documentation ([#271](https://github.com/ecmwf/anemoi-datasets/issues/271)) ([85ea386](https://github.com/ecmwf/anemoi-datasets/commit/85ea38690e7e8fab4dbac5c5b4d10eafdabde766))
|
|
31
|
+
|
|
32
|
+
## [0.5.20](https://github.com/ecmwf/anemoi-datasets/compare/0.5.19...0.5.20) (2025-03-31)
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
### Features
|
|
36
|
+
|
|
37
|
+
* interpolate nearest spatial ([#260](https://github.com/ecmwf/anemoi-datasets/issues/260)) ([e6c9af4](https://github.com/ecmwf/anemoi-datasets/commit/e6c9af48dca7292940a8b10f2804e9d456b6bccc))
|
|
38
|
+
* new data sources ([#258](https://github.com/ecmwf/anemoi-datasets/issues/258)) ([708c816](https://github.com/ecmwf/anemoi-datasets/commit/708c816b80ae30781f42442e0e9d8d70fed2371c))
|
|
39
|
+
* save opened anemoi_dataset ([#259](https://github.com/ecmwf/anemoi-datasets/issues/259)) ([4759dd9](https://github.com/ecmwf/anemoi-datasets/commit/4759dd9da67ece246e691eb6be4637ef6bc0b157))
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
### Bug Fixes
|
|
43
|
+
|
|
44
|
+
* Remove hardcoded indices and get pressure levels from keys directly ([#257](https://github.com/ecmwf/anemoi-datasets/issues/257)) ([777fbac](https://github.com/ecmwf/anemoi-datasets/commit/777fbac9fb09afd6e77ee13f8442ccbb3efb73f8))
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
### Documentation
|
|
48
|
+
|
|
49
|
+
* Add API Docs ([#255](https://github.com/ecmwf/anemoi-datasets/issues/255)) ([be13424](https://github.com/ecmwf/anemoi-datasets/commit/be1342400552f520b64f4f0fdb29d39ee51d81fe))
|
|
50
|
+
|
|
11
51
|
## [0.5.19](https://github.com/ecmwf/anemoi-datasets/compare/0.5.18...0.5.19) (2025-03-27)
|
|
12
52
|
|
|
13
53
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: anemoi-datasets
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.21
|
|
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,6 +205,7 @@ 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: Changelog, https://github.com/ecmwf/anemoi-datasets/CHANGELOG.md
|
|
208
209
|
Project-URL: Documentation, https://anemoi-datasets.readthedocs.io/
|
|
209
210
|
Project-URL: Homepage, https://github.com/ecmwf/anemoi-datasets/
|
|
210
211
|
Project-URL: Issues, https://github.com/ecmwf/anemoi-datasets/issues
|
|
@@ -224,17 +225,22 @@ Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
|
224
225
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
225
226
|
Requires-Python: >=3.9
|
|
226
227
|
License-File: LICENSE
|
|
227
|
-
Requires-Dist: anemoi-transform>=0.1.
|
|
228
|
-
Requires-Dist: anemoi-utils[provenance]>=0.4.
|
|
228
|
+
Requires-Dist: anemoi-transform>=0.1.9
|
|
229
|
+
Requires-Dist: anemoi-utils[provenance]>=0.4.19
|
|
229
230
|
Requires-Dist: cfunits
|
|
231
|
+
Requires-Dist: numcodecs<0.16
|
|
230
232
|
Requires-Dist: numpy
|
|
231
233
|
Requires-Dist: pyyaml
|
|
232
234
|
Requires-Dist: semantic-version
|
|
233
235
|
Requires-Dist: tqdm
|
|
234
236
|
Requires-Dist: zarr<=2.18.4
|
|
235
237
|
Provides-Extra: all
|
|
236
|
-
Requires-Dist: anemoi-datasets[create,remote,xarray]; extra == "all"
|
|
238
|
+
Requires-Dist: anemoi-datasets[comparelam,create,remote,xarray]; extra == "all"
|
|
239
|
+
Provides-Extra: comparelam
|
|
240
|
+
Requires-Dist: prettytable; extra == "comparelam"
|
|
241
|
+
Requires-Dist: termcolor; extra == "comparelam"
|
|
237
242
|
Provides-Extra: create
|
|
243
|
+
Requires-Dist: cachetools; extra == "create"
|
|
238
244
|
Requires-Dist: earthkit-data[mars]>=0.12.4; extra == "create"
|
|
239
245
|
Requires-Dist: earthkit-geo>=0.3; extra == "create"
|
|
240
246
|
Requires-Dist: earthkit-meteo>=0.3; extra == "create"
|
|
@@ -244,6 +250,7 @@ Requires-Dist: pyproj>=3; extra == "create"
|
|
|
244
250
|
Provides-Extra: dev
|
|
245
251
|
Requires-Dist: anemoi-datasets[all,docs,tests]; extra == "dev"
|
|
246
252
|
Provides-Extra: docs
|
|
253
|
+
Requires-Dist: anemoi-datasets[all]; extra == "docs"
|
|
247
254
|
Requires-Dist: nbsphinx; extra == "docs"
|
|
248
255
|
Requires-Dist: pandoc; extra == "docs"
|
|
249
256
|
Requires-Dist: sphinx; extra == "docs"
|
|
@@ -19,4 +19,5 @@ help:
|
|
|
19
19
|
# Catch-all target: route all unknown targets to Sphinx using the new
|
|
20
20
|
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
|
|
21
21
|
%: Makefile
|
|
22
|
+
bash $(SOURCEDIR)/scripts/api_build.sh
|
|
22
23
|
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{%- macro automodule(modname, options) -%}
|
|
2
|
+
.. automodule:: {{ modname }}
|
|
3
|
+
{%- for option in options %}
|
|
4
|
+
:{{ option }}:
|
|
5
|
+
{%- endfor %}
|
|
6
|
+
{%- endmacro %}
|
|
7
|
+
|
|
8
|
+
{%- macro toctree(docnames) -%}
|
|
9
|
+
.. toctree::
|
|
10
|
+
:maxdepth: {{ maxdepth }}
|
|
11
|
+
{% for docname in docnames %}
|
|
12
|
+
{{ docname }}
|
|
13
|
+
{%- endfor %}
|
|
14
|
+
{%- endmacro %}
|
|
15
|
+
|
|
16
|
+
{%- if is_namespace %}
|
|
17
|
+
{{- pkgname.split(".")[1:] | join(".") | e | heading }}
|
|
18
|
+
{% else %}
|
|
19
|
+
{{- pkgname.split(".")[1:] | join(" ") | e | heading }}
|
|
20
|
+
{% endif %}
|
|
21
|
+
|
|
22
|
+
{%- if is_namespace %}
|
|
23
|
+
.. py:module:: {{ pkgname }}
|
|
24
|
+
{% endif %}
|
|
25
|
+
|
|
26
|
+
{%- if modulefirst and not is_namespace %}
|
|
27
|
+
{{ automodule(["anemoi", pkgname] | join("."), [""]) }}
|
|
28
|
+
{% endif %}
|
|
29
|
+
|
|
30
|
+
{%- if subpackages %}
|
|
31
|
+
Subpackages
|
|
32
|
+
-----------
|
|
33
|
+
|
|
34
|
+
{{ toctree(subpackages) }}
|
|
35
|
+
{% endif %}
|
|
36
|
+
|
|
37
|
+
{%- if submodules %}
|
|
38
|
+
{% if separatemodules %}
|
|
39
|
+
{{ toctree(submodules) }}
|
|
40
|
+
{% else %}
|
|
41
|
+
{%- for submodule in submodules %}
|
|
42
|
+
{% if show_headings %}
|
|
43
|
+
{{- submodule.split(".")[2:] | join(".") | e | heading(2) }}
|
|
44
|
+
{% endif %}
|
|
45
|
+
{{ automodule(["anemoi", submodule] | join("."), automodule_options) }}
|
|
46
|
+
{% endfor %}
|
|
47
|
+
{%- endif %}
|
|
48
|
+
{%- endif %}
|
|
49
|
+
|
|
50
|
+
{%- if not modulefirst and not is_namespace %}
|
|
51
|
+
Module contents
|
|
52
|
+
---------------
|
|
53
|
+
|
|
54
|
+
{{ automodule(pkgname, automodule_options) }}
|
|
55
|
+
{% endif %}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
.. _compare_lam_command:
|
|
2
|
+
|
|
3
|
+
Compare-LAM Command
|
|
4
|
+
===================
|
|
5
|
+
|
|
6
|
+
Compare statistics of two datasets.
|
|
7
|
+
This command compares the statistics of each variable in two datasets **only in the overlapping area** between the two.
|
|
8
|
+
|
|
9
|
+
Example use cases:
|
|
10
|
+
------------------
|
|
11
|
+
- **Stretched Grid**
|
|
12
|
+
- **Boundary LAM**
|
|
13
|
+
|
|
14
|
+
In both cases, it is necessary to check the alignment between the variables of the local dataset and those of the global dataset.
|
|
15
|
+
Both datasets will coexist on the same grid, and statistical coherence is essential for training stability.
|
|
16
|
+
|
|
17
|
+
The `compare-lam` command outputs a table comparing dataset statistics in **HTML format**.
|
|
18
|
+
Additionally, a plot of the dataset grids can be displayed and saved if requested.
|
|
19
|
+
|
|
20
|
+
Usage:
|
|
21
|
+
******
|
|
22
|
+
.. code:: console
|
|
23
|
+
|
|
24
|
+
$ anemoi-datasets compare-lam dataset1 dataset2 -D num_dates -O outpath -R round_ndigits --selected-vars var1 var2 ... [--save-plots]
|
|
25
|
+
|
|
26
|
+
Arguments:
|
|
27
|
+
----------
|
|
28
|
+
|
|
29
|
+
- **dataset1**: Path to the first dataset (the global dataset).
|
|
30
|
+
- **dataset2**: Path to the second dataset (the LAM dataset).
|
|
31
|
+
- **-D, --num-of-dates**: Number of time steps (datapoints) to compare. *(default: 10)*
|
|
32
|
+
- **-O, --outpath**: Path to store the output table (and optional plots). *(default: "./")*
|
|
33
|
+
- **-R, --round-of-digits**: Number of decimal places to round values to. *(default: 4)*
|
|
34
|
+
- **--selected-vars**: List of variables to compare between the datasets. *(default: ["10u", "10v", "2d", "2t"])*
|
|
35
|
+
- **--save-plots (optional)**: Enable this flag to save an image of the dataset grids.
|
|
36
|
+
|
|
37
|
+
Example:
|
|
38
|
+
--------
|
|
39
|
+
|
|
40
|
+
.. code:: console
|
|
41
|
+
|
|
42
|
+
$ compare-lam aifs-ea-an-oper-0001-mars-n320-1979-2022-6h-v6.zarr metno-meps-archive-det-opendap-2p5km-2020-2023-6h-v1.zarr -D 10 -O "./" -R 4 --selected-vars 2t msl --save-plots
|
|
43
|
+
|
|
44
|
+
Argparse integration:
|
|
45
|
+
---------------------
|
|
46
|
+
|
|
47
|
+
.. argparse::
|
|
48
|
+
:module: anemoi.datasets.__main__
|
|
49
|
+
:func: create_parser
|
|
50
|
+
:prog: anemoi-datasets
|
|
51
|
+
:path: compare-lam
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
.. _grib-index_command:
|
|
2
|
+
|
|
3
|
+
Grib-index Command
|
|
4
|
+
============
|
|
5
|
+
|
|
6
|
+
The `grib-index` command is used to create an index file for GRIB files. The index file is then used
|
|
7
|
+
by the `grib-index` :ref:`source <grib-index_source>`.
|
|
8
|
+
|
|
9
|
+
The command will recursively scan the directories provided and open all the GRIB files found. It will
|
|
10
|
+
then create an index file for each GRIB file, which will be used to read the data.
|
|
11
|
+
|
|
12
|
+
.. code:: bash
|
|
13
|
+
|
|
14
|
+
anemoi-datasets grib-index --index index.db /path1/to/grib/files /path2/to/grib/files
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
See :ref:`grib_flavour` for more information about GRIB flavours.
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
.. argparse::
|
|
21
|
+
:module: anemoi.datasets.__main__
|
|
22
|
+
:func: create_parser
|
|
23
|
+
:prog: anemoi-datasets
|
|
24
|
+
:path: grib-index
|
{anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/orog_to_z.rst
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
orog_to_z
|
|
3
3
|
###########
|
|
4
4
|
|
|
5
|
-
The ``orog_to_z`` filter converts orography (in
|
|
5
|
+
The ``orog_to_z`` filter converts orography (in metres) to surface
|
|
6
6
|
geopotential height (m^2/s^2) using the equation:
|
|
7
7
|
|
|
8
8
|
.. math::
|
|
@@ -10,7 +10,7 @@ geopotential height (m^2/s^2) using the equation:
|
|
|
10
10
|
z &= g \cdot \textrm{orog}\\
|
|
11
11
|
g &= 9.80665\ m \cdot s^{-1}
|
|
12
12
|
|
|
13
|
-
This filter
|
|
13
|
+
This filter must follow a source that provides orography, which is
|
|
14
14
|
replaced by surface geopotential height.
|
|
15
15
|
|
|
16
16
|
.. literalinclude:: yaml/orog_to_z.yaml
|
|
@@ -3,23 +3,22 @@
|
|
|
3
3
|
########
|
|
4
4
|
|
|
5
5
|
When building a dataset for a specific model, it is possible that the
|
|
6
|
-
source grid or resolution
|
|
6
|
+
source grid or resolution does not fit the needs. In that case, it is
|
|
7
7
|
possible to add a filter to interpolate the data to a target grid. The
|
|
8
8
|
filter is part of the ``anemoi-transform`` package. It will call the
|
|
9
9
|
``interpolate`` function from `earthkit-regrid
|
|
10
10
|
<https://earthkit-regrid.readthedocs.io/en/latest/interpolate.html>`_ if
|
|
11
|
-
the keys ``method``, ``in_grid`` and ``out_grid`` are
|
|
11
|
+
the keys ``method``, ``in_grid`` and ``out_grid`` are provided and if a
|
|
12
12
|
`pre-generated matrix
|
|
13
13
|
<https://earthkit-regrid.readthedocs.io/en/latest/inventory/index.html>`_
|
|
14
|
-
|
|
15
|
-
``regrid matrix`` previously
|
|
16
|
-
make-regrid-matrix``. The generated matrix is
|
|
17
|
-
input/output coordinates, the indices and the weights of the
|
|
14
|
+
exists for this transformation. Otherwise, it is possible to provide a
|
|
15
|
+
``regrid matrix`` previously generated with ``anemoi-transform
|
|
16
|
+
make-regrid-matrix``. The generated matrix is an NPZ file containing the
|
|
17
|
+
input/output coordinates, the indices, and the weights of the
|
|
18
18
|
interpolation.
|
|
19
19
|
|
|
20
|
-
``regrid`` is a :ref:`filter <filters>` that
|
|
21
|
-
|
|
22
|
-
operation.
|
|
20
|
+
``regrid`` is a :ref:`filter <filters>` that must follow a :ref:`source
|
|
21
|
+
<sources>` or another filter in a :ref:`building-pipe` operation.
|
|
23
22
|
|
|
24
23
|
.. literalinclude:: yaml/regrid1.yaml
|
|
25
24
|
:language: yaml
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
########
|
|
4
4
|
|
|
5
5
|
When combining several sources, it is common to have different values
|
|
6
|
-
for a given attribute to
|
|
6
|
+
for a given attribute to represent the same concept. For example,
|
|
7
7
|
``temperature_850hPa`` and ``t_850`` are two different ways to represent
|
|
8
|
-
the temperature at 850 hPa. The ``rename`` filter allows
|
|
9
|
-
to another key. It is a :ref:`filter <filters>` that
|
|
8
|
+
the temperature at 850 hPa. The ``rename`` filter allows renaming a key
|
|
9
|
+
to another key. It is a :ref:`filter <filters>` that must follow a
|
|
10
10
|
:ref:`source <sources>` or another filter in a :ref:`building-pipe`
|
|
11
11
|
operation.
|
|
12
12
|
|
|
@@ -15,6 +15,6 @@ operation.
|
|
|
15
15
|
|
|
16
16
|
.. note::
|
|
17
17
|
|
|
18
|
-
The ``rename`` filter was
|
|
18
|
+
The ``rename`` filter was primarily designed to rename the ``param``
|
|
19
19
|
attribute, but any key can be renamed. The ``rename`` filter can take
|
|
20
20
|
several renaming keys.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
#####
|
|
2
|
+
sum
|
|
3
|
+
#####
|
|
4
|
+
|
|
5
|
+
The ``sum`` filter computes the sum over multiple variables. This can be
|
|
6
|
+
useful for computing total precipitation from its components (snow,
|
|
7
|
+
rain) or summing the components of total column-integrated water. This
|
|
8
|
+
filter must follow a source that provides the list of variables to be
|
|
9
|
+
summed up. These variables are removed by the filter and replaced by a
|
|
10
|
+
single summed variable.
|
|
11
|
+
|
|
12
|
+
.. literalinclude:: yaml/sum.yaml
|
|
13
|
+
:language: yaml
|
{anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/filters/wz_to_w.rst
RENAMED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
The ``wz_to_w`` filter converts geometric vertical velocity (provided in
|
|
6
6
|
m/s) to vertical velocity in pressure coordinates (Pa/s). This filter
|
|
7
|
-
|
|
8
|
-
Geometric vertical velocity is removed by the filter and pressure
|
|
7
|
+
must follow a source that provides geometric vertical velocity.
|
|
8
|
+
Geometric vertical velocity is removed by the filter, and pressure
|
|
9
9
|
vertical velocity is added.
|
|
10
10
|
|
|
11
11
|
.. literalinclude:: yaml/wz_to_w.yaml
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
input:
|
|
2
|
+
pipe:
|
|
3
|
+
- source:
|
|
4
|
+
# mars, grib, netcdf, etc.
|
|
5
|
+
# source attributes here
|
|
6
|
+
# ...
|
|
7
|
+
# Must load the variables to be summed
|
|
8
|
+
|
|
9
|
+
- sum:
|
|
10
|
+
params:
|
|
11
|
+
# List of input variables
|
|
12
|
+
- variable1
|
|
13
|
+
- variable2
|
|
14
|
+
- variable3
|
|
15
|
+
output: variable_total # Name of output variable
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
input:
|
|
2
|
+
pipe:
|
|
3
|
+
- source:
|
|
4
|
+
# mars, grib, netcdf, etc.
|
|
5
|
+
# source attributes here
|
|
6
|
+
# ...
|
|
7
|
+
# Must load geometric vertical velocity
|
|
8
|
+
|
|
9
|
+
- wz_to_w:
|
|
10
|
+
wz: wz # Name of geometric vertical velocity (input) variable
|
|
11
|
+
x: z # Name of pressure vertical velocity (output) variable
|
{anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/handling-missing-dates.rst
RENAMED
|
@@ -6,7 +6,8 @@ By default, the package will raise an error if there are missing dates.
|
|
|
6
6
|
|
|
7
7
|
Missing dates can be handled by specifying a list of dates in the
|
|
8
8
|
configuration file. The dates should be in the same format as the dates
|
|
9
|
-
in the time series. The missing dates will be filled ``np.nan``
|
|
9
|
+
in the time series. The missing dates will be filled with ``np.nan``
|
|
10
|
+
values.
|
|
10
11
|
|
|
11
12
|
.. literalinclude:: ../yaml/missing_dates.yaml
|
|
12
13
|
:language: yaml
|
{anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/handling-missing-values.rst
RENAMED
|
@@ -9,8 +9,8 @@ complete data in all fields.
|
|
|
9
9
|
|
|
10
10
|
However, there are scenarios where `NaNs` naturally occur, such as with
|
|
11
11
|
variables only relevant on land or at sea. This happens for sea surface
|
|
12
|
-
temperature (`sst`), for example. In such cases, the default
|
|
13
|
-
to reject data with `NaNs` as invalid. To accommodate `NaNs` and
|
|
12
|
+
temperature (`sst`), for example. In such cases, the default behaviour
|
|
13
|
+
is to reject data with `NaNs` as invalid. To accommodate `NaNs` and
|
|
14
14
|
accurately compute statistics based on them, you can include the
|
|
15
15
|
``allow_nans`` key in the configuration.
|
|
16
16
|
|
|
@@ -54,7 +54,7 @@ concurrent writes.
|
|
|
54
54
|
|
|
55
55
|
Once you have loaded all the parts, you can finalise the dataset with
|
|
56
56
|
the `finalise` command. This will write the metadata and the attributes
|
|
57
|
-
to the dataset, and consolidate the statistics and
|
|
57
|
+
to the dataset, and consolidate the statistics and clean up some
|
|
58
58
|
temporary files.
|
|
59
59
|
|
|
60
60
|
.. code:: bash
|
|
@@ -11,7 +11,7 @@ fields as well as the operations to perform on them, before they are
|
|
|
11
11
|
written to a zarr file. The input of the process is a range of dates and
|
|
12
12
|
some options to control the layout of the output. Statistics will be
|
|
13
13
|
computed as the dataset is built, and stored in the metadata, with other
|
|
14
|
-
information such as the
|
|
14
|
+
information such as the locations of the grid points, the list of
|
|
15
15
|
variables, etc.
|
|
16
16
|
|
|
17
17
|
.. figure:: ../../_static/schemas/recipe.png
|
|
@@ -27,7 +27,7 @@ date
|
|
|
27
27
|
not just a date. A training dataset covers a continuous range of
|
|
28
28
|
dates with a given frequency. Missing dates are still part of the
|
|
29
29
|
dataset, but missing data are marked as such using NaNs. Dates are
|
|
30
|
-
always in UTC, and refer to date at which the data is valid. For
|
|
30
|
+
always in UTC, and refer to the date at which the data is valid. For
|
|
31
31
|
accumulations and fluxes, that would be the end of the accumulation
|
|
32
32
|
period.
|
|
33
33
|
|
|
@@ -44,9 +44,9 @@ field
|
|
|
44
44
|
|
|
45
45
|
source
|
|
46
46
|
The `source` is a software component that, given a list of dates and
|
|
47
|
-
variables will return the corresponding fields. An example of
|
|
48
|
-
is ECMWF's MARS archive, a collection of GRIB or NetCDF files,
|
|
49
|
-
database, etc. See :ref:`sources` for more information.
|
|
47
|
+
variables, will return the corresponding fields. An example of a
|
|
48
|
+
source is ECMWF's MARS archive, a collection of GRIB or NetCDF files,
|
|
49
|
+
a database, etc. See :ref:`sources` for more information.
|
|
50
50
|
|
|
51
51
|
filter
|
|
52
52
|
A `filter` is a software component that takes as input the output of
|
|
@@ -69,13 +69,13 @@ join
|
|
|
69
69
|
pipe
|
|
70
70
|
The pipe is the process of transforming fields using filters. The
|
|
71
71
|
first step of a pipe is typically a source, a join, or another pipe.
|
|
72
|
-
This can subsequently followed by more filters.
|
|
72
|
+
This can subsequently be followed by more filters.
|
|
73
73
|
|
|
74
74
|
concat
|
|
75
75
|
The concatenation is the process of combining different sets of
|
|
76
76
|
operations that handle different dates. This is typically used to
|
|
77
77
|
build a dataset that spans several years, when several sources are
|
|
78
|
-
involved, each providing data for different period.
|
|
78
|
+
involved, each providing data for a different period.
|
|
79
79
|
|
|
80
80
|
Each operation is considered as a :ref:`source <sources>`, therefore
|
|
81
81
|
operations can be combined to build complex datasets.
|
{anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/naming-conventions.rst
RENAMED
|
@@ -5,17 +5,17 @@
|
|
|
5
5
|
############################
|
|
6
6
|
|
|
7
7
|
A dataset name is a string used to identify a dataset. It is designed to
|
|
8
|
-
be human
|
|
8
|
+
be human-readable and is *not* designed to be parsed and split into
|
|
9
9
|
parts.
|
|
10
10
|
|
|
11
11
|
To ensure consistency, a dataset name should follow the following rules:
|
|
12
12
|
|
|
13
13
|
- All lower case.
|
|
14
|
-
- Only letters
|
|
15
|
-
- No
|
|
16
|
-
|
|
14
|
+
- Only letters, numbers, and dashes ``-`` are allowed.
|
|
15
|
+
- No underscores ``_``, no dots ``.``, no uppercase letters, and no
|
|
16
|
+
other special characters (``@``, ``#``, ``*``, etc.).
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Additionally, a dataset name is built from different parts joined with
|
|
19
19
|
``-`` as follows (each part can contain additional ``-``):
|
|
20
20
|
|
|
21
21
|
.. code::
|
|
@@ -24,12 +24,12 @@ Additionlly, a dataset name is built from different parts joined with
|
|
|
24
24
|
|
|
25
25
|
.. note::
|
|
26
26
|
|
|
27
|
-
This is the current naming
|
|
27
|
+
This is the current naming convention for datasets in the Anemoi
|
|
28
28
|
registry. It will need to be updated and adapted as more datasets are
|
|
29
29
|
added. The part **purpose** is especially difficult to define for
|
|
30
30
|
some datasets and may be revisited.
|
|
31
31
|
|
|
32
|
-
The tables below
|
|
32
|
+
The tables below provide more details and some examples.
|
|
33
33
|
|
|
34
34
|
.. list-table:: Dataset naming conventions
|
|
35
35
|
:widths: 20 80
|
|
@@ -41,7 +41,7 @@ The tables below provides more details and some examples.
|
|
|
41
41
|
- - **purpose**
|
|
42
42
|
|
|
43
43
|
- Can be `aifs` because the data is used to train the AIFS model.
|
|
44
|
-
|
|
44
|
+
It is also sometimes `metno` for data from the Norwegian
|
|
45
45
|
Meteorological Institute. This definition may need to be
|
|
46
46
|
revisited.
|
|
47
47
|
|
|
@@ -69,7 +69,7 @@ The tables below provides more details and some examples.
|
|
|
69
69
|
- - **end-year**
|
|
70
70
|
|
|
71
71
|
- 2020 if the first validity time is in 2020. Notice that if the
|
|
72
|
-
dataset is from 18.04.2020 to 19.07.2020, the
|
|
72
|
+
dataset is from 18.04.2020 to 19.07.2020, the start-year and
|
|
73
73
|
end-year are both 2020. For instance in
|
|
74
74
|
aifs-od-an-oper-0001-mars-o96-2020-2020-6h-v5
|
|
75
75
|
|
|
@@ -88,7 +88,7 @@ The tables below provides more details and some examples.
|
|
|
88
88
|
|
|
89
89
|
- Experimental datasets can have additional text in the name.
|
|
90
90
|
This extra string can contain additional `-`. It provides
|
|
91
|
-
additional information about the content of dataset.
|
|
91
|
+
additional information about the content of the dataset.
|
|
92
92
|
|
|
93
93
|
.. list-table:: Examples
|
|
94
94
|
:widths: 100
|
{anemoi_datasets-0.5.19 → anemoi_datasets-0.5.21}/docs/datasets/building/naming-variables.rst
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
.. _naming-variables:
|
|
2
2
|
|
|
3
3
|
##################
|
|
4
|
-
Naming
|
|
4
|
+
Naming Variables
|
|
5
5
|
##################
|
|
6
6
|
|
|
7
7
|
***************
|
|
8
|
-
|
|
8
|
+
Rename Filter
|
|
9
9
|
***************
|
|
10
10
|
|
|
11
11
|
The rename filter is used to rename variables in a dataset.
|
|
@@ -13,7 +13,7 @@ The rename filter is used to rename variables in a dataset.
|
|
|
13
13
|
.. _remapping_option:
|
|
14
14
|
|
|
15
15
|
******************
|
|
16
|
-
|
|
16
|
+
Remapping Option
|
|
17
17
|
******************
|
|
18
18
|
|
|
19
19
|
TODO.
|