nyx-space / anise

ANISE provides a toolkit and files for Attitude, Navigation, Instrument, Spacecraft, and Ephemeris data. It's a modern replacement of the NAIF SPICE toolkit.
Mozilla Public License 2.0
55 stars 13 forks source link

Support SPK Type 3 chebyshev position and velocity #321

Closed ChristopherRabotin closed 1 week ago

ChristopherRabotin commented 2 weeks ago

Summary

Add support for SPK type 3 BSP

Fix #320

Architectural Changes

No public changes.

Internally, because the dataset for type 2 and type 3 Chebyshev is identical, I've created a private trait that avoids code duplication.

New Features

Support SPK type3 Chebyshev interpolation.

Improvements

No change

Bug Fixes

No change

Testing and validation

A new DE440-type3 BSP file is added to the tests and validated as part of the validation suite. This file is also used in one of the integration tests.

Documentation

This PR does not primarily deal with documentation changes.

ChristopherRabotin commented 2 weeks ago

This approach does not work because the data is always returned as a type2 record, when it should be a type 3. I'm afraid this will require code duplication unless I implement a major architectural change.