how to calculate tangent between circle and polynomial (from curve fit)

15 Ansichten (letzte 30 Tage)
Hi:
I have a known circle with x0,y0, and r, I also have a polynomial function from curve fitting result, is there any way to find the tangent line between those two? as well as the tangent point on each profile?
the curve fitting polynomia is attached, and the parameter of circle is:
x: 0.9439
y: 0.1063
r: 0.0537
Thank!
Yu

Akzeptierte Antwort

Matt J
Matt J am 21 Jan. 2024
Bearbeitet: Matt J am 21 Jan. 2024
The equation for the tangent to the polynomial is y=m(x1,y1)*x+b(x1,y1) where m(x1,y1) and b(x1,y1) are a function of the tangent point (x1,y1) and can easily be determined from calculus. Therefore, the tangent point on the circle must satisfy the two equations,
y2=m(x1,y1)*x2+b(x1,y1)
(x2-0.9439)^2+(y2-0.1063)^2=0.0537^2
Also, (x1,y1) must satisfy the polynomial equations
P(x1,y1)=0
And you have a 4th equation to express the fact that the normal vector to the tangent line is perpendicular to the tangent line,
(x2-0.9439)-m(x1,y1)*(y2-0.1063)=0
Four nonlinear equations in four unknowns. I expect there will be two solutions.
  1 Kommentar
Yu Li
Yu Li am 22 Jan. 2024
thank you so much, I successfully find the solution based on your suggestions.
there are 6 tangent lines found as this is 3rd order polynomia.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Polynomials finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by