第二章 矩阵及其基本运算.ppt_第1页
第二章 矩阵及其基本运算.ppt_第2页
第二章 矩阵及其基本运算.ppt_第3页
第二章 矩阵及其基本运算.ppt_第4页
第二章 矩阵及其基本运算.ppt_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本章内容:变量类型基本公式数据类型运算符、操作符关系运算和逻辑运算3个程序计程仪构成计程仪程序流控制语句2种m文件m文件的调试。 创建、存储和提取沉积基质的方法矩阵元素id、矩阵函数、矩阵运算、数组运算、数组函数和数据输出。第2章矩阵及其基本运算、本章练习:公式、过程控制特罗尔练习矩阵基本运算练习、1、变量和数据操作、1 .变量名称为MATLAB 6.5,变量名称以字母开头,后跟字母、数字、下划线的字符串,最多为63个字符。 在MATLAB中,变量名称区分大小写。 2代入句(1)变量=式(2)式这里式子是用运算符连接运算量的式子,其结果是矩阵。 修正例2-1式的值,显示修正结果。 在MATLA

2、B命令窗口中输入命令: x=(0:0.1:10000).*pi./360; y1=真(x ); y2=正弦(1. 05 * x ):y3=正弦(0.1* x ):y4=正弦(5* x ) :打印(x,y1 y2); 打印(x,y3.*y4); 例如,休眠现象,信号调制,3 .预定义的变量在MATLAB工作区中存在一些由系统本身定义的变量。 例如,用pi表示圆周率的近似值,用I,j表示虚数单位.预定义的变量有特定的意义。 使用时,请尽量避免将这些个重新分配给变量。 二、MATLAB常用数学函数,MATLAB提供许多数学函数,将函数的自变量定义为矩阵变量,算法将函数按项作用于矩阵的元素,运算结果与

3、自变量为同一维数的矩阵。 函数使用说明: (1)三角函数以弧度为单位进行修正。 (2) abs函数能够求出实数的绝对值、复数的地震震级、字符串的ASCII查询密码值,(3)用于舍入的函数有fix、floor、ceil、round,留心它们的差异。 (4) rem和模函数的不同。 rem(x,y )和mod(x,y )的x,y必须是相同大小的实矩阵或标量。 三、创建和引用矩阵,创建一个矩阵的直接输入法最简单的矩阵创建方法是直接从牛鼻子板输入矩阵元素。 具体来说,将矩阵元素括在方括号内,按矩阵行的顺序输入各元素,用空格或逗号分隔同一行的各元素,并用分号分隔不同行的元素。 的双曲馀弦值。 使用冒号表

4、达式创建向量冒号表达式将生成低向量。 典型的格式是e1:e2:e3,其中e1是初始值,e2是步长,e3是结束值。 MATLAB还可以使用linspace函数生成低向量。 调用格式为linspace(a,b,n )。 其中a和b是生成向量的第一个和最后一个元素,n是元素的总数。 显然,空间(a,b,n )等效于a:(b-a)/(n-1):b。 2 .引用矩阵的元素。 用下标引用矩阵元素。 例如,a (3,2 )=200使用矩阵元素的编号引用矩阵元素。 矩阵元素的序列号是相应元素在内存中的排列顺序。 在MATLAB中,矩阵元素按列存储,依次类推第一列、第二列和第三列。 例如,a=1、2、3; 4,

5、5,6 a (3) ans=2很明显,编号(Index )和下标(Subscript )是一对一对应的,以mn矩阵a为例,矩阵元素A(i,j )的编号是(J1)*,其相互变换关系也是sub2ind和ind2sub函数由3矩阵分割(1)冒号式得到的子矩阵A(:j )表示取a矩阵的第j列的所有元素A(i, )表示a矩阵的第I行的所有元素。 A(i,j )表示取a矩阵第I行、第j列的元素,a (I 3360 im, )表示取a矩阵的第ii m行的所有元素,A(:k3360km )表示取a矩阵的第kk m列的所有元素另外,也可以使用一般的向量和end运算符来表现矩阵的下标,得到子矩阵。 end表示一维

