---------- Forwarded message ---------
De : Adel Belayadi <adelphys(a)gmail.com>
Date: mer. 27 nov. 2019 à 20:27
Subject: Re: [Kwant] Tags and sites
To: EUDES THOMAS GOMES DA SILVA <eudes.gomes(a)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(a)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.
>
>
>
>
>
>
>
>
>
>