ulab.linalg – Linear algebra functions

ulab.linalg.cholesky(A: ulab.array)ulab.array
Parameters

A (array) – a positive definite, symmetric square matrix

Return ~ulab.array L

a square root matrix in the lower triangular form

Raises

ValueError – If the input does not fulfill the necessary conditions

The returned matrix satisfies the equation m=LL*

ulab.linalg.det(m: ulab.array)float
Param

m, a square matrix

Return float

The determinant of the matrix

Computes the eigenvalues and eigenvectors of a square matrix

ulab.linalg.dot(m1: ulab.array, m2: ulab.array)Union[ulab.array, float]
Parameters
  • m1 (array) – a matrix, or a vector

  • m2 (array) – a matrix, or a vector

Computes the product of two matrices, or two vectors. In the letter case, the inner product is returned.

ulab.linalg.eig(m: ulab.array)Tuple[ulab.array, ulab.array]
Parameters

m – a square matrix

Return tuple (eigenvectors, eigenvalues)

Computes the eigenvalues and eigenvectors of a square matrix

ulab.linalg.inv(m: ulab.array)ulab.array
Parameters

m (array) – a square matrix

Returns

The inverse of the matrix, if it exists

Raises

ValueError – if the matrix is not invertible

Computes the inverse of a square matrix

ulab.linalg.norm(x: ulab.array)float
Parameters

x (array) – a vector or a matrix

Computes the 2-norm of a vector or a matrix, i.e., sqrt(sum(x*x)), however, without the RAM overhead.

ulab.linalg.trace(m: ulab.array)float
Parameters

m – a square matrix

Compute the trace of the matrix, the sum of its diagonal elements.