Function lupnt::AccelerationRelativisticNBody¶
Defined in File forces.h
Function Documentation¶
-
Vec3 lupnt::AccelerationRelativisticNBody(const Vec3 &r_sc, const Vec3 &v_sc, const std::vector<Vec3> &r_bodies, const std::vector<Vec3> &v_bodies, const std::vector<Real> &mu_bodies, Real c_light = C, Real beta = 1.0, Real gamma = 1.0)¶
Relativistic n-body point-mass perturbative acceleration of the spacecraft, from Moyer (2000), “Formulation for Observed and Computed
Values of Deep Space Network Data Types for Navigation” (JPL Pub 00-7), Eq. (4-26), with the leading Newtonian point-mass term (the “1” in the first brace) removed so it can be ADDED to the Newtonian gravity already computed.
Body indicesi,j,k,lin Eq. (4-26) refer to the spacecraft (i) and the massive perturbing bodies (j,k,l). All positions/velocities/GMs must be referred to the same (Solar-System barycentric) inertial origin, in one coherent unit system. Body accelerations use the Newtonian value (terms of order 1/c^4 are dropped, per Moyer p. 4-21). beta = gamma = 1 recovers general relativity.- Parameters:
r_sc, v_sc – Spacecraft (SSB-referenced) position and velocity
r_bodies – SSB-referenced positions of the massive bodies
v_bodies – SSB-referenced velocities of the massive bodies
mu_bodies – Gravitational parameters of the massive bodies
c_light – Speed of light (same coherent units)
beta, gamma – PPN parameters (1 for general relativity)
- Returns:
Post-Newtonian relativistic perturbative acceleration