Accuracy of distance and bearing between GPS locations

483 Views Asked by At

I'm writing on an Android app that tracks the distance and bearing between two GPS location (each from a different device).

Finding the mean distance and angle between the devices is quite easy, and seems to work well. But since my locations are rather close, and I really need the results to be as reliable as possible, I'm also trying calculating the uncertainty of the calculations, and here I need some help.

I'm using the accuracy parameter I get from android as my error estimation for the GPS readings (Android docs say this parameter gives a circular radius that the location has a 68% certainty to be within, so I assume the result is normally distributed, and that this parameter is the SD).

I know how to officially calculate the propagated uncertainty (using partial derivatives) if I ignore the covariance (which I have no idea if I could even theoretically find) - But this gives me a tremendous uncertainty, since both GPS readings have a very large uncertainty.

The thing is, all I'm looking for is the relative distance (or angle) between these location, and I don't care where they really are compared to earth. And since I know that at lest some of this uncertainty is the same for both devices (for instance, Ionospheric effects), I could safely ignore them and get much more precise results. Even better, if part of the uncertainty comes from random errors, I could filter most of it out even before comparing the locations (Although I suspect that that the location Android provides is already filtered).

The thing is, I don't know what part of the uncertainty is random and what part is constant, and I obviously have to deal with them separately...

So, to sum up my problem - given two sets of GPS reading, plus their 'accuracy', how can I tell apart the uncertainty that is the same for both sets, from the part the varies between them? I'm sure there is a good mathematical way to do this, I just can't think of one...