nasa / jeod

Other
29 stars 5 forks source link

Calculation of Earth-Moon barycenter gravitational acceleration is incorrect (third body effect) #8

Open DavidHammen opened 1 year ago

DavidHammen commented 1 year ago

The third body effect perturbation (equation 3.13 in gravity.pdf) assumes the gravitational acceleration of the frame origin toward a third body is the Newtonian gravitational acceleration of the point at the frame origin toward the third body. This is correct for a planet-centered integration frame but is incorrect for a barycentric integration frame. There are two barycentric integration frames in JEOD: The solar system barycenter (in which case is_third_body is always false), and the Earth-Moon barycenter (in which case is_third_body is false only for the Earth and the Moon).

This means that the Earth-Moon barycenter as an integration frame should be treated as a special case in models/environment/gravity/src/gravity_controls.cc, lines 352 to 380. The gravitational acceleration of the Earth-Moon barycenter toward a third body such as the Sun or another planet should be calculated as the mass-weighted (or mu-weighted) average of the gravitational accelerations of the Earth and the Moon toward that third body.

What needs to be done is to add a special subcase for if (grav_source_frame.is_third_body) when the integration frame is the Earth-Moon barycenter. As an initial step, I would forego using Battin's method.

DavidHammen commented 1 year ago

This may or may not be important in the case of using JEOD for an EMB-centered frame. NASA is now doing stuff where an EMB-centered frame is a reasonable choice. A simple python script using extended precision could rule the significance in or out, in which case this might become a will-not-fix item.