Matlab中fft后的频谱幅度为什么要乘以2/N

 我来答
退潮缚叹1
2020-05-09 · TA获得超过277个赞
知道答主
回答量:134
采纳率:98%
帮助的人:54万
展开全部

不知你弄懂没有,这里我回答一下为什么要乘以2吧,至于为什么要除以N,我比较赞同上一个回答中用户dukinkin从积分角度来进行的理解。

以下是我对为什么要乘以2的理解,如果不对,请批评指正:

你所见到的乘以2的情景,大概是在MATLAB中fft函数的示例中,其中用到的信号是sin,比如我这里用A1=0.7, f1=50; A2=1, f2=200:X(t)=0.7sin(100*pi*t) + sin(400 * pi * t)。

不过,其实X(t)还可以表示为:

X(t)的另一种表示方法

这个表示方法看起来比较绕,但是其实它在频域是比较直观的,由此可以理解:Y=fft(X);  P2 = abs(Y/L);【这里的字母含义跟fft函数的说明文件中一样】得到的双侧振幅谱(如下图,我在运算中用到的基本参数为:采样频率1000,采样点数100)中,那几个尖脉冲就是0.35和0.5,即A1/2和A2/2

因此,在表示单侧振幅谱时,MATLAB示例想要弄成尖脉冲直接等于sin信号的幅值A1、A2的那种直观的形式,就乘2了

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式