首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当源信号仅为实数时对复数进行运算

问当源信号仅为实数时对复数进行运算
EN

Stack Overflow用户
提问于 2012-04-24 06:14:14
回答 2查看 579关注 0票数 0

我有一个实数序列,我想计算它的FFT。FFT函数需要复数。

那么,我可以将虚值设置为0并计算FFT吗?

下一个问题是,当我得到结果值(频域值)时,它们是复杂格式的。

如果我对这些复数值进行FFT的逆运算,我可以去掉虚部而只使用结果的实部吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-24 06:15:42

将复数输入的实部设置为信号采样值,将虚部设置为零。或者,您可以使用实数到复数的FFT,它也可能比普通的复数到复数的FFT快一点。

至于逆FFT -只要你的频域复值具有复共轭对称性(如果你的输入是纯实数,它们就会有),那么IFFT就会再次给你一个纯实时域信号。如果您在IFFT之前修改了频域值,请确保您保持复共轭对称性。同样,您也可以考虑使用复杂到真实的IFFT,它可能更有效,并将减轻您维护对称性的工作。

票数 2
EN

Stack Overflow用户

发布于 2012-04-24 09:40:05

对于这种类型的数学,实数只是一个(假设或显式)虚部等于零的复数。

如果输入IFFT计算的频率数据是共轭对称的,那么与真实值相比,结果中的虚值将很小,主要是使用有限精度算术产生的数值噪声。如果您理解精度的有效位数,您将注意到,对于任何合理或有用的精度,这些值都会舍入为零。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10289065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档