Current Density in bilayer graphene
Dear all, I have written a code in Kwant for a bilayer graphene quantum dot (in 2D manner) to calculate some electronic properties. I can get the results correctly for, e.g, conductance, spectrum, and LDOS. But there is a problem in plotting CURRENT density and I get the following error. ~~ need at least one array to concatenate Has anyone had a similar experience ? The current density part of code is: ________________________________________________________________ ### Current plot params = dict(B=Bfield, r0=[0,0], h0=0) wf = kwant.wave_function(syst, energy=0.01, params=params) psi = wf(0)[0] J_0 = kwant.operator.Current(syst) current = J_0(psi, params=params) kwant.plotter.current(syst, current) _________________________________________________________________
Dear Mohamed, it seems that you have defined your bilayer lattice in 3d. If so you have to avoid using the z-axis in your system. For the current you need to define a lattice as 2d shape (ie x and y axis for instance). From the tight binding side, it does not matter if one sets two layers on each other (ie z=0 for boath) and then adds the hopping between each layer. I hope this helps, otherwise it would be great if you share your script to find out the issue. Best, Adel Le lun. 12 juil. 2021 à 12:44, <mohamad.mirzakhani@gmail.com> a écrit :
Dear all, I have written a code in Kwant for a bilayer graphene quantum dot (in 2D manner) to calculate some electronic properties. I can get the results correctly for, e.g, conductance, spectrum, and LDOS. But there is a problem in plotting CURRENT density and I get the following error.
~~ need at least one array to concatenate
Has anyone had a similar experience ? The current density part of code is: ________________________________________________________________ ### Current plot params = dict(B=Bfield, r0=[0,0], h0=0) wf = kwant.wave_function(syst, energy=0.01, params=params) psi = wf(0)[0]
J_0 = kwant.operator.Current(syst) current = J_0(psi, params=params) kwant.plotter.current(syst, current) _________________________________________________________________
Dear Adel, thank you for the reply. Actually, as you can see below, I have defined the bilayer lattice in 2D shape: blg = kwant.lattice.general([(a0*cos_30, a0*sin_30), (a0*cos_30, -a0*sin_30)], [(0, 0), (acc, 0), (acc, 0), (2 * acc, 0)], norbs=1) Just for your consideration I will send my code to you by your personal email. Because, here I couldn't find any option to attach a file. Thank you very much for your consideration! Best, Mohamad
participants (2)
-
Adel Belayadi -
mohamad.mirzakhani@gmail.com