信号加白噪声分贝matlab程序,数字信号处理 实验报告.doc

PAGE 1

1.DFT在信号频谱分析中的应用

1.1设计目的

(1) 熟悉DFT的性质。

(2) 加深理解信号频谱的概念及性质。

(3)了解高密度谱与高分辨率频谱的区别。

1.2设计任务与要求

(1)学习用DFT和补零DFT的方法来计算信号的频谱。

(2)用MATLAB语言编程来实现,在做课程设计前,必须充分预习课本DTFT、DFT及补零DFT的有关概念,熟悉MATLAB语言,独立编写程序。

1.3设计原理

所谓信号的频谱分析就是计算信号的傅里叶变换。连续信号与系统的傅里叶分析显然不便于直接用计算机进行计算,使其应用受到限制,而DFT是一种时域和频域均离散化的变换,适合数值运算,成为分析离散信号和系统的有力工具。

工程实际中,经常遇到的连续信号Xa(t),其频谱函数Xa(jW)也是连续函数。数字计算机难于处理,因而我们采用DFT来对连续时间信号的傅里叶变换进行逼近,进而分析连续时间信号的频谱。

1.4设计内容

1.4.1用MATLAB实现DFT与IDTF

(1)点序列x(n) 的DFT为:

点序列x(n) 的IDFT为:

N点DFT的矩阵为:

(3)根据DFT公式与矩阵展开,通过MATLAB实现DFT与IDFT,程序如下:

Matlab中的内部函数文件fft.m文件:

unction [varargout] = fft(varargin)

if nargout == 0

builtin('fft', varargin{:});

else

[varargout{1:nargout}] = builtin('fft', varargin{:});

end

运算量估计:对于N=点序列进行时间抽选奇偶分解FFT计算,需分M级,每级计算N/2个蝶。每一级需N/2次复乘、N次复加,因此总共需要进行:复乘: ;复加:直接计算N点的DFT,需要次复乘、N(N-1)次复加。N值越大,时间抽选奇偶分解FFT算法越优越。例如当N=2048点时,时间抽选奇偶分解FFT算法比直接计算DFT速度快300多倍。

1.4.2. 对离散确定信号 作如下谱分析:

(1)截取使成为有限长序列N(),(长度N自己选)写程序计算出的N点DFT ,并画出相应的幅频图。

N=32;

n=0:1:N-1;

xn=cos(0.48*pi*n)+cos(0.52*pi*n);

subplot(3,1,1)

stem(n,xn,'.k');

title('时域序列图xn');

xlabel('n');

axis([0,10,-2.5,2.5]);

w=2*pi*(0:1:2047)/2048;

Xw=xn*exp(-j*n'*w);

subplot(3,1,2);

plot(w/pi,abs(Xw));

title('幅频特性曲线X(ejw)');

xlabel('w');

axis([0,1,0,20]);

subplot(3,1,3)

Xk=dft(xn,N);

k1=0:1:31;w1=2*pi/32*k1;

stem(w1/pi,abs(XK),'.k');

title('频域序列图XK');

xlabel('频率(单位:pi)');

axis([0,1,0,20]);

图1.4.1

由图1可见,由于截断函数的频谱混叠作用,X(k)不能正确分辨w1=0.48π、w2=0.52π这两个频率分量。

(2)将 (1)中补零加长至M点(长度M自己选),编写程序计算的M点DFT ,并画出相应的图,并利用补零DFT计算 (1)中N点有限长序列频谱并画出相应的幅频图。

N=32;

n=0:N-1;

xn=cos(0.48*pi*n)+cos(0.52*pi*n);

N1=128;

n1=0:N1-1;

x1=[xn(1:32) zeros(1,96)];

subplot(3,1,1)

stem(n1,x1,'.k');

title('时域序列图x1');

xlabel('n');

axis([0,100,-2.5,2.5]);

w=2*pi*(0:2047)/2048;

X1=x1*exp(-j*n1'*w);

subplot(3,1,2);

plot(w/pi,abs(X1));

title('幅频特性曲线X(ejw)');

xlabel('w');

axis([0,1,0,20]);

subplot(3,1,3);

k=0:1:N1-1;

WN=exp(-j*2*pi/N1);

nk=n'*k;

WNnk=WN.^nk;

XK=xn*WNnk;

k1=0:1:127;

w1=2*pi/128*k1;

stem(w1/pi,abs(XK(1:1:128)),'.k');

title('频域序列图XK');

xlabel('频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值