您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > 薛定宇控制系统计算机辅助设计chap2
2019/12/16控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院1第2章MATLAB语言程序设计基础薛定宇著《控制系统计算机辅助设计——MATLAB语言与应用》清华大学出版社2019/12/162控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院MATLAB语言的简洁高效性MATLAB语言的科学运算功能MATLAB语言的绘图功能MATLAB庞大的工具箱与模块集MATLAB强大的动态系统仿真功能MATLAB语言是当前国际上自动控制领域的首选计算机语言,也是很多理工科专业最适合的计算机数学语言,本课程以MATLAB为主要计算机语言。2019/12/163控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院本章主要内容MATLAB程序设计语言基础基本数学运算MATLAB语言流程控制函数编写与调试二维图形绘制三维图形表示MATLAB语言与现代科学运算2019/12/164控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.1MATLAB程序设计语言基础MATLAB语言的变量名规则由一个字母引导,后面可以为其他字符区分大小写AbcABc有效MYvar12,MY_Var12和MyVar12_错误的变量名12MyVar,_MyVar12MATLAB的保留常量eps,i,j,i=sqrt(-1),pi,NaN,Inflastwarn,lasterr2019/12/165控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院数值型数据结构双精度数值变量IEEE标准,64位(8字节),11指数位,53数值位和一个符号位double()函数的转换其他数据类型uint8,常用于图像表示和处理,8位int8(),int16(),int32(),uint16(),uint32()2019/12/166控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院符号型变量数据类型符号型,sym(A),常用于公式推导变量声明采用变精度函数求值【例2-1】求出自然对数底的前300位有效数字2019/12/167控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院MATLAB支持的其他数据结构基本数值变量类型:双精度复数矩阵字符串型数据:用单引号括起来多维数组:是矩阵的直接扩展,多个下标单元数组:将不同类型数据集成到一个变量名下面,用{}表示结构体:A.b,引用也用A.b,不是A-b类与对象:可以定义重载函数2019/12/168控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院MATLAB的基本语句结构直接赋值语句【例2-2】表示矩阵2019/12/169控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-3】试输入复数矩阵需要避免的语句2019/12/1610控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院函数调用语句冒号表达式2019/12/1611控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-4】用不同的步距生成(0,p)间向量2019/12/1612控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院子矩阵提取基本语句格式【例2-5】子矩阵提取提取A矩阵全部奇数行,所有列提取A矩阵3,2,1行、2,3,4列构成子矩阵将A矩阵左右翻转,即最后一列排在最前面2019/12/1613控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.2基本数学运算2.2.1矩阵的代数运算2.2.2矩阵的逻辑运算2.2.3矩阵的比较运算2.2.4解析结果的化简与变换2.2.5基本数论运算2019/12/1614控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.2.1矩阵的代数运算矩阵表示矩阵转置数学表示MATLAB求解2019/12/1615控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院矩阵加减法注意其一为标量的情形矩阵乘法数学表示MATLAB表示注意相容性2019/12/1616控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院矩阵除法矩阵左除:AX=B,求XMATLAB求解:X=A\B最小二乘解矩阵右除:XA=B,求XMATLAB求解:X=B/A最小二乘解2019/12/1617控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院矩阵翻转左右翻转上下翻转旋转90o如何旋转180o?矩阵乘方A为方阵,求MATLAB实现:2019/12/1618控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院点运算矩阵对应元素的直接运算例如2019/12/1619控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.2.2矩阵的逻辑运算逻辑变量:当前版本有逻辑变量对double变量来说,非0表示逻辑1逻辑运算(相应元素间的运算)与运算或运算非运算异或运算2019/12/1620控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.2.3矩阵的比较运算各种允许的比较关系,=,,=,==,~=,find(),all(),any()实例2019/12/1621控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.2.4解析结果的化简与变换其他常用化简函数【例2-6】2019/12/1622控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院返回化简方法为因式分解方法多项式展开方法变量替换2019/12/1623控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-7】由表达式替换【例2-6】中定义多项式中的算子。该语句将得出替换的结果:2019/12/1624控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.2.5基本数论运算2019/12/1625控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-8】对下面的数据进行取整运算-0.2765,0.5772,1.4597,2.1091,1.191,-1.61872019/12/1626控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-9】3x3Hilbert矩阵的有理数变换【例2-10】求和的最大公约数、最小公倍数或2019/12/1627控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.3MATLAB语言流程控制2.3.1循环结构for结构while结构2019/12/1628控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-11】用循环求解2019/12/1629控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-12】求2019/12/1630控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-13】求满足的最小值2019/12/1631控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.3.2转移结构2019/12/1632控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2019/12/1633控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-14】用循环和语句求解的最小m2019/12/1634控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.3.3开关结构2019/12/1635控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2019/12/1636控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院和C语言的区别当开关表达式的值等于某表达式,执行该语句后结束该结构,不用break同时满足若干个条件之一,则用单元形式otherwise语句,不是default程序的执行结果和各个case顺序无关case语句中条件不能重复,否则列在后面的条件将不能执行2019/12/1637控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.3.4试探结构全新结构2019/12/1638控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.4函数编写与调试M-函数是MATLAB编程的主流方法除了M-函数外,还可以采用M-script文件M-script适合于小规模运算【例2-15】若最大值不为10000,需修改程序对m和10000值的设置,不适合于M-script2019/12/1639控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.4.1MATLAB语言函数的基本结构•nargin,nargout,varargin,varargout2019/12/1640控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-16】前面的要求,m,10000•无需修改程序2019/12/1641控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-17】编写一个函数生成•若只给出一个输入参数,则会自动生成一个方阵•在函数中给出合适的帮助信息•检测输入和返回变量的个数2019/12/1642控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2019/12/1643控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2019/12/1644控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-18】函数的递归调用:阶乘2019/12/1645控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-19】比较递归算法和循环算法在数列中应用的优劣2019/12/1646控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.4.2可变输入输出个数【例2-20】可以计算两个多项式的积用varargin实现任意多个多项式的积2019/12/1647控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.4.3inline函数和匿名函数inline函数,可以免去文件MATLAB7.02019/12/1648控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.5二维图形绘制2.5.1二维图形绘制基本语句构造向量:2019/12/1649控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2019/12/1650控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2019/12/1651控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-21】2019/12/1652控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-22】2019/12/1653控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院界面编程中的常用语句:2019/12/1654控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.5.2其他二维图形绘制语句2019/12/1655控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-23】绘制极坐标曲线2019/12/1656控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院【例2-24】在不同的区域绘制正弦信号的不同表示将一个图形窗口分割成若干个小的区域2019/12/1657控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.5.3隐函数绘制及应用隐函数【例2-25】2019/12/1658控制系统计算机辅助设计——MATLAB语言与应用东北大学信息学院2.5.4图形修饰直接采用工具栏文字修饰特殊符号表上下标分别用^和_表示优越性MA
本文标题:薛定宇控制系统计算机辅助设计chap2
链接地址:https://www.777doc.com/doc-2025892 .html