MATLAB语言介绍_第1页
MATLAB语言介绍_第2页
MATLAB语言介绍_第3页
MATLAB语言介绍_第4页
MATLAB语言介绍_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一 MATLAB概述1.1 MATLAB是21世纪的科学计算软件在科学研究和工程应用等领域中会涉及到大量的科学计算问题,自从计算机出现以来,人们就一直在使用计算机这个有力的工具帮助解决科学计算问题,并由此创造了许多用于科学计算的程序语言,如BASIC、FORTRAN、C等等。随着时代的变化、随着计算机的普及和快速开展,计算机程序语言在不断地变化开展、在不断地推陈出新。在当今时代,什么程序语言是最流行的科学计算语言呢?答案是MATLAB语言。MATLAB之所以能够成为最好的和最流行的科学计算语言,是因为它具有强大的科学计算及数据处理能力和出色的图形处理功能等特点。1.1.1 MATLAB具有强大

2、的科学计算及数据处理能力MATLAB拥有600多个工程中要用到的数学运算函数,可以方便地实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化及容错处理,因此使用起来稳定性和可靠性非常高,在通常情况下,可以用它来代替底层编程语言,如C和C+等。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB函数所能解决的问题包括矩阵运算、多维数组操作阵列运算、复数的各种运算、三角函数和其他初等数学函数运算、非线性方程求根、线性方程组的求解、微分方程及偏微分方程组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算

3、、建模和动态仿真等等。1.1.2 MATLAB具有出色的图形处理功能在科学计算中,往往需要用各种图形把数值计算的结果形象地表现出来,以帮助人们更好地理解、认识和发现其中的科学规律。MATLAB不仅提供数值计算功能和符号运算功能,而且自诞生之日起就具有方便的数据可视化功能,使计算结果的可视化要求得到充分满足。MATLAB在二维曲线和三维曲面的绘制和处理等方面的功能比一般数据可视化软件更加完善,在一些其他软件所没有的功能例如图形的光照处理、色度处理以及四维数据的表现等方面也表现得非常出色。在MATLAB 6.x中有一个对图形对象属性进行设置的图形属性编辑界面,该界面比 MATLAB 5.x中的界面

4、功能更为全面,操作也更为方便。MATLAB 6.x对图形的输出也做了适当的改良,提供了更为丰富的属性设置,以提高图形输出的效果。对一些特殊的可视化要求,例如图形动画等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外,新版本的MATLAB还着重在图形用户界面GUI的制作上做了很大的改善,对这方面有特殊要求的用户也可以得到满足。MATLAB将数值计算功能、符号运算功能和图形处理功能高度地集成在一起,在数值计算、符号运算和图形处理上做到了无缝的衔接,极大地方便了用户,这是它在科学计算中能得到广泛应用的重要原因之一。1.1.3 MATLAB程序语言简单易用早期用于科学计算的计算机语言,

5、由于计算机内存容量和运算速度的限制等原因,常常要定义常量、变量、向量和矩阵等的不同的数据类型,结果导致编程过于复杂化。和这些语言不一样,MATLAB语言对他们进行了高度抽象,实现了数据类型的高度统一,即常量、变量、向量和矩阵等都具有相同的数据类型。MATLAB语言认为所有的数据都是一个对象类,都具有相同的属性。因此,用户不需要事先分别定义常量、变量、向量和矩阵等的数据类型就可以直接使用他们当然MATLAB的这种设计思想是以高性能计算机的出现和普及作为前提条件的,编程得到了很大简化。例如,在MATLAB中,根本的计算单元用复双精度矩阵来表示,其大小是n行m列,矩阵各数据元素存放在两个双精度向量中

6、,一个存放实部数据指针pr指向它,另一个存放虚部数据指针pi指向它。如果是实数,那么复双精度矩阵中pi为空。复数或实数那么可以理解为1×1的矩阵。MATLAB语言是一种“数学形式的语言,它的操作和功能函数指令就是用平时计算机和数学书上的英文单词和符号来表达的,比BASIC、FORTRAN和C等语言更接近于人们书写的数学计算公式、更接近于人们进行科学计算的思维方式,用MATLAB语言编写程序犹如在演算纸上排列公式与求解问题,故有人称MATLAB编程语言为“演算纸式科学算法语言。因此,MATLAB语言简单自然,学习和使用更容易。MATLAB程序文件是一个纯文本文件,扩展名为.m,用任何字

