zoukankan      html  css  js  c++  java
  • matlab中meshgrid函数的用法

    meshgrid用于从数组a和b产生网格。生成的网格矩阵A和B大小是相同的。它也可以是更高维的。这里的大小指的是,size()函数的大小,size()函数返回的是一个向量, 那么size(A) = size(B).

    [A,B]=Meshgrid(a,b)
    生成size(b)Xsize(a)大小的矩阵A和B。它相当于a从一行重复增加到size(b)行,把b转置成一列再重复增加到size(a)列。

    因此命令等效于:

    A=ones(size(b))*a;
    B=b'*ones(size(a))
    

    如下所示:

    >> a=[1:2]
    
    a =
    
         1     2
    
    >> b=[3:5]
    
    b =
    
         3     4     5
    
    >> [A,B]=meshgrid(a,b)
    
    A =
    
         1     2
         1     2
         1     2
    
    
    B =
    
         3     3
         4     4
         5     5
    
     
    
    >> [B,A]=meshgrid(b,a)
    
    B =
    
         3     4     5
         3     4     5
    
    
    A =
    
         1     1     1
         2     2     2
    

      

    举个实例:For example, to evaluate the function: x*exp(-x^2-y^2)

                       over the range -2 < x < 2, -2 < y < 2,

                       [X,Y] = meshgrid(-2:.2:2, -2:.2:2);

                       Z = X .* exp(-X.^2 - Y.^2);

                       mesh(X,Y,Z)

    对于三维网格,生成方式与二维一样 :[x y z]=meshgrid(a b c) ; %算出的结果根据二维的类推

    附件:二维网格例子的结果图。

     

  • 相关阅读:
    工厂模式
    将博客搬至CSDN
    网络安全-跨站脚本攻击XSS(Cross-Site Scripting)
    Linux 权限
    git常用的语句
    git代码提交与克隆
    git学习
    Mybatis常见问题
    关于集合常见的问题
    远程连接(加密验证问题解决)
  • 原文地址:https://www.cnblogs.com/haore147/p/3633086.html
Copyright © 2011-2022 走看看