Is the Fourier series the best way to decompose a sinusoidal signal?

16 次查看(过去 30 天)
Hello, I am looking for the best way to decompose a generic sinusoidal signal: in the picture below you can see my original signal (blue) and the one obtained with the Fourier series (red). As you can notice, there is (of course) an error in the amplitude and this is what I am looking for: is there an alternative (to the Fourier series) that allows a perfect reproduction of a sinusoidal signal?

回答(1 个)

Bjorn Gustavsson
Bjorn Gustavsson 2017-12-12
Have a look at your function - it is obviously not a sinusoidal function that's periodic over your interval. Further, obviously you can find a Fourier transform of any function over a finite interval. The trick for you to spot here is that you have a jump at the edge of your window. Most likely you can find a better low-order Fourier expansion of your curve if you start off with a slightly longer wavelength that your widow.
Is this an exercise for a course on Fourier methods?
  2 个评论
Alessandro Longo
Alessandro Longo 2017-12-12
What do you mean about the function? Of course it is a sinusoidal signal, with custom phase, custom amplitude variation law and swept frequency. I only cut one period from it.
Anyway, yes it is an exercise. I should re-build the original signal in the best way possible (without passing in the frequency domain)
Bjorn Gustavsson
Bjorn Gustavsson 2017-12-13
编辑:Bjorn Gustavsson 2017-12-13
Obviously the blue curve is not from one period of a sinusoidal function - since the value at x=0 is approximately 5 and at x=0.5 the value is approximately 4.
If you have an amplitude modulated signal with a fixed "carrier-frequency", then go ahead an try to estimate the time-variation of the envelope of your signal and model it that way, if you have a signal with varying frequency try to estimate the variation of the frequencies (perhaps use times between the zero-crossings or peaks to get at a variable period-time) or combine both.
Good luck with your exercise.

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by