Determining valid input to this function

25 Views Asked by At

I've written an algorithm, the details of which I think are irrelevant here, which accomplishes the following task:

Suppose we're given three observers in a 2-dimensional plane (such that the three observers do not form a line), the velocity of some signal, and the time at which each observer received the signal. I want to reconstruct the coordinates of the source.

One issue I ran into was sanitizing the input. I did not want the algorithm to attempt reconstructing sources that did not represent a reasonable facsimile of a signal in two dimensions. For example, the time differences that correspond to a source above the receivers in three dimensional space should be tossed out.

I was eventually able to do so fairly easily. I started by throwing out all time differences greater than the maximum possible (which happens to be a source stationed at one of the three observers), and time differences less than the minimum possible (a source at the incenter of the three observers).

Now, I'm expanding the algorithm to three dimensions. Again, I'm throwing out all input with time differences greater than the maximum, or less than the minimum, possible. I'm not sure, however, if there are other combinations of time differences that do not correspond to solutions in 3-dimensional space.

With the 2d solution, I tossed out every time difference corresponding to a source in 3d space (i.e. one not coplanar with the three observers). Are there time differences in '4d' space that I should be throwing out in my 3d solution?

Note: please feel free to rename/retag. I'm not sure precisely what sort of problem this is.