Or just
dh = zero(h)
(notice zero
, not zeros
).
The nice thing about zero
(singular) is that it preserves type
julia> d = Diagonal(ones(5))
5×5 Diagonal{Float64,Array{Float64,1}}:
1.0 ⋅ ⋅ ⋅ ⋅
⋅ 1.0 ⋅ ⋅ ⋅
⋅ ⋅ 1.0 ⋅ ⋅
⋅ ⋅ ⋅ 1.0 ⋅
⋅ ⋅ ⋅ ⋅ 1.0
julia> zeros(eltype(d), size(d))
5×5 Array{Float64,2}:
0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0
julia> zero(d)
5×5 Diagonal{Float64,Array{Float64,1}}:
0.0 ⋅ ⋅ ⋅ ⋅
⋅ 0.0 ⋅ ⋅ ⋅
⋅ ⋅ 0.0 ⋅ ⋅
⋅ ⋅ ⋅ 0.0 ⋅
⋅ ⋅ ⋅ ⋅ 0.0