随机采样的3d矢量场的Matlab发散

时间:2012-12-03 16:47:53

标签: matlab vector octave

我正在尝试在Matlab中使用未排序的数据集中的divergence函数。因此,我有矢量(3列)的起源的x,y,z位置和矢量场(3列)的三个分量Fx,Fy,Fz,总共6列数据集,其中位置是3d卷中的随机点。我应该如何转换数据以便divergence可读?

我想我应该使用meshgrid并生成与原始随机点相关联的有序网格,但是我应该如何处理向量字段F?

1 个答案:

答案 0 :(得分:0)

你是对的,使用meshgrid生成统一的数据点,然后如果你的数据表现良好,你应该能够使用interp3进行插值。

FinterpX = interp3(Xmeas,Ymeas,Zmeas,FmeasX,Xgrid, Ygrid, Zgrid);
FinterpY = interp3(Xmeas,Ymeas,Zmeas,FmeasY,Xgrid, Ygrid, Zgrid);
FinterpZ = interp3(Xmeas,Ymeas,Zmeas,FmeasZ,Xgrid, Ygrid, Zgrid);

但是,由于interp3对它们的限制,你的随机数据点可能无法很好地使用这种方法。