《MATLAB软件基础知识讲义.docx》由会员分享,可在线阅读,更多相关《MATLAB软件基础知识讲义.docx(74页珍藏版)》请在第一文库网上搜索。
1、MAT1AB软件基础知识讲义1 MAT1AB概述MAT1AB是MATriX1ABoratory(“矩阵实验室”)的缩写,是由美国MathWOrkS公司开发的集数值计算、符号计算与图形可视化三大基本功能于一体的,功能强大、操作简单的语言。是国际公认的优秀数学应用软件之一。20世纪80年代初期,C1eveMo1er与John1itt1e等利用C语言开发了新一代的MAT1AB语言,如今的MAT1AB语言已同时具备了数值计算功能与简单的图形处理功能。1984年,C1eveMo1er与John1itt1e等正式成立了Mathworks公司,把MAT1AB语言推向市场,并开始了对MAT1AB工具箱等的开发
2、设计。1993年,Mathworks公司推出了基于个人计算机的MAT1AB4.0版本,到了1997年又推出了MAT1AB5.X版本(Re1eaSeII),并在2000年又推出了最新的MAT1AB6版本(Re1eaSeI2)。现在,MAT1AB已经进展成为适合多学科的大型软件,在世界各高校,MAT1AB已经成为线性代数、数值分析、数理统计、优化方法、自动操纵、数字信号处理、动态系统仿真等高级课程的基本教学工具。特别是最近几年,MAT1AB在我国大学生数学建模竞赛中的应用,为参赛者在有限的时间内准确、有效的解决问题提供了有力的保证。概括地讲,整个MAT1AB系统由两部分构成,即MAT1AB内核及辅
3、助工具箱,两者的调用构成了MAT1AB的强大功能。MAT1AB语言以数组为基本数据单位,包含操纵流语句、函数、数据结构、输入输出及面向对象等特点的高级语言,它具有下列要紧特点:1 )运算符与库函数极其丰富,语言简洁,编程效率高,MAT1AB除了提供与C语言一样的运算符号外,还提供广泛的矩阵与向量运算符。利用其运算符号与库函数可使其程序相当简短,两三行语句就可实现几十行甚至几百行C或者FORTRAN的程序功能。2)既具有结构化的操纵语句(如for循环、Whi1e循环、break语句、if语句与SWitCh语句),又有面向对象的编程特性。3)图形功能强大。它既包含对二维与三维数据可视化、图像处理、
4、动画制作等高层次的绘图命令,也包含能够修改图形及编制完整图形界面的、低层次的绘图命令。4)功能强大的工具箱。工具箱可分为两类:功能性工具箱与学科性工具箱。功能性工具箱要紧用来扩充其符号计算功能、图示建模仿真功能、文字处理功能与与硬件实时交互的功能。而学科性工具箱是专业性比较强的,如优化工具箱、统计工具箱、操纵工具箱、小波工具箱、图象处理工具箱、通信工具箱等。5)易于扩充。除内部函数外,所有MAT1AB的核心文件与工具箱文件都是可读可改的源文件,用户可修改源文件与加入自己的文件,它们能够与库函数一样被调用。2 MAT1AB的安装与启动2.1 MAT1AB的安装要用MAT1AB6,首先务必在计算机
5、上安装MAT1AB6应用软件,随着软件功能的不断完善,MAT1AB对计算机系统配置的要求越来越高。下面给出安装与运行MAT1AB6所需要的计算机系统配置。 MAT1AB6对硬件的要求CPU要求:PentiumI1PentiumII1AMDAth1on或者者更高;光驱:8倍速以上;内存:至少64MB,但推荐128MB以上;硬盘:视安装方式不一致要求不统一,但至少留IGB用于安装(安装后未必有1GB);显卡:8位; MAT1AB6对软件的要求Windows95、Window98WindOWSNT或者WindoWS2000;Word97或者word2000等,用于使用MAT1ABNotebook;A
6、dobeAcrobatReader用于阅读MAT1AB的PDF的帮助信息。MAT1AB6的安装与其它应用软件类似,可按照安装向导进行安装,这里不再赘述。2.2 MAT1AB的启动与退出与常规的应用软件相同,MAT1AB的启动也有多种方式,首先常用的方法就是双击桌面的MAT1AB图标,也能够在开始菜单的程序选项中选择MAT1AB组件中的快捷方式,当然也能够在MAT1AB的安装路径的子目录中选择可执行文件“MAT1AB.exe”。启动MAT1AB后,将打开一个MAT1AB的欢迎界面,随后打开MAT1AB的桌面系统(DeSktOP)如图2/所示。34 MAT1AB的开发环境MAT1AB的开发环境就是
7、在使用MAT1AB的过程中可激活的,同时为用户使用提供支持的集成系统。这里介绍几个比较重要的如:桌面平台系统、帮助系统与数据交换系统。4.1 MAT1AB桌面平台桌面平台是各桌面组件的展示平台,默认设置情况下的桌面平台包含6个窗口,具体如下:4.1.1 MAT1AB主窗口MAT1AB6比早期版本增加了一个主窗口。该窗口不能进行任何计算任务的操作,只用来进行一些整体的环境参数的设置。4.1.2 命令窗口(COmmandWindoW)命令窗口是对MAT1AB进行操作的要紧载体,默认的情况下,启动MAT1AB时就会打开命令窗口,显示形式如图11所示。通常来说,MAT1AB的所有函数与命令都能够在命令
8、窗口中执行。在MAT1AB命令窗口中,命令的实现不仅能够由菜单操作来实现,也能够由命令行操作来执行,下面就全面介绍MA1TAB命令行操作。实际上,掌握MA1AB命令行操作是走入MAT1AB世界的第一步,命令行操作实现了对程序设计而言简单而又重要的人机交互,通过对命令行操作,避免了编程序的烦恼,表达了MAT1AB所特有的灵活性。比如:%在命令窗口中输入sin(pi5),然后单击回车键,则会得到该表达式的值sin(pi5)ans=0.5878由例能够看出,为求得表达式的值,只需按照MA1AB语言规则将表达式输入即可,结果会自动返回,而不必像其他的程序设计语言那样,编制冗长的程序来执行。当需要处理相
9、当繁琐的计算时,可能在一行之内无法写完表达式,能够换行表示,如今需要使用续行符“”否则MAT1AB将只计算一行的值,而不理会该行是否已输入完毕。比如:Sin(I9*pi)+sin(29*pi)+sin(39*pi)+sin(49*pi)+sin(59*pi)+sin(69*pi)+sin(79*pi)+sin(89*pi)+sin(99*pi)+ans=5.6713使用续行符之后MAT1AB会自动将前一行保留而不加以计算,并与下一行衔接,等待完整输入后再计算整个输入的结果。在MAT1AB命令行操作中,有一些键盘按键能够提供特殊而方便的编辑操作。比如:“t”可用于调出前一个命令行I”可调出后一个
10、命令行,避免了重新输入的烦恼。当然下面马上讲到的历史窗口也具有此功能。4.1.3 历史窗口(COmmandHiStOry)历史命令窗口是MAT1AB6新增添的一个用户界面窗口,默认设置下历史命令窗口会保留自安装时起所有命令的历史记录,并标明使用时间,以方便使用者的查询。而且双击某一行命令,即在命令窗口中执行该命令。4.1.4 发行说明书窗口(1aUnChPad)发行说明书窗口是MAT1AB6所特有的,用来说明用户所拥有的MathWorkS公司产品的工具包、演示与帮助信息。当选中该窗口中的某个组件之后,能够打开相应的窗口工具包。4.1.5 当前目录窗口(CUrrentDireCtory)在当前目
11、录窗口中可显示或者改变当前目录,还能够显示当前目录下的文件,包含文件名、文件类型、最后修改时间与该文件的说明信息等并提供搜索功能。4.1.6 工作空间管理窗口(WOrkSPaCe)工作空间管理窗口是MAT1AB的重要构成部分。在工作空间管理窗口中将显示所有目前储存在内存中的MAT1AB变量的变量名、数据结构、字节数与类型,而不一致的变量类型分别对应不一致的变量名图标。4.2 MAT1AB帮助系统完善的帮助系统是任何应用软件必要的构成部分。MAT1AB提供了相当丰富的帮助信息,同时也提供了获得帮助的方法。首先,能够通过桌面平台的【He1p】菜单来获得帮助,也能够通过工具栏的帮助选项获得帮助。此外
12、,MAT1AB也提供了在命令窗口中的获得帮助的多种方法,在命令窗口中获得MAT1AB帮助的命令及说明列于表3-1中。其调用格式为:命令+指定参数表3T命令说明doc在帮助浏览器中显示指定函数的参考信息he1p在命令窗口中显示M文件帮助he1pbrowser打开帮助浏览器,无参数he1pwin打开帮助浏览器,同时见初始界面置于MAT1AB函数的M文件帮助信息Iookfor在命令窗口中显示具有指定参数特征函数的M文件帮助web显示指定的网络页面,默认为MAT1AB帮助浏览器比如:he1psinSINSineSIN(X)isthesineofthee1ementsofXOver1oadedmetho
13、dsHe1psym/sin.m另外也能够通过在组件平台中调用演示模型(demo)来获得特殊帮助。4.3 数据交换系统MAT1AB提供了多种方法将数据从磁盘或者剪贴板中读入MAT1AB工作空间。具体的读写方法可根据用户的喜好与数据的类型来选择。这里要紧介绍文本数据的读入。关于文本数据(ASCn)而言,最简单的读入方法就是通过MAT1AB的数据输入向导(ImPOrtWiZard),也能够通过MAT1AB函数实现数据读入。比如,关于文本文件test.txt:students9scoresEng1ishChineseMathmaticsWang9998100Zhang809097Zhao776587下
14、面通过上述两种方法将该文件数据读入MAT1AB工作空间,先介绍MAT1AB数据交换系统对文本数据的识别。如今文件的前几行(此处为“studentsscores)将被识别为文件头,文件头能够为一行或者几行,也能够识别出数据的列头(此处为:“Eng1ish、“Chinese、与Mathmatics)与行头(此处为wang”、“1i”、“zhang”与“zhao”),其余的为可分断数据(此处为“99”、“98”、与“100”等)。首先是通过数据输入向导编辑器读入数据,通过桌面平台上的【Fi1e】菜单中的ImportData选项打开输入向导编辑器,按向导提示进行操作完成整个文本数据的输入,则用户能够在
15、MAT1AB开发环境中使用该文本数据。比如:whosNameSizeBytesC1assData4396doub1earrayGrandtota1is12e1ementsusing96bytesDataData=98100i.8970809097776587whosv用于显示当前MAT1AB工作空间的变量,而在命令窗口中输入data后,将显示该数据。在命令窗口或者M文件中调用相应的函数也能够实现数据的读入。比如:a,b,c,d=textread(text.txt,4%s%s%s%shead1ines,2)(读者可亲自上机看结果)4MAT1AB数值计算功能MAT1AB强大的数值计算功能使其在诸多数学计算软件中傲视群雄,是MAT1AB软件的基础。本节将简要介绍MAT1AB的数据类型、矩阵的建立及运算。4.1 MAT1AB数据类型MAT1AB的数据类型要紧包含:数字、字符串、矩阵、单元型数据及结构型数据等,限于篇幅我们将重点介绍其中几个常用类型。4.1.1 变量与常量变量是任何程序设计语言的基本要素之一,MAT1AB语言当然也不例外。与常规的程序设计语言不一致的