Hi,
I run Suse 11.2 x86_64 and have octave 3.2.3 installed via Yast.
My problem is that the following code produces a wrong result:
A = [0.432532-0.056517i 0.072938-0.609413i -0.117384+0.314781i -0.108213+0.131127i 0.055907+0.214591i;
-0.071880+0.727733i -0.297478+0.210593i 0.255673-0.524515i
0.774733-0.396762i -0.161286+0.557317i;
-0.975402-0.377971i -0.202570+0.104277i 0.343174+0.178492i
0.109828+0.743216i -0.667273-0.802313i;
1.071810-0.082054i -0.829977+0.080622i 0.704202-0.060960i
-0.443451-1.162670i 0.783623-0.870160i;
0.841014-0.074902i 0.369791-0.393648i -0.284082+0.668861i
0.999606-0.725603i 1.120100 + 0.071331i];
= svd(A);
printf("norm(A - U*S*V') with = svd(A) ");
norm(A - U*S*V')
Of course the result should be something close to zero. But on my
computer it is: ans = 3.1069
The 32 bit version seems to work. So, this might be a bug in the Suse 64 bit LAPACK package, because this could be reproduced (see: SourceForge.net: IT++: Topic: SVD test fails)
Can you confirm this?