rank - rank
rank(X) is the numerical rank of X i.e. the number of singular values of X that are larger than norm(size(X),'inf') * norm(X) * %eps .
rank(X,tol) is the number of singular values of X that are larger than tol .
Note that the default value of tol is proportional to norm(X) . As a consequence rank([1.d-80,0;0,1.d-80]) is 2 !.
rank([1.d-80,0;0,1.d-80]) rank([1,0;0,1.d-80])