# How do I calculate ECEF X,Y,Z velocities for GPS if I have no satellites

I'm attempting to simulate a GPS message where know variables are starting location, ending location, speed (m/s), and a bearing (0 - 359 degrees). How can I calculate the ECEF X, Y, Z velocities with this information when I am not tracking any satellites.

• Don't you also need a time variable? Mar 12, 2012 at 21:44
• Usually this is done by subtracting the start from the stop point (as [X,Y,Z] vectors) and dividing by the time elapsed to obtain the velocity. Is there something special about your data that would make it any more complicated than that? (E.g., maybe the travel was not in a Euclidean straight line, but along a spherical geodesic.) Mar 12, 2012 at 21:44
• I'm attempting to calculate the XYZ velocity and give that data to another system. That system somehow is able to display its bearing and speed (km/hr) from my calculated data. I know what the speed and bearing is suppose to be, but the remote system displays otherwise, so I'm trying to make sure that I'm calculating correctly or if the remote system is processing it incorrectly. Mar 12, 2012 at 22:04
• Because you provide two locations, at which one do you wish to compute the velocities? Also, in what coordinate system is the bearing given? (If it's based on a projected system, a correction to a true bearing may be needed.) Mar 14, 2012 at 17:12
• Numbers would help Mar 14, 2012 at 23:20