Hi, On 5/5/19 1:08 PM, Naveen Yadav wrote: > Dear KWANT developers, > > I have an Hamiltonian > *H(k) = tx*σx* sin kx + ty*σy*sin ky + mk*σz + λ*σ0 *sin kz,* > * > * > *mk = tz(cos β − cos kz) + t'(2 − cos kx − cos ky)* > ** > > I am trying to introduce magnetic field in *x-direction* for a gauge > *A = (0, 0, By),* > Can I make a *template* for this hamiltonian using KWANT discretizer > or I have to discretize it by hand to get the onsite and hopping matrix?
I already answered this question in the previous thread. The Hamiltonian is essentially already discretized; you just have to identify which terms are onsites and which are hoppings. See the previous thread. > And then how to add the peierls phase to the hopping matrix? For the gauge you have chosen the peierls phase will be non-zero only on hoppings in the z direction. You can specify these hoppings as a function and multiply the hopping by exp(2 * pi * 1j * B * a * y) where "a" is the lattice discretization length and "y" is the y position of the sites at either end of the hopping (will be the same for both sites, as we only apply this phase to hoppings in the z-direction). > Then I want to plot the spectrum as a function of k_z, with Wx =10 and > Wy=50 The resulting Hamiltonian will be a function of k_z. You can use kwant.plotter.spectrum to plot the spectrum as a function of k_z. Happy Kwanting, Joe
signature.asc
Description: OpenPGP digital signature
