如何在MATLAB中为4D数据构造分段多项式(三次样条)?

时间:2019-11-23 00:34:53

标签: matlab interpolation spline polynomials 4d

我有一个问题,我必须经常对4D数据d = f(a, b, c)进行插值,因为插值发生在优化例程中。现在,首先,我使用Matlab的interpn函数对此进行了编程。但是,程序显然变得很慢,因为三次样条必须在优化过程中的每次迭代中构建。

我已经读过有关2D spline interpolation的内容,基本上我正在寻找其4D等效物:pp = spline(a,b,c,d)。另外,我发现了scatteredInterpolant函数(我的网格不均匀),但是此函数仅给我提供'linear', 'nearest''natural'的选项,而没有给我'spline'的选项我在找。

我可以想象Matlab的功能可以在可用的interpn函数下面,但是我似乎找不到。有谁知道这样的函数可以为4D插值(最好是Matlab-original)返回分段多项式或其他形式的样条函数?

P.s。我也研究了一种解决方法;键入edit interpn,我尝试复制Matlab函数interpn,以不同的方式命名和编辑它,使其返回F而不是插值函数Vq。但是,这样做表示无法识别methodandextrapval函数,这是它遇到的第一个嵌套Matlab。

0 个答案:

没有答案