Add two matrices, M1 and M2, together.
| Parameters | M1 : Array First matrix. M2 : Array Second matrix. | 
|---|---|
| Returns | M : Array Addition of M1, M2. | 
| Errors | An error is thrown if: 
 | 
Perform an affine transformation 2D vector, v, by factors tx and ty.
| Parameters | v : Array A 2D vector. tx : Number The x-factor. ty : Number The y-factor. | 
|---|---|
| Returns | Vaff : Array Affined v. | 
| Errors | An error is thrown if: 
 | 
Create a deep copy of a matrix, M.
| Parameters | M : Array The matrix to copy. | 
|---|---|
| Returns | Mnew : Array Deep copy of M. | 
| Errors | An error is thrown if: 
 | 
Calculates the determinant of a square matrix, M.
| Parameters | M : Array A square matrix. | 
|---|---|
| Returns | num : Number The determinant of M. | 
| Errors | An error is thrown if: 
 | 
Calculate the dot product of two vectors, vA and vB.
| Parameters | vA : Array First vector. vB : Array Second vector. | 
|---|---|
| Returns | num : Array Dot product of vA,vB. | 
| Errors | An error is thrown if: 
 | 
Performs Gauss-Jordan elimination on the matrix M with an error bound of eps. eps is an optional argument.
| Parameters | M : Array A matrix. eps : Number The error bound. | 
|---|---|
| Returns | Mnew : Array The row-reduced version of M. | 
| Errors | This function does not raise any errors. | 
Gets the nth column of a matrix, M as a vector.
| Parameters | M : Array A matrix. | 
|---|---|
| Returns | col : Array nth column of M. | 
| Errors | An error is thrown if: 
 | 
Creates a n-by-n identity matrix.
| Parameters | n : Int The size of the identity matrix. | 
|---|---|
| Returns | M : Array Identity matrix of size n. | 
| Errors | This function does not raise any errors. | 
Calculates the inverse of a square matrix M.
| Parameters | M : Array A square matrix. | 
|---|---|
| Returns | Mnew : Array The inverse of M. | 
| Errors | An error is thrown if: 
 | 
Determines if a matrix, M, is (weak) column diagonally dominant.
| Parameters | M : Array The matrix to test. | 
|---|---|
| Returns | bool : Boolean true if M is column diagonally dominant, false otherwise. | 
| Errors | An error is thrown if: 
 | 
Determines if a matrix, M, is (weak) row diagonally dominant.
| Parameters | M : Array The matrix to test. | 
|---|---|
| Returns | bool : Boolean true if M is row diagonally dominant, false otherwise. | 
| Errors | An error is thrown if: 
 | 
Determines if a matrix, M, is square.
| Parameters | M : Array The matrix to test. | 
|---|---|
| Returns | bool : Boolean true if M is square, false otherwise. | 
| Errors | An error is thrown if: 
 | 
Determines if a matrix, M, is strictly column diagonally dominant.
| Parameters | M : Array The matrix to test. | 
|---|---|
| Returns | bool : Boolean true if M is strictly column diagonally dominant, false otherwise. | 
| Errors | An error is thrown if: 
 | 
Determines if a matrix, M, is strictly row diagonally dominant.
| Parameters | M : Array The matrix to test. | 
|---|---|
| Returns | bool : Boolean true if M is strictly row diagonally dominant, false otherwise. | 
| Errors | An error is thrown if: 
 | 
Calculates the LUP decomposition of a square matrix, M. An array containing the three matrices is returned.
| Parameters | M : Array A square matrix. | 
|---|---|
| Returns | LUP : Array An array containing L, U, P. | 
| Errors | An error is thrown if: 
 | 
Applies a function, f, to every element in the matrix (or vector) M. f can only take one parameter.
| Parameters | M : Array A matrix or vector f : Function A one-parameter function. | 
|---|---|
| Returns | Mmapped : Array A copy of M, but with f applied to each element. | 
| Errors | This function does not raise any errors. | 
Multiply two matrices, M1 and M2, together.
| Parameters | M1 : Array First matrix. M2 : Array Second matrix. | 
|---|---|
| Returns | M : Array Multiplication of M1, M2. | 
| Errors | An error is thrown if: 
 | 
Calculate the outer product of two vectors, vA and vB.
| Parameters | vA : Array First vector. vB : Array Second vector. | 
|---|---|
| Returns | M : Array Outer product of vA,vB. | 
| Errors | An error is thrown if: 
 | 
