MATLAB课件第3章MATLAB数值矩阵及运算.doc
文本预览下载声明
第三章 MATLAB数值矩阵及运算
3.1 MATLAB数值矩阵的生成和修改
3.1.1 数值矩阵的生成
1. 直接输入数据
当需要输入的矩阵维数比较小时,可以直接输入数据建立矩阵。矩阵数据(或矩阵元素)的输入格式如下:
(1)输入矩阵时要以“[ ]”作为首尾符号,矩阵的数据应放在 “[ ]”内部,此时MATLAB才能将其识别为矩阵;
(2)矩阵大小可不预先定义;
(3)矩阵数据可为运算表达式;
(4)要逐行输入矩阵的数据,同行数据之间可由空格或“,”分隔,行与行之间可用“;”或回车符分隔;
(5)如果不想显示输入的矩阵(作为中间结果),可以在矩阵输入完成后以“;”结束;
(6)无任何元素的空矩阵也合法。
【例】a=[3 4 6] 和 a=[3,4,6] 为同一矩阵;
b=[4;7;8] 和 b=[4
7
8] 为同一矩阵。
【例】 A=[1+2,2-3,2*3;4/5,sin(0),cos(1);sqrt(2),exp(0),abs(-5)]
A =
3.0000 -1.0000 6.0000
0.8000 0 0.5403
1.4142 1.0000 5.0000
2. 由矩阵编辑器生成
MATLAB提供了一个矩阵编辑器,用户可以用来创建和修改比较大的矩阵。在使用矩阵编辑器之前,需要预先定义一个变量(任意的),如变量A。可以直接在工作空间Workspace窗口点击鼠标右键,单击【new】即可;或者在工作空间Workspac窗口同时按住Ctrl+N即可生成新变量,然后双击变量名,即可打开矩阵编辑器。在窗口中矩阵元素的位置上输入或修改数据,回车后自动提示输入下一行矩阵元素的数据,矩阵元素的输入顺序是按列自动进行的;输入完成后,关闭编辑器,变量A就定义保存好了。
3. 由函数自动生成
MATLAB提供了一些生成矩阵的函数,用户可以方便地用他们建立自己所需要的矩阵。
(1)向量、行矩阵、列矩阵的自动生成
用“起始值:增量值:终止值”的格式自动生成等差数列。
【例3.3】 x=(1:1:10) %表示“起始值:增量值:终止值”,增量为1时可表示成 “起始值:终止值”,即 x=(1:9) 或 x=1:x =
1 2 3 4 5 6 7 8 9
x=1:1:9
x =
1 2 3 4 5 6 7 8 9
I=1:12
I =
1 2 3 4 5 6 7 8 9 10 11 12
用“linspace(起始值:终止值:元素数目)”的格式自动生成等差数列用“lspace(起始值:终止值:元素数目)”的格式自动生成等数列【例3.】 y=linspace(,40,11)
y =
20 22 24 26 28 30 32 34 36 38 40
列矩阵的生成格式如下:
【例3.】 y=linspace(,5,5)
y =
1
2
3
4
5
(2)特殊矩阵的自动生成
MATLAB提供了许多特殊矩阵的生成函数,如零矩阵zeros(m,n),全部元素为1的矩阵ones(m,n),单位矩阵eye(n),随机矩阵rand(m,n)和魔方矩阵magic(n)等,利用这些矩阵可以生成所需要的矩阵。
【例3.】 a=[] % 定义空a =
[]
zeros(4,4) % 定义全为0的矩阵( ( 4的阵列)ans =
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
ones(3,3); % 定义全为1的矩阵(3 ( 3的阵列)rand(2,6) %定义随机矩阵(2 ( 的矩阵)ans =
0.8147 0.1270 0.6324 0.2785 0.9575 0.1576
0.9058 0.9134 0.0975 0.5469 0.9649 0.9706
rand(2,6) % 第二次运行结果。
ans = %由于是随机矩阵,所以每次输出结果都不一样。
0.9572 0.8
显示全部