Hi All,
I have 3 different separate I and Q signals at 48K. Can any one explain how to do a weighted complex FFT on the three different I and Q Signals.

 采纳的回答

Wayne King
Wayne King 2012-5-4

0 个投票

Then you just do
t = 0:0.001:1-0.001;
I = cos(2*pi*100*t);
Q = sin(2*pi*100*t);
sig1 = I+1j*Q;
dftsig1 = fft(sig1);
Do the same for I2 and Q2, etc.

更多回答(3 个)

Wayne King
Wayne King 2012-5-3

0 个投票

Why do you want to weight them? And by weight, do you simply mean window the signals?
fft() accepts a complex-valued input with no problem
t = (0:0.001:1-0.001)';
x = exp(1j*2*pi*100*t)+complex(randn(size(t)),randn(size(t)));
% and if by weight, you mean window the I and Q channels
x = x.*complex(hamming(length(x)),hamming(length(x)));
xdft = fft(x);
Vivekanandh
Vivekanandh 2012-5-4

0 个投票

Hi Wayne,
Thanks for your reply. I think my question is not clear. I am doing I and Q modulation and i have the I signal and Q signal separately (which is a sine wave). Let's say I1 = {0,1,2,1,0,-1,-2,-1,0} and Q1 = {-2,-1,0,1,2,1,0,-1,-2}. And similarly i have I2,Q2 and I3 and Q3 (all are sine wave). I need to combine I1 and Q1 signals and create a complex FFT. Similarly for I2,Q2 and I3 and Q3 signals.
Vivekanandh
Vivekanandh 2012-5-4

0 个投票

Hi Wayne,
Thank you very much. This helps a lot. Is that possible to look for a DC component in FFT. If so how is it possible? Is that possible to remove the DC component from FFT and compare the result with the FFT image?

1 个评论

Dr. Seis
Dr. Seis 2012-5-4
The DC will just be your dftsig1(1) value. You can remove the DC component by removing the mean of your input signal to the FFT (i.e., sig1).

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Get Started with Signal Processing Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by