[Kwant] Attaching two different lattice
Hello everyone I'm Javad Tavakkoli and I'm a master student in condensed matter physics. I recently received a thesis that I want to use Kwant for its simulations. I have a question : Can I use this package to attaching two different system with different structure and different dimension? Can you explain briefly? Thank you.
Re: [Kwant] Non-equilibrium Green's functions and Current in tkwant
Hi Rudolf, > The kwant documentation on kwant.solvers.common.GreensFunction() states > that calling this method will return the retarded Green's function. Does > this method evaluate the equilibrium or non-equilibrium retarded Green's > function? I am interested in the time-dependent non-equilibrium density > matrix, which can be written as the kinetic lesser NE Green's function > G_<(t,t') > > rho_neq (t) = -iG_<(t,t')|t=t'. 'kwant.greens_function' essentially gives you a few matrix elements of the following quantity: Gᴿ(E) = (H + Σ(E))⁻¹ where Σ is the self-energy of the leads at energy E. Specifically it gives you the matrix elements that connect the interface sites of the different leads; these are the matrix elements needed to calculate transport quantities (like conductance). In order to calculate the lesser Green's function for the time-independent, nonequilibrium case (i.e. different chemical potentials / temperatures in different leads) you would need to take a different approach I think. One way to do so would be to apply eq. 22 of https://arxiv.org/abs/1307.6419 to the special case where Ψ_αE(t) has trivial time dependence: Ψ_αE(t) = exp(-iEt) Ψ_αE where Ψ_αE is the scattering state corresponding to incoming mode α at energy E (i.e. what kwant.wave_function gives you). If your system is *time-dependent* then you will need to calculate the time-evolved scattering states, which Kwant cannot give you directly. Indeed I did some work on calculating such quantities during my PhD., and one of the outputs was a code "tkwant", which is essentially a solver for working with Kwant systems that include time-dependence. It essentially does the time evolution and energy integration for you. tkwant is still actively developed, but I am no longer directly involved; you can check it out here: https://gitlab.kwant-project.org/kwant/tkwant/ there's also links to the documentation which includes some examples which should help you get started if this is the direction you want to go. Happy (t)kwanting, Joe signature.asc Description: OpenPGP digital signature
Re: [Kwant] Josephson Junctions using tkwant
Hi again Denise, I'm just writing again to clarify something I wrote in my previous reply: > Unfortunately tkwant does not presently have a maintainer, and no > developer time has been allocated to it. This may change in the future, > but at this point we cannot provide any promises. tkwant was anyway an > experimental code that is not "production ready" in the same way that > kwant is. This is not actually true; there has recently been quite a bit of work on tkwant recently, and Thomas Kloss is the current maintainer. I was aware of this, but have been out of the loop on tkwant development, which lead to me writing the misleading statement quoted above. If the tutorials do not work with the current version of tkwant then this is a bug (either in the documentation or tkwant itself), and I would encourage you to open an issue on the tkwant issue tracker [1]. Sorry again for the misleading message. Happy tkwanting, Joe [1]: https://gitlab.kwant-project.org/kwant/tkwant/issues/new signature.asc Description: OpenPGP digital signature
Re: [Kwant] Josephson Junctions using tkwant
Hi Denise, > > Has anyone recently tried to simulate Josephson Junctions using tkwant? > I tried to follow the examples and tutorials, but several of them do > not work in the last tkwant version. Unfortunately tkwant does not presently have a maintainer, and no developer time has been allocated to it. This may change in the future, but at this point we cannot provide any promises. tkwant was anyway an experimental code that is not "production ready" in the same way that kwant is. > I am sending attached and you can find below the code that I am > running but the current does not oscillate as a function of time and > the IV curve is linear. Any suggestions on what may be wrong? Any help > or comment is appreciated. Just skimming your code I notice the following: > > ### add JJ phase > syst[(lat(-1,0),lat(0,0))] = -t*np.exp(1j*phase(time))*c_e > -t*np.exp(-1j*phase(time))*c_h ### JJ phase > Here you are assigning a *constant value* to the hopping. Presumably you would like instead to have a *function* that depends on time. You should instead write something like: def hopping(site_a, site_b, time): return -t*np.exp(1j*phase(time))*c_e -t*np.exp(-1j*phase(time))*c_h syst[(lat(-1,0),lat(0,0))] = hopping Happy (t)kwanting, Joe signature.asc Description: OpenPGP digital signature