---------- Forwarded message --------- De : Adel Belayadi <adelphys@gmail.com> Date: mer. 27 nov. 2019 ร 20:27 Subject: Re: [Kwant] Tags and sites To: EUDES THOMAS GOMES DA SILVA <eudes.gomes@ufrpe.br> Dear EUDES, why can tags assume only integers values? In fact, the tight binding approach works like the discretized Schrodinger equation see Ref [1]. In this context each site is defined by an integer lattice coordinates (๐, ๐) which provide the real-space coordinates (๐ฅ, ๐ฆ) as (a1*n, a2*m ). Once you define the primitive vector of the system letโs say *๐*1 and *๐*2, so the translation to get the whole lattice leads to write *๐ * = ๐*๐*1 + m*๐*2. Here n and m are integer which refer to the tag in kwant. So building the whole lattice has nothing to with real space position( since we use *translation as ๐ * = ๐*๐*1 + m*๐*2 ). Now the most important task is to define the hopping between neighboring atoms. A hopping is created between the main cell (for instance (0, 0) ) and a neighboring cell specified by relative index such as (0, 1) and (1, 0). For more explanation, see the enclosed figure ( in case of square lattice ) Additionally, remember that when we use the Bloch theorem. The wave function for a periodic lattice is defined by a phase factor: For instance let as say ฯ (nโq, mโq ). =exp(ยฑiqakx)*exp(ยฑiqaky) ฯ (n, m). Where q in an integer that way we deal with integer not with space positions. Ps: Ref[1]: Timothy B. Boykin. The discretized Schrodinger equation and simplemodels for semiconductor quantum wells best, Adel Le mar. 26 nov. 2019 ร 20:29, EUDES THOMAS GOMES DA SILVA < eudes.gomes@ufrpe.br> a รฉcrit :
Hi Dears,
why can tags assume only integers values?
For example:
lat = kwant.lattice.Polyatomic([(1, 0, 0), (0, 1, 0),(0, 0, 1)], [(1, 0, 0), (0.0, 1, 0.0),(0.0, 0.0, 1)],norbs=1) syst = kwant.Builder()
# it is possible: syst[a(1,0,0)]=4
and syst[a(1.5,0,0)]=4
gives me the same result as before?
Both of them says:
a(1,0,0)
Site(kwant.lattice.Monatomic([[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0]], [0.0, 0.0, 0.0], '0', 1), array([1, 0, 0]))
a(1.5,0,0)
Site(kwant.lattice.Monatomic([[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0]], [0.0, 0.0, 0.0], '0', 1), array([1, 0, 0]))
The later should be:
Site(kwant.lattice.Monatomic([[1.0, 0.0, 0.0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0]], [0.0, 0.0, 0.0], '0', 1), array([1.5, 0, 0]))
best regards.
Eudes.
participants (1)
-
Adel Belayadi