我试图创建四个11乘11乘11(因为我们从0开始)称为X(对于X域),Y,Z和W的统一数组。空间域(X,Y,Z)应该来自0到100(假设为cm),因此均匀网格长度为10厘米(X),深度(Y)和高度(Z)。我还想生成一个像高斯exp(-x ^ 2-y ^ 2-z ^ 2))这样的函数,它分布在X,Y,Z域并存储在W中。我被困在如何生成4个数组我需要以及如何生成均匀网格。我曾尝试使用meshgrid,但我无法获得正确的表面图。任何帮助表示赞赏
答案 0 :(得分:2)
您可以使用meshgrid
生成自变量X
,Y
和Z
,如下所示:
[X, Y, Z] = meshgrid(0:10:100);
现在,您可以使用上述矩阵和element-wise array operations轻松计算因变量W
。对于您的示例公式:
W = exp(X.^2+Y.^2+Z.^2);
请注意,.^
operator用于将矩阵的每个元素提升为幂。