(完整版)第三章离散傅里叶变换及其快速算法习题答案参考
- 格式:doc
- 大小:1.01 MB
- 文档页数:14
课后习题及答案_第3章离散傅⾥叶变换--上机习题答案第3章离散傅⾥叶变换(DFT)上机习题答案1. 解:该题求解程序为ex323.m,程序运⾏结果如下图所⽰。
第(1)⼩题⽤1024点DFT近似x(n)的傅⾥叶变换;第(2)⼩题⽤32点DFT。
题下图(e)和(f)验证了X(k)是X(e jω)的等间隔采样,采样间隔为2π/N。
图(g) 验证了IDFT 的惟⼀性。
2. 解:设x1(n)和x2(n)的长度分别为M1和M2,X1(k)=DFT[x1(n)]N, X2(k)=DFT[x2(n)]NY c(k)=X1(k)X2(k), y c(n)=IDFT[Y c(k)]N所谓DFT的时域卷积定理,就是当N≥M1+M2-1时,y c(n)=x1(n)*x2(n)。
本题中,M1=M2=4,所以,程序中取N=7。
本题的求解程序ex324.m如下:% 程序ex324.mx1n=[2 1 1 2];x2n=[1 -1 -1 1];%时域直接计算卷积yn:yn=conv(x1n,x2n)%⽤DFT计算卷积ycn:M1=length(x1n);M2=length(x2n);N=M1+M2-1;X1k=fft(x1n,N);%计算x1n的N点DFTX2k=fft(x2n,N);%计算x2n的N点DFTYck=X1k.*X2k;ycn=ifft(Yck,N)程序运⾏结果:直接在时域计算x1(n)与x2(n)的卷积yn和⽤DFT计算x1(n)与x2(n)的卷积ycn 如下:yn=[2 -1 -2 2 -2 -1 2]ycn=[ 2.0000 -1.0000 -2.0000 2.0000-2.0000 -1.0000 2.0000]3.解:本题的求解程序为ex325.m。
程序运⾏结果如下图所⽰。
由图可见,循环卷积为线性卷积的周期延拓序列的主值序列;当循环卷积区间长度⼤于等于线性卷积序列长度时,⼆者相等,见图(b)和图(c)。
第三章离散傅里叶变换及其快速算法习题答案参考3.1 图P3.1所示的序列(xn 是周期为4的周期性序列。
请确定其傅里叶级数的系数(X k。
解:(111*0((((((N N N nk nk nk N N N n n n X k x n W x n W x n W X k X k −−−−−=====−= =−=∑∑∑3.2 (1设(xn 为实周期序列,证明(x n 的傅里叶级数(X k 是共轭对称的,即*((X k X k =− 。
(2证明当(xn 为实偶函数时,(X k 也是实偶函数。
证明:(1 111**((([(]((N nk N n N N nk nkNNn n Xk x n W Xk x n W xn W X−−=−−−==−=−===∑∑∑ k(2因(xn 为实函数,故由(1知有 *((Xk X k =− 或*((X k X k −= 又因(xn 为偶函数,即((x n x n =− ,所以有(111*0((((((N N N nk nk nk N N N n n n X k x n W x n W x n W X k X k −−−−−=====−= =−=∑∑∑3.3 图P3.3所示的是一个实数周期信号(xn 。
利用DFS 的特性及3.2题的结果,不直接计算其傅里叶级数的系数(Xk ,确定以下式子是否正确。
(1,对于所有的k; ((10Xk X k =+ (2((Xk X k =− ,对于所有的k; (3; (00X=(425(jkX k eπ,对所有的k是实函数。
解:(1正确。
因为(x n 一个周期为N =10的周期序列,故(X k 也是一个周期为N=10的周期序列。
(2不正确。
因为(xn 一个实数周期序列,由例3.2中的(1知,(X k 是共轭对称的,即应有*((Xk X = k −,这里(X k 不一定是实数序列。
(3正确。
因为(xn (0n ==在一个周期内正取样值的个数与负取样值的个数相等,所以有 10(0N n Xx −=∑ (4不正确。
·54· 第3章 离散傅里叶变换(DFT )及其快速算法(FFT )3.1 引 言本章是全书的重点,更是学习数字信号处理技术的重点内容。
因为DFT (FFT )在数字信号处理这门学科中起着不一般的作用,它使数字信号处理不仅可以在时域也可以在频域进行处理,使处理方法更加灵活,能完成模拟信号处理完不成的许多处理功能,并且增加了若干新颖的处理内容。
离散傅里叶变换(DFT )也是一种时域到频域的变换,能够表征信号的频域特性,和已学过的FT 和ZT 有着密切的联系,但是它有着不同于FT 和ZT 的物理概念和重要性质。
只有很好地掌握了这些概念和性质,才能正确地应用DFT (FFT ),在各种不同的信号处理中充分灵活地发挥其作用。
学习这一章重要的是会应用,尤其会使用DFT 的快速算法FFT 。
如果不会应用FFT ,那么由于DFT 的计算量太大,会使应用受到限制。
但是FFT 仅是DFT 的一种快速算法,重要的物理概念都在DFT 中,因此重要的还是要掌握DFT 的基本理论。
对于FFT 只要掌握其基本快速原理和使用方法即可。
3.2 习题与上机题解答说明:下面各题中的DFT 和IDFT 计算均可以调用MA TLAB 函数fft 和ifft 计算。
3.1 在变换区间0≤n ≤N -1内,计算以下序列的N 点DFT 。
(1) ()1x n =(2) ()()x n n δ=(3) ()(), 0<<x n n m m N δ=- (4) ()(), 0<<m x n R n m N = (5) 2j()e, 0<<m n N x n m N π=(6) 0j ()e n x n ω=(7) 2()cos , 0<<x n mn m N N π⎛⎫= ⎪⎝⎭(8)2()sin , 0<<x n mn m N N π⎛⎫= ⎪⎝⎭(9) 0()cos()x n n ω=(10) ()()N x n nR n =(11) 1,()0n x n n ⎧=⎨⎩,解:(1) X (k ) =1N kn N n W -=∑=21j0eN kn nn π--=∑=2jj1e1ekN n k nπ---- = ,00,1,2,,1N k k N =⎧⎨=-⎩(2) X (k ) =1()N knNM n W δ-=∑=10()N n n δ-=∑=1,k = 0, 1, …, N -1(3) X (k ) =100()N knNn n n W δ-=-∑=0kn NW 1()N n n n δ-=-∑=0kn NW,k = 0, 1, …, N -1为偶数为奇数·55·(4) X (k ) =1m knN n W -=∑=11kmN N W W --=j (1)sin esin k m N mk N k N π--π⎛⎫⎪⎝⎭π⎛⎫ ⎪⎝⎭,k = 0, 1, …, N -1 (5) X (k ) =21j 0e N mn kn N N n W π-=∑=21j ()0e N m k nNn π--=∑=2j()2j()1e1em k N N m k Nπ--π----= ,0,,0≤≤1N k mk m k N =⎧⎨≠-⎩(6) X (k ) =01j 0eN nknN n W ω-=∑=021j 0e N k nN n ωπ⎛⎫-- ⎪⎝⎭=∑=002j 2j 1e1ek NN k N ωωπ⎛⎫- ⎪⎝⎭π⎛⎫- ⎪⎝⎭--= 0210j 202sin 2e2sin /2N k N N k N k N ωωωπ-⎛⎫⎛⎫- ⎪⎪⎝⎭⎝⎭⎡⎤π⎛⎫- ⎪⎢⎥⎝⎭⎣⎦⎡⎤π⎛⎫- ⎪⎢⎥⎝⎭⎣⎦,k = 0, 1, …, N -1或 X (k ) =00j 2j 1e 1e Nk N ωωπ⎛⎫- ⎪⎝⎭--,k = 0, 1, …, N -1(7) X (k ) =102cos N kn N n mn W N -=π⎛⎫ ⎪⎝⎭∑=2221j j j 01e e e 2N mn mn kn N N N n πππ---=⎛⎫ ⎪+ ⎪⎝⎭∑=21j ()01e 2N m k n N n π--=∑+21j ()01e 2N m k n N n π--+=∑=22j ()j ()22j ()j ()11e 1e 21e 1e m k N m k N N N m k m k N N ππ--+ππ--+⎡⎤--⎢⎥+⎢⎥⎢⎥--⎣⎦=,,20,,N k m k N mk m k N M ⎧==-⎪⎨⎪≠≠-⎩,0≤≤1k N - (8) ()22j j 21()sin ee 2j mn mnN N x n mn N ππ-π⎛⎫== ⎪-⎝⎭ ()()112222j j j ()j ()0011()=e e ee 2j 2j j ,2=j ,20,(0≤≤1)N N kn mn mn m k n m k n N N N N N n n X k W Nk m N k N mk k N --ππππ---+===--⎧-=⎪⎪⎨=-⎪⎪-⎪⎩∑∑其他(9) 解法① 直接计算χ(n ) =cos(0n ω)R N (n ) =00j j 1[e e ]2n n ωω-+R N (n )X (k ) =1()N knNn n W χ-=∑=0021j j j 01[e e ]e 2N kn n n N n ωωπ---=+∑=0000j j 22j j 11e 1e 21e 1e N N k k N N ωωωω-ππ⎛⎫⎛⎫--+ ⎪ ⎪⎝⎭⎝⎭⎡⎤--⎢⎥+⎢⎥⎢⎥--⎣⎦,k = 0, 1, … , N -1 解法② 由DFT 共轭对称性可得同样的结果。
第三章 离散傅里叶变换及其快速算法习题答案参考3.1 图P3.1所示的序列()x n %是周期为4的周期性序列。
请确定其傅里叶级数的系数()Xk %。
解:(1)11*0()()()()()()N N N nk nk nk N N N n n n X k x n W x n W x n W X k X k -----=====-==-=∑∑∑%%%%%%3.2 (1)设()x n %为实周期序列,证明()x n %的傅里叶级数()Xk %是共轭对称的,即*()()X k X k =-%。
(2)证明当()x n %为实偶函数时,()Xk %也是实偶函数。
证明:(1)1011**()()()[()]()()N nk Nn N N nk nkNNn n X k x n W X k x n Wx n WX k --=---==-=-===∑∑∑%%%%%%(2)因()x n %为实函数,故由(1)知有 *()()Xk X k =-%或*()()X k X k -=% 又因()x n %为偶函数,即()()xn x n =-%%,所以有(1)11*0()()()()()()N N N nk nk nk N N N n n n X k x n W x n W x n W X k X k -----=====-==-=∑∑∑%%%%%%3.3 图P3.3所示的是一个实数周期信号()x n %。
利用DFS 的特性及3.2题的结果,不直接计算其傅里叶级数的系数()Xk %,确定以下式子是否正确。
(1)()(10)Xk X k =+%%,对于所有的k ; (2)()()Xk X k =-%%,对于所有的k ; (3)(0)0X=%;(4)25 ()jkX k eπ%,对所有的k是实函数。
解:(1)正确。
因为()x n%一个周期为N=10的周期序列,故()X k%也是一个周期为N=10的周期序列。
(2)不正确。
因为()x n%一个实数周期序列,由例3.2中的(1)知,()X k%是共轭对称的,即应有*()()X k X k=-%,这里()X k%不一定是实数序列。
(3)正确。
因为()x n%在一个周期内正取样值的个数与负取样值的个数相等,所以有1(0)()0NnX x n-===∑%%(4)不正确。
根据周期序列的移位性质,25()jkX k eπ%=210()kX k W-%对应与周期序列(2)x n+%,如图P3.3_1所示,它不是实偶序列。
由题3.2中的(2)知道,25()jkX k eπ%不是实偶序列。
3.4设3()()x n R n=,()(6)rx n x n r∞=-∞=+∑%,求()X k%,并作图表示()x n%和()X k%。
解:3152666000633111(1) ()()()111k j k k Nnk nk nkN kj k j k n n nW eX k x n W x n W WWe eπππ----===----======---∑∑∑%%%(0)1(2)(4)0(1)131(13)/22(3)11(5)131(13)j XXX X j j X e Xj j π-=====---==-==+-+%%%%%% ()x n %和()Xk %的图形如图3.4_1所示:3.5 在图P3.5中表示了两个周期序列1()x n %和2()x n %,两者的周期都为6,计算这两个序列的周期卷积3()x n %,并图表示。
解:图P3.5_1所示的是计算这两个序列的周期卷积3()x n %的过程,可以看出,3()x n %是1()x n %延时1的结果,即31()(1)x n x n =-%%。
3.5 计算下列序列的N 点DFT :(1)()()x n n δ=(2)00()[()]*(),0N N x n n n R n n N δ=-<< (3)(),01nx n a n N =≤≤- (4)2()cos(),01,x n nm n N o m N Nπ=≤≤-<< 解:(1)10()()(0)1,01N nkN n X k n W k N δδ-====≤≤-∑ (2)0100()[()](),01N n k nkN N N N n X k n n R n W W k N δ-==-=≤≤-∑(3)111(),0111N Nk N N n nkN Nk kn N Na W a X ka W k N aW aW -=--===≤≤---∑ (4)22211002()2()22()()1()()()(()()()21()cos()211121112N N j nm j nm j nk nk NN N N n n j k m j k m j k m j k m N N N j k m j k m j k m j k m j k m N j k m j k m NN X k nm W e e eN e e ee e e e e e ee πππππππππππππππ----==---+---++---+-+-----⎛⎫==+ ⎪⎝⎭⎛⎫-- ⎪=+ ⎪--⎝⎭--=+-∑∑()()()(){1)()()()11()(),20,sin sin 12sin /sin /N j k m N j k m j k m N N N N j k m j k m N N Nk m k m e e e k m k m e e k m N k m N πππππππππ+-++-+++---+==-⎛⎫ ⎪ ⎪-⎝⎭⎧⎫-+⎡⎤⎡⎤⎪⎪⎣⎦⎣⎦=+⎨⎬-+⎡⎤⎡⎤⎪⎪⎣⎦⎣⎦⎩⎭=或其他3.7 图P3.7表示的是一个有限长序列()x n ,画出1()x n 和2()x n 的图形。
(1)()144()2()x n x n R n =-⎡⎤⎣⎦(2)()244()2()x n x n R n =-⎡⎤⎣⎦解:1()x n 和2()x n 的图形如图P3.7_1所示:3.8 图P3.8表示一个4点序列()x n 。
(1)绘出()x n 与()x n 的线性卷积结果的图形。
(2)绘出()x n 与()x n 的4点循环卷积结果的图形。
(3)绘出()x n 与()x n 的8点循环卷积结果的图形,并将结果与(1)比较,说明线性卷积与循环卷积之间的关系。
解:(1)图P3.8_1(1)所示的是()x n 与()x n 的线性卷积结果的图形。
(2)图P3.8_1(2)所示的()x n 与()x n 的4点循环卷积结果的图形。
(3)图P3.8_1(3)所示的()x n 与()x n 的8点循环卷积结果的图形。
可以看出,()x n 与()x n 的8点循环卷积结果的图形与(1)中()x n 与()x n 的线性卷积结果的图形相同。
3.9 ()x n 是一个长度为N 的序列,试证明[()][()]N N x n x N n -=-。
证明:因为[()]N x n -是由()x n 周期性重复得到的周期序列,故可表示为[()][()]N N x n x n rN -=-+ 取r =1,上式即为[()][()]N N x n x N n -=-。
3.10 已知序列()(),01nx n a u n a =<<。
现在对其Z 变换在单位圆上进行N 等分取样,取值为()()|k Nz W X k X z -==,求有限长序列的IDFT 。
解:在z 平面的单位圆上的N 个等角点上,对z 变换进行取样,将导致相应时间序列的周期延拓,延拓周期为N ,即所求有限长序列的IDFT 为 ()()(),0,1, (11)n rNp Nr r a x n x n rN au n rN n N a∞∞+=-∞=-∞=+=+==--∑∑ 3.11 若长为N 的有限长序列()x n 是矩阵序列()()N x n R n =。
(1)求[()]x n Z ,并画出及其-零点分布图。
(2)求频谱()j X e ω,并画出幅度|()|j X e ω的函数曲线。
(3)求()x n 的DFT 的闭式表示,并与()j X e ω对照。
解:(1)11021111111111()()1()()()1(1)(1)N N nnNn n N N N j k k k NN NNk k k N N N N z X z Rn zzz z W z W z e z z z z z z zπ-∞----=-∞=-----===-----===-∏-∏-∏--====--∑∑极点:00(1)z N =-阶;零点:2,1,2,...,1j k Npk z e k N π==-图P3.11_1(1)是极-零点分布图。
(2)12222111222sin 1()2()()|1sin()2j N N N jjjN j N j j j z e j j j N e e e eX e X z ee e e e ωωωωωωωωωωωωω------=--⎛⎫⎪--⎝⎭====--sin 12|()|,()2sin 2j N N X e ωωϕωωω⎛⎫⎪-⎝⎭==-图P3.11_1(2)所示的是频谱幅度|()|j X e ω的函数曲线。
(3){21,020,1,2,...,12011()()()11Nk j k N nk j N k N N Nk N k k j k n NN NW e X k R n WX e W e πωππω--==-=-=--=====--∑可见,()X k 等于()j X e ω在N 个等隔频率点2(0,1,2,...,1)k N Nπω==-上的取样值。
3.12 在图P3.12中画出了有限长序列()x n ,试画出序列4[()]x n -的略图。
解:3.13 有限长序列的离散傅里叶变换相当与其Z 变换在单位圆上的取样。
例如10点序列()x n 的离散傅里叶变换相当与()X z 在单位圆10个等分点上的取样,如图P3.13(a )所示。
为求出图P3.13(b )所示圆周上()X z 的等间隔取样,即()X z 在[(2/10)(/10)]0.5j k z eππ+=各点上的取样,试指出如何修改()x n ,才能得到序列1()x n ,使其傅里叶变换相当于上述Z 变换的取样。
解:22991010102110.5exp 101000()()()()(0.5)j nk jn jnk n z j k n n X k x n eX z x n eeπππππ----⎡⎤⎛⎫=+ ⎪⎢⎥⎝⎭⎣⎦=====∑∑由上式得到101()(0.5)()jnnx n ex n π--=3.14 如果一台通用计算机计算一次复数乘法需要100s μ,计算一次复数加法需要20s μ,现在用它来计算N =1024点的DFT ,问直接计算DFT 和用FFT 计算DFT 各需要多少时间? 解:直接计算DFT :复数乘法:22102410485761048576100105N s s μ==⨯≈次,复数加法:(1)102410231047552,10475522021N N s s μ-=⨯=⨯≈次 总计需要时间:(10521)126s s +=用FFT 计算DFT : 复数乘法:2log 5120,51201000.5122NN s s μ=⨯≈次 复数加法:2log 10240,10240200.2048N N s s μ=⨯≈次 总计需要时间:(0.5120.2048)0.7168s s +=3.15 仿照本教材中的图3.15,画出通过计算两个8点DFT 的办法来完成一个16点DFT 计算的流程图。