JLF64LinearAlgebraΒΆ

jla64.spad line 1 [edit on github]

Linear Algebra functions computed using JL and its algorithms. 64 bits version.

conditionNumber: (JLFloat64Matrix, JLFloat64) -> JLFloat64

conditionNumber(m, p) computes the p-condition number of m.

conditionNumber: JLFloat64Matrix -> JLFloat64

conditionNumber(m) computes the condition number of m.

condSkeel: JLFloat64Matrix -> JLFloat64

condSkeel(m) computes the Skeel condition number of m.

eigen!: JLFloat64Matrix -> Record(values: JLComplexF64Vector, vectors: JLComplexF64Matrix)

eigen!(m) computes the spectral decomposition of m but overwrites m to save memory space.

eigen: JLFloat64Matrix -> Record(values: JLComplexF64Vector, vectors: JLComplexF64Matrix)

eigen(m) computes the spectral decomposition of m.

eigenSystem!: JLFloat64Matrix -> Record(values: JLComplexF64Vector, leftVectors: JLFloat64Matrix, rightVectors: JLFloat64Matrix)

eigenSystem!(m) computes the spectral decomposition of m but overwrites m to save memory space. If the j-th eigenvalue (values) is real, then the left eigenvectors u(j) = column(lefVectors,j), the j-th column of lefVectors. If the j-th and (j+1)-st eigenvalues form a complex conjugate pair, then the left eigenvectors are u(j) = column(lefVectors,j) + %i*column(lefVectors,j+1) and u(j+1) = column(lefVectors,j) - %i*column((lefVectors,j+1). This applieas also to righVectors.

eigenSystem: JLFloat64Matrix -> Record(values: JLComplexF64Vector, leftVectors: JLFloat64Matrix, rightVectors: JLFloat64Matrix)

eigenSystem(m) computes the spectral decomposition of m. If the j-th eigenvalue (values) is real, then the left eigenvectors u(j) = column(lefVectors,j), the j-th column of lefVectors. If the j-th and (j+1)-st eigenvalues form a complex conjugate pair, then the left eigenvectors are u(j) = column(lefVectors,j) + %i*column(lefVectors,j+1) and u(j+1) = column(lefVectors,j) - %i*column((lefVectors,j+1). This applieas also to righVectors.

eigvals!: JLFloat64Matrix -> JLComplexF64Vector

eigvals!(m) returns the eigen values of m but overwrites m to save memory space.

eigvals: JLFloat64Matrix -> JLComplexF64Vector

eigvals(m) returns the eigen values of m.

eigvecs: JLFloat64Matrix -> JLComplexF64Matrix

eigvecs(m) returns the eigen vectors of m.

exp: JLFloat64Matrix -> JLFloat64Matrix

exp(m) returns the matrix exponential of m.

jlPeakFlops: () -> JLFloat64

jlPeakFlops() returns the peak flop rate using matrix multiplication. You can modify the number of threads used or the BLAS/LAPACK libraries used to see if that fits your needs.

log: JLFloat64Matrix -> JLComplexF64Matrix

log(m) tries to compute the principal matrix logarithm of m. Otherwise, returns a non pricipal matrix logarithm of m if possible.

logDeterminant: JLFloat64Matrix -> JLFloat64

logDeterminant(m) computes the logarithm of the determinant of m, possibly with more accuracy and avoding nder/overflow.

lu!: JLFloat64Matrix -> Record(LU: JLFloat64Matrix, ipiv: JLInt64Vector)

lu!(m) computes the LU factorisation of m in m.

lu: JLFloat64Matrix -> Record(LU: JLFloat64Matrix, L: JLFloat64Matrix, U: JLFloat64Matrix, ipiv: JLInt64Vector)

lu(m) computes the LU factorisation of m.

luReorder!: (JLFloat64Matrix, JLInt64Vector) -> JLFloat64Matrix

luOrder(mat, ipiv) returns mat in-place reordered with ipiv pivot indices.

luReorder: (JLFloat64Matrix, JLInt64Vector) -> JLFloat64Matrix

luOrder(mat, ipiv) returns a copy of mat reordered with ipiv pivot indices.

mpInverse: JLFloat64Matrix -> JLFloat64Matrix

mpInverse(m) returns the Moore-Penrose pseudo inverse of m.

norm: (JLFloat64Matrix, JLFloat64) -> JLFloat64

norm(m,p) computes the p-norm of m.

norm: (JLFloat64Vector, JLFloat64) -> JLFloat64

norm(v,p) computes th p-norm of v.

norm: JLFloat64Matrix -> JLFloat64

norm(m) computes the 2-norm of m, also known as the Frobenius norm.

norm: JLFloat64Vector -> JLFloat64

norm(v) computes the 2-norm of v.

normalize!: JLFloat64Matrix -> JLFloat64Matrix

normalize!(m) destructively normalize m such that its norm equals to 1.

normalize!: JLFloat64Vector -> JLFloat64Vector

normalize!(v) destructively normalize v such that norm(v) equals to 1.

normalize: JLFloat64Matrix -> JLFloat64Matrix

normalize(m) returns normalized m such that its norm equals to 1.

normalize: JLFloat64Vector -> JLFloat64Vector

normalize(v) returns normalized v such that its norm equals to 1.

operatorNorm: (JLFloat64Matrix, JLFloat64) -> JLFloat64

operatorNorm(m,p) computes the operator norm of m induced by the vector p-norm.

operatorNorm: JLFloat64Matrix -> JLFloat64

operatorNorm(m) computes the operator norm of m induced by the vector 2-norm.

rank!: (JLFloat64Matrix, JLFloat64) -> NonNegativeInteger

rank!(m, tol) computes rank of m. Counts singular value with magnitude greater than tol but overwrites m to save memory space.

rank: (JLFloat64Matrix, JLFloat64) -> NonNegativeInteger

rank(m, tol) computes rank of m. Counts singular value with magnitude greater than tol.

solve!: (JLFloat64Matrix, JLFloat64Matrix) -> JLFloat64Matrix

solve!(A,B) solves the matrix equation A*X=B. Overwrites B with matrix X and returns X.

solve: (JLFloat64Matrix, JLFloat64Matrix) -> JLFloat64Matrix

solve(A,B) solves the matrix equation A*X=B, and returns X.

sqrt: JLFloat64Matrix -> JLComplexF64Matrix

sqrt(m) returns the principal square root of m.

svd!: JLFloat64Matrix -> Record(U: JLFloat64Matrix, sv: JLFloat64Vector, Vt: JLFloat64Matrix)

svd!(m) is the same as svd(m) but overwites a to save memory space.

svd: JLFloat64Matrix -> Record(U: JLFloat64Matrix, sv: JLFloat64Vector, Vt: JLFloat64Matrix)

svd(m) computes the singular value decomposition SVD of m such that SVD.U * diagonalMatrix(sv) * SVD.Vt = m.

svdvals!: JLFloat64Matrix -> JLFloat64Vector

svdvals!(m) returns the singular values of m but overwrites m to save memory space.

svdvals: JLFloat64Matrix -> JLFloat64Vector

svdvals(m) returns the singular values of m.

trace: JLFloat64Matrix -> JLFloat64

trace(m) computes the trace of m.

tril!: JLFloat64Matrix -> JLFloat64Matrix

tril!(m) overwrites m with its upper triangular matrix counterpart. Returns m.

tril: JLFloat64Matrix -> JLFloat64Matrix

tril(m) returns the lower triangular matrix of m

triu!: JLFloat64Matrix -> JLFloat64Matrix

triu!(m) overwrites m with its upper triangular matrix counterpart. Returns m.

triu: JLFloat64Matrix -> JLFloat64Matrix

triu(m) returns the upper triangular matrix of m.