7、处理软件都可以对它进行编辑。MATLAB本身就像一个解释系统,对其中的函数程序的执行以一种解释执行的方式进行,程序不必经过编译就可以直接运行,而且能够及时报告出现的错误,进行出错原因分析。因此,程序调试容易、编程效率高。MATLAB的用户界面精致,接近Windows的标准界面,人机交互性强,操作简单。新版本的MATLAB提供了完整的联机查询、帮助系统,极大地方便了用户的使用。例如,在开发环境中,MATLAB 6.x提供了强大的帮助功能,几乎所有的帮助都能以在线帮助的形式出现,同时也提供了一种全新的帮助浏览器,更加方便用户获得所需要的信息。与MATLAB 5.x相比,MATLAB 6.x改良了原

8、有的系统结构,将各种对MATLAB应用提供支持的系统集成为全新的MATLAB开发环境,其中最为明显的就是,集各种对MATLAB文件、数据变量进行操作的工具以及MATLAB自身的辅助工具为一体的MATLAB桌面系统。该桌面系统就是用户对MATLAB操作的面板。从开始应用MATLAB到退出MATLAB,几乎所有具体的操作都将在桌面系统内完成。1.1.4 MATLAB功能强大MATLAB为许多专业领域开发了功能强大的模块集或工具箱一般都是由这些领域的专家们开发的,用户可以直接使用这些工具箱而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如概率统计、NAG和

9、偏微分方程求解、样条拟合、优化算法、模糊逻辑、工程规划、模型预测、模型处理、神经网络、数据采集、交流通信、DSP与通讯、数字信号处理、小波分析、光谱分析、图像处理、系统辨识、控制系统设计、非线性控制设计、鲁棒控制、QFT控制设计、LMI控制、实时工作、数据库接口、金融分析、金融管理、地图工具、嵌入式系统开发、实时快速原型及半物理仿真、定点仿真、电力系统仿真等等,都在工具箱Toolbox家族中有了自己的一席之地。在模型化和系统级仿真方面,MATLAB开发了分支产品Simulink,主要用来实现对工程问题的模型化和动态仿真。Simulink表达了模块化设计和系统级仿真的具体思想,使得建模仿真如同搭

10、积木一样简单。Simulink对仿真的实现可以应用于动力系统、信号控制、通信设计、金融财会及生物医学等各个领域的研究中。MATLAB留有与其它实用的程序接口。MATLAB可以方便地与FORTRAN,C等语言接口,以充分利用各种资源。用户只需将已有的EXE文件转换成MEX文件,就可以方便地调用有关程序和子程序。新版本的MATLAB可以利用MATLAB编译器和CC+数学库和图形库,将自己的 MATLAB程序自动转换为独立于MATLAB运行的C和C+代码。MATLAB还和符号运算最为强大的工具软件Maple有很好的接口,这也大大扩充了MATLAB的符号运算功能。此外,在MATLAB 6.x中增加了与

11、Java的接口,并为实现两者的数据交换提供了相应的函数库。1.1.5 MATLAB开放性强MATLAB强大的功能与其开放性设计思想是分不开的,正是这种开放性设计思想,增强了MATLAB强大的生命力。MATLAB对函数程序的执行是以一种解释的方式进行的,MATLAB完全成了一个开放的系统,用户可以方便地看到函数的源程序,也可以方便地开发自己的程序,甚至创立自己的“库。在工具箱方面,该公司本身就推出了30多个应用工具箱,而世界上超过200家公司开发出与MATLAB兼容的第三方产品,这些产品向用户提供更多的工具箱、模块集、与其他商业产品的接口等。MATLAB是一个开放的环境。全世界各地,特别是许多大

12、学都建立了MATLAB学习研究小组,他们也通过互联网交流学习心得和经验,MathWorks公司特别鼓励这种交流,以丰富和扩展MATLAB的使用范围。目前,MATLAB 7.0版本已经面世,其功能和使用便捷程度又有了很大提高。MATLAB的相关书籍超过涉及19种不同文字600种。由于MATLAB具有以上其他计算语言无法比较的优势,在美国及其他兴旺国家的理工科院校里,MATLAB已经成为了一门必修的课程,是攻读学位的大学生、硕士生和博士生必须掌握的根本工具。在科研院所、大型公司或企业的工程计算部门,MATLAB也是最为普遍的计算工具之一。由此可见,MATLAB就是21世纪真正的科学计算语言。1.2

