R等效于matlab griddata,scatteredInterpolant和/或TriScatteredInterp

时间:2015-04-18 16:01:39

标签: r matlab

我们做了很多全场3D数值模拟(CFD,FEA等)。解决方案需要很长时间才能运行。我们经常从解决方案中插入而不是重新运行每个案例。我们还在多个解之间进行插值,这导致更高维的插值(如添加时间,因此x,y,z,t,v)。

Matlab在使用griddata,scatterdInterpolan和/或TriScatteredInterp从X,Y,Z坐标的不规则网格读取数据V并从V进行插值方面做得很好。出于各种原因,我已经切换到R.这仍然是我找不到好的R等价物的一个关键领域。 '阿克玛'只有x,y,V(不是x,y,z,V,甚至更高的尺寸,如x,y,z,t,v)。

我发现的最好的事情就是“克里格尔”。但是krigging的行为更像是模型拟合和投影,并且在不规则网格点之间通常表现不佳。因此,它不像简单的直接线性插值那样稳健。

Matlab已有几十年的网格数据。很难相信R在那里没有相应的东西。有什么建议?或者至少有一种方法可以使用krigging有效地产生与直接线性插值相同的结果吗?

乔纳森

2 个答案:

答案 0 :(得分:2)

你可以先看一下“tripack”包进行Delaunay三角测量,这样就可以让你在复制scatInterpolant()时迈出第一步。

答案 1 :(得分:0)

R interpp()等同于MATLAB scatteredInterpolant()