作业帮 > 综合 > 作业

matlab 插值 急用急用

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/09 10:28:39
matlab 插值 急用急用
已知数据x=[0 10 20 32 41 66 131 165 200 236 262 743 819 913 999 ] 此时分别对应
y=[0.5 -2.5 -2.5 -0.5 -0.5 -0.5 -0.5\x05-3.5 -3.5\x05-5.5 -12.5 -17.5 -24.5 -26.5\x05 -38.5
]
怎样求出x=[146 468 514 560 836 882 1204 1250 1572]时分别对应的y值,误差小点
要代码
x=[0 10 20 32 41 66 131 165 200 236 262 743 819 913 999 ]; y=[0.5 -2.5 -2.5 -0.5 -0.5 -0.5 -0.5 -3.5 -3.5 -5.5 -12.5 -17.5 -24.5 -26.5 -38.5]; x0=[146 468 514 560 836 882 1204 1250 1572]; y0 = spline(x,y,x0); plot(x,y,'-o',x0,y0,'*r')
再问: 这位大虾,求得的y0=1.0e+003 * -0.0019 -0.0304 -0.0272 -0.0233 -0.0253 -0.0259 -0.2461 -0.3510 -2.0972 尤其是x0=468时,y0=30.4 误差怎么这么大呢 后面的只有20多呀
再答: >> y0 = interp1(x,y,x0); >> plot(x,y,'-o',x0,y0,'*r') >> y0 y0 = Columns 1 through 6 -1.8235 -14.6414 -15.1195 -15.5977 -24.8617 -25.8404 Columns 7 through 9 NaN NaN NaN 那你试试线性插值吧,你的 1204 1250 1572超出了X的范围,线性算不出来