24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1966  |  回复: 6

ammazn

铁虫 (初入文坛)

[求助] 关于matlab中fft之后变换值的单位问题

研究连续信号  f(t)=2exp(-3t)  (t>=0) 傅立叶变换。
1,解析解                   F(ω)=2/(3+jω)
2,利用FFT,程序如下


%%%模拟采样%%%
N=128;%取2的幂次方个点
t=linspace(0,3,N);%t在[0,3]间取N个点
f=2*exp(-3*t);%人为模拟N个采样点
Fk=fft(f);%FFT变换
Ts=t(2)-t(1);%计算t的间隔
Fwfft=Fk(1:N/2+1)*Ts;%仅从Fk中取正频率分量,并乘采样间隔计算F(w)
%%%解析式%%%
Ws=2*pi/Ts;%时间t等差值作周期
W=Ws*(0:N/2)/N;%建立频率轴,始于0,终于Nyquist频率ws/2
Fw=2./(3+j*W);%解析结果
%%%绘图%%%
plot(W,abs(Fwfft),‘:b’);%abs()复数模
hold on
plot(W,abs(Fw),'-r');%解析图
xlabel('频率(rad/s)');ylabel('|F(w)|');



标记红字体的那行,为了跟解析结果比较,为什么对f进行傅里叶变换后,要乘以采样间隔时间呢???对DFT变换不是很了解, 万永革主编 《数字信号处理的MATLAB实现》之中提到“为了与真实振幅对应,需要将变换后结果乘以2除以N。 ”这个程序中乘以采样间隔时间和“乘以2除以N ”两者怎么联系起来呢?新手没接触过这个,还请大家不吝赐教啊,非常感谢!

[ Last edited by ammazn on 2013-7-18 at 21:03 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

justyet

金虫 (著名写手)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 谢谢参与! 2013-07-24 21:44:51
"标记红字体的那行,为了跟解析结果比较,为什么对f进行傅里叶变换后,要乘以采样间隔时间呢???"
其实任何一列数都可以做fft,无论时间间隔是多少。事实上,fft也不关心时间间隔。
如果没有时间间隔,相当于默认两个点之间的间隔是一秒。

“乘以2除以N“  说的是另外一回事,跟做fft变换的数据的个数有关系,跟采样间隔没关系。
2楼2013-07-19 13:24:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

_强鹏

银虫 (初入文坛)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 谢谢参与! 2013-07-24 21:44:59
你可以去百度上搜下fft的物理意思;TS的倒数是相当于基频,W=Ws*(0:N/2)/N;我感觉不要再除以N了,fft之后Fwfft=Fk(1:N/2+1)*Ts不用再乘以TS;Fwfft算出来的是频率,而W算出来的是弧度,2个相差一个2*pi
3楼2013-07-19 22:54:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

simazairu

新虫 (初入文坛)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 谢谢参与! 2013-07-24 21:45:08
标记红字体的那行,为了跟解析结果比较,为什么对f进行傅里叶变换后,要乘以采样间隔时间呢??
     请比较在matlab语言傅里叶变换的离散表达式与高等代数中的傅里叶表达式中的异同。仔细点。
     你会发现:前者表达式中没有乘上dt.为与定义相同,必需乘上该因子。
4楼2013-07-19 23:27:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ammazn

铁虫 (初入文坛)

引用回帖:
2楼: Originally posted by justyet at 2013-07-19 13:24:21
"标记红字体的那行,为了跟解析结果比较,为什么对f进行傅里叶变换后,要乘以采样间隔时间呢???"
其实任何一列数都可以做fft,无论时间间隔是多少。事实上,fft也不关心时间间隔。
如果没有时间间隔 ...

非常感谢!
5楼2013-07-20 13:16:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ammazn

铁虫 (初入文坛)

引用回帖:
3楼: Originally posted by _强鹏 at 2013-07-19 22:54:03
你可以去百度上搜下fft的物理意思;TS的倒数是相当于基频,W=Ws*(0:N/2)/N;我感觉不要再除以N了,fft之后Fwfft=Fk(1:N/2+1)*Ts不用再乘以TS;Fwfft算出来的是频率,而W算出来的是弧度,2个相差一个2*pi

非常感谢你的帮助!
6楼2013-07-20 13:16:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ammazn

铁虫 (初入文坛)

引用回帖:
4楼: Originally posted by simazairu at 2013-07-19 23:27:25
标记红字体的那行,为了跟解析结果比较,为什么对f进行傅里叶变换后,要乘以采样间隔时间呢??
     请比较在matlab语言傅里叶变换的离散表达式与高等代数中的傅里叶表达式中的异同。仔细点。
     你会发现:前 ...

多谢多谢,我得好好看基础的理论!
7楼2013-07-20 13:17:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ammazn 的主题更新
信息提示
请填处理意见