matlab第2章仿真基础知识.ppt

上传人:wuy****n92 文档编号:70793767 上传时间:2023-01-28 格式:PPT 页数:44 大小:1.39MB
返回 下载 相关 举报
matlab第2章仿真基础知识.ppt_第1页
第1页 / 共44页
matlab第2章仿真基础知识.ppt_第2页
第2页 / 共44页
点击查看更多>>
资源描述

《matlab第2章仿真基础知识.ppt》由会员分享,可在线阅读,更多相关《matlab第2章仿真基础知识.ppt(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第二章 MATLAB仿真基础知识 2.1 MATLAB语言的基本使用环境 2.2 MATLAB语言数据结构;2.1 MATLAB语言的简单界面MATLAB联机帮助Matlab命令窗口中的help菜单下的Matlab help命令。Simulink 工作窗口MATLAB MATLAB 入门入门1、计算器的使用例如:计算算术式 (3*(6-2)+2)/23MATLAB MATLAB 入门入门“”为提示符,等待输入运算符(+、-、*、/、等)为计算机语言常用运算符。“ans”为“answer”的缩写,引出结果 是一个系统自带变量。2.2 MATLAB语言数据结构:双精度浮点数型数据,double()

2、整型数据表示:int8(),int16(),int32()无符号整型数据表示:uint8(),uint16(),uint32()n n除了一般的实数数据之外,MATLAB还支持复数向量、矩阵和字符串型矩阵,从MATLAB 5MATLAB 50 0版本开始,还允许其他更高级的数据类型,如多维数组、数据结构体、单元数据、类和对象等,n n2.2.1常量、变量与赋值语句1.MATLAB语言变量名应该由字母开头,后面可以跟字母、数字、下划线如:MAN12,A_12,WE_ 正确变量名 12a,_WE 不正确变量名注:MATLAB语言的变量名区分大小写,如 AER aeR2.赋值语句 变量表达式()在命

3、令窗口中表达式的结果值赋给保留变量在命令窗口中表达式的结果值赋给保留变量ansans;3.3.函数调用语句函数调用语句 返回变量列表返回变量列表 函数名(输入变量列表)函数名(输入变量列表)函数名命名规则与变量名相同,而且对应某一文件。函数名命名规则与变量名相同,而且对应某一文件。u,v,w=fun(x,y)u,v,w=fun(x,y)u v w=fun(x y)u v w=fun(x y)返回或输入的各变量列表间以逗号或空格分开。返回或输入的各变量列表间以逗号或空格分开。n nepseps一机器的浮点运算误差限。一机器的浮点运算误差限。PCPC机上机上epseps的默的默认值为认值为2 22

4、2xl022xl0-16-16,若某个量的绝对值小于,若某个量的绝对值小于espesp:,则可以认为这个量为:,则可以认为这个量为o o。n ni i和和j j若若i i和和j j 不被改写,则它们表示纯虚数量不被改写,则它们表示纯虚数量i i。n nInf Inf 一无穷大量一无穷大量+的的MATLABMATLAB表示,也可以写表示,也可以写成成inf,inf,同样地同样地-可以表示为可以表示为InfInf。n nNaNNaN一不定式一不定式(Not a Number)(Not a Number),通常由,通常由0 00 0运运算、算、InfInfInfInf及其他可能的运算得出。及其他可能

5、的运算得出。NaNNaN是个是个很奇特的量,如很奇特的量,如NaNNaN与与InfInf的乘积仍为的乘积仍为NaNNaN。n nPiPi一圆周率一圆周率 的双精度浮点表示的双精度浮点表示MATLAB 是一个基于矩阵运算的工具。矩阵的表示。1、一行输入;(空格、逗号)2、多行输入;(空格、逗号)数学上的矩阵:数学上的矩阵:2.2.2 MATLAB2.2.2 MATLAB的矩阵表示的矩阵表示 语句后无分号得下面结果矩阵行向量的表示矩阵列向量的表示n n用冒号表达式给行向量赋值,其格式为:用冒号表达式给行向量赋值,其格式为:a=s1:s2:s3 (a=s1:s2:s3 (当当s20s20时时s1s3

6、s1 A(5,6)=5 A(5,6)=5n nA=A=n n1 2 3 4 0 01 2 3 4 0 0n n4 3 2 1 0 04 3 2 1 0 0n n2 3 4 1 0 02 3 4 1 0 0n n3 2 4 1 0 03 2 4 1 0 0n n0 0 0 0 0 50 0 0 0 0 5n nMatlab语言数据结构:数据结构体 和单元结构2.2.4数据结构体:数据结构体将某一类相关的信息纳入一个统的变量名字下进行管理。(数据库)例:考虑建立学生档案结构体,应包含下列信息:例:考虑建立学生档案结构体,应包含下列信息:编号编号(用用numbernumber表示,在结构体下表示,在

7、结构体下numbernumber又称为又称为其成员变量或域其成员变量或域):数值型。:数值型。姓名姓名(name)(name):字符串型。:字符串型。身高身高(height)(height):数值型。:数值型。考试成绩考试成绩(test)(test):矩阵,其第:矩阵,其第i i行为第行为第i i次考试的成绩,次考试的成绩,而第而第j j列为第列为第j j门考试的成绩。门考试的成绩。可建立起结构体可建立起结构体student_recstudent_rec:n n student_recnumber=1;n n student_recname张三;n n student_rec.height18

8、0;n n student_rectest100,80,75;77,60,92;67;28,90;100,89,78;n n student_rec%显示结构体的内容n n student_recn n number:1n n name:张三n n height:180n n test:43 double3 doublen nstudent_rectestn nans=n n 100 80 75 n n 77 60 92 n n 67 28 90n n 100 89 782.2.5 2.2.5 单元结构单元结构单元结构是把不同属性的数据都纳入到一个变量之单元结构是把不同属性的数据都纳入到一个变

9、量之下,这个变量称为单元。下,这个变量称为单元。单元结构和结构体的关系:单元结构和结构体的关系:(1 1)结构体下的各个子项称为成员变量,而每个)结构体下的各个子项称为成员变量,而每个成员变量都有自己的名字;成员变量都有自己的名字;(2 2)单元变量类似于带有下标的矩阵和多维数组,单元变量类似于带有下标的矩阵和多维数组,且用大括弧括起来且用大括弧括起来(3 3)在矩阵和多维数组中每个矩阵元素都应该具有)在矩阵和多维数组中每个矩阵元素都应该具有相同的属性,而单元结构可把不同属性的数据归相同的属性,而单元结构可把不同属性的数据归并起来。并起来。考虑建立学生档案采用单元结构,应包含下列信息:考虑建立

10、学生档案采用单元结构,应包含下列信息:其中 为续行符号,表示下一行的内容紧跟上行 B4%显示第4单元内容 B(4)()方法2:celldisp(B)%celldisp(B)%显示整个单元变量采用函数方法实现。显示整个单元变量采用函数方法实现。B1=B1=1 1B2=B2=张三张三B3=B3=180 180B4=B4=100 80 75 100 80 75 n n 77 60 92 77 60 92 n n 67 28 90 67 28 90n n 100 89 78 100 89 78n nB(3)=%B(3)=%删除删除 B B单元变量的第单元变量的第3 3 个单元元素个单元元素n nB3=

11、%B3=%将第将第3 3 个单元置成空矩阵。个单元置成空矩阵。如果A矩阵含有复数元素,则对之进行转置时,其转置矩阵B的元素定义为bji=aij*,i1,n,j1,m,亦即首先对各个元素进行转置,然后再逐项求取其共轭复数值。这种转置方式又称为Hermit转置,其数学记号为b=A*1.矩阵转置2.3Matlab下矩阵的运算2.3.1 矩阵的代数运算复数矩阵的常规转置复数矩阵的常规转置A AT T则可由函数则可由函数transponse()transponse()B Btransponse(A)%transponse(A)%直接转置直接转置 B BBA 可表示复数矩阵也可表示实数矩阵的转置ctran

12、sponse(A)可以实现hermit转置2.矩阵的加减法运算 C=A+B C=A-B (1)矩阵A、B维数相同,它会自动将其对应元素相加减;(2)若其中之一为标量,则变加(减)于另一个矩阵;函数实现:plus(A,B)minus(A,B)3.矩阵乘法矩阵相乘的条件:矩阵相乘的条件:A A、B B矩阵相容;矩阵相容;如:如:C=A*BC=A*B由Matlab编程得C=mtimes(A,B)C=mtimes(A,B)4.矩阵的左除()“”运算符号表示两个矩阵的左除既AB为方程AX=B 的解X,(A、B尽可能为方阵)函数实现:mldivide(A,B)求解线性方程组:n n A=5 7 6 5 1

13、;7 10 8 7 2;6 8 10 9 3;5 7 9 10 4;1 2 3 4 5;n n B=24 96;34 136;36 144;35 140;15 60;n n X=AB5.矩阵的右除(/)“/”运算符号表示两个矩阵的右除既B/A为方程XA=B 的解X,(A、B尽可能为方阵)A为非奇异方阵,函数实现:mrdivide(A,B)n n6.矩阵翻转7.矩阵乘方 Ax(A矩阵为方阵)若x为正整数,将A矩阵自乘X次;若X为负整数,则将A矩阵自乘X次后对结果进行求逆运算;若x=n/m,其中n和m均为整数,先将A矩阵自乘n次,然后对结果再开m次方。函数实现:mpower(A,x)8.8.点运算

14、点运算 两个矩阵之间的点运算是他们对应元素的直接运算两个矩阵之间的点运算是他们对应元素的直接运算(又称又称HadamardHadamard运算运算)C=A.*B (c C=A.*B (cij ij=a=aij ij*b*bij ij)注:点乘的矩阵应具有相同的维数注:点乘的矩阵应具有相同的维数例:给定的矩阵例:给定的矩阵A A和和B B 向量X5的求解:A=X5()A=X.5()函数实现:times(A,B)2.3.2 矩阵的逻辑运算在在MatlabMatlab中,如果一个数的值为中,如果一个数的值为0 0,则可以认为它,则可以认为它为逻辑为逻辑0 0,否则为逻辑,否则为逻辑1 1。1.矩阵与

15、运算(&)C=A&BA和B必须满足的条件:(1 1)A A和和B B的维数应该相同或其中之一为标量的维数应该相同或其中之一为标量(2 2)A A和和B B矩阵的对应元素进行矩阵的对应元素进行“与与”运算,如果运算,如果两个数均非两个数均非0 0,则该结果元素的值为,则该结果元素的值为1 1,否则为,否则为0 0(3 3)矩阵)矩阵A A和和B B的与运算还可表示为的与运算还可表示为and(A,B)and(A,B)2.矩阵的或运算(|)C=A|B条件:(1 1)A A和和B B的维数应该相同或其中之一为标量的维数应该相同或其中之一为标量(2 2)A A和和B B矩阵的对应元素进行矩阵的对应元素进

16、行“或或”运算,如果运算,如果两个数均为两个数均为0 0,则该结果元素的值为,则该结果元素的值为0 0,否则为,否则为1 1(3 3)矩阵)矩阵A A和和B B的或运算还可表示为的或运算还可表示为or(A,B)or(A,B)3.矩阵的非运算()C=A条件:(1 1)A A矩阵进行矩阵进行“非非”运算时,若矩阵对应元素运算时,若矩阵对应元素为为0 0,则结果为,则结果为1 1,否则为,否则为0 0(2 2)矩阵)矩阵A A的非运算还可表示为的非运算还可表示为not(A)not(A)n n4.矩阵的异或运算(xor)n n C=xor(A,B)n n条件:n n(1)A和B的维数应该相同或其中之一

