是否有可能实现超出网格值的双三次插值? 例如:
L = [5,10,20,25,40];
W= 1:3;
S= [50 99 787
779 795 850
803 779 388
886 753 486
849 780 598];
size1 = griddata(W,L,S,2,40,'cubic')
sizeBeyond = griddata(W,L,S,2,41,'cubic')
sizeV4 = griddata(W,L,S,2,41,'v4')
返回:
size1 = 780
sizeBeyond = NaN
sizeV4 = 721.57
答案 0 :(得分:0)
我的建议是,您可以输入外推的值。检查以下代码。但请注意,正如flawr所暗示的那样,推断表现得非常糟糕。
l = [5,10,20,25,40];
w = 1:3;
li = [l 41] ;
S = [50 99 787
779 795 850
803 779 388
886 753 486
849 780 598];
[W,L] = meshgrid(w,l) ;
[Wi,Li] = meshgrid(w,li) ;
Si = interp2(W,L,S,Wi,Li,'spline') ;
size1 = griddata(W,L,S,2,40,'cubic')
sizeBeyond = griddata(Wi,Li,Si,2,41,'cubic')
sizeV4 = griddata(W,L,S,2,41,'v4')
注意:不要使用内置命令(如长度,大小等)作为代码中的变量,即使是演示,也有些麻烦。
虽然这不是答案,但我必须在此处发布以供讨论。