Performs Gaussian column reduction on a matrix M, retaining only the linearly independent columns.
i1 : M = matrix {{1., 2, 3}, {2, 4, 0}} o1 = | 1 2 3 | | 2 4 0 | 2 3 o1 : Matrix RR <--- RR 53 53 |
i2 : colReduce(M, 0.01) o2 = | 1 0 | | 0 1 | 2 2 o2 : Matrix RR <--- RR 53 53 |
Entries with absolute value below the tolerance are treated as zero and not used as pivots.
i3 : N = matrix {{0.001, 0, 0}, {1, 1, 3}, {2, 2, 5.999}} o3 = | .001 0 0 | | 1 1 3 | | 2 2 5.999 | 3 3 o3 : Matrix RR <--- RR 53 53 |
i4 : colReduce(N, 0.01) o4 = | 0 | | 1 | | 1.99967 | 3 1 o4 : Matrix RR <--- RR 53 53 |