这个例子展示了如何在三维空间中降低网格平面阵列的维数来解决一个二维插值问题。
在某些应用领域,可能需要插入网格的低维平面;例如,插入一个三维网格的平面。当您从3-D网格中提取网格平面时,得到的数组可能是3-D格式的。你可以使用挤压
函数来降低网格平面阵列的维数,以解决二维问题。
创建一个3-D样本网格和相应的值。
[X, Y, Z] = ndgrid (1:5);V = x ^2 + y ^2 + z;
从网格中选择一个2d样本。在本例中,是样本的第三列。
x = x (: 3:);z = z (:, 3:);v = v (:, 3:);
二维平面在Y = 3
,所以Y
尺寸已经固定。x
,z
,v
是5-by-1-by-5数组。在计算插值之前,必须将它们缩减为二维数组。
减少x
,z
,v
将其降至二维阵列挤压
函数。
x =紧缩(x);z =挤压(z);v =紧缩(v);
在一个更细的查询点网格上插入2d切片。
[Xq, Zq] = ndgrid (1:0.5:5);Vq = interpn (x, z, v, Xq, Zq);
策划的结果。
图冲浪(Xq, Zq、Vq);包含(Xq的);ylabel (“Zq”);zlabel (矢量量化的);