MATLAB语言介绍

上传人:简****9 文档编号:109719294 上传时间:2019-10-27 格式:DOC 页数:62 大小:402.50KB
返回 下载 相关 举报
MATLAB语言介绍_第1页
第1页 / 共62页
MATLAB语言介绍_第2页
第2页 / 共62页
MATLAB语言介绍_第3页
第3页 / 共62页
MATLAB语言介绍_第4页
第4页 / 共62页
MATLAB语言介绍_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《MATLAB语言介绍》由会员分享,可在线阅读,更多相关《MATLAB语言介绍(62页珍藏版)》请在金锄头文库上搜索。

1、一 MATLAB概述1.1 MATLAB是21世纪的科学计算软件在科学研究和工程应用等领域中会涉及到大量的科学计算问题,自从计算机出现以来,人们就一直在使用计算机这个有力的工具帮助解决科学计算问题,并由此发明了许多用于科学计算的程序语言,如BASIC、FORTRAN、C等等。随着时代的变化、随着计算机的普及和快速发展,计算机程序语言在不断地变化发展、在不断地推陈出新。在当今时代,什么程序语言是最流行的科学计算语言呢?答案是MATLAB语言。MATLAB之所以能够成为最好的和最流行的科学计算语言,是因为它具有强大的科学计算及数据处理能力和出色的图形处理功能等特点。1.1.1 MATLAB具有强大

2、的科学计算及数据处理能力MATLAB拥有600多个工程中要用到的数学运算函数,可以方便地实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化及容错处理,因此使用起来稳定性和可靠性非常高,在通常情况下,可以用它来代替底层编程语言,如C和C+等。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB函数所能解决的问题包括矩阵运算、多维数组操作(阵列运算)、复数的各种运算、三角函数和其他初等数学函数运算、非线性方程求根、线性方程组的求解、微分方程及偏微分方程组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵

3、运算、建模和动态仿真等等。1.1.2 MATLAB具有出色的图形处理功能在科学计算中,往往需要用各种图形把数值计算的结果形象地表现出来,以帮助人们更好地理解、认识和发现其中的科学规律。MATLAB不仅提供数值计算功能和符号运算功能,而且自诞生之日起就具有方便的数据可视化功能,使计算结果的可视化要求得到充分满足。MATLAB在二维曲线和三维曲面的绘制和处理等方面的功能比一般数据可视化软件更加完善,在一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等)方面也表现得非常出色。在MATLAB 6.x中有一个对图形对象属性进行设置的图形属性编辑界面,该界面比 MATLAB 5.x

4、中的界面功能更为全面,操作也更为方便。MATLAB 6.x对图形的输出也做了适当的改进,提供了更为丰富的属性设置,以提高图形输出的效果。对一些特殊的可视化要求,例如图形动画等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外,新版本的MATLAB还着重在图形用户界面(GUI)的制作上做了很大的改善,对这方面有特殊要求的用户也可以得到满足。MATLAB将数值计算功能、符号运算功能和图形处理功能高度地集成在一起,在数值计算、符号运算和图形处理上做到了无缝的衔接,极大地方便了用户,这是它在科学计算中能得到广泛应用的重要原因之一。1.1.3 MATLAB程序语言简单易用早期用于科学计算的

5、计算机语言,由于计算机内存容量和运算速度的限制等原因,常常要定义常量、变量、向量和矩阵等的不同的数据类型,结果导致编程过于复杂化。和这些语言不一样,MATLAB语言对他们进行了高度抽象,实现了数据类型的高度统一,即常量、变量、向量和矩阵等都具有相同的数据类型。MATLAB语言认为所有的数据都是一个对象类,都具有相同的属性。因此,用户不需要事先分别定义常量、变量、向量和矩阵等的数据类型就可以直接使用他们(当然MATLAB的这种设计思想是以高性能计算机的出现和普及作为前提条件的),编程得到了很大简化。例如,在MATLAB中,基本的计算单元用复双精度矩阵来表示,其大小是n行m列,矩阵各数据元素存放在

