Multiplication of complex conjugate numbers wrong in Octave 3.0.5 mingw32

Benjamin Lindner lindnerben at gmx.net
Sat May 23 09:29:51 CDT 2009


FélixB wrote:
> Hello,
> 
> I get an error when multiplying complex conjugate numbers (see example
> below). The diagonal of the matrix should be real. I have not this error
> with version 3.0.3 (MSVC).
> 
> octave:5> a = rand(10000,2)+j*rand(10000,2);
> octave:6> imag(diag(a'*a))
> ans =
> 
>   -2.6396e-014
>   -2.2185e-014
> 
> Félix
> 

Octave is not a symbolic math tool, it's a numerical math tool.
Thus it uses floating-point arithmetic.
Floating-point arithmetic shows roundoff errors like the ones you 
describe here, it's inherent.
So it's not an error, this is floating point arithmetic.

benjamin


More information about the Bug-octave mailing list