# Spectrum of open hamiltonian in Quantica

I am trying to evaluate the spectrum for a graphene ribbon of varying widths. I am trying to do this by attaching leads to graphene resulting in an open hamiltonian but this is not compatible with the spectrum method.

``````glead = LP.honeycomb() |> onsite(4) - hopping(1) |> supercell(4,2) |> supercell((0,-1))|> greenfunction(GS.Schur(boundary = 0));

h = LP.honeycomb() |> onsite(4) - hopping(1) |> supercell(4,5) |> supercell |>
attach(glead, region = r -> SA[-√3/2,1/2]' * r > 3.5, reverse = true) |>
attach(glead, region = r -> SA[-√3/2,1/2]' * r < 0, reverse = false)

energies, phis = spectrum(h, point; solver=ES.ShiftInvert(ES.ArnoldiMethod(nev=28), 0.0))
``````

Is there a way to obtain the spectrum for a ribbon?

Many thanks

Hello @Milt !

There might be a slight conceptual problem here. Open systems don’t have, in general, a discrete eigenspectrum. In a way it has “infinite” number of eigenpairs, so it’s natural `spectrum` does not apply here. If the system is open but periodic (it has nothing `attach`-ed, you can compute its `bands` instead of the `spectrum`. In the case you describe, the appropriate equivalent is the local density of sates, or `ldos`.

This would be the ldos integrated over all your central region as a function of energy

``````julia> using GLMakie, Quantica

julia> glead = LP.honeycomb() |> onsite(4) - hopping(1) |> supercell(4,2) |> supercell((0,-1))|> greenfunction(GS.Schur(boundary = 0));

julia> g = LP.honeycomb() |> onsite(4) - hopping(1) |> supercell(4,5) |> supercell |>
attach(glead, region = r -> SA[-√3/2,1/2]' * r > 3.5, reverse = true) |>
attach(glead, region = r -> SA[-√3/2,1/2]' * r < 0, reverse = false) |> greenfunction;

julia> d = ldos(g[])
LocalSpectralDensitySlice{Float64} : local density of states at a fixed location and arbitrary energy
kernel   : LinearAlgebra.UniformScaling{Bool}(true)

julia> ωs = subdiv(0, 8, 500); ds = [sum(d(ω)) for ω in ωs];

julia> lines(ωs, ds)
``````

Note that the ldos is continuous, i.e. it is not a series of discrete eigenenergies, but a continuous density of eigenenergies