public int rank() { double eps = Math.Pow(2.0,-52.0); double tol = m_*s_[0]*eps; int r = 0; for (int i = 0; i < s_.size(); i++) { if (s_[i] > tol) { r++; } } return r; }