log2(0)=-inf problem
Show older comments
Hallo,
my problem is that i want to set the quantity log2(0), so as log2(0)==0 {normally it is log2(0)==-inf}. is there a simple way to do this?
Thanks you in advance.
Answers (1)
Sean de Wolski
on 5 Oct 2011
Write your own log2 and call it:
function out = mylog2(in)
out = log2(in);
out(~in) = 0;
end
Add the F/E output options if desired.
It would be very dangerous to overload this function since it's probably used elsewhere.
4 Comments
Matt Tearle
on 5 Oct 2011
Or, post process: y = log2(x); y(isinf(y)) = 0;
Am I suggesting some logical indexing? Why, yes, I think I am!
Sean de Wolski
on 5 Oct 2011
x = [0 inf -inf 3];
Matt Tearle
on 5 Oct 2011
y(isinf(y)&~isinf(x)) = 0
Sean de Wolski
on 5 Oct 2011
I'm holding to ~x, logical and foolproof, no, doh! can't convert nan to logical arghh...
x==0
Categories
Find more on Creating Custom Components and Libraries in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!