rank rank

## Syntax

    [i]=rank(X)
                [i]=rank(X,tol)

## Arguments

X

  real or complex matrix

tol

  nonnegative real number

## Description

`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`.

`rank([])` returns 0.

The default value of `tol` is proportional to `norm(X)`. As a consequence `rank([1.d-80,0;0,1.d-80])` is 2 !.

## Examples

    rank([1.d-80,0;0,1.d-80])
    rank([1,0;0,1.d-80])

## See also

- svd
- qr
- rowcomp
- colcomp
- lu