MATLAB中的交点

时间:2017-05-13 15:04:57

标签: matlab plot graph intersection

我怎么能

  • 在MATLAB中绘制两条曲线的点交点?
  • 以编程方式获得数学形式的这一点吗?

为简单起见,我采用了两条非常基本的曲线:

  • Y = X
  • y = cos(x)

我能够绘制曲线,但无法获得交点。请参见屏幕截图:

enter image description here

我已尝试过this问题中提出的解决方案,但这些解决方案都不适用于我。

1 个答案:

答案 0 :(得分:1)

问候用户。如果我可能会问,您的目标是获得精确点 相交这两个函数,或最近点交点点? (后者使用近似值)

这是一个想法:

1)如果您的离散化:x=0:0.05:2;确实包含交叉点点,则可以在Matlab中使用intersect函数。

例如

intersect([1,2,3],[4,3,1])

将返回一个包含两个元素13的向量,这两个向量的交集

找到交点是为了找到点x,使得y1(x)= y2(x)。所以申请

yin = intersect(y1,y2);

在此之后,由于您的x已排序,因此您应该检查yin和{{1}中相同索引y1中的值}}。

满足该条件的值是y轴上的交点。

2)如果y2不包含x轴的交点,则使用数值方法。找到x的根。 (或g(x)= y2(x)-y1(x)= 0的点,因为这与y1(x)= y2(x)相同)

你可以先试试这些。希望这会有用。感谢。