how to set RBW while using medfreq ?

1 次查看(过去 30 天)
LO
LO 2019-5-7
编辑: LO 2019-5-7
Is there a mathematical/precise way to calculate an optimal rbw (resolution bandwidth) while using the command medfreq to calculate the frequency of a signal (sinewave in my case) in matlab?
the tutorial of the function just indicates:
"Resolution bandwidth, specified as a positive scalar. The resolution bandwidth is the product of two values: the frequency resolution of the discrete Fourier transform and the equivalent noise bandwidth of the window used to compute the PSD."
so the first one is Fs / Nfft (with Fs = sampling freq and Nfft the number of data points per each analysis window of the fft).
I am having some doubts about the other parameter, i.e. the noise bandwidth
is this formula correct ?
example (hanning window, 1024 samples)
Fs = 20000 Hz
Nfft = 2^10 = 1024
bw = enbw(hanning(Nfft)) = 1.4985
RBW = (Fs/Nfft)/bw
If I use this formula I estimate an RBW of 13 Hz ca. MATLAB gives me an error saying that the minimum valule expected as RBW is 19.something Hz.. Any idea of why ?

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Fourier Analysis and Filtering 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by