您的位置:首页 > 编程语言 > MATLAB

MATLAB 程式设计与应用 ---Matlab入门教程【三】环境设置

2007-06-26 19:31 741 查看
Matlab入门教程--环境设置
1-5、搜寻路径
在前一节中,test.m所在的目录是d:/mlbook。如果不先进入这个目录,
MATLAB就找不到你要执行的M档案。如果希望MATLAB不论在何处都能执行
test.m,那麽就必须将d:/mlbook加入MATLAB的搜寻路径(Search
path)上。要检视MATLAB的搜寻路径,键入path即可:
path
MATLABPATH
d:/matlab5/toolbox/matlab/general
d:/matlab5/toolbox/matlab/ops
d:/matlab5/toolbox/matlab/lang
d:/matlab5/toolbox/matlab/elmat
d:/matlab5/toolbox/matlab/elfun
d:/matlab5/toolbox/matlab/specfun
d:/matlab5/toolbox/matlab/matfun
d:/matlab5/toolbox/matlab/datafun
d:/matlab5/toolbox/matlab/polyfun
d:/matlab5/toolbox/matlab/funfun
d:/matlab5/toolbox/matlab/sparfun
d:/matlab5/toolbox/matlab/graph2d
d:/matlab5/toolbox/matlab/graph3d
d:/matlab5/toolbox/matlab/specgraph
d:/matlab5/toolbox/matlab/graphics
d:/matlab5/toolbox/matlab/uitools
d:/matlab5/toolbox/matlab/strfun
d:/matlab5/toolbox/matlab/iofun
d:/matlab5/toolbox/matlab/timefun
d:/matlab5/toolbox/matlab/datatypes
d:/matlab5/toolbox/matlab/dde
d:/matlab5/toolbox/matlab/demos
d:/matlab5/toolbox/tour
d:/matlab5/toolbox/simulink/simulink
d:/matlab5/toolbox/simulink/blocks
d:/matlab5/toolbox/simulink/simdemos
d:/matlab5/toolbox/simulink/dee
d:/matlab5/toolbox/local
此搜寻路径会依已安装的工具箱(Toolboxes)不同而有所不同。要查询某
一命令是在搜寻路径的何处,可用which命令:
which expo
d:/matlab5/toolbox/matlab/demos/expo.m
很显然c:/data/mlbook并不在MATLAB的搜寻路径中,因此MATLAB找不到
test.m这个M档案:
which test
c:/data/mlbook/test.m
要将d:/mlbook加入MATLAB的搜寻路径,还是使用path命令:
path(path, 'c:/data/mlbook');
此时d:/mlbook已加入MATLAB搜寻路径(键入path试看看),因此MATLAB已
经"看"得到test.m:
which test
c:/data/mlbook/test.m
现在我们就可以直接键入test,而不必先进入test.m所在的目录。
小提示:如何在其启动MATLAB时,自动设定所需的搜寻路径?
如果在每一次启动MATLAB後,都要设定所需的搜寻路径,将是一件很麻烦
的事。有两种方法,可以使MATLAB启动後,即可载入使用者定义的搜寻路
径:
1.MATLAB的预设搜寻路径是定义在matlabrc.m(在c:/matlab之下,或
是其他安装MATLAB的主目录下),MATLAB每次启动後,即自动执行此档
案。因此你可以直接修改matlabrc.m,以加入新的目录於搜寻路径之中。
1.MATLAB在执行matlabrc.m时,同时也会在预设搜寻路径中寻找
startup.m,若此档案存在,则执行其所含的命令。因此我们可将所有在
MATLAB启动时必须执行的命令(包含更改搜寻路径的命令),放在此档案
中。
每次MATLAB遇到一个命令(例如test)时,其处置程序为:
1.将test视为使用者定义的变数。
2.若test不是使用者定义的变数,将其视为永久常数。
3.若test不是永久常数,检查其是否为目前工作目录下的M档案。
4.若不是,则由搜寻路径寻找是否有test.m的档案。
5.若在搜寻路径中找不到,则MATLAB会发出哔哔声并印出错误讯息。
以下介绍与MATLAB搜寻路径相关的各项命令。
1-6、资料的储存与载入
有些计算旷日废时,那麽我们通常希望能将计算所得的储存在档案中,以
便将来可进行其他处理。MATLAB储存变数的基本命令是save,在不加任何
选项(Options)时,save会将变数以二进制(Binary)的方式储存至副档
名为mat的档案,如下述:
save:将工作空间的所有变数储存到名为matlab.mat的二进制档案。
save filename:将工作空间的所有变数储存到名为filename.mat的
二进制档案。
save filename x y z:将变数x、y、z储存到名为filename.mat的二
进制档案。
以下为使用save命令的一个简例:
who % 列出工作空间的变数
Your variables are:
B h j y
ans i x z
save test B y % 将变数B与y储存至test.mat
dir % 列出现在目录中的档案
. 2plotxy.doc fact.m simulink.doc test.m ~$1basic.doc
.. 3plotxyz.doc first.doc temp.doc test.mat
1basic.doc book.dot go.m template.doc testfile.dat
delete test.mat % 删除test.mat
以二进制的方式储存变数,通常档案会比较小,而且在载入时速度较快,
但是就无法用普通的文书软体(例如pe2或记事本)看到档案内容。若想看
到档案内容,则必
须加上-ascii选项,详见下述:
save filename x -ascii:将变数x以八位数存到名为filename的
ASCII档案。
save filename x -ascii -double:将变数x以十六位数存到名为
filename的ASCII档案。
另一个选项是-tab,可将同一列相邻的数目以定位键(Tab)隔开。
小提示:二进制和ASCII档案的比较
在save命令使用-ascii选项後,会有下列现象:
save命令就不会在档案名称後加上mat的副档名。因此以副档名mat
结尾的档案通常是MATLAB的二进位资料档。
通常只储存一个变数。若在save命令列中加入多个变数,仍可执
行,但所产生的档案则无法以简单的load命令载入。有关load命令的用
法,详见下述。
原有的变数名称消失。因此在将档案以load载入时,会取用档案名
称为变数名称。
对於复数,只能储存其实部,而虚部则会消失。
对於相同的变数,ASCII档案通常比二进制档案大。
由上表可知,若非有特殊需要,我们应该尽量以二进制方式储存资料。
load命令可将档案载入以取得储存之变数:
load
filename:load会寻找名称为filename.mat的档案,并以二进制格式
载入。若找不到filename.mat,则寻找名称为filename的档案,并以ASCII
格式载入。
load filename -ascii:load会寻找名称为filename的档案,并以
ASCII格式载入。
若以ASCII格式载入,则变数名称即为档案名称(但不包含副档名)。若以
二进制载入,则可保留原有的变数名称,如下例:
clear all; % 清除工作空间中的变数
x = 1:10;
save testfile.dat x -ascii % 将x以ASCII格式存至名为testfile.dat的
档案
load testfile.dat % 载入testfile.dat
who % 列出工作空间中的变数

Your variables are:
testfile x
注意在上述过程中,由於是以ASCII格式储存与载入,所以产生了一个与档
案名称相同的变数testfile,此变数的值和原变数x完全相同。
===============================================
1-7、结束MATLAB
有三种方法可以结束MATLAB:
1.键入exit
2.键入quit
3.直接关闭MATLAB的命令视窗(Command window)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: