XCORR function to find the lag time between two signals
2 views (last 30 days)
Show older comments
Hello
I am using the XCORR function to find the lag time between two signals, but when processing the measured data the lag is always the same, physically it is not possible. I have noticed that the lags are whole numbers, is it possible to obtain correlation coefficients with lags with decimals?
Thank you
1 Comment
Adam
on 20 Feb 2019
The correlation is only done at the sample rate defined so that is why lag is always integer. If you had a continuous signal then you would have a continuous lag value, but obviously that is not possible in a digitised signal. You can interpolate your signal by e.g. a factor of 10 though which will give you lags that would be the equivalent of beung 1 decimal place at the original scale.
Answers (1)
Honglei Chen
on 20 Feb 2019
Edited: Honglei Chen
on 20 Feb 2019
We probably need a bit more info to understand why the lag is always the same. But by default xcorr returns the delay in lags, that's why it's always a whole number. You can translate that lag to time by mulitplying it to the sampling time, and then you will start to see decimals.
HTH
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!