Hi Leon,

“Tight binding” can have multiple meanings in this context, so I could use a little clarification.

 

The dispersion that I showed is already a tight-binding model in the sense that the spin example in the tutorial is a tight-binding model: I set up a lattice in kwant (kwant.lattice.chain in my case) and define the Cardona and Pollak Hamiltonian matrix at each site, and the momentum operators are turned into finite differences between the sites. I believe this is equivalent to using kwant’s continuum module.

 

The other meaning I can think of is to calculate the band structure using the tight-binding method directly in kwant: making a proper Si lattice in kwant, connecting the sites with the proper tight-binding matrix elements, etc. I’m sure that’s doable, but doing calculations with a 3D lattice sounds expensive.

 

What meaning of “tight-binding model” are you thinking of?


We were both talking about the former, i.e. a tight binding model as a discretization of the k.p (continuum) Hamiltonian. The procedure you describe in the first paragraph is indeed what 'kwant.continuum' does for you.

Do you have any ideas for how to make the modes that I don’t want become evanescent or otherwise get out of the energy range that I care about? The standard k.p method generates the band structure by perturbing free-particle electron states. As a consequence, at high enough ‘k’, all the modes look like parabolas, and I don’t think it’s possible to get the unwanted bands “out of the way”; the only way they can go is “up”. (I think that I’ve seen some funky k.p method that uses free-particle electron and “hole” states, so there are parabolas that face both up and down, which would allow a band-gap to exist even at large k. That could at least get the unwanted modes out of the band gap.)


I personally don't really have  any experience with k.p models, so I don't think I will be much help; hopefully someone else on the mailing list will be better able to. That being said, these high-k modes are surely present even in the continuum, no? They are a consequence of the k.p model you are using, *not* the discretization, so I would agree with what Rafal said: that you need to make sure your model is valid at the energies you care about first before discretizing.

The idea of adding "dummy" degrees of freedom and a coupling to open up a gap seems reasonable. You could also just calculate the scattering matrix *with* the high-k modes included and see whether there is any scattering to/from the low-k modes. If there's not you might be able to get away with not doing anything about them at all?

Happy Kwanting,

Joe