How to set all elements in a lower triangular matrix?

Instead of using internals you can just call parent:

julia> T = LowerTriangular(rand(3, 3))
3×3 LowerTriangular{Float64, Matrix{Float64}}:
 0.171761   ⋅         ⋅ 
 0.381324  0.648652   ⋅ 
 0.672454  0.111463  0.15696

julia> parent(T) .= 1
3×3 Matrix{Float64}:
 1.0  1.0  1.0
 1.0  1.0  1.0
 1.0  1.0  1.0

julia> T
3×3 LowerTriangular{Float64, Matrix{Float64}}:
 1.0   ⋅    ⋅ 
 1.0  1.0   ⋅ 
 1.0  1.0  1.0
5 Likes