13、 MATLAB软件的开展历史MATLAB是由MATrix和LABoratory两个词的前三个字母组合而成的,含义是矩阵实验室。它是MathWorks公司于1984年推出的一套高性能的数值计算和数据可视化数学软件。20世纪70年代,Cleve Moler和他的同事在美国国家自然科学基金的资助下研发了调用LINPACK和EISPACK的FORTRAN子程序库,这两个程序库是用于解线性方程和矩阵特征值问题的,代表着当时矩阵计算软件的最高水平。后来Cleve Moler在新墨西哥大学给学生开线性代数课程时,用业余时间为学生编写使用方便的LINPACK和EISPACK的接口程序,并给这个接口程序取名为M

14、ATLAB。Cleve Moler先后到多所大学讲学,MATLAB逐渐为人们所接受并成为应用数学界的术语。当Cleve Moler 1983年到斯坦福大学访问时,工程师John Little就意识到MATLAB将会在工程计算领域里大有作为,于是他与Moler及Steve Bangert等人一起合作开发了第二代专业版MATLAB。从这一代开始,MATLAB的核心就采用C语言编写,并且MATLAB除了具有数值计算的功能以外,还具备了数据可视化的功能。1984年,Mathworks公司成立,把MATLAB推向了市场,并继续MATLAB的研制和开发。1993年,MATLAB的第一个Windows版本问

15、世,同年,支持Windows 3.x的MATLAB 4.0版本推出。4.0版本做了很大的改良,如增加了Simulink,Control, Neural Network,Optimization,Signal Processing,Spline,State-space Identification,Robust Control,Mu-analysis and synthesis等工具箱。1993年11月,Mathworks公司又推出了MATLAB 4.1版本,首次开发了Symbolic Math符号运算工具箱,其升级版本MATLAB 4.2c在用户中得到广泛的应用。1997年,MATLAB 5.

16、0版本问世了。相对于MATLAB 4.x版本,它是真正的32位运算,功能强大,数值计算加快,图形表现有效,编程简洁直观,用户界面十分友好。2000年下半年,Mathworks公司推出了MATLAB 6.0R12的试用版,2001年初推出了正式版。2002年7月又推出了他们的最新产品MATLAB 6.5R13,Simulink升级到5.0版本。MATLAB 6.5提供了JIT程序执行加速器,大大提高了程序的执行速度。本教程主要以MATLAB 6.5为蓝本,简明介绍MATLAB语言的数值计算功能、绘图功能和在数值计算方法中的应用等内容。1.3 MATLAB软件的组成MATLAB软件是一个大家庭,有

17、许多成员,包括应用程序开发工具、工具箱Toolbox、数据存取工具、模块集、状态流图、代码生成工具、学生产品等。应用程序开发工具包括MATLAB编译器、C/C数学库、MATLAB运行效劳器、MATLAB Web效劳器,这些工具可以建立和发布独立于MATLAB环境的应用程序需要编译。工具箱实际上是一些高度优化并且是面向专门应用领域的一系列MATLAB函数称为M文件的集合,它可用来求解各类学科的问题。仅随软件提供的工具箱可支持的领域就有信号处理、图像处理、控制系统设计、最优化、金融工程、符号数学、神经网络、系统辩识等等。工具箱的最大的特点是它的开放性,几乎所有函数都是用MATLAB语言写成的只有少

18、数工具箱的某些函数是使用C语言写成的动态库函数,因而可以直接阅读和加以改写,用户也可以自行开发适合特定领域的工具箱。数据存取工具提供了从外部数据源获取数据的简易途径,这些数据源包括外部硬件和外部数据库与JDBC、ODBC兼容。为了方便数据的读取,MATLAB 6.x提供了数据编辑器,以完成从MATLAB外部便捷地读取数据的功能;通过该编辑器可以实现多种数据类型的转换。模块集是面向应用领域的模块Simulink的根本单位的集合,这些模块可以直接用于Simulink模型中,在命令窗口matlab command window键入“simulink,就出现(SIMULINK) 窗口,以往十分困难的系

