Contains the Matrix class, which encodes basic matrices of any size in linear algebra.
Author: Zach / cszach@proton.me
object
number
Array.<number>
Array.<Array>
Array.<Array>
Array.<number>
Matrix
boolean
number
Array.<number>
Array.<number>
number
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
function
function
function
Low-level, speed-prioritized class that encodes matrices and their operations. A matrix is encoded by storing its elements - in row-major order for lnagb.js - and its dimensions (see instance properties elements and size).
This class should be used to work with large matrices of arbitrary dimensions. For small matrices, see module:Matrix1~Matrix1, Matrix2, Matrix3, Matrix4, module:Matrix2x3~Matrix2x3, module:Matrix3x2~Matrix3x2.
Kind: inner class of Matrix
object
number
Array.<number>
Array.<Array>
Array.<Array>
Array.<number>
Matrix
boolean
number
Array.<number>
Array.<number>
number
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
function
function
function
Constructs a new Matrix
instance, which encodes a matrix. To create a
zero matrix, leave entries
undefined
. To create an identity matrix,
see IdentityMatrix.
Param | Type | Description |
---|---|---|
nRows | number |
Number of rows in the new matrix. |
nColumns | number |
Number of columns in the matrix. |
entries | Array.<number> |
Entries of the matrix in row-major order. |
object
Contains the dimensions of this matrix as an object in the
form { rows, columns }
.
Kind: instance property of Matrix
number
The number of entries in this matrix.
Kind: instance property of Matrix
Array.<number>
Stores the elements of this matrix in row-major order.
Kind: instance property of Matrix
Array.<Array>
Returns the rows of this matrix in an array.
Kind: instance property of Matrix
Returns: Array.<Array>
- The rows in this matrix
Array.<Array>
Returns the columns of this matrix in an array.
Kind: instance property of Matrix
Returns: Array.<Array>
- The columns in this matrix
Array.<number>
Returns the main diagonal of this matrix.
Kind: instance property of Matrix
Returns: Array.<number>
- The entries in the main diagonal of this matrix
Matrix
Creates and returns a clone of this matrix instance.
Kind: instance method of Matrix
Returns: Matrix
- A clone of this instance
boolean
Checks if this matrix and another matrix are equal.
Kind: instance method of Matrix
Returns: boolean
- true
if the two matrices are equal, false
otherwise
Param | Type | Description |
---|---|---|
matrix | Matrix |
The matrix to compare this matrix to. |
number
Returns the entry in the specified row and column in this matrix.
Kind: instance method of Matrix
Returns: number
- The entry
Param | Type | Description |
---|---|---|
i | number |
The row that contains the entry (1-indexed). |
j | number |
The column that contains the entry (1-indexed). |
Array.<number>
Returns a row in this matrix as a JavaScript array.
Kind: instance method of Matrix
Returns: Array.<number>
- The row’s entries
Param | Type | Description |
---|---|---|
r | number |
Row number (1-indexed). |
Array.<number>
Returns a column in this matrix as a JavaScript array.
Kind: instance method of Matrix
Returns: Array.<number>
- The column’s entries
Param | Type | Description |
---|---|---|
c | number |
Column number (1-indexed). |
number
Returns the leading coefficient of a row, or undefined
if the row does
not have a leading coefficient.
Kind: instance method of Matrix
Returns: number
- The leading coefficient of the row
Param | Type | Description |
---|---|---|
r | number |
Row number (1-indexed). |
Executes a function for each entry in this matrix. Entries are iterated in row-major order.
Kind: instance method of Matrix
Param | Type | Description |
---|---|---|
callback | forEach |
The function to execute per iteration. |
thisArg | object |
The argument to use as this in the function. |
Executes a function for each row in this matrix.
Kind: instance method of Matrix
Param | Type | Description |
---|---|---|
callback | forEachRow |
The function to execute per iteration. |
thisArg | object |
The argument to use as this in the function. |
Executes a function for each column in this matrix.
Kind: instance method of Matrix
Param | Type | Description |
---|---|---|
callback | forEachColumn |
The function to execute per iteration. |
thisArg | object |
The argument to use as this in the function. |
Matrix
Intercharges two rows in this matrix.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Param | Type | Description |
---|---|---|
r | number |
First row number (1-indexed). |
s | number |
Second row number (1-indexed). |
Matrix
Multiplies a row in this matrix by a nonzero scalar.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Param | Type | Description |
---|---|---|
r | number |
Row number (1-indexed). |
k | number |
The nonzero scalar to multiply the row by. |
Matrix
Adds multiples of a row to another row in this matrix.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Param | Type | Default | Description |
---|---|---|---|
r | number |
The row that gets added (1-indexed position). | |
s | number |
The row to multiply the scalar by and then add to row r (1-indexed position). |
|
k | number |
1 |
The scalar to multiply row s by. |
Matrix
Transposes this matrix in place.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Todo
Matrix
Multiplies this matrix by a scalar.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Param | Type | Description |
---|---|---|
k | number |
The scalar to multiply this matrix by. |
Matrix
Multiplies this matrix by -1.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Matrix
Adds a matrix to this matrix.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Param | Type | Description |
---|---|---|
matrix | Matrix |
The matrix to add to this matrix. |
Matrix
Subtracts a matrix from this matrix.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Param | Type | Description |
---|---|---|
matrix | Matrix |
The matrix to subtract this matrix to. |
Matrix
Multiplies this matrix by another matrix. If the input matrix is not compatible for multiplication, return this matrix unchanged.
Kind: instance method of Matrix
Returns: Matrix
- This matrix
Param | Type | Description |
---|---|---|
matrix | Matrix |
The matrix to post-multiply this matrix to. |
function
Kind: inner typedef of Matrix
Param | Type | Description |
---|---|---|
entry | number |
The current entry being processed. |
i | number |
The entry’s row number (1-indexed). |
j | number |
The entry’s column number (1-indexed). |
index | number |
The index of the entry in this.elements (0-indexed). |
matrix | Matrix |
The instance that this method was called upon. |
function
Kind: inner typedef of Matrix
Param | Type | Description |
---|---|---|
row | Array.<number> |
The row being processed (with its entries). |
r | number |
The row’s number (1-indexed). |
matrix | Matrix |
The instance that this method was called upon. |
function
Kind: inner typedef of Matrix
Param | Type | Description |
---|---|---|
column | Array.<number> |
The column being processed. |
c | number |
The’s column number (1-indexed). |
matrix | Matrix |
The instance that this method was called upon. |