第一章 基础准备及入门(matlab基础教程)(5)

2019-08-31 14:08

在例1.3-10运行后进行的,因此内存中保存着由例1.3-10产生的全部变量。) (1)借助“图标菜单”图示变量

在“工作空间浏览器”中,用鼠标点亮所需图示的变量y ;再选中“图标菜单”的 {plot(y)} ,就可得到图1.7-2所示的图形。

(2)借助“现场弹出菜单”图示变量

在鼠标点亮变量y后,按鼠标右键引出“现场菜单”,再选择现场菜单中的 {plot(y)}菜单项,也可以画出图1.7-2所示的曲线。

图 1.7-2 数组y 表示的曲线

〖说明〗

? 例1.3-10的图1.3-4虽与本例图1.7-2形状相同,但含义却不同。这两张图的纵轴刻度

相同,但横轴刻度不同。前者表现的是函数关系y?f(t);而后者表现的是数组y(k),在此k是数组元素的序号。

? 注意:借助图形表现数据是十分常用的手段。这是由于图形具有表现数据内在联系和

宏观特征的卓越能力。

1.7.2 一

工作空间的管理指令 查询指令who及whos

本节要介绍管理工作空间的三个常用指令:who, clear, pack。

【例1.7-2】在指令窗中运用who, whos查阅MATLAB内存变量。 who, whos在指令窗中运行后的显示结果如下: who

Your variables are:

ans t y

whos

Name Size Bytes Class

ans 1x1 8 double array t 1x201 1608 double array y 1x201 1608 double array

Grand total is 403 elements using 3224 bytes

〖说明〗

? who, whos指令操作对MATLAB的所有版本都适用。

? 本例两个指令的差别仅在于获取内存变量信息的简单和详细程度不同。 ? 读者运行who, whos指令后的变量列表随具体情况而不同。本例的变量列表是在本书作

21

者进行特定操作后产生的。

二 从工作空间中删除变量和函数的指令clear

最常用的几种格式: clear 清除工作空间中的所有变量 clear var1 var2 清除工作空间中的var1和var2变量 clear all 清除工作空间中所有的变量、全局变量、编译过的M函数和

MEX链接。

clear fun1 fun2 清除工作空间中名为fun1和fun2的函数

注意:在第2、4调用格式中,clear 后面的变量名和函数名之间一定要采用“空格”分隔,而不能采用其他符号。

三 整理工作空间内存碎片的指令pack

在MATLAB运行期间,它会自动地为产生的变量分配内存,也会为使用到的M函数分配内存。有时对于容量较大的变量,会出现“Out of memory”的错误。此时,可能使用clear 指令清除若干内存中的变量也无济于事。产生这种问题的一个原因是:MATLAB存放一个变量时,必须使用“连成一片”的内存空间。对于那些被碎片分割得“支离破碎”的内存空间,即便它们的总容量超过待生成变量,也无法使用。在这种情况下,借助pack指令也许能解决问题。

1.7.3 Array Editor数组编辑器

图 1.7-3 工作空间变量数组编辑器

双击工作空间浏览器中的变量图标,将引出如图1.7-3所示的数组编辑器Array Editor。该编辑器可用来查看、编辑数组元素;对数组中指定的行或列进行图示。

点击图标,创建一个名为“unnamed”的变量;在双击该变量引出一个与图1.7-3类似的界面。但数组中,除第一个元素为0外,其余均为“空白”。利用这个界面,读者就可以比较自在地输入较大的数组。 从MATLAB7.0版起,数组编辑器不但能观察和编辑“双精度”数组,而且也能观察和编辑“字符串”数组、“胞元”数组、和“构架”数组。

1.7.4 数据文件和变量的存取

22

一 借助工作空间浏览器产生保存变量的MAT文件

从工作空间浏览器中选择待保存到文件的(一个或多个)变量;再点击图标,或选中弹出菜单中的 {Save As} 项;就可把那些变量保存到(由用户自己命名的)mydata.mat的数据文件。该数据文件默认地存放在“当前目录”上。

二 借助输入向导Import Wizard向工作空间装载变量

点击工作空间浏览器上的图标,或MATLAB Desktop下拉菜单 {File: Import Data};在用户希望的目录上,选中MAT数据文件(如当前目录上的mydata.mat);再双击那文件,引出如图1.7-4所示的“Import Wizard”界面,它展示出文件所包含的变量列表;再从列表中,通过“勾选”,选择待装载变量(如图中的t和y);再点击 [Finish] 按键,变量t和y就被装载到工作空间。

图 1.7-4 输入向导

三 存取数据的操作指令save 和load

利用save , load 指令实现数据文件存取是MATLAB各版都采用的基本操作方法。它的具体使用格式如下。 save FileName 把全部内存变量保存为FileName.mat文件 save FileName v1 v2 把变量v1, v2保存为FileName.mat文件 save FileName v1 v2 -append 把变量v1, v2添加到FileName.mat文件中 save FileName v1 v2 -ascii 把变量v1, v2保存为FileName 8位ASCII文件 save FileName v1 v2 -ascii -double 把变量v1, v2保存为FileName 16位ASCII文件 load FileName 把FileName.mat文件中的全部变量装入内存 load FileName v1 v2 把FileName.mat文件中的v1, v2变量装入内存 load FileName v1 v2 -ascii 把FileName ASCII文件中的v1, v2变量装入内存

〖说明〗

? FileName文件名可以带路径,也可以带扩展名。

? v1 , v2 代表变量名;指定的变量个数不限,只要内存或文件中存在;变量名与变量名

之间必须以空格相分隔。

? -ascii 选项使数据以ASCII格式处理。生成的(不带扩展名的)ASCII文件可以在任何