19、统仿真问题,用SIMULINK只需拖动鼠标即可轻而易举地解决问题。状态流图是一个专门针对事件驱动系统建模和设计的图形化的模拟环境。代码生成工具可以从Simulink模型或状态流图中产生可定制的C和Ada代码,以便实现快速原型和硬件在线模拟。 学生产品是专门针对美国和加拿大地区的学生而发布的MATLAB的简易和廉价版本。1.4 MATLAB软件的安装1.4.1 运行MATLAB的根本要求1. MATLAB 6.5对硬件的要求·CPU 奔腾、奔腾Pro、奔腾二、三或四代、AMD Athlon或者更高;·光驱 至少为24速光驱;·内存 至少128MB,推荐256MB以上

20、;·硬盘 至少预留260MB的硬盘空间根据需要安装的东西所定;·显卡 256色以上。2. MATLAB 6.5对软件的要求· Microsoft Windows Me98NT2000XP;· Microsoft Word 972000XP,用以使用MATLAB Notebook;· Compaq Visual Fortran 5.0,Microsoft VCC+5.0,Borland CC+5.0,Borland C+;· Builder version 3.0或更高版本,用以实现API;· Adobe Acrobat Re

21、ader,用以阅读MATLAB的PDF帮助信息。可见,MATLAB 6.5对内存的要求加大,并且不再支持Windows 95系统,不再支持Office95。根据Mathworks公司的报告,在即将发行的新版本的产品中将不再支持Windows 98系统。读者可以根据自己的需求来合理选择需要安装的版本。1.4.2 安装MATLAB将MATLAB 6.5的安装盘放入光驱,系统会自动搜索到autorun文件并进入安装界面。安装步骤十分简便,按提示进行操作就可以了。当用户填写注册信息及接受使用协议后,将进入MATLAB的选择安装界面,如图1.1所示。用户可以根据使用的要求有选择地安装各组件和安装目录。完

22、全安装MATLAB 6.5需要1.5GB以上的硬盘空间,对一般的计算机用户来说,许多工具箱软件包可能在相当长的时间内根本用不到,因此选择安装就显得很重要。表1.1列出了供选择的各个选项的具体解释。对于初学者,安装表中粗体内容即可,大约需要250MB的硬盘空间。对于硬盘很大的用户,最好需要什么才安装什么,并不是安装得越多越好。图1.1选好需要安装的组件和安装目录后就可以进行安装了。在安装之后再重新启动计算机,安装时所做的一些设置,如搜索路径设置等才会生效。表1.1可以选择安装的工程组件选项功能解释组件选项功能解释MATLAB MATLAB主程序Financial Toolbox金融财政工具箱Si

23、mulink动态仿真Fixed-Point Blockset定点模块集CDMA Reference BlocksetCDMA参考模块集Fuzzy Logic Toolbox模糊逻辑工具箱Communications Blockset通信模块集GARCH ToolboxGARCH工具箱Communications Toolbox通信工具箱Image Processing Toolbox图像处理工具箱Control System Toolbox控制系统工具箱Instrument Control Toolbox器材控制工具箱DSP Blockset数字信号模块集LMI Control Toolbox

24、LMI控制工具箱Data Acquismon Toolbox数据采集工具箱MATLAB CC+ Graphics LibraryMATLAB CC+图形库Database Toolbox数据库工具箱MATLAB CC+ Math LibraryMATLAB CC+数学计算库Datafeed Tookbox数据流入工具箱MATLAB CompilerMATLAB编译器Dials and Gauges Blockset刻度标尺模块集MATLAB Report GeneratorMATLAB报告生成器Excel Link外链接Mapping Toolbox制图工具箱Filter Design Too

25、lbox滤波器设计工具箱Model Predictive Control Toolbox模型预测控制工具箱Financial Derivatives Toolbox金融系统工具箱Motorola DSP Developer's Kit摩托罗拉数字信号处理开发工具包Financial Time SeriesToolbox金融时间系列工具箱Mu-Analysis and Synthesis ToolboxMu分析与合成工具箱Neural Network Toolbox神经网络工具箱Signal Processing Toolbox信号处理工具箱Nonlinear Control Desig

26、n Blockset非线性设计模块集Simulink Report GeneratorSimulink报表生成器Optimization Toolbox最优化工具箱Spline Toolbox样条工具箱Partial Dfferential Equation Toolbox偏微分方程工具箱Stateflow状态流工具箱Power System Blockset动力系统模块集Stateflow Coder状态流编码器Real-Time Workshop实时工作间Statistics Toolbox统计工具箱Real-Time Workshop Ada Coder实时工作问Ada编码器Symbol

