Thanks very much for the quick reply,

1) I would like to do both. but more so for the finalized builder.

2) Ok I saw this post, but I am still a little unsure how this is set up. Do I start with some sym0 = kwant.TranslationalSymmetry(graphene.vec((1, 0))). And then add_site_family? And is the other vectors a general direction, or the lattice direction?

3) Thanks very much, it is what I suspected but I was unsure.


On Apr 21, 2016, at 12:52 PM, Christoph Groth <> wrote:

Hi Jacob,

I will start to answer some of your questions:

Gayles, Jacob Davis wrote:

1) I would like to know what is the simplest way the number of sites, the positions, and the tuples of these sites. I would like to print them all out.

For a builder or for a finalized builder?

2) In this graphene flake example ( <>) if i wanted to make a hall bar setup, how would I exactly attach the leads purely in the x-axis and purely only the y-axis. (more of an aesthetic question).

Kwant chooses the unit cells of leads according to a rule that does not always lead (pun intended) to aesthetically pleasing results and also sometimes degrades performance by adding sites to the scattering region without a real need.  You can, however, choose the direction in which leads are “sliced” yourself by using “add_site_family” method of your symmetry and its “other_vectors” parameter before you start adding sites to your lead.  See here for an example:

3) in terms of the hopping, when one has  sys[lat.neighbors(1)] =t sys[lat.neighbors(2)] =t is the hopping mediated by the distance i.e. t_1=t/a_1 and t_2=t/a_2.

The bits of the Hamiltonian (includling the hoppings) are what you set them to.  The lattice constant is only used for plotting.

So long,