EDA365电子论坛网
标题:
为什么利用fft画出的频谱和直接利用公式画出的频谱不一致?
[打印本页]
作者:
lahhse
时间:
2022-7-21 11:25
标题:
为什么利用fft画出的频谱和直接利用公式画出的频谱不一致?
比如 时域信号 exp(-(t.^2)),波形图是:
+ g* y, ]2 P/ V1 i; a6 J5 @+ D
" M3 `7 P! M' L& j% g$ J5 g
对它做fft变换,求得频谱是:
- y6 ? `+ A5 d3 z& S- Y
) e, n$ w0 E0 }% W* y
另外,我知道exp(-(t.^2)) 的傅里叶变换的公式是sqrt(pi).*exp(-(pi.*freq).^2),直接仿真该公式:
6 D! l6 ^8 B2 Z& ]( }
7 S* U$ [" ~3 Y2 ]$ r# N
再对其 ifft得到时域波形是:
2 V8 ?" w/ d, k2 }/ K- l/ H/ M1 }7 K
9 J/ P- _3 y* N3 u
不管时域波形和频域波形,都不一致啊,为什么呢?
, e8 z* m2 D2 h! J' Z
+ V; q/ t8 r. x1 U$ A
clear all;close all;clc;
4 n q& h- V' G$ E# T, }
t=linspace(-10,10,1024);
0 {+ P( H* `1 {
y=exp(-(t.^2));
1 W+ _# W4 V9 [! }* O8 g' X
figure(1);
1 u' o/ W7 n# ]8 l, R9 O
plot(t,y);
6 C) R8 o0 S7 B+ }% c
figure(2);
. I2 E T# h8 F+ k5 G+ c" }
y_spec=fft(y);
8 K6 n& B c5 n
freq=linspace(-1/10,1/10,1024);
& ~! } v( u& z/ \3 r
plot(freq,fftshift(abs(y_spec)));
- n; ~, z8 \9 ], T3 e
figure(3);
Y7 D6 f/ ^* M8 |$ a' }4 q
z_spec=sqrt(pi).*exp(-(pi.*freq).^2);
1 R# b5 I8 n7 j7 ?; j
plot(freq,z_spec);
$ G1 P7 E, |5 @+ D
figure(4);
6 w! G6 }- \# y" g# x
plot(t,fftshift(ifft(z_spec)));
6 [ y5 H' y: I/ ?
作者:
芦根苏木
时间:
2022-7-21 13:17
fft是离散的,你给的那个傅里叶变换公式是连续信号的变换,两个信号都不一样,所以变换不一样
1 ]' t* N6 y, q
作者:
Memory00
时间:
2022-7-21 14:47
同问,求结果
/ S1 ^# Z+ b2 a$ I4 F
作者:
ESCAPE
时间:
2022-7-21 15:37
再看看别人是怎么说的
, P, w* {9 Z& }2 |: r/ g/ E
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2