Reorders the columns of a matrix M as specified by a set of column indices, L.
| Parameters | M : Array The matrix to reorder. L : Array The set of column indices. | 
|---|---|
| Returns | Mnew : Array Reordered M. | 
| Errors | An error is thrown if: 
 | 
Reorders the rows of a matrix M as specified by a set of integers, L.
| Parameters | M : Array The matrix to reorder. L : Array The set of row indices. | 
|---|---|
| Returns | Mnew : Array Reordered M. | 
| Errors | An error is thrown if: 
 | 
Reverses the order the of columns of a matrix M.
| Parameters | M : Array The matrix to reverse. | 
|---|---|
| Returns | Mnew : Array Reversed M. | 
| Errors | This function does not raise any errors. | 
Reverses the order the of rows of a matrix M.
| Parameters | M : Array The matrix to reverse. | 
|---|---|
| Returns | Mnew : Array Reversed M. | 
| Errors | This function does not raise any errors. | 
Rotate a 2D vector, v, by angle degrees in a direction dir. dir is an optional argument.
| Parameters | v : Array A 2D vector. angle : Number An angle in degrees. dir : String A direction. Options are clockwise and counterclockwise. 
            Default value is counterclockwise. | 
|---|---|
| Returns | Vnew : Array Rotated v. | 
| Errors | An error is thrown if: 
 | 
Add the multiple of a row, scale*fromRow, to another row, toRow, both of matrix M.
| Parameters | M : Array A matrix. fromRow : Int Row to be multiplied. toRow : Int Row to be added to. scale : Number Scaling factor. | 
|---|---|
| Returns | Mnew : Array Altered M. | 
| Errors | This function does not raise any errors. | 
Row-reduces the matrix M with an error bound of eps. eps is an optional argument. Identical to matrix.GaussJordanElimination.
| Parameters | M : Array A matrix. eps : Number The error bound. | 
|---|---|
| Returns | Mnew : Array The row-reduced version of M. | 
| Errors | This function does not raise any errors. | 
Scale row row of a matrix M by a factor k.
| Parameters | M : Array A matrix. row : Int The row number. k : Number Scaling factor. | 
|---|---|
| Returns | Mnew : Array Scaled M. | 
| Errors | This function does not raise any errors. | 
Switch rows row1 and row2 of a matrix M with each other.
| Parameters | M : Array A matrix. row1 : Int First row number. row2 : Int Second row number. | 
|---|---|
| Returns | Mnew : Array Swapped M. | 
| Errors | This function does not raise any errors. | 
Multiply a matrix, M, by a scalar, a.
| Parameters | M : Array The matrix to multiply. a : Number The scalar value. | 
|---|---|
| Returns | M : Array Multiplication of a, M1. | 
| Errors | This function does not raise any errors. | 
Scale a 2D vector, v, by scale factors x and y.
| Parameters | v : Array A 2D vector. x : Number The x-scaling. y : Number The y-scaling. | 
|---|---|
| Returns | Vsca : Array Scaled v. | 
| Errors | An error is thrown if: 
 | 
Shear a 2D vector, v, by a shear factor k in a direction (x or y) dir.
| Parameters | v : Array A 2D vector. k : Number The shear factor. dir : String A direction. Options are 'xaxis' and 'yaxis'. | 
|---|---|
| Returns | Vsh : Array Sheared v. | 
| Errors | An error is thrown if: 
 | 
Subtract two matrices, M1 and M2, from one another.
| Parameters | M1 : Array First matrix. M2 : Array Second matrix. | 
|---|---|
| Returns | M : Array Subtraction of M2 from M1. | 
| Errors | An error is thrown if: 
 | 
Calculates the trace of a square matrix, M.
| Parameters | M : Array A square matrix. | 
|---|---|
| Returns | tr : Number The trace of M. | 
| Errors | An error is thrown if: 
 | 
Creates a n-by-m matrix filled with zeros.
| Parameters | n : Int Number of rows. m : Int Number of columns. | 
|---|---|
| Returns | M : Array A matrix of zeros. | 
| Errors | An error is thrown if: 
 | 
Creates a n-by-n zigzag matrix starting at a corner, point, and moving in an initial direction dir.
| Parameters | n : Int Dimension of zigzag matrix. point : String Corner to start at. Options are top-left ('TR'), top-right ('TR'), 
            bottom-left ('BL') and bottom-right ('BR'). dir : String Direction to start iterating. Options are vertical ('v') or 
            horizontal ('H'). | 
|---|---|
| Returns | M : Array A zigzag matrix. | 
| Errors | An error is thrown if: 
 |