matlab新手入门(二)(翻译)

矩阵和数组

MATLAB是“矩阵实验室”的缩写。虽然其他编程语言大多数一次使用数字,但MATLAB®主要用于整个矩阵和数组。
所有MATLAB变量都是多维数组,无论数据类型如何。矩阵是通常用于线性代数的二维数组。


阵列创建
要在单个行中创建具有四个元素的数组,请使用逗号(,)或空格分隔元素。

a = [1 2 3 4]

返回
a =

     1 2 3 4
这种类型的数组是行向量。
要创建具有多行的矩阵,请使用分号分隔行。

a = [1 2 3; 4 5 6; 7 8 10]

a =

     1 2 3
     4 5 6
     7 8 10
创建矩阵的另一种方法是使用一个函数,如ones,zeros或者rand。例如,创建一个5×1列的零向量。

z = zeros(5,1)

z =

     0
     0
     0
     0
     0


矩阵和数组运算
MATLAB允许您使用单个算术运算符或函数处理矩阵中的所有值。

a + 10

ans =

    11 12 13
    14 15 16
    17 18 20

sin(a)

ans =

    0.8415 0.9093 0.1411
   -0.7568 -0.9589 -0.2794
    0.6570 0.9894 -0.5440
要转置矩阵,请使用单引号('):

a'

ans =

     1 4 7
     2 5 8
     3 6 10
您可以使用*运算符执行标准矩阵乘法,该乘法运算行和列之间的内积。例如,确认矩阵乘以其逆返回单位矩阵:

p = a * inv(a)

p =

    1.0000  0           -0.0000
         0     1.0000   0
         0     0            1.0000
请注意,p不是整数值的矩阵。 MATLAB将数字存储为浮点值,算术运算对实际值与浮点数表示之间的小差异敏感。您可以使用format命令显示更多的十进制数字:

format long
p = a*inv(a)

p =

   1.000000000000000             0                                                 -0.000000000000000
                   0                            1.000000000000000                   0
                   0                            0                                                  0.999999999999998
将显示重新设置为较短的格式

format short

格式仅影响数字的显示,而不是MATLAB计算或保存的方式。
要执行元素乘法而不是矩阵乘法,请使用.*运算符:

p = a.*a

p =

     1 4 9
    16 25 36
    49 64 100
用于乘法,除法和幂的矩阵运算符都具有以元素方式操作的相应的数组运算符。例如,将a的每个元素提升到第三个幂:

a.^3

ans =

           1 8 27
          64 125 216
         343 512 1000


级联
级联是连接数组以制作较大的数组的过程。事实上,你通过级联其各个元素来形成第一个数组。一对方括号[]是连接运算符。

A = [a, a]

A =

     1 2 3 1 2 3
     4 5 6 4 5 6
     7 8 10 7 8 10
使用逗号将数组相互连接称为“水平级联”。每个数组必须具有相同的行数。类似地,当数组具有相同数量的列时,可以使用分号垂直连接。

A = [a; a]

A =

     1 2 3
     4 5 6
     7 8 10
     1 2 3
     4 5 6
     7 8 10


复数
复数具有实部和虚部。

sqrt(-1)

ans =

   0.0000 + 1.0000i
要表示复数的虚部,请使用i或j。

c = [3+4i, 4+3j; -i, 10j]

c =

   3.0000 + 4.0000i 4.0000 + 3.0000i
   0.0000 - 1.0000i 0.0000 + 10.0000i

posted @ 2017-07-27 09:40  懒小小喵  阅读(414)  评论(0编辑  收藏  举报