Linear Algebra

CholeskyGetL

Returns the lower triangular factor L of a Cholesky decomposition, such that L*L'=A.

Collection CholeskyGetL(Collection A)

  • A: Matrix to be decomposed, such that L*L'=A

CholeskySolve

Returns the solution x of the problem Ax = b for x using Cholesky decomposition. x can be a matrix or vector.

Collection CholeskySolve(Collection A, Collection b)

  • A: Matrix A of problem Ax=b
  • b: Vector (or matrix) b of the problem Ax=b

condition

Returns the condition number of the matrix: max(S)/min(S).

float condition(Collection X)

  • X: The matrix to be analyzed.

count

Returns the number of cells in a tensor

Object count(Collection x, Collection cmp=nothing)

  • x: is the tensor to count
  • cmp: value to compare the cells

countRange

Returns the number of values within a given range.

Object countRange(Collection x, Collection min, Collection max)

  • x: is the container for which you want to count the values.
  • min: is the lower boundary of the range. The lower boundary is not included in the range.
  • max: is the upper boundary of the range. The upper boundary is included in the range.

covarianceMatrix

Calculates the matrix product of the given matrices.

Collection covarianceMatrix(Collection m1, Collection m2)

  • m1: The first matrix
  • m2: The second matrix

determinant

Returns the determinant of the matrix.

float determinant(Collection X)

  • X: Matrix for which the determinant is sought.

EigenproblemGetD

Returns matrix D of A = V*D*V'.

Collection EigenproblemGetD(Collection X)

  • X: The matrix

Eigenvalues

Returns a vector listing the complex eigenvalues of the matrix or a single eigenvalue.

Collection Eigenvalues(Collection X, boolean complex=false, int index=0, boolean ahp=false)

  • X: The matrix to be tested.
  • complex: true: return complex part of the eigenvalues (optional)
  • index: Index (0 : all, 1 : greatest, 2...)
  • ahp: true: calculate each group separately

Eigenvectors

Returns a matrix listing the eigenvectors of the given matrix.as columns (in dimension 1) and the values in dimension 0.

Collection Eigenvectors(Collection X, int index=0, boolean ahp=false)

  • X: The matrix
  • index: Index (0 : all, 1 : greatest, 2...)
  • ahp: true: calculate each group separately

inverse

Returns the inverse of the matrix. The matrix must be invertible, otherwise the result is undefined.

Collection inverse(Collection X)

  • X: The matrix for which the Inverse is sought.

isFullRank

Returns true if the matrix is of full rank

boolean isFullRank(Collection X)

  • X: The Matrix to be tested.

isNonsingular

Returns true if the matrix is nonsingular

boolean isNonsingular(Collection X)

  • X: The Matrix to be tested.

isSPD

Returns true if the matrix is symmetric positive definite.

boolean isSPD(Collection X)

  • X: The matrix to be analyzed

linearMapping

Performs a mapping from a source vector to another vector space using either the weighted sum method or the proportional score method.

Collection linearMapping(Collection matrix, Collection x, integer sign=all, Object total=0.0, integer grouphandling=nothing, integer method=nothing, integer causeslevel=nothing, integer effectslevel=nothing)

Result: The linearMapping function maps a score for one dimension of a matrix to a score on the other dimension of a matrix using either the weighted sum method or the proportional score method.

  • matrix: is the matrix describing the linear transformation.
  • x: is the vector you want to map.
  • sign: sets a filter for the matrix relations: all, pos(itive only), neg(ative only)
  • total: total sum for normalization. Use 0 in order to skip normalization.
  • grouphandling: defines how to handle parent items: shallow (leafs only), sums (accumulate hierarchically), levels (calculate system level and paramater level separately).
  • method: wsm (weighted sum method) or prop (proportional score method)
  • causeslevel: is the details level for the causes. Set to 0 in order to use the matrix default.
  • effectslevel: is the details level for the effects. Set to 0 in order to use the matrix default.

Calculation using weighted sum method:

  1. 1
    for each row in the matrix multiply all values by the corresponding value in the input vector
  2. 2
    calculate the sum of all columns in the matrix
  3. 3
    optionally normalize the sum to a given total, e.g. 1.0: sum up all values in the output vector, then divide each value of the output vector by this sum.

Calculation using proportional score method:

  1. 1
    calculate the sum of all columns in the matrix
  2. 2
    for each row in the matrix multiply all values by the corresponding value in the input vector
  3. 3
    divide all values in the matrix by the factor calculated in step 1.
  4. 4
    calculate the sum of all columns in the matrix
  5. 5
    optionally normalize the sum to a given total, e.g. 1.0: sum up all values in the output vector, then divide each value of the output vector by this sum.