17、为标量n n(2)A和B矩阵的对应元素进行“异或”运算,如果两个数一个为0,一个非0,则结果元为1,否则为0两矩阵A和B A=0 2 3 4;1 3 5 0;A=0 2 3 4;1 3 5 0;B=1 0 5 3;1 5 0 5;B=1 0 5 3;1 5 0 5;A&B%A&B%与运算与运算 ans=ans=0 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 A|B%A|B%或运算或运算 ans=ans=1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 A=0 2 3 4;1 3 5 0;A=0 2 3 4;1 3 5 0;B=1 0 5 3;1 5 0 5;B=1

18、 0 5 3;1 5 0 5;A%A%非运算非运算 ans=ans=1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 Xor(A,B)%Xor(A,B)%异或运算异或运算 ans=ans=1 1 0 0 1 1 0 0 0 0 1 1 0 0 1 1 n n2.3.3 矩阵的比较关系 这些关系针对矩阵对应元素而言的,所以在使用关系运算时,应该保证两个矩阵的维数是一致的或其一为标量。关系运算对两个矩阵的对应运算进行比较,若关系满足,则将结果矩阵中该位置的元素置为1,不满足则置0。A=0 2 3 4;1 3 5 0;A=0 2 3 4;1 3 5 0;B=1 0 5 3;1 5 0

