0th

Percentile

##### Add multiples of rows to other rows

The elementary row operation rowadd adds multiples of one or more rows to other rows of a matrix. This is usually used as a means to solve systems of linear equations, of the form $A x = b$, and rowadd corresponds to adding equals to equals.

##### Usage
rowadd(x, from, to, mult)
##### Arguments
x

a numeric matrix, possibly consisting of the coefficient matrix, A, joined with a vector of constants, b.

from

the index of one or more source rows. If from is a vector, it must have the same length as to.

to

the index of one or more destination rows

mult

the multiplier(s)

##### Details

The functions rowmult and rowswap complete the basic operations used in reduction to row echelon form and Gaussian elimination. These functions are used for demonstration purposes.

##### Value

the matrix x, as modified

echelon, gaussianElimination

Other elementary row operations: rowmult, rowswap

##### Examples
# NOT RUN {
A <- matrix(c(2, 1, -1,
-3, -1, 2,
-2,  1, 2), 3, 3, byrow=TRUE)
b <- c(8, -11, -3)

# using row operations to reduce below diagonal to 0
Ab <- cbind(A, b)
(Ab <- rowadd(Ab, 1, 2, 3/2))  # row 2 <- row 2 + 3/2 row 1
(Ab <- rowadd(Ab, 1, 3, 1))    # row 3 <- row 3 + 1 row 1
(Ab <- rowadd(Ab, 2, 3, -4))   # row 3 <- row 3 - 4 row 2
# multiply to make diagonals = 1
(Ab <- rowmult(Ab, 1:3, c(1/2, 2, -1)))
# The matrix is now in triangular form

# Could continue to reduce above diagonal to zero
echelon(A, b, verbose=TRUE, fractions=TRUE)

# }

Documentation reproduced from package matlib, version 0.9.2, License: GPL (>= 2)

### Community examples

Looks like there are no examples yet.