octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Status of FLTK on MacOS X


From: Ben Abbott
Subject: Re: Status of FLTK on MacOS X
Date: Tue, 05 Jan 2010 08:06:14 -0500

On Jan 5, 2010, at 1:46 AM, John W. Eaton wrote:

> On  4-Jan-2010, Ben Abbott wrote:
> 
> | I discovered some typos in my build process.  With those fixed, I have one 
> failure.
> | 
> |     >>>>> processing 
> /Users/bpabbott/Development/mercurial/local_clone/src/data.cc
> |       ***** assert(log2(complex(0,Inf)), Inf + log2(i));
> |     !!!!! test failed
> |     assert (log2 (complex (0, Inf)),Inf + log2 (i)) expected
> |     Inf + 2.266i
> |     but got
> |     Inf - NaNi
> |     NaNs don't match
> 
> I think we discussed this problem on one of the lists recently.  It
> happens with GCC if you compile without optimization.

Unfortunately, once I get to -O2 with Apple's variant of gcc 4.2 ...

octave:12> info = struct (zeros (0, 1), {"name", "date", "bytes", "isdir", 
"datenum", "statinfo"})
info =
{
  0x1 struct array containing the fields:

    name
    date
    bytes
    isdir
    datenum
    statinfo
}

octave:13> info(554,1).name = 'zfstream.h'
error: invalid assignment to cs-list outside multiple assign

> 
> | About half the time I run fntests.m from the command line it
> | passes. I occasionally get a failure when testing chol.cc
> | (increasing the error tolerance would fix that).
> 
> Which test fails, and which tolerance should be increased?
> 

I have trouble with the single precision tests.

%!test
%! u2 = single ([  0.35080 ;
%!                 0.63930 ;
%!                 3.31057 ;
%!                -0.13825 ;
%!                 0.45266 ]);
%!
%! R = chol(single(A));
%! 
%! j = 3; p = [1:j-1, j+1:5];
%! R1 = cholinsert(R,j,u2); A1 = R1'*R1;
%! 
%! assert(norm(triu(R1)-R1,Inf) == 0)
%! assert(norm(A1(p,p) - A,Inf) < 1e1*eps('single'))
%! 
%!test
%! u2 = single ([  0.35080  + 0.04298i;
%!                 0.63930  + 0.23778i;
%!                 3.31057  + 0.00000i;
%!                -0.13825  + 0.19879i;
%!                 0.45266  + 0.50020i]);
%!
%! R = chol(single(Ac));
%! 
%! j = 3; p = [1:j-1, j+1:5];
%! R1 = cholinsert(R,j,u2); A1 = R1'*R1;
%! 
%! assert(norm(triu(R1)-R1,Inf) == 0)
%! assert(norm(A1(p,p) - single(Ac),Inf) < 1e1*eps('single'))

I'd planned to increase the tolerance after running some tests and determining 
the error's mean and std.

Ben



reply via email to

[Prev in Thread] Current Thread [Next in Thread]