文档帮助中心
网格格式的三维网格数据插值
Vq = interp3 (X, Y, Z, V, Xq Yq, Zq)
Vq = Interp3(v,xq,yq,zq)
Vq = Interp3(v)
Vq = Interp3(v,k)
Vq = interp3 (___、方法)
Vq = interp3 (___、方法、extrapval)
例子
VQ.= interp3 (X, Y, Z,V,XQ,YQ,ZQ)使用线性插值返回由三个变量组成的函数在特定查询点的插值值。结果总是经过函数的原始采样。X,Y,Z包含采样点的坐标。V包含每个采样点上对应的函数值。XQ.,YQ.,ZQ.包含查询点的坐标。
VQ.= interp3 (X, Y, Z,V,XQ,YQ,ZQ)
VQ.
X, Y, Z
V
XQ,YQ,ZQ
X
Y
Z
XQ.
YQ.
ZQ.
VQ.= interp3 (V,XQ,YQ,ZQ)假设有一个默认的样本点网格。默认网格点覆盖该区域,X = 1: n,Y = 1: m,Z = 1: p,在哪里[m,n,p] =尺寸(v).当您希望节省内存并且不关心点之间的绝对距离时,请使用此语法。
VQ.= interp3 (V,XQ,YQ,ZQ)
X = 1: n
Y = 1: m
Z = 1: p
[m,n,p] =尺寸(v)
VQ.= interp3 (V)通过将样本值与每个维度之间的间隔划分一次形成的细化网格上的内插值。
VQ.= interp3 (V)
VQ.= interp3 (V,k)返回由重复减半间隔形成的精细网格上的插值值k乘以每个维度。这将导致2 ^ k-1样本值之间的内插点。
VQ.= interp3 (V,k)
k
2 ^ k-1
VQ.= interp3 (___,方法)指定另一种插值方法:“线性”,'最近','立方','makima',或'样条曲线'.默认方法是“线性”.
VQ.= interp3 (___,方法)
方法
“线性”
'最近'
'立方'
'makima'
'样条曲线'
VQ.= interp3 (___,方法,extrapval)还指定了extrapval,这是一个标量值,分配给位于样本点域之外的所有查询。
VQ.= interp3 (___,方法,extrapval)
extrapval
如果省略extrapval参数用于示例点域外的查询,然后基于方法争论interp3.返回下列任意一个:
interp3.
的外推值'样条曲线'和'makima'方法
南其他插值方法的值
南
全部折叠
加载流函数的点和值,在每个维度上取样10个点。
[x,y,z,v] =流量(10);
的流函数返回数组中的网格,X,Y,Z.网格覆盖了这个区域, 0 . 1 ≤ X ≤ 1 0 , - 3. ≤ Y ≤ 3. , - 3. ≤ Z ≤ 3. ,间距为 δ. X = 0 . 5 , δ. Y = 0 . 7 , δ. Z = 0 . 7 .
流
现在,plot切片通过样本的体积在:X = 6,X = 9,Y = 2,Z = 0.
X = 6
X = 9
Y = 2
Z = 0
图片(x,y,z,v,[6 9],2,0);阴影平
创建一个带有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 9 [6], 2 0);阴影平
通过样本的体积绘制切片:X = 6,X = 9,Y = 2,Z = 0.
属性在查询网格中的点上插入'立方'插值方法。然后绘制结果。
Vq = interp3 (X, Y, Z, V, Xq Yq, Zq、'立方');图块(Xq, Yq Zq、Vq 9 [6], 2 0);阴影平
创建网格向量,x,y,z.这些向量定义了与内值相关的点V.
x
y
z
x = 1:10 0;y = (1:50) ';z = 1小时30分;
将样本值定义为一个50 × 100 × 30的随机数数组,V.使用兰德函数创建数组。
兰德
RNG('默认') V = rand(50,100,30);
评估V在域外的三个点x,y,z.指定extrapval = 1.
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因为它们不在。的范围之内x,y,z.
-1
采样网格点,指定为实数组或向量。样本网格点必须是唯一的。
如果X,Y,Z是阵列,然后它们包含一个坐标全网格(meshgrid格式).使用meshgrid创建的功能X,Y,Z阵列在一起。这些阵列必须具有相同的大小。
meshgrid
如果X,Y,Z是向量,那么它们被视为a网格向量.这些向量的值一定是严格单调,要么增加或减少。
示例:[X, Y, Z] = meshgrid (1:30, 10:10 1:5)
[X, Y, Z] = meshgrid (1:30, 10:10 1:5)
数据类型:单|双人间
单
双人间
示例值,指定为真实或复杂的数组。尺寸要求V取决于尺寸X,Y,Z:
如果X,Y,Z数组是否代表一个完整的网格(在meshgrid格式),那么大小V匹配的大小X,Y,或Z.
如果X,Y,Z是网格向量吗尺寸(v)= [长度(y)长度(x)长度(z)].
尺寸(v)= [长度(y)长度(x)长度(z)]
如果V包含复数,那么interp3.分别插值实部和虚部。
示例:兰特(10,10,10)
兰特(10,10,10)
数据类型:单|双人间复数的支持:金宝app是的
查询点,指定为实标量、向量或数组。
如果XQ.,YQ.,ZQ.是标量,那么它们是单个查询点的坐标R3..
如果XQ.,YQ.,ZQ.是不同方向的向量吗XQ.,YQ.,ZQ.在R3..
如果XQ.,YQ.,ZQ.那么向量的大小和方向是相同的吗XQ.,YQ.,ZQ.被视为分散点在R3..
如果XQ.,YQ.,ZQ.如果数组的大小相同,那么它们要么表示一个完整的查询点网格(在meshgrid格式)或分散点R3..
示例:[Xq, Yq Zq] = meshgrid ((1:0.1:10), (5:0.1:0) 3:5)
[Xq, Yq Zq] = meshgrid ((1:0.1:10), (5:0.1:0) 3:5)
1
细化因子,指定为实的、非负的整数标量。该值指定在每个维度中重复划分精细网格的间隔的次数。这将导致2 ^ k-1样本值之间的内插点。
如果k是0,然后VQ.是一样的V.
0
interp3 (V, 1)是一样的interp3 (V).
interp3 (V, 1)
interp3 (V)
下图描述了k = 2在…的一个平面内R3..红色和9个黑色样本值中有72个内插值。
k = 2
示例:interp3 (V, 2)
interp3 (V, 2)
插值方法,指定为该表中的选项之一。
每个维度需要至少两个网格点
需要更多的记忆'最近'
每个维度需要两个网格点
最快的计算,具有适度的内存要求
网格在每个维度上必须有均匀的间距,但间距不必在所有维度上都相同
每个维度至少需要四个点
需要更多的内存和计算时间“线性”
每个维度至少需要2个点
产生的波动比'样条曲线'
计算时间通常小于'样条曲线',但内存需求是相似的
每个维度需要四个点
需要更多的内存和计算时间'立方'
域中的函数值X,Y,Z,指定为实标量或复标量。interp3.返回此常量值的域外的所有点X,Y,Z.
示例:5
5
示例:5 + 1i
5 + 1i
作为实或复标量、向量或数组返回的内插值。的大小和形状VQ.这取决于您使用的语法,在某些情况下,还取决于输入参数的大小和值。
interp3 (X, Y, Z, V, Xq, Yq, Zq)
interp3 (V, Xq, Yq Zq)
size(Vq) = [1 1]
大小(Xq) = [100 1]
尺寸(yq)= [100 1]
尺寸(Zq) = [100 1]
尺寸(Vq) = [100 1]
size(Vq) = [length(Y) length(X) length(Z)]
尺寸(Xq) = [1 100]
大小(Yq) = [50 1]
尺寸(Zq) = [1 5]
尺寸(Vq) = [50 100 5]
尺寸(Xq) = [50 25]
尺寸(yq)= [50 25]
尺寸(zq)= [50 25]
尺寸(Vq)= [50 25]
interp3 (V, k)
数组,其中的长度我尺寸是2 ^ k *(大小(V, i) 1) + 1
我
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),所以它根本不是单调。
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.,完整网格由三个阵列组成,其元素代表了定义区域的点网格R3..第一个数组包含x-坐标,第二个数组包含y-坐标,第三个数组包含z- 控制。每个阵列中的值沿着单个维度变化,并且沿其他维度恒定。
的值x也参与是严格单调,增加,并沿第二次维度变化。的值y数组严格地是单调的、递增的,并且沿着第一维变化。的值z- 阵阵严格单调,增加,并沿着第三维度变化。使用meshgrid函数创建可传递的完整网格interp3..
为interp3.,网格矢量包括三维的混合定向载体,用于定义网格上的点R3..
例如,以下代码为该区域创建网格向量,1≤x≤3,4≤y≤5,6≤z≤8:
x = 1:3;Y =(4:5)';z = 6:8;
为interp3.,分散点由三个数组或向量组成,XQ.,YQ.,ZQ.,定义分散在的一系列点R3..第i个数组包含第i维的坐标。
例如,下面的代码指定了点(1,19,10)、(6,40,1)、(15,33,22)和(0,61,13)。
Xq = [16 6;15 0];Yq = [19 40;33 61);Zq = [10 1;22日13];
使用说明和限制:
XQ.,YQ.,ZQ.必须是相同的尺寸。使用meshgrid在网格上计算。
为了获得最好的结果,提供X,Y,Z向量。这些向量中的值必须是严格单调且递增的。
代码生成不支持金宝app'makima'插值方法。
对于'立方'插值方法中,如果网格不具有均匀的间距,则会产生误差。在本例中,使用the'样条曲线'插值方法。
为了达到最好的效果,当你使用'样条曲线'插值方法:
使用meshgrid要创建输入XQ.,YQ.,ZQ..
使用少量相对于尺寸的插值点V.对大量分散的点进行插值是低效的。
V必须是双或单三维数组。V可以是实的,也可以是复杂的。
X,Y,Z必须:
有相同的类型(双或单)。
具有有限载体或3-D阵列,其具有相应尺寸的增加和非再释放元件。
与笛卡尔坐标轴对齐X,Y,Z3-D阵列(好像它们是由meshgrid).
尺寸一致V.
XQ.,YQ.,ZQ.必须是相同类型的向量或数组(双或单)。如果XQ.,YQ.,ZQ.为数组,则它们必须具有相同的大小。如果它们是不同长度的向量,那么其中一个必然有不同的方向。
方法必须“线性”或'最近'.
不支持对边界外输入的推断。金宝app
有关更多信息,请参阅在GPU上运行MATLAB函数(并行计算工具箱).
interp1.|interp2.|interpn.|meshgrid
interp1.
interp2.
interpn.
系统上存在此示例的修改版本。你想打开这个版本吗?
你点击一个链接对应于这个MATLAB命令:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系您当地的办公室