|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
" j/ v6 C) _* N+ v* v4 T
上篇:用 MATLAB 实现离散时间傅里叶变换(DTFT)的两个案例分析
- _! Y# `" T0 a! \1 `
2 y1 G+ L8 V/ p; L* L我们就使用第二个案例来研究下DTFT的对称性,看看它的幅值、相位、实部和虚部的对称性到底如何?
( N7 {5 a- z, Y6 ?) N1 t+ R' } R/ E* o4 y/ p' j4 H
案例题目贴出来:8 z# }' \6 V/ @* J
/ M0 T4 F$ \4 q) g7 }求下面有限长序列的离散时间傅里叶变换:
- S) b$ u% P" E K/ _
1 P, P6 \. b. w- w9 S
4 O& F; [# O! y, k& D
6 Y; e5 I# W' A: M( o" W
在[0,pi]之间的501个等分频率上进行数值求值。
! j" {4 d3 V5 R2 X. L* Y1 o- i1 }! y4 a1 r5 F$ c( \( V3 n
最后我们得到的结果是:
8 C1 ]1 n& B) ]3 U0 v: P) n2 |) ^5 e
* Z+ S5 r$ h) b7 r+ I6 Y% ?5 m- e: g, A, R
$ f3 M+ C: I4 ~$ W0 g- V' |2 h5 b! |3 c* V) p8 ?
这是在[0,pi]上划分为501个等分点来求得DTFT,为了观察对称性问题,我们来看两个周期,同样每pi个区间划分为501个等分点。
! h! {' D& M, ^4 v [8 B' E; h9 |% S' k/ @+ P
MATLAB脚本如下:: k2 N) `! N# a5 |% i
3 x* d' d4 v: \. l# t8 G E
- 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');8 S' t2 ]* D7 q% Y) _6 W
; I% L8 P8 g8 c3 G& [' ?
4 M) V8 O/ t: V8 t' p
; a' I% k) p; _# p O( g: @5 g' B, E2 M0 T) F3 v9 h
可见,对于幅值和实部都是偶对称,对于相位和虚部都是奇对称。和理论分析上完全一致。 E! H# T4 `( d4 {1 ~- F3 X
& I0 \+ C8 s9 X5 M7 B: U; O; H3 S |
|