I have a point in 2D or 3D space at an unknown coordinate, $p_0$, and I'd like to determine its position using distances from known coordinates $(p_1, p_2, p_3)$. Beyond using Reduce, what is a fast method of doing this in Mathematica, particularly for the two-dimensional case? Is there some built-in function for this?
Also, how can I get an output in coordinate form without any string processing? For example, to parse the output from Reduce, I need to convert the output to a string, infer where the actual coordinate values are, and extract them, which is an awful way to go about doing things.
Here's an implementation with Solve:
PostOne = {10, 10}; PostTwo = {10, 0}; PostThree = {0, 0}; PointToLocalize = {x0, y0}; D1 = 0; D2 = 10; D3 = 200^(1/2); Solve[EuclideanDistance[PointToLocalize, PostOne] == D1 && EuclideanDistance[PointToLocalize, PostTwo] == D2 && EuclideanDistance[PointToLocalize, PostThree] == D3, {x0, y0}] Now that the string processing issues have been resolved, is Solve or Reduce really the most efficient way to do this for $10^6$ or $10^7$ or so points?
{x,y}/.solution. If you useReduceyou can do the following:{x,y}/.(Rule@@@List@@solution). $\endgroup$