购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.4 MATLAB软件简介

1.MATLAB软件介绍

20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用Fortran语言编写了最早的MATLAB。1984年,由Little、Moler、Steve Bangert合作成立的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,MATLAB已成为国际控制界的标准计算软件,为便于程序的通用性,本书使用MATLAB R2014a进行设计和讲解。

MATLAB主要面对科学计算、可视化和交互式程序设计的高科技计算环境,它将数值分析、矩阵计算、科学数据可视化,以及非线性动态系统的建模和仿真等强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计和必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编程模式,代表了当今国际科学计算软件的先进水平。MATLAB在数学类科技应用软件中的数值计算方面首屈一指,它可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、链接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通信、图像处理、信号检测、金融建模设计与分析等领域。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C、Fortran等语言简洁得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中还加入了对C、Fortran、C++、Java等语言的支持,用户可以直接调用,也可以将自己编写的实用程序导入MATLAB函数库中方便以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接下载使用。

2.MATLAB工作界面

MATLAB的工作界面简单、明了,易于操作。安装好软件后,依次执行“开始”→“所有程序”→“MATLAB”→“R2014a”→“MATLAB R2014a”命令,即可打开MATLAB软件,其主工作界面如图2-8所示。

命令行窗口是MATLAB的主窗口。在命令行窗口中可以直接输入命令,系统将自动显示命令执行后的信息。如果一条命令语句过长,需要两行或多行才能输入完毕,则要使用“…”作为连接符号,按“Enter”键转入下一行继续输入。另外,在命令行窗口输入命令时,可利用快捷键十分方便地调用或修改以前输入的命令。例如,通过向上键“↑”可重复调用上一个命令行,对它加以修改后直接按“Enter”键执行,在执行命令时不需要将光标移至行尾。命令行窗口只能执行单条命令,用户可通过创建M文件(后缀名为“.m”的文件)来编辑多条命令语句,在命令行窗口中输入M文件的名称,即可依次执行M文件中所有命令语句。

图2-8 MATLAB的主工作界面

命令历史窗口用于显示用户在命令行窗口中执行过的命令,用户也可直接双击命令历史窗口中的命令来执行该命令,也可以在选中某条或多条命令后,执行复制、剪切等操作。工作空间窗口用于显示当前工作环境中所有创建的变量信息,单击工作空间窗口下的“当前文件夹”可打开当前工作路径窗口,该窗口用于显示当前工作在什么路径下,包括M文件的打开路径等。

3.MATLAB的特点及优势

MATLAB的主要特点及优势体现在以下几个方面。

1)友好的工作平台和编程环境

MATLAB由一系列工具组成,这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面,包括MATLAB桌面和命令行窗口、命令历史窗口、编辑器和调试器、路径搜索,以及用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化和软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单,而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大地方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误,并进行出错原因分析。

2)简单易用的程序语言

MATLAB使用高级的矩阵/阵列语言,具有控制语句、函数、数据结构、输入/输出和面向对象编程的特点。用户可以在命令行窗口中将输入语句与执行命令同步,也可以先编写较为复杂的应用程序(M文件)后再运行。MATLAB的底层语言为C++语言,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,因而更利于非计算机专业的科技人员使用。这种语言可移植性好、可拓展性极强,这也是MATLAB能够应用到科学研究及工程计算各个领域的重要原因。

3)强大的科学计算、数据处理能力

MATLAB包含大量计算算法,拥有600多个工程中常用的数学运算函数,可以方便地实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,且经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++。在计算要求相同的情况下,使用MATLAB会使编程工作量大大减少。MATLAB的函数集包括最简单、最基本的函数,以及诸如矩阵、特征向量、快速傅里叶变换等复杂函数。函数所能解决的问题包括矩阵运算、线性方程组的求解、微分方程及偏微分方程组的求解、符号运算、傅里叶变换、数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作及建模动态仿真等。

4)出色的图形处理功能

自产生之日起,MATLAB就具有方便的数据可视化功能,可将向量和矩阵用图形的形式表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图像处理、动画和表达式作图,可用于科学计算和工程绘图。MATLAB的图形处理功能十分强大,它不仅具有一般数据可视化软件具有的功能(如二维曲线和三维曲面的绘制、处理等),而且在一些其他软件没有的功能(如图形的光照处理、色度处理及四维数据的表现等)方面同样表现了出色的处理能力,同时对一些特殊的可视化要求,如图形对话等,MATLAB也有相应的功能函数,可满足用户不同层次的需求。

5)应用广泛的模块集合工具箱

MATLAB对许多专门的领域都开发了功能强大的模块集合工具箱(Toolbox),一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法,而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的许多领域,如数据采集、数据库接口、概率统计优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、电力系统仿真等,都在工具箱家族中有了自己的一席之地。

6)实用的程序接口和发布平台

MATLAB可以利用MATLAB编译器和C/C++数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C++代码。允许用户编写可以和MATLAB进行交互的C/C++语言程序。另外,MATLAB网页服务程序还允许在Web应用中使用自己的MATLAB数学和图形程序。MATLAB的一个重要特色就是具有一套程序扩展系统和一组称为工具箱的特殊应用子程序。工具箱是MATLAB函数的子程序库,每个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。

7)用户界面的应用软件开发

在开发环境中,用户可方便控制多个文件和图形窗口;在编程方面支持函数嵌套,有条件中断等;在图形化方面具备强大的图形标注和处理功能;在输入/输出方面,可以直接与Excel等文件格式进行链接。 N5liDxqZs96NumP8pbY4JmOwbUMTAr6xJ0mXCLO58TmOirt2wDnfkluawtO3RhUF

点击中间区域
呼出菜单
上一章
目录
下一章
×