Unexpected behavior of FFT

1 回表示 (過去 30 日間)
MAWE
MAWE 2022 年 9 月 22 日
コメント済み: MAWE 2022 年 9 月 23 日
I have this signal
r = x.*cos(2*pi*f1.*t) + i.*cos(2*pi*f2.*t) + n
where x and i are BPSK symbols {+1,-1} and n is additive Gaussian noise.
When I find the positive part of the PSD using fft I was expecting to get two peaks one at f1 and one at f2. However, I get the peaks towards the hight frequency fs/2 where fs is the sampling rate. Why is this happening?
EDIT: See figure
I = imread('PSD_test.png');
imshow(I)
EDIT: I calculate the PSD from fft like so
N=length(r);
Unrecognized function or variable 'r'.
rFFT = fft(r,N);
prr = 2.*abs(rFFT).^2/(fs*N);
  5 件のコメント
MAWE
MAWE 2022 年 9 月 22 日
@Paul The actual code is involved. I just tried to put the gest to understand why I get unexpected behavior. Do I need to shift the frequencies of the fft by fftshift, for example? I did that but didn't work
MAWE
MAWE 2022 年 9 月 22 日
@Paul I edited the questions to explain how I calculated the PSD from fft.

サインインしてコメントする。

回答 (1 件)

Bjorn Gustavsson
Bjorn Gustavsson 2022 年 9 月 22 日
In the field (IS-radar) I work we have typical carrier-frequencies of 224-1000 MHz and the modulation band-width is a couple of MHz. Here you try to use BPSK with baud-lengths of 16 samples - which corresponds to a really high frequency. To my understanding you don't have a large ferquency-span between the modulation-frequency and the Nyquist-frequency. Does the signal look sensible if you plot it for a time-period of a couple of bits.
  5 件のコメント
MAWE
MAWE 2022 年 9 月 23 日
It looks the attached image
MAWE
MAWE 2022 年 9 月 23 日
@Bjorn Gustavsson Also, the bandwidth of the signal is 500 MHz

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeFourier Analysis and Filtering についてさらに検索

製品


リリース

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by