XXXX大学实验报告
学生姓名 _xxx_ 学 号_xxxxxxxxxxx_
年级班级_201x级xxx班_ 实验项目_序列的绘图_
实验时间_201x-xx-xx_
一、实验目的:
了解MATLAB的实验环境;
充分熟悉subplot函数的使用;
能够画出单位脉冲序列及单位阶跃序列的图形;
能够画出矩形序列及正弦序列的图形。
二、实验步骤:
打开MATLAB,了解三个区域(工作区、命令区、历史记录区)的作用;
用help查找subplot函数的使用情况;
编辑并生成函数impseq.m(单位脉冲序列)
function [x,n] = impseq(n0,n1,n2)
% 产生 x(n) = delta(n-n0); n1 <= n,n0 <= n2
% [x,n] = impseq(n0,n1,n2)
if ((n0 < n1) | (n0 > n2) | (n1 > n2))
error('参数必须满足 n1 <= n0 <= n2')
end
n = [n1:n2];
%x = [zeros(1,(n0-n1)), 1, zeros(1,(n2-n0))];
x = [(n-n0) == 0];
以及函数stepseq.m(单位阶跃序列)
function [x,n] = stepseq(n0,n1,n2)
% 产生 x(n) = u(n-n0); n1 <= n,n0 <= n2
% [x,n] = stepseq(n0,n1,n2)
if ((n0 < n1) | (n0 > n2) | (n1 > n2))
error('参数必须满足 n1 <= n0 <= n2')
end
n = [n1:n2];
%x = [zeros(1,(n0-n1)), ones(1,(n2-n0+1))];
x = [(n-n0) >= 0];
主函数test1.m
n=[-5:5];
x1=impseq(0,-5,5);
subplot(2,2,1);stem(n,x1);title('单位脉冲序列')
xlabel('n');ylabel('x(n)');
n=[0:10];
x2=stepseq(0,0,10);
subplot(2,2,2);stem(n,x2);title('单位阶跃序列');
xlabel('n');ylabel('x(n)');
或主函数test2.m
n=[0:10];
x3=stepseq(0,0,10)-stepseq(5,0,10);
subplot(2,2,3);stem(n,x3);title('矩形序列');
xlabel('n');ylabel('x(n)');
n=[0:20];
x4=sin(0.3*n);
subplot(2,2,4);stem(n,x4);title('正弦序列');
xlabel('n');
ylabel('x(n)');
先运行test1.m, 再运行test2.m, 并改变坐标尺度n的范围,分别画出另外两种坐标尺度的图形。
画出δ(n+5),u(n-3),u(n+3)-u(n-2),sin(0.6*n)的图形。
三、实验结果
步骤4内容:
运行test1.m与test2.m后的结果
②改变坐标尺度n的范围后的图形
1.此为改变了横轴x坐标尺度的图形
2.此为改变了纵轴y坐标尺度的图形
③δ(n+5),u(n-3),u(n+3)-u(n-2),sin(0.6*n)的图形
四、实验体会
通过这节课的学习,我对MATLAB7有了一定的了解,并且可以完成一些简单的实验操作,切实感受到了MATLAB7的强大功能,希望自己可以再接再厉,在老师的教导下完成接下来的任务,并能更加熟练地运用这个软件解决其他的学习问题。
五、思考题
有几种方法可以改变坐标尺度?
答:有两种方法。
通过改变主函数中n=[a,b]语句中的a,b值改变坐标尺度
运行主函数后,在弹出的Figure图形显示窗口,通过点击“Edit”→“Axes Properties”→选中一个图形→点击X Axis或Y Axis或Z Axis分别对各坐标尺度进行修改。
相关热词搜索: 序列 绘图 实验 报告 数字信号处理