0

As in the title.

Alternatively, the problem can be stated as, given $a, b \in \mathbb{R}^2$ and $r \in \mathbb{R}$, find $x \in \mathbb{R}^2$, such that $$ \begin{align*} (x - a) \cdot (x - b) &= 0 \\ |x - a|^2 &= r^2 \end{align*} $$

Here $a$ would be the center of the circle, $r$ its radius of and $b$ the other point.

Now it's not too difficult to find a closed form formula for this, but I want to use it in a program where I continually need to recompute $x$ for a gradually changing $b$, so I have the idea that an iterative method would be much cheaper, because only 1 or a few iterations should be enough to get a good enough result after a slight change to $b$.

So does anybody have some pointers?

EDIT: I tried a few things myself. The most obvious one was to try Newtons method on the above 2 equations, but that didn't seem to converge for the majority of points I tried. The second thing I tried was to first compute the distance from $b$ to $x$: $r_2^2 = r^2 - |a - b|^2$ (since $\angle axb = 90^{\circ}$), and then use Newtons method to solve the following $$ \begin{align*} |x - a|^2 &= r^2 \\ |x - b|^2 &= r_2^2 \end{align*} $$ and this one seemed to converge very fast.

Lieven
  • 1,524
  • this problem have no relation to algebraic geometry. algebraic geometry is different from analytic geometry – ali Jul 14 '17 at 11:13
  • One approach that might be worth exploring is to use the fact that the points of tangency are the intersections of the polar line with the circle. For a small perturbation to $b$, you could do something like walk along the circle with a DDA until you get close enough to the line, or perhaps project the current tangent point onto the new polar line and walk the point along that line until it’s close enough to the circle. – amd Jul 15 '17 at 00:44

1 Answers1

0

I think intersection point between the orthogonal line from origin to $xb$and circle is a good choice.if $f(x)=\frac{1}{(x-b).(x-b)}(b_2-x_2,b_1-x_1)$ then finding a tangent to the circle means finding a fixed point for f and you can obtain order of convergence by standard method for this problems

ali
  • 2,225