qq_47361278 2023-12-10 00:44 采纳率: 62.9%
浏览 5
已结题

MATLAB中的fft问题

我的导师告诉我功率谱密度函数应该按照下面这个图中的公式算

img

所以我根据公式把代码改成如下所示:figure;N =length(a);Fs = 500; U = fft(a);P2 = abs(U.^2/2piNFs);P = P2(1:N/2+1);P(2:end-1) = 2P(2:end-1);f = Fs*(0:(N/2))/N;semilogx(f, P);
但是画出来的图纵坐标PSD非常大,如下图已经圈出来了(达到了10的17次方,也太大了):

img


但是实际上纵坐标PSD应该是如下图这样的几千的范围内:

img


那么问题是,在导师给的公式没错的前提下,我应该怎么改代码或者设置图像能使我的图的纵坐标PSD恢复到像最后一个图这样几千几千的范围?请根据导师给的公式帮我改一下代码解决我的问题。

  • 写回答

4条回答 默认 最新

  • Wayne_Fine Matlab领域优质创作者 2023-12-10 10:07
    关注

    abs(U.^2/2piNFs)你这里是不是写成了

    abs((U.^2/2)*pi*N*Fs)
    

    的意思了呀?
    应该是

    abs(U.^2/(2*pi*N*Fs))
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月10日
  • 请采纳用户回复 12月10日
  • 修改了问题 12月10日
  • 修改了问题 12月10日
  • 展开全部

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同