Conductance, transmission coefficient and temperature
Dear all I'm new to kwant and I'm trying to use kwant to replicate the result of zigzag graphene nanoribbons. I noticed the result get from "smatrix.transmission" is in the unit of e^2/h, which is the conductance. In some other software, the value to represent the transmission is called "transmission coefficient". I found in some of the papers( http://iopscience.iop.org/article/10.7567/JJAP.52.06GD05/meta), the conductance G can be changed to transmission coefficient by an intermediate function *Kn*. [image: Inline images 1] [image: Inline images 2] My question is: 1. Are the results I get from "smatrix.transmission" equivalent to the transmission coefficient? if not, how can I change the conductance to transmission coefficient? Can I change the conductance representation into transmission coefficient by the above equation? The reason I want to do this is that I can easily get the current/voltage curve by integrating the transmission coefficient. 2. Can I get transmission coefficient by intrinsic function already implemented in kwant? 3. I remember in some other quantum transport software, I need to set temperature for the transport calculation. But i notice I don't need to consider temperature in kwant. If I want to take temperature into account (fermi distribution), how can I do it?(Using the above equation?) 4. I calculate the zigzag graphene nanoribbon using kwant. I set onsite energy =0 and hopping =-2.74. I noticed my results are a bit wired. The major difference is I don't have an transmission peak in fermi energy. Is this because I didn't passivate my edge with hydrogen? Thanks for advance. PS: One thing I need to mention in my codes is: if I set energy equals to 0.0, "kwant.smatrix(sca, energy)" will return an error. So i replace 0.0 with 1e-5. My kwant calculation: [image: Inline images 5] reference [image: Inline images 4] (reference https://www.quantumwise.com/documents/tutorials/latest/BasicGrapheneTutorial... ). kwant codes is attached. #=================== import kwant from matplotlib import pyplot from math import sin, cos, tan, sqrt import numpy as np l_a=1.0 zgnr=kwant.lattice.general([(sqrt(3)*l_a,0),(0,3*l_a)], [(0,0),(0.5*sqrt(3)*l_a,l_a/2),(0.5*sqrt(3)*l_a,3*l_a/2),(0,2*l_a)]) a,b,c,d=zgnr.sublattices ld=kwant.TranslationalSymmetry(zgnr.vec((-1,0))) rd=kwant.TranslationalSymmetry(zgnr.vec((1,0))) h=4 w=h def shape1(pos): x,y=pos return (-h+2<y<h and abs(x)<w) left_lead=kwant.Builder(ld) left_lead[zgnr.shape(shape1,(0,0))]=0 left_lead[[kwant.builder.HoppingKind((0,0),a,b)]]=-2.74 left_lead[[kwant.builder.HoppingKind((0,0),b,c)]]=-2.74 left_lead[[kwant.builder.HoppingKind((0,0),c,d)]]=-2.74 left_lead[[kwant.builder.HoppingKind((-1,0),b,a)]]=-2.74 left_lead[[kwant.builder.HoppingKind((-1,0),c,d)]]=-2.74 left_lead[[kwant.builder.HoppingKind((0,1),a,d)]]=-2.74 kwant.plot(left_lead); right_lead=kwant.Builder(rd) right_lead[zgnr.shape(shape1,(0,0))]=0 right_lead[[kwant.builder.HoppingKind((0,0),a,b)]]=-2.74 right_lead[[kwant.builder.HoppingKind((0,0),b,c)]]=-2.74 right_lead[[kwant.builder.HoppingKind((0,0),c,d)]]=-2.74 right_lead[[kwant.builder.HoppingKind((-1,0),b,a)]]=-2.74 right_lead[[kwant.builder.HoppingKind((-1,0),c,d)]]=-2.74 right_lead[[kwant.builder.HoppingKind((0,1),a,d)]]=-2.74 sca=kwant.Builder() sca[zgnr.shape(shape1,(0,0))]=0 sca[[kwant.builder.HoppingKind((0,0),a,b)]]=-2.74 sca[[kwant.builder.HoppingKind((0,0),b,c)]]=-2.74 sca[[kwant.builder.HoppingKind((0,0),c,d)]]=-2.74 sca[[kwant.builder.HoppingKind((-1,0),b,a)]]=-2.74 sca[[kwant.builder.HoppingKind((-1,0),c,d)]]=-2.74 sca[[kwant.builder.HoppingKind((0,1),a,d)]]=-2.74 sca.attach_lead(left_lead) sca.attach_lead(right_lead) sca=sca.finalized() kwant.plot(sca); #bands=kwant.physics.Bands(left_lead); #mom=np.linspace(-np.pi,np.pi,101) #ee=[bands(k) for k in mom] #pyplot.plot(mom, ee); #pyplot.grid('on') #pyplot.ylim(-2.2,2.2) momenta = [-np.pi + 0.02 * np.pi * i for i in xrange(101)] bands = kwant.physics.Bands(sca.leads[0]) ee = [bands(k) for k in momenta] pyplot.plot(momenta, ee) energies = [] data = [] for ie in xrange(501): energy = ie * 0.01-2.5 if energy ==0.0: energy = 1e-5 # compute the scattering matrix at a given energy smatrix = kwant.smatrix(sca, energy) # compute the transmission probability from lead 0 to # lead 1 energies.append(energy) data.append(smatrix.transmission(1, 0)) pyplot.figure() pyplot.plot(energies, data) pyplot.xlabel("energy [t]") pyplot.ylabel("conductance [e^2/h]") pyplot.show() #===========================
participants (1)
-
L.M J