'xcorr()' giving some negative values

2 views (last 30 days)
Biplab Roy
Biplab Roy on 29 Jan 2017
Commented: dpb on 31 Jan 2017
I have two arrays A and B both having only positive values with some being zero. I am using c=xcorr(A,B) to get the cross correlation. I would expect the result to be all positive but getting some negative values. What is the reason?
  4 Comments
Biplab Roy
Biplab Roy on 31 Jan 2017
Thanks all. As dpb correctly placed, is a classic example of some results being negative even though all inputs are positive. And i also feel it is the rounding error. Could not this be corrected?
dpb
dpb on 31 Jan 2017
Sure
cor(cor<0)=0;
if you feel you must. But, in general, when you use floating point, rounding errors are inherent with the beastie.

Sign in to comment.

Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!