1(II)仿真软件MATLAB--基本操作.

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

2020/1/1511.2MATLAB的基本操作1.2.1MATLAB语言的结构1.2.2MATLAB的磁盘文件1.2.3MATLAB的库函数1.2.4外部程序的调用1.2.5输入与输出函数1.2.6数值显示格式2020/1/1521.2.1MATLAB语言的结构MATLAB命令窗口就是MATLAB语言的工作空间,因为各种功能的执行必须在此窗口下才能实现。在这种环境下输入的MATLAB语句称为窗口命令,就是在上述环境下输入的MATLAB语句,并直接执行它们完成相应的运算及绘图等。2020/1/153赋值语句MATLAB的赋值语句有两种使用格式:(1)变量=表达式将右边的表达式的值赋给左边的变量;当一次返回多个结果时,左边的变量名用[]括起来,并且每个变量之间用逗号分开其中表达式是用运算符将有关运算量(字符、函数、变量名)连接起来的式子,其结果是一个矩阵(2)表达式将表达式的值赋给MATLAB的预定义变量ans。2020/1/154变量变量无须事先定义,一个变量以其名称在语句命令中第一次出现而定义运算表达式不允许有未定义的变量;不需要预先定义变量的类型,它会自动生成变量,并根据变量的操作确定其类型;变量的命名规则:区分大小写,以英文字母开始,不能使用空格和标点,长度不能超过31位,某些常数也可以作为变量使用,如i;2020/1/155常量已预先定义其数值的变量,默认的常量名称说明pi圆周率INF(inf)无穷大NaN(nan)代表不定值(即1/0)realmax最大的正实数realmin最小的正实数eps浮点数的相对误差i(j)虚数单位nargin函数实际输入参数个数nargout函数实际输出参数个数ANS(ans)默认变量名,以应答最近一次操作运算结果2020/1/156在MATLAB命令窗口输入命令:x=1+2i;y=3-sqrt(17);z=(cos(abs(x+y))-sin(78*pi/180))/(x+abs(y))其中pi和i都是MATLAB预先定义的变量,分别代表代表圆周率π和虚数单位。输出结果是:z=-0.3488+0.3286i例计算表达式的值,并显示计算结果。2020/1/157内存变量文件MATLAB工作空间中的变量在退出MATLAB时会丢失。用MAT文件可以把当前MATLAB工作空间中的一些有用变量长久地保留下来,扩展名是.mat。MAT文件的生成和装入由save和load命令来完成。常用格式为:save文件名[变量名表][-append][-ascii]load文件名[变量名表][-ascii]2020/1/158注意!不能使用逗号,不同变量之间只能用空格来分隔文件名会自动地使用扩展名.mat例将变量a,b,c保存到mydatSavemydateabc若要按照ASCII码的格式来存储数据,则要加上参数-ascii若要获得高精度数据用-ascii-double2020/1/159who和whos这两个命令用于显示在MATLAB工作空间中已经驻留的变量名清单who命令只显示出驻留变量的名称,whos在给出变量名的同时,还给出它们的大小、所占字节数及数据类型等信息clear命令用于删除MATLAB工作空间中的变量clear%清除内存中的全部变量Cleara%清除内存中的变量aloadsafx%把saf.mat文件中的x变量装入内存who%检查内存中有什么变量2020/1/1510内存变量的删除与修改MATLAB工作空间窗口专门用于内存变量的管理。在工作空间窗口中可以显示所有内存变量的属性。当选中某些变量后,再单击Delete按钮,就能删除这些变量。当选中某些变量后,再单击Open按钮,将进入变量编辑器。通过变量编辑器可以直接观察变量中的具体元素,也可修改变量中的具体元素。2020/1/1511数据的存取%例1-1:数据的存取。x=[1,2]%输入数据mkdir('c:\','my_dir');%在C盘上创建目录my_dircdc:\my_dir%使c:\my_dir成为当前目录savesafx%选择内存中的x变量保存为saf.mat文件dir%显示目录上的文件2020/1/15121.2.2MATLAB的磁盘文件文本文件,全局变量例:求函数在x=-4处的值建立文本文件myfile.m%myfile.m%Thisisanm-fileforcalculatessqrt(abs(x))+x.^3x1=abs(x)x2=sqrt(x1)+x.^3y=x23xxy2020/1/1513M文件仅靠一条一条地输入语句,很难实现复杂功能,为了实现诸如循环、条件、分支等功能,MATLAB利用了m文件,m文件是由一系列的MATLAB语句组成的MATLAB可以认为是一种解释性语言,用户可在MATLAB工作环境下一条一条地键入命令,也可以直接键入用MATLAB语言编写的m文件名,或者结合起来使用MATLAB语言=窗口命令+m文件2020/1/1514函数名含义函数名含义abs(x)数的绝对值或向量的长度rat(x)实数x化为分数表示sqrt(x)开平方rats(x)实数x化为多项分数展开angle(z)复数z的相角rem(x,y)x除以y的余数real(z)复数z的实部gcd(x,y)最大公约数image(z)复数z的虚部lcm(x,y)最小公倍数conj(z)复数z的共轭复数log10(x)10为底的对数round(x)四舍五入至最近整数log2(x)2为底的对数fix(x)无论正负,舍去正小数至最近整数log(x)自然对数,e为底floor(x)地板函数,舍去正小数至最近整数pow2(x)2的指数ceil(x)天花板函数,加入正小数至最近整数exp(x)自然指数sign(x)符号函数1.2.3MATLAB的库函数2020/1/1515常用三角函数sin(x)正弦函数sinh(x)超越正弦函数cos(x)余弦函数cosh(x)超越余弦函数tan(x)正切函数tanh(x)超越正切函数asin(x)反正弦函数asinh(x)反超越正弦函数acos(x)反余弦函数acosh(x)反超越余弦函数atan(x)反正切函数atanh(x)反超越正切函数atan2(x,y)四象限的反正切函数2020/1/1516常用向量运算函数min(x)向量x的元素的最小数norm(x)向量x的欧氏长度max(x)向量x的元素的最大数sum(x)向量x的元素总合mean(x)向量x的元素的平均值prod(x)向量x的元素总乘积median(x)向量x的元素的中位数cumsum(x)向量x的累计元素总合std(x)向量x的元素的标准差cumprod(x)向量x的累计元素总乘积diff(x)向量x的相邻元素的差dot(x,y)向量x和y的内积sort(x)对向量x的元素排序cross(x,y)向量x和y的外积length(x)向量x的元素个数2020/1/15171.2.4外部程序调用允许在命令窗口中调用可执行文件,方法是在提示符下键入!后面直接跟文件名即可。也可以采用此方法来使用DOS命令,如!Copywhat列出当前目录下所有的m文件typemyfile在命令窗口显示文件的内容dir列出当前目录下所有的文件deletemyfile删除文件ls同上cdpath进入目录2020/1/15181.2.5输入与输出函数输入函数变量名=input(提示信息,选项)例:A=input(‘EntermatrixA=’);输出函数disp(变量名)例:s=‘HelloWorld’;disp(s)文件打开函数文件名柄=fopen(文件名,文件类型)例:myf=fopen(‘myfile.m’,’r’);r表示只读,a表示可添加2020/1/1519fread()或fscanf()可从中读取数据,fclose可关闭文件Int2str()将整形数据转换成字符串形式。例:cstr=int2str(n)还有num2str()给绘图的图形加标题title([‘’])2020/1/15201.2.6变量的显示MATLAB语句执行的结果可以在屏幕上显示,同时赋值给指定的变量或ans;显示的格式由format命令控制;MATLAB用十进制数表示一个常数,具体可采用日常记数法和科学记数法两种表示方法。在一般情况下,MATLAB内部每一个数据元素都是用双精度数来表示和存储的。数据输出时用户可以用format命令设置或改变数据输出格式。format命令的格式为:format格式符其中格式符决定数据的输出格式2020/1/1521MATLAB的数据显示格式格式含义format(short)短格式(5位定点数)formatlong长格式(15位定点数)formatshorte短格式e方式formatlonge长格式e方式formatbank2位十进制formathex十六进制格式2020/1/15221.3MATLAB的矩阵运算标量,1*1矩阵;矢量,n*1矩阵;多项式,系数矩阵确定;数组,输入形式和书写方法和矩阵是相同的;数组的运算,对应元素的运算2020/1/15231.3.1矩阵的实现矩阵的元素在‘[]’中;同行之间元素用空格或逗号隔开;行与行之间用分号或回车符;对于较大的矩阵,可以用回车键代替分号,对同一行的内容,也可用续行符号(…)把一行的内容分两行来输入;尺寸不必预先定义;矩阵元素可以是数值,变量,表达式函数。2020/1/1524(1)简单矩阵的输入最简单的建立矩阵的方法是从键盘直接输入矩阵的元素。具体方法如下:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔。A=[123;345;342]y=[sin(pi/3),cos(pi/6);log(20),exp(2)]用size()函数可以测取一个矩阵的维数,向量用length(),对矩阵用length()意max(size())2020/1/1525【例1】已知矩阵A和C分别为:在MATLAB中可以采用下面的指令来表示:A=[1,2,3;4,5,6]C=[4;5;6]654321A654C2020/1/1526【例2】如果要给变量A赋矩阵为:可以在MATLAB的命令窗口中输入:A=[1,2,3;4,5,6;7,8,9]显示结果为:A=123456789987654321A2020/1/1527利用M文件建立矩阵对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。例利用M文件建立MYMAT矩阵。(1)启动有关编辑程序或MATLAB文本编辑器,并输入待建矩阵:(2)把输入的内容以纯文本方式存盘(设文件名为mymatrix.m)。(3)在MATLAB命令窗口中输入mymatrix,即运行该M文件,就会自动建立一个名为MYMAT的矩阵,可供以后使用。2020/1/1528利用函数创建矩阵对于一些特殊的矩阵,可以利用内部函数或自定义函数创建矩阵x=0:pi/4:2*pi;y=sin(x)2020/1/1529(2)矩阵的元素允许把矩阵作为元素来建立新的矩阵;C=[A;[101112]]允许对矩阵的单个元素进行赋值和操作;A(2,3)=10如果给出的行数或列数大于原矩阵的范围,则自动扩展原矩阵,并将未赋值的元素置为0;A(4,5)=212020/1/1530A(m,n):提取第m行,第n列元素A(:,n):提取第n列元素A(m,:):提取第m行元素A(m1:m2,n1:n2):提取第m1行到第m2行和第n1列到第n2列的所有元素(提取子块)。A(:):得到一个长列矢量,该矢量的元素按矩阵的列进行排列。矩阵扩展:如果在原矩阵中一个不存在的地址位置上设定一个数(赋值),则该矩阵会自动扩

1 / 47
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功