第三节矩阵基本函数运算与矩阵元素的提取(第二章)
矩阵的基本运算

如果 AT A 则矩阵A称为反对称矩阵.
由此可知,反对称矩阵旳对角元必为零,即 aii = 0
0 5 4
例如
B
5
0 1 是3阶反对称矩阵.
4 1 0
例 设列矩阵 X x1, x2 , , xn T 满足 X T X 1,
E为n阶单位矩阵, H E 2XX T , 证明 H是对称矩阵, 且HH T E.
(i 1, 2, m; j 1, 2, , n)
把此乘积记作 C AB
例如
C 2 1
4 2
222 3
4
16
?
32
622 8 16 22
1 0
例
若
A
1
1
0 5
求AB.
1 3 1
2
0
4
0
B
1
3
1
3 2 1 2
4
1
1
1
解
因
A
aij
,B
34
bij
证 因为 H T (E 2 XX T )T ET 2( XX T )T E 2XX T H
所以H 是对称矩阵. HH T H 2 (E 2 XX T )2
E 4XX T 4( XX T )( XX T ) E 4XX T 4X ( X T X )X T E 4XX T 4XX T E
(3) (AB)( A)B A(B) (其中为常数)
(4) AE EA A
注 矩阵乘法不满足互换律,即 AB BA
例如
设
A
1
1
,
B
1
1
1 1
1 1
两个非零矩阵旳 乘积可能是零矩阵
则
第二章课件-1矩阵及其运算 山东建筑大学

从 i 市到 j市没有单向航线
0 1 1 1
A
aij
1 0 1
0 1 0
0 0 1
0
0 0
1
4
2
3Hale Waihona Puke 4例2 n个变量 x1, x2,xn 与 m 个变量 y1, y2,, ym 之间的关系式
y1 a11x1 a12 x2 a1n xn
y2
a21x1
a22x2
a2n
(ⅱ) ( AB ) = ( A )B = A( B ), (其中为常数) ;
(ⅲ) A( B + C ) = AB + AC, (B+C)A=BA+CA.
(5) 对于单位矩阵E, 容易验证
E m Amn Amn , Amn E n Amn .
或简记为 EA = AE = A.
可见单位矩阵 E 在矩阵乘法中的作用类似于数 1.
( 注意: X T X x12 x22 xn2 是一阶方阵,也就是一个数,
而 XX T 是 n 阶方阵).
证 H T (E 2XX T )T E T 2( XX T )T E 2XX T H 所以 H 是对称矩阵. HH T H 2 ( E 2 XX T )2 E 4XX T 4( XX T )( XX T )
那么 A 称为反对称矩阵 . 反对称矩阵的特点是:其元素以主对角线为对称轴的对应元素绝对
值相等,符号相反,且主对角线上的各元素均为零。
25
例7 设列矩阵 X ( x1, x2 , xn )T 满足 XT X 1, E 为 n 阶单位矩阵,
H E 2XX T , 证明 H 是对称矩阵, 且 HH T E.
规定 矩阵 A 与 B 的乘积 是一个 m n 矩阵 C (cij )mn ,
21矩阵的概念22矩阵的运算精品PPT课件

ka21 ta21
ka12 ta12
ka22 ta22
ka1n ta1n ka2n ta2n
kam1 tam1 kam2 tam2 kamn tamn
ka11
ka21
ka12
ka22
ka1n ta11
ka2n
ta21
ta12
ta22
ta1n
• (aij)m×n
• 特别地 当m=n时,
a11
A
a21
a12
a22
a1n a2n
an1 an2 ann
当m=1时, A a11 a12 a1n
a11
当n=1时,
A
a21
am1
称为n阶方阵 称为行矩阵
称为列矩阵
当m=n=1时,A a11 可视为普通数 a1来1 处理
ka11
kA
ka21
kam1
ka12 ka22
kam2
ka1n
ka2n
kaij
kamn
例如
A
3 2
2 1
0 1
则
2A
6 4
4 2
0 2
• 数乘的性质:
设A、B、O均为m×n矩阵,k、t为常数, 则
(1) k(A+B)=kA+kB (2) (k+t)A=kA+tA (3) (kt)A=k(tA)=t(kA) (4) 1A=A (5) 0A=O (6) 若k≠0, A≠O,则 kA≠O
ai1
am1
a12
ai 2
am2
a1s
ais
b11 b21
ams
bs1
矩阵及其运算课后习题答案(最新整理)

用数学归纳法证明:
当 k 2 时,显然成立. 假设 k 时成立,则 k 1时,
k
Ak 1
Ak
A
0
0
kk 1
k 0
k
(k 1) k 2 kk 1 k
2
0 0
1 0
0 1
k1 0 0
k 由数学归纳法原理知: Ak 0 0
kk 1
k 0
k(k 1) k2
2 kk 1
k
(k 1)k1
k 1 0
(k 1)k k1
2 (k 1)k1
k 1
9.设 A, B 为 n 阶矩阵,且 A 为对称矩阵,证明 BT AB 也是对称矩阵.
证明 已知: AT A
则
( ) ( ) BT AB T BT BT A T BT AT B BT AB
从而 BT AB 也是对称矩阵.
2 y3,
x3 4 y1 y2 5 y3,
y1 y2
3z1 z2 2z1 z3 ,
,
y3 z2 3z3,
求从 z1, z2 , z3 到 x1, x2 , x3 的线性变换.
解 由已知
x1 x2 x3
2 2 4
0 3 1
152
y1 y2 y2
2 2 4
0 3 1
y2 y2
故
y1 y2 y2
2 3 3
2 1 2
11 x1
53
x2 x3
7 6 3
4 3 2
9 7 4
y1 y2 y3
y1 y2
7x1 4x2 9x3 6x1 3x2 7x3
y3 3x1 2x2 4x3
2.已知两个线性变换
x1 x2
《矩阵及其运算 》课件

幂法
通过迭代计算矩阵A的幂 ,最终得到特征值和特征 向量。
反迭代法
利用已知的特征向量x, 通过反迭代计算得到对应 的特征值λ。
06
应用实例
在物理中的应用
线性变换
矩阵可以表示线性变换,如平移、旋转、缩放等,在物理中广泛应 用于描述物体运动和力的作用。
振动分析
矩阵可以用于分析多自由度系统的振动,通过矩阵表示系统的运动 方程,简化计算过程。
详细描述
矩阵乘法要求第一个矩阵的列数等于第二个矩阵的行数,并 且结果矩阵的行数等于第一个矩阵的行数,列数等于第二个 矩阵的列数。在计算过程中,对应元素相乘并求和,得到新 矩阵的一个元素。
矩阵的转置
总结词
矩阵的转置是将原矩阵的行变为列,列变为行的一种运算。
详细描述
矩阵的转置可以通过交换原矩阵的行和列得到,也可以通过计算元素的代数余 子式得到。转置后的矩阵与原矩阵的行列式值相等,但元素的位置发生了变化 。
《矩阵及其运算》PPT课件
目 录
• 矩阵的定义与性质 • 矩阵的运算 • 矩阵的逆与行列式 • 矩阵的秩与线性方程组 • 特征值与特征向量 • 应用实例
01
矩阵的定义与性质
矩阵的基本概念
矩阵的定义
矩阵是一个由数字组成的矩 形阵列,通常表示为二维数 组。
矩阵的元素
矩阵中的每个元素都有行标 和列标,表示其在矩阵中的 位置。
回带法
在消元过程中,每一步都需要回带, 以确保解的正确性。
解的判定
当系数矩阵的秩等于增广矩阵的秩时 ,线性方程组有唯一解;否则,无解 或有无数多解。
线性方程组的解的结构
解的表示
线性方程组的解可以表示为一个向量与自由变量 的线性组合。
第二章 矩阵及其运算

a11 b11 a12 b12 a1n b1n a 22 b22 a 2 n b2 n a b 21 21 a b a s 2 bs 2 a sn bsn s1 s1
称为 A 和 B 的和,记为
C A B.
批注
表示出来。
§2 矩阵的运算
矩阵的意义不仅在于把一些数据根据一定的顺序排列成 阵列形式, 而且还在于对它定义了一些有理论意义和实际意义 的运算,使它真正成为有用的工具。 一、矩阵的加法 1、定义 定义 设
A aij sn
a11 a 21 a s1 b11 b21 bs1
定义:设 A a ij
m s
是 m s 矩阵, B bij
s n
是 s n 矩阵,则定
义一个新的 m n 矩阵 C :
C cij mn
s
其中
cij ai1b1 j ai 2 b2 j aik bkj ail blj aik bkj
批注
(2) 结合律 (A) (A) ( ) A (3) 分配律 ( A B) A B
A A
(4) 若 A 为 n 阶矩阵,则有 A n A 此外,还容易得到:
0 A 0,
A (1) A
矩阵相加与数乘矩阵合起来统称为矩阵的线性运算。 例
矩阵的乘法;方阵的行列式;伴随矩阵; 逆矩阵的概念;求逆方法; 分块求逆方法。
矩阵乘法不满足交律以及由此的问题;矩阵可逆性的讨论;分块求逆 方法
讲授 习题课 答疑
教 学 内 容
第二章 矩阵及其运算
矩阵是将一组有序的数据视为 “整体量” 进行表述和运算, 使得问题简洁和易于了解本质。 矩阵不仅是解线性方程组的有 力工具, 而且是线性空间内线性变换的表现形式, 因此有关矩 阵的理论构成了线性代数的基本内容。 本章介绍矩阵的概念;矩阵的线性运算、矩阵乘法;逆矩 阵及矩阵的初等变换;分块矩阵及其运算等内容。 §1 矩阵 1、矩阵的概念
矩阵的运算及其运算规则

矩阵基本运算及应用201700060牛晨晖在数学中,矩阵是一个按照长方阵列排列的复数或实数集合。
矩阵是高等代数学中的常见工具,也常见于统计分析等应用数学学科中。
在物理学中,矩阵于电路学、力学、光学和量子物理中都有应用;计算机科学中,三维动画制作也需要用到矩阵。
矩阵的运算是数值分析领域的重要问题。
将矩阵分解为简单矩阵的组合可以在理论和实际应用上简化矩阵的运算。
在电力系统方面,矩阵知识已有广泛深入的应用,本文将在介绍矩阵基本运算和运算规则的基础上,简要介绍其在电力系统新能源领域建模方面的应用情况,并展望随机矩阵理论等相关知识与人工智能电力系统的紧密结合。
1矩阵的运算及其运算规则1.1矩阵的加法与减法1.1.1运算规则设矩阵,,则简言之,两个矩阵相加减,即它们相同位置的元素相加减!注意:只有对于两个行数、列数分别相等的矩阵(即同型矩阵),加减法运算才有意义,即加减运算是可行的.1.1.2运算性质满足交换律和结合律交换律;结合律.1.2矩阵与数的乘法1.2.1运算规则数乘矩阵A,就是将数乘矩阵A中的每一个元素,记为或.特别地,称称为的负矩阵.1.2.2运算性质满足结合律和分配律结合律:(λμ)A=λ(μA);(λ+μ)A =λA+μA.分配律:λ(A+B)=λA+λB.1.2.3典型举例已知两个矩阵满足矩阵方程,求未知矩阵.解由已知条件知1.3矩阵与矩阵的乘法1.3.1运算规则设,,则A与B的乘积是这样一个矩阵:(1) 行数与(左矩阵)A相同,列数与(右矩阵)B相同,即.(2) C的第行第列的元素由A的第行元素与B的第列元素对应相乘,再取乘积之和.1.3.2典型例题设矩阵计算解是的矩阵.设它为可得结论1:只有在下列情况下,两个矩阵的乘法才有意义,或说乘法运算是可行的:左矩阵的列数=右矩阵的行数;结论2在矩阵的乘法中,必须注意相乘的顺序.即使在与均有意义时,也未必有=成立.可见矩阵乘法不满足交换律;结论3方阵A和它同阶的单位阵作乘积,结果仍为A,即.1.3.3运算性质(假设运算都是可行的)(1) 结合律.(2) 分配律(左分配律);(右分配律).(3) .1.3.4方阵的幂定义:设A是方阵,是一个正整数,规定,显然,记号表示个A的连乘积.1.4矩阵的转置1.4.1定义定义:将矩阵A的行换成同序号的列所得到的新矩阵称为矩阵A的转置矩阵,记作或.例如,矩阵的转置矩阵为.1.4.2运算性质(假设运算都是可行的)(1)(2)(3)(4) ,是常数.1.4.3典型例题利用矩阵验证运算性质:解;而所以.定义:如果方阵满足,即,则称A为对称矩阵.对称矩阵的特点是:它的元素以主对角线为对称轴对应相等.1.5方阵的行列式1.5.1定义定义:由方阵A的元素所构成的行列式(各元素的位置不变),称为方阵A的行列式,记作或.1.5.2运算性质(1) (行列式的性质)(2) ,特别地:(3) (是常数,A的阶数为n)思考:设A为阶方阵,那么的行列式与A的行列式之间的关系为什么不是,而是?不妨自行设计一个二阶方阵,计算一下和.例如,则.于是,而2光伏逆变器的建模光伏并网逆变器是将光伏组件输出的直流电转化为符合电网要求的交流点再输入电网的关键设备,是光伏系统并网环节中能量转换与控制的核心。
4-3矩阵函数

k =1 ∞
设矩阵A (A),幂级数收敛半径为 幂级数收敛半径为R 设矩阵A的谱半径为ρ(A),幂级数收敛半径为R;则当 ρ(A)<R时,对应的矩阵幂级数是绝对收敛的,定义: (A)<R时 对应的矩阵幂级数是绝对收敛的,定义:
f ( A) = ∑ak A = a0 I + a1 A + a2 A +⋯+ ak A +⋯
k
∞
2k
∞ 1 而对于 (4) = ∑ zk , R = 1 1 − z k =0
( I − A) −1 = ∑ Ak , ∀ρ ( A) < 1 其对应的矩阵函数为
k =0
∞
(−1) k −1 k (5) ln(1 + z ) = ∑ z , R =1 k k =1
∞
其对应的矩阵函数为
(−1) k −1 k ln( I + A) = ∑ A , ∀ρ ( A) < 1 k k =1
−1
则
e −1 e −1 J −1 e = e
1 2
e −1 e e −1
∵ f (x) = sinx, λ0 = −1; f ′(x) = cosx, f (x) = −sinx
(2)
sin(−1) cos(−1) − 1 sin(−1) 2 sin J = sin(−1) cos(−1) sin(−1)
⋯ ⋱ ⋱ ⋱ ⋯
1 ⋯ 0 0 0
0 0 0 ⋯ 0 0 0 ⋱ ⋯ Hn = 0 ⋱ 0=0 ⋱ 0 ⋯ 0
f (J ) = f (λ0 )I + f ' (λ0 )(J − λ0I ) + f (λ0 )(J − λ0 I )
第二章矩阵及其运算

数乘矩阵与数乘行 列式的区别所在!!
23
第二章 矩阵及其运算
3 1 2 0 A= 1 5 7 9
2 4 6 8
7 5 2 4 B= 5 1 9 7
3 2 1 6
求满足关系式 A+2X=B 的矩阵 X (3A—2B) 三、矩阵的乘法
定义 3:设 A=( aij ) ms B =( bij ) sn 则乘积 AB=C=( cij ) mn
线性代数教案
课题
教学内容 教学目标 教学重点
第二章 矩阵及其运算 §2.1 矩阵 §2.2 矩阵的运算
矩阵的概念; 矩阵的运算;
明确矩阵概念的形成; 掌握矩阵的加法、数与矩阵的乘法、矩阵与矩阵的乘法; 会求矩阵的转置、方阵的行列式、共轭矩阵;
掌握矩阵定义及运算法则
教学难点 矩阵乘法
教学内容、 安排
矩阵:matrix 矩阵运算:matrix operations 矩阵的加法:matrix addition 数与矩阵相乘:scalar muctiplication 转置矩阵:transposd matrix
A
的乘积。即
kA=
k
aij
=
ka21
kam1
ka12 ka22
kam2
ka1n
ka2n
kamn
用数乘以 矩阵中 的每一个元素
由定义可知 –A=(-1) A
A – B = A+(-B) 数乘矩阵满足以下的运算律 1、结合律:(kl)A=k(lA)=l(kA) 2、交换律:kA=Ak 3、分配律:k(A+ B)=kA+kB 例1、 设
教学手段、
措施
第二章 矩阵及其运算

a2n xn
0,
(2)
am1x1 am2x2 amnxn 0,
称为n 元齐次线性方程组(system of homogeneous
linear equations). .
n 元线性方程组通常简称为线性方程组或方程组.
对于齐次线性方程组(2), x1=x2= … =xn=0 一 定是它的解,称为方程组(2)的零解(null solution);
其中bi 1 表示第 i 种货物的单价, bi 2 表示第 i 种货物的单件重量.
五、矩阵与线性变换
n 个变量 x1 , x2 , , x与n m 个变量 y1 , y2 , , y之m 间的
关系式
y1 a11 x1 a12 x2
y2 a21 x1 a22 x2
ym am1 x1 am2 x2
a11a12 a1n
0 a22
a2n
0 0
ann
a11 a1n1 a1n
a21
a2n1
0
ann 0
0
5. 形如 下面两个矩阵 的方阵称为下三角矩阵(lower triangular matrix).
a11 0 a21 a22
an1
an2
0 0
如果存在不全为零的数是(2)的解,则称为其非零
解(non-zerou solution).
非齐次方程组可能有解可能无解.
例如 x y 0,
(1)x y 2;
x (2)x
y y
0, 1,
x1 x2 0, (3)2x1 2x2
0,
x y 2; 3x1 3x2 0;
(1)有唯一解,(2)无解,(3)有无穷多解.
am1 am2
线性代数第二章矩阵及其运算

ann 0
0
5. 形如 下面两个矩阵 的方阵称为下三角矩阵(lower triangular matrix).
a11 0 a21 a22
an1
an2
0 0
0
0
ann
an1
0 a1n
a2n1
a2n
ann1 ann
6. 若方阵 A (aij )n 中 aij a ji , 则称为对称矩阵 (symmetric matrix). 即
一、线性方程组
定义1 设有 n 个未知数 m 个方程的线性方
程组
a11 x1 a12 x2 L a1n xn b1 ,
a21 x1 a22 x2 L LLL
a2n xn L
b2 ,
am1 x1 am2 x2 L amn xn bm .
(1)
其中aij 表示第i个方程第j个未知数的系数(coefficient), bi 是第i个方程的常数项(constant),i=1,2,…,m, j =1,2,…, n.
a11 b11
A
B
a21
b21
L
a12 b12 L a22 b22 L
LL
am1 bm1 am2 bm2 L
L
L
L
L
称为单位阵(unit
matrix),
记作 En . 0 0 L 1
4. 形如 下面两个矩阵 的方阵称为上三角矩阵(upper triangular matrix).
a11a12 0 a22
0 0
a1n
a2n
ann
a11 a1n1 a1n
a21
a2n1
0
a11 a12 L a1n
第2章 矩阵运算基础PPT课件

23
2.2.5 数组的除法:
用符号“./” 和“.\”表示。a、 b必须具有相同的阶数。a./b表 示a中元素分别除以b中的对应元 素。 a.\b表示b中元素分别除以a 中的对应元素。
24
>> a=[1 2 3]; >> b=[2 4 6]; >> c=a./b c=
2
40
3.求逆矩阵
>> X=[1 2 3 0; 5 6 0 8; 9 0 11 12; 0 14 15 16];
>> Y=inv(X)
Y=
0.2299 0.0908 0.0351 -0.0717
分类:
行向量 列向量
13
向量的构造
1.逐个输入
>>a=[1 3 9 10 15 16]
%采用空格和逗号分隔构成行向量
>>b=[1; 3; 9; 10; 15; 16] %采用分号隔开构成列向量
2.利用冒号表达式“:”生成向量
>>x=1:2:9
%初值=1,终值=9,步长=2
>>z=1:5
%初值=1,终值=5,默认步长=1
30 36 42 >> 1 2 3;-2 0 0; 1 0 1; -1 2 3];B=[-1 3; -2 2; 2 1],求C=A*6, >> A=[1 2 3;-2 0 0; 1 0 1; -1 2 3]
A=
123 -2 0 0 101 -1 2 3
2.2.3 数组的乘法 使用“ .* ”运算符,要求a、b两数组 必须具有相同的阶数,
a .* b表示a和b中对应元素之间相乘。
矩阵及其运算 ppt课件

aj1,aj2,…,ajs 正好是 AT的第 j 列,因此 cji 是 BTAT 的第 i 行第 j 列的元素。故
( AB )T = AT BT
6.方阵的行列式 由 n 阶方阵 A 的元素所构成的行列式(各元
素的位置不变),称为方阵 A 的行列式,记为 | A| 或 det A。 注意:行列式与方阵是两个不同的概念,且它 们的记号也是不同的。
∴ (AB)-1=B-1 A-1
第三节 矩阵的分块
本节来介绍一个在处理高阶矩阵时常用的
方法,即矩阵的分块。将矩阵A用若干条横线 与若干条纵线分成许多个小矩阵,每一个小矩
阵称为矩阵A的子块。以子块为元素的形式上 的矩阵称为分块矩阵。特别在运算中,把这些
小矩阵当做一个数来处理。
a11 a12 a13 a14
A11 A21 ... An1
A*
A12 ...
A22 ...
... ...
An 2 ...
A1n A2n ... Ann
称矩阵A的伴随矩阵,记为A* 伴 随 矩 阵 有 如 下 重 要 性 质 :
AA*A*A(detA)E
例 1设 A123T, B11 21 3, CAB ,
求 Cn
如果n 阶方阵如果满足主对角线上的元素全 为1,其余元素全为零,这样的 n 阶矩阵称为 n 阶单位矩阵。记作En 或 E。
如果n 阶方阵主对角线上的元素全为k,其 余元素全为零,这样的 n 阶矩阵称为 n 阶数量 矩阵。
二、矩阵的运算
1.矩阵的加法: 设有两个同型的 m×n 阶矩阵
A= (aij) 、B= (bij),则矩阵 A 与 B 的和记为 A+B,并规定
第二章 矩阵运算基础PPT课件

