Hi,

You might test it with Wilson correction.

### ----------------- Wilson correction ------------------------

def onsite_Wilson(site, A):

        return -(2*A)*sigma_z

def hopping_Wilson(site_1, site_2, A):

    d_projection_xy = site_2.pos - site_1.pos

    d_12 =d_projection_xy/np.linalg.norm(d_projection_xy)

    return 1j*A/2*(τ*sigma_x*d_12[0] + sigma_y*d_12[1]) + (A/2)*sigma_z

In my case 1j d_12[0] stands for "kx" in *kwant**.**continuum**.*
*discretize* and 1j d_12[1] stands for "ky".

Ham_wilson = ("A/2 * (k_x * sigma_x + k_y * sigma_y)""+ (-2*A) * sigma_z"



You have also to adjust it to your case (A=! depending on your
Hamiltonian). See ref1.



I don't know what would happen if we used a honeycomb lattice. For sure if
you want to test it, we will do it without kwant.continuum.discretize
modules.



ref1*. Beenakker,et al. Ann. Phys. *(*Berlin*) *2023*, 2300081. *DOI:
10.1002/andp.202300081*

I hope this will help.

best



Le jeu. 20 juin 2024 à 06:45, <ac76...@sjtu.edu.cn> a écrit :

> Thank you for your answer. If we use a honeycomb lattice to discretize the
> Hamiltonian, can this solve the problem? How should we modify
> landau_levels.py accordingly? I would appreciate your general suggestions
> on this matter. Best regards.
>

Reply via email to