MATLAB二维插值和三维插值
插值问题描述:已知 一个函数上的若干点,但函数具体表达式未知,现在要利用已知的若干点求在其他点处的函数值,这个过程就是插值的过程. 1.一维插值 一维插值就是给出y=f(x)上的点(x1,y1),(x2,y2),…,(xn,yn),由此求出y=f(x)在点xa处的值ya的值. 实现一维插值使用interp1命令,使用参数为interp1(x,y,xa,’method’) ,其中x和y是已知点对应横纵坐标,xa为代求值的横坐标,method参数代表插值类型,参数可以选择的选项如下表,若缺省则为linear. method 含义 特 点 linear 线性插值 快,精度不高 cubic 三次多项式插值 较慢,精度高,平滑 spline 三次样条插值 最慢,精度高,最平滑 例如,求y=xln(x)的插值问题,代码如下 %为了说明插值问题,根据已知函数构造一组插值点 %而实际问题中,只有这些点,函数是未知的 x = 0.2:0.4:2; y = x.*log(x);%构造一组插值点 plot(x,y,'o'); xa =0.2:0.1:2;%d代求y值得x值点 ya = interp1(x,y,xa,'cubic'); hold on; plot(xa,ya,'b-'); box on; hold on; fplot(@(x)x*log(x),[0.2,2]); legend('插值点',