CINXE.COM

Linear Algebra tutorial: Reduced Row Echelon Form (RREF)

<!DOCTYPE html> <html lang="en"> <!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]--> <!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]--> <!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]--> <!--[if gt IE 8]> <html class="no-js"> <![endif]--> <head> <meta charset="utf-8"> <title>Linear Algebra tutorial: Reduced Row Echelon Form (RREF)</title> <meta name="description" content="Linear algebra tutorial with online interactive programs"> <meta name="keywords" content="linear algebra, matrix, vector, interactive program, tutorial, Matrix size, Vector Size, Vector Algebra, What is Vector,Vector Norm, Unit Vector, Vector Addition, Vector Subtraction, Vector Scalar Multiple, Vector Multiplication, Vector Inner Product, Vector Outer Product, Vector Cross Product, Vector Triple Cross Product, Vector Triple Dot Product, Orthogonal vector, Orthonormal Vector, Vector Cos Angle, Scalar proection, vector Projection, Matrix Algebra, what is a matrix, why do we need matrix, special Matrices, Matrix One, matrix zero, Null Matrix, Matrix Diagonal, Diagonal Matrix, Identity Matrix, Matrix Special Properties, Matrix Determinant, Matrix Sum, Matrix Trace, Matrix Basic Operation, Is Equal Matrix, Matrix Transpose, Matrix Addition, Matrix Subtraction, Matrix Multiplication, Matrix Scalar Multiple, Matrix Element-wise product, Hadamard Product, Matrix Horizontal Concatenation, Matrix Vertical Concatenation, Elementary Row Operations, RREF, Finding inverse using RREF,Gauss-Jordan, Finding Matrix Rank using RREF, Matrix Inverse, Is Singular Matrix, Linear Transformation, Matrix Generalized Inverse, Left Inverse, Right Inverse, Moore Penrose Inverse, Solving System of Linear Equations, Linear combination, Span, Basis Vector, Linearly Dependent, Linearly Independent, Change of basis, Coordinate system, Matrix Rank, Matrix Range, Matrix Nullity, Null Space, Eigen System, Eigen Value, Eigen Vector, Symmetric Matrix, Matrix Eigen Value & Eigen Vector for Symmetric Matrix, Jacobi method, Similarity, Matrix Diagonalization, Matrix Power, matrix Exponent, Orthogonal Matrix, Spectral Decomposition, Schur decomposition, Singular Value Decomposition, SVD, Special Type Matrices, Positive Matrix, Non-Negative Matrix, Skew Symmetric matrix, Positive Semi-Definite matrix, Matrix Decomposition, LU Decomposition, UDU Decomposition, Matrix Singular Value Decomposition, Condition Number, ill-condition matrix, Frobenious norm."> <meta name="author" content="Kardi Teknomo"> <!-- Mobile viewport --> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"> <link rel="shortcut icon" href="https://people.revoledu.com/kardi/images/favicon.ico" type="image/x-icon"> <!-- CSS--> <!-- Google web fonts. You can get your own bundle at http://www.google.com/fonts. Don't forget to update the CSS accordingly!--> <link href='https://fonts.googleapis.com/css?family=Droid+Serif' rel='stylesheet' type='text/css'> <link rel="stylesheet" href="https://people.revoledu.com/kardi/css/normalize.css"> <link rel="stylesheet" href="https://people.revoledu.com/kardi/js/flexslider/flexslider.css"> <link rel="stylesheet" href="https://people.revoledu.com/kardi/css/colorblocks-style.css"> <!-- end CSS--> <!-- JS--> <script src="https://people.revoledu.com/kardi/js/libs/modernizr-2.6.2.min.js"></script> <!-- end JS--> </head> <body id="home"> <!-- header area --> <header class="wrapper clearfix"> <div id="banner"> <div id="logo"><a href="https://people.revoledu.com/kardi/"><img src="https://people.revoledu.com/kardi/images/basic-logo.jpg" alt="logo"></a></div> </div> <!-- main navigation --> <nav id="topnav"> <div class="menu-toggle">Menu</div> <ul class="srt-menu" id="menu-main-navigation"> <li class="current"><a href="https://people.revoledu.com/kardi/">Home page</a></li> <li><a href="https://people.revoledu.com/kardi/research/index.html">Research</a> <ul> <li> <a href="https://people.revoledu.com/kardi/research/index.html">List</a> </li> <li> <a href="https://people.revoledu.com/kardi/publication/index.html">Publication</a> </li> <li> <a href="https://people.revoledu.com/kardi/publication/ResearchCollaborationGuide.html">Research Collaboration Guide</a> </li> </ul> </li> <li><a href="https://people.revoledu.com/kardi/tutorial/index.html">Tutorial</a> <ul> <li> <a href="https://people.revoledu.com/kardi/tutorial/index.html">Free Online Tutorials</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/AHP/purchase.html">Analytic Hierarchy Process</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/DecisionTree/purchase.html">Decision Tree</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/EM/purchase.html">Gaussian Mixture Model and EM Algorithm</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/Clustering/purchase.html">Hierarchical Clustering</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/kMean/purchase.html">K Means Clustering</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/KNN/purchase.html">K Nearest Neighbor</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/MarketBasket/purchase.html">Market Basket Analysis</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/NeuralNetwork/purchase.html">Neural Network</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/Queuing/purchase.html">M/M/s Queuing Spreadsheet</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/ReinforcementLearning/purchase.html"> Q-Learning</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/SVM/purchase.html">Support Vector Machines</a> </li> </ul> </li> <li><a href="https://people.revoledu.com/kardi/resources/index.html">Software</a> <ul> <li> <a href="https://people.revoledu.com/kardi/resources/index.html">Interactive Programs</a> </li> <li> <a href="https://people.revoledu.com/kardi/research/pedestrian/MicroPedSim/download.htm">Micro-PedSim</a> </li> </ul> <li><a href="https://people.revoledu.com/kardi/Service/index.html">Service</a></li> <li><a href="https://people.revoledu.com/kardi/Idea/index.html">Blog</a> <ul> <li> <a href="https://people.revoledu.com/kardi/Idea/JewelsMorningDew.html">Jewels of Morning Dew</a> </li> </ul> </li> <li><a href="https://people.revoledu.com/kardi/personal/contact.htm">About</a> <ul> <li> <a href="https://people.revoledu.com/kardi/personal/cv/index.html">Resume</a> </li> <li> <a href="https://people.revoledu.com/kardi/faq.htm">Frequently Asked Questions</a> </li> <li> <a href="https://people.revoledu.com/kardi/personal/contact.htm">Contact</a> </li> <li> <a href="https://people.revoledu.com/kardi/Donation.htm">Donate</a> </li> <li> <a href="https://people.revoledu.com/kardi/tutorial/Link2Us.htm">Link to Us</a> </li> <li> <a href="https://people.revoledu.com/kardi/copyright.html">Terms of Use</a> </li> </ul> </li> </ul> </nav><!-- #topnav --> </header><!-- end header --> <!-- hero area (the grey one with a slider --> <section id="page-header" class="clearfix"> <div class="wrapper"> <h1 id="article-title">Reduced Row Echelon Form (RREF)</h1> </div> </section><!-- end hero area --> <!-- main content area --> <div id="main" class="wrapper clearfix"> <!-- content area --> <section id="content"> <main> <p> <a href="../../copyright.html"> By Kardi Teknomo, PhD </a> . <br/> <a href="index.html"> <img alt="LinearAlgebra" height="48" src="../image/LinearAlgebra.gif" width="50"/> </a> </p> <p> <span class="AgExposeTop"> </span> &lt; <a href="MatrixInverseRREF.html"> Next </a> | <a href="ElementaryRowOperation.html"> Previous </a> | <a href="index.html"> Index </a> &gt; <br/> <span class="AgNavTop"> </span> </p> <h2>Reduce Row Echelon Form (RREF)</h2> <p> There is a standard form of a row equivalent matrix that if we do a sequence of <a href="ElementaryRowOperation.html"> row elementary operations </a> to reach this standard form, we may gain the solution of the linear system. The standard form is called <strong> Reduced Row Echelon Form </strong> of a matrix, or matrix RREF in short. </p> <p> An m by n matrix is called to be in reduced row echelon form when it satisfies the following conditions: <br> 1. All zero rows, if any, are at the bottom of the matrix. <br> 2. Reading from left to right, the first non zero entry in each row that does not consist entirely of zeros is a 1, called the leading entry of its row. <br> 3. If two successive rows do not consist entirely of zeros, the second row starts with more zeros than the first (the leading entry of second row is to the right of the leading entry of first row). <br> 4. All other elements of the column in which the leading entry 1 occurs are zeros. <br> <br> <br> <br> </p> <p> When only the first three conditions are satisfied, the matrix is called in <strong> Row Echelon Form </strong> (REF). </p> <p> Using Reduced Row Echelon Form of a matrix we can calculate <a href="MatrixInverseRREF.html"> matrix inverse </a> , <a href="MatrixRankRREF.html"> rank of matrix </a> , and <a href="SolvingSystemLinearEquations.html"> solve simultaneous linear equations </a> . </p> <p> <a id="RREF"> </a> You will find that the educational program below is awesome. The interactive program gives many examples to compute the Reduced Row Echelon Form of a matrix input using the three row elementary operations. The computation will show you <strong> step by step </strong> through both REF and RREF. </p> <p> <strong> How to use? </strong> </p> <p> Simply click Random Example button to create new random input matrix, then click Matrix RREF button to get the whole sequence of elementary row operations from the input matrix up to the RREF. The results can be in either rational or decimal format. The rational output is an approximation of the decimal format. <br> <br> </p> <form> <textarea cols="45" id="txtInputA" name="txtInputA" rows="9"> 3,2,2,3,1; 6,4,4,6,2; 9,6,6,9,1; </textarea> <br/> <input id="btnRun" name="btnRun" onClick="Run('matrixRREF', txtInputA.value,isRationalFormat.checked)" type="button" value="Matrix RREF"/> <input id="btnRandomExample" name="btnRandomExample" onClick="Example()" type="button" value="Random Example"/> <input id="isRationalFormat" name="isRationalFormat" type="checkbox"/> Report in rational format <div id="divResult"> </div> </form> <p> Yes, this program is a free educational program!! Please don't forget to tell your friends and teacher about this awesome program! </p> <p> See also: <a href="ElementaryRowOperation.html"> elementary row operations </a> , <a href="MatrixInverseRREF.html"> matrix inverse using Gauss Jordan </a> , <a href="MatrixRankRREF.html"> rank of matrix through RREF </a> , and <a href="SolvingSystemLinearEquations.html"> solving simultaneous linear equations </a> . </p> <p> &lt; <a href="MatrixInverseRREF.html"> Next </a> | <a href="ElementaryRowOperation.html"> Previous </a> | <a href="index.html"> Index </a> &gt; <br/> <span class="AgNavBottom"> </span> </p> <p> <a href="../../Comment/Comment.php?tutorial=LinearAlgebra&amp;action=Add"> Rate this tutorial or give your comments about this tutorial </a> </p> <p> <a href="../../copyright.html"> This tutorial is copyrighted </a> . </p> </main> </section><!-- #end content area --> </div><!-- #end div #main .wrapper --> <!-- footer area --> <footer> <div id="epilogue" class="wrapper"> Copyright &copy; 2017 Kardi Teknomo </div> <div id="attribution" class="wrapper clearfix" style="color:#fff; font-size:11px;">Revoledu Design</div> </footer><!-- #end footer area --> <!-- jQuery --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> <script>window.jQuery || document.write('<script src="js/libs/jquery-1.9.0.min.js">\x3C/script>')</script> <script defer src="https://people.revoledu.com/kardi/js/flexslider/jquery.flexslider-min.js"></script> <!-- fire ups - read this file! --> <script src="https://people.revoledu.com/kardi/js/main.js"></script> <!-- Inline JS--> <script type="text/javascript"> function Run(strAction, strDataA, isRational) { xmlhttp=Request2Server(); xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) msg=xmlhttp.responseText; else msg="Calculating ...."; document.getElementById("divResult").innerHTML=msg; }; xmlhttp.open("GET","ControllerMatrix.php?a="+strAction+"&x="+strDataA+"&rat="+isRational,true); xmlhttp.send(); }; function Example() { document.getElementById("divResult").innerHTML=""; // setting the example var mR=Math.round(Math.random()*6+1); var mC=Math.round(Math.random()*6+1); var maxVal=Math.round(Math.random()*25-3); var strAction='matrixRandomExample'; var strDataA=Array(mR, mC, -3, maxVal, true); // get first matrix var xmlhttp=Request2Server(); xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) msg=xmlhttp.responseText; else msg="Calculating ...."; document.getElementById("txtInputA").value=msg; }; xmlhttp.open("GET","ControllerMatrix.php?a="+strAction+"&x="+strDataA,true); xmlhttp.send(); }; function Request2Server() { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0", "MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"); // try every prog id until one works for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++) { try { // try to create XMLHttpRequest object xmlHttp = new ActiveXObject(XmlHttpVersions[i]); } catch (e) {}; } } return xmlhttp; }; </script> <!-- end of Inline JS--> <script src="https://people.revoledu.com/kardi/js/GoogleAnalytic.js"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10