MATLAB复习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB复习总结
“》”为MATLAB命令提示符,闪烁的光标“|”为输入字符提示符
在命令行中输入demo命令,将启动MATLAB的演示程序
MATLAB语句的一般格式:变量名=表达式
在调用函数时,MATLAB允许一次返回多个结果,这时等号左边的变量名需用“【】”括起来
MATLAB中变量名必须以字母开头,之后可以是任何字母、数字或者下划线(不能超过19个字符)但变量名中不能含有标点符号,变量名区分字母大小写,同意字母的大写和小写被视为两个不同的变量
MATLAB 演草纸
MATLAB 常用命令:
空间管理命令
Who命令:查看空间中存在那些变量名
Whos命令:查看变量名的详细信息(见P书5)
Clear命令:删除其中一些不再使用的变量名如clear a b
Save命令:将工作空间中的变量名保存到文件中
格式:save 文件名变量列表表达式其它选项
例如:save mydat a b c
Load命令:从文件中把变量调出并从新装入到MATLAB的工作空间中去,是save 命令相反的过程
Clc命令:清除屏幕(不是清除内存中的变量)
Exist命令:查看空间中是否存在一个变量如i=exist(‘a’)
i=1 表示当前空间存在此变量
i=2 表示存在一个名为的文件
i=3 表示当前路径下存在一个名为的文件
i=4 表示存在一个名为a..mdl的simulink文件
i=5 表示存在一个名为a()的内部函数
i=6 表示不存在和a相关的文件和变量
数据格式命令
Format命令:用来设置输出数据格式如:Format short(数据参数)
Sym命令:设置数据显示格式,进行格式转换,以达到动态改变数据格式如:sym (变量名,‘参数’)sym(pi,‘d’)ans .
Vap命令:设置数据精度并计算
在线帮组:
Help clc 了解clc的命令功能
Lookfor 查询所有的MATLAB提供的标题或M文件的帮组部分返回结果为包含所指定的关键词。
MATLAB的M文件
文件存在两种形式:文本文件和函数文件
注意:M文件不能以中文汉子命名,同时在文件中除了注释文字外不能出现去
哪全角字符形式。
函数文件:函数文件的功能是建立一个函数,且这个文件与库函数一样使用,与文本文件不同,函数文件允许多个输入参数和输出参数。
基本格式:function(f1,f2,f3,…)=fun(x,y,z,…)
返回的形式输出参数形式输入参数
Fun为函数名
输入输出函数
Input函数:变量名=input(提示信息,s选项)例:A=input(‘enter matrix A=’)Disp函数:命令窗口输出函数disp(变量名)
Fopen函数:打开文件函数格式:文件名柄=fopen(文件名,文件类型)
如果文件名不存在,则返回的句柄值为-1.
其他相关函数:int2str()函数可以将一个整型数据转换成字符串形式函数调用格式:estr=int2str(n)例子:num=15
Disp(【“the value of num is’;int2str(num),’!
ok】)
显示结果:the value of num is 15 !ok
Num2str()可以将给出的实行数据转换成字符串的表达式,最终可以将字符串
输出
MATLAB矩阵运算
在MATLAB语言中不必描述矩阵维数和类型,矩阵的维数和类型是由输入的格式和内容来决定的。
矩阵可以用一下的方式来赋值:
1.直接列出元素的形式
2.通过语句和函数产生
3.建立在文件中
4.从外部的数据文件中装入
没行内的元素用空格或逗号隔开,行与行的内容用分号隔开,对于较大的矩阵中可以用enter键替代分号同一行的内容也可以用续行符号(…),把一行的内容分两行来输入。
用size()函数可以测取一个矩阵的维数调用格式:【m,n】=size(A)
A为测取的矩阵名,m,n为矩阵的行和列
用length(x)=n 返回值n为向量x的元素个数
如果对矩阵A用length(A)函数测试,则返回矩阵行列的最大值
MATLAB允许将矩阵作为元素来建立新的矩阵。
例如:C=[A;[10,11,12]]
A(2,3)=100 赋值
矩阵的元素还可以用下列语句来产生:S1:S2:S3
S1: 起始值S2:步距S3:终止值(S2可省默认为1)
A(:)在赋值语句的右端表示将A的所有元素按一个长向量中展开成串
特殊矩阵的实现:
Eye():单位矩阵
A= Eye(n)产生一个n阶的矩阵
A= Eye(size(B))产生一个与B同阶的矩阵
A= Eye(n,m)产生一个与m*n阶的矩阵
Zeros()零矩阵函数
A= Zeros(n,m)产生一个与m*n阶的零矩阵
A= Zeros(n)产生一个与n*n阶的零矩阵
A= Zeros(size(B)n)产生一个与B同阶的零矩阵
Ones()矩阵函数
Rand()随机元素矩阵,各元素随机产生
Diag()对角矩阵函数例子:V=[ 1,2,3,4];A =Diag(V)
A=1 0 0 0
0 2 0 0
0 0 3 0
0 0 0 4
Company()伴随矩阵(见书P19)
Triu()上三角矩阵函数
Tril()下三角矩阵函数
矩阵运算
矩阵转置运算符号用“’” 1 2 3 1 4
4 5 6 转置后 2 5
3 6
矩阵加减:
矩阵只有同阶方可加减运算,标量可以和矩阵进行加减运算,但对应每个元素进行加减运算例如:
A+1 各元素均加1
矩阵乘法:
用*符号当两个矩阵中前一个的列数等于后一个的行数时,可以进行乘法运算矩阵除法:运算符号\和/,分别表示左除和右除(见书P21)
矩阵乘方:符号^
矩阵翻转:
B=fliplr(A)将命令进行左右翻转
B=flipud(A)将命令进行上下翻转
B=rot(A)将命令进行旋转90度
矩阵的超越函数:
要求运算的矩阵必须是方正
Exp()sqrt()sin()cos()等
关系运算:比较两个大小相同的矩阵,或比较一个矩阵和一个标量,比较两个元素的大小时,结果是1表示真,0表示假。
逻辑运算:&与| 或~非(详见书P23)
向量运算:
向量乘法运算:符号.*
X=[1 2 3];y=[4 5 6] ;X.*y=【4 10 18】
X的平方用X .*X而不是X*X (点积运算)
向量除法:.\ ./ 一样
向量乘方:符号.^
例如:X=[1 2 3];y=[4 5 6] ;X.^y=[1 32 729]
对矩阵也可以采用.^
MATLAB控制语句
For 基本格式for 循环变量=表达式1:表达式2:表达式3
循环语句组
End
While 基本结构:while(条件式)
循环体条件组
End
特点:执行后在判断条件是否成立,允许嵌套循环
条件转移:if (你懂的)
MATLAB绘图功能
基本绘图函数:plot()
例如:X=0::2*pi;plot(x),‘-g’x,cos(x),‘*r’)(见书P31图)
Tile(题头内容)给出题头
Xlabel()x轴的标记
ylabel()y轴的标记
grid 增加网格
窗口分割:subplot(m,n,k)m行,n列,最多9*9
手动选择新坐标:axis(【xmin,xmax,ymin,ymax】)
清除图形窗口:clg
保存:hold
放大和缩小:zoom
极坐标曲线绘制函数:polar(theat,rho,选项)
绘制x轴为对数标度的图形:semilogx(x,y,选项)
绘制y轴为对数标度的图形:semilogy(x,y,选项)
绘制x,y轴为对数标度的图形:loglog(x,y,选项)
按对数等艰巨的分布来产生一个向量:X=logspace(m,m,z)
10的m次方和10 的n次方表示向量的起点和终点,z位需产生向量点的个数,若忽略,默认值为50.
条形图绘制函数:bar(x,y,选项)【xx,yy】=bar(x,y)
利用鼠标绘制图形命令格式:【x,y,button】=ginput(n)
三维图形:
调用格式:plot3(x,y,选项)
绘制三维表面网格图的函数:mesh(x,y,z,c)c位色彩矩阵
其他关于三维图形的绘制:
绘制三维为表面图形:surf(x,y,z)
绘制带有等高线三维为表面图形:surfc(x,y,z)
绘制带有阴影三维为表面图形:surf1(x,y,z)
等高线图形绘制:coutour(x,y,z)
模块的操作:
选择:
选定单个模块的方法:光标指向待选模块,单击即可
选定多个模块的方法:a,按下shift键的同时,依次单击所需选定的模块。
b,拖曳鼠标,拉出矩形虚线框,将所有待选模块包含在其中,于是矩形里所有模块(包括与连接模块的信号线)均被选中。
复制:
如果需要几个同样的模块,可以右击并拖曳基本模块进行复制。
也可以在选中的所需要的模块后,使用Edit菜单上的Copy和Paste选项或用Ctrl+ C键和Ctrl+V 键进行。
不同模型窗口之间复制方法:
1.在窗口选中模块,将其拖至另一个窗口,释放鼠标。
2.在窗口选中模块,单击复制图标,然后用鼠标单击目标模型窗口中需要复制
的模块的位置,然后单击粘贴图标即可。
同模型窗口内的模块复制:
1.按下鼠标右键,拖动鼠标到合适的位置,释放鼠标即完成。
2.按住Ctrl键,再按下鼠标左键,拖曳鼠标至合适的地方,释放鼠标。
模块的移动:
选中需移动的模块,按下鼠标左键将模块拖至合适的位置即可。
模块的删除:
选中待删除模块,按delete键,单击工具栏上的剪切图标,将选定的内容剪除并存放到剪切板上。
GUI功能及步骤
功能:1.编写一个需多次反复使用的函数,菜单、按钮、文本框作为输入方法。
2.编写函数或开发应用程序供他人使用。
3.创建一个过程、技术或分析方法的交互示例。
步骤:1.分析需要实现的主要功能,确定设计任务。
2.在草稿纸上会出界面草图,并从用户角度反复审核界面,尽力做到界面友好,操作方便。
3.按草纸图的构思,在MATLAB环境下制作图形用户界面,并核对无误。
4.设置选择使用的控件属性,编写界面动态功能的程序,并对程序反复检查核对无误。
5.反复调试修正设计。