27、ic Math Toolbox符号运算工具箱Real-Time Workshop Embedded Coder实时工作间内置编码器System Identification Toolbox系统识别工具箱Requirements Management Interface需求管理界面Wavelet Toolbox小波工具箱Robust Control Toolbox鲁棒控制工具箱xPC TargetxPC对象SB2SL(converts models to Simulink)模型转换成Simulink工具xPC Target Embedded OptionxPC对象内置属性此外,MathWorks

28、公司还提供了从网上进行下载安装的MATLAB6.5学生版的免费软件,免费使用期是一个月。下载网址是: :/ mathworks 。1.5 MATLAB的根本操作1.5.1 MATLAB的桌面平台双击系统桌面的MATLAB图标,启动MATLAB,也可以在开始菜单的程序选项中选择MATLAB快捷方式,还可以在MATLAB的安装路径的bin子目录中双击可执行文件matlab.exe。初次启动MATLAB后,将进入MATLAB默认设置的桌面平台,如图1.2所示。图1.2默认情况下的桌面平台包括5个窗口,分别是MATLAB主窗口、命令窗口、历史窗口、当前目录窗口和工作空间窗口。下面分别对各窗口做简单介绍

29、。1MATLAB主窗口MATLAB 6.5的主窗口包含其他的几个窗口。主窗口不能进行任何计算任务的操作,只用来进行一些整体的环境参数的设置。它主要包括6个下拉菜单和10个按钮控件。10个按钮控件的功能如下:新建或翻开一个MATLAB文件;剪切、复制或粘贴已选中的对象;撤销或恢复上一次操作; 翻开Simulink主窗口;翻开MATLAB的帮助系统;6个下拉菜单分别是【File】、【Edit】、【View】、【Web】、【Window】和【Help】。这里只简单介绍与根本操作有关的内容。单击【File】下拉菜单,点击【Set Path】,会弹出图1.3所示的对话窗口,点击【Add Folder】,

30、浏览文件夹,找到需要运行程序所在的文件夹位置,按【确定】后窗口中就会新添一条用户设置的路径,按【Save】和【Close】,退出对话窗口,以后只要在命令窗口中键入该路径下的MATLAB应用程序,就可以正常运行,不会出现找不到路径的错误了。这是因为MATLAB的一切操作都是在它的搜索路径包括当前路径中进行的,如果调用的函数在搜索路径之外,MATLAB那么认为此函数并不存在。因此,必须把应用程序所在的目录扩展成MATLAB的搜索路径。单击【File】下拉菜单,点击【Preferences】,会弹出图1.4所示的对话窗口,可以对各窗口的字体、字号、字符颜色、数据显示格式、图形复制等很多属性进行设置。

31、这里不进行详细介绍。 图1.3 图1.4单击【File】下拉菜单,点击【New】,再点击【M-file】,会弹出文本编辑窗口,用户可以编写自己的MATLAB应用程序M文件和M函数。单击【Edit】下拉菜单,点击【Clear Command Window】,可以去除命令窗口中的所有内容,窗口中只剩下命令提示符“>>。单击【View】下拉菜单,点击【Desktop Layout】,再点击【Default】,MATLAB就恢复默认的桌面平台设置。2命令窗口在MATLAB的命令窗口中,“>>为运算提示符,表示MATLAB正处在准备状态,接受用户的输入指令。当在提示符后输入MAT

32、LAB通用命令、MATLAB函数M函数、MATLAB应用程序M文件和一段MATLAB表达式等,按【Enter】键后,MATLAB将进行系统管理工作以及进行数值计算、给出计算结果,如果指令集中调用了MATLAB绘图命令,将会弹出图形窗口,显示计算结果的数学图形。指令完成之后,MATLAB再次进入准备状态。在MATLAB的根本函数库表1.2中,有MATLAB通用命令和许多其他的MATLAB函数。如果用户一旦发现某个指令不知如何使用时,可以用help命令将该指令紧跟于后,系统便会告诉该指令的意义和使用方法。例如:>> help sin SIN Sine. SIN(X) is the si