6、两个双精度向量中,一个存放实部数据(指针pr指向它),另一个存放虚部数据(指针pi指向它)。如果是实数,则复双精度矩阵中pi为空。复数或实数则可以理解为11的矩阵。MATLAB语言是一种“数学形式的语言”,它的操作和功能函数指令就是用平时计算机和数学书上的英文单词和符号来表达的,比BASIC、FORTRAN和C等语言更接近于人们书写的数学计算公式、更接近于人们进行科学计算的思维方式,用MATLAB语言编写程序犹如在演算纸上排列公式与求解问题,故有人称MATLAB编程语言为“演算纸”式科学算法语言。因此,MATLAB语言简单自然,学习和使用更容易。MATLAB程序文件是一个纯文本文件,扩展名为.

7、m,用任何字处理软件都可以对它进行编辑。MATLAB本身就像一个解释系统,对其中的函数程序的执行以一种解释执行的方式进行,程序不必经过编译就可以直接运行,而且能够及时报告出现的错误,进行出错原因分析。因此,程序调试容易、编程效率高。MATLAB的用户界面精致,接近Windows的标准界面,人机交互性强,操作简单。新版本的MATLAB提供了完整的联机查询、帮助系统,极大地方便了用户的使用。例如,在开发环境中,MATLAB 6.x提供了强大的帮助功能,几乎所有的帮助都能以在线帮助的形式出现,同时也提供了一种全新的帮助浏览器,更加方便用户获得所需要的信息。与MATLAB 5.x相比,MATLAB 6

8、.x改进了原有的系统结构,将各种对MATLAB应用提供支持的系统集成为全新的MATLAB开发环境,其中最为明显的就是,集各种对MATLAB文件、数据变量进行操作的工具以及MATLAB自身的辅助工具为一体的MATLAB桌面系统。该桌面系统就是用户对MATLAB操作的面板。从开始应用MATLAB到退出MATLAB,几乎所有具体的操作都将在桌面系统内完成。1.1.4 MATLAB功能强大MATLAB为许多专业领域开发了功能强大的模块集或工具箱(一般都是由这些领域的专家们开发的),用户可以直接使用这些工具箱而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如概

9、率统计、NAG和偏微分方程求解、样条拟合、优化算法、模糊逻辑、工程规划、模型预测、模型处理、神经网络、数据采集、交流通信、DSP与通讯、数字信号处理、小波分析、光谱分析、图像处理、系统辨识、控制系统设计、非线性控制设计、鲁棒控制、QFT控制设计、LMI控制、实时工作、数据库接口、金融分析、金融管理、地图工具、嵌入式系统开发、实时快速原型及半物理仿真、定点仿真、电力系统仿真等等,都在工具箱(Toolbox)家族中有了自己的一席之地。在模型化和系统级仿真方面,MATLAB开发了分支产品Simulink,主要用来实现对工程问题的模型化和动态仿真。Simulink体现了模块化设计和系统级仿真的具体思想

10、,使得建模仿真如同搭积木一样简单。Simulink对仿真的实现可以应用于动力系统、信号控制、通信设计、金融财会及生物医学等各个领域的研究中。MATLAB留有与其它实用的程序接口。MATLAB可以方便地与FORTRAN,C等语言接口,以充分利用各种资源。用户只需将已有的EXE文件转换成MEX文件,就可以方便地调用有关程序和子程序。新版本的MATLAB可以利用MATLAB编译器和CC+数学库和图形库,将自己的 MATLAB程序自动转换为独立于MATLAB运行的C和C+代码。MATLAB还和符号运算最为强大的工具软件Maple有很好的接口,这也大大扩充了MATLAB的符号运算功能。此外,在MATLA

