第2章 MATAB语言基础.docVIP

  1. 1、本文档共109页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 MATAB语言基础

MATLAB 语言简介 MATLAB 语言——当今国际上科学界 尤其自动控制领域 最具影响力、最有活力的软件。它起源于矩阵运算,已经发展成一种高度集成的交互式计算机语言。它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。由于其特色,它在各国高校与研究单位的控制系统仿真中起着重大的作用。 MATLAB 语言由美国Math Works公司开发,其最新版为 MATLAB 7.11 (2010.9.3) MATLAB 语言起源 MATLAB 语言首创者 Cleve Moler 在数值分析,特别是在数值线性代数的领域中很有影响。他曾在密西根大学、斯坦福大学和新墨西哥大学任数学与计算机科学教授。1980年Moler 在讲授线性代数课程时,发现了用其他高级语言编程极为不便,便构思并开发了MATLAB, 这一软件利用了当时数值线性代数领域最高水平的EISPACK 和 LINPACK两大软件包中可靠的子程序,用Fortran语言编写了集命令翻译、科学计算于一身的一套交互式软件系统。 交互式语言 交互式语言:指人们给出一条命令,立即就可以得出该命令的结果。 该语言无需像C语言那样,首先要求使用者去编写源程序,然后对之进行编译、连接,最终形成可执行文件。这无疑会给使用者带来了极大的方便。 早期的MATLAB是用Fortran语言编写的,只能作矩阵运算和简单绘图;内部函数也只提供了几十个。 Moler等人成立了MathWorks的公司。84 年推出了MATLAB 的商业版本。当时的MATLAB 版本已经用 C 语言作了完全的改写,其后又增添了丰富多彩的图形图像处理、多媒体功能、符号运算和它与其他流行软件的接口功能,使MATLAB 的功能越来越强大。 MATLAB 功能和发展 92 年推出了4.0 版本, 可以配合 Windows 使用。 94 年推出的 4.2 版本扩充了功能,尤其在图形界面设计方面更提供了新的方法。 97 年推出的 5.0 版允许了更多的数据结构,如单元数据、数据结构体、多维矩阵、对象与类等,使其成为一种更方便编程的语言。 99 年初推出的 5.3 版在很多方面又进一步改进了MATLAB 语言的功能。 00 年 底推出了其全新的 6.0 正式版,在核心数值算法、界面设计、外部接口、应用桌面等诸多方面有了极大的改进。 02年6.5 正式版—— ; 04年7.0 正式版—— MATLAB 语言是计算数学专家倡导并开发的,但有代表性的成就和控制界的要求与贡献是分不开的。大多数工具箱也都是控制方面的。它在工程领域的应用越来越广,并且有着更广阔的应用前景. MATLAB的特色 (1)数学运算能力强大 考虑两个矩阵 A 和 B 的乘积问题,在 C 语言中要实现两个矩阵的乘积并不仅仅是一组双重循环的问题。除此之外要考虑的问题 A 和 B 是复数矩阵怎么考虑; 其中一个是复数矩阵时怎么考虑; 全部是实系数矩阵时又怎么管理; 判断这两个矩阵是否可乘;等等 所以说,没有一定的时间,用 C 语言很难编写出考虑各种情况的子程序。有了 MATLAB 这样的工具,A 和 B 矩阵的乘积用 A*B 这样简单的算式就能表示了。 例:如何生成一个 3x3 魔方矩阵——将自然数 1, 2, ..., 9 分别置成这 9个矩阵元素,怎样才能使得每一行每一列、且主、反对角线上元素相加都等于一个相同的数。 用 MATLAB 的 magic 函数,我们可以由下面的命令立即生成这样的矩阵: A magic 3 ?A 8?? 1?? 6 3?? 5?? 7 4?? 9?? 2 可以由 B magic 10 一次生成 10x10 的魔方矩阵。 如果想求出矩阵的行列式和特征值,可以由 det B 与 eig B 立即得出结果,而同样的工作在 C 下并不是很简单就可以得出的,算法选择不好,还可能得出错误的结果。 (2) 绘制图形方便、美观、准确 MATLAB语言基础 MATLAB语言源自线性代数中的数学运算,最初是基于矩阵的运算工具,这也是MATLAB(Matrix Laboratory)的由来。 2.1矩阵的运算 MATLAB语言最基本、最重要的功能就是进行实数或复数的矩阵运算,其所有的数值功能都以矩阵为基本单元来实现。 2.1.1矩阵的输入 分为直接赋值法和增量赋值法 直接赋值法 矩阵的输入必须以方括号“[ ]”作为其开始和结束的标志,矩阵的行与行之间要用分号‘;’,每行内的元素用空格或逗号分开。 a [1 2 3;4 5 6;7 8 9] 或 a [1,2,3;4,5,6;7,8,9] 或 a [1 2 3;4,5,6;7,8,9] %逗号和空格可同时出现 结果是:a 1 2

文档评论(0)

pij541 + 关注
文档贡献者

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

1亿VIP精品文档

相关文档