33、ne of the elements of X.表1.2MATLAB根本函数库库 内 容库 名库 内 容库 名数据分析函数库datafun矩阵线性代数库matfun动态数据交换库dde运算符和特殊字符库ops初等数学函数库elfun二维图形库graph2d根本矩阵库elmat特殊图形函数库specgraph时间日期函数库timefun三维图形库graph3d非线性数值方法库funfun多项式和插值函数库polyfun通用命令库general稀疏矩阵函数库sparfun数据类型库datatypes特殊数学函数库specfun通用图形函数库graphics字符串函数库strfun低层输入/出函数库

34、iofun用户界面工具库Guitools语言结构函数库langMATLAB演示库demos又例如,在MATLAB下进行根本数学运算,只需将运算式直接打入提示号之后,并键入【Enter】键即可。>> (10*19+2/4-34)/2*3(Enter)ans= 234.7500MATLAB会将运算结果直接存入一变量ans,代表MATLAB运算后的答案,并在屏幕上显示其数值。MATLAB可以将计算结果以不同的精确度的数字格式显示,单击主窗口的菜单【File】,点击【Preferences】,弹出窗口后,再点击Command Window,在Numerical Format下拉选项框中,选

35、中“format short,这就是系统默认的数据格式。如果在上例中数学运算式的结尾加上“;,那么计算结果不会显示在命令窗口上,要得知计算值只须键入表示这一数学运算式的变量名即可。例如:>> a=(10*19+2/4-34)/2*3;(Enter)a234.75003命令历史窗口在默认设置下,历史窗口中会保存自安装起所有命令的历史记录,并标明使用时间,这方便了使用者的查询。双击某一行命令,即在命令窗口中执行该行命令。4当前目录窗口在当前目录窗口中可显示或改变当前目录,还可以显示当前目录下的文件并提供搜索功能。在此窗口中,显示并改变当前目录的控件,与主窗口中的路径显示控件完全相同。设

36、置当前路径。5工作空间窗口工作空间窗口是MATLAB的重要组成局部。在工作空间窗口中将显示目前内存中所有的MATLAB变量的变量名、数据结构、字节数以及类型,不同的变量类型分别对应不同的变量名图标。工作空间窗口的工具栏由5个局部组成,他们是4个按钮控件和1个下拉菜单。保存工作空间中的所有数据;翻开已保存的MATLAB数据文件; 翻开所选数据的矩阵编辑器; 删除所选数据;MATLAB在执行M文件时,将把该M文件的数据保存到其对应的工作空间中。为了区别,命令窗口的工作空间也包括全局变量的工作空间被标记为根本工作空间Base。因此,此控件用于调试M文件时实现不同工作空间之间的切换。1.5.2 MAT

37、LAB的使用技巧1. MATLAB的通用命令使用MATLAB之前,应该熟悉一些常用的MATLAB通用命令,通用命令用于对MATLAB系统的管理。表1.3给出了MATLAB通用命令库中的局部命令。表1.3通用命令表命 令命令说明命 令命令说明cd 显示或改变工作目录 hold 图形保持开关dir 显示目录下文件 disp 显示变量或文字内容type 显示文件内容 path 显示搜索目录clear 清理内存变量 save 保存内存变量到指定文件clf 去除图形窗口 load 加载指定文件中的变量pack 收集内存碎片,扩大内存空间 diary 日志文件命令clc 去除工作窗quit/exit 退出

38、MATLABecho工作窗信息显示开关 ! 调用操作系统命令help在线帮助dos 执行dos命令helpwin在线帮助窗口unix执行unix命令helpdesk在线帮助工作台what显示指定的matlab文件lookfor在HELP里搜索关键字which定位函数或文件demo运行演示程序path获取或设置搜索路径readme显示Readme文件ver版本信息who显示当前变量pwd显示当前的工作目录whos显示当前变量的详细信息computer显示计算机类型例如,当要暂时离开MATLAB,去执行操作系统例如Dos的指令而后还要再进入MATLAB时,那么可以利用惊叹号“!加上想要执行的操作系

39、统的指令,如!dir等。又例如,要结束MATLAB的运行,可以采用以下三种方法之一:键入quit命令;键入exit命令;直接关闭MATLAB的命令窗口Command window。2. 一些常用操作技巧在MATLAB的使用过程中,通过使用常用键盘按键技巧可以使命令窗口的行操作变得简单容易。表1.4常用操作键键盘按键说 明键盘按键说 明Ctrl+p,调用上一行homeCtrl+a,光标置于当前行开头Ctrl+n,调用下一行endCtrl+e,光标置于当前行末尾Ctrl+b,光标左移一个字符escCtrl+u,去除当前输入行Ctrl+f,光标右移一个字符delCtrl+d,删除光标处的字符Ctrl

