Rank

getRankLUSOL(A, printLevel)[source]

Get the rank of a matrix using treshold rook pivoting. Uses lusolFactor computes the sparse factorization \(A = L U\) for a square or rectangular matrix A. The vectors p, q are row and column permutations giving the pivot order.

Usage

[rankA, p, q] = getRankLUSOL(A, printLevel)

Input

  • Am x n rectangular matrix

Optional input

  • printLevel – default = 0

Outputs

  • rankA – rank of A

  • p – row permutations giving the pivot order

    Note: p(1:rankA) gives indices of independent rows p(rankA+1:size(A, 1)) gives indices of dependent rows

  • q – column permutations giving the pivot order

    Note: q(1:rankA) gives indices of independent columns q(rankA+1:size(A, 2)) gives indices of dependent columns

Note

Requires a 64 bit implementation of lusol, available from https://github.com/nwh/lusol