用法一
lu!(F::UmfpackLU, A::SparseMatrixCSC; check=true) -> F::UmfpackLU
计算稀疏矩阵 A
的 LU 分解,重用存储在 F
中的现有 LU 分解的符号分解。稀疏矩阵 A
必须具有与用于创建 LU 分解 F
的矩阵相同的非零模式,否则将引发错误。
当 check = true
时,如果分解失败,则会引发错误。当 check = false
时,检查分解的有效性(通过
)由用户负责。issuccess
注意
lu!(F::UmfpackLU, A::SparseMatrixCSC)
使用作为 SuiteSparse 一部分的 UMFPACK 库。由于此库仅支持具有
或 Float64
ComplexF64
元素的稀疏矩阵,因此 lu!
将 A
转换为类型为 SparseMatrixCSC{Float64}
或 SparseMatrixCSC{ComplexF64}
的副本(视情况而定)。
Julia 1.5
lu!
for UmfpackLU
至少需要 Julia 1.5。
例子
julia> A = sparse(Float64[1.0 2.0; 0.0 3.0]);
julia> F = lu(A);
julia> B = sparse(Float64[1.0 1.0; 0.0 1.0]);
julia> lu!(F, B);
julia> F \ ones(2)
2-element Vector{Float64}:
0.0
1.0
用法二
lu!(A, pivot = RowMaximum(); check = true) -> LU
lu!
与
相同,但通过覆盖输入 lu
A
而不是创建副本来节省空间。如果因式分解产生的数字不能由 A
的元素类型表示,则会引发
异常,例如对于整数类型。InexactError
例子
julia> A = [4. 3.; 6. 3.]
2×2 Matrix{Float64}:
4.0 3.0
6.0 3.0
julia> F = lu!(A)
LU{Float64, Matrix{Float64}}
L factor:
2×2 Matrix{Float64}:
1.0 0.0
0.666667 1.0
U factor:
2×2 Matrix{Float64}:
6.0 3.0
0.0 1.0
julia> iA = [4 3; 6 3]
2×2 Matrix{Int64}:
4 3
6 3
julia> lu!(iA)
ERROR: InexactError: Int64(0.6666666666666666)
Stacktrace:
[...]
相关用法
- Julia LinearAlgebra.lu用法及代码示例
- Julia LinearAlgebra.logdet用法及代码示例
- Julia LinearAlgebra.ldlt!用法及代码示例
- Julia LinearAlgebra.ldiv!用法及代码示例
- Julia LinearAlgebra.ldlt用法及代码示例
- Julia LinearAlgebra.lq用法及代码示例
- Julia LinearAlgebra.logabsdet用法及代码示例
- Julia LinearAlgebra.lmul!用法及代码示例
- Julia LinearAlgebra.lyap用法及代码示例
- Julia LinearAlgebra.BLAS.dot用法及代码示例
- Julia LinearAlgebra.bunchkaufman用法及代码示例
- Julia LinearAlgebra.cholesky!用法及代码示例
- Julia LinearAlgebra.istriu用法及代码示例
- Julia LinearAlgebra.istril用法及代码示例
- Julia LinearAlgebra.stride1用法及代码示例
- Julia LinearAlgebra.svd用法及代码示例
- Julia LinearAlgebra.eigen用法及代码示例
- Julia LinearAlgebra.BLAS.dotu用法及代码示例
- Julia LinearAlgebra.I用法及代码示例
- Julia LinearAlgebra.Transpose用法及代码示例
- Julia LinearAlgebra.det用法及代码示例
- Julia LinearAlgebra.tril!用法及代码示例
- Julia LinearAlgebra.schur!用法及代码示例
- Julia LinearAlgebra.tr用法及代码示例
- Julia LinearAlgebra.axpby!用法及代码示例
注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 LinearAlgebra.lu! — Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。