40、+Ctrl+l,光标左移一个单词backspaceCtrl+h,删除光标前的字符Ctrl+Ctrl+r,光标右移一个单词Alt+backspace恢复上一次删除例如,MATLAB利用了二个游标键,可以将所用过的指令叫回来重复使用。按下那么前一次指令重新出现,之后再按Enter键,即再执行前一次的指令。而键的功用那么是往后执行指令。其它在键盘上的几个键,如、Delete、Insert,其功能那么显而易见,无须多加说明。另外,Ctrl-C即同时按Ctrl及C两个键可以用来中止执行中的MATLAB程序。3. 标点在MATLAB语言中,一些标点表1.5被赋予特殊的意义或代表一定的运算,他们被MATLA

41、B变量和语句所应用,例如“:和“,在矩阵和语句中有不同的含义。表1.5运算符和特殊字符库标 点定 义标 点定 义:冒号,具有多种应用功能.小数点,小数点及域访问符等;分号,区分行及取消运行显示等续行符,逗号,区分列及函数参数分隔符等%百分号,注释标记( )括号,指定运算过程中的先后次序等!惊叹号,调用操作系统运算 方括号,矩阵定义的标志等=等号,赋值标记 大括号,用于构成单元数组等'单引号,字符串的标示符等1.5.3 MATLAB的帮助系统MATLAB的帮助系统大致可分为联机帮助系统、命令窗口查询帮助系统和联机演示系统三大类,用户在学习MATLAB的过程中,理解、掌握和熟练运用这些帮助

42、是非常重要的。下面主要对命令窗口查询帮助系统进行介绍。命令窗口查询帮助主要可以分为help系列、lookfor命令和其他常用帮助命令。1help系列help系列的帮助命令有help,help+函数类名,helpwin及helpdesk,其中后两者是用来调用联机帮助窗口的。1 helphelp命令是最为常用的命令。在命令窗口中直接输入help命令,将会显示当前的帮助系统中所包含的所有工程,即搜索路径中所有的目录名称。2 help+函数类名在实际应用中,这是最有用的一个帮助命令,可以辅助用户进行深入的学习。【例1.1】>> help log LOG Natural logarithm.

43、 LOG(X) is the natural logarithm of the elements of X. Complex results are produced if X is not positive. See also LOG2, LOG10, EXP, LOGM.2lookfor函数当知道某函数的函数名而不知其用法时,help命令可帮助用户准确地了解此函数的用法。然而,假设要查找一个不知其确切名称的函数名时,可以用lookfor命令来查询根据用户提供的关键字搜索到的相关函数。【例1.2】>> lookfor EulerRIGIDODE Euler equations o

44、f a rigid body without external forces.EULER Simulink 1.x EULER integration algorithm.BWEULER Compute the Euler number of binary image.eulerfs.m: % function ttab,xtab=eulerfs(plant,t,x0,u0,h,p1,p2,p3,p4,p5)lookfor的查询机理为:它对MATLAB搜索路径中的每个M文件的注释区的第一行进行扫描,一旦发现此行中含有所查询的字符串,那么将该函数名及第一行注释全部显示在屏幕上。由此机理,用户也可

45、在自己的文件中参加在线注释。3其他帮助命令MATLAB中还有一些可能会常用到的查询、帮助命令,如下所示。 exist变量检验函数 what目录中文件列表 who内存变量列表 whos内存变量详细信息 which确定文件位置二 MATLAB变量与表达式2.1 MATLAB的变量2.1.1 数据类型数据是计算机程序处理的对象。数据可能是整数、实数、复数、数值矩阵或者是字符、字符串等,他们占用的计算机内存大小显然是不同的。为了数据存储和处理的需要,编译程序将数据划分成不同的类型,并规定了每一种类型数据在内存的存储单元字节数和对该类型数据所能进行的运算。然而,在MATLAB程序语言中,数据的类型是相同