LUGetL

Returns matrix L of the LU decomposition of the given matrix.

Collection LUGetL(Collection X)

  • X: The matrix.

LUGetPivot

Returns the Pivot vector of the LU decomposition of the given matrix.

Collection LUGetPivot(Collection X)

  • X: TheMatrix.

LUGetU

Returns matrix U of the LU decomposition of the given matrix.

Collection LUGetU(Collection X)

  • X: The matrix.

LUSolve

Returns solution x of the problem Ax = b for x using LU decomposition.

Collection LUSolve(Collection A, Collection b)

  • A: Matrix A of the problem Ax = b. A can be an m-by-n matrix with m<>n.
  • b: Vector (or matrix) b of the problem Ax = b.

matrixProduct

Calculates the matrix product of the given matrices.

Collection matrixProduct(Collection m1, Collection m2)

  • m1: The first matrix
  • m2: The second matrix

norm

Normalizes the numbers in a container to a given total.

Collection norm(Collection x, Numeric total, integer level=nothing, Object sumdim=nothing, Collection , Numeric , integer =nothing, Object =nothing)

  • x: is the container which contains the values you want to normalize.
  • total: is the sum you want to use for normalization, e.g. 100 if you want to express the values from container x in percent.
  • level: is the level of details to operate on
  • sumdim: specifies the dimension for the operation if the source is a multi-dimensional collection
  • : is the container which contains the values you want to normalize.
  • : is the sum you want to use for normalization, e.g. 100 if you want to express the values from container x in percent.
  • : is the level of details to operate on
  • : specifies the dimension for the operation if the source is a multi-dimensional collection

norm2

Returns the 2 norm (max(S)) of the matrix

float norm2(Collection X)

  • X: The matrix to be analyzed.

nsum

Adds all negative numbers in a container.

Object nsum(Collection x)

  • x: is the container to sum up.

percentage

Normalizes the numbers in a container to a total of 1.0.

Collection percentage(Collection x, integer level=0, Object sumdim=nothing)

  • x: is the container which contains the values you want to normalize.
  • level: is the level of details to operate on
  • sumdim: specifies the dimension for the operation if the source is a multi-dimensional collection

prod

Multiplies all the numbers in the given container and returns the product.

Object prod(Collection x)

  • x: is the container for which you want the product.

pseudoInverse

Returns the More-Penrose pseudoinverse of the matrix.

Collection pseudoInverse(Collection X)

  • X: The matrix for which the Inverse is sought.

psum

Adds all positive numbers in a container.

Object psum(Collection x)

  • x: is the container to sum up.

QRGetHouseholder

Returns the Householder vectors from the QR decomposition of the given matrix.

Collection QRGetHouseholder(Collection X)

  • X: The matrix.

QRGetQ

Returns matrix Q of the QR decomposition of the given matrix.

Collection QRGetQ(Collection X)

  • X: The matrix.

QRGetR

Returns matrix R of the QR decomposition of the given matrix.

Collection QRGetR(Collection X)

  • X: The matrix.

QRSolve

Returns solution x of the problem Ax = b for x using QR decomposition.

Collection QRSolve(Collection A, Collection b)

  • A: Matrix A of the problem Ax = b.
  • b: Vector (or matrix) b of the problem Ax = b.

rank

Returns the rank of the matrix.

int rank(Collection X)

  • X: Returns the rank of the matrix.

sum

Adds all the numbers in a container.

Object sum(Collection x, Collection )

  • x: is the container to sum up
  • : is the container to sum up

SVDGetS

Returns matrix S of the SVD decomposition of the given matrix.

Collection SVDGetS(Collection X)

  • X: The matrix.

SVDGetSV

Returns a vector of singular values. Values are ordered from large to small.

Collection SVDGetSV(Collection X)

  • X: The matrix.

SVDGetU

Returns matrix U of the SVD decomposition of the given matrix.

Collection SVDGetU(Collection X)

  • X: The matrix.

SVDGetV

Returns matrix V of the SVD decomposition of the given matrix.

Collection SVDGetV(Collection X)

  • X: The matrix.

SVDSolve

Solves the problem Ax = b for x using singular value decomposition

Collection SVDSolve(Collection A, Collection b)

  • A: The matrix A of problem Ax=b.
  • b: Vector (or matrix) b of the problem Ax = b.

transposed

Returns the transposed of the given auto matrix.

Collection transposed(Collection matrix)

  • matrix: The auto matrix for which you want to get the transposed matrix.

Feedback

Did you find what you needed?

If you have any further questions or suggestions to improve this page, please let us know:

=