11、B 6.x中增加了与Java的接口,并为实现两者的数据交换提供了相应的函数库。1.1.5 MATLAB开放性强MATLAB强大的功能与其开放性设计思想是分不开的,正是这种开放性设计思想,增强了MATLAB强大的生命力。MATLAB对函数程序的执行是以一种解释的方式进行的,MATLAB完全成了一个开放的系统,用户可以方便地看到函数的源程序,也可以方便地开发自己的程序,甚至创建自己的“库”。在工具箱方面,该公司本身就推出了30多个应用工具箱,而世界上超过200家公司开发出与MATLAB兼容的第三方产品,这些产品向用户提供更多的工具箱、模块集、与其他商业产品的接口等。MATLAB是一个开放的环境。全

12、世界各地,特别是许多大学都建立了MATLAB学习研究小组,他们也通过互联网交流学习心得和经验,MathWorks公司特别鼓励这种交流,以丰富和扩展MATLAB的使用范围。目前,MATLAB 7.0版本已经面世,其功能和使用便捷程度又有了很大提高。MATLAB的相关书籍超过涉及19种不同文字600种。由于MATLAB具有以上其他计算语言无法比拟的优势,在美国及其他发达国家的理工科院校里,MATLAB已经成为了一门必修的课程,是攻读学位的大学生、硕士生和博士生必须掌握的基本工具。在科研院所、大型公司或企业的工程计算部门,MATLAB也是最为普遍的计算工具之一。由此可见,MATLAB就是21世纪真正

13、的科学计算语言。1.2 MATLAB软件的发展历史MATLAB是由MATrix和LABoratory两个词的前三个字母组合而成的,含义是矩阵实验室。它是MathWorks公司于1984年推出的一套高性能的数值计算和数据可视化数学软件。20世纪70年代,Cleve Moler和他的同事在美国国家自然科学基金的资助下研发了调用LINPACK和EISPACK的FORTRAN子程序库,这两个程序库是用于解线性方程和矩阵特征值问题的,代表着当时矩阵计算软件的最高水平。后来Cleve Moler在新墨西哥大学给学生开线性代数课程时,用业余时间为学生编写使用方便的LINPACK和EISPACK的接口程序,并

14、给这个接口程序取名为MATLAB。Cleve Moler先后到多所大学讲学,MATLAB逐渐为人们所接受并成为应用数学界的术语。当Cleve Moler 1983年到斯坦福大学访问时,工程师John Little就意识到MATLAB将会在工程计算领域里大有作为,于是他与Moler及Steve Bangert等人一起合作开发了第二代专业版MATLAB。从这一代开始,MATLAB的核心就采用C语言编写,并且MATLAB除了具有数值计算的功能以外,还具备了数据可视化的功能。1984年,Mathworks公司成立,把MATLAB推向了市场,并继续MATLAB的研制和开发。1993年,MATLAB的第一

15、个Windows版本问世,同年,支持Windows 3.x的MATLAB 4.0版本推出。4.0版本做了很大的改进,如增加了Simulink,Control, Neural Network,Optimization,Signal Processing,Spline,State-space Identification,Robust Control,Mu-analysis and synthesis等工具箱。1993年11月,Mathworks公司又推出了MATLAB 4.1版本,首次开发了Symbolic Math符号运算工具箱,其升级版本MATLAB 4.2c在用户中得到广泛的应用。1997

16、年,MATLAB 5.0版本问世了。相对于MATLAB 4.x版本,它是真正的32位运算,功能强大,数值计算加快,图形表现有效,编程简洁直观,用户界面十分友好。2000年下半年,Mathworks公司推出了MATLAB 6.0(R12)的试用版,2001年初推出了正式版。2002年7月又推出了他们的最新产品MATLAB 6.5(R13),Simulink升级到5.0版本。MATLAB 6.5提供了JIT程序执行加速器,大大提高了程序的执行速度。本教程主要以MATLAB 6.5为蓝本,简明介绍MATLAB语言的数值计算功能、绘图功能和在数值计算方法中的应用等内容。1.3 MATLAB软件的组成MATLAB软件是一个大家庭,有许多成员,包括应用程序开发工具、工具箱(Toolbox)、数据存取工具、模块集、状态流图、代码生成工具、学生产品等。应用程序开发工具包括MATLAB编译

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

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号