So I’ve got a (Hermitian) like the following, and I want to find its first few eigenvalues:

The idea is that it stretches off to infinity in both directions. For the bulk of the matrix, the main diagonal band just consists of T_{i,i}, and the first diagonal bands above and below that are always T_{i+1,i} = T_{i,i+1}, and the next diagonal diagonal bands above and below are T_{i+2,i} = T_{i,i+2}.

The only exception is that in the centre of the matrix, there’s this block shown with the T_{A} and T_{B}. All the entries in the matrix are negative, and the block around T_{A} and T_{B} should be the dominant entries for the first few eigenvalues.

Are there any clever strategies (ideally julia packages!) for finding the eigenvalues of this matrix? My approach thus far has just been brute force making a big banded matrix and adjust the size until things converge, but I strongly suspect there’s a better way to go about this. I know about InfiniteLinearAlgebra.jl but that unfortunately doesn’t seem to support my problem.

Any advice would be appreciated!