19、5;B=1 0 5 3;1 5 0 5;A=B%A=B%判定相等关系判定相等关系 ans=ans=0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0A=B%A=B%判定大于、等于关系判定大于、等于关系 ans=ans=0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 0C=B=A%C=B=A%判定不等于关系判定不等于关系 ans=ans=1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1n n3 3、逆矩阵与行列式计算、逆矩阵与行列式计算n n求逆:求逆:inv(A)inv(A);或;或A(-1)A(-1)n n求行列式:求行列式:det(A)det(A)n

20、n要求矩阵必须为方阵要求矩阵必须为方阵a=1 2 3;4 5 6;2 3 5;b=inv(a)b=-2.3333 0.3333 1.0000 2.6667 0.3333 -2.0000 -0.6667 -0.3333 1.0000det(a)ans=-3三、矩阵的操作1、矩阵下标MATLAB通过确认矩阵下标,可以对矩阵进行插入子块,提取子块和重排子块的操作。n nA(m,n)A(m,n):提取第:提取第mm行,第行,第n n列元素列元素n nA(:,n)A(:,n):提取第:提取第n n列元素(冒号表示全部)列元素(冒号表示全部)n nA(m,:)A(m,:):提取第:提取第mm行元素行元素n

21、 nA(m1:m2,n1:n2)A(m1:m2,n1:n2):提取第:提取第m1m1行到第行到第m2m2行和第行和第n1n1列到第列到第n2n2列的所有元素(提取子块)。列的所有元素(提取子块)。n nA(:)A(:):得到一个长列矢量,该矢量的元素按矩阵的列:得到一个长列矢量,该矢量的元素按矩阵的列进行排列。进行排列。n n矩阵扩展:如果在原矩阵中一个不存在的地址位置上矩阵扩展:如果在原矩阵中一个不存在的地址位置上设定一个数(赋值),则该矩阵会自动扩展行列数,设定一个数(赋值),则该矩阵会自动扩展行列数,并在该位置上添加这个数,而且在其他没有指定的位并在该位置上添加这个数,而且在其他没有指定的位置补零。置补零。n n消除子块:如果将矩阵的子块赋值为空矩阵消除子块:如果将矩阵的子块赋值为空矩阵 ,则,则相当于消除了相应的矩阵子块。相当于消除了相应的矩阵子块。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

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

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