数学建模matlab课件9、10、矩阵.ppt

上传人:scccc 文档编号:14067689 上传时间:2022-02-01 格式:PPT 页数:36 大小:114.50KB
返回 下载 相关 举报
数学建模matlab课件9、10、矩阵.ppt_第1页
第1页 / 共36页
数学建模matlab课件9、10、矩阵.ppt_第2页
第2页 / 共36页
数学建模matlab课件9、10、矩阵.ppt_第3页
第3页 / 共36页
数学建模matlab课件9、10、矩阵.ppt_第4页
第4页 / 共36页
数学建模matlab课件9、10、矩阵.ppt_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《数学建模matlab课件9、10、矩阵.ppt》由会员分享,可在线阅读,更多相关《数学建模matlab课件9、10、矩阵.ppt(36页珍藏版)》请在三一文库上搜索。

1、数学建模matlab课件9、10、矩阵,矩阵及其运算,数学建模matlab课件9、10、矩阵,0、一般矩阵的输入,直接输入需遵循以下基本规则:整个矩阵应以“ ”为首尾,即整个输入矩阵必须包含在方括号中; 矩阵中,行与行之间必须用分号“ ;”或 Enter 键( 按 Enter 键)符分隔; 每行中的元素用逗号“ ,”或空格分隔;A=1,2,3,4;5,6,7,8;9,10,11,12;13,14,15,16A = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16,数学建模matlab课件9、10、矩阵,一、 特殊矩阵的实现,数学建模matlab课件9、10、矩阵,1

