Skip to content

New range-only lifters#4

Merged
duembgen merged 12 commits into
mainfrom
new_ro_lifters
Jun 5, 2025
Merged

New range-only lifters#4
duembgen merged 12 commits into
mainfrom
new_ro_lifters

Conversation

@duembgen
Copy link
Copy Markdown
Owner

@duembgen duembgen commented Jun 4, 2025

This pull request introduces significant updates to the popcor library, including the addition of new lifters, refactoring of existing ones, and enhancements to type annotations for better clarity and maintainability. The most important changes involve the creation of the RangeOnlyLifter base class, two new specialized lifters (RangeOnlyNsqLifter and RangeOnlySqLifter), and improvements to type definitions for gradient and Hessian methods.

New Lifters and Refactoring:

  • popcor/base_lifters/__init__.py: Refactored imports to include the new RangeOnlyLifter base class and added RangeOnlyLifter to the module.
  • popcor/base_lifters/range_only_lifter.py: Added the RangeOnlyLifter base class, which provides foundational functionality for range-only localization in 2D or 3D. It includes methods for sampling parameters, computing residuals, and solving localization problems.

Specialized Range-Only Lifters:

  • popcor/examples/__init__.py: Updated imports to include two new lifters, RangeOnlyNsqLifter and RangeOnlySqLifter, which extend the functionality of RangeOnlyLifter for specific use cases.
  • popcor/examples/ro_nsq_lifter.py: Added RangeOnlyNsqLifter, a specialized implementation for range-only localization without squaring distances. This lifter introduces advanced formulations, including normal vectors and quadratic substitutions.

Type Annotation Enhancements:

  • popcor/base_lifters/state_lifter.py: Updated type annotations for get_grad and get_hess methods to return np.ndarray instead of float, improving clarity and aligning with their actual return types.

@duembgen duembgen changed the title New ro lifters New range-only lifters Jun 4, 2025
@duembgen
Copy link
Copy Markdown
Owner Author

duembgen commented Jun 4, 2025

Moreover, this pull request introduces changes to the documentation workflow and removes outdated build artifacts and generated files. The most important updates include adding a GitHub Pages deployment step to the documentation workflow and cleaning up obsolete files in the docs/build directory.

Workflow Updates:

  • .github/workflows/documentation.yml: Added a step to deploy the documentation to GitHub Pages using the peaceiris/actions-gh-pages action. This ensures that the built documentation is published automatically.

Cleanup of Generated Files:

@duembgen duembgen merged commit 7c96721 into main Jun 5, 2025
2 checks passed
@duembgen duembgen deleted the new_ro_lifters branch June 5, 2025 08:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant