实验二 离散时间系统的时域分析
den=[2 -3 0.1];
ic=[0 0]; %设置零初始条件
y1=filter(num,den,x1,ic); %计算输入为x1(n)时的输出y1(n) y2=filter(num,den,x2,ic); %计算输入为x2(n)时的输出y2(n) y=filter(num,den,x,ic); %计算输入为x (n)时的输出y(n) yt= a*y1+b*y2; %画出输出信号 subplot(2,1,1) stem(n,y);
ylabel(‘振幅’);
title(‘加权输入a*x1+b*x2的输出’); subplot(2,1,2) stem(n,yt); ylabel(‘振幅’);
title(‘加权输出a*y1+b*y2’);
(一)、线性和非线性系统
对线性离散时间系统,若y1(n)和y2(n)分别是输入序列x1(n)和x2(n)的响应,则输入x(n)?ax1(n)?bx2(n)的输出响应为y(n)?ay1(n)?by2(n),即符合叠加性,其中对任意常量a和b以及任意输入x1(n)和x2(n)都成立,否则为非线性系统。 (二)、时不变系统和时变系统
对离散时不变系统,若y1(n)是x1(n)的响应,则输入x(n)=x1(n-n0)的输出响应为y(n)=y1(n-n0),式中n0是任意整数。该输入输出关系,对任意输入序列及其相应的输出成立,若对至少一个输入序列及其相应的输出序列不成立,则系统称之为时变的。 (三)、线性卷积
假设待卷积的两个序列为有限长序列,卷积运算符在MATLAB中可 命令conv实现。例如,可以把系统的冲激响应与给定的有限长输入序列进行卷积,得到有限长冲激响应系统的输出序列。下面的MATLAB程序实现了该方法。 例2.2
clf;
7
实验二 离散时间系统的时域分析
h=[3 2 1 -2 1 0 -4 0 3];%冲激 x=[1 -2 3 -4 3 2 1 ]; %输入序列 y=conv(h,x); n=0:14; stem(n,y);
xlabel(‘时间序号n’);ylabel(‘振幅’); title(‘用卷积得到的输出’);grid;
三、实验内容与步骤
1. 假定一因果系统为
y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2)
用MATLAB程序仿真该系统,输入三个不同的输入序列:
??0.1n),x2(n)?cos(2??0.4n),x?2x1(n)?3x2(n) x1(n)?cos2(计算并并显示相应的输出y1(n), y2(n)和y(n)。
2. 用MATLAB程序仿真步骤1给出的系统,对两个不同的输入序列x(n)和x(n-10),计算并显示相应的输出序列y3(n)和y4(n)。
3.用MATLAB程序仿真计算下列两个有限长序列的卷积和并显示图形。
x1(n)??(n)?3?(n?1)?2?(n?2) x2(n)?u(n)?u(n?3)
四、实验仪器设备
计算机,MATLAB软件
五、实验要求
给出理论计算结果和程序计算结果并讨论。
六、思考题
1. 讨论实验程序1,对由加权输入得到的y(n)与在相同权系数下输出y1(n)和y2(n)相加得到的yt(n)进行比较,这两个序列是否相等?该系统是线性系统吗? 2. 讨论实验程序2,比较输出序列y3(n)和y4(n),这两个序列之间有什么关系?该系统是时不变系统吗?
3. 讨论实验程序3的理论计算结果和程序计算结果是否一致。
8
实验三 离散时间信号的DTFT
实验三 离散时间信号的DTFT
一、实验目的
1. 运用MATLAB计算离散时间系统的频率响应。 2. 运用MATLAB验证离散时间傅立叶变换的性质。
二、实验原理
(一)、计算离散时间系统的DTFT
NNk 已知一个离散时间系统
?ak?0y(n?k)??bk?0kx(n?k),可以用MATLAB函数
frequz非常方便地在给定的L个离散频率点???l处进行计算。由于H(ej?)是ω的连续函数,需要尽可能大地选取L的值(因为严格说,在MATLAB中不使用symbolic工具箱是不能分析模拟信号的,但是当采样时间间隔充分小的时候,可产生平滑的图形),以使得命令plot产生的图形和真实离散时间傅立叶变换的图形尽可能一致。在MATLAB中,freqz计算出序列{b0,b1,?,bM}和{a0,a1,?,aN}的
L点离散傅立叶变换,然后对其离散傅立叶变换值相除得到
j?lH(e),l?1,2,?,L。为了更加方便快速地运算,应将L的值选为2的幂,如256
或者512。
例3.1 运用MATLAB画出以下系统的频率响应。 y(n)-0.6y(n-1)=2x(n)+x(n-1) 程序:
clf;
w=-4*pi:8*pi/511:4*pi; num=[2 1];den=[1 -0.6]; h=freqz(num,den,w); subplot(2,1,1) plot(w/pi,real(h));grid title(‘H(e^{j\\omega}的实部’)) xlabel(‘\\omega/ \\pi’);
9
实验三 离散时间信号的DTFT
ylabel(‘振幅’);
subplot(2,1,1)
plot(w/pi,imag(h));grid title(‘H(e^{j\\omega}的虚部’)) xlabel(‘\\omega/ \\pi’); ylabel(‘振幅’);
(二)、离散时间傅立叶变换DTFT的性质。 1.时移与频移
设 X(ej?)?FT[x(n)], 那么
FT[x(n?n0)]?e?j?n0X(ej?) (2.2.6)
FT[ej?0nx(n)]?X(ej(???0)) (2.2.7)
2.时域卷积定理
如果 y(n)?x(n)?h(n), 那么
Y(ej?
)?X(ej?)?H(ej?)
三、实验内容与步骤
1. 已知因果线性时不变离散时间系统
y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2) 运用MATLAB画出该系统的频率响应。
2.运行下面程序并显示它,验证离散时间傅立叶变换DTFT的时移性。
clf;
w=-pi:2*pi/255: pi;wo=0.4*pi;D=10; num=[1 2 3 4 5 6 7 8 9]; h1=freqz(num,1,w);
h2=freqz([zeros(1,D) num],1,w); subplot(2,2,1)
10
实验三 离散时间信号的DTFT
plot(w/pi,abs(h1));grid title(‘原序列的幅度谱’) subplot(2,2,2)
plot(w/pi,abs(h2));grid title(‘时移后序列的幅度谱’) subplot(2,2,3)
plot(w/pi,angle (h1));grid title(‘原序列的相位谱’) subplot(2,2,4)
plot(w/pi, angle (h2));grid title(‘时移后序列的相位谱’)
3. 运行下面程序并显示它,验证离散时间傅立叶变换DTFT的频移性。
clf;
w=-pi:2*pi/255: pi;wo=0.4*pi;D=10;
num1=[1 3 5 7 9 11 13 15 17];L=length(num1); h1=freqz(num1,1,w);n=0:L-1; num2=exp(wo*i*n).*num1; h2=freqz(num2,1,w); subplot(2,2,1)
plot(w/pi,abs(h1));grid title(‘原序列的幅度谱’) subplot(2,2,2)
plot(w/pi,abs(h2));grid title(‘频移后序列的幅度谱’) subplot(2,2,3)
plot(w/pi,angle (h1));grid title(‘原序列的相位谱’) subplot(2,2,4)
plot(w/pi, angle (h2));grid title(‘频移后序列的相位谱’)
11
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新幼儿教育数字信号处理实验指导书(审) (3)全文阅读和word下载服务。
相关推荐: