Excerpts from Peter Nelson's message of 2011-01-28 13:03:56 +0100:
Thanks Peter, this section was supposed to refer to the output of the
test program. cout printed 11 for both values but 4.80518e-16 for one
value minus the other, so this at least a very nasty inconsistency.
I still don't understand why this results in 11 on some machines and
something else on others. 32/64 bit? Compiler differences? Luck?
Why can't log mean the same thing everywhere? Why does it need to be
base e here and base 10 there? Why is there no consistency?
And why is there no proper logarithmus dualis function? Because you
can simply do log(n)/log(2)? We've just seen how well this works.
log() - base 10
ln() - base e - logarithmus naturalis
ld() - base 2 - logarithmus dualis
The next obvious question is: Does the inaccuracy reliably result in
values bigger than 11?
Linux-audio-user mailing list