# AstronomicalData and Planetary Heliocentric (x,y,z) Velocity Components

I'm trying to find data on the heliocentric velocities of planets in our solar system and was directed to Mathematica's AstronomicalData in a previous topic. Unfortunately I cannot find any x,y and z velocity components and was hoping someone might be able to point me in the right direction.

An approximation (speed is in m/s and Position in m):

AstronomicalData["Mars", {"Speed", {2019, 3, 1, 0, 0, 0}}] Normalize @@
Differences[ AstronomicalData[ "Mars", {"Position", {2019, 3, 1, 0, 0, #}}] & /@ {0, 1}]

(*
{-22373.4, 8780.75, 734.403}
*)
• +1 Consider a central difference instead: it should be more accurate. It makes a substantial difference, by the way: it affects the third sig. fig. in your example, because it reflects the net planetary acceleration during the course of 12 hours. May 24, 2013 at 22:18
• @whuber Perhaps I'm wrong, but I think I'm taking one second differences, not one day. Even within 10 seconds, there aren't appreciable speed changes (as expected, of course) May 25, 2013 at 4:44
• Central difference: {1, -1}.(AstronomicalData["Mars", {"Position", DatePlus[{2019, 3, 3}, {#, "Second"}]}] & /@ {1, -1}/2). Normalize and multiply with the speed afterwards. :) May 25, 2013 at 9:48
• Would something like this not work as well? v = ((AstronomicalData[ "Mars", {"Position", {2013, 1, 1, 1, 1, 1.01}}] - AstronomicalData["Mars", {"Position", {2013, 1, 1, 1, 1,1}}]))/0.01 May 25, 2013 at 12:08
• @J.M. Normalize[{1, -1}.(AstronomicalData[ "Mars", {"Position", DatePlus[{2019, 3, 1}, {#, "Second"}]}] & /@ {1, -1}/ 2)] AstronomicalData["Mars", {"Speed", {2019, 3, 1, 0, 0, 0}}] gives the same result as mine. That's why I don't understand whuber's comment. I'm forgetting something, surely May 25, 2013 at 14:24