Dear Joe,

Thanks very much for your reply. Looking forward to the details in your review article soon after. I wonder how kwant.physics.modes obtain propagating modes, which can be used to calculate transport observables.

As known, let \lambda=exp^{ik}, propagating modes have |\lambda|=1 while the others have |\lambda|\ne 1. One can solve a (generalized) eigenproblem to obtain all \lambda and idenity propagating modes as those having |\lambda| equal to 1 within a small tolerance. If so,for an infinitely long wire with a square cross section possessing N*N lattice site, one has to solve all the eigenvalues of a matrix whose size is no smaller than N^2 by N^2, which is a very difficult numerical task for a large N (say N=1000). Does Kwant solve all \lambda as I describe or in a fast way that directly single out the propogating modes?

Regards,
Zhan

From: Joseph Weston <joseph.weston08@gmail.com>
Date: 2019-12-13 23:16:20
To:  Cao Zhan <caozhan@baqis.ac.cn>,kwant-discuss@kwant-project.org,Cao Zhan <caozhan@baqis.ac.cn>,kwant-discuss@kwant-project.org
Subject: Re: [Kwant] What is the algorithm for calculating the mode decomposition>Me again,
>
>
>I just noticed that the notebook at http://tiny.cc/kwant-journal-club
>looks kind of wonky because nbviewer doesn't understand some of the
>markup I used. I've now made the notebook available on binder as well
>(even though there's no executable code really):
>
>http://tiny.cc/kwant-journal-club-notes
>
>Happy Kwanting,
>
>Joe
>
>