发展历程及其发展趋势

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

M a t l a b发展历程及其发展趋势在70年代中期,Cleve Moler博士和其同事在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库。EISPACK是特征值求解的FOETRAN程序库,LINPACK是解线性方程的程序库。在当时,这两个程序库代表矩阵运算的最高水平。

到70年代后期,身为美国New Mexico大学计算机系系主任的Cleve Moler,在给学生讲授线性代数课程时,想教学生使用EISPACK和LINPACK程序库,但他发现学生用FORTRAN编写接口程序很费时间,为了让学生方便的调用EISPACK和LINPACK,利用业余时间为学生编写EISPACK和LINPACK的接口程序。Cleve Moler给这个接口程序取名为MATLAB,取名MATLAB (MATrix LABoratory),即Matrix和Laboratory的组合。在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,并作为面向大众的免费软件广为流传。

1983年春天,Cleve Moler到Standford大学讲学,MATLAB深深地吸引了工程师John Little。John Little敏锐地觉察到MATLAB在工程领域的广阔前景。于是,他和Cleve Moler、Steve Bangert一起,由Steve Bangert主持开发编译解释程序,Steve Kleiman完成图形功能的设计,John Little和Cleve Moler主持开发了各类数学分分析的子模块,撰写用户指南和大部分的M文件。这样用C语言开发了第二代MATLAB专业版,也是Matlab第一个商用版,同时赋予了它数值计算和数据图示化的功能。自从第一版发行以来,已有众多的科技工作者加入到Matlab的开发队伍中,并为形成今天约Matlab

系统做出了巨大的贡献。

1984年,Cleve Moler和John Little成立了Math Works公司,发行了Matlab第1版(DoS版本1.0)。正式把MATLAB推向市场。MATLAB的第一个商业化的版本是同年推出的是3.0的DOS版本。并继续进行MATLAB的研究和开发,逐步将其发展成为一个集数值处理、图形处理、图像处理、符号计算、文字处理、数学建模、实时控制、动态仿真、信号处理为一体的数学应用软件。Matlab以商品形式出现后,仅短短几年,就以其良好的开放性和运行的可靠性,使原先控制领域里的封闭式软件包(如英国的UMIST,瑞典的LUND 和SIMNON,德国的KEDDC)纷纷淘汰,而改以Matlab为平台加以重建。

九十年代初期,在国际上30几个数学类科技应用软件中,Matlab在数值计算方面独占鳌头,而Mathematica和Maple则分居符号计算软件的前两名。MathCAD因其提供计算、图形、文字处理的统一环境而深受中学生欢迎。Matlab 已经成为国际控制界公认的标准计算软件。

1992年,MathWorks公司于推出了4.0版本。

1993年,MathWorks公司推出了MATLAB 4.1版。也是在这年(1993年)MathWorks 公司从加拿大滑铁卢大学购得Maple的使用权,以Maple为“引擎”开发了Symbolic Math Toolbox 1.0。MathWorks公司此举加快结束了国际上数值计算、符号计算孰优孰劣的长期争论,促成了两种计算的互补发展新时代。

+ 符号计算发展

从1960s年代以来,符号计算这个研究领域获得了极大的发展。一系列符号计算算法的提出为现代计算机代数系统奠定了理论基础。比较着名的算法包

括: 计算多项式理想的Grobner 基算法、多项式分解的Berlekamp 算法、计算有理函数积分的Risch 算法.

在二十世纪六十年代,比较流行的计算机程序语言是FORTRAN 和ALGOL。这两种语言主要是用来作数值计算的,至今FORTRAN 依然是数值计算领域的标准语言之一。然而FORTRAN语言和ALGOL 语言并不适合于编写符号计算软件。六十年代初出现的LISP 语言为符号计算软件提供了合适的语言环境,因此早期的符号计算软件都是用LISP 语言编写的。其中最着名的符号计算系统是REDUCE, REDUCE 系统是由Stanford 大学的Tony Hearn 开发的基于LISP 语言的交互式符号计算系统,最初的目的是用来进行物理计算。到了二十世纪七十年代初,由麻省理工学院的Joel Moses, Willian Martin 等人开发的MACSYMA 系统诞生了,它是那个时代功能最强大的符号计算系统。它的功能除了标准的代数计算以外,还包括极限的计算、符号积分、解方程等。事实上,许多符号计算的标准算法都是由麻省理工学院的研究小组提出的。

由G.Collins 和R.Loos 开发的SAC/ALDES 系统是另外一种类型的符号计算系统,它的前身是G。Collins 在IBM 编写的PM系统,它所使用的开发语言是LISP 语言的一个子集称为muSIMP.进入二十世纪八十年代,随着个人PC 机的普及,计算机代数系统也获得了飞速的发展。在这个时代推出的计算机代数系统大部分是用C 语言编写的,比较着名的系统包括Maple,Mathematica, DERIVE 等。

DERIVE 是muMATH 的后继版本,它是第一个在PC 机上运行的符号计算系统。DERIVE具有友好的菜单驱动界面和图形接口,可以很方便的显示二维和三维

图形。它唯一的缺陷是没有编程功能,直到1994 年DERIVE 的第三版问世时,才提供了有限的编程功能。现在DERIVE的大部分功能都被移植到由 HP 公司和 Texas 公司生产的图形计算器上。

Mathematica 是由 Stephen Wolfram 开发的符号计算软件Mathematica 系统的计算能力非常强,它的函数很多,而且用户自己可以编程。它的最大优点是,在带有图形用户接口的计算机上 Mathematica 支持一个专用的Notebook 接口。通过 Notebook 接口,我们可以向 Mathematica 核心输入命令,可以显示 Mathematica 的输出结果,显示图形、动画、播放声音。通过 Notebook,我们可以书写报告、论文,甚至整本书。事实上,有关Mathematica 的论文,软件,杂志大部分都是有 Mathlink 协议,通过Mathlink,我们可以把Mathematica 的核心与其它高级语言连接,我们可以用其它语言调用 Mathematica,也可以在 Mathematica 中调用其它语言编写的程序。到现在为止,能够与 Mathlink 连接的语言包括 C 语言,Excel,Word 等。事实上Notebook 就是通过 Mathlink 与 Mathematica 核心相连接的。

其它通用的符号计算系统还有 IBM 公司的 Thomas J.Watson 研究中心开发的 AXIOM,它的前身称为SCRATCHPAD。除了上述通用的符号计算系统以外,还有一些在某个领域专用的符号计算系统。例如: 用于高能物理计算的SCHOONSCHIP,用于广义相对论计算的 SHEEP 和 STENSOR。在数学领域中用于群论的 Cayley 和GAP,用于数论的 PARI, SIMATH 和 KANT。在代数几何和交换代数领域中常用的系统是 CoCoA 和 Macaulay。还有专门计算Lie 群的Lie 等等。

相关文档
最新文档