如何在FORTRAN中实现二维插值,其中数据看起来如下所示。 x和y是两个坐标,z是依赖它们的值 x间隔均匀,但y间隔不均匀且随着x的均等值而增加。 在不损失太多精度的情况下-
- 基于给定的x和y,获取z值的最简单方法是什么?
- 基于给定的x和y,获取z值的最快方法是什么?
谢谢 SM
x y z
-----------
0 0 -
0 0.014 -
0 0.02 -
.....
....
0.1 0 -
0.1 0.02 -
0.1 0.03 -
.......
.....
1.0 0 -
1.0 0.05 -
1.0 0.08 -
.......
.......
y11 < Y, y21 < Y, y12 > Y, y22 > Y
。即使对于未排序的数组,你也可以找到这些点;然后,使用我给出的方程将其转换为矩形网格并插值。建议查看 @Simon 的建议以查看 GEOMPACK 以获取 Delaunay 三角剖分 - 然后您可以使用 重心插值。进行一次在矩形网格上的值获取后,就可以使用快速插值。 - Floris