DTFT 是关于 ?的周期函数么?答:DTFT是关于?的周期函数 周期是 2?
四个图形的对称性为:实部是2?周期和偶对称; 虚部是2?周期和奇对称;幅度
是2?周期和偶对称;相位是2?周期和奇对称性。
Q3.4 修改程序 P3_1 重做Q3.2的程序如下:
clf;
w = -4*pi:8*pi/511:4*pi; num = [1 3 5 7 9 11 13 15 17]; den = 1;
h = freqz(num, den, w); subplot(2,1,1)
plot(w/pi,real(h));grid title('H(e^{j\\omega})的实部') xlabel('\\omega /\\pi');
ylabel('振幅'); subplot(2,1,2)
plot(w/pi,imag(h));grid title('H(e^{j\\omega})的虚部') xlabel('\\omega /\\pi'); ylabel('振幅'); pause
subplot(2,1,1)
plot(w/pi,abs(h));grid
title('|H(e^{j\\omega})|幅度谱') xlabel('\\omega /\\pi'); ylabel('振幅'); subplot(2,1,2)
plot(w/pi,angle(h));grid
title('相位谱arg[H(e^{j\\omega})]') xlabel('\\omega /\\pi'); ylabel('以弧度为单位的相位');
修改程序后的运行结果为:
DTFT 是关于 ?的周期函数么? 答:DTFT 是关于 ?的周期函数。 周期是 - 2?相位谱中跳变的原因是 - 角度返回到arctan的本值
实验名称:离散傅立叶变换和z变换
实验目的:
掌握离散傅立叶变换(DFT)及逆变换(IDFT)、z变换及逆变换的计算和分析。 实验任务:
完成DFT和IDFT的计算及常用性质的验证,利用DFT实现线性卷积,实现z变换的零极点分析,求有理逆z变换。 实验内容:
DFT和IDFT计算: Q3.23~3.24 (Q3.24可选做)
DFT的性质: Q3.26~3.29,Q3.30~3.35,Q3.36(Q3.37可选),Q3.38(Q3.39可选),
Q3.40
z变换分析:Q3.46~3.48 逆z变换:Q3.50
实验过程与结果分析:
Q3.23 编写一个MATLAB程序,计算并画出长度为N的L点离散傅里叶变换X[k]的值,其中L≥N,然后计算并画出L点离散傅里叶变换X[k]。对不同长度N和不同的离散傅里叶变换长度L,运行程序。讨论你的结果。
编写的MATLAB程序:
clf;
N=200; % length of signal L=256; % length of DFT nn = [0:N-1]; kk = [0:L-1];
xR = [0.1*(1:100) zeros(1,N-100)]; xI = [zeros(1,N)]; x = xR + i*xI; XF = fft(x,L); subplot(3,2,1);grid; plot(nn,xR);grid; title('Re\\{x[n]\\}'); xlabel('Time index n'); ylabel('Amplitude'); subplot(3,2,2); plot(nn,xI);grid; title('Im\\{x[n]\\}'); xlabel('Time index n'); ylabel('Amplitude'); subplot(3,2,3);
plot(kk,real(XF));grid; title('Re\\{X[k]\\}');
xlabel('Frequency index k'); ylabel('Amplitude');
subplot(3,2,4);
plot(kk,imag(XF));grid; title('Im\\{X[k]\\}');
xlabel('Frequency index k'); ylabel('Amplitude'); % IDFT
xx = ifft(XF,L); subplot(3,2,5);
plot(kk,real(xx));grid;
title('Real part of IDFT\\{X[k]\\}'); xlabel('Time index n'); ylabel('Amplitude'); subplot(3,2,6);
plot(kk,imag(xx));grid;
title('Imag part of IDFT\\{X[k]\\}'); xlabel('Time index n'); ylabel('Amplitude');
Re{x[n]}Im{x[n]}Amplitude500100Time index nRe{X[k]}200Amplitude1010-10Amplitude0-10000100200300Frequency index kReal part of IDFT{X[k]}Amplitude10005000-5000100Time index nIm{X[k]}200Amplitude0-100100200Time index n300Amplitude1010-10100200300Frequency index kImag part of IDFT{X[k]}100200Time index n300
Q3.24 写一个MATLAB程序,用一个N点复数离散傅里叶计算两个长度为N的实数序列的N点离散傅里叶变换,,并将结果同直接使用两个N点离散傅里叶变换得到的结果进行比较。
编写的MATLAB程序:
clf;
N=256; % length of signal