2.矩阵的四种创建方式
(1)直接输入法
最简单的建立矩阵的方法是在命令窗口从 键盘直接输入矩阵的元素。
具体方法如下: ①将矩阵的元素用方括号括起来; ②按矩阵行的顺序输入各元素; ③同一行的各元素之间用空格或逗号分隔; ④不同行的元素之间用分号分隔。
14
例2-3. 在命令窗口创建简单的数值函数。
a.冒号表达式可生成一个行向量,一般格式是: e1:e2:e3
其中e1为初始值,e2为步长,e3为终止值。 b.在MATLAB中,还可以用linspace函数产生行 向量。其调用格式为:
linspace(a,b,n) 其中,a和b分别是生成向量的第一个和最后一 个元素,n是元素总数。 显然,linspace(a,b,n)与a:(b-a)/(n-1):b等价。
②选中某些变量后,单击Open按钮,进入
变量编辑器,可以直接观察或修改变量中的具 8
体元素。
(2)命令窗口输入命令进行操作: ①clear命令用于删除MATLAB工作空间中
的变量。 ②who和whos这两个命令用于显示在
MATLAB工作空间中已经驻留的变量名清单 。
9
2.内存变量文件
MAT文件是MATLAB系统的二进制数据文件,用于保存系 统
③-ascii选项使文件以ASCII格式处理,省略该选项时文 件将以二进制格式处理。save命令中的-append选项控10 制将变量追加到MAT文件中。
2.1.4 MATLAB数学函数
MATLAB提供了许多数学函数,函数的变量规定为矩阵变
量,运算法则是将函数逐项作用于矩阵的元素上,因而运算
的结果是一个与自变量同维数的矩阵。
》z=(cos(abs(x+y))-
化学软件基础-第3章 第2节-3_矩阵数学运算

Q=orth(A)
-0.1409 -0.3439 -0.5470 -0.7501
0.8247 0.4263 0.0278 -0.3706
2019/10/29
矩阵数学运算
12/66
1.1.7 矩阵的简化梯形形式
矩阵A的简化梯形形式:
单位矩阵。
Ir 0
* *
,其中Ir为r阶
rref( ):计算矩阵的简化梯形形式的函数。
例 求矩阵A=[1 2 3 4;1 1 5 6;1 2 3 6;1 1 5 7]的简化梯形形式。
具体代码序列如下: A=[1 2 3 4;1 1 5 6;1 2 3 6;1 1 5 7]; R=rref(A)
2019/10/29
矩阵数学运算
运行结果如下:
R= 1070 0 1 -2 0 0001 0000
矩阵数学运算
20/66
1.3.1 Cholesky分解
对于稀疏矩阵,MATLAB中用函数cholinc( ) 计算不完全Cholesky分解,具体用法如下: R = full(cholinc(sparse(X), DROPTOL)), 其中DROPTOL为不完全Cholesky分解的丢失 容限; R = full(cholinc(sparse (X),‘0’)) , 完 全 Cholesky分解。
det():计算矩阵的行列式的函数。
2019/10/29
矩阵数学运算
8/66
1.1.3 矩阵的行列式
例 求矩阵A=[1 2 3;4 5 6;7 8 9]的行列式。
具体代码序列如下: A=[1 2 3;4 5 6;7 8 9]; A_det=det(A)
运行结果如下: ans=
0
(汇总)矩阵及其运算.ppt

试求:工厂在一年内向各商店发送货物的数量.
1801.h0,
13
解:工厂在一年内向各商店发送货物的数量
a11
a
21
a12 a22
a13 a23
a14 a24
a31 a32 a33 a34
c111 c 2 11
c1122 c 2222
c1133 c 2233
c1144 c 2244
c311 c3322 c3333 c3344
23
解: a11 a12 a13 a14 a21 a22 a23 a24
a31 a32 a33 a34
b 11 b 12 b 21 b 22 b 31 b 32 b 41 b 42
其中aij 表示工厂向第 i 家商店 其中bi 1 表示第 i 种货物的单价,
发送第 j 种货物的数量.
bi 2 表示第 i 种货物的单件重量.
那么称矩阵 A 与 B 相等,记作 A = B .
1801.h0,
11
0 0 0 0
例如
0
0
0 0
0 0
0 0
0 0 0 0.
0
0
0
0
注:不同型的零矩阵是不相等的. 矩阵之间不能比较大小.
1801.h0,
12
二、矩阵的运算
例3 某工厂生产四种货物,它在上半年和下半年向三家商店
发送货物的数量可用数表表示:
1801.h0,
5
2. 矩阵的定义
定义1 由 m×n 个数 a ij( i 1 ,2 , ,m ; 排j 成1 的,2 ,m 行,n ) n 列的 数表
a11 a12
a1n
a 21 a 22
a2n
第二章 矩阵及其运算总结

§1 矩阵及其运算一、矩阵的基本概念(必考)矩阵,是由m*n个数组成的一个m行n列的矩形表格,通常用大写字母表示,组成矩阵的每一个数,均称为矩阵的元素,通常用小写字母其元素表示,其中下标都是正整数,他们表示该元素在矩阵中的位置.比如,或表示一个m*n 矩阵,下标ij 表示元素位于该矩阵的第行、第列.元素全为零的矩阵称为零矩阵. 特别地,一个m*1矩阵,也称为一个 m维列向量;而一个 1*n矩阵B=(b1,b2,…,bn),也称为一个 n维行向量.当一个矩阵的行数m与烈数n 相等时,该矩阵称为一个 n阶方阵.若一个n阶方阵的主对角线上的元素都是,而其余元素都是零,则称为单位矩阵,记为,即: .单位矩阵与实数中的‘1’的运算相近.如一个阶方阵的主对角线上(下)方的元素都是零,则称为下(上)三角矩阵是一个阶下三角矩阵.例题:1.A既是上三角矩阵,又是下三角矩阵,则A必是对角矩阵2.两矩阵既可相加又可相乘的充要条件是两矩阵为同阶方阵.3.A=(l≠n),则A的主对角线上个元素的和为 (设矩阵为2行3列的矩阵,找规律)二、矩阵的运算1、矩阵的加法:如果是两个同型矩阵(即它们具有相同的行数和列数,比如说),则定义它们的和仍为与它们同型的矩阵(即),的元素为和对应元素的和,即:.给定矩阵,我们定义其负矩阵为: .这样我们可以定义同型矩阵的减法为: .由于矩阵的加法运算归结为其元素的加法运算,容易验证,矩阵的加法满足下列运算律:(1)交换律:; (2)结合律:;(3)存在零元:;(4)存在负元:.2 、数与矩阵的乘法的运算律:(1);(2);(3);(4) .3 、矩阵的乘法(必考)设为距阵,为距阵,则矩阵可以左乘矩阵(注意:距阵的列数等与矩阵的行数),所得的积为一个距阵,即,其中,并且(即左行乘右列)矩阵的乘法满足下列运算律(假定下面的运算均有意义):(1)结合律:; (2)左分配律:;(3)右分配律:;(4)数与矩阵乘法的结合律:;(5)单位矩阵的存在性:.若为阶方阵,则对任意正整数,我们定义:,并规定:由于矩阵乘法满足结合律,我们有:, .注意:矩阵的乘法与通常数的乘法有很大区别,特别应该注意的是:(必考重要)(1)矩阵乘法不满足交换律:一般来讲即便有意义,也未必有意义;倘使都有意义,二者也未必相等.正是由于这个原因,一般来讲,在实数中的某些运算不再适应,如,,反过来,这些公式成立的条件又恰是A、B 可逆.例:A,B,C 是同阶矩阵,A ≠0,若AB=BC,必有B=C,则A满足可逆(2)两个非零矩阵的乘积可能是零矩阵,即未必能推出或者. 同理,A ≠0,B ≠0,而AB却肯能等于0.例题:(选择题5、6)(3)矩阵的乘法不满足消去律:如果并且,未必有 .4 、矩阵的转置:定义:设为矩阵,我们定义的转置为一个矩阵,并用表示的转置,即:.矩阵的转置运算满足下列运算律:(1);(2);(3);(4) (重要).5、对称矩阵:n 阶方阵若满足条件:,则称为对称矩阵;若满足条件:,则称为反对称矩阵.若设,则为对称矩阵,当且仅当对任意的成立;为反对称矩阵,当且仅当对任意的成立.从而反对称矩阵对角线上的元素必为零.对称矩阵具有如下性质:(1)对于任意矩阵,为阶对称矩阵;而为阶对称矩阵;(2)两个同阶(反)对称矩阵的和,仍为(反)对称矩阵;(3)如果两个同阶(反)对称矩阵可交换,即,则它们的乘积必为对称矩阵,即.运算性质:1) (2) (3)(4) (5)三、逆矩阵1.定义 对于n 阶矩阵A ,如果存在n 阶矩阵B ,使得E BA AB ==.则A 称为可逆矩阵或非奇异矩阵.B 称为A 的逆矩阵,.由定义可得,A 与B 一定是同阶的,而且A 如果可逆,则A 的逆矩阵是唯一的.这是因为(反证法),如果1B 、2B 都是A 的逆矩阵,则有E A B AB ==11,E A B AB ==22,那么22212111)()(B EB B A B AB B E B B =====所以逆矩阵是唯一的.我们把矩阵A 的逆矩阵记作1-A .逆矩阵有下列性质: (1)如果A 可逆,则1-A 也可逆,且A A =--11)(.由可逆的定义,显然有A 与1-A 是互逆的. (2)如果A 、B 是两个同阶可逆矩阵,则)(AB 也可逆,且111)(---=A B AB .(必考重点) 这是因为 E A A AEA ABB A A B AB =⋅===------111111)())((E B B EB B B A A B AB A B ====------111111)())((,所以111)(---=A B AB .(必考重点)这个结论也可以推广到有限个可逆矩阵想乘的情形. (3)可逆矩阵A 的转置矩阵T A 也是可逆矩阵,且T T A A )()(11--=.这是因为E E A A A A T T TT===--)()(11,E E AA A A T T T T ===--)()(11所以 T TA A )()(11--=.(4)如果A 是可逆矩阵,则有11--=A A .这是因为E AA=-1,两边取行列式有 11=⋅-A A ,所以111--==A AA . 矩阵可逆的条件(1)n 阶方阵A 可逆的充分必要条件是| A | ≠ 0(也即r (A )= n );(2)n 阶方阵A 可逆的充分必要条件是A 可以通过初等变换(特别是只通过初等行(列)变换)化为n 阶单位矩阵;(3)n 阶方阵A 可逆的充分必要条件是A 可以写成一些初等矩阵的乘积;(4)n 阶方阵A 可逆的充分必要条件是A 的n 个特征值不为零;(5)对于n 阶方阵A ,若存在n 阶方阵B 使得AB = E (或BA = E ),则A 可逆,且A -1= B. 逆矩阵的有关结论及运算必考 ——求法方法1 定义法:设A 是数域P 上的一个n 阶方阵,如果存在P 上的n 阶方阵B ,使得AB = BA= E ,则称A 是可逆的,又称B 为A 的逆矩阵.当矩阵A 可逆时,逆矩阵由A 惟一确定,记为A -1.例1:设A 为n 阶矩阵,且满足22A - 3A + 5E = 0,求A -1.【解】22 2 -12A - 3A + 5E = 02A - 3A = - 5E23-A - A =E 552323A (- A - E) = - A - E = E555523A A = - A - E55∴∴∴∴可逆且方法 2 伴随矩阵法:A -1= 1|A|A*.定理n 阶矩阵A = a ij 为可逆的充分必要条件是A 非奇异.且11211122221121n n nnnn A A A A A A A A A A A -⎛⎫ ⎪ ⎪=⎪ ⎪⎝⎭其中A ij 是|A|中元素a ij 的代数余子式.矩阵112111222212n n nnnn A A A A A A A A A ⎛⎫ ⎪ ⎪⎪ ⎪⎝⎭称为矩阵A 的伴随矩阵,记作A*,于是有A -1=1|A|A*. 注 ①对于阶数较低(一般不超过3阶)或元素的代数余子式易于计算的矩阵可用此法求其逆矩阵.注意A* = (A ji )n ×n 元素的位置及符号.特别对于2阶方阵11122122a a A a a ⎛⎫= ⎪⎝⎭,其伴随矩阵22122111*a a A a a -⎛⎫=⎪-⎝⎭,即伴随矩阵具有“主对角元素互换,次对角元素变号”的规律.②对于分块矩阵A B C D ⎛⎫⎪⎝⎭不能按上述规律求伴随矩阵.例2:已知101A=210325⎛⎫ ⎪ ⎪ ⎪--⎝⎭,求A -1.【解】 ∵| A | = 2 ≠ 0 ∴A 可逆.由已知得111213212223313233A = - 5, A = 10, A = 7A = 2, A = - 2, A = - 2A = - 1, A = 2, A = 1 , A -1= 1|A| A* = 5115212211022511272171122⎛⎫-- ⎪--⎛⎫ ⎪⎪-=- ⎪ ⎪ ⎪ ⎪-⎝⎭- ⎪⎝⎭方法3 初等变换法:注 ①对于阶数较高(n ≥3)的矩阵,采用初等行变换法求逆矩阵一般比用伴随矩阵法简便.在用上述方法求逆矩阵时,只允许施行初等行变换.②也可以利用1E A E A -⎛⎫⎛⎫−−−−→⎪ ⎪⎝⎭⎝⎭初等列变换求得A 的逆矩阵. ③当矩阵A 可逆时,可利用求解求得A -1B 和CA -1.这一方法的优点是不需求出A 的逆矩阵和进行矩阵乘法,仅通过初等变换即求出了A -1B 或CA -1.例3::用初等行变换求矩阵231A 013125⎛⎫⎪= ⎪ ⎪⎝⎭的逆矩阵.【解】()231100125001125001A E 01301001301001301012500123110000611212500112500101301001301001910211100166311341006631310122111001663⎛⎫⎛⎫⎛⎫ ⎪ ⎪ ⎪=→→ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪--⎝⎭⎝⎭⎝⎭⎛⎫ ⎪⎛⎫⎪ ⎪→→ ⎪ ⎪ ⎪ ⎪---⎝⎭-- ⎪⎝⎭⎛--→---⎝⎫⎪⎪⎪⎪ ⎪⎪ ⎪⎭1113410066313A 010********1663-⎛⎫--⎪ ⎪ ⎪=- ⎪ ⎪ ⎪-- ⎪⎝⎭故 方法4 用分块矩阵求逆矩阵:设A 、B 分别为P 、Q 阶可逆矩阵,则:1111111111111111A A 000B 0C O A A A CB A O A O BD B O B B DA B B O A O B B O AO ----------------⎛⎫⎛⎫⎛⎫-⎛⎫⎛⎫⎛⎫=== ⎪ ⎪ ⎪ ⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭⎝⎭⎝⎭⎝⎭⎛⎫⎛⎫= ⎪ ⎪⎝⎭⎝⎭例4:已知0052002112001100A ⎛⎫⎪ ⎪=⎪-⎪⎝⎭,求A -1.【解】 将A 分块如下:12005200211200110O A A A O ⎛⎫ ⎪ ⎪⎛⎫⎪== ⎪⎪⎝⎭- ⎪ ⎪⎝⎭其中 125212,2111A A -⎛⎫⎛⎫== ⎪ ⎪⎝⎭⎝⎭可求得 1*1*1122121212111,2511||||3A A A A A A ---⎛⎫⎛⎫==== ⎪ ⎪--⎝⎭⎝⎭ 从而11211120033110331200250O A A A O ---⎛⎫ ⎪ ⎪ ⎪-⎛⎫ ⎪== ⎪⎪⎝⎭ ⎪ ⎪- ⎪-⎝⎭方法5 恒等变形法求逆矩阵:有些计算命题表面上与求逆矩阵无关,但实质上只有求出矩 阵的逆矩阵才能算出来,而求逆矩阵须对所给的矩阵等式恒等变 形,且常变形为两矩阵的乘积等于单位矩阵的等式.例8 已知,且,试求.解 由题设条件得3.伴随矩阵 如果n 阶矩阵A 的行列式0≠A ,则称A 是非奇异的(或非退化的).否则,称A 是奇异的(或退化的).(n 阶矩阵A 可逆的充要条件是:|A|≠0)设n n ij a A ⨯=)(,ij A 是A 中元素)21(n j i a ij ,,,, =的代数余子式.矩阵 ⎪⎪⎪⎪⎪⎭⎫⎝⎛=nn n n n n A A A A A A A A A A 212221212111*(顺序变化,重点)称为A 的伴随矩阵. 矩阵n n ij a A ⨯=)(为可逆矩阵的充分必要条件是A 为非奇异矩阵,并且当A 可逆时,有*11A AA =-,伴随矩阵 例1. 已知矩阵⎪⎪⎪⎭⎫ ⎝⎛---=313132121A 判断A 是否可逆,如果可逆,求1-A .解: 因为01313132121≠=---=A ,所以A 可逆.又.13221)1(11211)1(;11312)1(71321)1(;63311)1(53112)1(;11332)1(93312)1(;83113)1(333323321331322322221221311321121111=---==-==---=-=--=-=--=-=---==--==--==---=+++++++++A A A A A A A A A所以 ⎪⎪⎪⎭⎫⎝⎛---==-1711691581*1A A A 四、分块矩阵一、分块矩阵的概念对于行数和列数较高的矩阵, 为了简化运算,经常采用分块法,使大矩阵的运算化成若干小矩阵间的运算,同时也使原矩阵的结构显得简单而清晰. 具体做法是:将大矩阵用若干条纵线和横线分成多个小矩阵. 每个小矩阵称为A 的子块, 以子块为元素的形式上的矩阵称为分块矩阵.矩阵的分块有多种方式,可根据具体需要而定注:一个矩阵也可看作以n m ⨯个元素为1阶子块的分块矩阵. 二、分块矩阵的运算分块矩阵的运算与普通矩阵的运算规则相似. 分块时要注意,运算的两矩阵按块能运算,并且参与运算的子块也能运算,即,内外都能运算.1. 设矩阵A 与B 的行数相同、列数相同,采用相同的分块法, 若,,11111111⎪⎪⎪⎭⎫⎝⎛=⎪⎪⎪⎭⎫ ⎝⎛=st s t st s t B B B B B A A A A A其中ij A 与ij B 的行数相同、列数相同, 则.11111111⎪⎪⎪⎭⎫ ⎝⎛++++=+st st s s t t B A B A B A B A B A2.设,1111⎪⎪⎪⎭⎫ ⎝⎛=st s t A A A A Ak 为数, 则.1111⎪⎪⎪⎭⎫ ⎝⎛=st s t kA kA kA kA kA 3.设A 为l m ⨯矩阵, B 为n l ⨯矩阵, 分块成,,11111111⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎭⎫ ⎝⎛=tr t r st s t B B B B B A A A A A其中pt p p A A A ,,,21 的列数分别等于tq q q B B B ,,,21 的行数, 则,1111⎪⎪⎪⎭⎫ ⎝⎛=sr s r C C C C AB 其中).,,2,1;,,2,1(1r q s p B A C t k kqpk pq ===∑=4. 分块矩阵的转置设,1111⎪⎪⎪⎭⎫ ⎝⎛=st s t A A A A A则.1111⎪⎪⎪⎪⎭⎫ ⎝⎛=T st T tT s T TA A A A A 5. 设A 为n 阶矩阵, 若A 的分块矩阵只有在对角线上有非零子块, 其余子块都为零矩阵, 且在对角线上的子块都是方阵, 即⎪⎪⎪⎪⎪⎭⎫⎝⎛=s A O A O A A21, 其中),,2,1(s i A i =都是方阵, 则称A 为分块对角矩阵.分块对角矩阵具有以下性质:(1) 若 ),,2,1(0||s i A i =≠,则0||≠A ,且|;|||||||21s A A A A =(2) .112111⎪⎪⎪⎪⎪⎭⎫⎝⎛=----s A O A O A A(3) 同结构的对角分块矩阵的和、差、积、商仍是对角分块矩阵. 且运算表现为对应子块的运算。
第2章矩阵运算基础

conjugate →共轭 eigenvalue →特征值
exponential→指数的 eigenvector →特征向量
logarithm →对数
modulus →模数
unitary matrix→酉矩阵
phase →
→ 第2章矩阵o运rt算h基o础gonal
1
第2章 矩阵运算基础
矢量:一行或一列元素
A2=A([4,1],:) %提取第4,1行的元素,注意先后
A([1,3],[2,4])=0 %第1,3行;第2,4列的元素置零
D=A([1,3,2,1,3],[3,2,1,3,2,1]) %扩充后传递给D
第2章矩阵运算基础
10
➢ 单下标标识,元素排序:第 A ( 1 ) 1
1列第1行元素,第1列第2行元 素…第1列最后1行元素,第2 列第1行元素,第2列第2行元 素…第2列最后1行元素…如
B=[2,3,4;1,2,5;7,9,2]; C=[3,4,0;2,3,0;0,0,3]; A2=B+C*i D=[]; %[]可以赋给矩阵的某一块,使之为空
第2章矩阵运算基础
4
2、编辑器(Matrix Editor)创建:当要 建立较大的矩阵时使用
➢预先定义变量 ➢打开工作空间浏览器 ➢打开矩阵编辑器 ➢改变元素值 ➢改变矩阵维数
a=[1 2 3]; b=[4 5 6]; c=a.^b
【例2-12】数组a为[1 2 3],求数组的幂c=a.^2。 a=[1 2 3]; c=a.^2
【例2-13】数组a为[1 2 3],求数组的幂运算
c=2.^a。
a=[1 2 3];
c=2.^a
第2章矩阵运算基础
21
7、矩阵的转置 a' 或 a. ' a': 矩阵a的共轭转置
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三第三节矩阵基本函数运算与矩阵元素的提取(第二章)一、矩阵基本函数运算此运算是矩阵运算中最实用的部分,其基本命令如下:命令集9 矩阵的大小、行列式、逆、特征值、秩、迹、范数size(A) 给出包含A的维数的一个行向量.在这个返回向量中的第一个元素是行数,随后是列数.[ m,n ]=size(A) 给出A的维数、m行数和n列数,即两个标量.length(x) 给出一个向量的长度,即x分量个数.sum(A) 若A是矩阵,给出一个行向量,其每个分量表示A相应的列和;若A是向量,给出此向量的分量和.det(A) 求矩阵A的行列式.eig(A) 求包含矩阵A的特征值的向量.[X,D]=eig(A) 求包含矩阵A的特征值对应的对角阵D和以相应特征向量为列的矩阵.inv(A)或A ^ (-1) 求矩阵A的逆矩阵.rank(A) 求矩阵A的秩.trace(A) 求矩阵A的迹(对角线元素之和).norm(A,1) 矩阵A的1—范数或列和范数,定义如下.norm(A,2) 矩阵A的2—范数.norm(A,inf) 矩阵A的∞—范数.norm(x,1) 向量x的1—范数或列和范数,定义如下.norm(x,2) 向量x的2—范数.norm(x,inf) 向量x的∞—范数.范数定义如下:设'12(,,,)n x x x x =,()ij n m A a ⨯=,则相应范数定义如下11n i i x x ==∑;2x =;max i ix x ∞= 11max n ij j i A a ==∑,1max nij i j A a ∞==∑,2A'A i A λ=,其中为的最大特征值 二、矩阵元素的提取在MATLAB 中还有利用已存在的矩阵建立新矩阵的命令.以下假设矩阵 A 是m ×n 的矩阵,x 是个有n 个元素的向量.1. 对角阵与三角阵的生成命令集10diag(A) 生成一个由矩阵A 主对角线元素组成的列向量.主对角线总是从矩阵左上角开始.对于方阵来说它结束于矩阵的右下角.diag(x) 生成一个n 维的方阵,它的主对角线元素值取自向量 x ,其余元素的值都为0.diag(A , k) 生成一个由矩阵A 第k 条对角线的元素组成的列向量. k= 0为主对角线;k< 0为下第k 对角线;k> 0为上第k 对角线.diag(x , k) 生成一个(n+ a b s (k) )×(n+ a b s (k) )维的矩阵,该矩阵的第k条对角线元素取自向量x ,其余元素都为零.关于参数k 可参考上个命令.triu(A) 生成一个和A 大小相同的上三角矩阵.该矩阵的主对角线及以上元素取自A 中相应元素,其余元素都为零.triu(A , k) 生成一个和A 大小相同的上三角矩阵.该矩阵的第k 条对角线及以上元素取自A 中相应元素,其余元素都为零.命令t r i u ( A , 0 )等同于命令t r i u ( A ).tril(A)生成一个和A大小相同的下三角矩阵.该矩阵的主对角线及以下元素取自A中相应元素,其余元素都为零.tril(A , k) 生成一个和A大小相同的下三角矩阵.该矩阵的第k条对角线及以下元素取自A中相应元素,负数k表示主对角线下的对角线.其余元素都为零.命令t r i l ( A , 0 )等同于命令t r i l ( A ). 2. 向量和子矩阵的生成在MATLAB中可以使用冒号‘:’来代表一系列数值.有时也使用它来定义一个子矩阵.命令集11i : k创建从i开始、步长为1、到k结束的数字序列,即i ,i+1, i+2, . . . , k .如果i>k,MATLAB则返回一个空矩阵,也就是[ ].数字i和k不必是整数,该序列的最后一个数是小于或等于k.i : j : k创建从i开始、步长为j、到k结束的数字序列,即i, i+j, i+ 2j, . . .,k .对于j= 0,则返回一个空矩阵.数字i、j和k不必是整数,该序列的最后一个数是小于或等于k.linspace(a , b)在区间[a, b]上创建一个有1 0 0个元素的向量,这1 0 0个数把整个区间线性分隔.其中a是第一个元素,b是最后一个.linspace(a, b, n)在区间[a, b]上创建一个有n个元素的向量.这个命令和冒号表示形式相近,但是它直接定义了数据的个数,其步长为(b-a)/(n-1) .命令集12 定义子阵A ( i , j )返回矩阵A中第ij元素的值.A ( : , j )返回矩阵A中第j列列向量.A ( i , : )返回矩阵A中第i行行向量.A ( : , j : k )返回由矩阵A中的第j列,第j+ 1列,直到第k列列向量组成的子阵.A ( i : k , : )返回由矩阵A中的第i行,第i+ 1行,直到第k行行向量组成的子阵.A ( i : k , j : l ) 返回由二维矩阵A 中的第i 行到第k 行行向量和第j 列到第l 列列向量组成的子阵.A ( : ) 将矩阵A 中的每列合并成一个长的列向量.A(j:k) 返回一个行向量,其中的元素为A ( : )中的从第j 个元素到第k 个元素.A([j1 j2 . . . ] ) 返回一个行向量,其中的元素为A ( : )中的第j1、j2 元素. A(:,[j1 j2 . . .] ) 返回矩阵A 的第j1列、第j2列等的列向量.A([i1 i2. . . ] : , ) 返回矩阵A 的第i1行、第i2行等的行向量. A([i1 i2. . . ] , [j1 j2. . . ] ) 返回矩阵第i1行、第i2行等和第j1列、第j2列等的元素.二、矩阵元素的增减在MATLAB 中可以通过增加元素、行和列将一个矩阵或者向量进行扩展.由于MATLAB 可以自动地改变矩阵的大小,所以使用已存在的矩阵的一部分来创建一个新矩阵是很容易的这在许多应用中都很有用.从已存在的矩阵中建立一个矩阵就和定义一个新矩阵一样.元素用空格或逗号分隔,行用分号或回车分隔. ■ 例1 假设下列矩阵已经定义为:()()125611,,,,13143412A B x y z ⎛⎫⎛⎫⎛⎫= = =9 10 = = ⎪ ⎪ ⎪ 7 8⎝⎭⎝⎭⎝⎭(a) 有几种方式可以将向量x 扩展成1×4.假设想要的新向量是:xnew=(9 10 0 5)下列的三种方法都可以给出想要的结果:① xnew=x; xnew(3)=0;xnew(4)=5; ② xnew=[x 0 5]; ③ t=[0 5]; xnew=[x t];(b) 以下两种方法可以对矩阵A扩展一个新行,如向量z:①Anew1=[A ; z] , ②Anew1=[A ; [13 14]] .它们在屏幕上显示的结果如下:Anew1=1 22 413 14有时还可以对矩阵添加多个新行:>> Anew2=[A;x;z;[0 0]](c) 对矩阵A扩展一个新列,如y,可以这样做:>> Anew3=[A y ] 或者>> Anew3=[A [11;12] ] (d) 对矩阵A扩展一个矩阵的操作是相似的,输入命令:>> Anew4=[A; B ] , >> Anew5=[A B ]对于Anew4来说,它的列数一定等于矩阵A和B的列数;而对于Anew5来说,它的行数一定等于矩阵A和B的行数.(e) 改变矩阵的元素①>>A(3,3)=15 矩阵A的(3,3)元素变为15②>>A(2,:)=[1 0] 矩阵A的第2行变为[1 0]③>>A(2,:)=[ ] 矩阵A变为一个行向量(f) 为了生成规则的矩阵块可以下列的方式使用命令repmat.■例2①>>repmat([1 0; 0 1],3,3) 返回一个由[1 0; 0 1]组成的6阶矩阵②>>repmat([1 0],1,5)得到:返回一个由[1 0]组成的10维行向量③如果要创建一个所有元素都是同一个值的矩阵,可以使用命>>repmat(42,[2 2]) 返回一个由42组成的2阶矩阵第四节字符串(第二章)在M AT L A B中可能会遇到对字符和字符串的操作.字符串能够显示在屏幕上,也可以用来构成一些命令,这些命令在其他的命令中用于求值或者被执行.一个字符串是存储在一个行向量中的文本,这个行向量中的每一个元素代表一个字符.实际上,元素中存放的是字符的内部代码,也就是ASCII码.当在屏幕上显示字符变量的值时,显示出来的是文本,而不是ASCII数字.由于字符串是以向量的形式来存储的,所以可以通过它的下标对字符串中的任何一个元素进行访问.字符矩阵也可以这样,但是它的每行字符数必须相同.一、输入格式MATLAB中的字符串用单引号来定义:Name Of Variable ='text'这里的text 可以是字母、数字和特殊字符(a)简单的分配方法,如name ='John Smith',在屏幕上就会有如下显示:name =John Smith(b)分配一个字符.如果(a)中变量name已存在,令name (3)='a',则会给出:name =Jo a n Smith(c)将上例中的字符串name的元素前后互换位置,可以输入:for i=length(name):-1:1enam(i)=name(length(name)+1-i);endenam下面显示出字符串eman的值:eman =htimS naoJ(d)在字符串中用两个单引号来表示一个单引号:whoscat='Joan"s cat'显示结果为:whoscat =Joan's cat(e) 字符串的组成可以象数字矩阵一样:>>name1='Joan'; name2='John' ;heart='is in love with';>>sentence=[name1,' ',heart, ' ', name2]显示的结果为:sentence=Joan is in love with John(f) 冒号表达式的使用和在数字矩阵中的使用情况一样:>>name='Charles Johnson';firstname= name(1:7)firstname =Charles二、字符串求值MATLAB命令可以以字符串的形式进行输入和存储.这些命令字符串通过eval命令来求值.命令集13字符串求值eval (str)执行st 中包含的MATLAB命令并返回结果.eval(str1, str2)执行str1中的MATLAB命令,如果没有错误就和执行eval(str1)一样;如果在对str1求值中第一个字符串是一个错误,则对字符串str2进行求值,给出一个错误信息或者其他内容.g = inline (str ,arg1, arg2) 从字符串str中建立一个叫内联的函数g,如存储在工作内存中的函数,可以用g (val1 ,val2 )来调用.函数中参数的名字可以在字符串arg1,arg2,中给出,如果没有给出,MATLAB将从str中找出小写字母作为参数的名字.■例3>>b=[1 2 3];k=[2 2 2 ];x=[1.2 1.5 1.2];str1='b.* sin(k.*x)';>>y=eval(str1)y=0.6755 0.2822 2.0264>>g=inline('3*sin(x)+5*cos(y)','x','y');g(pi,2*pi)ans=5练习题1. 建立新矩阵 已知 (5)A magic =,求① (),(()),((),2),(,2),(,2)diag A diag diag A diag diag A diag A diag A - ② (),(),(,1),(,2),(,2)triu A tril A triu A triu A tril A - -③ (3,2),(:,2),(4,:)A A A④ (2:3,3:4),(:),(:,:)A A A2. 计算下列各题,已知(4)A magic =,(1234)x =① A 的行和、列和,A 的迹、秩,A 的大小② A 的特征值、特征向量及1A A - ,③ 12,,A A A ∞④ 12,,x x x ∞3. 已知(4)A magic =,(4)B ones =,'(1234),(5678)x y = = ,建立下列矩阵:① 在A 的左边增加一列y ,A 的右边增加一列y ;② 在A 的上面增加一行x ,A 的下面增加一行x ;③ 在A 的左边增加矩阵B 变为矩阵C ,A 的下面增加矩阵B 变为矩阵D ;④ 由矩阵D 的第1、2、5、8行组成矩阵F ;由矩阵C 的第1、3、5、7列组成矩阵G ;⑤ 由矩阵D 的第1、2、5、8行及C 第1、3、5、7列组成矩阵H ; ⑥ 删除C 的第二行,删除D 的第三列 ;第3章 MATLAB 程序设计Matlab 作为一种广泛应用于科学计算的工具软件,不仅具有强大的数值计算能力和丰富的绘图功能;可以人机交互式的命令行的方式工作;作为一种高级语言,同时也可以与 C 、FORTRAN 等高级语言一样进行程序设计.利用 Matlab 的程序控制功能,将相关 Matlab 命令编成程序存储在一个文件中(M 文件),然后在命令窗口中运行该文件,Matlab 就会自动依次执行文件中的命令,直到全部命令执行完毕. ■ 例1 用 mesh 绘制半径为 3 的球命令行方式: 编程方式:新建一个M 文件 qiu.m 如下:保存后,在命令窗口输入 qiu ,即可执行该 M 文件.>> u=[0:pi/60:2*pi];>> v=[0:pi/60:pi];>> [U,V]=meshgrid(u,v);>> R=3;>> X=R*sin(V).*cos(U);>> Y=R*sin(V).*sin(U);>> Z=R*cos(V);>> mesh(X,Y,Z);>> axis equal; u=[0:pi/60:2*pi]; v=[0:pi/60:pi]; [U,V]=meshgrid(u,v); R=3; X=R*sin(V).*cos(U); Y=R*sin(V).*sin(U); Z=R*cos(V); mesh(X,Y,Z); axis equal;第一节M 文件一、M文件介绍●用Matlab 语言编写的程序称为M 文件●M 文件以.m 为扩展名●M 文件是由若干Matlab 命令组合在一起构成的,它可以完成某些操作,也可以实现某种算法●文件的命名规则与变量相同!文件名应尽量与程序要表达的意义相符合,以方便今后调用.(如例1)二、M文件的建立、打开与保存M文件是文本文件,可以用任何文本编辑器来建立和编辑,通常使用Matlab自带的M文件编辑器.①新建一个M文件●菜单操作( Fil e→New→M-File )●命令操作( edit M 文件名)●命令按钮( 快捷键)②打开已有的M 文件●菜单操作( File →Open )●命令操作( edit M 文件名)●命令按钮( 快捷键)●双击M文件(在当前目录窗口)③保存M 文件●菜单操作( File →Save )●命令按钮( 快捷键)三、M 文件分类(根据调用方式的不同)●Script:脚本文件/命令文件(可以直接运行的M文件)命令文件就是命令行的简单叠加,matlab会自动按顺序执行文件中的命令.这样就解决了用户在命令窗口中运行许多命令的麻烦,还可以避免用户做许多重复性的工作.(如例1)●Function:函数文件函数文件主要用以解决参数传递和函数调用的问题.(1) 第一行必须指定函数名、输入变量(参数)和输出变量(参数).输入参数是从MATLAB的工作空间复制到函数工作空间的变量.第一行举例如下:function [输出形参表] = name(输入形参表)(2) 一个函数可以有0个、一个或几个输入参数和返回值.当输出形参表的参数个数大于2时,[ ]不可缺省!(3) 建议函数名和文件名一样.调用时所用的变量并不需要与函数文件中定义的变量有相同的名字.■例2 比较下列两个程序,注意命令文件(以dd1命名)与函数文件(以dd2命名)的区别与联系.x=input(‘输入初值x=’);n=input(‘输入迭代次数=’); y(1)=x ;for k=1:n function y=dd2(x,n) y(1)=x ;for k=1:n四、两类文件的区别●函数文件的第一行必须包含字function,命令文件没有这种要求.因此,没有这样第一行的M文件是命令文件.●命令文件没有输入参数,也不返回输出参数,而函数文件可以带输入参数,也可以返回输出参数;●命令文件对matlab工作空间中的变量进行操作,文件中所有命令的执行结果也完全返回到工作空间中,而函数文件中定义的变量为局部变量,当函数文件执行完毕时,这些变量被清除.●命令文件可以直接运行.在MATLAB命令窗口输入命令文件的名字,就会顺序执行命令文件中的命令,而函数文件不能直接运行,而要以函数调用的方式运行.五、M文件的调用对已存在的M文件●命令文件在命令窗口直接输入该文件名即可;如例1>>qiu●函数文件调用的一般格式[输出实参数表]=函数名(输入实参数表)①函数调用时各实参数出现的顺序、个数应与函数定义时形式参数的顺序、个数一致,否则出错;②函数调用时,先将实参数传递给形式参数,从而实现参数的传递,然后再执行函数的功能.如例2>>y=dd2(1,10)③当输出实参数表的参数个数大于2时,[ ]不可缺省!第二节程序控制结构程序控制结构有三种:顺序结构、选择结构、循环结构.任何复杂的程序都可以由这三种基本结构构成.Matlab提供了实现控制结构的语句,利用这些语句可以编写解决实际问题的程序. 一、顺序结构顺序结构是指按照程序中语句的排列顺序从上到下依次执行,直到程序的最后一个语句如例1的qiu文件和例2的dd1文件.这是最简单的一种程序结构.一般涉及数据的输入、计算或处理、数据的输出等内容.1. 数据的输入通过input命令来接收从终端输入的内容,它也可以显示文本和提示.命令集14 输入命令input(out ,in)在屏幕上显示出字符串out的文本并等待终端的输入.如果变量in是's',则输入的内容以字符串的形式进行保存,通常MATL AB在保存前要尽可能地求出表达式的值.如果使用格式控制符号如'\n',字符串out可以是若干行.■例3>> xm=input('What''s your name?','s')What's your name?syxxm =syx>> xm=input('What''s your name?')What's your name?syx??? Error using ==> inputUndefined function or variable 'syx'.What's your name?'syx'xm =syx2. 数据的输出可以通过简单地输入变量的名字来显示数字矩阵或者字符串向量的内容,结果将显示出变量的名字和内容.另一种显示变量的值就是使用命令disp.使用它只显示出变量的内容,这是有用的,特别是在字符串的应用中.命令集15显示命令disp(A)显示矩阵A的内容,如果A是字符串,则显示出它的文本.练习题:将例1、例2的程序在matlab中建立、保存、运行.练习题:>> A=magic(5);>> diag(A),diag(diag(A)),diag(diag(A),2),diag(A,2),diag(A,-2) ans =17513219ans =17 0 0 0 00 5 0 0 00 0 13 0 00 0 0 21 00 0 0 0 9ans =0 0 17 0 0 0 00 0 0 5 0 0 00 0 0 0 13 0 00 0 0 0 0 21 00 0 0 0 0 0 90 0 0 0 0 0 00 0 0 0 0 0 0ans =11422ans =41225>> triu(A),tril(A),triu(A,1),triu(A,-2),tril(A,-2) ans =17 24 1 8 150 5 7 14 160 0 13 20 220 0 0 21 30 0 0 0 9ans =17 0 0 0 023 5 0 0 04 6 13 0 010 12 19 21 011 18 25 2 9ans =0 24 1 8 150 0 7 14 160 0 0 20 220 0 0 0 30 0 0 0 0ans =17 24 1 8 1523 5 7 14 164 6 13 20 220 12 19 21 30 0 25 2 9ans =0 0 0 0 00 0 0 0 04 0 0 0 010 12 0 0 011 18 25 0 0 >> A(3,2),A(:,2),A(4,:)ans =6ans =24561218ans =10 12 19 21 3 >> A(2:3,3:4),A(:),A(:,:)ans =7 1413 20ans =17234101124561218171319258142021215162239ans =17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9>> A=magic(4);>> x=[1 2 3 4];>> sum(A),sum(A'),trace(A),rank(A),det(A) ans =34 34 34 34ans =34 34 34 34ans =34ans =3ans =4 4>> [x,y]=eig(A),inv(A),det(A)x =0.5000 0.8236 0.3764 -0.22360.5000 -0.4236 0.0236 -0.67080.5000 -0.0236 0.4236 0.67080.5000 -0.3764 -0.8236 0.2236y =34.0000 0 0 00 8.9443 0 00 0 -8.9443 00 0 0 -0.0000Warning: Matrix is close to singular or badly scaled.Results may be inaccurate. RCOND = 4.625398e-018. ans =1.0e+015 *-0.2649 -0.7948 0.7948 0.2649-0.7948 -2.3845 2.3845 0.79480.7948 2.3845 -2.3845 -0.79480.2649 0.7948 -0.7948 -0.2649ans =>> norm(A,1),norm(A,2),norm(A,inf)ans =34ans =34ans =34>> norm(x,1),norm(x,2),norm(x,inf)ans =2.0000ans =1.2649ans =1.9236>> A=magic(4);>> B=ones(4);>> x=[1 2 3 4];>> y=[5 6 7 8];>> [y' A y']ans =5 16 2 3 13 56 5 11 10 8 67 9 7 6 12 78 4 14 15 1 8 >> [x;A;x]ans =1 2 3 416 2 3 135 11 10 89 7 6 124 14 15 11 2 3 4>> C=[B A],D=[A;B]C =1 1 1 1 1623 131 1 1 1 5 11 10 81 1 1 1 9 7 6 121 1 1 1 4 14 15 1D =16 2 3 135 11 10 89 7 6 124 14 15 11 1 1 11 1 1 11 1 1 11 1 1 1>> F=D([1 2 5 8],:)ans =16 2 3 135 11 10 81 1 1 11 1 1 1>>G=C(:,[1 3 5 7])ans =1 1 16 31 1 5 101 1 9 61 1 4 15>> H=D([1 2 5 8],[1 3])ans =16 35 101 11 1>> C([1 3 4],:)ans =1 1 1 1 1623 131 1 1 1 9 7 6 121 1 1 1 4 14 15 1 >> D(:,[12 4])ans =16 2 135 11 89 7 124 14 11 1 11 1 11 1 11 1 1。