“文字处理器”中被修改。如果数据较多的变量需要进行修改,那么ASCII格式的数据文件很适用。

? 如果指令后没有-ascii 选项,那么数据以二进制格式处理。生成的数据文件一定带mat

扩展名。

【例1.7-3】数据的存取。(假定内存中已经存在变量X,Y,Z) (1)建立用户目录,并使之成为当前目录,保存数据

mkdir('c:\\','my_dir');

%在C盘上创建目录my_dir

23

cd c:\\my_dir %使c:\\my_dir成为当前目录 save saf X Y Z %选择内存中的X,Y,Z变量保存为saf.mat文件 dir %显示目录上的文件 . .. saf.mat

(2)清空内存,从saf.mat 向内存装载变量Z

clear load saf Z who Your variables are: Z

%清除内存中的全部变量

%把saf.mat文件中的Z变量装入内存 %检查内存中有什么变量

〖说明〗

? 如果一组数据是经过长时间的复杂计算后获得的,那么为避免再次重复计算,常使用

save 加以保存。此后,每当需要,都可通过 load重新获取这组数据。这种处理模式常在实际中被采用。

1.8 Editor/Debugger和脚本编写初步

对于比较简单的问题,对于那些一次性问题,通过指令窗中直接输入一组指令去求解,也许是比较简便、快捷的。但当待解决问题所需的指令较多和所用指令结构较复杂时,或当一组指令通过改变少量参数就可以被反复使用去解决不同问题时,直接在指令窗中输入指令的方法就显得烦琐和笨拙。M脚本文件就是设计来解决这个矛盾的。

1.8.1 Editor/Debugger M文件编辑器简介

图 1.8-1 M文件编辑器示图

默认情况下,M文件编辑器(Editor/Debugger)不随MATLAB的启动而开启,而只有当编写M文件时才启动。M编辑器不仅可以编辑M文件,而且可以对M文件进行交互式调试;M文件编辑器不仅可处理带 .m扩展名的文件,而且可以阅读和编辑其他ASCII码文件。 M文件编辑器的启动方法有以下几种: 点击MATLAB桌面上的 图标,或选中菜单项 {File:New:M-File} ,或直接在指令窗

口输入指令edit,都可以打开空白的M文件编辑器。 点击MATLAB桌面上的图标,或选中菜单项 {File:Open} ,可引出“Open”文件选择

对话框,在填写所选文件名后,再点 [Open] 键,就可引出展示相应文件的M文件编辑

24

器。在指令窗中,把待打开文件名(经一空格)写在edit 后,指令运行后,文件编辑器就打开那文件。

? 用鼠标左键双击当前目录窗中的所需M文件,可直接引出展示相应文件的M文件编辑

器。

1.8.2 M脚本文件编写初步

所谓M脚本文件是指:(1)该文件中的指令形式和前后位置,与解决同一个问题时在指令窗中输入的那组指令没有任何区别。(2)MATLAB在运行这个脚本时,只是简单地从文件中读取那一条条指令,送到MATLAB中去执行。(3)与在指令窗中直接运行指令一样,脚本文件运行产生的变量都是驻留在MATLAB基本工作空间中。(4)文件扩展名是“.m”。

【例1.8-1】编写解算例1.3-10题目的M脚本文件,并运行之。 操作步骤:

在历史指令窗中,找到算例1.3-10的运行指令,并把它们选中点亮。 点击鼠标右键,选中弹出现场菜单中的 {Create M-file} ,便引出如图1.8-1的M文件编辑器。 以exm010801为文件名进行保存,于是就得到了exm010801.m文件。 保证这个文件在MATLAB的当前目录或搜索路径上,在指令窗中运行exm010801就可以得

到如图1.3-4的曲线。

〖说明〗

当使用M文件编辑调试器保存文件时,或当在MATLAB指令窗中运行M文件时,不必写

出文件的扩展名。

在M文件编辑调试器中,可以采用汉字注释,并总可获得正确显示。

1.9 帮助系统及其使用

读者接触、学习MATLAB的起因可能不同,借助MATLAB所想解决的问题也可能不同,从而会产生不同的求助需求。如对于初学者,最急于知道的是:MATLAB的基本用法。又如MATLAB老用户很想知道的是:MATLAB新版本有什么新特点、新功能。再如对科研工作者来说,面对不断变化的实际问题,常常产生两类困惑:知道具体指令,但不知道该怎么用;或想解某个具体问题,不知道MATLAB有哪些指令可用。

MATLAB作为一个优秀的科学计算软件,其帮助系统考虑了不同用户的不同需求,构成了一个比较完备的帮助体系。并且,这种帮助体系随MATLAB版本的重大升级,其完备性和友善性都会有较大的进步。

作者在此建议:不管以前是否使用过MATLAB,任何用户都应尽快了解MATLAB的帮助系统,掌握各种获取帮助信息的方法。只有这样,用户才可能较好地运用MATLAB资源,快捷、可靠、有效地独立解决自己面临的各种问题。

1.9.1

子系统 名称 指令窗帮助子系统 帮助 导航系统 六大子系统构成的帮助体系

表1.9-1 MATLAB的帮助体系 特 点 资 源 所有M文件的帮助注释内容;包含在M文件之中 位于matla\\help目录下; HTML和XML文件,物理上独立于M文件 位于matlab\\toolbox下各分类子目录的demos子目录;专门编写HTML和演示M文件 文本形式;最可信、最原始;不适于系统阅读 HTML形式;系统叙述MATLAB规则,一般用法;适于系统阅读和交叉查阅 典型算例HTML和GUI 交互界面; 演示系统 以算例为载体分类介绍MATLAB使用方法

25


第一章 基础准备及入门(matlab基础教程)(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高低压开关

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: