Periodic and open boundary conditions
Hi,
I am trying to calculate the conductance through coupled quantum nanowires. I have basically considered a square lattice with hopping tx in x direction and modulating the coupling between the wires through ty i.e. the hopping in y direction. My system requires periodic boundary condition along x direction and open boundary condition in y direction. Can you please help me in how this can be done using kwant to meet the above boundary conditions. I have mentioned my code below. Since I am new to Kwant, it would be of much help to me if you help me solving this.
Regards Deepti Rana
def make_sys1(a=1,W=4,barrierpos=1):
def onsite_normal(site,p): return( (2 * (p.tx+p.ty)  p.mu) * pauli.s0sz+p.Ez*pauli.szs0))
def onsite_sc(site,p): return (2 * (p.tx+p.ty ) * pauli.s0sz+p.Ez*pauli.szs0)+p.delta*pauli.s0sx)
def onsite_barrier(site,p): return((2*(p.tx+p.ty)+ p.Vbarrierp.mu)*pauli.s0sz+p.Ez*pauli.szs0))
def hopx(site1, site2, p): return p.tx * pauli.s0sz +1j* p.alphax * pauli.sysz
def hopy(site1, site2, p): return p.ty * pauli.s0sz 1j * p.alphay * pauli.sxsz
lat = kwant.lattice.square(a,norbs=4) syst = kwant.Builder()
syst[(lat(x, y) for x in range(barrierpos) for y in range(W))]=onsite_barrier syst[kwant.builder.HoppingKind((1, 0), lat, lat)] = hopx syst[kwant.builder.HoppingKind((0, 1), lat, lat)] = hopy
sym_left = kwant.TranslationalSymmetry((a, 0)) lead0 = kwant.Builder(sym_left, conservation_law=pauli.s0sz) lead0[(lat(0, j) for j in range(W))]=onsite_normal lead0[kwant.builder.HoppingKind((1, 0), lat, lat)] = hopx lead0[kwant.builder.HoppingKind((0, 1), lat, lat)] = hopy
sym_right = kwant.TranslationalSymmetry((a, 0)) lead1 = kwant.Builder(sym_right) lead1[(lat(0, j) for j in range(W))]=onsite_sc lead1[kwant.builder.HoppingKind((1, 0), lat, lat)] = hopx lead1[kwant.builder.HoppingKind((0, 1), lat, lat)] = hopy syst.attach_lead(lead0) syst.attach_lead(lead1)
syst = syst.finalized() return syst
Hi Rana,
The computation that you have in mind should be possible with Kwant quite easily.
However, you do not describe what your specific problem is and the code that you provide is not complete so it will not run. To help you people on this list, even motivated ones, would have to resort to guessing.
Cheers Christoph
participants (2)

Christoph Groth

Deepti Rana