closed graphene system - PBCs in one direction - dispersion

Dear all, I create Hamiltonian H for a graphene lattice with nn-hopping only, no leads, i.e. closed system. Each a (b) sublattice site is located at r=i*a_1+j*a_2 (r=i*a_1+j*a_2+d), with i,j being integers, a_1,2 being Bravais lattice vectors, and d a vector pointing from a to b sublattice. Hence each site is marked with |i,j,a or b>. My question is, once the nn-hoppings are set, how do I locate the position in H belonging to specific matrix element between two sites, say <2,5,a|H|1,2,b>? My goal is to plot a dispersion relation E(k_y) of such a closed system with periodic boundary conditions in y-direction (I did it by hand) and hard-wall in x-direction. I guess I need to do the Fourier transform in y-direction by hand. Or, are there some built-in functions to do this? Thank you for eventual answer or pointing me to duplicate question. Tibor

Dear Tibor, The order of the sites in the Hamiltonian is the same as for sys.sites. So you just need to find the number ( index) of your sites <2,5,a| and <1,2,b|. you can do this the following way: # List containing the (tag,family) of the sites with the same order as sys.sites Liste=[(sys.sites[i].tag, sys.sites[i].family) for i in range(len(sys.sites))] H= sys.hamiltonian_submatrix() #the Hamiltonian of the sys # This function returns the value of the Hamiltonian # x and y have the form (tag,family). Ex: x=([1,2],a) def H_value(x,y): k=Liste.index(x) l=Liste.index(y) return H[k,l] #value of <2,5,a|H|1,2,b> value=H_value(([2, 5],a),([1, 2],b)) For the second part of your question, you shoud know that for a finite system, the spectrum is not continuous (it is discrete) and can be obtained just by diagonalising your Hamiltonian. This is true even if you put periodic boundary conditions. Think about a 1D chain of lenght L: the eigenvalues are e_m= -2t cos(m pi/(L+1)). m=1..L if you put the periodic boundary condition, you will just have : e_m=-2t cos(2 m pi/L), m=1..L In general, when we talk about the relation of the dispersion, we mean that of the leads (which are infinite) independently from the shape of the scattering region. I hope that this helps. Best regards, Adel On Tue, Jul 19, 2016 at 10:21 PM, Tibor Sekera <tibor.sekera@unibas.ch> wrote:
Dear all,
I create Hamiltonian H for a graphene lattice with nn-hopping only, no leads, i.e. closed system.
Each a (b) sublattice site is located at r=i*a_1+j*a_2 (r=i*a_1+j*a_2+d), with i,j being integers, a_1,2 being Bravais lattice vectors, and d a vector pointing from a to b sublattice. Hence each site is marked with |i,j,a or b>.
My question is, once the nn-hoppings are set, how do I locate the position in H belonging to specific matrix element between two sites, say <2,5,a|H|1,2,b>?
My goal is to plot a dispersion relation E(k_y) of such a closed system with periodic boundary conditions in y-direction (I did it by hand) and hard-wall in x-direction. I guess I need to do the Fourier transform in y-direction by hand. Or, are there some built-in functions to do this?
Thank you for eventual answer or pointing me to duplicate question.
Tibor
-- Abbout Adel
participants (2)
-
Abbout Adel
-
Tibor Sekera