一维插值
一维插值命令interp1
:
method
取值:
‘nearest’, ‘next’, ‘previous’, ‘linear’,’spline’,’pchip’, or ‘cubic’. The default method is ‘linear’
Issue 1 采用 interp1 插值时,出现网格矢量必须包含特征点
的错误
其原因为原始数据存在单个横坐标对应多个纵坐标的情况。这种情况在大地球物理中非常常见,比如我们常用的iasp91
模型,其纵波速度在某一深度处会出现阶变,而插值程序是不可能对两个横坐标相同的点,但纵坐标不同进行插值的。
对非矩阵域进行插值
原文链接:
http://blog.sciencenet.cn/blog-1103122-927602.html
|
|
错误使用 interp2>makegriddedinterp (line 235)
输入网格为无效的 MESHGRID。
出错 interp2 (line 136)
F = makegriddedinterp(X, Y, V, method,extrap);
经查看这个帖子,发现interp2的插值数据必须是矩形域,即已知数据点(x,y)组成规则的矩阵,或称之为栅格,可使用meshgid生成。
这篇帖子中还提供了另外一个函数:griddata函数的已知数据点(X,Y)不要求规则排列,特别是对试验中随机没有规律采取的数据进行插值具有很好的效果。griddata(X,Y,XI,YI,’v4’) v4是一种插值算法,没有具体的名字,原文称为“MATLAB 4 griddata method”,是一种很圆滑的差值算法,效果很好。
完美实现空间内插。