【问题标题】:Interpolation of scattered scalar values in 3D volume3D 体积中散乱标量值的插值
【发布时间】:2014-03-20 16:37:50
【问题描述】:

我在部分空间(金字塔部分)中定义了一个未知的标量函数,对于这个函数,我在坐标mesurePoints 中有几个测量点,其中测量值mesure 是已知的:

size(mesurePoints) = [n 3]
size(mesure) = n

我还将我的空间离散化为一大堆等距点,我将其称为 interpolPoints

我想根据我在点 mesure 上的测量值 mesurePoints 获得点 interpolPoints 上的插值 interp_mesure

我尝试使用interp3

interp_mesure = interp3(...
mesurePoints(:,1),mesurePoints(:,2),mesurePoints(:,2),...
mesure,...
interpolPoints(:,1),interpolPoints(:,2),interpolPoints(:,3));

但我收到 V (mesure) 应该是 3D 数组的错误,但我很困惑,我的数据不是 3D,它依赖于 3D,但它是标量数据,我该如何继续? interpol3 不适应我的问题吗?

编辑 1:这是一个类似的问题来说明我的问题:如果您在该体积中有一些温度测量值,您如何在该体积中插入温度?

编辑 2:由于尚未想到 matlab 解决方案,我使用了一个由功率因数的反距离加权的手工插值,结果在点附近很好,但由于我的点非常分散,结果是在空旷的地方不好。

【问题讨论】:

    标签: matlab interpolation scatter


    【解决方案1】:

    我无法准确理解您的数据是什么,但我的印象是 interp1 或 interp2 可能更适合您的需求,因为您的数据不是按 3-D 数组组织的

    【讨论】:

    • 如何将我的数据组织为 3-D 数组?这对我来说没有意义,因为它是与空间坐标相关的标量值,而且我的域不是正方形,所以除非 3D 数组可以是金字塔形的,它们不是设计使然,它们不适合我的需要.这不是我的问题,但它与我的问题相似:如果您知道某些点的温度,您将如何在体积中插入温度?第一篇文章已编辑。
    • 好的,我想我现在更了解您的问题了。首先,看一下多维数组:mathworks.es/es/help/matlab/math/multidimensional-arrays.html 这样,您可以将“温度测量”组织在一个表示空间的 3D 数组中,然后您可以在其上使用 interp3。
    • 现在,对于您的问题,您说您的空间类似于金字塔。但是,它是如何组织的?它是一系列二维矩阵吗?因为如果它是以 3-D 组织的,你可以使用 interp3,显然......
    猜你喜欢
    • 2010-12-30
    • 2018-12-12
    • 2018-08-26
    • 2021-05-14
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 2014-03-17
    • 2018-01-07
    相关资源
    最近更新 更多