After recompiling octave (default branch) today, I noticed additional test failures in logncdf. See one detailed example below, but in all cases the difference between expected and actual result is below eps. I've made several changes to my setup recently (mainly to re-use more math functions from mingw) and this probably generated those new errors. But what I'm not sure is whether the actual result should be *exactly* as the expected one, or should some tolerance be allowed?
***** assert (logncdf (x, zeros (1,5), sqrt(2)*ones (1,5)), y)
!!!!! test failed
assert (logncdf (x, zeros (1, 5), sqrt (2) * ones (1, 5)),y) expected
0.00000 0.00000 0.50000 0.76025 1.00000
but got
0.00000 0.00000 0.50000 0.76025 1.00000
values do not match
shared variables scalar structure containing the fields:
x =
-1.00000 0.00000 1.00000 2.71828 Inf
y =
0.00000 0.00000 0.50000 0.76025 1.00000
octave.exe:1> x = [-1 0 1 e Inf];
octave.exe:2> y = [0, 0, 0.5, 1/2+1/2*erf(1/2), 1];
octave.exe:3> logncdf (x, zeros (1,5), sqrt(2)*ones (1,5)) - y
ans =
0.0000e+000 0.0000e+000 0.0000e+000 -1.1102e-016 0.0000e+000