MATLAB中数组的运算和操作学习笔记

1、数组的代数运算

1.1、数组与标量的运算

数组的+、-、*、/、乘方运算

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

A =

       1              2              3       
       4              5              6       

>> A-2

ans =

      -1              0              1       
       2              3              4       

>> A*2

ans =

       2              4              6       
       8             10             12       

>> A/2

ans =

       1/2            1              3/2     
       2              5/2            3       

>> A^2
错误使用  ^ 
输入必须为标量和方阵。
要按元素进行 POWER 计算,请改用 POWER (.^)>> B=[1,2;3,4]

B =

       1              2       
       3              4       

>> B^2

ans =

       7             10       
      15             22       

>> B^(-1)

ans =

      -2              1       
       3/2           -1/2     

>> B^(0.2)

ans =

     901/1073   + 2555/6959i      614/2397   -  679/4043i 
     307/799    -  230/913i       716/585    +  264/2291i 

1.2、转置运算

数组A的转置用A’表示

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

A =

       1              2              3       
       4              5              6    
       >> A'

ans =

       1              4       
       2              5       
       3              6          

1.3、数组的加减运算

当数组的维数完全相等的时候,可以进行加减运算

>> A=[1,2,3;4,5,6;7,8,9];
>> B=[1,2,3];
>> C=[4,5,6];
>> A+B
错误使用  + 
矩阵维度必须一致。
 
>> B+C

ans =

       5              7              9       

1.4、数组的乘法运算

两个数组的行数等于列数才可进行乘法运算

>> A=[1,2,3];
>> B=[4;5;6];
>> A*B

ans =

      32       

1.5、数组的除法运算

除法运算包括左除“\”和右除“/”两种运算
左除:A\B表示A^(-1)B,A为方阵
右除:A/B表示A
B^(-1),B为方阵

>> A=[1,2;3,4];B=[1,3,5;2,4,6];C=[1,1,3;2,4,6;7,8,9];
>> A\B

ans =

       0             -2             -4       
       1/2            5/2            9/2     

>> B/C

ans =

       0             13/12          -1/6     
       0              1              0       

1.6、数组的点运算

数组的点运算是两个数组之间的对应元素直接运算,这样就要求这两个数组的维数完全相同。

>> A=[1,2,3;4,5,6];B=[7,8,9;5,6,4];
>> C=A.*B

C =

       7             16             27       
      20             30             24       

>> D=A*B
>> D=A.+B
 D=A.+B
     ↑
错误:  MATLAB 运算符异常。%加法不可用
 
>> A.-B
 A.-B
   ↑
错误:  MATLAB 运算符异常。%减法不可用
 
>> A./B%除法可以用

ans =

       1/7            1/4            1/3     
       4/5            5/6            3/2     

>> A.\B

ans =

       7              4              3       
       5/4            6/5            2/3     

1.7、数组求幂运算

数组求幂运算包括数组与常数和数组与数组的幂运算,用点运算的形式表示。

>> A=[1,2;3,4];B=[2,2;1,2];
>> A1=A.^3,A2=3.^A,A3=A.^B%运算规律如下

A1 =

       1              8       
      27             64       


A2 =

       3              9       
      27             81       


A3 =

       1              4       
       3             16       

2、数组的块操作

可以对数组进行元素更改、插入子块、提取子块、重排子块、扩充子块等操作。

>> A=[1,2;3,4];B=[2,2;1,2];
>> A1=A.^3,A2=3.^A,A3=A.^B

A1 =

       1              8       
      27             64       


A2 =

       3              9       
      27             81       


A3 =

       1              4       
       3             16       

>> clear
>> A=[1,2,3;4,5,6];B=[7,8,9];
>> A(1,:)=B%将A阵的第一行用B数组替换

A =

       7              8              9       
       4              5              6       

>> A(:,:)=2%将A阵所有元素设置成2

A =

       2              2              2       
       2              2              2       

>> A(2,2)=15%将A阵的第二行第二列的元素设置成12

A =

       2              2              2       
       2             15              2       


 
>> A(4,5)=20%定义A阵的第4行第5列元素,MATLAB自动扩充A矩阵

A =

       2              2              2              0              0       
       2             15              2              0              0       
       0              0              0              0              0       
       0              0              0              0             20       

>> C=A(1:3,2:3)%提取A阵的第一行到第三行中第2、3列的所有元素

C =

       2              2       
      15              2       
       0              0       

3、数组的翻转操作

MATLAB提供了几种指令可以进行数组的翻转操作

>> A=[1,2,3,4;5,6,7,8;9,10,11,12;13,14,15,16]

A =

       1              2              3              4       
       5              6              7              8       
       9             10             11             12       
      13             14             15             16       

>> B=flipud(A)%上下翻转

B =

      13             14             15             16       
       9             10             11             12       
       5              6              7              8       
       1              2              3              4       

>> C=fliplr(A)%左右翻转

C =

       4              3              2              1       
       8              7              6              5       
      12             11             10              9       
      16             15             14             13       


>> rot90(A)%逆时针旋转90°

ans =

       4              8             12             16       
       3              7             11             15       
       2              6             10             14       
       1              5              9             13       

4、数组运算的常用数学函数

MATLAB中又许多不同类型的函数如下表
请添加图片描述

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值