MATLAB 中的交点

Point of Intersection in MATLAB

我怎样才能

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

我可以绘制曲线但无法获得交点。见截图:

我已经尝试了 this 问题中提出的解决方案,但 none 对我有用。

问候用户。请问,你的objective是获取相交这两个函数的精确点,或者最近的点 交点 点? (后者使用近似值)

这是一个想法:

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

例如

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

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

求交点就是找到点x使得y1(x)=y2(x)。所以申请

yin = intersect(y1,y2);

在此之后,由于您的 x 已排序,您应该检查 yin 中具有 相同索引 的值 y1y2

满足该条件的值为y轴交点

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

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