当前位置:知识问问>百科知识>请教Matlab的griddata的用法

请教Matlab的griddata的用法

2023-08-08 19:10:26 编辑:join 浏览量:606

请教Matlab的griddata的用法

MATLAB散乱点插值函数

griddata函数

语法:

ZI = griddata(x,y,z,XI,YI)

[XI,YI,ZI] = griddata(x,y,z,XI,YI)

[...] = griddata(...,method)

[...] = griddata(...,method,options)

说明:

ZI = griddata(x,y,z,XI,YI) 调整形如z = f(x,y)的曲面,使之与非等间距矢量(x,y,z)中的数据吻合。griddata 函数在指定的(XI,YI)点处插补此曲面,生成ZI. 此曲面一定通过这些数据点。 XI 和 YI 通常构成均匀网格(与meshgrid函数生成的相同). XI 可以是行矢量,这种情况下该矢量确定一个具有固定列数的矩阵。与之类似,YI 可以是列矢量,确定一个具有固定行数的矩阵。

[XI,YI,ZI] = griddata(x,y,z,XI,YI) 函数返回与上述矩阵相同的插补后的矩阵ZI。并返回由行矢量XI和列矢量yi形成的矩阵XI 和YI. 后者与meshgrid 函数返回的矩阵相同。

[...] = griddata(...,method)使用规定的插补方法:

'linear' 基于三角形的线性插补法(缺省)

'cubic' 基于三角形的三次插补法

'nearest' 最近邻居插补法

'v4' MATLAB 4 griddata方法。

这些方法定义了匹配数据点的曲面类型。'cubic' 和 'v4' 方法生成平滑曲面,而 'linear' 和 'nearest' 分别具有一阶导数和零阶导数不连续。除'v4' 外所有方法基于数据的三角化。如果方法为[], 则使用缺省的'linear' 方法。

[...] = griddata(...,method,options)指定一串将通过delaunayn函数在Qhull中使用的单元阵列选项. 如果选项为 [], 则使用缺省的三角化选项。如果选项为{''}, 不使用任何选项,包括缺省选项。有时,griddata 函数可能将位于数据凸壳上或靠近凸壳的点返回为NaNs。这是因为有时计算中的圆整处理使得很难确定一个靠近边界的点是否处于凸壳内。

算法:

griddata(...,'v4') 命令使用 中文档化的方法。其他griddata方法基于使用Qhull 的数据三角化。

实例:

对一个函数在±2.0范围内随机采样100点:

rand('seed',0)

x = rand(100,1)*4-2; y = rand(100,1)*4-2;

z = x.*exp(-x.^2-y.^2);

x, y, 和 z 均为包含非均匀采样数据的矢量。定义一个规范的网格,将数据与网格匹配:

ti = -2:.25:2;

[XI,YI] = meshgrid(ti,ti);

ZI = griddata(x,y,z,XI,YI);

Plot the gridded data along with the nonuniform data points used to generate it: mesh(XI,YI,ZI), hold

plot3(x,y,z,'o'), hold

标签:Matlab

版权声明:文章由 知识问问 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.zhshwenwen.com/article/255161.html
热门文章