|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
8 r& P' z0 z" I3 d: H" ]8 E上篇:用 MATLAB 实现离散时间傅里叶变换(DTFT)的两个案例分析
6 |( p& h y( ?4 s
0 K7 _" J4 J! a" E6 k9 z |我们就使用第二个案例来研究下DTFT的对称性,看看它的幅值、相位、实部和虚部的对称性到底如何?+ B) b4 @. C* h1 v3 q/ N
; [* A+ o) o, I# @% |, n
案例题目贴出来:
' D9 V! X% U( k7 X( J0 C1 q
+ Z$ P( N# X* r" |6 p" y2 b" g: f( R. J求下面有限长序列的离散时间傅里叶变换:: }5 {9 w( S$ r6 ^
) G( o! a P# h. r- U5 N
: o% Q6 [/ s* F$ \( `1 s# v6 W* q/ @& b
在[0,pi]之间的501个等分频率上进行数值求值。
+ h* @( r1 B% u- Y7 T5 |8 ?
5 v( o0 r- l, z( ]& v. [最后我们得到的结果是:( q# G1 g8 ]* Y# }8 C1 I3 r6 _
- }2 |- X5 q+ N/ @6 R
+ w& ?$ {+ [1 z1 c, Z6 F4 g m- U2 Z8 }# B9 O
这是在[0,pi]上划分为501个等分点来求得DTFT,为了观察对称性问题,我们来看两个周期,同样每pi个区间划分为501个等分点。: P% k# _% f$ n h; N
8 P+ G0 K( O- |# p& g8 x
MATLAB脚本如下:, v* b* a m2 F+ `4 U# H* C
& z# C9 [/ Y6 e$ m b) [" N
- clc
- clear
- close all
- n = -1:3;
- x = 1:5;
- k = -1000:1000;
- w = (pi/500)*k;
- X = x * (exp(-j * pi/500)).^(n' * k);
- magX = abs(X);
- angX = angle(X);
- realX = real(X);
- imagX = imag(X);
- subplot(2,2,1);
- plot(w/pi,magX);
- title('Magnitude Part');
- xlabel('w/pi');ylabel('Magnitude');
- subplot(2,2,2);
- plot(w/pi,angX);
- title('Angle Part');
- xlabel('w/pi');ylabel('Radians');
- subplot(2,2,3);
- plot(w/pi,realX);
- title('Real part');
- xlabel('w/pi');ylabel('Real');
- subplot(2,2,4);
- plot(w/pi,imagX);
- title('Imaginary Part');
- xlabel('w/pi');ylabel('Imaginary');2 k6 Q/ M8 v: p4 O; }* @
$ [+ k9 }* i! M1 @- A+ x0 I
3 \$ ~- K$ H* I+ `
0 a7 r+ e- u3 ]7 H8 b/ G
% K+ i% U" D/ B, d" ]; u1 y可见,对于幅值和实部都是偶对称,对于相位和虚部都是奇对称。和理论分析上完全一致。
$ }; F& Q! v" B3 b. Z1 Y# \0 x& _" Z" t. X1 r+ {9 J! R
|
|