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 thep
-condition number ofm
.
- conditionNumber: JLFloat64Matrix -> JLFloat64
conditionNumber(m)
computes the condition number ofm
.
- condSkeel: JLFloat64Matrix -> JLFloat64
condSkeel(m)
computes the Skeel condition number ofm
.
- eigen!: JLFloat64Matrix -> Record(values: JLComplexF64Vector, vectors: JLComplexF64Matrix)
eigen!(m)
computes the spectral decomposition ofm
but overwritesm
to save memory space.
- eigen: JLFloat64Matrix -> Record(values: JLComplexF64Vector, vectors: JLComplexF64Matrix)
eigen(m)
computes the spectral decomposition ofm
.
- eigenSystem!: JLFloat64Matrix -> Record(values: JLComplexF64Vector, leftVectors: JLFloat64Matrix, rightVectors: JLFloat64Matrix)
eigenSystem!(m)
computes the spectral decomposition ofm
but overwritesm
to save memory space. If thej
-th eigenvalue (values) is real, then the left eigenvectorsu
(j
) = column(lefVectors,j
), thej
-th column of lefVectors. If thej
-th and (j+1
)-st
eigenvalues form a complex conjugate pair, then the left eigenvectors areu
(j
) = column(lefVectors,j
) + %i*column(lefVectors,j+1
) andu
(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 ofm
. If thej
-th eigenvalue (values) is real, then the left eigenvectorsu
(j
) = column(lefVectors,j
), thej
-th column of lefVectors. If thej
-th and (j+1
)-st
eigenvalues form a complex conjugate pair, then the left eigenvectors areu
(j
) = column(lefVectors,j
) + %i*column(lefVectors,j+1
) andu
(j+1
) = column(lefVectors,j
) - %i*column((lefVectors,j+1
). This applieas also to righVectors.
- eigvals!: JLFloat64Matrix -> JLComplexF64Vector
eigvals!(m)
returns the eigen values ofm
but overwritesm
to save memory space.
- eigvals: JLFloat64Matrix -> JLComplexF64Vector
eigvals(m)
returns the eigen values ofm
.
- eigvecs: JLFloat64Matrix -> JLComplexF64Matrix
eigvecs(m)
returns the eigen vectors ofm
.
- exp: JLFloat64Matrix -> JLFloat64Matrix
exp(m)
returns the matrix exponential ofm
.
- 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 ofm
. Otherwise, returns a non pricipal matrix logarithm ofm
if possible.
- logDeterminant: JLFloat64Matrix -> JLFloat64
logDeterminant(m)
computes the logarithm of the determinant ofm
, possibly with more accuracy and avoding nder/overflow.
- lu!: JLFloat64Matrix -> Record(LU: JLFloat64Matrix, ipiv: JLInt64Vector)
lu!(m)
computes the LU factorisation ofm
inm
.
- lu: JLFloat64Matrix -> Record(LU: JLFloat64Matrix, L: JLFloat64Matrix, U: JLFloat64Matrix, ipiv: JLInt64Vector)
lu(m)
computes the LU factorisation ofm
.
- 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 ofm
.
- norm: (JLFloat64Matrix, JLFloat64) -> JLFloat64
norm(m,p)
computes thep
-norm ofm
.
- norm: (JLFloat64Vector, JLFloat64) -> JLFloat64
norm(v,p)
computes thp
-norm ofv
.
- norm: JLFloat64Matrix -> JLFloat64
norm(m)
computes the 2-norm ofm
, also known as the Frobenius norm.
- norm: JLFloat64Vector -> JLFloat64
norm(v)
computes the 2-norm ofv
.
- normalize!: JLFloat64Matrix -> JLFloat64Matrix
normalize!(m)
destructively normalizem
such that its norm equals to 1.
- normalize!: JLFloat64Vector -> JLFloat64Vector
normalize!(v)
destructively normalizev
such that norm(v
) equals to 1.
- normalize: JLFloat64Matrix -> JLFloat64Matrix
normalize(m)
returns normalizedm
such that its norm equals to 1.
- normalize: JLFloat64Vector -> JLFloat64Vector
normalize(v)
returns normalizedv
such that its norm equals to 1.
- operatorNorm: (JLFloat64Matrix, JLFloat64) -> JLFloat64
operatorNorm(m,p)
computes the operator norm ofm
induced by the vectorp
-norm.
- operatorNorm: JLFloat64Matrix -> JLFloat64
operatorNorm(m)
computes the operator norm ofm
induced by the vector 2-norm.
- rank!: (JLFloat64Matrix, JLFloat64) -> NonNegativeInteger
rank!(m, tol)
computes rank ofm
. Counts singular value with magnitude greater than tol but overwritesm
to save memory space.
- rank: (JLFloat64Matrix, JLFloat64) -> NonNegativeInteger
rank(m, tol)
computes rank ofm
. Counts singular value with magnitude greater than tol.
- solve!: (JLFloat64Matrix, JLFloat64Matrix) -> JLFloat64Matrix
solve!(A,B)
solves the matrix equation A*X=B. OverwritesB
with matrixX
and returnsX
.
- solve: (JLFloat64Matrix, JLFloat64Matrix) -> JLFloat64Matrix
solve(A,B)
solves the matrix equation A*X=B, and returnsX
.
- sqrt: JLFloat64Matrix -> JLComplexF64Matrix
sqrt(m)
returns the principal square root ofm
.
- svd!: JLFloat64Matrix -> Record(U: JLFloat64Matrix, sv: JLFloat64Vector, Vt: JLFloat64Matrix)
svd!(m)
is the same assvd
(m
) but overwites a to save memory space.
- svd: JLFloat64Matrix -> Record(U: JLFloat64Matrix, sv: JLFloat64Vector, Vt: JLFloat64Matrix)
svd(m)
computes the singular value decompositionSVD
ofm
such thatSVD
.U
* diagonalMatrix(sv
) *SVD
.Vt
=m
.
- svdvals!: JLFloat64Matrix -> JLFloat64Vector
svdvals!(m)
returns the singular values ofm
but overwritesm
to save memory space.
- svdvals: JLFloat64Matrix -> JLFloat64Vector
svdvals(m)
returns the singular values ofm
.
- trace: JLFloat64Matrix -> JLFloat64
trace(m)
computes the trace ofm
.
- tril!: JLFloat64Matrix -> JLFloat64Matrix
tril!(m)
overwritesm
with its upper triangular matrix counterpart. Returnsm
.
- tril: JLFloat64Matrix -> JLFloat64Matrix
tril(m)
returns the lower triangular matrix ofm
- triu!: JLFloat64Matrix -> JLFloat64Matrix
triu!(m)
overwritesm
with its upper triangular matrix counterpart. Returnsm
.
- triu: JLFloat64Matrix -> JLFloat64Matrix
triu(m)
returns the upper triangular matrix ofm
.