




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022/7/20数值计算功能Chapter Three: The function of numerical calculationMMATLAB 语 言MATLAB Language2022/7/20【引例】求下列三阶线性代数方程组的近似解MATLAB程序为:A=2 -5 4;1 5 -2;-1 2 4;b=5;6;5;x=Ab % =inv(A)*b=A-1*b2022/7/20在MATLAB命令窗口,先输入下列命令构造系数矩阵A和右端向量b:A=2 -5 4;1 5 -2;-1 2 4A = 2 -5 4 1 5 -2 -1 2 4b=5;6;5b = 5 6 5然后只需输入命令x=A
2、b即可求得解x:x=Abx = 2.7674 1.1860 1.34882022/7/20一、 特殊矩阵 零矩阵,幺矩阵 单位矩阵,数量矩阵 对角阵,上三角矩阵 下三角矩阵,空矩阵 范德蒙矩阵2022/7/201.零矩阵(Null matrix)所有元素值为零的矩阵称为零矩阵。零矩阵可以用zeros函数实现。zeros是MATLAB内部函数,使用格式如下:zeros(m):产生mm阶零矩阵;zeros(m,n):产生mn阶零矩阵,当m=n时等同于zeros(m);zeros(size(A):产生与矩阵A同样大小的零矩阵。一、 特殊矩阵的实现常见的特殊矩阵有零矩阵、幺矩阵、单位矩阵、三角形矩阵等
3、,这类特殊矩阵在线性代数中具有通用性;还有一类特殊矩阵在专门学科中有用,如有名的希尔伯特(Hilbert)矩阵、范德蒙(Vandermonde) 矩阵等。2022/7/202.幺矩阵(Unitary matrix)所有元素值为1的矩阵称为幺矩阵。幺矩阵可以用ones函数实现。它的调用格式与zeros函数一样。【例1】 试用ones分别建立32阶幺矩阵、和与前例矩阵A同样大小的幺矩阵。用ones(3,2) 建立一个32阶幺阵:ones(3,2) % 一个32阶幺阵ans =1 1 1 1 1 1一、 特殊矩阵的实现2022/7/203.单位矩阵(Unit matrix)主对角线的元素值为1、其余
4、元素值为0的矩阵称为单位矩阵。它可以用MATLAB内部函数eye建立,使用格式与zeros相同。4.数量矩阵(Scalar Matrix)主对角线的元素值为一常数d、其余元素值为0的矩阵称为数量矩阵。显然,当d=1时,即为单位矩阵,故数量矩阵可以用eye(m)*d或eye(m,n)*d建立。5.对角阵(Diagonal matrix)对角线的元素值为常数、其余元素值为0的矩阵称为对角阵。我们可以通过MATLAB内部函数diag,利用一个向量构成对角阵;或从矩阵中提取某对角线构成一个向量。使用格式为diag(V)和diag(V,k)两种。一、 特殊矩阵的实现2022/7/20 向量V的对角阵(D
5、iagonal matrix of vector V) 设V为具有m个元素的向量,diag(V)将产生一个mm阶对角阵,其主对角线的元素值即为向量的元素值;diag(V,k)将产生一个nn(n=m+|k|,k为一整数)阶对角阵,其第k条对角线的元素值即为向量的元素值。注意:当k0,则该对角线位于主对角线的上方第k条;当k0,该对角线位于主对角线的下方第|k|条;当k=0,则等同于diag(V)。用diag建立的对角阵必是方阵。【例2】已知向量v,试建立以向量v作为主对角线的对角阵A;建立分别以向量v作为主对角线两侧的对角线的对角阵B和C。MATLAB程序如下:一、 特殊矩阵的实现2022/7/
6、20v =1;2;3; % 建立一个已知的向量AA=diag(v)A= 1 0 0 0 2 0 0 0 3B=diag(v,1)B = 0 1 0 0 0 0 2 0 0 0 0 3 0 0 0 0C=diag(v,-1)C = 0 0 0 0 1 0 0 0 0 2 0 0 0 0 3 0按各种对角线情况构成相应的对角阵A、B和C一、 特殊矩阵的实现2022/7/206.从矩阵中提取某对角线我们也可以用diag从矩阵中提取某对角线构成一个向量。设A为mn阶矩阵,diag(A)将从矩阵A中提取其主对角线产生一个具有min(m,n)个元素的向量。diag(A,k)的功能是:当k0,则将从矩阵A中
7、提取位于主对角线的上方第k条对角线构成一个具有n-k个元素的向量;当k0,则将从矩阵A中提取位于主对角线的下方第|k|条对角线构成一个具有m+k个元素的向量;当k=0,则等同于diag(A)。一、 特殊矩阵的实现2022/7/20【例3】 已知矩阵A,试从矩阵A分别提取主对角线及它两侧的对角线构成向量B、C和D。MATLAB程序如下:A=1 2 3;4 5 6; % 建立一个已知的23阶矩阵A% 按各种对角线情况构成向量B、C和DB=diag(A)B = 1 5C=diag(A,1)C = 2 6D=diag(A,-1)D = 4一、 特殊矩阵的实现2022/7/207.上三角阵(Upper
8、triangular matrix)triu(A)和triu(A,k)返回矩阵A的上三角矩阵。设A为mn阶矩阵,triu(A)将从矩阵A中提取主对角线之上的上三角部分构成一个mn阶上三角阵;triu(A,k)将从矩阵A中提取主对角线第|k|条对角线之上的上三角部分构成一个mn阶上三角阵。注意:这里的k与diag(A,k)的用法类似,当k0,则该对角线位于主对角线的上方第k条;当k0,该对角线位于主对角线的下方第|k|条;当k=0,则等同于triu (A)一、 特殊矩阵的实现2022/7/20【例4】试分别用triu(A)、triu(A,1)和、triu(A,-1)从矩阵A提取相应的上三角部分构
9、成上三角阵B、C和D。MATLAB程序如下:A=1 2 3;4 5 6;7 8 9;9 8 7; % 一个已知的43阶矩阵AB=triu(A) % 构成上三角阵BB = 1 2 3 0 5 6 0 0 9 0 0 0C=triu(A,1) % 构成上三角阵CD=triu(A,-1) % 构成上三角阵D8.下三角阵(Lower triangular matrix)tril(A)和tril(A,k)返回A的下三角矩阵。tril的功能是从矩阵A中提取下三角部分构成下三角阵。用法与triu相同。一、 特殊矩阵的实现2022/7/209.空矩阵(Empty matrix)在MATLAB里,把行数、列数为
10、零的矩阵定义为空矩阵。空矩阵在数学意义上讲是空的,但在MATLAB里确是很有用的。例如A=0.1 0.2 0.3;0.4 0.5 0.6;B=find(A1.0) %结果为B=这里 是空矩阵的符号,B=find(A1.0)表示列出矩阵A中值大于1.0的元素的序号。当不能满足括号中的条件时,返回空矩阵。另外,也可以将空矩阵赋给一个变量,如:B=, C=B10.范德蒙矩阵(Vandermonde matrix)vander(V) 以向量V中的元素为基准生成范德蒙矩阵。一、 特殊矩阵的实现2022/7/20二、矩阵的特征值 与特征向量2022/7/20对于NN阶方阵A,所谓A的特征值问题是:求数和N
11、维非零向量x(通常为复数),使之满足下式:A x = x则称为矩阵A的一个特征值(特征根),而非零向量x为矩阵A的特征值所对应的特征向量。对一般的NN阶方阵A,其特征值通常为复数,若A为实对称矩阵,则A的特征值为实数。二、矩阵的特征值与特征向量2022/7/20MATLAB提供的内部函数eig可以用来计算特征值与特征向量。eig函数的使用格式有五种,其中常见的有E=eig(A)、V,D=eig(A)和V,D=eig(A,nobalance)三种,另外两种格式用来计算矩阵的广义特征值与特征向量:E=eig(A,B)和V,D=eig(A,B)。最常用的是E=eig(A)V,D=eig(A)分别介绍
12、如下:二、矩阵的特征值与特征向量2022/7/20(1) E=eig(A):由eig(A)返回方阵A的N个特征值,构成向量E;(2) V,D=eig(A):由eig(A)返回方阵A的N个特征值,构成NN阶对角阵D,其对角线上的N个元素即为相应的特征值,同时将返回相应的特征向量赋予NN阶方阵V的对应列,且A、V、D满足AV=VD;(3) V,D=eig(A,nobalance):本格式的功能与格式(2)一样,只是格式(2)是先对A作相似变换(balance),然后再求其特征值与相应的特征向量;而本格式则事先不作相似变换;二、矩阵的特征值与特征向量2022/7/20(4) E=eig(A,B):由
13、eig(A,B)返回NN阶方阵A和B的N个广义特征值,构成向量E。(5) V,D=eig(A,B):由eig(A,B)返回方阵A和B的N个广义特征值,构成NN阶对角阵D,其对角线上的N个元素即为相应的广义特征值,同时将返回相应的特征向量构成NN阶满秩矩阵,且 满足AV=BVD。二、矩阵的特征值与特征向量2022/7/20【例5】试用格式(1)求下列对称矩阵A的特征值;用格式(2)求A的特征值和相应的特征向量,且验证之。A = 1.0000 1.0000 0.5000 1.0000 1.0000 0.2500 0.5000 0.2500 2.0000 ;执行eig(A)将直接获得对称矩阵A的三个
14、实特征值:二、矩阵的特征值与特征向量2022/7/20eig(A)ans = -0.0166 1.4801 2.5365而下列命令则将其三个实特征值作为向量赋予变量E:E=eig(A)E = -0.0166 1.4801 2.5365二、矩阵的特征值与特征向量2022/7/20三、行列式的值 行列式求值函数det 行列式的矩阵的秩rank2022/7/20MATLAB提供的内部函数det用来计算矩阵的行列式的值。设矩阵A为一方阵(必须是方阵),求矩阵A的行列式值的格式为:det(A)。注意:本函数同样能计算通过构造出的稀疏矩阵的行列式的值。关于如何构造稀疏矩阵,将在本章最后一节介绍。三、行列式
15、的值【例6】利用随机函数产生一个三阶方阵A,然后计算方阵之行列式的值。A=rand(3)A = 0.9501 0.4860 0.4565 0.2311 0.8913 0.0185 0.6068 0.7621 0.8214det(A)ans = 0.42892022/7/20四、矩阵求逆及其线性代数方程组求解2022/7/201 . 矩阵求逆若方阵A,B满足等式A*B = B*A = I (I为单位矩阵)则称A为B的逆矩阵,或称B为A的逆矩阵。这时A,B都称为可逆矩阵(或非奇异矩阵、或满秩矩阵),否则称为不可逆矩阵(或奇异矩阵、或降秩矩阵)。inv(A)或A-1给出A的逆矩阵pinv(A)给出A
16、的广义逆矩阵pinv(a)=inv(a*a)*a四、矩阵求逆及其线性代数方程组求解2022/7/20【例7】试用inv函数求方阵A的逆阵A-1赋值给B,且验证A与A-1是互逆的。A=1 -1 1;5 -4 3;2 1 1;B=inv(A)B = -1.4000 0.4000 0.2000 0.2000 -0.2000 0.4000 2.6000 -0.6000 0.2000A*Bans = 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 1.0000B*Aans = 1.0000 0.0000 0.0000 0.0000 1.00
17、00 0.0000 0.0000 0.0000 1.0000四、矩阵求逆及其线性代数方程组求解2022/7/202. 矩阵求逆解法利用求系数矩阵A的逆阵A-1,我们可以得到矩阵求逆解法。对于线性代数方程组Ax=b,等号两侧各左乘A-1,有:A-1Ax=A-1b由于A-1A=I,故得:x=A-1b四、矩阵求逆及其线性代数方程组求解2022/7/20【例8】试用矩阵求逆解法求解矩阵A为系数矩阵的线性代数方程组Ax=b的解。A=1 -1 1;5 -4 3;2 1 1;b=2;-3;1;x=inv(A)*bx = -3.8000 1.4000 7.2000四、矩阵求逆及其线性代数方程组求解2022/7
18、/203. 直接解法对于线性代数方程组Ax=b,我们可以运用左除运算符“”象解一元一次方程那样简单地求解: x=Ab当系数矩阵A为N*N的方阵时,MATLAB会自行用高斯消去法求解线性代数方程组。若右端项b为N*1的列向量,则x=Ab可获得方程组的数值解x(N*1的列向量);若右端项b为N*M的矩阵,则x=Ab可同时获得同一系数矩阵A、M个方程组数值解x(为N*M的矩阵),即x(:,j)=Ab(:,j),j=1,2,M。四、矩阵求逆及其线性代数方程组求解2022/7/20四、矩阵求逆及其线性代数方程组求解2022/7/20解法1:分别解方程组 (1)Ax=b1;(2)Ay=b2A=1 -1 1
19、;5 -4 3;2 1 1;b1=2;-3;1;b2=3;4;-5;x=Ab1x = -3.8000 1.4000 7.2000y=Ab2 -3.6000 -2.2000 4.4000得两个线性代数方程组的解: (1) x1= -3.8, x2= 1.4, x3= 7.2; (2) y1= -3.8, y2= 1.4, y3= 7.2四、矩阵求逆及其线性代数方程组求解2022/7/20解法2:将两个方程组连在一起求解:Az=bb=2 3;-3 4;1 -5z=Abz = -3.8000 -3.6000 1.4000 -2.2000 7.2000 4.4000很明显,这里的解z的两个列向量便是前
20、面分别求得的两组解x和y四、矩阵求逆及其线性代数方程组求解2022/7/20 将矩阵分解为几个具有特殊构造性质的矩阵的乘积,MATLAB提供的函数可将这种在数学上非常繁重的工作简单化。五、矩阵的分解2022/7/201、三角分解(lu分解): l,u=lu(a)将 任意方阵a分解为一个准下三角方阵l和一个上三角方阵u的乘积。 l:准下三角方阵; u:上三角方阵;且满足如下条件:l*u=aabs(det(l)=1 % 即det(l)=1或-1det(u)*det(l)=det(a)或abs(det(u)=abs(det(a)五、矩阵的分解2022/7/20a = 2 9 0 0 0 4 1 4
21、7 5 5 1 7 8 7 4 l,u=lu(a)l = 0.2857 1.0000 0 0 0 0.5283 0.6838 1.0000 1.0000 0 0 0 1.0000 0.3962 1.0000 0u = 7.0000 5.0000 5.0000 1.0000 0 7.5714 -1.4286 -0.2857 0 0 2.5660 3.1132 0 0 0 2.0221五、矩阵的分解2022/7/20 l*uans = 2.0000 9.0000 0 0 0 4.0000 1.0000 4.0000 7.0000 5.0000 5.0000 1.0000 7.0000 8.0000
22、 7.0000 4.0000abs(det(l)ans = 1det(a)=-275det(l)=-1det(u)= 275.0000五、矩阵的分解2022/7/202、正交分解(qr分解) q,r= qr(a)将任意nm阶矩阵分解为一个正交方阵q和一个与原矩阵同阶的上三角矩阵r的乘积。正交方阵:满足A*A=I的方阵A。length(q)=min(size(a)det(q)=1五、矩阵的分解2022/7/20b = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15q,r=qr(b)q = -0.0796 0.9094 0.4082 -0.4773 0.3248 -0.81
23、65 -0.8751 -0.2598 0.4082r = -12.5698 -14.0018 -15.4338 -16.8658 -18.2978 0 0.9744 1.9487 2.9231 3.8974 0 0 0.0000 0.0000 0.0000五、矩阵的分解2022/7/20q*rans = 1.0000 2.0000 3.0000 4.0000 5.0000 6.0000 7.0000 8.0000 9.0000 10.0000 11.0000 12.0000 13.0000 14.0000 15.0000q*qans = 1.0000 -0.0000 0 -0.0000 1.0
24、000 0 0 0 1.0000det(q)=1 五、矩阵的分解2022/7/203、奇异值分解(Singular value decomposition,svd分解) u,s,v=svd(a)将任意nm阶矩阵a分解为三个矩阵u、s和v的乘积。其中u、v分别为n、m阶正交方阵,s为nm阶对角矩阵,对角线上的元素就是a的奇异值。矩阵s的最大奇异值与最小奇异值的比就是原矩阵的条件数。u,s,v=svd(a)cond(a)=max(diag(s)/min(diag(s) % cond(a) 为a的条件数五、矩阵的分解2022/7/20 u,s,v=svd(b)u = -0.2017 0.8903 0.4082 -0.5168 0.2573 -0.8165 -0.8320 -0.3757 0.4082s = 35.1272 0 0 0 0 0 2.4654 0 0 0 0 0 0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辽宁医药职业学院《音乐基础》2023-2024学年第一学期期末试卷
- 山东省高青县2025年高中毕业生班阶段性测试(三)化学试题含解析
- 辽宁省盘锦市双台子区第一中学2025年初三下学期期末质量调研英语试题含答案
- 曲阜市2025届数学三下期末监测模拟试题含解析
- 四川国际标榜职业学院《传播学概论A》2023-2024学年第二学期期末试卷
- 四川省宜宾市宜宾县重点达标名校2025届初三第一次质量调研物理试题含解析
- 农业生产资料购销合同模板
- 吉林省长春市第一五七中学2025年初三两校下学期联考生物试题含解析
- 跨境电商信用体系建设-全面剖析
- 端到端数据加密与隐私保护-全面剖析
- 《探索三角形全等的条件》第一课时参考课件1 公开课课件
- 企业年金培训版教学课件
- 离合器-汽车毕业设计-设计说明书
- 健康信息学中医药学语言系统语义网络框架
- 2023年中考语文一轮复习考点梳理+对点训练(原卷版+解析版)(打包7套)
- 幼儿绘本故事:如果不洗澡
- 2022年《趣味接力跑》教案
- 农业机械使用与维护课程标准
- 汽轮机上缸吊出及翻缸风险分析及管控措施
- 普通高中学生综合素质档案填写样表
- 管道机器人毕业设计正文
评论
0/150
提交评论