The Jet Propulsion Laboratory (JPL) Horizons ephemeris service provides positions and velocities of major and minor solar system bodies based on a fit of essentially all observational data to an evolving elaborate relativistic solar system model. The results of such fits are represented by coefficients of Chebyshev polynominals for each object. The Aerospace Toolbox function planetEphemeris provides ephemeris predictions based on the Chebeyshev coefficients only for major bodies and not the most recent ephemeris. To study motions of minor bodies such as asteroids and moons with the latest ephemeris, programmatic access to the JPL ephemeris is needed.
This script illustrates how to access the JPL ephemeris through the API service from MATLAB and how to extract object position and velocity information from the returned text data. It also illustrates how to represent each coordinate by a lookup-table interpolant function and explores the accuracy and speed of such interpolants. Such interpolants may be useful for efficient numerical integration of the motion of an object through the solar system subject to the JPL physics model with an adaptive time algorithm such as ode45. It is shown that ephemeris sampling of the motion Mars over times of order 1000 minutes is sufficient to achieve interpolant accuracy comparable to the JPL ephemeris accuracy (of order 1 m for major bodies).
The speed of the interpolant functions are compared to the speed of calls planetEphemeris and dated planetEphemeris position coordinates are compared to the current JPL ephemeris.
This script may interest students, educators, and researchers in physics, astronomy, and space engineering. 'Try this' suggestions for further exploration are provided.
引用格式
Duncan Carlsmith (2024). JPL Horizons Ephemeris Interpolants (https://www.mathworks.com/matlabcentral/fileexchange/114825-jpl-horizons-ephemeris-interpolants), MATLAB Central File Exchange. 检索时间: .
MATLAB 版本兼容性
创建方式
R2022a
兼容任何版本
平台兼容性
Windows macOS Linux标签
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!