Matlab简介
MATLAB(矩阵实验室的简称)是一种专业的计算机程序,用于工程科学的矩阵数学运算。但在以后的几年内,它逐渐发展为一种极其灵活的计算体系,用于解决各种重要的技术问题。Matlab 程序执行matlab 语言,并提供了一个极其广泛的预定义函数库,这样就使得技术工作变得简单高效。在解决工程技术问题方面,MATLAB 比其它任何计算机语言(包括FORTAN 和C)都简单高效。
在70年代中期,Cleve Moler博士和其同事在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库.EISPACK是特征值求解的FOETRAN程序库,LINPACK是解线性方程的程序库.在当时,这两个程序库代表矩阵运算的最高水平.
到70年代后期,身为美国New Mexico大学计算机系系主任的Cleve Moler,在给学生讲授线性代数课程时,想教学生使用EISPACK和LINPACK程序库,但他发现学生用FORTRAN编写接口程序很费时间,于是他开始自己动手,利用业余时间为学生编写EISPACK和LINPACK的接口程序.Cleve Moler给这个接口程序取名为MATLAB,该名为矩阵(matrix)和实验室(labotatory)两个英文单词的前三个字母的组合.在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,
并作为面向大众的免费软件广为流传.
1983年春天,Cleve Moler到matlab定义函数表达式Standford大学讲学,MATLAB深深地吸引了工程师John Little.John Little敏锐地觉察到MATLAB在工程领域的广阔前景.同年,他和Cleve Moler,Steve Bangert一起,用C语言开发了第二代专业版.这一代的MATLAB语言同时具备了数值计算和数据图示化的功能.
1984年,Cleve Moler和John Little成立了Math Works公司,正式把MATLAB推向市场,并继续进行MATLAB的研究和开发.
在当今30多个数学类科技应用软件中,就软件数学处理的原始内核而言,可分为两大类.一类是数值计算型软件,如MATLAB,Xmath,Gauss等,这类软件长于数值计算,对处理大批数据效率高;另一类是数学分析型软件,Mathematica,Maple等,这类软件以符号计算见长,能给出解析解和任意精确解,其缺点是处理大量数据时效率较低.MathWorks公司顺应多功能需求之潮流,在其卓越数值计算和图示能力的基础上,又率先在专业水平上开拓了其符号计算,文字处理,可视化建模和实时控制能力,开发了适合多学科,多部门要求的新一代科技应用软件MATLAB. 经过多年的国际竞争,MATLAB以经占据了数值软件市场的主导地位.
在MATLAB进入市场前,国际上的许多软件包都是直接以FORTRANC语言等编程语言开发的。这种软件的缺点是使用面窄,接口简陋,程序结构不开放以及没有标准的基库,很难适应各学科的最新发展,因而很难推广。MATLAB的出现,为各国科学家开发学科软件提供了新的基础。在MATLAB问世不久的80年代中期,原先控制领域里的一些软件包纷纷被淘汰或在MATLAB上重建。
MathWorks公司1993年推出了MATLAB 4。0版,1995年推出4。2C版(for win3。X)1997年推出5。0版。1999年推出5。3版。MATLAB 5。X较MATLAB 4。X无论是界面还是内容都有长足的进展,其帮助信息采用超文本格式和PDF格式,在Netscape 3。0或IE 4。0及以上版本,Acrobat Reader中可以方便地浏览。
时至今日,经过MathWorks公司的不断完善,MATLAB已经发展成为适合多学科,多种工作平台的功能强大大大型软件。在国外,MATLAB已经经受了多年考验。在欧美等高校,MATLAB已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB被广泛用于科学研究和解决各种
具体问题。在国内,特别是工程界,MATLAB一定会盛行起来。可以说,无论你从事工程方面的哪个学科,都能在MATLAB里到合适的功能
第一章 MATLAB 入门
Matlab 程序执行MATLAB 语言,并提供了一个极其广泛的预定义函数库,这样就使得技术工作变得简单高效。MATLAB 是一个庞大的程序,拥有难以置信的各种丰富的函数;即使基本版本的MATLAB 语言拥有的函数也比其他的工程编程语言要丰富的多。基本的MATLAB 语言已经拥有了超过1000 多个函数,而它的工具包带有更多的函数,由此扩展了它在许多专业领域的能力。
1.1 MATLAB 的优点
MATLAB 语言相对于传统的科技编程语言有诸多的优点。主要包括:
1. 易用性
MATLAB 是种解释型语言,就像各种版本的BASIC。和BASIC 一样,它简单易用程序可用作便笺簿求打在命令行处表达式的值
执行预先写好的大型程序。在MATLAB 集成开发环境下,程序可以方便的编写,修改和调试。这是因为这种语言极易使用,对于教育应用和快速建立新程序的原型,它是一个理想的工具。许多的编程工具使得MATLAB 十分简单易用。这些工具包括:一个集成的编译/调试器,在线文件手册,工作台和扩展范例。
2. 平台独立性
MATLAB 支持许多的操作系统,提供了大量的平台独立的措施。在本书编写的时侯, windows 98/2000/NT 和许多版本的UNIX 系统都支持它。在一个平台上编写的程序,在其它平台上一样可以正常运行,在一个平台上编写的数据文件在其它平台上一样可以编译。因此用户可以根据需要把MATLAB 编写的程序移植到新平台。
3. 预定义函数
MATLAB 带有一个极大的预定义函数库,它提供了许多已测试和打包过的基本工程问题的函数。例如,假设你正在编写一个程序,这个程序要求你必须计算与输入有关的统计量。在许多的语言中,你需要写出你所编数组的下标和执行计算所需要的函数,这些函数包括
其数学意义,中值,标准误差等。像这样成百上千的函数已经在MATLAB 中编写好,所以让编程变得更加简单。
除了植入MATLAB 基本语言中的大量函数,还有许多专用工具箱,以帮助用户解决在具体领域的复杂问题。例如,用户可以购买标准的工具箱以解决在信号处理,控制系统,通信,图象处理,神经网络和其他许多领域的问题。
4. 机制独立的画图
与其他语言不同,MATLAB 有许多的画图和图象处理命令。当MATLAB 运行时,这些绘图和图片将会出现在这台电脑的图象输出设备中。此功能使得MATLAB 成为一个形象化技术数据的卓越工具。
5. 用户图形界面
MATLAB 允许程序员为他们的程序建立一个交互式的用户图形界面。利用MATLAB 的这种功能,程序员可以设计出相对于无经验的用户可以操作的复杂的数据分析程序。
6. MATLAB 编译器
MATLAB 的灵活性和平台独立性是通过将MATLAB 代码编译成设备独立的P 代码,然后在运行时解释P 代码来实现的。这种方法与微软的VB 相类似。不幸的是,由于MATLAB是解释性语言,而不是编译型语言,产生的程序执行速度慢。当我们遇到执行速度慢的程序时,我们将会指出其这一特性。
1.2 MATLAB 的缺点
MATLAB 有两个基本的缺点。
第一, 它是解释型语言,其执行速度要比编译型语言慢得多。这个问题可以通过合理的MATLAB 结构得到缓解,也可以在发行广泛使用前编译出MATLAB 程序。
第二, 他的费用较高。一个完全版MATLAB 编译器的大小是一个C 语言或Fortan 语言编译器的5 到10 倍。但MATLAB 能够节省大量的时间在科技编程方面,故MATLAB在商业编程过程中是节省成本的。尽管如此,相对于大多数考虑购买的人还是很昂贵的。幸运的是,它有一个价格便宜的学生专用版本,对学生来说它是学习MATLAB 语言的一个重要工具。学生版的MATLAB 和完全版的MATLAB 是基本一致的。
1.3 MATLAB 的开发环境
任何一个MATLAB 程序的基本组成单元是数组。数组是一组数据值的集合,这些数据被编上行号和列号,拥有唯一的名称。数组中的单个数据是可以通过带有小括号的数组名访问,括号内有这个数据的行标和列标,中间用逗号隔开。标量也被MATLAB 当作数组,只不过只有一行和一列。当MATLAB 运行时,有多种类型的窗口,有的用于接收命令,有的用于显示信息。
当MATLAB 程序启动时,一个叫做MATLAB 桌面的窗口出现了。默认的MATLAB 桌面结构如图figure 1.1 所示。在MATLAB 集成开发环境下,它集成了管理文件、变量和应用程序的许多编程工具。
在MATLAB 桌面上可以得到和访问的窗口主要有:
命令窗口(The Command Window)
命令历史窗口(The Command History Window)
启动平台(Launch Pad)
编辑调试窗口(The Edit/Debug Window)
工作台窗口和数组编辑器(Workspace Browser and Array Editor)
帮助空间窗口(Help Browser)
当前路径窗口(Current Directory Browser)
1.3.2 命令窗口(The Command Window)
MATLAB 桌面的右边是命令窗口。在命令窗口中,用户可以在命令行提示符(>>)后输入一系列的命令,这些命令的执行也是在这个窗口中实现的。举一个简单的例子,假设你要计算一个半径为2.5m 的圆的面积。在命令窗口中的操作如下:
>> area = pi*2.5^2
area =
19.6350
当回车键敲下的一瞬间,结果被计算了出来,并被存储到一个叫area 的变量中(其实
是一个1×1 的数组)。这个变量的数值将显示在命令窗口(The Command Windows),如图
Figure 1.2 所示,而且这个变量能进行进一步的计算。(注意π是MATLAB 预先定义好的
变量,所以pi 不需要预先声明。)
如果一个语句在一行内书写太长了,可能要另起一行接着写,在这种情况下我们需要在第一行末打上半个省略号(…),再开始第二行的书写。
举例如下,下面这两语句是等价的。
x1 = 1 + 1/2 + 1/3 + 1/4 + 1/5 + 1/6;
And
x1 = 1 + 1/2 + 1/3 + 1/4…
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论