Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to extract an array of diagonal entries from a diagonal matrix in Julia?

Given some diagonal matrix in Julia like A = Diagonal(rand(3,3)), is there any way I can create a one-dimensional array whose elements are the diagonal entries of this Diagonal matrix A?

like image 264
James Rider Avatar asked Sep 19 '25 17:09

James Rider


1 Answers

There is diag(A, k::Integer=0) that returns the kth diagonal of a matrix A, as a vector.

julia> A = Diagonal(rand(3,3))
3×3 Diagonal{Float64, Vector{Float64}}:
 0.213159   ⋅         ⋅
  ⋅        0.034186   ⋅
  ⋅         ⋅        0.539693

julia> diag(A)
3-element Vector{Float64}:
 0.21315894297089488
 0.03418604147090787
 0.5396925608269262
like image 97
AboAmmar Avatar answered Sep 23 '25 03:09

AboAmmar