1、北京工业大学信号处理工程应用训练北京工业大学专业:通信工程学生姓名:刘莹莹指导教师:席大林完成时间:2020年6月22日通信系统工程应用训练报告 训练十一 DFT性质研究验证dft函数正确性设置原始输入信号为x8=1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,将输入信号x8进行DFT正变换,dft(X,x,8,1),输出保存在X8,如下:可以看到,输入信号x(n)已经变换到频域X(k),且仍为8位。再对X8进行DFT反变换,dft(x,X,8,-1),重新得到x8,观察得到的输出与原始输入数据是否相同。结果如下:可以看到,输出的x8取值仍为x8=1,0,2,0,3,0,4,0
2、,5,0,6,0,7,0,8,0,证明经过DFT正反变换后,信号能够恢复原始信号。根据帕塞瓦尔定理,应有时域、频域总能量相等:。经过计算,时域、频域能量和分别为,证明时域、频域能量和相同,符合帕塞瓦尔定理。 综上,证明DFT变换正确。A、补0效应研究原数组:x8=1,0,2,0,3,0,4,0,5,0,6,0,7,8,0示例程序中补0后数组为:x216=1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0补0方式我使用的补0方式为:for(i=8;i13;i+)x2i=COMPLEX(0,0);补0后数组为:x213=1
3、,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,0,0,0,0,0,0,0,0,0,0结果分析与图在时域中,信号长度增加,由于所增加的项均为零,波形仍与未补0时相同未补零时的信号时域图补5个零后的信号时域图 补8个零后的信号时域图经过DFT变换后,X(k)长度也会随着x(n)长度的增加而增加,且增加的值非零未在末端补零时,信号频谱图在末端补5个零时,信号频谱图 在末端补8个零时,信号频谱图可以看到,经过补0,经过DFT变换的频谱与未补零时形状基本相同,只是在长度上进行扩展,且补零数量越多,扩展越长。可以理解为经过补0效应,增加了频域采样频率,但是由于信号未增加新的信息,因此不能提
4、高物理分辨率。在能量上,补5/8个零时,信号能量时域、频域能量和如下:时域能量和、频域能量和始终相等,符合帕塞瓦尔定理,且能量与未插值时的相同。B、插值效应研究原数组:x8=1,0,2,0,3,0,4,0,5,0,6,0,7,8,0示例程序中插值后数组为:x316=1,0,8,0,2,0,7,0,3,0,6,0,4,0,5,0,5,0,4,0,6,0,3,0,7,0,2,0,8,0,1,0插值方式我使用的插值方式为:for(i=0;i16;i=i+2)x3i=COMPLEX(1+i/2,0);x3i+1=COMPLEX(i*0.5+2.5,0);插值后数组为:x16=1,0,3,0,2,0,4
5、,0,3,0,5,0,4,0,6,0,5,0,7,0,6,0,8,0,7,0,9,0,8,0,10,0结果分析与图(1)在示例程序中,在x8=1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0中反向插入原序列,使原序列变为x316=1,0,8,0,2,0,7,0,3,0,6,0,4,0,5,0,5,0,4,0,6,0,3,0,7,0,2,0,8,0,1,0,再进行DFT变换,观察频谱,对比时域、频域能量和。反向插值后,时域、频域图可以看到,反向插值后,信号频谱有了很大的直流分量,且近乎左右对称。从三维频谱图上可以看出,高频、低频部分实际上是共轭反对称:反向插值后,三维频域图。符合帕
6、塞瓦尔定理,且能量是未插值时的2倍。(2)在x8=1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0中插入序列3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,使原序列变为x316= 1,0,3,0,2,0,4,0,3,0,5,0,4,0,6,0,5,0,7,0,6,0,8,0,7,0,9,0,8,0,10,0,再进行DFT变换,观察频谱,对比时域、频域能量和。插值后,时域、频域图可以看到,插值后,信号频谱有了很大的直流分量,且近乎左右对称。,符合帕塞瓦尔定理。(3)在x8=1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0中正向插入原序列,使原序列分别
7、变为x216= 1,0,1,0,2,0,2,0,3,0,3,0,4,0,4,0,5,0,5,0,6,0,6,0,7,0,7,0,8,0,8,0,再进行DFT变换,观察频谱,对比时域、频域能量和。正向插值后,时域、频域图可以看到,正向插值后,信号频谱有了很大的直流分量,且近乎左右对称。符合帕塞瓦尔定理,且能量是未插值时的2倍。C、插0效应研究原数组:x8=1,0,2,0,3,0,4,0,5,0,6,0,7,8,0示例程序中插0后数组为:x416=1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0插0方式我使用的插0方式为
8、:for(i=0;i16;i=i+3)x4i=COMPLEX(1+i/2,0);x4i+1=COMPLEX(2+i/2,0);x4i+2=COMPLEX(0,0);插0后数组为:x412=1,0,2,0,0,0,3,0,4,0,0,0,5,0,6,0,0,0,7,0,8,0,0,0结果分析与图(1)在示例程序中,在x8=1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0中,每隔一点,插入1个0值,使原序列分别变为x116= 1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,再进行DFT变换,观察频谱,对比
9、时域、频域能量和。插0前,时域、频域图 插0后,时域、频域图可以看到,插0后的频谱是对原始信号频谱的周期延拓。画出三维图像,可以更直观地看出周期延拓关系: 未插入零/插入一个零后的三维频谱图通过对插零后图像进行DFT运算,可以证明插零后的DFT是原信号DFT的周期延拓。符合帕塞瓦尔定理,且能量与未插值时的相同。(2)在x8=1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0中,每隔两点,插入1个0值,使原序列变为x416= 1,0,2,0,0,0,3,0,4,0,0,0,5,0,6,0,0,0,7,0,8,0,0,0,再进行DFT变换,观察频谱,对比时域、频域能量和。插0后,时域、
10、频域图符合帕塞瓦尔定理源程序:/ 11yy.cpp : Defines the entry point for the console application./#include stdafx.h#includeD:xhclgcyyx_math.cpp#includeD:xhclgcyyx_graph.cppvoid plotgri2(COLORREF gridcolor,COLORREF linecolor,COMPLEX p,int N)int i;HPEN pen1=CreatePen(PS_SOLID,1,gridcolor),oldpen=(HPEN)SelectObject(win
11、3.hdc,pen1);HPEN pen2=CreatePen(PS_SOLID,1,linecolor);for(i=0;iN;i+)line2(i,0,i,abs(pi);SelectObject(win3.hdc,pen2);moveto2(0,p0.r);for(i=0;iN;i+)lineto2(i,abs(pi);SelectObject(win2.hdc,oldpen);DeleteObject(pen1);DeleteObject(pen2);void plotgri3(COLORREF gridcolor,COLORREF linecolor,COMPLEX p,int N)
12、int i;HPEN pen1=CreatePen(PS_SOLID,1,gridcolor),oldpen=(HPEN)SelectObject(win3.hdc,pen1);HPEN pen2=CreatePen(PS_SOLID,1,linecolor);for(i=0;iN;i+)line3(i,0,0,i,pi.r,pi.i);SelectObject(win3.hdc,pen2);moveto3(0,p0.r,p0.i);for(i=0;iN;i+)lineto3(i,pi.r,pi.i);SelectObject(win2.hdc,oldpen);DeleteObject(pen
13、1);DeleteObject(pen2);void main()int i;double sumT,sumF;COMPLEX x8,/1,0,2,0,3,0,4,0,5,0,6,0,7,8,0 X8, x213,/=1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,0,0,0,0,0,0,0,0,0,0 X216, x316,/=1,0,1,0,2,0,2,0,3,0,3,0,4,0,4,0,5,0,5,0,6,0,6,0,7,0,7,0,8,0,8,0 X316, x412,/=1,0,2,0,0,0,3,0,4,0,0,0,5,0,6,0,0,0,7,0,8,0,0,0 X416;/给待
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1