- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Matlab 求解插值问题在应用领域中,由有限个已知数据点,构造一个解析表达式,由 此计算数据点之间的函数值,称之为插值。实例:海底探测问题某公司用声纳对海底进行测试,在 5×5 海里的坐标点上测得海底深度的值, 希望通过这些有限的数据了解更多处的海底情况。并绘出较细致的海底曲面图。 1、一元插值一元插值是对一元数据点(xi,yi)进行插值。线性插值:由已知数据点连成一条折线,认为相临两个数据点之间的函数 值就在这两点之间的连线上。一般来说,数据点数越多,线性插值就越精确。调用格式:yi=interp1(x,y,xi,’linear’)zi=interp1(x,y,xi,’spline’) wi=interp1(x,y,xi,’cubic’)%线性插值%三次样条插值%三次多项式插值说明:yi、zi、wi 为对应xi 的不同类型的插值。x、y 为已知数据点。例:已知数据:x0.1.2.3.4.5.6.7.8.91y.3.511.41.61.9.6.4.81.52求当xi=0.25 时的yi 的值。程序:x=0:.1:1; y=[.3 .5 1 1.4 1.6 1 .6 .4 .8 1.5 2]; yi0=interp1(x,y,0.025,linear) xi=0:.02:1; yi=interp1(x,y,xi,linear); zi=interp1(x,y,xi,spline); wi=interp1(x,y,xi,cubic); plot(x,y,o,xi,yi,r+,xi,zi,g*,xi,wi,k.-) legend(原始点,线性点,三次样条,三次多项式) 结果:yi0 = 0.3500要得到给定的几个点的对应函数值,可用:xi =[ 0.2500 0.3500 0.4500]yi=interp1(x,y,xi,spline)结果:yi =1.2088 1.5802 1.34542、二元插值二元插值与一元插值的基本思想一致,对原始数据点(x,y,z)构造见上面函数 求出插值点数据(xi,yi,zi)。单调节点插值函数,即x,y 向量是单调的。调用格式 1:zi=interp2(x,y,z,xi,yi,’linear’) ‘liner’ 是双线性插值 (缺省)调用格式 2:zi=interp2(x,y,z,xi,yi,’nearest’) ’nearest’ 是最近邻域插值调用格式 3:zi=interp2(x,y,z,xi,yi,’spline’) ‘spline’是三次样条插值说明:这里x 和 y 是两个独立的向量,它们必须是单调的。z 是矩阵,是由 x 和y 确定的点上的值。z 和x,y 之间的关系是 z(i,:)=f(x,y(i)) ,z(:,j)=f(x(j),y) 即: 当x 变化时,z 的第i 行与y 的第i 个元素相关,当 y 变化时 z 的第j 列与 x 的第j 个元素相关。如果没有对x,y 赋值,则默认x=1:n, y=1:m。n 和m 分别是矩阵z的行数和列数。例 2:已知某处山区地形选点测量坐标数据为:x=0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5y=0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6海拔高度数据为:z=89 90 87 85 92 91 96 93 90 87 82929698999591898684828496989592908885848381858081828995969392898686828587989996978885828382858994959392918684888892939495898786838192929697989693958482818485858182808081859093958486819899989796958487808185828384879095868880828184858683828180828788899899979698949287其地貌图为:对数据插值加密形成地貌图。程序:x=0:.5:5;y=0:.5:6;z=[89 90 87 85 9287 8292 96 98 99 9582 8496 98 95 92 9081 8580 81 82 89 9586 8682 85 87 98 9982 8382 85 89 94 9584 8888 92 93 94 9581 9292 96 97 98 9681 8485 85 81 82 8093 9584 86 81 98 99
文档评论(0)