Declare hopping between different type of lattices
Dear Sir, If my query does not suit in this discussion, please forgive me. I wanted to create a Y-shaped 3 terminal structure. For that, I declared 3 different type of lattices, namely lat_a,lat_b and lat_c. lat_a: rectangular shape of width W lat_b: upper arm of Y of width W lat_c: lower arm of Y of width W I am not able to declare hopping between lat_a,lat_b and lat_a,lat_c. Is there any way to declare hopping between two different type of lattices? I would also like to know, is there any reference to create Y_shaped 3-terminal junction? I have appended my code in this mail. Please find the attachment below. With Regards, Sudin
Hi,
I wanted to create a Y-shaped 3 terminal structure. For that, I declared 3 different type of lattices, namely lat_a,lat_b and lat_c.
Why do you have 3 different lattices? When I run your sample code I see that the 3 different lattices are actually the same. What are you trying to achieve? I would probably recommend using a single lattice and just cutting out the desired shape.
I am not able to declare hopping between lat_a,lat_b and lat_a,lat_c. Is there any way to declare hopping between two different type of lattices?
Of course you can declare hoppings between different types of lattices. In the sample code, when I uncomment line 38, I receive the following error and traceback: Traceback (most recent call last): File "sample.py", line 38, in <module> sys[lat_a(4, 4), lat_b(b_f-1, L)] = -t File "/home/jbw/.local/lib/python2.7/site-packages/kwant/builder.py", line 900, in __setitem__ func(sh, value) File "/home/jbw/.local/lib/python2.7/site-packages/kwant/builder.py", line 873, in _set_hopping b2 = b = self.H[b][0] KeyError: Site(kwant.lattice.Monatomic([[1.0, 1.0], [0.0, 1.0]], [0.0, 0.0], ''), array([-1, 20])) So we get a `KeyError` because the site mentioned does not exist in your system. If you look at the preceding lines in your script you will see that this is indeed the case: you never add site latb(-1, 20) to your system. Hope that helps, Joe
The idea: 'cutting out the desired shape' is very nice. Thank you. With Regards, Sudin
Yes, this is what the function `lattice.shape` is for: http://kwant-project.org/doc/1/reference/generated/kwant.lattice.Polyatomic#... Joe On 9 December 2015 at 15:23, Sudin Ganguly <sudin@iitg.ernet.in> wrote:
The idea: 'cutting out the desired shape' is very nice.
Thank you.
With Regards, Sudin
participants (2)
-
Joseph Weston
-
Sudin Ganguly