46、的,对用户而言只有一种。MATLAB是一种面向矩阵的编程语言,它将任何数据都看成是矩阵:一个实数是虚部为零的复数,一个复数是1×1的数值矩阵;数量、向量和字符串等是特殊的矩阵;一个N×M的数据矩阵由N×M个复数元素构成。矩阵的类型可以是复数型矩阵、实数型矩阵或由字符组成的字符型矩阵。在MATLAB中,所有数据都是以阵列的形式存在的,该阵列称为MATLAB Arrays。由此可见,在MATLAB中,矩阵的各种数据类型在语法上是完全相同的。因此,用MATLAB语言编程十分简洁。MATLAB实现变量数据类型的统一,在很大程度上简化了程序设计。用户不需要事先声明、指定所使

47、用变量的类型、定义变量的维数,MATLAB会自动根据所赋予变量的值或对变量所进行的操作来确定变量的类型和维数;在赋值过程中,如果变量已存在,MATLAB语言将使用新值代替旧值,并以新的变量类型和维数代替旧的变量类型和维数。2.1.2 变量类型在MATLAB中,简单变量就是1×1的矩阵变量,向量就是n×1或1×m的矩阵变量,简单变量、向量和矩阵变量在类型上也是统一的。因此,MATLAB的根本变量就是矩阵型变量。在下面的内容中,如果不需要特别区分,约定变量就是指矩阵变量含1×1矩阵变量,常量就是指矩阵常量含1×1矩阵常量。2.1.3 存储形式MAT

48、LAB矩阵数据都是以列column为先的阵列形式存储的,如同Fortran语言的规那么一样。例如,给出一个字符串矩阵:a='house' 'floor' 'porch'a =housef loorporch它的大小是size(a)ans =3´5它在内存单元中的存储顺序是:hfpolouorsocerh2.1.4 变量命名规那么在MATLAB语言中,变量的命名遵守如下规那么:1变量名以英文字母开头即第一个字符必须为英文字母,变量名中可包含字母、数字和下划线“_,但不能包含空格符和其它标点符号。例如, V_31为合法变量名,但V-31,

49、31, V=31, V+31,V31等都不是合法的变量名。2变量名中的字母区分大小写。例如,单一字母X 和x 、A和 a是不同的变量名,MAT_LAB、MAT_lab和mat_lab等是完全不同的变量名。3变量名长度不能超过31个字符第31个字符之后的字符将被忽略。例如,V31为合法变量名。需要说明的是,MATLAB语言与其他的程序设计语言一样,也存在变量作用域的问题。在未加特殊说明的情况下,MATLAB语言将所识别的一切变量视为局部变量,即仅在其调用的函数内有效。假设要定义全局变量,应对变量进行声明,即在该变量前加关键字global。一般来说,全局变量习惯用大写的英文字符表示,以便记忆和理解

50、。2.1.5 MATLAB预定义的变量MATLAB有一些预定义的变量,表2.1给出了MATLAB语言中经常使用的一些预定义的变量及其说明。表 2.1MATLAB预先定义的变量变量含义ans预设的计算结果的变量名epsMATLAB定义的正的极小值2.2204e-16pi内建的值inf值,无限大 ( 1/0)NaN无法定义的一个数 (0/0)i 或 j虚数单位i = j = realmax最大的正实数1.7977e+308realmin最小的正实数2.2251e-308nargin函数输入参数的个数nargout函数输出参数的个数flops浮点运算次数2.2 MATLAB的表达式 2.2.1 表达

51、式MATLAB数值计算语句是由表达式和变量等组成即MATLAB是表达式语言,用户输入的语句由MATLAB系统直接解释运行,因此,变量和表达式是使用MATLAB进行数值计算的根底。MATLAB语句有2种最常见的形式:1 表达式2 变量=表达式表达式由运算符、函数、变量和数字组成。MATLAB书写表达式的规那么与“手写算式几乎完全相同。表达式在MATLAB中占有很重要的地位,几乎所有的数值计算都必须借助它来进行。在第一种形式中,表达式运算后产生的结果由MATLAB系统自动赋给名为ans的变量,并显示在屏幕上。ans是一个默认的预定义变量名,它会在以后的类似操作中被自动覆盖掉。所以,对于在后续的计算中将要用到的重要结果,一定要记录下来,应该使用第二种形式的语句赋值语句。在第二种形式中,等号右边的表达式计算后产生的结果由MATLAB系统将其赋给等号左边的变量后放入内存中,并显示在屏幕上。【例2.3】>> 2*sin(pi/4)+3.2-sqrt(9)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论