Conversation
…chmark parity - remove tracer-unsafe bool/int conversions in tree geometry path - add outer-jit regression test for compute_tree_geometry - make interactions result materialization tracer-safe under jit - use shape-derived internal-node count in dual-tree walk - restore fully-jitted radix traversal/e2e in kdtree backend benchmark notebook
…n query/count functions
- Implemented `return_squared` option in `query_neighbors` to return squared distances. - Enhanced `count_neighbors` to support vector radii, allowing for multiple radius queries. - Updated KDTree construction to optimize for leaf sizes and bounding box calculations. - Added unit tests to verify the correctness of squared distance returns and vector radius handling.
This commit updates the __init__.py file to include the build_leaf_neighbor_lists function in the module exports. This change ensures that the function is accessible when the yggdrax module is imported, enhancing the functionality available to users.
- Updated test for KDTree to reflect changes in FMM topology support and missing fields. - Enhanced KDTree class to include particle indices, parent nodes, and node ranges. - Modified geometry computation to conditionally use Morton bounds based on available fields. - Improved interactions implementation to ensure proper type handling for parent indices. - Added helper function to compute inorder traversal and subtree ranges for KDTree nodes. - Adjusted build_kdtree function to return additional topology information. - Updated tree construction in KDParticleTree to utilize new particle indices.
- Introduced a new script `kdtree_radix_numeric_parity.py` to compare backend outputs for Radix and KD tree implementations in the context of nearfield computations. - Enhanced unit tests for dense interactions to support both Radix and KD tree structures. - Added backend-agnostic interaction contract tests for Radix and KD trees. - Updated KD tree API tests to ensure topology fields are well-formed. - Modified prepared artifacts tests to validate both Radix and KD tree types. - Improved tree moments tests to support mass and multipole moment computations for both tree types. - Refactored geometry and interactions implementations to accommodate the new tree topology requirements. - Ensured compatibility with FMM-core topology across various modules.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
made kd-tree compatible with downstream use in FMM code jaccpot.
Validation
pytestblack --check .isort --check-only .pydoclint .Notes
simultaneously made changes to jaccpot to comply with these changes here.