信号错误生成的相位谱matlab
Posted
技术标签:
【中文标题】信号错误生成的相位谱matlab【英文标题】:phase spectrum of signal wrong generation matlab 【发布时间】:2013-11-12 17:36:47 【问题描述】:我有 129 个信号样本。我必须发现它是什么信号(它有什么组件)并尝试重建它。 所以在我完成 FFT 之后,我想找到信号的相位,所以我尝试:
phs=unwrap(angle(y));
pha_wek=(0:length(y)-1)'/length(y)*129;
plot(pha_wek,phs)
结果我得到了它不是我所期望的。你能指出我有什么问题吗?
【问题讨论】:
您遗漏了关键信息!你期待什么,你得到了什么? 图中不同轴上的内容是什么,预期的输出是什么? 您好,很抱歉没有回复。第一张图片是 FFT,第二张我试图根据我的信号中的 fft 来做相位频谱。我基于 mathworks.com/help/signal/ref/angle.html 。我想根据频率找到我的信号的相位。但不知道如何为 130 个样本找到 x 轴的正确频率 【参考方案1】:情节在我看来完全正确,具体取决于原始信号是什么。相位角的不连续性是由于幅度过零造成的。但是,相位跳变小于 pi(如果输入信号最初是真实的并且在应用 FFT 时已加窗,则这是您可能期望的)。所以我的猜测是,这个信号是某种形式的复杂调制,带有一些离散的频率。
通常查看相位比信号幅度更能说明信号。它对于重建信号至关重要,但更难以解释(特别是因为它会因时域的简单变化而发生巨大变化)。
不使用 unwrap 命令可能会更好地绘制相位 在这种情况下,问题在于 unwrap 命令 - 它的目的是将相位跳跃限制为小于 pi,这就是为什么最终相位约为 -4pi .
我不确定您的挑战是什么,但不清楚您所说的重构样本是什么意思。你已经有了这些,那有什么问题呢? (是否要求您重建插值样本)?
【讨论】:
以上是关于信号错误生成的相位谱matlab的主要内容,如果未能解决你的问题,请参考以下文章
求matlab周期三角波信号频谱分析的代码,能画出三角波信号、幅度谱和相位谱。