Dear Ajit, Both scenarios are correct. But this depends on the way you define your Hamiltonian, i.e.,. whether the spin degeneracy is lifted or not. Let me explain more:
*In the spinfull case (spin degeneracy is lifted)*, the quantity smatrix.transmission(1, 0) is Tup+Tdn and for this case the conductance unit is [e^2/h]. However, when the spin degeneracy is not lifted, the transmittance Tup=Tdn=T0 and therefore Total transmittance T=Tup+Tdn=2T0. As you might realize, kwant computes T0 as smatrix.transmission(1, 0). That is why the conductance is in the unit of [2e^2/h]. I am not sure whether you are aware of the spin degeneracy or not. In the case of the spin full matrix, the number of orbitals is 2 per site. For instance, we multiply the hopping and onsite terms by Paulis matrices (depending on the physics that rules your system). The same philosophy happens with the valley (the paper you are referring to). For instance, If you want to calculate the conductivity tensor for the quantum Hall effect in graphene with a magnetic field (external) and use one orbital by the site (spinless Hamiltonian). In this case, you have to multiply by 4 to account for spin and valley degeneracy. Best Adel Le jeu. 18 mai 2023 à 08:02, <[email protected]> a écrit : > Hello Kwant Developers, > > 1. I am new to Kwant. In tutorial 2.5, it is mentioned that the > conductance unit is [e^2/h] whereas I find some papers using Kwant > mentioned as [2e^2/h] for e.g. > https://doi.org/10.1016/j.physleta.2020.126990. Please clarify this. > > 2. I calculate the energy (unit in eV) from the KPM method and then > calculate the conductance in Kwant. What's the unit for the conductance in > my case? Please find below the code that I used to calculate the > conductance. > > def dos_eng(model1): > rho = kwant.kpm.SpectralDensity(model1) > eng1, densities = rho.energies, rho.densities > return eng1, densities > > def calc_conductance(sys, energies): > # Compute transmission as a function of energy > data = [] > for energy in energies: > smatrix = kwant.smatrix(sys, energy) > data.append(smatrix.transmission(1, 0)) > return data > > Thanking You, > Ajit >
