julia主对角线下的和
在julia主对角线下的和,julia,Julia,在julia中,如何在主对角线下求和而不使用矩阵中的主对角线 我使用的是sum=tril(a)-1,但它在julia中不起作用 我知道我需要一个面具,但我不知道如何使用它。您正在寻找,它是标准库的一部分,包含tril函数: julia> using LinearAlgebra julia> A = ones(5, 5) 5×5 Array{Float64,2}: 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
julia
中,如何在主对角线下求和而不使用矩阵中的主对角线
我使用的是sum=tril(a)-1
,但它在julia
中不起作用
我知道我需要一个面具,但我不知道如何使用它。您正在寻找,它是标准库的一部分,包含tril
函数:
julia> using LinearAlgebra
julia> A = ones(5, 5)
5×5 Array{Float64,2}:
1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0
julia> tril(A, -1)
5×5 Array{Float64,2}:
0.0 0.0 0.0 0.0 0.0
1.0 0.0 0.0 0.0 0.0
1.0 1.0 0.0 0.0 0.0
1.0 1.0 1.0 0.0 0.0
1.0 1.0 1.0 1.0 0.0
julia> sum(tril(A, -1))
10.0
函数位于线性代数标准库中。要使用它,您需要导入linearagebra
模块tril
接受第二个可选参数,以指定要从何处开始下三角部分。您可以将其设置为-1,以便不采用主对角线
using LinearAlgebra
A = rand(5, 5)
lowerA = tril(A, -1)
println(sum(lowerA))
您可能还想看看懒惰的下三角视图构造函数,例如LowerTriangular
或OneUnitLowerTriangular