3
$\begingroup$

I have a complex data series, and I would like to fit a fixed number (in this case, two) of complex exponentials of the form $Ae^{jBn}$, where A, B are complex. Not interested in the phase (i.e. arg of A), just its magnitude, and mainly the complex frequency. Target length is maybe 100 samples.

I would like to be able to capture the periodic destructive interference as the addition of these two fitted complex exponential signals.

Complex time-series in 3D:

enter image description here

I have looked into Prony-type methods and noise subspace methods, but I'm at a loss as to what is applicable here.

$\endgroup$
  • $\begingroup$ Does B have both real and imaginary parts? The exp(jBn) seems strange under the description "A,B are complex". The real part of the exponent dictates growth or decay of the complex sinusoid. Is that your model? $\endgroup$ – Mark Borgerding Jun 18 '13 at 20:38
5
$\begingroup$

Complex A and B are a bit messy. What about using the signal model

$$ f(t) = \sum_{k=1}^{2} A_k\, e^{j(w_k t + \phi_k)} $$

where $w$ is the frequency and $\phi$ is phase.

Since sinusoids are orthogonal, probably the easiest thing to do is to Fourier transform the signal and pick out the two largest peaks in the positive part of the spectrum. These will correspond to the two main sinusoids.

$\endgroup$
  • $\begingroup$ This is generally a good approach. The only caveat is that, if you use the FFT, then the $w_k$ will not necessarily be at the right frequencies for the signal. And that generally means, depending on the magnitudes and frequencies of your peaks, that if $w_p$ is a peak then usually $w_{p+1}$ or $w_{p-1}$ is also, due to spectral leakage. $\endgroup$ – Peter K. Jun 14 '13 at 12:14
  • $\begingroup$ @PeterK. How do you fix this? I remember reading on this site about zero padding a signal to get finer frequency binning, would that work in this case? $\endgroup$ – geometrikal Jun 14 '13 at 13:48
  • $\begingroup$ Using a sinusoidal signal model may be appropriate, one less degree of freedom. The complex data series is the result of a single FFT bin over time, phase-corrected for a moving window. I did not think of performing an FFT on the complex data, but it does appear that with sufficient zero-padding some degree of resolution, if not discrimination, can be achieved. A lower bound of some kind seems like it would be at work in any case. Maybe increasing the temporal resolution of the complex series, by shortening the shift of each FFT of the original data can improve the discrimination. $\endgroup$ – James Jun 14 '13 at 14:01
  • $\begingroup$ @James I didn't make it clear enough but the above signal model isn't an alternative, it is the same $Ae^{jBn}$ just rearranged into something (I find) easier to work with. :) $\endgroup$ – geometrikal Jun 14 '13 at 14:14
  • $\begingroup$ Depending on how accurate you want to be, zero-padding can work. $\endgroup$ – Peter K. Jun 14 '13 at 15:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.