2015-11-20 60 views
-1

我有一个任务需要使用Matlab解决。 我有两条曲线在matlab中用'fit'函数生成。其方程如下:检查给定点(x,y)是否低于或高于曲线

FO =

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)应该在这些曲线之间,以便开始下一个过程。)

我该如何处理?

+0

我建议看'y','fo(x)'和'fu(x)'。使用实数定义的顺序来确定它们的相对位置。 –

回答

0

% your data 
xm=1; 
ym=5; 

if ym<fu(xm) & ym>fo(xm) 
    % good! 
else 
    % bad :(
end 

0

对于任何给定方程,任何顺序, 说

Y = a1x2 + B1X + C1, 可以编写, Y-(a1x2 + B1X + C1)= 0 让这为y - ˚F (x')= 0

并让你的观点是(x',y') 如果y'-f(x')> 0,你的点位于曲线之外,如果这是< 0它在里面。

希望这会有所帮助。