Extend Kwant to work with overlap matrices
In some contexts people want to solve
Hψ = ESψ where
S is an overlap matrix. Two examples that come to mind are: tight-binding models that have been obtained from an ab-initio calculation and the Hamiltonian is expressed in a non-orthogonal basis, discretization on Finite-Element-Method meshes.
Currently we assume that
S is the identity matrix, and this is assumption is actually encoded pretty deeply in some parts of Kwant