View source: R/gaussian-elimination.R
gaussianElimination | R Documentation |
gaussianElimination
demonstrates the algorithm of row reduction used for solving
systems of linear equations of the form A x = B. Optional arguments verbose
and fractions
may be used to see how the algorithm works.
gaussianElimination( A, B, tol = sqrt(.Machine$double.eps), verbose = FALSE, latex = FALSE, fractions = FALSE ) ## S3 method for class 'enhancedMatrix' print(x, ...)
A |
coefficient matrix |
B |
right-hand side vector or matrix. If |
tol |
tolerance for checking for 0 pivot |
verbose |
logical; if |
latex |
logical; if |
fractions |
logical; if |
x |
matrix to print |
... |
arguments to pass down |
If B
is absent, returns the reduced row-echelon form of A
.
If B
is present, returns the reduced row-echelon form of A
, with the
same operations applied to B
.
John Fox
A <- matrix(c(2, 1, -1, -3, -1, 2, -2, 1, 2), 3, 3, byrow=TRUE) b <- c(8, -11, -3) gaussianElimination(A, b) gaussianElimination(A, b, verbose=TRUE, fractions=TRUE) gaussianElimination(A, b, verbose=TRUE, fractions=TRUE, latex=TRUE) # determine whether matrix is solvable gaussianElimination(A, numeric(3)) # find inverse matrix by elimination: A = I -> A^-1 A = A^-1 I -> I = A^-1 gaussianElimination(A, diag(3)) inv(A) # works for 1-row systems (issue # 30) A2 <- matrix(c(1, 1), nrow=1) b2 = 2 gaussianElimination(A2, b2) showEqn(A2, b2) # plotEqn works for this case plotEqn(A2, b2)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.