anise icon indicating copy to clipboard operation
anise copied to clipboard

Expose rotation parameters to Python

Open ChristopherRabotin opened this issue 2 years ago • 0 comments

High level description

The current ANISE library offers functionality for handling rotation parameters (including fetching the Direction Cosine Matrix (DCM) and converting it to Quaternion or Modified Rodrigues Parameters (MRPs)) exclusively in Rust. This functionality needs to be exposed to Python users. The implementation should:

Requirements

  1. Feature Parity: Ensure Python users have access to the same rotation parameters functionalities as Rust users.
  2. Functionality: Include the ability to fetch the DCM of a given set of rotations and convert it to Quaternion or MRPs.
  3. Integration: Seamlessly integrate with the existing Python modules in ANISE, maintaining consistency in usage and design.
  4. Allow initialization and conversion into numpy arrays.

Test plans

To validate the implementation, the following test plans will be executed:

  • Copy the same unit tests from Rust into a Python test
  • Test initialization from numpy array
  • Test conversion to a numpy array

Design

Deciding whether to wrap the Rust implementation for Python use or rewrite the functionality in Python, considering performance and maintenance.

ChristopherRabotin avatar Jan 17 '24 05:01 ChristopherRabotin