LIHPC-Computational-Geometry / coupe

the concurrent partitioner
https://LIHPC-Computational-Geometry.github.io/coupe/
Apache License 2.0
13 stars 3 forks source link

hilbert: add a simple 3D implementation #238

Closed hhirtz closed 2 years ago

hhirtz commented 2 years ago

The 3D implementation needs a smaller lookup table, because there is twice as many configurations to go from an order to the next. Therefore, the LUT allow for only 3 bit to be computed at a time (instead of 6). Its layout is similar however, configurations are encoded on 3 bits instead of 2.

To prevent trait implementation conflicts, HilbertCurve can only implement Partition for &[PointND] instead of all P: AsRef<[_]>.

cube split in 5 equal parts

image

codecov[bot] commented 2 years ago

Codecov Report

Base: 51.96% // Head: 51.41% // Decreases project coverage by -0.54% :warning:

Coverage data is based on head (f07118b) compared to base (6b9f9cd). Patch coverage: 30.18% of modified lines in pull request are covered.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #238 +/- ## ========================================== - Coverage 51.96% 51.41% -0.55% ========================================== Files 36 36 Lines 6759 6806 +47 ========================================== - Hits 3512 3499 -13 - Misses 3247 3307 +60 ``` | [Impacted Files](https://codecov.io/gh/LIHPC-Computational-Geometry/coupe/pull/238?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=LIHPC-Computational-Geometry) | Coverage Δ | | |---|---|---| | [ffi/src/lib.rs](https://codecov.io/gh/LIHPC-Computational-Geometry/coupe/pull/238/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=LIHPC-Computational-Geometry#diff-ZmZpL3NyYy9saWIucnM=) | `0.29% <0.00%> (-0.01%)` | :arrow_down: | | [tools/src/lib.rs](https://codecov.io/gh/LIHPC-Computational-Geometry/coupe/pull/238/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=LIHPC-Computational-Geometry#diff-dG9vbHMvc3JjL2xpYi5ycw==) | `0.17% <0.00%> (-0.01%)` | :arrow_down: | | [src/algorithms/hilbert\_curve.rs](https://codecov.io/gh/LIHPC-Computational-Geometry/coupe/pull/238/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=LIHPC-Computational-Geometry#diff-c3JjL2FsZ29yaXRobXMvaGlsYmVydF9jdXJ2ZS5ycw==) | `54.17% <39.50%> (-10.63%)` | :arrow_down: | | [src/algorithms/vn/first.rs](https://codecov.io/gh/LIHPC-Computational-Geometry/coupe/pull/238/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=LIHPC-Computational-Geometry#diff-c3JjL2FsZ29yaXRobXMvdm4vZmlyc3QucnM=) | `89.47% <0.00%> (-1.76%)` | :arrow_down: | Help us with your feedback. Take ten seconds to tell us [how you rate us](https://about.codecov.io/nps?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=LIHPC-Computational-Geometry). Have a feature suggestion? [Share it here.](https://app.codecov.io/gh/feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=LIHPC-Computational-Geometry)

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.