With the help of sympy.Matrix().rref() method, we can put a matrix into reduced Row echelon form. Matrix().rref() returns a tuple of two elements. The first is the reduced row echelon form, and the second is a tuple of indices of the pivot columns.
Syntax: Matrix().rref()
Returns: Returns a tuple of which first element is of type Matrix and second one is of type tuple.
Example #1:
from sympy import *
M = Matrix([[ 1 , 0 , 1 , 3 ], [ 2 , 3 , 4 , 7 ], [ - 1 , - 3 , - 3 , - 4 ]])
print ( "Matrix : {} " . format (M))
M_rref = M.rref()
print ( "The Row echelon form of matrix M and the pivot columns : {}" . format (M_rref))
|
Output:
Matrix : Matrix([[1, 0, 1, 3], [2, 3, 4, 7], [-1, -3, -3, -4]])
The Row echelon form of matrix M and the pivot columns : (Matrix([
[1, 0, 1, 3],
[0, 1, 2/3, 1/3],
[0, 0, 0, 0]]), (0, 1))
Example #2:
from sympy import *
M = Matrix([[ 14 , 0 , 11 , 3 ], [ 22 , 23 , 4 , 7 ], [ - 12 , - 34 , - 3 , - 4 ]])
print ( "Matrix : {} " . format (M))
M_rref = M.rref()
print ( "The Row echelon form of matrix M and the pivot columns : {}" . format (M_rref))
|
Output:
Matrix : Matrix([[14, 0, 11, 3], [22, 23, 4, 7], [-12, -34, -3, -4]])
The Row echelon form of matrix M and the pivot columns : (Matrix([
[1, 0, 0, 1405/4254],
[0, 1, 0, 10/709],
[0, 0, 1, -314/2127]]), (0, 1, 2))