.flake8
.gitignore
.pre-commit-config.yaml
.readthedocs.yml
Cargo.toml
LICENSE
README.md
pyproject.toml
pytest.ini
setup.py
.github/ci-hpc-config.yml
.github/ci-hpc-gpu-config.yml
.github/workflows/cd.yml
.github/workflows/ci.yml
.github/workflows/downstream-ci.yml
.github/workflows/label-public-pr.yml
.github/workflows/nightly-hpc-gpu.yml
.github/workflows/test-pypi.yml
docs/Makefile
docs/images/accuflux.gif
docs/images/array_backends_with_xr.png
docs/images/catchment.gif
docs/images/distance_length.png
docs/images/earthkit_example.png
docs/images/glofas.png
docs/images/raster_vector_networks.jpg
docs/images/subcatchment.gif
docs/source/clean_autodocs.py
docs/source/conf.py
docs/source/contributing.rst
docs/source/earthkit-packages.yml
docs/source/faq.rst
docs/source/getting-started.rst
docs/source/index.rst
docs/source/references.bib
docs/source/references.rst
docs/source/why.rst
docs/source/writing-guidelines.rst
docs/source/_static/book.svg
docs/source/_static/brackets-contain.svg
docs/source/_static/bulb.svg
docs/source/_static/custom.css
docs/source/_static/custom.js
docs/source/_static/earthkit-hydro-dark.svg
docs/source/_static/earthkit-hydro-grey.svg
docs/source/_static/earthkit-hydro-light.svg
docs/source/_static/message-question.svg
docs/source/_static/octahedral-grid.svg
docs/source/_static/rocket.svg
docs/source/_static/tool.svg
docs/source/_templates/sidebar/brand.html
docs/source/concepts/array_backend_design.rst
docs/source/concepts/catchment_concepts.rst
docs/source/concepts/coordinate_systems.rst
docs/source/concepts/distance_vs_length_concepts.rst
docs/source/concepts/earthkit_ecosystem.rst
docs/source/concepts/flow_direction_systems.rst
docs/source/concepts/index.rst
docs/source/concepts/missing_value_handling.rst
docs/source/concepts/pcraster_compatibility.rst
docs/source/concepts/performance_considerations.rst
docs/source/concepts/river_network_concepts.rst
docs/source/concepts/topological_sorting.rst
docs/source/howto/calculate_river_distances.rst
docs/source/howto/calculate_stream_order.rst
docs/source/howto/compute_catchment_statistics.rst
docs/source/howto/compute_flow_accumulations.rst
docs/source/howto/create_subnetworks.rst
docs/source/howto/delineate_catchments.rst
docs/source/howto/handle_missing_data.rst
docs/source/howto/index.rst
docs/source/howto/load_river_network.rst
docs/source/howto/optimize_performance.rst
docs/source/howto/specify_locations.rst
docs/source/howto/use_different_array_backends.rst
docs/source/howto/visualize_results.rst
docs/source/howto/work_with_raster_vector_inputs.rst
docs/source/tutorials/array_backend.ipynb
docs/source/tutorials/catchment_statistics.ipynb
docs/source/tutorials/computing_accumulations.ipynb
docs/source/tutorials/creating_subnetworks.ipynb
docs/source/tutorials/distance_length.ipynb
docs/source/tutorials/finding_catchments.ipynb
docs/source/tutorials/gridded_masked.ipynb
docs/source/tutorials/index.rst
docs/source/tutorials/loading_river_networks.ipynb
docs/source/tutorials/streamorder.ipynb
docs/source/tutorials/xarray_array.ipynb
rust/lib.rs
src/earthkit/hydro/__init__.py
src/earthkit/hydro/_version.py
src/earthkit/hydro/_backends/__init__.py
src/earthkit/hydro/_backends/array_backend.py
src/earthkit/hydro/_backends/cupy_backend.py
src/earthkit/hydro/_backends/find.py
src/earthkit/hydro/_backends/jax_backend.py
src/earthkit/hydro/_backends/mlx_backend.py
src/earthkit/hydro/_backends/numpy_backend.py
src/earthkit/hydro/_backends/tensorflow_backend.py
src/earthkit/hydro/_backends/torch_backend.py
src/earthkit/hydro/_core/__init__.py
src/earthkit/hydro/_core/_accumulate.py
src/earthkit/hydro/_core/_find.py
src/earthkit/hydro/_core/_move.py
src/earthkit/hydro/_core/accumulate.py
src/earthkit/hydro/_core/flow.py
src/earthkit/hydro/_core/metrics.py
src/earthkit/hydro/_core/move.py
src/earthkit/hydro/_core/online.py
src/earthkit/hydro/_readers/__init__.py
src/earthkit/hydro/_readers/_grit.py
src/earthkit/hydro/_readers/group_labels.py
src/earthkit/hydro/_readers/readers.py
src/earthkit/hydro/_utils/__init__.py
src/earthkit/hydro/_utils/coords.py
src/earthkit/hydro/_utils/locations.py
src/earthkit/hydro/_utils/readers.py
src/earthkit/hydro/_utils/decorators/__init__.py
src/earthkit/hydro/_utils/decorators/array_backend.py
src/earthkit/hydro/_utils/decorators/masking.py
src/earthkit/hydro/_utils/decorators/xarray.py
src/earthkit/hydro/catchments/__init__.py
src/earthkit/hydro/catchments/_operations.py
src/earthkit/hydro/catchments/_toplevel.py
src/earthkit/hydro/catchments/_xarray.py
src/earthkit/hydro/catchments/array/__init__.py
src/earthkit/hydro/catchments/array/__operations.py
src/earthkit/hydro/catchments/array/_operations.py
src/earthkit/hydro/catchments/array/_toplevel.py
src/earthkit/hydro/data_structures/__init__.py
src/earthkit/hydro/data_structures/_network.py
src/earthkit/hydro/data_structures/_network_storage.py
src/earthkit/hydro/distance/__init__.py
src/earthkit/hydro/distance/_toplevel.py
src/earthkit/hydro/distance/array/__init__.py
src/earthkit/hydro/distance/array/__operations.py
src/earthkit/hydro/distance/array/_operations.py
src/earthkit/hydro/distance/array/_toplevel.py
src/earthkit/hydro/downstream/__init__.py
src/earthkit/hydro/downstream/_toplevel.py
src/earthkit/hydro/downstream/array/__init__.py
src/earthkit/hydro/downstream/array/_operations.py
src/earthkit/hydro/downstream/array/_toplevel.py
src/earthkit/hydro/length/__init__.py
src/earthkit/hydro/length/_toplevel.py
src/earthkit/hydro/length/array/__init__.py
src/earthkit/hydro/length/array/__operations.py
src/earthkit/hydro/length/array/_operations.py
src/earthkit/hydro/length/array/_toplevel.py
src/earthkit/hydro/move/__init__.py
src/earthkit/hydro/move/_toplevel.py
src/earthkit/hydro/move/array/__init__.py
src/earthkit/hydro/move/array/__operations.py
src/earthkit/hydro/move/array/_operations.py
src/earthkit/hydro/move/array/_toplevel.py
src/earthkit/hydro/river_network/__init__.py
src/earthkit/hydro/river_network/_cache.py
src/earthkit/hydro/river_network/_river_network.py
src/earthkit/hydro/streamorder/__init__.py
src/earthkit/hydro/streamorder/_toplevel.py
src/earthkit/hydro/streamorder/array/__init__.py
src/earthkit/hydro/streamorder/array/_operations.py
src/earthkit/hydro/streamorder/array/_toplevel.py
src/earthkit/hydro/subnetwork/__init__.py
src/earthkit/hydro/subnetwork/_toplevel.py
src/earthkit/hydro/upstream/__init__.py
src/earthkit/hydro/upstream/_toplevel.py
src/earthkit/hydro/upstream/array/__init__.py
src/earthkit/hydro/upstream/array/_operations.py
src/earthkit/hydro/upstream/array/_toplevel.py
src/earthkit_hydro.egg-info/PKG-INFO
src/earthkit_hydro.egg-info/SOURCES.txt
src/earthkit_hydro.egg-info/dependency_links.txt
src/earthkit_hydro.egg-info/requires.txt
src/earthkit_hydro.egg-info/top_level.txt
tests/conftest.py
tests/utils.py
tests/_test_inputs/accumulation.py
tests/_test_inputs/catchment.py
tests/_test_inputs/distance.py
tests/_test_inputs/movement.py
tests/_test_inputs/readers.py
tests/_test_inputs/river_networks.py
tests/_test_inputs/streamorder.py
tests/_test_inputs/subnetwork.py
tests/catchments/__init__.py
tests/catchments/array/__init__.py
tests/catchments/array/test_find.py
tests/distance/__init__.py
tests/distance/array/__init__.py
tests/distance/array/test_max.py
tests/distance/array/test_min.py
tests/length/__init__.py
tests/length/array/__init__.py
tests/length/array/test_max.py
tests/length/array/test_min.py
tests/move/__init__.py
tests/move/array/__init__.py
tests/move/array/test_downstream.py
tests/move/array/test_upstream.py
tests/river_network/__init__.py
tests/river_network/test_load.py
tests/streamorder/__init__.py
tests/streamorder/array/__init__.py
tests/streamorder/array/test_shreve.py
tests/streamorder/array/test_strahler.py
tests/streamorder/xarray/__init__.py
tests/upstream/__init__.py
tests/upstream/array/__init__.py
tests/upstream/array/test_max.py
tests/upstream/array/test_mean.py
tests/upstream/array/test_min.py
tests/upstream/array/test_sum.py