Hi all,

I was quite surprised that the backslash operator used with a square singular matrix does not yield any warning in Scilab.

For instance,

// Singular matrix
A = [2 4;1 2];
disp(det(A))
b = [1;1];
x = A \ b;
disp(norm(A*x-b));

And indeed, in the online help https://help.scilab.org/docs/5.5.2/en_US/backslash.html (not as clear in the embedded french version though), it is stated that if the condition number of A is too small, then a least-square solution is computed.

Wouldn't it be "safer" to display a warning in this case (like in Matlab)? While I agree that one should check if a matrix is singular before trying to invert it, a warning may save some time in a code prototyping phase.

Besides, the behaviour of linear solvers is not consistent : umfpack produces an error and linsolve returns an empty solution x.


Best regards,

Pierre Vuillemin


_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users

Reply via email to