Matrix

Manipulate matrices efficiently for linear transformations.

Matrix functions are essential for handling multidimensional data structures and linear transformations. Calcul.io includes functions for matrix addition, multiplication, inversion, determinant calculation, and eigenvalue computation. These functions are fundamental in fields like physics, computer graphics, and data analysis.

Our matrix functions provide robust tools for manipulating matrices of various sizes and types. Whether you are solving systems of linear equations, performing image transformations, or conducting numerical simulations, Calcul.io offers the matrix operations necessary to achieve accurate and efficient results in your matrix-related computations.

column

Return a column from a matrix or array.

concat

Concatenate matrices. By default, the matrices are concatenated by the last dimension. The dimension on which to concatenate can be provided as last argument.

count

Count the number of elements of a matrix, array or string.

cross

Calculate the cross product for two vectors in three dimensional space.

ctranspose

Complex Conjugate and Transpose a matrix

det

Calculate the determinant of a matrix

diag

Create a diagonal matrix or retrieve the diagonal of a matrix. When x is a vector, a matrix with the vector values on the diagonal will be returned. When x is a matrix, a vector with the diagonal values of the matrix is returned. When k is provided, the k-th diagonal will be filled in or retrieved, if k is positive, the values are placed on the super diagonal. When k is negative, the values are placed on the sub diagonal.

diff

Create a new matrix or array with the difference of the passed matrix or array.

Dim parameter is optional and used to indicant the dimension of the array/matrix to apply the difference

If no dimension parameter is passed it is assumed as dimension 0

Dimension is zero-based in javascript and one-based in the parser

Arrays must be 'rectangular' meaning arrays like [1, 2]

If something is passed as a matrix it will be returned as a matrix but other than that all matrices are converted to arrays

dot

Calculate the dot product of two vectors. The dot product of A = [a1, a2, a3, ..., an] and B = [b1, b2, b3, ..., bn] is defined as dot(A, B) = a1 * b1 + a2 * b2 + a3 * b3 + ... + an * bn

eigs

Calculate the eigenvalues and optionally eigenvectors of a square matrix

fft

Calculate N-dimensional fourier transform

filter

Filter items in a matrix.

flatten

Flatten a multi dimensional matrix into a single dimensional matrix.

forEach

Iterates over all elements of a matrix/array, and executes the given callback function.

getMatrixDataType

Find the data type of all elements in a matrix or array, for example "number" if all items are a number and "Complex" if all values are complex numbers. If a matrix contains more than one data type, it will return "mixed".

identity

Returns the identity matrix with size m-by-n. The matrix has ones on the diagonal and zeros elsewhere.

ifft

Calculate N-dimensional inverse fourier transform

inv

Calculate the inverse of a matrix

kron

Calculates the kronecker product of 2 matrices or vectors.

map

Create a new matrix or array with the results of the callback function executed on each entry of the matrix/array.

matrixFromColumns

Create a dense matrix from vectors as individual columns.

matrixFromFunction

Create a matrix by evaluating a generating function at each index.

matrixFromRows

Create a dense matrix from vectors as individual rows.

ones

Create a matrix containing ones.

partitionSelect

Partition-based selection of an array or 1D matrix. Will find the kth smallest value, and mutates the input array. Uses Quickselect.

pinv

Calculate the Moore–Penrose inverse of a matrix

reshape

Reshape a multi dimensional array to fit the specified dimensions.

resize

Resize a matrix.

rotate

Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.

rotationMatrix

Returns a 2-D rotation matrix (2x2) for a given angle (in radians). Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.

row

Return a row from a matrix or array.

size

Calculate the size of a matrix.

sort

Sort the items in a matrix. Compare can be a string "asc", "desc", "natural", or a custom sort function.

squeeze

Remove inner and outer singleton dimensions from a matrix.

subset

Get or set a subset of the entries of a matrix or characters of a string. Indexes are one-based. There should be one index specification for each dimension of the target. Each specification can be a single index, a list of indices, or a range in colon notation `l:u`. In a range, both the lower bound l and upper bound u are included; and if a bound is omitted it defaults to the most extreme valid value. The cartesian product of the indices specified in each dimension determines the target of the operation.

trace

Calculate the trace of a matrix: the sum of the elements on the main diagonal of a square matrix.

transpose

Transpose a matrix

zeros

Create a matrix containing zeros.

All functions