# Eigenvalues of Hessenberg matrix (ZHSEQR)

**URL:** https://discourse.julialang.org/t/eigenvalues-of-hessenberg-matrix-zhseqr/8919
**Category:** Numerics
**Created:** [February 8, 2018, 7:06am UTC](https://discourse.julialang.org/t/eigenvalues-of-hessenberg-matrix-zhseqr/8919 "2018-02-08T07:06:59Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![goerz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/goerz/32/3269_2.png) [@goerz](https://discourse.julialang.org/u/goerz)
#### Post date: [February 8, 2018, 7:06am UTC](https://discourse.julialang.org/t/eigenvalues-of-hessenberg-matrix-zhseqr/8919/1 "2018-02-08T07:06:59Z")

</div>

Does Julia have a method to calculate the eigenvalues of a Hessenberg matrix? This would a wrapper around the ZHSEQR Lapack routine (I didn’t find anything in `Base.LinAlg.LAPACK`).

---

<div class="post-metadata">

### Author: ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)
#### Post date: [February 8, 2018, 8:04am UTC](https://discourse.julialang.org/t/eigenvalues-of-hessenberg-matrix-zhseqr/8919/2 "2018-02-08T08:04:25Z")

</div>

You might be looking for `eigvals` and has methods that dispatch on `SymTridiagonal`, `Hermitian`, and `Symmetric`. The code is in [stdlib/LinearAlgebra/src/eigen.jl](https://github.com/JuliaLang/julia/blob/master/stdlib/LinearAlgebra/src/eigen.jl).

---

<div class="post-metadata">

### Author: ![andreasnoack](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/andreasnoack/32/27_2.png) [@andreasnoack](https://discourse.julialang.org/u/andreasnoack)
#### Post date: [February 8, 2018, 8:13am UTC](https://discourse.julialang.org/t/eigenvalues-of-hessenberg-matrix-zhseqr/8919/3 "2018-02-08T08:13:50Z")

</div>

Unfortunately, I don’t think that routine is wrapped anywhere. However, it shouldn’t be too hard to do so by mimicking how the other wrappers in lapack.jl. If you do that, it would be great if you could submit a PR to either Stdlib/LinearAlgebra or [https://github.com/andreasnoack/LinearAlgebra.jl/blob/master/src/lapack.jl](https://github.com/andreasnoack/LinearAlgebra.jl/blob/master/src/lapack.jl). Alternatively, it shouldn’t be too bad to use general eigensolver on the Hessenberg matrix because the initial reduction to Hessenberg will detect the zeros and take a fast path so it shouldn’t spend to much time on that.
