Detection of sinusoids in the discrete sequence
10 views (last 30 days)
Show older comments
Good day! Please excuse me for my English. I have the following problem: There is a period of a discrete signal. This signal is the sum of sinusoidal signals (sinusoids). These sinusoids not always begin and end at the beginning and end of the period. As an example, I suggest the following (see figure) Period length = 300. There are two sinusoidal signals: one signal all over the period (300), the second - only half of the period (150). Question: how to detect both signals in this example? That is, how to determine the frequency of these two signals. If both signals were all over the period, the usual Fourier (fft) would perform this task. But in this example, Fourier did not determine the frequency correctly. Thank you in advance! http://i064.radikal.ru/1210/90/ed1741e392a6.jpg
2 Comments
Greg Heath
on 5 Oct 2012
The link doesn't work. I get the error message
The page you were looking for doesn't exist.
You may have mistyped the address or the page may have moved.
Will you please submit a short piece of code that will generate the signal and produce the plot?
TIA
Answers (4)
Greg Heath
on 6 Oct 2012
If both sampling frequencies are equal to Fs = 1/dt, then the folowing conditions should be met
1. The signal amplitudes are comparable so that neither spectrum peak is comparable to the other signal spectrum's peak sidelobe.
2. Each signal length is longer than a fundamental period:
t1max > 1/f1 and t2max = 2*t1max > 1/f2
3. If x1 is zeropadded to length t2max, the peak spectra can be resolved when
df = 1/(t2max+dt) < abs(f1-f2)
Thank you for formally accepting my answer.
0 Comments
See Also
Categories
Find more on Chebyshev in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!