6、末尾元素的下标。 4 .生成常用于生成特殊矩阵的通用特殊矩阵的函数生成zeros :全0矩阵(零矩阵)。 ones :生成全1矩阵(或矩阵)。 生成eye :单位矩阵生成在rand:01之间均匀分布的随机矩阵。randn :生成平均值为0、色散值为1的标准正态分布随机矩阵。 例2-2分别创建与矩阵a相同大小的零矩阵33、32。 (1)建立33零矩阵。 zeros(3) (2)建立了一个32零矩阵。 假设zeros (3,2 ) (3)将a设为23矩阵,则可以在zeros(size(A ) )中制作与矩阵a相同大小的零矩阵。 A=1 2 3; 4 5 6 %的23阶矩阵Azeros(size(A

7、) %生成与矩阵a同样大小的零矩阵,例2-3生成随机矩阵: (1)在区间20、50内均匀分布的5阶随机矩阵。 (2)平均值为0.6、色散值为0.1的5次正态概率分布随机矩阵。 该命令为x=20 (50-20 ) * rand (5) y=0.6sqrt (0.1) * randn (5),对于用于专业的特殊矩阵(1)平方矩阵的n阶立方体阵列,其元素为1、2、3、 n-2个校正n-2 MATLAB提供求铁轨矩阵的函数magic(n ),其功能是生成n阶铁轨矩阵。 示例2-5在5行5列的表中填写25个个数,例如101125,使各行的各列与对折角线之和为565。 M=100 magic(5),(2)

8、帕斯卡矩阵知道,二次项(x y)n展开后的系数随着n的增加构成三角形表,被称为杨亮三角形。 杨辉三角形表构成的矩阵称为帕斯卡(Pascal )矩阵。 函数pascal(n )生成n阶帕斯卡矩阵。 求例2-7(xy)5的展开式。 在MATLAB命令窗口中,输入命令。 pascal(6)矩阵对角线上的元素1,5,10,10,5,1是展开式的系数。 四、MATLAB运算和1 .算术运算MATLAB的基本算术运算是(加法)、(减法)、* (乘法)、/(右除法)、(左除法)和(乘法)。 另外,运算按矩阵的意义进行,各个数据的算术运算例外。 (1)矩阵的加减运算,假定有两个矩阵a和b,可以用A B和A-B

9、实现矩阵的加减运算。 如果a和b矩阵的维数相同,则运算规则可以执行矩阵的加减运算,对a和b矩阵的对应元素进行加减运算。 如果a和b的维数不同,MATLAB将显示一条错误消息,指示用户两个矩阵的维数不匹配。 (2)假定矩阵乘法有两个矩阵a和b,其中a是mn矩阵,b是np矩阵,则C=A*B是mp矩阵。 (3)矩阵除法MATLAB有和/,分别是左除法和右除法两种矩阵除法。 如果a矩阵为非奇异正方矩阵,则能够实现AB和B/A运算。 AB对应于a的逆左乘b矩阵(inv(A)*B ),且B/A对应于a矩阵的逆右乘b矩阵(B*inv(A ) )。 在包含标量的运算中,两个除法的结果相同。 例如,3/4和43

10、是相同的值,为0.75。 另外,当a=10.5、25时,a/5=5a=2.1000 5.0000。 对于一个矩阵,左除法和右除法表示两种不同的除数矩阵和被除数矩阵的关系。 对于矩阵运算,一般ABB/A。 (4)矩阵的幂单个矩阵的幂运算可以表示为Ax,其中请求a是正方形矩阵,并且x是标量。 在两点运算MATLAB中,因为运算符加在算术运算符之前,所以有一种称为点运算的特殊运算。 点运算符有. *、 /、 两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的二维残奥参数相同。 3 .关系运算MATLAB提供了六种类型的关系运算子: (大于)、=(大于或等于)、=(等于)、=(不等于)。 很

11、容易理解这些个的意思,但留心其表示方法与数学中不等式符号不同。 (1)当两个比较量是标准量时,关系运算端子的算法将两个数量的大小直接进行比较。 关系成立时,关系式的结果为1,否则为0。 (2)如果比较涉及的量是两个维度相同的矩阵,则比较根据标量关系运算规则对两个矩阵的相同位置的元素逐个进行,并且提供元素比较结果。 最终关系运算的结果是原始矩阵和维数相同,元素由0或1组成。 (3)在参与比较的一个是标量,另一个是矩阵的情况下,按照标量关系运算规则,将标量和矩阵的各要素各比较一个,给出要素比较结果。最终关系运算的结果是原始矩阵和维数相同,元素由0或1组成。 例2-8生成5阶随机方阵a,该元素是10

12、,90区间的随机整数,判断a的元素是否能被3整除。 (1)生成5次随机正方矩阵a。 判断A=fix(90-10 1)*rand(5) 10) (2的元素体是否能被3整除。 P=rem(A,3)=0其中,rem(A,3 )是矩阵a中的每个元素除以3所得的偶数矩阵。 此时,0被扩展为与a同维的零矩阵,而p是进行相等(=)比较的结果矩阵。4 .逻辑运算MATLAB提供了三个逻辑运算符: 56、0、67、-45、0(2)查找大于4的元素的位置。 find(A4),5 .矩阵的倒置和旋转矩阵的倒置运算符是单一撇号() 矩阵的旋转利用函数rot90(A,k )将矩阵a旋转90的k倍,当k为1时可以省略。

13、对6行列的反转、行列的左右反转行列实施左右反转,是将原行列的第一列和最后一列交换,将第二列和最后一列交换,依次类推。 MATLAB对矩阵a施加左右反转的函数是fliplr(A )。 矩阵的上下反转MATLAB对矩阵a实施上下反转的函数是flipud(A )。 在五、字符串和MATLAB中,字符串是用单撇号包围的字符串。 MATLAB将字符串视为行向量,每个元素对应于一个字符,识别方法与数字向量相同。 也可以创建多行字符串矩阵。 字符串存储为ASCII查询密码。 abs函数可用于获取与字符串矩阵相对应的ASCII查询密码数值矩阵。 相反,char函数可以将ASCII查询密码矩阵转换为字符串矩阵。

14、 生成例2-13字符串向量,(1)取由第15个字符组成的子字符串。 (2)倒排字符串。 (3)将字符串中的小写字母变更为对应的大写字母,其侑字母不变更。 (4)对字符串中小写字母的个数进行计数。 命令如下: ch=ABc123d4e56Fg9。 subch=ch(1:5) %子字符串将rev ch=ch (结束3360-1:1 ) %字符串更改为k=find(ch=a %将小写字母更改为对应的大写字母char )。 可以通过为结构成员赋值来创建结构矩阵。 具体的格式是结构矩阵名.成员名=式,式应该理解为行列式。 对结构成员的更改可以根据需要添加或删除结构成员。 例如,要将成员x4添加到结构矩阵

15、a中,可以将成员x4:a(1).x4=410075添加到a的任何元素中,但是其他成员都是空矩阵,可以使用赋值语句指派确定的值。 要删除结构的成员,请使用rmfield函数。 例如,删除成员x4:a=rmfield(a,x4)。2单元格数据单元格矩阵的创建与参照创建单元格矩阵和一般矩阵类似,但矩阵元素用大括号括起来。 单元格沉积基质元素可以引用为大括号中的下标。 例如b 3、3。 单元格矩阵的元素可以是结构或单元格数据。 可以使用celldisp函数显示整个单元格矩阵,如celldisp(b )。 也可以从单元格能源宝中删除元素。7.m文件的编辑和调试、MATLAB中的plum文件是以. m为扩

16、展名的文本文件,称为m文件。该语句的执行相当于在命令窗口中依次输入相应的命令. m文件,说明性文字(注释)以%开头,可以用Help命令显示说明性文字的内容。 例如:健康保健程序健康保健,步骤好! % studyhardandmakeprogresseveryday! 亚麻跌! 亚麻跌! %Good good study,日复一日! %,上段计程仪程序执行结果:什么都不显示. %Hello,Students! 戴斯普(hello,Students )! 再执行,理解注释的作用,在编程风格:中需要的注释中做留心缩写的模数化研究注释,记录各文件的功能和注意事项,8 .输入和修改文件内容,调试修改保存

17、程序,9 .输入流控制特罗尔的循环结构, For循环语法: for循环变量=初始值3360步骤3360最终值循环整体end,例如3360连续加法算法end sprintf(s=%d,s ),例如3360累计乘法,%multitime1.m p=1。 for n=1:1:10 p=p*n。 end sprintf(p=%dn,p ),例如:连加法和累积乘法的并用:求e的值。 %程序1.m % givestheexpnumbere=1。 for n=1:100 p=1; m=13360 n p=p * m。 终点e=e1/p; end sprintf(p=%fn,p ),例如应用于非线性物理。 逻辑映射,迭代函数:%programe bug.m虫口模型x=0.6; u=2.6:0.001:4; 世代150次稳定x=u.*(x-x.2 ); I=1336

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论