MATLAB名字由MATrix和LABoratory两词的前三个字母组合而成,由MathWorks公司开发。MATLAB的内核采用C语言编写,除具有数值计算功能外,还具备了数据图视等功能。它的简洁和高效对控制理论以及计算机辅助设计起到了巨大的推动作用。MATLAB是以复数矩阵作为基本编程单元的一种程序设计语言,它提供了各种矩阵的运算操作,并具有较强的绘图功能。MATLAB在应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等领域都有广泛的应用。在国际学术界,MATLAB已经被确认为准确、可靠的科学计算标准软件。随着新版本的不断推出,MATLAB无论在界面上还是在内容上都得到不断完善,并拥有了很多应用在控制领域的工具箱,MATLAB已经成为当今国际控制界应用最广也最受人们喜爱的一种软件环境。
MATLAB具有用法简易、运用灵活的特点,利用其丰富的函数资源,可使编程人员从繁琐的代码中解脱出来。MATLAB用更直观、更符合人们思维习惯的代码,代替了C语言和FORTRAN语言的冗长代码,给用户带来的是最直观、最简洁的程序开发环境。MATLAB语言的主要特点如下:
1)语言简洁紧凑,使用方便灵活。MATLAB程序的书写格式自由,数据的输入、输出语句简洁,很短的代码就可以完成其他语言要使用大量代码才能完成的复杂工作。
例如:A=[123;456;789]一条语句实现了对3×3阶矩阵的输入。
2)数值算法稳定可靠,库函数十分丰富。MATLAB的一个最大特点是具有强大的数值计算能力,它提供了许多调用十分方便的数学计算函数,使人们可以随意使用而不必考虑数值的稳定性。
例如:
e=eig(A) %求矩阵A的特征值
[L,U]=lu(A) %求矩阵A的LU分解
polyder(b) %求多项式的微分
3)运算符丰富。MATLAB是用C语言编写的,所以MATLAB提供了和C语言几乎一样多、一样丰富的运算符,而且还重载了一些运算符,给它们赋予了新的含义。
例如:
C=A∗B %矩阵的乘法(www.xing528.com)
B=C' %求矩阵C的共轭复数转置
x=A/b %求Ax=b的最小二乘解
4)MATLAB既具有结构化的控制语句(if、for、while),又支持面向对象的程序设计。
5)语法限制不严格,程序设计自由度大。
在MATLAB里可以不用先定义或声明变量就使用它们。
6)程序的可移植性好。MATLAB程序几乎不用修改就可以移植到其他的机型和操作系统中运行。
7)MATLAB的图形功能强大,支持数据的可视化操作,方便地显示程序的运行结果。
8)具有强大的工具箱。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分有几百个核心内部函数,工具箱则是由各个领域的高水平专家编写的,所以用户不必编写该领域的基础程序就可以直接进行更高层次的研究。例如,控制领域可以使用的工具箱就有Control System(控制系统)工具箱、System Identification(系统辨识)工具箱、Robust Control(鲁棒控制)工具箱、Optimization(最优化)工具箱等。
9)源程序的开放性、系统的可扩充能力强。除了内部函数外,所有的MATLAB核心文件和工具箱文件都提供了MATLAB源文件,用户可通过对源文件的修改生成自己所需要的工具箱。
10)MATLAB是解释执行语言。MATLAB程序不用编译生成可执行文件就可以运行,解释执行时程序的执行速度较慢,效率比C等高级语言低,而且无法脱离MATLAB环境运行MATLAB程序,这是MATLAB的缺点。但是MATLAB的编程效率远远高于一般的高级语言,这使人们可以把大量的时间花费在对控制系统的算法研究上,而不是浪费在大量的代码上。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。