主要内容

interp3.

网格格式中的三维网格数据插值

描述

例子

VQ.= Interp3(x,y,zV.XQ,YQ,ZQ返回使用线性插值在特定查询点处的三个变量函数的内插值。结果始终通过该功能的原始采样。Xy, 和Z.包含采样点的坐标。V.包含每个采样点处的相应函数值。XQ.YQ., 和ZQ.包含查询点的坐标。

VQ.= Interp3(V.XQ,YQ,ZQ假设采样点的默认网格。默认网格点覆盖该区域,x = 1:ny = 1:mz = 1:p, 在哪里[m,n,p] =尺寸(v)。当您想要保护内存时,请使用此语法,并且不关心点之间的绝对距离。

VQ.= Interp3(V.通过将样本值与每个维度之间的间隔划分一次形成的细化网格上的内插值。

VQ.= Interp3(V.K.通过反复减半形成的细化网格上的内插值返回内插值K.每个维度的时间。这导致了这一点2 ^ k-1样本值之间的内插点。

例子

VQ.= Interp3(___方法指定备用插值方法:'线性''最近''立方体''makima', 或者'样条曲线'。默认方法是'线性'

例子

VQ.= Interp3(___方法uplapval.还指定uplapval.,标量值分配给位于采样点的域外的所有查询。

如果你省略了uplapval.对样本点域外查询的参数,然后基于方法争论interp3.返回以下其中一项:

  • 外推的值'样条曲线''makima'方法

  • 其他插值方法的值

例子

全部收缩

加载流量的点和值,在每个维度的10个点处采样。

[x,y,z,v] =流量(10);

函数返回阵列中的网格,XyZ.。网格覆盖该地区, 0. 1 ≤. X ≤. 1 0. - 3. ≤. y ≤. 3. - 3. ≤. Z. ≤. 3. ,间距是 δ. X = 0. 5. δ. y = 0. 7. , 和 δ. Z. = 0. 7.

现在,通过样本的体积绘制绘图片:x = 6.x = 9.y = 2, 和z = 0.

图片(x,y,z,v,[6 9],2,0);阴影平坦的

图包含轴。轴包含4个类型表面的物体。

创建一个带有0.25的查询网格。

[xq,yq,zq] = meshgrid(.1:.25:10,-3:.25:3,-3:.25:3);

插值在查询网格中的点并使用相同的切片平面绘制结果。

Vq = Interp3(x,y,z,v,xq,yq,zq);图切片(XQ,YQ,ZQ,VQ,[6 9],2,0);阴影平坦的

图包含轴。轴包含4个类型表面的物体。

加载流量的点和值,在每个维度的10个点处采样。

[x,y,z,v] =流量(10);

函数返回阵列中的网格,XyZ.。网格覆盖该地区, 0. 1 ≤. X ≤. 1 0. - 3. ≤. y ≤. 3. - 3. ≤. Z. ≤. 3. ,间距是 δ. X = 0. 5. δ. y = 0. 7. , 和 δ. Z. = 0. 7.

绘制通过样品的体积:x = 6.x = 9.y = 2, 和z = 0.

图片(x,y,z,v,[6 9],2,0);阴影平坦的

图包含轴。轴包含4个类型表面的物体。

创建一个带有0.25的查询网格。

[xq,yq,zq] = meshgrid(.1:.25:10,-3:.25:3,-3:.25:3);

使用Query网格中的点插入'立方体'插值方法。然后绘制结果。

Vq = Interp3(x,y,z,v,xq,yq,zq,'立方体');图切片(XQ,YQ,ZQ,VQ,[6 9],2,0);阴影平坦的

图包含轴。轴包含4个类型表面的物体。

创建网格向量,Xy, 和Z.。这些矢量定义了与值相关的点V.

x = 1:100;Y =(1:50)';z = 1:30;

将样本值定义为50×100×30随机数阵列,V.。使用兰特创建数组的函数。

RNG('默认')v = rand(50,100,30);

评估V.在域名之外的三个点Xy, 和Z.。指定extrapval = -1

xq = [0 0 0];YQ = [0 0 51];zq = [0 101 102];Vq = Interp3(x,y,z,v,xq,yq,zq,'线性',-1)
VQ =1×3-1 -1 -1

所有三分评估为-1因为它们在域名之外Xy, 和Z.

输入参数

全部收缩

示例网格点,指定为真实阵列或向量。示例网格点必须是唯一的。

例子:[x,y,z] = meshgrid(1:30,-10:10,1:5)

数据类型:单身的|双倍的

示例值,指定为真实或复杂的数组。尺寸要求V.取决于尺寸Xy, 和Z.

  • 如果Xy, 和Z.阵列代表完整网格(inmeshgrid.格式),那么大小V.匹配大小Xy, 或者Z.

  • 如果Xy, 和Z.然后是网格向量尺寸(v)= [长度(y)长度(x)长度(z)]

如果V.包含复数,然后interp3.单独插值真实和虚部。

例子:兰特(10,10,10)

数据类型:单身的|双倍的
复数支持:万博1manbetx是的

查询点,指定为实际标量,向量或数组。

  • 如果XQ.YQ., 和ZQ.是标量,那么它们是单个查询点的坐标R.3.

  • 如果XQ.YQ., 和ZQ.那么是不同方向的载体XQ.YQ., 和ZQ.被视为网格向量R.3.

  • 如果XQ.YQ., 和ZQ.然后是相同大小和方向的载体XQ.YQ., 和ZQ.被视为分散点R.3.

  • 如果XQ.YQ., 和ZQ.是相同大小的阵列,然后它们代表了一个完整的查询点网格(inmeshgrid.格式)或分散点R.3.

例子:[xq,yq,zq] = meshgrid((1:0.1:10),( - 5:0.1:0),3:5)

数据类型:单身的|双倍的

细化因子,指定为真实的非负整数标量。此值指定重复划分每个维度中精细网格的间隔的次数。这导致了这一点2 ^ k-1样本值之间的内插点。

如果K.0., 然后VQ.是相同的V.

Interp3(v,1)是相同的Interp3(v)

以下插图描绘了k = 2在一架飞机上R.3.。红色和9个黑色样本值中有72个内插值。

例子:Interp3(v,2)

数据类型:单身的|双倍的

插值方法,指定为此表中的选项之一。

方法 描述 连续性 注释
'线性' 查询点处的插值值基于每个相应维度的相邻网格点处的值的线性插值。这是默认的插值方法。 C0.
  • 每个维度需要至少两个网格点

  • 需要更多的记忆'最近'

'最近' 查询点处的插值值是最近的样本网格点处的值。 不连续
  • 需要每个维度的两个网格点

  • 最快的计算,具有适度的内存要求

'立方体' 查询点处的插值值基于每个相应维度的相邻网格点处的值的立方插值。插值基于立方卷积。 C1
  • 电网必须在每个尺寸中具有均匀的间距,但间距对于所有尺寸不一定是相同的

  • 每个维度至少需要四个点

  • 需要更多的内存和计算时间'线性'

'makima' 修改了Akima立方Hermite插值。查询点处的插值值基于多项式的分段函数,最多使用每个相应维度中的相邻网格点的值进行评估。Akima公式被修改为避免过冲。 C1
  • 每个维度至少需要2分

  • 产生的起伏少于'样条曲线'

  • 计算时间通常小于'样条曲线',但内存要求是相似的

'样条曲线' 查询点处的插值值基于每个相应维度的相邻网格点处的值的立方插值。插值基于使用非-A-结的结束条件的立方样条。 C2
  • 每个维度需要四个点

  • 需要更多的内存和计算时间'立方体'

功能值外部域Xy, 和Z.,指定为真实或复杂的标量。interp3.返回此常量值的域外的所有点Xy, 和Z.

例子:5.

例子:5 + 1i

数据类型:单身的|双倍的
复数支持:万博1manbetx是的

输出参数

全部收缩

内容值,作为真实或复杂的标量,向量或数组返回。尺寸和形状VQ.取决于您使用的语法,并且在某些情况下,输入参数的大小和值。

语法 特殊情况 VQ的大小 例子
Interp3(x,y,z,v,xq,yq,zq)
Interp3(v,xq,yq,zq)
和这些语法的变化包括方法或者uplapval.
XQ.YQ., 和ZQ.是标量。 标量子 尺寸(Vq)= [1 1]当你通过时XQ.YQ., 和ZQ.作为标量。
与上述相同 XQ.YQ., 和ZQ.是相同大小和方向的矢量。 相同大小和方向的矢量XQ.YQ., 和ZQ. 如果尺寸(xq)= [100 1]
尺寸(yq)= [100 1]
尺寸(zq)= [100 1]
然后尺寸(Vq)= [100 1]
与上述相同 XQ.YQ., 和ZQ.是混合取向的载体。 尺寸(Vq)= [长度(y)长度(x)长度(z)] 如果尺寸(xq)= [1 100]
尺寸(yq)= [50 1]
尺寸(zq)= [1 5]
然后尺寸(Vq)= [50 100 5]
与上述相同 XQ.YQ., 和ZQ.是相同的阵列。 尺寸与XQ.YQ., 和ZQ. 如果尺寸(xq)= [50 25]
尺寸(yq)= [50 25]
尺寸(zq)= [50 25]
然后尺寸(Vq)= [50 25]
Interp3(v,k)
和这种语法的变化包括方法或者uplapval.
没有任何

数组,其中的长度一世尺寸是
2 ^ k *(尺寸(v,i)-1)+1

如果尺寸(v)= [10 12 5]
k = 3.
然后尺寸(Vq)= [73 89 33]

更多关于

全部收缩

严格单调

一组始终增加或减少的值,而不逆转。例如,序列,A = [2 4 6 8]是严格的单调和增加。序列,B = [2 4 4 4 6 8]不是严格的单调,因为之间没有变化B(2)B(3)。序列,C = [2 4 6 8 6]包含逆转C(4)C(5),所以它根本不是单调。

完整网格(以网格格格格式)

为了interp3.,完整网格由三个阵列组成,其元素代表了定义区域的点网格R.3.。第一个阵列包含X-1Owardates,第二个阵列包含y-CoordInates,第三个阵列包含Z.- 控制。每个阵列中的值沿着单个维度变化,并且沿其他维度恒定。

价值X- array是严格单调,增加,并沿第二维度变化。价值y- 阵阵是严格的单调,增加,并沿着第一维变化。价值Z.- 阵阵严格单调,增加,并沿着第三维度变化。使用meshgrid.创建一个可以传递的完整网格的函数interp3.

网格向量

为了interp3.,网格矢量包括三维的混合定向载体,用于定义网格上的点R.3.

例如,以下代码为该区域创建网格向量,1≤X≤3,4≤y≤5和6≤Z.≤8:

x = 1:3;Y =(4:5)';z = 6:8;

分散点

为了interp3.,散射点由三个阵列或载体组成,XQ.YQ., 和ZQ.,定义分散在的一系列点R.3.。第i个阵列包含第i个尺寸中的坐标。

例如,以下代码指定点(1,19,10),(6,40,1),(15,33,22),和(0,61,13)。

xq = [1 6;15 0];YQ = [19 40;33 61];zq = [10 1;22 13];

扩展能力

在R2006A之前介绍