为什么FFT变换后的幅值感觉不对? 请看一下问题出在哪里(matlab环境)

原始信号的幅值最大值都在40+50+为什么经过fft之后的幅值却只有9.9我已把fft的结果通过*2/nfft得到真正的幅值.这是我的代码感觉应该没错,但这结果很难想明白... 原始信号的幅值最大值都在40+ 50+ 为什么经过fft之后的幅值却只有9.9
我已把fft的结果通过*2/nfft 得到真正的幅值. 这是我的代码 感觉应该没错,但这结果很难想明白, 感觉fft后的结果 的幅值应该也在40+50+的样子,可得到这样的结果这是为什么?

time = [1:1:2049255];current = four(1,:); % datadata= (current/220)*1000;dt = (time(2)-time(1))*60; % the interval between samplefs = 1/dt; % after FFT, the max limitax = (abs(fft(data,length(time)))*2)/length(time); f = (1:length(time))*fs/length(time); %% % figuresubplot(211);plot(time,data);xlabel('Time(min)');ylabel('Power(mA)');title('Power signal profile');subplot(212);% plot(f,ax,'LineWidth',1);xlim([0 0.0083])semilogx(f,ax);xlabel('Frequency(Hz)');ylabel('Power(mA)');title('Power VS Frequency');
展开
 我来答
yanglei5658
2015-05-19 · TA获得超过4756个赞
知道大有可为答主
回答量:835
采纳率:100%
帮助的人:520万
展开全部

没有啥问题,对于FFT来说,

从转换的公式可以看出,频域上的值是时域上的值乘了一个相位后再求和,那么不同相位可能同向,也可能反向,最后的结果肯定不是时域数值的简单叠加,因为它考虑了方向的问题。所以其幅度是会出现比时域的平均幅度小的情况。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式