Prev: plotting two data series of different number of elements
Next: Converting form .m to .mex is no longer efficient?
From: Erwin on 25 Jun 2010 21:49 Hello! I'm having trouble in reconstructing a signal from a Power Law noise. I've successfully created the signal in the frequency space, and obtained the desired PSD (which is similar to the real data). But, when I make the Inverse Fourier Transform, the signal over time, is too low in amplitude from what expected. Please check the plots here: http://imgur.com/rxIU1.jpg So, to get a feeling from what the RMS in the frequency space should be, I integrated the function that describes the Power Law (which is something like: f(x) ~ x^(-m), being m the slope; this function is the green line on the PSD plot) over the frequency manually, and I get roughly ~130 (also near the measured RMS). To check this, I calculated the RMS in the frequency space via MATLAB doing: RMS_f = sqrt(abs(Y).^2.*df); Being, Y the generated signal in the frequency space, and df the increment in frequency. This is also roughly equal to what expected. When it comes to check this RMS through the time domain is way too low... I calculated it doing: RMS_t = sqrt(mean(xt.^2)); being xt the time domain signal. The way I created the signal in the time domain was building an array with the generated function Y and it's complex conjugate, and doing the IFFT, which yields only real values. Checkin Parseval's theorem, it comes out that the time domain is exactly twice times the value from frequency domain. It makes sense, because when I created the double side frequency space, I'm creating twice times the initial "energy", so when I take the IFFT it comes the time signal with twice the "energy". Well, I think I'm a bit confused... Anyone has a clue about this? Thanks! |