Witam, mam następujący problem.
Piszę w Matlabie skrypt wyznaczający odstęp częstotliwościowy Δf pewnego sygnału OFDM. Wyznaczyłem widmową gęstość mocy (PSD), następnie funkcję autokorelacji widmowej gęstości mocy Ryy. Maksimum Ryy odpowiada Δf. Kolejne maksima pojawiają się z okresem odpowiadającym Δf, czyli na przykład:
odczytana z wykresu odległość pomiędzy kolejnymi maksimami w próbkach wynosi ok. 61, cz. próbkowania fs = 8000 Hz, nfft = 4096, zatem 61*fs/nfft = 119.1406, co w przybliżeniu daje Δf (120 Hz). Tylko, że ja chciałbym ten okres wyznaczyć za pomocą FFT, tzn. [peakValue, indeks] = max(abs(FFT(Ryy))) - nie potrafię jakoś zinterpretować (przeskalować) wyniku, tzn. pozycji na której występuje maksimum modułu, aby otrzymać wielkość w przybliżeniu równą 120 Hz.
Za podpowiedź będę bardzo wdzięczny
.
Piszę w Matlabie skrypt wyznaczający odstęp częstotliwościowy Δf pewnego sygnału OFDM. Wyznaczyłem widmową gęstość mocy (PSD), następnie funkcję autokorelacji widmowej gęstości mocy Ryy. Maksimum Ryy odpowiada Δf. Kolejne maksima pojawiają się z okresem odpowiadającym Δf, czyli na przykład:
odczytana z wykresu odległość pomiędzy kolejnymi maksimami w próbkach wynosi ok. 61, cz. próbkowania fs = 8000 Hz, nfft = 4096, zatem 61*fs/nfft = 119.1406, co w przybliżeniu daje Δf (120 Hz). Tylko, że ja chciałbym ten okres wyznaczyć za pomocą FFT, tzn. [peakValue, indeks] = max(abs(FFT(Ryy))) - nie potrafię jakoś zinterpretować (przeskalować) wyniku, tzn. pozycji na której występuje maksimum modułu, aby otrzymać wielkość w przybliżeniu równą 120 Hz.
Za podpowiedź będę bardzo wdzięczny