3

我有一个带有一些高程值的 3D numpy 数组。我想对它们应用克里金插值方法并获得具有相同给定形状的全值数组。

我的目的是实际创建一个表面。我的值是水文地质层。从上到下的每一层都用网格描述,我有一些高度值,如下所述。不过,我需要每个网格的高度值。

例如,我有一个数组。“0”表示未知值,其他值为给定值。3 layer, 10 rows, 15 columns

[[[ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0  9  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [11  9 11 11 10  9 11 11 11 11  9 11  11 11 9]
  [ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0  8  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 13  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]]

[[[ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0  9  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [11  9 11 11 10  9 11 11 11 11  9 11  11 11 9]
  [ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0  8  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 13  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]]

[[[ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0  9  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [11  9 11 11 10  9 11 11 11 11  9 11  11 11 9]
  [ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 10  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0  8  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 13  0  0  0  0  0  0  0  0  0  0  0]
  [ 0  0  0 12  0  0  0  0  0  0  0  0  0  0  0]]

我想应用克里金法来获得基于给定值的插值。

4

1 回答 1

0

您绝对可以使用克里金算法来做到这一点。我在这里展示了一个使用OpenTURNS平台的 2D 示例。它可以很容易地适应 3D。

于 2020-10-16T14:44:08.463 回答