当前位置 博文首页 > 文章内容

    【Matlab自学】基本运算:Paper_Blue的博客

    作者:shunshunshun18 栏目:未分类 时间:2021-10-17 18:02:57

    本站于2023年9月4日。收到“大连君*****咨询有限公司”通知
    说我们IIS7站长博客,有一篇博文用了他们的图片。
    要求我们给他们一张图片6000元。要不然法院告我们

    为避免不必要的麻烦,IIS7站长博客,全站内容图片下架、并积极应诉
    博文内容全部不再显示,请需要相关资讯的站长朋友到必应搜索。谢谢!

    另祝:版权碰瓷诈骗团伙,早日弃暗投明。

    相关新闻:借版权之名、行诈骗之实,周某因犯诈骗罪被判处有期徒刑十一年六个月

    叹!百花齐放的时代,渐行渐远!



    推荐 IIS7批量FTP管理工具 IIS7批量FTP管理
    IIS7批量FTP管理功能说明:
    1、可批量导入,导出FTP信息
    2、其他ftp工具有的功能,我们也有
    3、特色功能:可以定时上传下载
    4、数据信息列表化、一眼就能知道那个是那个
    5、批量连接 标签页式切换 方便快捷
    6、7大连接模式 更多好的兼容
    7、内嵌编辑器 有效解决普通txt记事本乱码
    8、锁屏功能 当程序有规定时间内没人操作,则自动锁程序。输入密码才可以正常操作

    本产品适用于:懒得记录FTP信息和有批量定时备份,上传下载的运维或站长。

    图:


    IIS7批量FTP管理

    Matlab的计算都是针对矩阵来的

    单个数据的运算只是矩阵运算下的一个特例

    (1)基本算数运算

    加减运算

    只有同型矩阵才能加减运算

    一个标量也可以与矩阵加减运算,是吧标量和矩阵的每一个元素相加减

    >> A=[1,2,3,4,5;1,2,3,4,5]
    
    A =
    
         1     2     3     4     5
         1     2     3     4     5
    
    >> A+1
    
    ans =
    
         2     3     4     5     6
         2     3     4     5     6
    
    >> A
    
    A =
    
         1     2     3     4     5
         1     2     3     4     5
    
    

    乘运算

    要求两个矩阵可乘,或称两矩阵“维数和大小相容”

    A =
    
         1     2     3     4     5
         1     2     3     4     5
    
    >> B=[1,2;1,2;;;]
    
    B =
    
         1     2
         1     2
    
    >> A*B
    错误使用  * 
    用于矩阵乘法的维度不正确。请检查并确保第一个矩阵中的列数与第二个矩阵中的行数匹配。要执行按元素相乘,请使用 '.*'。
     
    >> C=[1,2;1,2;,;,;1,2]
    
    C =
    
         1     2
         1     2
         1     2
    
    >> A*C
    错误使用  * 
    用于矩阵乘法的维度不正确。请检查并确保第一个矩阵中的列数与第二个矩阵中的行数匹配。要执行按元素相乘,请使用 '.*'。
     
    >> C*A
    
    ans =
    
         3     6     9    12    15
         3     6     9    12    15
         3     6     9    12    15
    

    除法运算

    (1)右除(/)

    B/A=B*inv(A)

    (2)左除(\)

    A\B=inv(A)*B

    inv():逆矩阵

    代表了不同的除数与被除数的关系

    对于矩阵,不一定相同(想想也应该这样吧啊喂)

    乘方运算

    >> A^2
    错误使用  ^ 
    用于对矩阵求幂的维度不正确。请检查并确保矩阵为方阵并且幂为标量。要执行按元素矩阵求幂,请使用 '.^'。
     
    >> D=[1,2,3;4,5,6;7,8,9]
    
    D =
    
         1     2     3
         4     5     6
         7     8     9
    
    >> D^2
    
    ans =
    
        30    36    42
        66    81    96
       102   126   150
    

    (2)点运算(Matlab特色功能)

    是指对应元素进行运算,要求俩矩阵同型

    .*
    ./
    .\
    .^
    
    >> A.^A
    
    ans =
    
               1           4          27         256        3125
               1           4          27         256        3125
    
    >>
    

    实际使用:

    >> x=0.1:0.3:1
    
    x =
    
        0.1000    0.4000    0.7000    1.0000
    
    >> y=sin(x).*cos(x)
    
    y =
    
        0.0993    0.3587    0.4927    0.4546
    
    >> y=sin(x)*cos(x)
    错误使用  * 
    用于矩阵乘法的维度不正确。请检查并确保第一个矩阵中的列数与第二个矩阵中的行数匹配。要执行按元素相乘,请使用 '.*'。
    

    ——因为sin和cos在这个式子当中对应两个向量,直接相乘会不相容报错

    (3)关系运算

    关系运算符

    <
    <=
    >
    >=
    == 等于
    ~= 不等于
    

    成立返回1,不成立返回0

    >> x=5,y=4
    
    x =
    
         5
    
    y =
    
         4
    
    >> x==y
    
    ans =
    
      logical
    
       0
    

    如果比较的是矩阵,比完了还是个矩阵:

    >> D=[1,2,3;4,5,6;7,8,9]
    
    D =
    
         1     2     3
         4     5     6
         7     8     9
    
    >> C=[1,2,3;5,5,5;7,8,9]
    
    C =
    
         1     2     3
         5     5     5
         7     8     9
    
    >> D==C
    
    ans =
    
      3×3 logical 数组
    
       1   1   1
       0   1   0
       1   1   1
    

    如果一个是标量,一个是矩阵,拿标量和元素一个个比较,最终生成的还是矩阵:

    >> D==5
    
    ans =
    
      3×3 logical 数组
    
       0   0   0
       0   1   0
       0   0   0
    

    (4)逻辑运算

    &(与)
    |(或)
    ~(非)
    
    >> 3<4&5>6
    
    ans =
    
      logical
    
       0
    

    优先级

    >> ~9==1
     ~9==1
     ↑
    错误: 文本字符无效。请检查不受支持的符号、不可见的字符或非 ASCII 字符的粘贴。
     
    >> ~9==1
    
    ans =
    
      logical
    
       0
    
    >> ~(9==1)
    
    ans =
    
      logical
    
       1
    

    对于矩阵

    若参与逻辑运算的是两个同型矩阵

    则对相同位置进行逻辑运算,最后生成一个矩阵

    如果是标量。。。和上面关系运算一样啦。。。

    例:求解水仙花数

    >> k=find(m==m1^3+m2^3+m3^3)
    错误使用  ^ 
    用于对矩阵求幂的维度不正确。请检查并确保矩阵为方阵并且幂为标量。要执行按元素矩阵求幂,请使用 '.^'。
     
    >> k=find(m==m1.^3+m2.^3+m3.^3)
    
    k =
    
        54   271   272   308
    
    >> s=m(k)
    
    s =
    
       153   370   371   407
    
    cs