Let σ1,...,σn be the singular values of M. To establish numerical rank we look for the first large gap between two consecutive singular values. The gap between σi and σi+1 is large if σi/σi+1 > Threshold.
i1 : numericalRank matrix {{2,1},{0,0.001}} o1 = 1 |