如下,需要插值44次, 对s里的1-44列分别进行插值,储存在F中,这样写的问题是什么。
错误提示:不允许使用类 'TriScatteredInterp' 的对象组成数组和括号样式的编制索引功能。只能将类 'TriScatteredInterp' 的对象用作标量,或者用作元胞数组。
for i=1:44
F(i,:)=TriScatteredInterp(xn,yn,s(:,i));
end
然后还需要对(x1,y1)对F(i,:)每一列进行插值。谢谢。
基于Monster 组和GPT的调写:
使用循环生成对象并进行插值:
for i=1:44
F{i}=TriScatteredInterp(xn,yn,s(:,i));
end
for i=1:44
z(i)=F{i}(x1,y1);
end
将所有列的数据传递给TriScatteredInterp函数,生成一个多维插值函数,然后对给定点进行插值:
F=TriScatteredInterp(xn,yn,s);
z=F(x1,y1);
在第一种解决方案中,F被定义为一个单元数组,每个元素都是一个TriScatteredInterp对象。在第二种解决方案中,F是一个多维插值函数对象,而不是一个数组。