熟悉MATLAB环境
一、实验目的
(1)熟悉MATLAB的主要操作指令。
(2)学会简单的矩阵输入。
(3)掌握简单的矩阵输入和数据读写。
(4)用MATLAB变成并学会创建函数。
(5)观察离散系统的频率响应。
二、主要仪器设备
硬件:微型计算机
软件:Matlab
三、实验内容(程序及结果图)
1、数组的加、减、乘、除和乘方运算。输入A=[1 2 3 4],B=[3 4 5 6],
求C=A+B,D=A-B,E=A.*B.F=A./B,G=A.^B,并用stem语句画出A,B,C,D,E,F,G。
程序代码:
a=[1 2 3 4];
b=[3 4 5 6];
c=a+b;
d=a-b;
e=a.*b;
f=a./b;
g=a.^b;
n=1:4;
subplot(4,2,1);stem(n,a);
xlabel('n');xlim([0 5]);ylabel('A');
title('20610815李卫')
subplot(4,2,2);stem(n,b);
xlabel('n');xlim([0 5]);ylabel('B');
subplot(4,2,3);stem(n,c);
xlabel('n');xlim([0 5]);ylabel('C');
subplot(4,2,4);stem(n,d);
xlabel('n');xlim([0 5]);ylabel('D');
subplot(4,2,5);stem(n,e);
xlabel('n');xlim([0 5]);ylabel('E');
subplot(4,2,6);stem(n,f);
xlabel('n');xlim([0 5]);ylabel('F');
subplot(4,2,7);stem(n,g);
xlabel('n');xlim([0 5]);ylabel('G');
结果显示:
2、。
程序代码:
N=0:15;
x=0.8.^ N;
figure;subplot(2,1,1);
stem(N,x);xlabel('n');
xlim([0 16]);ylabel('x');
结果显示:
3、
程序代码:
x=3*cos(0.125*pi*N+0.2*pi)+2*sin(0.25*pi*N+0.1*pi);
subplot(3,1,1);
stem(N,xc);
xlabel('n');
xlim([0 16]);
ylabel('x');
结果显示:
4、将3中的扩展为以16为周期的函数
,给出4个周期。
程序代码:
k=0:3;m=0;
for i=1:4
for j=1:16
m=m+1;
n(m)=N(j)+16*k(i);
x16(m)=3*cos(0.125*pi*n(m)+0.2*pi)+2*sin(0.25*pi*n(m)+0.1*pi);
end
end
subplot(3,1,2);stem(n,x16); xlabel('n');ylabel('x16');
结果显示:
5、将3中的扩展为以10为周期的函数
,给出4个周期。
程序代码:
for i=1:3
for m=1:10
x10(i*10+m)=x10(m);
end
end
n=1:40;
subplot(3,1,3);stem(n,x10); xlabel('n');ylabel('x10');
结果显示:
6、求差分方程所描述系统的单位脉冲响应:
程序代码:
N=50;
a=[1 -2];
b=[1 0.1 -0.06];
x=[1 zeros(1,N-1)];
k=0:1:N-1;
y=filter(a,b,x);
stem(k,y);
xlabel('n');ylabel('幅度 ');
结果显示:
四、实验小结
这是信号课的第一次实验,第一次的学习都是较为困难的,自己的电脑没有MATLAB软件,还是在学校实验室完成的,更没有实验经验,不懂如何进行程序设计。面对种种问题,我放平了心态,认认真真地听老师讲课,用心钻研。学会了学习使用MATLAB产生基本信号,绘制信号波形,实现信号的基本运算,为接下来的信号分析和系统设计奠定了基础,收获颇多。我相信,自己的不懈努力,定会使我的实验动手能力和对信号的理解层次能够更上一层楼。