-
Notifications
You must be signed in to change notification settings - Fork 19
healpix moc index #151
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
keewis
wants to merge
57
commits into
xarray-contrib:main
Choose a base branch
from
keewis:moc-index
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
healpix moc index #151
Changes from all commits
Commits
Show all changes
57 commits
Select commit
Hold shift + click to select a range
eeb3004
create a xarray healpix moc index
keewis 900546c
hack to allow creating a moc index
keewis fbc7154
depend on `healpix-geo`
keewis 017d1d0
install `healpix-geo` from PyPI
keewis 51d85ea
Merge branch 'main' into moc-index
keewis d197dfa
install `healpix-geo` in the docs
keewis 4246fac
use a special `values` method to access the actual data
keewis 2b5670b
only support `"nested"` in the MOC index
keewis 3b43dea
special-case the full domain
keewis 86c0a44
remove the duplicate index creation
keewis 19fe087
forward to the wrapped index' `create_variables`
keewis 3315745
dask support in `create_variables`
keewis d8b327a
support `dask` in `from_cell_ids`
keewis c88f0c3
wrap the chunked delayed construction in a list
keewis ffbb4e9
replace the dask loading code with a error message
keewis c769134
out-of-core implement the RangeMOCIndex
keewis 4d95020
remove the `n_partitions` parameter for now
keewis ea42c6e
forward the `size` and `nbytes` properties
keewis e8b689c
check that construction from an array works properly
keewis b3bea15
dask testing utils
keewis 680ad64
remove the unused `unique` scheme for now
keewis e0353a5
typo
keewis 15e7633
changelog
keewis 179ae5a
treat `decode` as a method
keewis 2ef036c
document the `index_kind` parameter
keewis bde552d
pass through the `index_kind` parameter
keewis 19ca9d9
rename `_pd_index` to `_index`
keewis 177ab6c
check `isel`
keewis 15d99c2
raise on irregular chunks
keewis 13ebccc
check `create_variables`
keewis 15de58a
check that irregular chunks are rejected
keewis 6df12bb
more accurate condition
keewis cc4d983
check more invalid chunks
keewis c791c93
check more valid chunk sizes
keewis ed9527c
modify the chunksize if we reach the end
keewis fc6cb5c
support irregular chunks by tracking them on the index
keewis 92fa1c6
require `numpy>=2`
keewis f99c045
more (and smaller) tests
keewis 259b927
restructure the `isel` tests
keewis f26e426
improve the `isel` test
keewis a786344
fix two bugs in the chunk subsetting
keewis 7bec771
remove the default for the `chunksizes` parameter
keewis 826500b
depth → level
keewis 545557e
tests for `from_variables`
keewis 82b4580
more tests for edge cases
keewis f88d55b
check that the index is created properly
keewis ba2a925
check the extracted chunks
keewis 3a28ed0
explicitly raise an error for non-1D cell id coords
keewis cf12c82
properly extract the chunks
keewis 1b4c8eb
also replace the typing to `xr.Index`
keewis 92c484f
accept index options instead of specific args in `decode`
keewis c866046
remove support for the `index_kind` kwarg for H3
keewis 512c905
mark the `raise_if_dask_computes` as vendored from `xarray`
keewis 6de6c33
docstrings for the moc index wrapper
keewis 387a9be
point towards `healpix_geo.nested.RangeMOCIndex`
keewis 8a809b9
point out this only works for `nested`
keewis 45842e5
more comments on the role of the different index objects
keewis File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -29,4 +29,5 @@ dependencies: | |
- cdshealpix | ||
- pip | ||
- pip: | ||
- healpix-geo | ||
- -e .. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -16,3 +16,6 @@ dependencies: | |
- arro3-core | ||
- cdshealpix | ||
- h3ronpy | ||
- pip | ||
- pip: | ||
- healpix-geo |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Possible to make it an optional dependency? I'm concerned by the number of dependencies (compiled packages) xdggs would require as we add more support for various DGGS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
true, I think we should figure out how to resolve this. When we added plotting support we decided to install everything by default (it was easier that way), but that won't scale (see also #128). However, I think we should limit the builtin DGGS to just h3 and healpix, and have separate extension packages for others.
healpix-geo
is a bit special in that you will need it to support ellipsoidal healpix, so that may just stay required (or in the same extra ascdshealpix
, should we modify the code to makeh3ronpy
andcdshealpix
optional)There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes we can limit builtin support to just a few DGGSs (S2 might probably also make sense), but even so users who may be interested in only H3 would need to download a few Healpix dependencies, which is probably not ideal.
We can address that later, though.