如果你尝试在matlab中执行线性插值,它显然会使用“网格”插值。
通常,我希望线性插值函数看起来像这样:
方法A:
我们希望在u。
知道y(u)的值
然而,matlab似乎使用以下公式:
方法B:
-
EQ1
-
EQ2
醇>
因此,如果您使用方法A 并将答案与方法B 进行比较,结果实际上会有所不同。
在某些输入的双精度浮点运算中,我发现结果的差异大约是2 ^ -18。
我的问题:
为什么MATLAB选择使用方法B?似乎方法A涉及较少的计算。另外,公式“更”是否正确?
执行方法A应包括以下内容:
temp =(y(k + 1)-y(k))/(x(k + 1)-x(k))
y(u)= y1 + temp *(u-x(k))