网站大量收购闲置独家精品文档,联系QQ:2885784924

第2章MATLAB矩阵及其运算详解.ppt

  1. 1、本文档共81页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.6 字符串 在MATLAB中,字符串是用单撇号括起来的字符序列。 MATLAB将字符串当作一个行向量,每个元素对应一个字符,其标识方法和数值向量相同。也可以建立多行字符串矩阵。 字符串是以ASCII码形式存储的。abs和double函数都可以用来获取字符串矩阵所对应的ASCII码数值矩阵。相反,char函数可以把ASCII码矩阵转换为字符串矩阵。 例2-13 建立一个字符串向量,然后对该向量做如下处理: 1 取第1~5个字符组成的子字符串。 2 将字符串倒过来重新排列。 3 将字符串中的小写字母变成相应的大写字母,其余字符不变。 4 统计字符串中小写字母的个数。 命令如下: ch ‘ABc123d4e56Fg9’; subch ch 1:5 %取子字符串 revch ch end:-1:1 %将字符串倒排 k find ch ‘a’ch ‘z’ ; %找小写字母的位置 ch k ch k - ‘a’-‘A’ ; %将小写字母变成相应的大写字母 char ch length k %统计小写字母的个数 与字符串有关的另一个重要函数是eval,其调用格式为: eval t 其中t为字符串。它的作用是把字符串的内容作为对应的MATLAB语句来执行。 2.7 结构数据和单元数据 2.7.1 结构数据 1.结构矩阵的建立与引用 结构矩阵的元素可以是不同的数据类型,它能将一组具有不同属性的数据纳入到一个统一的变量名下进行管理。建立一个结构矩阵可采用给结构成员赋值的办法。具体格式为: 结构矩阵名.成员名 表达式 其中表达式应理解为矩阵表达式。 2.结构成员的修改 可以根据需要增加或删除结构的成员。例如要给结构矩阵a增加一个成员x4,可给a中任意一个元素增加成员x4: a 1 .x4 ‘410075’; 但其他成员均为空矩阵,可以使用赋值语句给它赋确定的值。 要删除结构的成员,则可以使用rmfield函数来完成。例如,删除成员x4: a rmfield a,‘x4’ ; 3.关于结构的函数 除了一般的结构数据的操作外,MATLAB还提供了部分函数来进行结构矩阵的操作。 2.7.2 单元数据 1.单元矩阵的建立与引用 建立单元矩阵和一般矩阵相似,只是矩阵元素用大括号括起来。 可以用带有大括号下标的形式引用单元矩阵元素。例如b 3,3 。单元矩阵的元素可以是结构或单元数据。 可以使用celldisp函数来显示整个单元矩阵,如celldisp b 。还可以删除单元矩阵中的某个元素。2.关于单元的函数 MATLAB还提供了部分函数用于单元的操作。 2.8 稀疏矩阵 2.8.1 矩阵存储方式 MATLAB的矩阵有两种存储方式:完全存储方式和稀疏存储方式。 1.完全存储方式 完全存储方式是将矩阵的全部元素按列存储。以前讲到的矩阵的存储方式都是按这个方式存储的,此存储方式对稀疏矩阵也适用。 2.稀疏存储方式 稀疏存储方式仅存储矩阵所有的非零元素的值及其位置,即行号和列号。在MATLAB中,稀疏存储方式也是按列存储的。 注意,在讲稀疏矩阵时,有两个不同的概念,一是指矩阵的0元素较多,该矩阵是一个具有稀疏特征的矩阵,二是指采用稀疏方式存储的矩阵。 2.8.2 稀疏存储方式的产生 1.将完全存储方式转化为稀疏存储方式 函数A sparse S 将矩阵S转化为稀疏存储方式的矩阵A。当矩阵S是稀疏存储方式时,则函数调用相当于A S。 sparse函数还有其他一些调用格式: sparse m,n :生成一个m×n的所有元素都是0的稀疏矩阵。 sparse u,v,S --:u,v,S是3个等长的向量。S是要建立的稀疏矩阵的非0元素,u i 、v i 分别是S i 的行和列下标,该函数建立一个max u 行、max v 列并以S为稀疏元素的稀疏矩阵。 此外,还有一些和稀疏矩阵操作有关的函数。例如 [u,v,S] find A :返回矩阵A中非0元素的下标和元素。这里产生的u,v,S可作为sparse u,v,S 的参数。 full A :返回和稀疏存储矩阵A对应的完全存储方式矩阵。 2.产生稀疏存储矩阵 只把要建立的稀疏矩阵的非0元素及其所在行和列的位置表示出来后由MATLAB自己产生其稀疏存储,这需要使用spconvert函数。调用格式为: B spconvert A 其中A为一个m×3或m×4的矩阵,其每行表示一个非0元素,m是非0元素的个数,A每个元素的意义是: i,1 第i个非0元素所在的行。 i,2 第i个非0元素所在的列。 i,3 第i个非0元素值的实部。 i,4 第i个非0元素值的虚部,若矩阵的全部元素都是实数,则无须第四列。 该函数将A所描述的一个稀疏矩阵转化为一个稀疏存储矩阵。 例2-

文档评论(0)

boss + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档