【发布时间】:2017-02-18 14:08:58
【问题描述】:
给定两个信号:
x1 = A1*exp(j*2*pi*f1*t + Phi1);
x2 = A1*exp(j*2*pi*f1*t + Phi1) + A2*exp(j*2*pi*f2*t + Phi2);
Matlab 应该可以计算幅值和相位:
abs(x1) = A1;
angle(x1) = Phi1;
abs(x2) = A1+A2;
angle(x2) = Phi1+Phi2;
这是正确的吗?我真的不确定x2。 现在,我得到一个正弦信号:
x3 = A3*cos(2*pi*f3*t + Phi3);
x4 = A3*cos(2*pi*f3*t + Phi3) + A4*cos(2*pi*f4*t + Phi4);
这些信号的 abs() / angle() 会产生什么结果?
x2 的复包络由下式给出:
A1*exp(j*2*pi*(f1-f2)/2 t + Phi1) + A2*exp(j*2*pi*(f2-f1)/2 t + Phi2)
假设载波频率在 f1 和 f2 之间。 复包络的幅度和相位应该在某种程度上与原始信号相当。现在我想知道,是吗?
【问题讨论】:
-
余弦不是线性函数。因此,余弦和的大小不会是余弦大小的和。也不会是阶段。相位实际上没有多大意义,因为您的频率不同(请注意, xi 的角度随时间而变化!)。您尝试解决的问题称为谐波检索(从谐波的采样总和中估计 A_i、f_i 和 Phi_i)。您可以通过傅里叶分析 (DFT) 或高分辨率算法(例如 MUSIC 或 ESPRIT)来解决它。看看那些。无论如何,这不是取角度(x)那么简单,相信我。
-
谢谢,弗洛里安!我也可以问你这个问题吗:你说不同频率的相位没有意义。但是你能告诉我 x2 的相位吗,假设 f1 = -f2 ?只是 Phi1 + Phi2 吗?
-
不,是什么让你这么认为?相位仅在您将信号相乘时相加,而不是在您相加时相加。
-
你说得对,我不知道。我在我的问题中添加了额外的一行。这就是我的问题。也许你能帮忙?我有点迷路了。
-
我仍然不确定您要做什么。到目前为止,您询问 x2 的幅度/相位是否是其分量的幅度/相位之和。答案显然是否定的。现在您添加了“复包络的幅度和相位应该在某种程度上等同于原始信号”,同样,答案是否定的,例如,x2 的幅度是及时调制的。如果您试图从 x2 中找到 A1、A2、Phi1、Phi2,请参阅我的第一个回复。如果不是,请说明您要执行的操作。
标签: matlab