2、.零矩阵:所有元素值为零的矩阵称为零矩阵。零矩阵可以用zeros函数实现。zeros是MATLAB内部函数,使用格式如下:zeros(m):产生m m阶零矩阵;zeros(m,n):产生m n阶零矩阵,当m=n时等同于zeros(m);zeros(size(A):产生与矩阵A同样大小的零矩阵。,一、 特殊矩阵的实现,常见的特殊矩阵有零矩阵、幺矩阵、单位矩阵、三角形矩阵等,这类特殊矩阵在线性代数中具有通用性;还有一类特殊矩阵在专门学科中有用,如有名的希尔伯特(Hilbert)矩阵、范德蒙(Vandermonde) 矩阵等。,数学建模matlab课件9、10、矩阵,2.幺矩阵:所有元素值为1的矩阵

3、称为幺矩阵。幺矩阵可以用ones函数实现。它的调用格式与zeros函数一样。【例1】 试用ones分别建立32阶幺矩阵、和与前例矩阵A同样大小的幺矩阵。用ones(3,2) 建立一个3 2阶幺阵:ones(3,2) % 一个32阶幺阵ans =1 1 1 1 1 1,一、 特殊矩阵的实现,数学建模matlab课件9、10、矩阵,3.单位矩阵:主对角线的元素值为1、其余元素值为0的矩阵称为单位矩阵。它可以用MATLAB内部函数eye建立,使用格式与zeros相同。4.数量矩阵:主对角线的元素值为一常数d、其余元素值为0的矩阵称为数量矩阵。显然,当d=1时,即为单位矩阵,故数量矩阵可以用eye(m

4、)*d或eye(m,n)*d建立。,一、 特殊矩阵的实现,5.对角阵:对角线的元素值为常数、其余元素值为0的矩阵称为对角阵。我们可以通过MATLAB内部函数diag,利用一个向量构成对角阵;或从矩阵中提取某对角线构成一个向量。使用格式为diag(V)和diag(V,k)两种。,数学建模matlab课件9、10、矩阵,6.用一个向量V构成一个对角阵设V为具有m个元素的向量,diag(V)将产生一个mm阶对角阵,其主对角线的元素值即为向量的元素值;diag(V,k)将产生一个nn(n=m+|k|,k为一整数)阶对角阵,其第k条对角线的元素值即为向量的元素值。注意:当k0,则该对角线位于主对角线的上

5、方第k条;当k0,该对角线位于主对角线的下方第|k|条;当k=0,则等同于diag(V)。用diag建立的对角阵必是方阵。,一、 特殊矩阵的实现,【例2】已知向量v,试建立以向量v作为主对角线的对角阵A;建立分别以向量v作为主对角线两侧的对角线的对角阵B和C。MATLAB程序如下:,数学建模matlab课件9、10、矩阵,v =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

6、 0 3 0,% 按各种对角线情况构成相应的对角阵A、B和C,一、 特殊矩阵的实现,数学建模matlab课件9、10、矩阵,7.从矩阵中提取某对角线我们也可以用diag从矩阵中提取某对角线构成一个向量。设A为m n阶矩阵,diag(A)将从矩阵A中提取其主对角线产生一个具有min(m,n)个元素的向量。diag(A,k)的功能是:当k0,则将从矩阵A中提取位于主对角线的上方第k条对角线构成一个具有n-k个元素的向量;当k0,则将从矩阵A中提取位于主对角线的下方第|k|条对角线构成一个具有m+k个元素的向量;当k=0,则等同于diag(A)。,一、 特殊矩阵的实现,数学建模matlab课件9、1

7、0、矩阵,【例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,一、 特殊矩阵的实现,数学建模matlab课件9、10、矩阵,8.上三角阵:使用格式为triu(A)、triu(A,k)设A为mn阶矩阵,triu(A)将从矩阵A中提取主对角线之上的上三角部分构成一个m n阶上三角阵;triu(A,k)将从矩阵A中提取主对角线第|k|条对角线之上的

8、上三角部分构成一个mn阶上三角阵。注意:这里的k与diag(A,k)的用法类似,当k0,则该对角线位于主对角线的上方第k条;当k0,该对角线位于主对角线的下方第|k|条;当k=0,则等同于triu (A),一、 特殊矩阵的实现,数学建模matlab课件9、10、矩阵,【例4】试分别用triu(A)、triu(A,1)和、triu(A,-1)从矩阵A提取相应的上三角部分构成上三角阵B、C和D。MATLAB程序如下:A=1 2 3;4 5 6;7 8 9;9 8 7; % 一个已知的43阶矩阵A% 构成各种情况的上三角阵B、C和DB=triu(A)B = 1 2 3 0 5 6 0 0 9 0 0

9、 0C=triu(A,1)D=triu(A,-1),一、 特殊矩阵的实现,9.下三角阵:使用格式为tril(A)、tril(A,k)tril的功能是从矩阵A中提取下三角部分构成下三角阵。用法与triu相同。,数学建模matlab课件9、10、矩阵,10.空矩阵在MATLAB里,把行数、列数为零的矩阵定义为空矩阵。空矩阵在数学意义上讲是空的,但在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的元素的序号。当不能满足括号中的条件时,返回空矩阵。另外,也可以

10、将空矩阵赋给一个变量,如:B= B = ,一、 特殊矩阵的实现,数学建模matlab课件9、10、矩阵,11、矩阵元素的修改【例5】 A=1,2,3,4;5,6,7,8;9,10,11,12;13,14,15,16A = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 A(1,1)ans = 1 A(2,3)ans = 7 A(1,1)=0;A(2,2)=A(1,2)+A(2,1);A(4,4)=cos(0); AA = 0 2 3 4 5 7 7 8 9 10 11 12 13 14 15 1,数学建模matlab课件9、10、矩阵,1、矩阵加、减(,)运算规则

11、: 相加、减的两矩阵必须有相同的行和列两矩阵对应元素相加减。 允许参与运算的两矩阵之一是标量。标量与矩阵的所有元素分别进行加减操作。,二、矩阵的四则运算,数学建模matlab课件9、10、矩阵,2. 矩阵乘()运算规则:A矩阵的列数必须等于B矩阵的行数标量可与任何矩阵相乘。a=1 2 3;4 5 6;7 8 0;b=1;2;3;c=a*bc =14 32 23,数学建模matlab课件9、10、矩阵,d=-1;0;2;f=pi*df = -3.1416 0 6.2832,数学建模matlab课件9、10、矩阵,a p a 自乘p次幂,方阵,1的整数,3. 矩阵乘方 an,ap,pa,对于p的其

12、它值,计算将涉及特征值和特征向量,如果p是矩阵,a是标量ap使用特征值和特征向量自乘到p次幂;如a,p都是矩阵,ap则无意义。,数学建模matlab课件9、10、矩阵,a=1,2,3;4,5,6;7,8,9;a2 ans =30 36 42 66 81 96 102 126 150,当一个方阵有复数特征值或负实特征值时,非整数幂是复数阵。,数学建模matlab课件9、10、矩阵,a0.5 ans = 0.4498 + 0.7623i 0.5526 + 0.2068i 0.6555 -0.3487i 1.0185 + 0.0842i 1.2515 + 0.0228i 1.4844 - 0.038

13、5i 1.5873 - 0.5940i 1.9503 - 0.1611i 2.3134 + 0.2717i,数学建模matlab课件9、10、矩阵,4、 矩阵求逆,数学建模matlab课件9、10、矩阵,矩阵求逆若方阵A,B满足等式A*B = B*A = I (I为单位矩阵)则称A为B的逆矩阵,或称B为A的逆矩阵。这时A,B都称为可逆矩阵(或非奇异矩阵、或满秩矩阵),否则称为不可逆矩阵(或奇异矩阵、或降秩矩阵)。,数学建模matlab课件9、10、矩阵,【例6】试用inv函数求方阵A的逆阵A-1赋值给B,且验证A与A-1是互逆的。A=1 -1 1;5 -4 3;2 1 1;B=inv(A)B

14、= -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.0000,B*Aans = 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 1.0000,数学建模matlab课件9、10、矩阵,三、矩阵的特征值 与特征向量,数学建模matlab课件9、10、矩阵,对于NN阶方阵A,所谓A的特征值问题是:求数和N维非零向量x(通常为

15、复数),使之满足下式:A. x=. x则称为矩阵A的一个特征值(特征根),而非零向量x为矩阵A的特征值所对应的特征向量。对一般的N N阶方阵A,其特征值通常为复数,若A为实对称矩阵,则A的特征值为实数。,数学建模matlab课件9、10、矩阵,MATLAB提供的内部函数eig可以用来计算特征值与特征向量。eig函数的使用格式有五种,其中常见的有E=eig(A)、V,D=eig(A)和V,D=eig(A,nobalance)三种,另外两种格式用来计算矩阵的广义特征值与特征向量:E=eig(A,B)和V,D=eig(A,B)。,数学建模matlab课件9、10、矩阵,(1) E=eig(A):由e

16、ig(A)返回方阵A的N个特征值,构成向量E;(2) V,D=eig(A):由eig(A)返回方阵A的N个特征值,构成NN阶对角阵D,其对角线上的N个元素即为相应的特征值,同时将返回相应的特征向量赋予NN阶方阵V的对应列,且A、V、D满足AV=V D;(3) V,D=eig(A,nobalance):本格式的功能与格式(2)一样,只是格式(2)是先对A作相似变换(balance),然后再求其特征值与相应的特征向量;而本格式则事先不作相似变换;,数学建模matlab课件9、10、矩阵,(4) E=eig(A,B):由eig(A,B)返回NN阶方阵A和B的N个广义特征值,构成向量E。(5) V,D

17、=eig(A,B):由eig(A,B)返回方阵A和B的N个广义特征值,构成N N阶对角阵D,其对角线上的N个元素即为相应的广义特征值,同时将返回相应的特征向量构成NN阶满秩矩阵,且 满足AV=B V D。,数学建模matlab课件9、10、矩阵,【例7】试用格式(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的三个实特征值:,数学建模matlab课件9、10、矩阵,eig(A)ans =

18、-0.0166 1.4801 2.5365而下列命令则将其三个实特征值作为向量赋予变量E:E=eig(A)E = -0.0166 1.4801 2.5365,数学建模matlab课件9、10、矩阵,V,D=eig(A)V = 0.7212 0.4443 0.5315 -0.6863 0.5621 0.4615 -0.0937 -0.6976 0.7103D = -0.0166 0 0 0 1.4801 0 0 0 2.5365,数学建模matlab课件9、10、矩阵,四、行列式的值,数学建模matlab课件9、10、矩阵,MATLAB提供的内部函数det用来计算矩阵的行列式的值。设矩阵A为一方

19、阵(必须是方阵),求矩阵A的行列式值的格式为:det(A)。注意:本函数同样能计算通过构造出的稀疏矩阵的行列式的值。关于如何构造稀疏矩阵,将在本章最后一节介绍。,【例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.4289,数学建模matlab课件9、10、矩阵,inv 矩阵求逆det 行列式的值eig 矩阵的特征值diag 对角矩阵 矩阵转置sqrt 矩阵开方,注: 矩阵的其它运算,数学建模matlab课件9、10、矩阵,矩阵的一些特殊操作,矩阵的变维 a=1:12;b=reshape(a,3,4) c=zeros(3,4);c(:)=a(:)矩阵的变向 rot90:旋转; fliplr:上翻; flipud:下翻矩阵的抽取 diag:抽取主对角线;tril: 抽取主下三角; triu:抽取主上三角,数学建模matlab课件9、10、矩阵,习题,求A的转置矩阵、行列式、特征值特征向量、逆矩阵,2.给出一个5阶矩阵A,并在A上使用命令diag, triu, tril相关的所有格式,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1