[英]Checking if a given point(x,y) is below or above a curve
我有一個任務要使用 Matlab 解決。 我在 matlab 中用“擬合”函數生成了兩條曲線。 它們的方程如下:
福 =
Linear model Poly2:
fo(x) = p1*x^2 + p2*x + p3
Coefficients (with 95% confidence bounds):
p1 = -0.005234 (-0.007191, -0.003278)
p2 = 0.8276 (0.537, 1.118)
p3 = 39.62 (30.59, 48.65)
福 =
Linear model Poly2:
fu(x) = p1*x^2 + p2*x + p3
Coefficients (with 95% confidence bounds):
p1 = -0.004092 (-0.01098, 0.002796)
p2 = 0.856 (-0.1671, 1.879)
p3 = 14.73 (-17.06, 46.53)
我的任務是檢查任何給定的點 (x,y) 是否低於曲線 fu 或高於曲線 fo。 (理想情況下,點(x,y)應該在這些曲線之間,以便開始下一個過程。)
我該如何接近??
就像是
% your data
xm=1;
ym=5;
if ym<fu(xm) & ym>fo(xm)
% good!
else
% bad :(
end
?
對於任何給定的方程,任何順序,說
Y= a1x2 + b1x + c1,你可以寫,Y-(a1x2 +b1x +c1) = 0 令其為 y - f(x) = 0
並讓您的點為 (x',y') 如果 y' - f(x') > 0,則您的點位於曲線之外,如果它 < 0,則它位於曲線內部。
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.