输出 y[n]50振幅0-500510152025303540由于延时输入 x[n-10]的输出50振幅0-5005101520差值信号125303540振幅0-10510152025时间序号 n303540
D=12;
输出 y[n]50振幅0-500510152025303540由于延时输入 x[n-10]的输出50振幅0-5005101520差值信号125303540振幅0-10510152025时间序号 n303540
该系统是时不变系统,满足y[n-D]=yd[n]。
Q2.15 在非零的初始条件下重做习题Q2.12,该系统是时不变系统吗? 解:设ic = [5 10];
仿真结果如下所示:
输出 y[n]20振幅0-200510152025303540由于延时输入 x[n-10]的输出20振幅0-2005101520差值信号2025303540振幅0-200510152025时间序号 n303540
该仿真结果说明该系统是时变系统。
Q2.17 考虑另一个系统:y[n]=nx[n]+x[n-1],修改程序P2.4,以仿真上面的系统并确定该系统是否为时不变系统。 解:
% 程序 P2_4 clf;
n = 0:40; D = 10;a = 3.0;b = -2;
x = a*cos(2*pi*0.1*n) + b*cos(2*pi*0.4*n); xd = [zeros(1,D) x]; nd=0:length(xd)-1; y=(n.*x)+[0 x(1:40)];
yd=(nd.*xd)+[0 xd(1:length(xd)-1)]; d = y - yd(1+D:41+D); subplot(3,1,1) stem(n,y);
ylabel('振幅');
title('输出 y[n]'); grid; subplot(3,1,2) stem(n,yd(1:41)); ylabel('振幅');
title('由于延时输入 x[n-10]的输出'); grid;
subplot(3,1,3) stem(n,d);
xlabel('时间序号 n'); ylabel('振幅'); title('差值信号'); grid;
仿真结果如下所示:
输出 y[n]200振幅0-2000510152025303540由于延时输入 x[n-10]的输出200振幅0-20005101520差值信号10025303540振幅0-1000510152025时间序号 n303540
从仿真结果看,该系统是时变系统。
Q2.19 运行程序P2.5,生成式(2.15)所给的离散系统的冲激响应。 解:clf; N=40;
num=[2.2403 2.4908 2.2403]; den=[1 -0.4 0.75]; y=impz(num,den,N); %画出冲激相应 stem(y);
xlabel('时间序号n');ylabel('振幅'); >> title('冲激响应');grid; 仿真结果如下所示:
冲激响应4321振幅0-1-2-30510152025时间序号n303540
Q2.21 利用filter命令编写一个MATLB程序,生成式(2.17)给出的因果线性时不变系统的冲激响应,计算并画出前40个的样本。把你的结果和习题Q2.20中得到的结果相比较。
% Program Q2_21
% Compute the impulse response y clf; N = 40;
num = [0.9 -0.45 0.35 0.002]; den = [1.0 0.71 -0.46 -0.62]; % input: unit pulse x = [1 zeros(1,N-1)]; % output
y = filter(num,den,x); % Plot the impulse response
% NOTE: the time axis will be WRONG; h[0] will % be plotted at n=1; but this will agree with % the INCORRECT plotting that was also done % by program P2_5. stem(y);
xlabel('Time index n'); ylabel('Amplitude'); title('Impulse Response'); grid;
仿真结果如下所示:
相关推荐: