QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 697|回复: 1
打印 上一主题 下一主题

数组运算和矩阵运算

[复制链接]
字体大小: 正常 放大

413

主题

36

听众

1854

积分

升级  85.4%

  • TA的每日心情
    开心
    2019-9-18 21:55
  • 签到天数: 258 天

    [LV.8]以坛为家I

    社区QQ达人

    群组2015国赛冲刺

    群组2016美赛公益课程

    群组国赛讨论

    群组第三届数模基础实训

    群组Matlab讨论组

    跳转到指定楼层
    1#
    发表于 2015-9-2 07:53 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    数组运算和矩阵运算


    MATLAB在数组运算中提供了两种不同类型的运算,一种是数组运算(array operations),一种是矩阵运算(matrix).数组运算是

    一种用于元素对元素的运算.也就是说,这个运算是针对两数组相对应的元素使用的. 注意两数组的行与列必须相同.,MATLAB
    将产生错误
    .


    数组运算可以用于数组与标量的运算.当一个数组和一个标量进行运算时,标量将会和数组中的每一元素进行运算.相对地,
    矩阵运算则遵守线性代数的一般规则,像矩阵的乘法.在线性代数中,c=a×b的定义如下:

                                              表2.5 两标量间的数学运算符

            
    运算符
          
    代数形式
       
    MATLAB形式
      
          
    加号
       
    A+B
      
    A+B

         
    减号
       
    A­B
      
    A­B

         
    乘号
       
    A×B
      
    A*B

         
    除号
       
    file:///C:/Users/lx/AppData/Local/Temp/msohtmlclip1/01/clip_image012.gif
      
    A/B

         
    指数
       
    file:///C:/Users/lx/AppData/Local/Temp/msohtmlclip1/01/clip_image014.gif
      
    A^B



    注意,在矩阵相乘中,a阵的列数必须等于b阵的行数。

    MATLAB用一个特殊的符号来区分矩阵运算和数组运算。在需要区分两者不同的时侯,把点置于符号前来指示这是一个数组运算(例如,.*)。26给出的是一些常见的数组和矩阵运算。

                                                   表2.6常见的数组和矩阵运算

      
    运算
      
    MATLAB形式
    注释
      
    数组加法
      
    A+B
    数组加法和矩阵加法相同
      
    数组减法
      
    A­B
    数组减法和矩阵减法相同
      
    数组乘法
      
    A.*B
    AB的元素逐个对应相乘.两数组之间必须有相同的形,或其中一个是标量.
      
    矩阵乘法
      
    A*B
    AB的矩阵乘法.A的列数必须和B的行数相同.
      
    数组右除法
      
    A./B
    AB的元素逐个对应相除:
      
    A(i,j)/B(i,j)两数组之间必须有相同的形,或其中一个是标量.
      
    数组左除法
      
    A.\B
    AB的元素逐个对应相除:
      
    B(i,j)/A(i,j)两数组之间必须有相同的形,或其中一个是标量.
      
    矩阵右除法
      
    A/B
    矩阵除法,等价于A*inv(B), inv(B)B的逆阵
      
    矩阵左除法
      
    A\B
    矩阵除法,等价于inv(B)*A, inv(A)A的逆阵
      
    数组指数运算
      
    A.^B
    AB中的元素逐个进行如下运算A(i,j)^B(i,j),  A(i,j)/B(i,j)两数组之间必须有相同的形,或其中一个是标量.


    初学者往往混淆数组运算和矩阵运算.在一些情况下,两者相互替换会导致非法操作, MATLAB将会报告产生了错误。在另一些情况下,两种运算都是合法的,那么这时MATLAB进行错误的运算,并产生错误的结果。当我们进行方阵运算时,极易产生这样的错误。两个方阵具有相同的大小,两者之间的数组运算和矩阵运算都是合法的,但产生的结果完全不同。在这种情况下,你要万分的小心。


    常见编程错误

    在你的MATLAB代码中,仔细区分数组运算和矩阵运算。数组乘法和矩阵乘法极易混淆。



    因为左除运算A\B等价于inv(A)*B,所以左除运算是解线性方程的好方法。





    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    数学中国版主团队!

    413

    主题

    36

    听众

    1854

    积分

    升级  85.4%

  • TA的每日心情
    开心
    2019-9-18 21:55
  • 签到天数: 258 天

    [LV.8]以坛为家I

    社区QQ达人

    群组2015国赛冲刺

    群组2016美赛公益课程

    群组国赛讨论

    群组第三届数模基础实训

    群组Matlab讨论组

    哎,对不住大家,又是排版问题,附上表2-5!
    排版时,Mathtype的公式不好处理!

    截图.PNG (23 KB, 下载次数: 152)

    表2-5

    表2-5

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-9-28 20:13 , Processed in 0.443455 second(s), 58 queries .

    回顶部