Matlab 检查给定点(x,y)是否在曲线下方或上方
我有一个任务要用Matlab解决。 我在matlab中用“拟合”函数生成了两条曲线。其方程式如下: fo= 傅= 我的任务是检查任何给定点(x,y)是否低于曲线fu或高于曲线fo。(理想情况下,点(x,y)应位于这些曲线之间,以便下一个过程开始。) 我该如何接近???类似Matlab 检查给定点(x,y)是否在曲线下方或上方,matlab,Matlab,我有一个任务要用Matlab解决。 我在matlab中用“拟合”函数生成了两条曲线。其方程式如下: fo= 傅= 我的任务是检查任何给定点(x,y)是否低于曲线fu或高于曲线fo。(理想情况下,点(x,y)应位于这些曲线之间,以便下一个过程开始。) 我该如何接近???类似 % your data xm=1; ym=5; if ym<fu(xm) & ym>fo(xm) % good! else % bad :( end %您的数据 xm=1; ym=5; 如果y
% your data
xm=1;
ym=5;
if ym<fu(xm) & ym>fo(xm)
% good!
else
% bad :(
end
%您的数据
xm=1;
ym=5;
如果ymfo(xm)
%好!!
其他的
%坏的:(
结束
?对于任何给定的方程,任何阶, 说 Y=a1x2+b1x+c1, 你可以写, Y-(a1x2+b1x+c1)=0 设为y-f(x)=0 让你的点是(x',y') 如果y'-f(x')>0,则点位于曲线外,如果小于0,则点位于曲线内
希望这有帮助。我建议查看
y
、fo(x)
和fu(x)
。使用实数上定义的顺序来确定它们的相对位置。
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)
% your data
xm=1;
ym=5;
if ym<fu(xm) & ym>fo(xm)
% good!
else
% bad :(
end