欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第2章 数值计算功能PPT讲稿.ppt

    • 资源ID:43304701       资源大小:3.04MB        全文页数:66页
    • 资源格式: PPT        下载积分:18金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要18金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第2章 数值计算功能PPT讲稿.ppt

    第2章 数值计算功能第1页,共66页,编辑于2022年,星期一n n MATLABMATLAB应用相当广泛的一个领域是解决数值计算问题。应用相当广泛的一个领域是解决数值计算问题。应用相当广泛的一个领域是解决数值计算问题。应用相当广泛的一个领域是解决数值计算问题。这是由于这是由于这是由于这是由于MATLAB MATLAB 对处理数组具有非凡的能力,使其成为对处理数组具有非凡的能力,使其成为对处理数组具有非凡的能力,使其成为对处理数组具有非凡的能力,使其成为许多科学与工程应用中的一个有力的工具。本章主要介绍矩许多科学与工程应用中的一个有力的工具。本章主要介绍矩许多科学与工程应用中的一个有力的工具。本章主要介绍矩许多科学与工程应用中的一个有力的工具。本章主要介绍矩阵的创建、运算以及如何运用阵的创建、运算以及如何运用阵的创建、运算以及如何运用阵的创建、运算以及如何运用MATLABMATLAB解决线性代数中的相解决线性代数中的相解决线性代数中的相解决线性代数中的相关问题。关问题。关问题。关问题。n n【学习目标】【学习目标】【学习目标】【学习目标】n n能够创建矩阵,并熟练掌握矩阵的各种运算法则能够创建矩阵,并熟练掌握矩阵的各种运算法则能够创建矩阵,并熟练掌握矩阵的各种运算法则能够创建矩阵,并熟练掌握矩阵的各种运算法则n n掌握稀疏矩阵的基本操作。掌握稀疏矩阵的基本操作。掌握稀疏矩阵的基本操作。掌握稀疏矩阵的基本操作。n n学会运用学会运用学会运用学会运用MATLABMATLAB解决线性代数的相关问题。解决线性代数的相关问题。解决线性代数的相关问题。解决线性代数的相关问题。n n掌握如何运用掌握如何运用掌握如何运用掌握如何运用MATLABMATLAB实现数据的插值、曲线的拟合和零极点的求实现数据的插值、曲线的拟合和零极点的求实现数据的插值、曲线的拟合和零极点的求实现数据的插值、曲线的拟合和零极点的求解。解。解。解。第2页,共66页,编辑于2022年,星期一2.1 矩阵及其运算矩阵及其运算n nMATLAB最基本、最重要的功能就是进行矩阵运算。所有的数值功能都是以矩阵为基本单位实现的。第3页,共66页,编辑于2022年,星期一2.1.1 矩阵生成矩阵生成n n1.1.直接生成直接生成直接生成直接生成n n矩阵的生成可以通过在方括号矩阵的生成可以通过在方括号矩阵的生成可以通过在方括号矩阵的生成可以通过在方括号中输入元素实现,不同行之间要中输入元素实现,不同行之间要中输入元素实现,不同行之间要中输入元素实现,不同行之间要用分号隔开,不同列用空格分开。用分号隔开,不同列用空格分开。用分号隔开,不同列用空格分开。用分号隔开,不同列用空格分开。n n【例【例【例【例2-12-1】生成一个】生成一个】生成一个】生成一个2 23 3矩阵。矩阵。矩阵。矩阵。n n a=1 2 3;4 5 6 a=1 2 3;4 5 6 n na=a=n n 1 2 3 1 2 3n n 4 5 6 4 5 6n n可以用冒号快速建立矩阵,步长在默认的情况下为可以用冒号快速建立矩阵,步长在默认的情况下为可以用冒号快速建立矩阵,步长在默认的情况下为可以用冒号快速建立矩阵,步长在默认的情况下为1 1,也可以,也可以,也可以,也可以自定义步长。自定义步长。自定义步长。自定义步长。n n a=1:3;4:6 a=1:3;4:6n na=a=n n 1 2 3 1 2 3n n 4 5 6 4 5 6第4页,共66页,编辑于2022年,星期一n n2.2.函数生成函数生成函数生成函数生成n nMATLABMATLAB中提供了特殊函数可以生成特殊矩阵。中提供了特殊函数可以生成特殊矩阵。中提供了特殊函数可以生成特殊矩阵。中提供了特殊函数可以生成特殊矩阵。n n【例【例【例【例2-22-2】生成一个】生成一个】生成一个】生成一个2323全零矩阵,一个全零矩阵,一个全零矩阵,一个全零矩阵,一个3333单位矩阵。单位矩阵。单位矩阵。单位矩阵。n n a=zeros(2 a=zeros(2,3)3)%生成生成生成生成2323全零阵全零阵全零阵全零阵n na=a=n n 0 0 0 0 0 0 n n 0 0 0 0 0 0 n n a=eye(3 a=eye(3,3)%3)%生成生成生成生成3333单位阵单位阵单位阵单位阵n na=a=n n 1 0 0 1 0 0n n 0 1 0 0 1 0n n 0 0 1 0 0 1 第5页,共66页,编辑于2022年,星期一 常用的特殊矩阵列在表常用的特殊矩阵列在表常用的特殊矩阵列在表常用的特殊矩阵列在表2.12.1当中。当中。当中。当中。表表表表2.12.1常用的特殊矩阵常用的特殊矩阵常用的特殊矩阵常用的特殊矩阵函数函数函数函数功能功能功能功能函数函数函数函数命令命令命令命令zeroszeros生成全生成全生成全生成全0 0矩矩矩矩阵阵阵阵compancompan生成多生成多生成多生成多项项项项式的友矩式的友矩式的友矩式的友矩阵阵阵阵eyeeye生成生成生成生成单单单单位矩位矩位矩位矩阵阵阵阵hadamardhadamard生成哈达生成哈达生成哈达生成哈达玛玛玛玛矩矩矩矩阵阵阵阵(由(由(由(由1 1和和和和-1-1构成的正交矩构成的正交矩构成的正交矩构成的正交矩阵阵阵阵)onesones生成全生成全生成全生成全1 1阵阵阵阵vandervander生成范德蒙矩生成范德蒙矩生成范德蒙矩生成范德蒙矩阵阵阵阵randrand生成均匀分布随机矩生成均匀分布随机矩生成均匀分布随机矩生成均匀分布随机矩阵阵阵阵hilbhilbHilbertHilbert矩矩矩矩阵阵阵阵(沿主(沿主(沿主(沿主对对对对角角角角线线线线对对对对称)称)称)称)randnrandn生成正生成正生成正生成正态态态态分布随机矩分布随机矩分布随机矩分布随机矩阵阵阵阵invhilbinvhilb逆逆逆逆HilbertHilbert矩矩矩矩阵阵阵阵triltriutriltriu生成上三角或下三角矩生成上三角或下三角矩生成上三角或下三角矩生成上三角或下三角矩阵阵阵阵magicmagicMagicMagic矩矩矩矩阵阵阵阵diagdiag生成生成生成生成对对对对角矩角矩角矩角矩阵阵阵阵pascalpascalPascalPascal矩矩矩矩阵阵阵阵wilkinsonwilkinson生成威生成威生成威生成威尔尔尔尔金森矩金森矩金森矩金森矩阵阵阵阵toeplitztoeplitz托普利托普利托普利托普利兹兹兹兹矩矩矩矩阵阵阵阵第6页,共66页,编辑于2022年,星期一2.1.2 矩阵连接矩阵连接n n矩阵连接,是联合一个或多个矩阵形成一个新矩阵。方括号矩阵连接,是联合一个或多个矩阵形成一个新矩阵。方括号矩阵连接,是联合一个或多个矩阵形成一个新矩阵。方括号矩阵连接,是联合一个或多个矩阵形成一个新矩阵。方括号就可以就可以就可以就可以作为矩阵连接操作符。表达式作为矩阵连接操作符。表达式作为矩阵连接操作符。表达式作为矩阵连接操作符。表达式A=B CA=B C就是水平连接矩阵就是水平连接矩阵就是水平连接矩阵就是水平连接矩阵BB和和和和C C;A=A=BB;CC就是垂直连接矩阵就是垂直连接矩阵就是垂直连接矩阵就是垂直连接矩阵BB和和和和C C连接矩阵也可以用函数形成一个新连接矩阵也可以用函数形成一个新连接矩阵也可以用函数形成一个新连接矩阵也可以用函数形成一个新矩阵,如矩阵,如矩阵,如矩阵,如catcat函数。函数。函数。函数。catcat函数调用格式:函数调用格式:函数调用格式:函数调用格式:n n1)C=cat(dim1)C=cat(dim,AA,B)B)n nDimDim指链接方向。指链接方向。指链接方向。指链接方向。DimDim的可选值:的可选值:的可选值:的可选值:1 1,垂直方向;,垂直方向;,垂直方向;,垂直方向;2 2,水平方向;,水平方向;,水平方向;,水平方向;3 3,生成三维数组。,生成三维数组。,生成三维数组。,生成三维数组。n n2)C=cat(dim2)C=cat(dim,A1A1,A2A2,)n n可以实现连接多个矩阵。可以实现连接多个矩阵。可以实现连接多个矩阵。可以实现连接多个矩阵。第7页,共66页,编辑于2022年,星期一n n【例【例【例【例2-32-3】把矩阵】把矩阵】把矩阵】把矩阵AA,BB分别在垂直方向,水平方向连接,分别在垂直方向,水平方向连接,分别在垂直方向,水平方向连接,分别在垂直方向,水平方向连接,A=1 A=1 2 32 3,B=4 5 6B=4 5 6。n n C1=cat(1 C1=cat(1,A A,B)%B)%垂直方向连接垂直方向连接n nC1=C1=n n 1 2 3 1 2 3n n 4 5 6 4 5 6n n C2=cat(2 C2=cat(2,A A,B)%B)%水平方向连接水平方向连接n nC2=C2=n n 1 2 3 4 5 6 1 2 3 4 5 6第8页,共66页,编辑于2022年,星期一表表2.2列出了常用的连接矩阵函数。列出了常用的连接矩阵函数。表表2.2 连接矩阵函数连接矩阵函数函数函数函数函数功能功能功能功能函数函数函数函数功能功能功能功能catcat连连连连接矩接矩接矩接矩阵阵阵阵rematremat复制一个矩复制一个矩复制一个矩复制一个矩阵阵阵阵到另一个到另一个到另一个到另一个矩矩矩矩阵阵阵阵horzcathorzcat水平水平水平水平连连连连接多个矩接多个矩接多个矩接多个矩阵阵阵阵blkdiagblkdiag对对对对角角角角连连连连接多个矩接多个矩接多个矩接多个矩阵阵阵阵vertcatvertcat垂直垂直垂直垂直连连连连接多个矩接多个矩接多个矩接多个矩阵阵阵阵第9页,共66页,编辑于2022年,星期一2.1.3 矩阵元素的下标引用及操作矩阵元素的下标引用及操作n n1.1.矩阵下标矩阵下标矩阵下标矩阵下标 n n在在MATLABMATLAB中,矩阵元素的引用可以通过下标表示,中,矩阵元素的引用可以通过下标表示,通常有如下规则:通常有如下规则:n n1)用两个下标来表示:在矩阵A中,第i行j列的元素用A(i,j)来表示。n n2)用一个下标来表示:对于矩阵,由于MATLAB的基本运算都是对列操作的,矩阵认为是按列优先排列的一个长的列向量,从而可用单下标引用。第10页,共66页,编辑于2022年,星期一n n【例【例2-42-4】提取矩阵的元素。】提取矩阵的元素。n n A=1 2 3;4 5 6;7 8 9 A=1 2 3;4 5 6;7 8 9n nA=A=n n1 2 31 2 3n n4 5 64 5 6n n7 8 97 8 9n n可以用可以用A(m,n)A(m,n)选出第选出第mm行行n n列的元素。列的元素。n n A(2,3)A(2,3)n nans=ans=n n6 6n n也可以用一个下标选出元素。也可以用一个下标选出元素。n n A(8)A(8)n nans=ans=n n6 6第11页,共66页,编辑于2022年,星期一n n2.矩阵的抽取矩阵的抽取n n用下标可以从大矩阵里面抽取某些元素组成小的矩阵,并使用()运算符。n n【例【例2-52-5】提取矩阵】提取矩阵A A的前的前2 2行为一个新矩阵行为一个新矩阵B B。n nB=A(1:2,:)B=A(1:2,:)%B=A(12,:)B=A(12,:)n nB=B=n n 1 2 3 1 2 3n n 4 5 6 4 5 6第12页,共66页,编辑于2022年,星期一n n3.3.删除矩阵的行和列删除矩阵的行和列删除矩阵的行和列删除矩阵的行和列 n n我们把空的中括号我们把空的中括号我们把空的中括号我们把空的中括号称为空矩阵,即矩阵大小为称为空矩阵,即矩阵大小为称为空矩阵,即矩阵大小为称为空矩阵,即矩阵大小为0000。可以通。可以通。可以通。可以通过把矩阵的行或列赋值为空矩阵来删除某行或某列。过把矩阵的行或列赋值为空矩阵来删除某行或某列。过把矩阵的行或列赋值为空矩阵来删除某行或某列。过把矩阵的行或列赋值为空矩阵来删除某行或某列。n n【例【例【例【例2-62-6】删除上例中】删除上例中】删除上例中】删除上例中AA的第的第的第的第1 1,2 2列。列。列。列。n n A(:,1 2)=A(:,1 2)=n nA=A=n n 3 3n n 6 6n n 9 9n n 在在在在MATLABMATLAB里不能用双下标来删除矩阵的某个元素,里不能用双下标来删除矩阵的某个元素,里不能用双下标来删除矩阵的某个元素,里不能用双下标来删除矩阵的某个元素,例如例如例如例如X(1X(1,2)=2)=将给出错误信息。但可以用单下标来删将给出错误信息。但可以用单下标来删将给出错误信息。但可以用单下标来删将给出错误信息。但可以用单下标来删除矩阵的某个或某些元素,除矩阵的某个或某些元素,除矩阵的某个或某些元素,除矩阵的某个或某些元素,MATLABMATLAB删除这些元素后,删除这些元素后,删除这些元素后,删除这些元素后,将剩下的元素按列编成一个长的行向量。将剩下的元素按列编成一个长的行向量。将剩下的元素按列编成一个长的行向量。将剩下的元素按列编成一个长的行向量。第13页,共66页,编辑于2022年,星期一n n4.reshape4.reshape函数实现改变矩阵大小函数实现改变矩阵大小函数实现改变矩阵大小函数实现改变矩阵大小n nreshapereshape函数可以实现矩阵行列大小的变化,但变化前矩阵行列函数可以实现矩阵行列大小的变化,但变化前矩阵行列函数可以实现矩阵行列大小的变化,但变化前矩阵行列函数可以实现矩阵行列大小的变化,但变化前矩阵行列值的乘积和变化后的行列值的乘积不变。值的乘积和变化后的行列值的乘积不变。值的乘积和变化后的行列值的乘积不变。值的乘积和变化后的行列值的乘积不变。n nreshape(A,M,N)reshape(A,M,N)命令将矩阵命令将矩阵命令将矩阵命令将矩阵AA的所有元素分配到一个的所有元素分配到一个的所有元素分配到一个的所有元素分配到一个MMNN的新的矩阵,当矩阵的新的矩阵,当矩阵的新的矩阵,当矩阵的新的矩阵,当矩阵AA的元素个数不是的元素个数不是的元素个数不是的元素个数不是MMNN时,将返回时,将返回时,将返回时,将返回一个错误。一个错误。一个错误。一个错误。n nreshape(A,M,N,P,reshape(A,M,N,P,)命令返回由矩阵命令返回由矩阵命令返回由矩阵命令返回由矩阵AA的元素组成的的元素组成的的元素组成的的元素组成的MMNNP P.多维的矩阵,如果多维的矩阵,如果多维的矩阵,如果多维的矩阵,如果MMNNP P.与与与与AA的元素个数的元素个数的元素个数的元素个数不一样时将返回错误。不一样时将返回错误。不一样时将返回错误。不一样时将返回错误。n nreshape(A,M,N,P,reshape(A,M,N,P,)命令与命令与命令与命令与reshape(A,M,N,P,reshape(A,M,N,P,)命令命令命令命令的作用一样。的作用一样。的作用一样。的作用一样。第14页,共66页,编辑于2022年,星期一n n【例2-7】把2行3列矩阵A变成变成1行6列的矩阵B。n n B=reshape(A,1,6)n nB=n n 1 4 2 5 3 6第15页,共66页,编辑于2022年,星期一2.1.4 矩阵运算矩阵运算n n1.矩阵的加、减矩阵的加、减 n n矩阵的加减运算使用、运算符,能够相加减的矩阵需满足以下两个条件之一:n n1)类型相同,即行数相等,且列数相等。n n2)其中一个为标量,此时的加减运算结果等于矩阵中每一个元素都和标量做加减运算。n n【例【例2-82-8】求矩阵】求矩阵A A与与B B的和,的和,A=1 2 3 A=1 2 3,B=2 3 B=2 3 66。n n A+B A+Bn nans=ans=n n 3 5 9 3 5 9第16页,共66页,编辑于2022年,星期一n n2.2.矩阵的乘积矩阵的乘积矩阵的乘积矩阵的乘积 n n矩阵的乘积运算使用矩阵的乘积运算使用矩阵的乘积运算使用矩阵的乘积运算使用*运算符,而且相乘的矩阵必须满足维数运算符,而且相乘的矩阵必须满足维数运算符,而且相乘的矩阵必须满足维数运算符,而且相乘的矩阵必须满足维数条件。如果条件。如果条件。如果条件。如果A A是一个是一个是一个是一个mpmp矩阵,而矩阵,而矩阵,而矩阵,而B B是是是是pn pn 矩阵,它们可以相矩阵,它们可以相矩阵,它们可以相矩阵,它们可以相乘产生乘产生乘产生乘产生mn mn 矩阵。矩阵。矩阵。矩阵。n n【例【例【例【例2-92-9】求例】求例】求例】求例2-82-8中矩阵中矩阵中矩阵中矩阵A A与与与与B B的转置矩阵的乘积。的转置矩阵的乘积。的转置矩阵的乘积。的转置矩阵的乘积。n n A*B A*Bn nans=ans=n n 26 26n n在在在在MATLABMATLAB里,单引号表示复共轭转置,一个点加单引号里,单引号表示复共轭转置,一个点加单引号里,单引号表示复共轭转置,一个点加单引号里,单引号表示复共轭转置,一个点加单引号“.”“.”表示普通转置,即沿主对角线左上与右下相对元表示普通转置,即沿主对角线左上与右下相对元表示普通转置,即沿主对角线左上与右下相对元表示普通转置,即沿主对角线左上与右下相对元素对调。素对调。素对调。素对调。n nBBn nans=ans=n n22n n33n n66第17页,共66页,编辑于2022年,星期一n n3 3、矩阵的除法、矩阵的除法、矩阵的除法、矩阵的除法n nMATLABMATLAB定义了矩阵的左除及右除。定义了矩阵的左除及右除。定义了矩阵的左除及右除。定义了矩阵的左除及右除。“”“”运算符号表示两个矩阵运算符号表示两个矩阵运算符号表示两个矩阵运算符号表示两个矩阵的左除,的左除,的左除,的左除,“/”“/”表示两个矩阵的右除。表示两个矩阵的右除。表示两个矩阵的右除。表示两个矩阵的右除。ABAB即由即由即由即由GaussGauss消去法来获得消去法来获得消去法来获得消去法来获得线性方程线性方程线性方程线性方程AXAXB B的解的解的解的解X X,即,即,即,即X XA A-1-1B B。n n矩阵的右除:矩阵的右除:矩阵的右除:矩阵的右除:MATLABMATLAB用用用用“/”“/”表示两个矩阵的右除。表示两个矩阵的右除。表示两个矩阵的右除。表示两个矩阵的右除。X*A=BX*A=B的的的的解是解是解是解是X=B/AX=B/A,对于非奇异方阵,对于非奇异方阵,对于非奇异方阵,对于非奇异方阵A A,B/AB/A等效为等效为等效为等效为BABA-1-1 。n n【例【例【例【例2-102-10】求矩阵】求矩阵】求矩阵】求矩阵a a与与与与b b的左除和右除。的左除和右除。的左除和右除。的左除和右除。n n c=ab%c=ab%矩阵左除,相当于矩阵左除,相当于inv(a)*binv(a)*bn nc=c=n n 0.3333 0.6000 -0.2000 0.3333 0.6000 -0.2000n n -0.6667 -0.4000 0.8000 -0.6667 -0.4000 0.8000n n 1.0000 0.4000 0.2000 1.0000 0.4000 0.2000n n d=a/b%d=a/b%矩阵右除,相当于矩阵右除,相当于a*inv(b)a*inv(b)n nd=d=n n 1.3333 1.3333 -1.0000 1.3333 1.3333 -1.0000n n 0 -0.5000 1.5000 0 -0.5000 1.5000n n 1.6667 0.1667 -0.5000 1.6667 0.1667 -0.5000第18页,共66页,编辑于2022年,星期一表表2.3给出了可以获得有关矩阵的形状与大小信息的函数给出了可以获得有关矩阵的形状与大小信息的函数。表表2.3 取得矩阵相关信息的函数取得矩阵相关信息的函数函数函数函数函数说说说说明明明明函数函数函数函数说说说说明明明明lengthlength返回矩返回矩返回矩返回矩阵阵阵阵最最最最长长长长的那的那的那的那维长维长维长维长度度度度numelnumel返回矩返回矩返回矩返回矩阵阵阵阵的元素数的元素数的元素数的元素数ndimsndims返回矩返回矩返回矩返回矩阵阵阵阵的的的的维维维维数数数数(如二(如二(如二(如二维维维维、三、三、三、三维维维维)sizesize返回矩返回矩返回矩返回矩阵阵阵阵每一每一每一每一维维维维的的的的长长长长度(度(度(度(2 233,3 333 )第19页,共66页,编辑于2022年,星期一n n4.4.矩阵的乘方运算和开方运算矩阵的乘方运算和开方运算矩阵的乘方运算和开方运算矩阵的乘方运算和开方运算n nMATLAB中矩阵的乘方可以由符号“”实现,而矩阵的开方则由sqrtm函数实现。n n【例【例2-112-11】求如下矩阵】求如下矩阵A A的的3 3次方。次方。n nA3n nans=ans=n n468576684n n106213051548106213051548n n165620342412165620342412第20页,共66页,编辑于2022年,星期一n n如果想实现矩阵中每个元素都进行如果想实现矩阵中每个元素都进行如果想实现矩阵中每个元素都进行如果想实现矩阵中每个元素都进行3 3次方,则可用次方,则可用次方,则可用次方,则可用“.”实现,在运实现,在运实现,在运实现,在运算符前面加算符前面加算符前面加算符前面加“.”后就表示是对矩阵的元素操作。后就表示是对矩阵的元素操作。后就表示是对矩阵的元素操作。后就表示是对矩阵的元素操作。n n A.3 A.3n nans=ans=n n 1 8 27 1 8 27n n 64 125 216 64 125 216n n 343 512 729 343 512 729n n【例【例2-122-12】求例】求例2-112-11中矩阵中矩阵A A的开方。的开方。n n sqrtm(A)%sqrtm(A)sqrtm(A)%sqrtm(A)相当于相当于A0.5A0.5n nans=ans=n n 0.4498+0.7623i 0.5526+0.2068i 0.6555-0.3487i 0.4498+0.7623i 0.5526+0.2068i 0.6555-0.3487in n 1.0185+0.0842i 1.2515+0.0228i 1.4844-0.0385i 1.0185+0.0842i 1.2515+0.0228i 1.4844-0.0385in n 1.5873-0.5940i 1.9503-0.1611i 2.3134+0.2717i 1.5873-0.5940i 1.9503-0.1611i 2.3134+0.2717in n其实矩阵的开方运算和乘方运算互为逆运算。其实矩阵的开方运算和乘方运算互为逆运算。其实矩阵的开方运算和乘方运算互为逆运算。其实矩阵的开方运算和乘方运算互为逆运算。第21页,共66页,编辑于2022年,星期一n n5.矩阵的指数和对数运算矩阵的指数和对数运算n n指数函数和对数函数是非常重要的两个函数,所以指数函数和对数函数是非常重要的两个函数,所以MATLABMATLAB提供了两个专门的函数提供了两个专门的函数expmexpm和和logmlogm来实现来实现矩阵的指数运算和对数运算。矩阵的指数运算和对数运算。n n【例2-13】求矩阵的指数运算和对数运算n n A=rand(3)A=rand(3)n nA=n n 0.9501 0.4860 0.4565n n 0.2311 0.8913 0.0185n n 0.6068 0.7621 0.8214 0.6068 0.7621 0.8214第22页,共66页,编辑于2022年,星期一n n expm(A)%对A矩阵的每个元素求以e为底的指数n nans=ans=n n 3.1250 1.7453 1.1993n n 0.6360 2.6358 0.1796n n 1.8010 2.2981 2.6663n n logm(A)%logm(A)%对对A A矩阵的每个元素求以矩阵的每个元素求以e e为底的对数为底的对数n nans=ans=n n -0.2977 0.3399 0.6044 -0.2977 0.3399 0.6044n n 0.2874 -0.1588 -0.0604 0.2874 -0.1588 -0.0604n n 0.6696 0.8173 -0.3901第23页,共66页,编辑于2022年,星期一6.矩阵的数组运算矩阵的数组运算运算中,往往需要在矩阵之间进行对应元素的运算,这就是矩阵的数组运算。矩阵的数组运算与前面运算区别主要放映在乘和除两种运算中。n n1.乘法矩阵的数组运算A.*B(称为数乘)n n2.除法矩阵的数组运算A./B(称为数除)练习练习n n已知A=1 3 5;2 4 6;7 8 9;B=1 2 1;2 3 2;3 4 3 比较A*B和A.*B以及A/B和A./B的区别第24页,共66页,编辑于2022年,星期一2.2 稀疏型矩阵稀疏型矩阵n n如果在矩阵中,多数的元素并没有值,称此矩阵为稀如果在矩阵中,多数的元素并没有值,称此矩阵为稀疏矩阵疏矩阵(Sparse Matrix),由于矩阵在方程中常使用,由于矩阵在方程中常使用二维阵列表示,二维阵列的大小与使用的内存空间成二维阵列表示,二维阵列的大小与使用的内存空间成正比,如果多数的元素没有值,则会造成内存空间的正比,如果多数的元素没有值,则会造成内存空间的浪费,为此,必须设计稀疏矩阵的阵列储存方式,利浪费,为此,必须设计稀疏矩阵的阵列储存方式,利用较少的内存空间储存完整的矩阵信息。用较少的内存空间储存完整的矩阵信息。第25页,共66页,编辑于2022年,星期一2.2.1 稀疏型矩阵生成稀疏型矩阵生成n n在在在在MATLABMATLAB中,用中,用中,用中,用sparsesparse函数来创建一个稀疏矩阵。函数来创建一个稀疏矩阵。函数来创建一个稀疏矩阵。函数来创建一个稀疏矩阵。n nsparse(A)sparse(A)n n由非零元素和下标建立稀疏矩阵由非零元素和下标建立稀疏矩阵由非零元素和下标建立稀疏矩阵由非零元素和下标建立稀疏矩阵AA。如果。如果。如果。如果AA已是一个稀疏矩阵,已是一个稀疏矩阵,已是一个稀疏矩阵,已是一个稀疏矩阵,则返回则返回则返回则返回AA本身。本身。本身。本身。n nsparse(msparse(m,n)n)n n生成一个生成一个生成一个生成一个mnmn的所有元素都是的所有元素都是的所有元素都是的所有元素都是0 0的稀疏矩阵。的稀疏矩阵。的稀疏矩阵。的稀疏矩阵。n n【例【例【例【例2-142-14】把】把】把】把3 3阶的单位矩阵转换成稀疏矩阵。阶的单位矩阵转换成稀疏矩阵。阶的单位矩阵转换成稀疏矩阵。阶的单位矩阵转换成稀疏矩阵。n n as=sparse(eye(3)%as=sparse(eye(3)%生成主对角线为生成主对角线为生成主对角线为生成主对角线为1 1的稀疏矩阵。的稀疏矩阵。的稀疏矩阵。的稀疏矩阵。n nas=as=n n (1 (1,1)1%1)1%第第1 1行第行第1 1列的元素为列的元素为1 1n n (2 (2,2)1%2)1%第第2 2行第行第2 2列的元素为列的元素为1 1n n (3 (3,3)1%3)1%第第3 3行第行第3 3列的元素为列的元素为1 1第26页,共66页,编辑于2022年,星期一2.2.2 转换成满矩阵转换成满矩阵n nfull(S)full(S)函数可以将稀疏矩阵函数可以将稀疏矩阵S S转换成一个满矩阵。转换成一个满矩阵。n n【例【例2-152-15】将例】将例2-142-14中的结果再转换成满矩阵。中的结果再转换成满矩阵。n n full(as)n nans=ans=n n 1 0 0n n 0 1 0n n 0 0 1第27页,共66页,编辑于2022年,星期一2.2.3 对非零元素进行操作n nnnz(A)函数可以求矩阵A中非零元素的个数,它既可求满矩阵也可求稀疏矩阵。n nspy(A)spy(A)函数可以画出稀疏矩阵函数可以画出稀疏矩阵A A中非零元素的分布。中非零元素的分布。也可用在满矩阵中,在这种情况下,只给出非零元素的也可用在满矩阵中,在这种情况下,只给出非零元素的分布。分布。n nspy(A,cstr,size)函数可以用指定的颜色cstr在size规定的范围内画出稀疏矩阵A中非零元素的分布。n nnonzeros(A)nonzeros(A)函数可以按照列的顺序找出矩阵函数可以按照列的顺序找出矩阵A A中非中非零的元素。零的元素。第28页,共66页,编辑于2022年,星期一n nspones(A)spones(A)函数可以把矩阵函数可以把矩阵A A中的非零元素全换为中的非零元素全换为1 1。n nnzmax(A)函数可以给出为矩阵A中非零元素分配的内存数.不一定和nnz(A)得到的数相同。n nissparse(A)函数在矩阵A是稀疏矩阵的情况下返回1;否则返回0。n nspfun(fcnspfun(fcn,A)A)函数可以用函数可以用A A中所有非零元素对函数中所有非零元素对函数fcnfcn求值,如果函数不是对稀疏矩阵定义的,同样也可求值,如果函数不是对稀疏矩阵定义的,同样也可以求值。以求值。n nsprank(A)函数可以求稀疏矩阵A的结构秩。对于所有的矩阵来说,都有sprank(A)rank(A)。第29页,共66页,编辑于2022年,星期一n n【例2-16】求3阶单位矩阵的非零元素的个数,并画出非零元素的分布。n n nnz(eye(3)n nans=n n 3n n spy(eye(3)n n结果如图2.1所示。n n图图2.1 矩阵矩阵A 的稀疏表示的稀疏表示第30页,共66页,编辑于2022年,星期一2.2.4 稀疏矩阵的特例n nMATLABMATLAB中有四个基本稀疏矩阵,它们是单位矩阵,随机矩阵,中有四个基本稀疏矩阵,它们是单位矩阵,随机矩阵,中有四个基本稀疏矩阵,它们是单位矩阵,随机矩阵,中有四个基本稀疏矩阵,它们是单位矩阵,随机矩阵,对称随机矩阵和对角矩阵。下面介绍各自的生成函数。对称随机矩阵和对角矩阵。下面介绍各自的生成函数。对称随机矩阵和对角矩阵。下面介绍各自的生成函数。对称随机矩阵和对角矩阵。下面介绍各自的生成函数。n nspeye(n)speye(n)函数可以生成函数可以生成函数可以生成函数可以生成nnnn的单位稀疏矩阵。的单位稀疏矩阵。的单位稀疏矩阵。的单位稀疏矩阵。n nspeye(mspeye(m,n)n)函数可以生成函数可以生成函数可以生成函数可以生成mnmn的单位稀疏矩阵。的单位稀疏矩阵。的单位稀疏矩阵。的单位稀疏矩阵。n nsprand(A)sprand(A)函数可以生成与函数可以生成与函数可以生成与函数可以生成与AA有相同结构的随机稀疏矩阵,有相同结构的随机稀疏矩阵,有相同结构的随机稀疏矩阵,有相同结构的随机稀疏矩阵,且元素服从均匀分布。且元素服从均匀分布。且元素服从均匀分布。且元素服从均匀分布。n nsprand(msprand(m,n n,dens)dens)函数可以函数可以函数可以函数可以 生成一个生成一个生成一个生成一个mnmn的服从均的服从均的服从均的服从均匀分布的随机稀疏矩阵,有匀分布的随机稀疏矩阵,有匀分布的随机稀疏矩阵,有匀分布的随机稀疏矩阵,有densmndensmn个非零元素,个非零元素,个非零元素,个非零元素,0dens1.0dens1.参数参数参数参数densdens是非零元素的分布密度。是非零元素的分布密度。是非零元素的分布密度。是非零元素的分布密度。n nsprandn(A)sprandn(A)函数可以生成与函数可以生成与函数可以生成与函数可以生成与AA有相同结构的随机稀疏矩有相同结构的随机稀疏矩有相同结构的随机稀疏矩有相同结构的随机稀疏矩阵,且元素服从正态分布。阵,且元素服从正态分布。阵,且元素服从正态分布。阵,且元素服从正态分布。第31页,共66页,编辑于2022年,星期一n nsprandsym(S)sprandsym(S)函数可以生成一个随机对称稀疏矩阵。它的下三函数可以生成一个随机对称稀疏矩阵。它的下三函数可以生成一个随机对称稀疏矩阵。它的下三函数可以生成一个随机对称稀疏矩阵。它的下三角及主对角线部分与角及主对角线部分与角及主对角线部分与角及主对角线部分与S S的结构相同,矩阵元素服从正态分布。的结构相同,矩阵元素服从正态分布。的结构相同,矩阵元素服从正态分布。的结构相同,矩阵元素服从正态分布。n nsprandsym(nsprandsym(n,dens)dens)函数可以生成一个函数可以生成一个函数可以生成一个函数可以生成一个nnnn的随机对的随机对的随机对的随机对称稀疏矩阵称稀疏矩阵称稀疏矩阵称稀疏矩阵.矩阵元素服从正态分布,分布密度为矩阵元素服从正态分布,分布密度为矩阵元素服从正态分布,分布密度为矩阵元素服从正态分布,分布密度为densdens。n nBB,d=spdiags(A)d=spdiags(A)函数可以求出函数可以求出函数可以求出函数可以求出AA中所有的对角元,中所有的对角元,中所有的对角元,中所有的对角元,对角元保存在矩阵对角元保存在矩阵对角元保存在矩阵对角元保存在矩阵BB中,它们的下标保存在向量中,它们的下标保存在向量中,它们的下标保存在向量中,它们的下标保存在向量d d中。中。中。中。n nspdiags(Aspdiags(A,d)d)函数可以生成一个矩阵,这个矩阵包含函数可以生成一个矩阵,这个矩阵包含函数可以生成一个矩阵,这个矩阵包含函数可以生成一个矩阵,这个矩阵包含有矩阵有矩阵有矩阵有矩阵AA中向量中向量中向量中向量d d规定的对角元。规定的对角元。规定的对角元。规定的对角元。n nspdiags(Bspdiags(B,d d,A)A)函数可以生成矩阵函数可以生成矩阵函数可以生成矩阵函数可以生成矩阵AA,用矩阵,用矩阵,用矩阵,用矩阵BB中的列替换中的列替换中的列替换中的列替换d d定义的对角元。定义的对角元。定义的对角元。定义的对角元。n nA=spdiags(BA=spdiags(B,d d,mm,n)n)用保存在由用保存在由用保存在由用保存在由d d定义的定义的定义的定义的BB中的对角元中的对角元中的对角元中的对角元创建稀疏矩阵创建稀疏矩阵创建稀疏矩阵创建稀疏矩阵AA。第32页,共66页,编辑于2022年,星期一2.3 MATLAB与线性代数与线性代数n n2.3.1 2.3.1 矩阵的特征参数矩阵的特征参数矩阵的特征参数矩阵的特征参数n n1.1.求矩阵的行列式求矩阵的行列式求矩阵的行列式求矩阵的行列式n n 行列式对于查明一个方程组是否有解很有用。行列式是一个行列式对于查明一个方程组是否有解很有用。行列式是一个行列式对于查明一个方程组是否有解很有用。行列式是一个行列式对于查明一个方程组是否有解很有用。行列式是一个特殊的方形阵列,并且还可以简化为一个数。用户使用竖条特殊的方形阵列,并且还可以简化为一个数。用户使用竖条特殊的方形阵列,并且还可以简化为一个数。用户使用竖条特殊的方形阵列,并且还可以简化为一个数。用户使用竖条来表示一个行列式,而使用方括号来代表矩阵。将一个来表示一个行列式,而使用方括号来代表矩阵。将一个来表示一个行列式,而使用方括号来代表矩阵。将一个来表示一个行列式,而使用方括号来代表矩阵。将一个2 22 2的行列式简化为一个数的规则如下所示:的行列式简化为一个数的规则如下所示:的行列式简化为一个数的规则如下所示:的行列式简化为一个数的规则如下所示:n n数学上通过人笔算来得出行列式的值,现在可以通过数学上通过

    注意事项

    本文(第2章 数值计算功能PPT讲稿.ppt)为本站会员(石***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开