最新控制系统仿真_薛定宇第二章_MATLAB语言程序设计基础.ppt

最新控制系统仿真_薛定宇第二章_MATLAB语言程序设计基础.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
最新控制系统仿真_薛定宇第二章_MATLAB语言程序设计基础.ppt

控制系统仿真与CAD 国家级精品课程 国家级精品课程 控制系统仿真与CAD 第二章 MATLAB 语言程序设计基础 第二章 MATLAB 语言程序设计基础 MATLAB 语言程序设计基础 数据结构与语句结构 基本运算语句 程序流程 函数的编写与技巧 MATLAB语言绘图 二维与三维绘图 MATLAB语言的图形用户界面设计 2.1 MATLAB语言程序设计基础 MATLAB 语言的特色 简洁高效性 强大的科学运算功能 方便易用的绘图功能 庞大的工具箱 强大的动态系统仿真功能——Simulink 本节主要内容 常量与变量、数据结构 基本语句结构、冒号表达式 2.1.1 常量与变量 常量(保留字符串) eps: 机器的浮点运算误差限,默认值 i和j:虚数单位,-1的平方根,i=sqrt(-1) Inf: 无穷大量,-Inf为负无穷大 NaN:不定式(Not a Number) pi:圆周率p的双精度浮点表示 变量: 由字母引导,可以跟字母、数字和下划线等 区分大小写 2.1.2 数据结构 MATLAB下最常用数值量为双精度浮点数 占8个字节(64位),遵从IEEE记数法 有11个指数位、53位尾数及一个符号位 值域的近似范围为 其MATLAB表示为double() 符号型数据结构 syms 命令申明符号变量 vpa(A) 显示符号变量 例2-1 显示e的前300位 其他数据结构 int8() 、int16() 、int32() 、uint16() 和 uint32() 字符串型数据:MATLAB字符串是用单引号括起来的 多维数组:三维数组是一般矩阵的直接拓展。 单元数组:多变量系统的频域响应数据存储 类与对象:传递函数对象、状态方程对象 2.1.3 MATLAB的基本语句结构 两种赋值语句: 直接赋值语句:赋值变量=赋值表达式 语句结构 后面加分号不显示结果 无返回变量,结果传给 ans 函数调用语句 语句结构 [返回变量列表]=funname(输入变量列表) 一般对应于*.m函数 同一函数可以有不同的调用格式 例2-2 无需预先定义维数 例2-3 2.1.4 冒号表达式与子矩阵提取 基本语句 例2-4 子矩阵提取 例2-5 2.2 基本数学运算 基本代数运算 矩阵转置:A’、A.’ 加减乘除:A+B、A-B、A*B、A\B、B/A 矩阵翻转:flipud(A)、fliplr(A)、rot90(A) 矩阵乘方:A^x 点运算:A.*B、A.^2、A.^A Kronecker乘积:kron(A,B) 点运算举例 矩阵的逻辑运算 逻辑运算: 、|、~、xor() 矩阵的比较运算 运算符:、、==、=、=、~= 函数:find()、any()、all() 2.2.4 解析结果的化简与变换 化简函数 其他函数:collect()、numden()、expand()、factor() 例2-5 变量替换 例2-6 双线性变换 基本数论运算 取整:floor()、ceil()、round()、fix() 其他:rat()、rem()、gcd()、lcm()、factor()、isprime() 例2-8 取整 例2-9 有理化 Hilbert矩阵 例2-10 最大公约数、最小公倍数、因式分解 2.3 MATLAB编程:流程控制语句 循环结构 例2-11 求 例2-12 求 循环与向量化运算 例2-13 求最小m 不适用for 2.3.2 条件转移语句 一般结构 例2-14 其他流程控制结构 开关结构 试探结构 2.4 函数编写 M-脚本M-脚本与M-函数 例2-15 M-脚本编程的麻烦 M-函数是MATLAB主流编程结构 M-函数:信息处理单元 2.4.1 函数的基本结构 函数结构 特别函数 变元个数:nargin、nargout 变元内容:varargin、varargout 例2-16 脚本变函数 选择变元 函数改写:*.m文件 例2-17 编程实例:Hilbert矩阵 生成 矩阵 如果只给一个输入变元,生成方阵 编程:核心部分 如何处理一个变元 完整程序 递归调用编程结构 例2-18 阶乘 例2-19 不适合递归调用的问题:Fibonacci数列 计算量巨大 可变输入、输出个数 利用 varargin、varargout 例2-20 现有函数(多项式乘法):conv(p1,p2) 期望编任意多个多项式相乘:convs(p1,p2,…) 程序实现 2.4.4 匿名函数与inline函数 不用编写*.m,定义函数的方法 可以动态地定义函数,在科学运算中有用 二者功能重复,后

您可能关注的文档

文档评论(0)

光光文挡 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档