Documentation Center

  • Trials
  • Product Updates

rref

Reduced row echelon form

Syntax

R = rref(A)
[R,jb] = rref(A)
[R,jb] = rref(A,tol)

Description

R = rref(A) produces the reduced row echelon form of A using Gauss Jordan elimination with partial pivoting. A default tolerance of (max(size(A))*eps *norm(A,inf)) tests for negligible column elements.

[R,jb] = rref(A) also returns a vector jb such that:

  • r = length(jb) is this algorithm's idea of the rank of A.

  • x(jb) are the pivot variables in a linear system Ax = b.

  • A(:,jb) is a basis for the range of A.

  • R(1:r,jb) is the r-by-r identity matrix.

[R,jb] = rref(A,tol) uses the given tolerance in the rank tests.

Roundoff errors may cause this algorithm to compute a different value for the rank than rank, orth and null. Additionally, use mldivide to solve linear systems when high precision is required.

Examples

Use rref on a rank-deficient magic square:

A = magic(4), R = rref(A)

A =
   16    2    3   13
    5   11   10    8
    9    7    6   12
    4   14   15    1

R =
    1    0    0    1
    0    1    0    3
    0    0    1   -3
    0    0    0    0

See Also

| |

Was this topic helpful?