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$
1
  • $\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$ Jun 18, 2013 at 20:38

1 Answer 1

4
$\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$
5
  • $\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, 2013 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$ Jun 14, 2013 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, 2013 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$ Jun 14, 2013 at 14:14
  • $\begingroup$ Depending on how accurate you want to be, zero-padding can work. $\endgroup$
    – Peter K.
    Jun 14, 2013 at 15:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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