MatLab函数meshgrid、ndgrid

2022-03-01 08:43:27 浏览数 (1)

【注】详情请参阅 MatLab help 文档

1. meshgrid

1.1 作用

meshgrid 函数用于生成二维或三维网络坐标。

1.2 语法

代码语言:javascript复制
[X,Y] = meshgrid(x,y)
[X,Y] = meshgrid(x)
[X,Y,Z] = meshgrid(x,y,z)
[X,Y,Z] = meshgrid(x)
  • [X,Y] = meshgrid(x,y) 基于 x、y 坐标向量返回二维网络点对应的坐标矩阵。X、Y 为网络点对应维度的坐标矩阵,其中 X 每一行为 x 的一个副本,Y 每一列为 y 的一个副本。且 size(X) = size(Y) = [length(y),length(x)] 。
  • [X,Y] = meshgrid(x) 该语法等价于 [X,Y] = meshgrid(x,x),由上述语法可知,该语法返回网格大小为 length(x)×times×length(x) 的方形网格坐标。
  • [X,Y,Z] = meshgrid(x,y,z) 基于 x、y、z 坐标向量返回三维网络点对应的坐标矩阵。X、Y、Z 为网络点对应维度的坐标矩阵,其中 X 沿第二维度(行)均为 x 的副本,Y 沿第一维度(列)均为 y 的副本,Z 沿第三维度均为 z 的副本。且 size(X) = size(Y) = size(Z) = [length(y),length(x),length(z)] 。
  • [X,Y,Z] = meshgrid(x) 该语法等价于 [X,Y,Z] = meshgrid(x,x,x),由上述语法可知,该语法返回网格大小为 length(x)×times×length(x)×times×length(x) 的三维网格坐标。

2. ndgrid

2.1 作用

ndgrid 函数用于生成 n 维空间中的矩形网络坐标。 【注】ndgrid 和 meshgrid 生成网络坐标的区别在于对第一、二维度的处理。

2.2 语法

代码语言:javascript复制
[X1,X2,...,Xn] = ndgrid(x1,x2,...,xn)
[X1,X2,...,Xn] = ndgrid(xg) 
  • [X1,X2,…,Xn] = ndgrid(x1,x2,…,xn) 基于 x1、x2、⋯cdots⋯、xn 坐标向量返回 n 维网络点对应的坐标矩阵。X1、X2、⋯cdots⋯、Xn 为网络点对应维度的坐标矩阵,其中 X1 沿第一维均为 x1 的副本,X2 沿第二维度均为 x2 的副本,⋯cdots⋯,Xn 沿第 n 维度均为 xn 的副本。且 size(X1) = size(X2) = ⋯cdots⋯ = size(Xn) = [length(x1),length(x2),⋯cdots⋯,length(xn)] 。
  • [X1,X2,…,Xn] = ndgrid(xg) 该语法等价于 [X1,X2,…,Xn] = ndgrid(xg,xg,⋯cdots⋯,xg),共 n 个 xg 向量。由上述语法可知,该语法返回网格大小为 length(xg)×times×length(xg)×times× ⋯cdots⋯ ×times×length(xg) 的 n 维网格坐标。

0 人点赞