作业帮 > 综合 > 作业

如何运用MATLAB求曲线某点纵坐标对应的横坐标?

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/13 05:39:26
如何运用MATLAB求曲线某点纵坐标对应的横坐标?
如标题.
在MATLAB中,已知曲线某点横坐标x0来求纵坐标y0的问题,可以通过插值函数interp1()来很好地解决.但是反过来如何解决呢?我想到了下面的办法来最大程度地得到横坐标的精确值x0.

      1、首先通过MATLAB曲线图观察出纵坐标y0与曲线s=s(x,y)的交点p,判断出交点p在横坐标轴上的范围[a,b];
      2、通过在区间[a,b]上灵活应用插值函数interp1,可以得到包含纵坐标y0在内的一系列值;
      3、通过函数find(y>y0,1,'first')求得第一个比y0大的y的索引,通过find(y<y0,1,'last')求得第一个比y0小的y的索引;
      4、通过以上索引可相应求得横坐标上的值a0和b0,而精确值x0便位于a0和b0之间;
      5、可以取x0= mean([a0,b0]),便可求得纵坐标所对应的横坐标,而且精度随插值步长的减小而提高.
以上方法简单实用,通过使用该法,很容易地解决了前面所提出的问题,效果可用一张图表示如下: