经几年的校际流传,在 Little 的推动下,由 Little 、 Moler 、 Steve Bangert 合作,于 1984 年成立了 MathWorks 公司,并把 MATLAB教程: 正式推向市场。从这时起, MATLAB教程: 的内核采用 C 语言编写,而且除原有的数值计算能力外,还新增了数据图视功能。
MATLAB教程: 以商品形式出现后,仅短短几年,就以其良好的开放性和运行的可靠性,使原先控制领域里的封闭式软件包(如英国的 UMIST ,瑞典的 LUND 和 SIMNON ,德国的 KEDDC )纷纷淘汰,而改以 MATLAB教程: 为平台加以重建。在时间进入 20 世纪九十年代的时候, MATLAB教程: 已经成为国际控制界公认的标准计算软件。
到九十年代初期,在国际上 30 几个数学类科技应用软件中, MATLAB教程: 在数值计算方面独占鳌头,而 Mathematica 和 Maple 则分居符号计算软件的前两名。 Mathcad 因其提供计算、图形、文字处理的统一环境而深受中学生欢迎。
MathWorks 公司于 1993 年推出 MATLAB教程:4.0 版本,从此告别 DOS 版。 4.x 版在继承和发展其原有的数值计算和图形可视能力的同时,出现了以下几个重要变化:( 1 )推出了 SIMULINK 。这是一个交互式操作的动态系统建模、仿真、分析集成环境。它的出现使人们有可能考虑许多以前不得不做简化假设的非线性因素、随机因素,从而大大提高了人们对非线性、随机动态系统的认知能力。( 2 )开发了与外部进行直接数据交换的组件,打通了 MATLAB教程: 进行实时数据分析、处理和硬件开发的道路。( 3 )推出了符号计算工具包。 1993 年 MathWorks 公司从加拿大滑铁卢大学购得 Maple 的使用权,以 Maple 为“引擎”开发了 Symbolic Math Toolbox 1.0 。 MathWorks 公司此举加快结束了国际上数值计算、符号计算孰优孰劣的长期争论,促成了两种计算的互补发展新时代。( 4 )构作了 Notebook 。 MathWorks 公司瞄准应用范围最广的 Word ,运用 DDE 和 OLE ,实现了 MATLAB教程: 与 Word 的无缝连接,从而为专业科技工作者创造了融科学计算、图形可视、文字处理于一体的高水准环境。
1997 年仲春, MATLAB教程:5.0 版问世,紧接着是 5.1 、 5.2 ,以及和 1999 年春的 5.3 版。与 4.x 相比,现今的 MATLAB教程: 拥有更丰富的数据类型和结构、更友善的面向对象、更加快速精良的图形可视、更广博的数学和数据分析资源、更多的应用开发工具。(关于 MATLAB教程:5.x 的特点下节将作更详细的介绍。)
诚然,到 1999 年底, Mathematica 也已经升到 4.0 版,它特别加强了以前欠缺的大规模数据处理能力。 Mathcad 也赶在 2000 年到来之前推出了 Mathcad 2000 ,它购买了 Maple 内核和库的部分使用权,打通了与 MATLAB教程: 的接口,从而把其数学计算能力提高到专业层次。但是,就影响而言,至今仍然没有一个别的计算软件可与 MATLAB教程: 匹敌。
在欧美大学里,诸如应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教科书都把 MATLAB教程: 作为内容。这几乎成了九十年代教科书与旧版书籍的区别性标志。在那里, MATLAB教程: 是攻读学位的大学生、硕士生、博士生必须掌握的基本工具。
在国际学术界, MATLAB教程: 已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到 MATLAB教程: 的应用。
在设计研究单位和工业部门, MATLAB教程: 被认作进行高效研究、开发的首选软件工具。如美国 National Instruments 公司信号测量、分析软件 LabVIEW , Cadence 公司信号和通信分析设计软件 SPW 等,或者直接建筑在 MATLAB教程: 之上,或者以 MATLAB教程: 为主要支撑。又如 HP 公司的 VXI 硬件, TM 公司的 DSP , Gage 公司的各种硬卡、仪器等都接受 MATLAB教程: 的支持。
5.0 以前版本的 MATLAB教程: 语言比较简单。它只有双精度数值和简单字符串两种数据类型,只能处理 1 维、 2 维数组。它的控制流和函数形式也都比较简单。这一方面与当时软件的整体水平有关,另方面与 MATLAB教程: 仅限于数值计算和图形可视应用的设计目标有关。
从 5.0 版起, MATLAB教程: 对其语言进行了根本性的变革,使之成为一种高级的“阵列”式语言。
MATLAB教程: 自问世起,就以数值计算称雄。 MATLAB教程: 进行数值计算的基本处理单位是复数数组(或称阵列),并且数组维数是自动按照规则确定的。这一方面使 MATLAB教程: 程序可以被高度“向量化”,另方面使用户易写易读。
比如已知
的采样数据是
维数组,要计算
。对一般的计算语言来说,必须采用两层循环才能得到结果。这不但程序复杂,而且那讨厌的循环十分费时。 MATLAB教程: 处理这类问题则简洁快捷得多,它只需直截了当的一条指令 y = exp(-2*t).*sin(5*t) ,就可获得同样是
维的
数组。这就是所谓的“数组运算”。这种运算在信号处理和图形可视中,将被频繁使用。
又如对于求解
代数方程问题。教科书的基本叙述:当
是标量时,
;当
是非奇异矩阵时,
;当
是行数大于列数的满秩阵时,
;当
的列数大于行数时,
有无数解。一般程序就必须按以上不同情况进行编程。然而对 MATLAB教程: 来说,那只需一条指令: x=A/b 。指令是简单的,但其内涵却远远超出了普通教科书的范围,其计算的快速性、准确性和稳定性都是普通程序所远不及的。
上一篇: MATLAB教程: 样条函数及其应用
下一篇:Matlab 编译器的安装和配置