实验四离散信号频谱分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验四 离散信号的频域分析

一、 实验目的

1. 掌握序列的傅里叶变换、离散傅里叶级数、离散傅里叶变换、快速傅里叶变换的Matlab 实现;

2.

学习用FFT 对连续信号和离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应用FFT 。

二、 实验原理及方法

1. 离散信号的谱分析 (1) 序列的傅里叶变换 对于满足绝对可和的序列,即

∞<∑∞

-|)(|n x ,其傅里叶变换和反变换的定义为

∑∞

-∞

=-=

n n

j j e

n x e X ωω

)()( (4.1)

ωπ

ωπ

π

ωd e e X n x n j j ⎰-

=

)(21

)( (4.2)

序列)(n x 是离散的,但)(ω

j e X 是以π2为周期的ω的连续函数,为了能够在计算机上

处理,需要对)(n x 进行截断,对频域进行离散化,近似处理后

2

1

()()k

k n j j n

n n X e

x n e ωω-==∑

(4.3)

其中2k k M

π

ω=

,M 是对ω在一个周期内的采样,k 的取值由读者确定,若想观察一个周期内的频谱,0~1k M =-,若观察两个周期,0~21k M =-,以此类推。

序列傅里叶变换的Matlab 实现: clc;clear; n=0:3;

x=[1,1,1,1]; M=200;

k=0:M-1; W=2*pi/M*k;

X=x*(exp(-j*2*pi/M)).^(n'*k); %序列的傅里叶变换 magX=abs(X); phaX=angle(X); subplot(131); stem(x);

subplot(132); plot(W,magX); subplot(133); plot(W,phaX);

对4()R n 进行序列的傅里叶变换得到图4-1。

2

4

00.10.20.3

0.40.50.60.70.8

0.9

10510

0.51

1.5

2

2.5

3

3.5

4DTFT 幅度谱

0510

-4

-3

-2-1

1

2

3

DTFT 相位谱

图4-1 信号及信号的幅度谱和相位谱

(2)离散傅里叶变换(DFT )

如果序列)(n x 是有限长的,序列的谱分析可以采用离散傅里叶变换,其定义为:

10,)()]([)(1

-≤≤==∑-=N k W n x n x DFT k X N n kn

N (4.4)

10,)(1

)]([)(1

-≤≤=

=∑-=-N n W

k X N

k X IDFT n x N k kn N

(4.5)

因为)(n x 与)(k X 都是离散的,所以可以利用计算机进行数值计算。从数学观点看,DFT 表示的是对序列)(n x 或)(k X 的线性运算。

此处应用DFT 变换近似分析采样序列的频谱。设时域序列用x 表示,长度为M ;x 的DFT 变换为X ,变换区间长度为N (M N ≥)。

∑-==

1

)()(M n kn

N

W

n x k X 1,,1,0-=N k

将)(k X 展开,得:

⎪⎪

⎪⎩

⎪⎪⎪⎨⎧-++++=--++++=-++++=-++++=--------)

1)(1(2)1(1)1(0)1()

1(2222120)1(1121110)

1(0020100)1()2()1()0()1()1()2()1()0()2()1()2()1()0()1()1()2()1()0()0(M N N N N N N N N M N

N N N M N N N N M N N N N W M x W x W x W x N X W M x W x W x W x X W M x W x W x W x X W M x W x W x W x X 将上式表示成矩阵的形式:

⎥⎥⎥⎥⎥⎥⎥⎥

⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡-=--------)1)(1()1(1)1(02)1(2

021)1(11010)1(1000)]1()1()0([)]1()1()0([M N N M N M N N N

N N N N

N N N N

N N W W W W W W W W W W W W M x x x N X X X 1 DFT 变换的Matlab 实现:

clc;clear; M=4; N=8;

x=[1,1,1,1]; n=0:M-1; k=0:N-1;

WN=exp(-j*2*pi/N); kn=n'*k;

WNkn=WN.^kn; X=x*WNkn; magX=abs(X); phaX=angle(X); k=0:7;

subplot(131); stem(x);

subplot(132); stem(magX); subplot(133); stem(phaX);

对4()R n 进行离散傅里叶变换得到图4-2。

相关文档
最新文档