31 矩阵的非线性运算.doc

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

系统分析与控制 实验指导书 石油大学机电教研室 二○○○年四月 第三篇 MATLAB语言应用 一、概述 MATLAB是以复数矩阵作为基本编程单元的一种程序设计语言,它提供了矩阵的运算与操作。并有较强的绘图功能,已成为国际上最流行的控制系统CAD的软件工具。不仅流行于控制界,在生物医学语言图像处理,分析,计算机技术等各行各业也有广泛应用。 MATLAB是一个功能极强的高度集成化程序设计语言。它具备一般程序设计语言的基本语句结构。但功能更强,这是C或FORTRAN语言无法比拟的。 由于MATLAB提供了强大的矩阵处理和绘图功能,控制界学者将自己擅长的CSCAD方法用MATLAB加以实现,出现了大量的MATLAB配套工具箱。如控制界流行的控制系统工具箱(control systems toolbox),系统辨识工具箱(system identification toolbox),鲁棒控制工具箱(robust control toolbox),多变量频域设计工具箱(multivariable frequency design toolbox),最优化工具箱(optimization toolbox),信号处理工具箱(signal processing toolbox)以及仿真环境SIMULINK。这使得MATLAB风靡国际控制界。 值得一提的是,1990年MathWorks软件公司为MATLAB提供了新的控制系统模型图形输入与仿真工具,原名为SIMULAB,该工具很快在控制界就有了广泛的使用。1992年以来正式改名为SIMULINK,这一名字的含义是相当直观的,因为它较明显地表明此软件的两个显著的功能:SIMU(仿真)与LINK(连接),亦即可以利用鼠标器在模型窗口上“画’’出所需的控制系统模型,然后利用SIMULINK提供的功能来对系统进行仿真或线性化分析。这种做法的一个优点是,可以使得一个很复杂系统的输入变得相当容易且直观。 MATLAB 4.x 版本运行在microsoft windows 环境,在MATLAB语言环境下,标志为MATLAB的命令提示符,MATLAB命令窗口的界面下,有一个菜单条,其中提供了很多功能,在命令行键入DEMO命令,它将启动演示程序,从而领略MATLAB的强大运算和绘图功能。 二、MATLAB的基本语句结构 MATLAB实际上可以认为是一种解释性语言,在MATLAB工作环境下,键入一个命令或程序,MATLAB对它进行处理,最后返回运算结果。 2.1 MATLAB语言 最基本的赋值语言结构为: 变量名列表=表达式 左边为返回值,右边是表达式定义,可以是矩阵运算,也可以包含MATLAB下的函数调用。表达式可以由分号结束,也可以由逗号或换行符结束,但含义不同,如以分号结束则左边变量结果将不显示,否则将把左边返回矩阵的内容全部显示出来。 和C语言类似,MATLAB是区分大小写的(case-sensitive)。MATLAB 和C语言不同,在调用函数时MATLAB可以返回多个结果(亦即多个矩阵),这时等号左边是由 [ ] 括起来的矩阵列表,例如: [m, p] = bode(n, d, w) 中调用了控制系统工具箱的bode( )函数来求取传递函数n, d在指定的频率段w内的幅值响应m和相位响应p。 MATLAB 函数调用时输入输出变量分别在等号两边列出,这种记号很容易记忆。也可以采用下面格式调用 [m, p] = bode(a, b, c, d, 1, w) 其中a, b, c, d, 为系统的状态方程描述,MATLAB会自动地从输入参数个数上判定给出的是传递函数还是状态方程模型,从而进行正确计算,这类似于C++中重载的观念。 2.2 矩阵的输入 输入格式为 A=[1,2,3;4,5,6;7,8,0] A= 1 2 3 4 5 6 7 8 0 其中同一行中的内容用逗号分隔,而采用分号来表示换行。上述格式输入矩阵A后,矩阵内容将在屏幕上显示出来。如在上面赋值表达式的末尾加一个分号,这矩阵内容就不显示了。这由用户通过在语句末尾加分号的方式来决定是否显示运算结果。 同一行中分隔的逗号也可以由空格来代替。如下方式也是许可的 A=[1 2 3; 4 5 6 7 8 9]; 或 A=[1 2 3; 4,5,… 6;7 8,9]; 向量的输入是一般矩阵输入的特殊情况,下面的两条命令分别定义了行和列向量 V1=[1 2 3,4] V2=[1;2;3;4] 学会了矩阵的基本表示方法后,就容易理解下面的输入方式和结果了 A=[A;[1 3 5]] MATLAB 定义了两个基本的复数常量,i和j, 这些值为数学上的。如果它们不被赋值

文档评论(0)

magui + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8140007116000003

1亿VIP精品文档

相关文档