"Thomas Richter" <thor@math.tu-berlin.de> ha scritto nel messaggio news:d92djc$2v2$1@mamenchi.zrz.TU-Berlin.DE...> tru wrote:[omissis]> Here's why: Consider the original signals A and B, and modified signals > > A'(x) := A(x) + c > B'(x) := B(x) + c > > where c is a constant. Would you agree that the correlation between > A and B should give the same result as the correlation between A' and B'? > I would, at least. However, the presented formula doesn't, it isn't > shift-invariant. > > Fix: Normalize input such that the average of A and B is zero.Not always valid. When I did the Sodar experiment that I cited in a my previous post, I retained the mean value to obtain a significant correlation. This had to be because what was correlated was not the turbulence (zero averaged) of the vertical wind but the values of the wind itself. Sometimes the constant matters. Angelo> It is also often useful to normalize the inputs such that their norm is > one. > > So long, > Thomas >

# time domain and fft correlation paradox

Started by ●June 17, 2005

Reply by ●June 19, 20052005-06-19

Reply by ●June 19, 20052005-06-19

Hello Robert, robert bristow-johnson a =E9crit :> > > C[n] =3D SUM{ A[j] * B[n-j] } (summing over all j) > j > > is very similar to correlation, it is "convolution" and that is equivalent > to > > C[n] =3D IFFT( FFT(A[n]) * FFT(B[n]) ) > > when you change B[n-j] to B[n+j], that imposes the conj() operator on the > FFT of B[n]. it should work out to be the same. >Thank you for correcting the equation for convolution of my previous post. I was confused, of course I should have written c(x)=3Dsum[a(i)*b(x-i)] //sum over i Best regards, Tilman JOCHEMS http://mfj.chez.tiscali.fr/html/index_en.html

Reply by ●June 19, 20052005-06-19

tru wrote:> However this linear correlation thing is not reliable for anything.Well, it may perhaps not have been useful in your application, but to leap from there to say that it is not useful for *anything* seems to be a bit too harsh... ;) But I agree with your overall view. Test the method and see how well it works in your application. Rune