MATLAB实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB教程及实训
实
验
报
告
专业:电子信息工程
班级:电信127
姓名:***
学号:************
日期:2014年11月6日
实验一Matlab认识、矩阵输入与矩阵运算实现
一、实验目的
1.了解MATLAB程序设计语言的基本特点,熟悉MATLAB软件的运行环境;
2.掌握变量、函数等有关概念,掌握M文件的创建、保存、打开的方法,初步具备将一般数学问题转化为对应计算机模型处理的能力;
3.掌握常量、变量使用。掌握画图指令。
二、实验基本知识
1.熟悉MATLAB环境
2.掌握MATLAB常用命令
Clc:清除命令窗口中内容 clear:清除工作空间中变量
Help:对所选函数的功能、调用格式及相关函数给出说明
Lookfor:查找具有某种功能的函数但却不知道该函数的准确名称
Who:查询工作空间中的变量信息
三、实验内容
1、新建一个文件夹(自己的名字命名).
2、启动MATLAB,将该文件夹添加到MATLAB路径管理器中。
3、保存,关闭对话框
4、学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明,学习使用指令eye(其它不会用的指令,依照此方法类推)
5、学习使用clc、clear,观察command window、command history和workspace 等窗口的变化结果。
6、初步程序的编写练习,新建M-file,保存(自己设定文件名,例如exerc1、exerc2、 exerc3),学习使用MATLAB的基本运算符、数组寻访指令、标准数组生成函数和数组操作函数。注意:每一次M-file的修改后,都要存盘。
上机练习:
1、输入简单矩阵A=[1,2,3;4,5,6;7,8,9],B=[6,1,35;11,15,2;5,8,25]并计算C=A+B. D=A*B
四、实验总结
1、通过本次实验,我初步学习使用clc、clear指令,观察command window、command history和workspace等窗口的变化结果。明白了两者的区别:Clc:是清除workspace,command window、command history不变化;Clear 清除workspace,command window、command history 不变化。
2、本次实验掌握了一些基本的运算指令,像数组和矩阵的各种运算符号,尤其要注意两者的区别。例如A*B是指内维相同矩阵相乘,而A.*B是指A数组与B数组对应元素的相乘。同时注意矩阵的左乘和右乘。
实验二图形用户界面编辑实践
一、实验目的
1、实现多种绘图方式,掌握各种图形控件的使用。
2、掌握使用不同图形对象的图形用户界面的设计。
3、熟练掌握GUI环境的使用。
4、掌握控件的属性设置。
5、掌握M回调函数的编写。
二、实验基本知识
1、打开GUI界面
在MA TLAB主界面选择菜单“File”——“New”——“GUI”,或直接在命令窗口输入
“Guide”命令都可以打开GUIDE快速开始界面。
2、创建界面
(1)放置控件(2)设置控件属性(3)对象浏览器窗口(4)布局控件
(5)设置Tab顺序编辑器
3、编写程序
(1)slider1滚动条的回调函数(2)打开窗口函数(3)按钮的回调函数
4、创建菜单
(1)设计普通菜单(2)设计弹出式菜单(3)编写回调函数
三、实验内容
1、GUI入门
对于传递函数为的归一化二阶系统,制作一个能绘制该系统单位阶跃响应的图形用户界面。
(1)产生图形窗和轴位框:
clf reset
H=axes('unit','normalized','position',[0,0,1,1],'visible','off');
set(gcf,'currentaxes',H);
str='\fontname{隶书}归一化二阶系统的阶跃响应曲线';
text(0.12,0.93,str,'fontsize',13);
h_fig=get(H,'parent');
set(h_fig,'unit','normalized','position',[0.1,0.2,0.7,0.4]);
h_axes=axes('parent',h_fig,...
'unit','normalized','position',[0.1,0.15,0.55,0.7],...
'xlim',[0 15],'ylim',[0 1.8],'fontsize',8);
图 1 产生坐标轴
(2)在坐标框右侧生成作解释用的“静态文本”和可接受输入的“编辑框”:h_text=uicontrol(h_fig,'style','text',...
'unit','normalized','position',[0.67,0.73,0.25,0.14],...
'horizontal','left','string',{'输入阻尼比系数','zeta ='});
h_edit=uicontrol(h_fig,'style','edit',...
'unit','normalized','position',[0.67,0.59,0.25,0.14],...
'horizontal','left',...
'callback',[...
'z=str2num(get(gcbo,''string''));',...
't=0:0.1:15;',...
'for k=1:length(z);',...
's2=tf(1,[1 2*z(k) 1]); ',...
'y(:,k)=step(s2,t);',...
'plot(t,y(:,k));',...
'if (length(z)>1) ,hold on,end,',...
'end;',...
'hold off,']);