0

我的程序创建了在 3D 空间中对风数据建模的 2D 矢量表。我想知道如何在这些 2D 图纸之间进行插值。X 和 Y 值不会变化,因为它们对应于保持静态的纬度/经度值。向量的 W 分量设置为 0,只留下向量的 U/V 分量在 Z 范围内插值,该 Z 范围对应于两个 2D 向量表之间的 Z 距离。

我已经阅读了 interp3,但我不确定它是否适用于我正在尝试做的事情。如果您能对此有所帮助,我将不胜感激,谢谢。

注意:我删除了一个与我之前提出的问题类似的问题,因为我认为我的问题过于复杂,因此注定了其他人帮助回答它的可能性。

感谢您的帮助,如果我可以提供更多信息,请告诉我!在此处输入图像描述

4

1 回答 1

1

这是我的代码,用于在两个 Z 表之间插入任意数量的不同站点。我相信可以重写它以在 interp1() 函数中包含所有 Z 表。希望这能让你朝着正确的方向前进。

zLevels = 5;   %number of interpolated points between z50 and z75
nStation = 100;     %number of (lat,long) pairs to interpolate
for i = 1:nStation %for nStation different (lat, long) pairs generate interp. values
        % generate zQuery points between z50 and z75 for each station
        zQuery = ((1:zLevels)/zLevels)*range([z50mb_vec(i) z75mb_vec(i)]) + z75mb_vec(i);
        % use interp1 to interpolate about the Z axis for U component
        U(i,1:zLevels) = interp1([z50mb_vec(i) z75mb_vec(i)],[UwindVec50mb(i) UwindVec75mb(i)],zQuery);
        % and for V component
        V(i,1:zLevels) = interp1([z50mb_vec(i) z75mb_vec(i)],[VwindVec50mb(i) VwindVec75mb(i)],zQuery);
end

% defining some color codes for each zLevel, otherwise the plot is a mess
% of colors
colorcode = ['r' 'g' 'b' 'm' 'c' 'r' 'g' 'b' 'm' 'c' 'r'];
for j = 1:nStation
    for i = 1:zLevels
    quiver3(lat_value(j), long_value(j), zQuery(i), U(j,i), V(j,i), 0, colorcode(i));
    hold on;
    end
end

生成的图(z50 数据为蓝绿色,z75 为红色,否则为插值表): 从上面的代码中绘制

于 2013-11-24T06:07:11.600 回答