欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    《部分矩阵》PPT课件.ppt

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

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

    《部分矩阵》PPT课件.ppt

    第2章 Matlab及其应用,2.1 MATLAB的基本矩阵运算2.2 关系和逻辑运算2.3 矩阵操作2.4 时间和日期函数2.5 退出和保存工作空间2.6 Matlab的变量及数据类型,2.1、MATLAB的基本矩阵运算,2.1.1 简单矩阵输入1、命令行简单键盘输入用于很少数据输入 NaN Inf2、文件形式输入文本文件:从文本文件中读入数据 mat文件:matlab自有的数据格式,B=1 2 3;4 5 6B=1 2 3 4 5 6,2.1.2 语句生成矩阵,1、线性等间距格式矩阵(1)X=起始值:增加值:结束值(2)linspace命令a=linspace(1,10,5);(3)logspace命令b=logspace(0,2,10)2、矩阵连接 c=a b;3、用函数生成矩阵:zeros ones eye randn,2.1.3 矩阵运算,1、矩阵的运算符:加法:減法*:乘法;点乘:.*/:右除;右除:./:左除;左除:.:乘方2、矩阵的转置等运算 共轭转置;.转置inv:矩阵求逆det:求行列式值eig:求特征值与特征向量,运算规则:从左到右;先乘除后加减;乘方运算符最高(1)两矩阵加减 A、维数相同时,进行加减运算时,对应的元素进行加减;B、矩阵与标量加减,用矩阵中的每个元素都与标量进行加减运算;(2)两矩阵相乘 A、前提是前一矩阵的列等于后一矩阵的行,与数学约定一样;B、矩阵与标量相乘,用矩阵中的每个元素都与标量进行相乘;(3)矩阵中的元素对元素的相乘:.*(4)矩阵中的元素对元素的相除:./.(5)乘方运算 z=x.y x,y均为向量:z(i)=x(i)y(i)x为向量,y为标量:z(i)=x(i)y x为标量,y为向量:z(i)=xy(i),2.1.4 矩阵的超越函数,2.2 关系和逻辑运算,1、关系操作符(1)MATLAB常用的关系操作符有:(大于)、=(大于或等于)、=(等于)、=(不等于)。(2)MATLAB的关系操作符可以用来比较两个大小相同的数组,或者比较一个数组和一个标量。在与标量比较时,结果和数组大小一样。(3)如果满足指定的关系,返回1,否则返回0。a=1:9;b=a4b=0 0 0 0 1 1 1 1 1c=a(a4)c=5 6 7 8 9,2、逻辑操作符,(1)逻辑操作符定义了一种与或非的关系表达式。MATLAB的逻辑操作符有&(与)、|(或)、(非)(2)所有逻辑运算符连接的两个操作数或者同维、同大小,或者其中一个为标量。(3)逻辑运算符都是对元素的操作,每个非零元素都当作“1”处理,逻辑运算的结果是由1和0构成的矩阵。例如:c=(a4)c=1 1 1 1 0 0 0 0 0c=(a4)&(a7)c=0 0 0 0 1 1 0 0 0,与逻辑运算有关的函数函数:(1)all(A):c=all(x),则 c=1,向量x中全为非零元素;c=0,向量x中含有零元素(2)any(A):c=any(x),则 c=1,向量x中含有非零元素;c=0,向量x中全为零元素,2.3、矩阵操作,2.3.1 矩阵下标1、MATLAB通过确认下标,可以对矩阵进行插入子块、提取子块、删除子块(删除某些行列)和重排子块的操作。B=1 2 3;4 5 6;7 8 9;B(2,:)=B=1 2 3 7 8 92、为了提取矩阵a的第n行、第m列的元素值,使用a(n,m)可以得到。同样,将矩阵a的第n行、第m列的元素值赋为r,使用a(n,m)=r这样的命令。注意:在提取矩阵值时,行或列的值大于矩阵的大小,则出错;在给矩阵赋值时,如果行或者列超出矩阵的大小,则MATLAB自动扩充矩阵的规模,使得可以赋值,扩充部分以零填充。,3、利用矩阵下标,MATLAB还提供了子矩阵功能。同样是上面的a(n,m),如果n和m是向量,而不是标量,则将获得指定矩阵的子块.4、矩阵的子块还可以被赋值。如果在取子块时,n或m是“:”,则返回指定的所有行或列。5、矩阵的序号编址:按列计数。,矩阵大小,1、在MATLAB命令行中,使用whos命令可以查看到所有变量的大小。2、为了获得矩阵或者向量的大小,MATLAB还提供了两个有用的函数size和length。(1)size调用:A、不用参量x时:m,n=size(a)。当只有一个输出变量时,size返回一个行向量,第一个数为行数,第二个数为列数;如果有两个输出变量,第一个返回量为行数,第二个返回数为列数。B、当使用x时,只能有一个输出变量:m=size(a,x),x=1返回行数,x=2返回列数,这时只有一个返回值。(2)length返回行数或者列数的最大值,即length(a)=max(size(a)。,2.3.3 矩阵操作函数,MATLAB提供了一组执行矩阵操作的函数,例如:flipud(a)使得矩阵上下翻转,fliplr(a)使得矩阵左右翻转 rot90(a)使矩阵a逆时针旋转90度 rot90(a,k)使矩阵a逆时针旋转k*90度 repmat(A,m,n)平铺矩阵,将矩阵A复制m*n块,2.3.4 矩阵查找和排序,1、子矩阵的查找使用find命令完成,它返回关系表达式为真的下标。例如:a=10:20;find(a15)ans=7 8 9 10 112、矩阵的排序:sort函数,它将矩阵按照升序排列。,2.4 时间和日期1、日历函数:calendar2、时间函数:clock3、查看CPU 时间:cputime4、日期函数:date5、秒表定时:tic toc,2.5退出和保存工作空间:1、save:工作空间中的所有变量保存在磁盘上名为matlab.mat的文件中。2、save 文件名 变量名将指定的变量保存在指定的文件中。如:save temp x y z把x y z这3个变量保存在文件temp.mat中。3、下次加载MATLAB时,可以利用load命令将保存在文件中的变量恢复到工作空间中,其格式为:(1)load将保存在matlab.mat中的变量装入到matlab空间中。(2)load 文件名 变量名从指定文件中将指定的变量装入到matlab的工作空间中。如:load temp x从文件temp.mat 中只将变量x装入到 matlab的工作空间中。,2.6 Matlab的变量及数据类型,变量区分字母的大小写名字不能超过31(Matlab6.5版本为不超过65个)个字符变量必须以字母开头,之后可以是任意字母、数字或者下划线变量中不能含有标点符号,2.6.1 特殊变量,2.6.2 复数,不需要特殊的处理,可以直接进行。复数可以表示为:a=10-9i 注意:虚部与虚数单位之间不能留空格 函数:complexz=complex(3,4)z=complex(3)z=complex(3,0),2.6.3 MATLAB数据类型:数值类型、字符型、稀疏型、单元型、结构型、逻辑类型最常使用的是数值类型和字符型;稀疏型用于稀疏矩阵;单元型和结构型用于编写大型软件;8位型(6.0以上版本:16位型、32位型)用于图象处理。1、数值类型(double):在缺省情况下,当结果为整数,作为整数显示;当结果为实数,以小数后4位的精度近似显示。format short(默认)format long,不同的整型数据之间不能运算,例如:int8(22)*int16(5),2、字符型(char):a=sss;bbba=sssbbb(1)字符数组的定义:字符数组就是字符串,字符串中的每一个字符在系统内部都相应地表示一个数值。a=You are welcome!a=You are welcome!size(a)ans=1 16,相关函数A、函数disp用来显示字符串:disp(Hello)Hello B、判断一个变量是否为字符型数组,可以用函数class或ischar。x=class(a)y=ischar(a)x=chary=1,(2)字符与数值的相互转换:double:将一个字符串转换为一个数值 char:将数值转换为字符串s=Good morning!s1=double(s)s2=char(s1)s=Good morning!s1=71 111 111 100 32 109 111 114 110 105 110 103 33s2=Good morning!,(3)二维字符数组:创建二维字符数组时,每行的长度要相等。如果字符串长度不等,可以用空格充填较短的字符串。例如:s=abc;defg s=abc defg 用char函数创建二维字符数组比较方便。当字符串长度不等时,char函数可以自动地在较短的字符中加上一定数量的尾部空格,使其与最长字符串的长度相等。,例如:y=char(abc,defg,abcde)z1=length(y)z2=size(y)y=abc defg abcdez1=5z2=3 5,(4)字符串的比较 A、strcmp:判别两个字符串是否相等B、strncmp:判别两个字符串的前n个字符是否相等s1=glisten;s2=glitter;a1=strcmp(s1,s2)a2=strncmp(s1,s2,3)a1=0a2=1,注:尾部的空格,s1=This is a good examplestrrep(s1,good,great)strrep(s1,bad,great)strrep(s1,great),A=aaa;bbbbbB=strjust(A,center),(5)字符串的合并,3、稀疏型(sparse):含有大量0的矩阵,称为矩阵。只存储矩阵中的非0元素speye(4)生成单位稀疏矩阵ans=(1,1)1(2,2)1(3,3)1(4,4)1sprand 均匀分布随机数稀疏矩阵生成函数sparse 把满矩阵转化为稀疏矩阵 调用格式:sparse(A)sparse(i,j,s,m,n)i和j为矢量,指矩阵中非0元素的行号和列号,s是一个全部 元素为非0的矢量,m和n分别为输出稀疏矩阵的行数和列数,i,j,s=find(s)m,n=size(s)S=sparse(i,j,s,m,n),4、单元型(cell):把不同类型的数据存储在一起的数组称为单元数组。单元数组中的每个元素是其他任意一种数据类型,通常可以将相关的尺寸大小不同的数据组合在一起。a=1,good,1 2 3 a=1 good 1x3 double(1)创建单元数组:cellc=cell(n):生成一个n*n维的空数组c=cell(m,n):生成一个m*n维的空数组c=cell(size(A):生成一个和所包含的数组A阶数完全相同的空数组EX1:A=eye(2)c=cell(size(A)A=1 0 0 1,c=EX2:给单元数组赋值D=cell(1,3)D1,1=Good;D1,2=1 2;4 5;D1,3=1+4i;D D=D=Good 2x2 double 1.0000+4.0000i EX3:利用直接输入的方法创建单元数组,单元数组的下标用圆括号括起来,右边是单元数组的内容,用花括号括起来。Aa(1,1)=GOOD;Aa(1,2)=200;Aa(2,1)=5-6i;Aa(3,2)=1 2;4 5 Aa=GOOD 200 5.0000-6.0000i 2x2 double,(2)单元数组的显示A、直接显示AaAa=GOOD 200 5.0000-6.0000i 2x2doubleB、利用函数显示celldisp(Aa)celldisp(Aa,Bb),Aa1,1=GOODAa2,1=5.0000-6.0000iAa3,1=Aa1,2=200Aa2,2=Aa3,2=1 2 4 5,Bb表示显示的名字,C、利用图形显示单元数组cellplot(Aa)cellplot(Aa,legend),(3)单元数组的运算X=cell(2,3)X1,2=Welcome;X1,3=ones(4);X2,3=1 2 3;4 5 6;7 8 9Da=sum(X1,3)Db=sum(X2,3)X=X=Welcome 4x4 double 3x3 doubleDa=4 4 4 4Db=12 15 18,(4)单元数组的变形E=reshape(X,1,6)cellplot(E)E=Welcome 4x4 double 3x3 double,(5)字符型单元数组:由于字符矩阵要求矩阵的每一行的长度相等,需要在字符串的尾端加入空格,在读取的时候,又常常将末尾的空格去掉,很不方便。由于单元数组允许不同的单元内有不同类型和长度的数据,问题就可以避免。cellstr:将标准的字符型数组转换为字符型单元数组。EX1:ne=aaa;bb;cellstr(ne)ans=aaa bb,5、结构型(struct):把不同类型的数组存储在一起的数组称为结构数组。结构数组相当于数据库的记录。结构数组中不同类型的数组是通过不同的域名来区分的。在MATLAB的结构数组中,每个元素都是由不同的数据类型所组成的,不同的数据类型分别放在不同的数据区域里,称为结构数组的域。(1)建立结构数组A、利用函数struct建立结构数组调用格式:s=struct(field 1,values 1,field 2,values 2,)例:sxx=struct(name,zhao,Li,wang,age,20,21,29,address,changda)%注意:所有的address都赋相同的值 sxx(1)sxx(2),B、利用赋值语句直接生成结构数组sss.name=zhou;sss.age=10;sss.address=changda;sss sss.name=zhao sss=name:zhao age:10 address:changda sss(3).address=chang an sss=1x3 struct array with fields:name age address,相关函数A、getfield:获取结构数组中某个域的内容B、setfield:设置结构数组中某个域的内容C、rmfield:删除结构数组的域D、isfield:判断某个变量域是否是一个结构数组的域E、isstruct:判断某个变量域是否是一个结构数组,6、逻辑数据类型:,创建逻辑型数据的函数logical:将任意类型的数组转变为逻辑类型数组,非零为真,零为假true:产生逻辑真值数组false:产生逻辑假值数组,

    注意事项

    本文(《部分矩阵》PPT课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开