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


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to