Skip to content

jacobwilliams/moonframe

Repository files navigation

Description

A Fortran library to interpolate the MOON_PA reference frame without using SPICE.

Language GitHub release Build Status last-commit

Description

The MOON_PA reference frame is a high-accuracy Moon body-fixed frame. This library provides a means to use this frame without having to load SPICE kernels. This is done by splining a table of precomputed roll, pitch, and yaw values. These values are used to compute the rotating matrix from J2000 to the frame. This package also provides the code for generating these tables using SPICELIB.

Usage

To generate the files and run the tests, this requires SPICELIB to be present and the HAS_SPICELIB directive to be set.

To generate the coefficient files:

fpm run generate --profile release --flag "-D HAS_SPICELIB" --link-flag "./toolkit/lib/spicelib.a"

To run the tests:

fpm test --profile release --flag "-D HAS_SPICELIB" --link-flag "./toolkit/lib/spicelib.a"

The use the library, SPICELIB is not required. It can be imported like any normal FPM library like so:

[dependencies]
moonframe = { git="https://github.com/jacobwilliams/moonframe.git" }

See the interp_test.f90 for an example of how to use the library.

Documentation

The latest API documentation for the master branch can be found here. This was generated from the source code using FORD.

References

About

A Fortran library to interpolate the MOON_PA reference frame without using SPICE.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published