How to Calculate current-voltage characteristics in graphene nanoribbon in kwant
Dear All, How to calculate the current-voltage characteristics in graphene nanoribbon. calculated the conductance with respect to energy. I have the following code for graphene nanoribbon. how to calculate the current with respect to voltage in this example. import kwant import numpy as np from matplotlib import pyplot import matplotlib.pyplot as plt import numpy as np import numpy.linalg as npl import scipy.sparse.linalg as sla pi=np.pi ############################################## structure ######################## Wnr=10 lnr=30 lat=kwant.lattice.honeycomb(a=2.46,norbs=1) a,b=lat.sublattices ########### functions for structure build def rect(pos): x,y=pos return 0<=x<lnr and 0<=y<Wnr ################################ main structure i.e. rectangle #################### model1 = kwant.Builder() model1[lat.shape(rect,(1,1))] = 0 model1[lat.neighbors()] =2.64 model1.eradicate_dangling() ############### functions for lead structure build ################################ def lead1_shape(pos): x, y = pos return 0< y < Wnr-1 def lead2_shape(pos): x, y = pos return 0< x <Wnr ############first lead codes########## sym = kwant.TranslationalSymmetry(lat.vec((-1,0))) #from the left sym.add_site_family(lat.sublattices[0], other_vectors=[(-1, 2)]) sym.add_site_family(lat.sublattices[1], other_vectors=[(-1, 2)]) lead = kwant.Builder(sym) lead[lat.shape(lead1_shape, (0,1))]=0 lead[lat.neighbors()] = 2.64 model1.attach_lead(lead) model1.attach_lead(lead.reversed()) #second lead attach in reverse manner model1=model1.finalized() kwant.plot(model1) ##hamiltonian mat model1_matrix = model1.hamiltonian_submatrix() eng = npl.eigvalsh(model1_matrix) def plot_conductance(sys, energies): # Compute transmission as a function of energy data = [] for energy in energies: smatrix = kwant.smatrix(sys, energy) data.append(smatrix.transmission(0, 1)) pyplot.figure() pyplot.plot(energies, data) pyplot.xlabel("energy [t]") pyplot.ylabel("conductance [e^2/h]") pyplot.show() plot_conductance(model1,eng)
participants (1)
-
sahu.ajit92@gmail.com