I calculated the spin-resolved current and transmission curves of a graphene nanoribbon recently. The I-V curve have a discontinuous point at bias=0.289 V. I went on to study the transmission curve and didn't found discontinuity in the transmission curve. I doubt that I didn't get the correct current. Then I integrating the transmission curve according to [tex]e/h*\int_{-\infty}^{\infty}T(f_L-f_R)dE[/tex]. I found the alpha spin current from transmission agrees well with the current alculation. The former is 2.004e-5 miuA, and later is 1.993e-5 miuA. But the beta spin current from transmission is completely different from the current calculation. The former is 2.47e-3 miuA, and later is 3.61e-5 miuA!
The electrode temperature is 300K. The script of calculating current is as below. Furthermore, when I increase the points from 100 to 5000,10000. The beta spin current increase from 3.61e-5 miuA to 9.7e-5 miuA,9.69e-5 miuA. When integrating the transmission curve, I found the transmission at E=-0.2875 eV contributes very much. Thus I guess the calculation energy window is just taken not too larger than [-bias/2,bias/2], which is not enought for my case. ???I also want some help on how to choose a proper number of points and green_function_infinitesimal in current calculation.
*******************************************************************************
bz_int_param = brillouinZoneIntegrationParameters( (1,1) )
current_up = calculateCurrent(
self_consistent_calculation = scf,
brillouin_zone_integration_parameters =bz_int_param,
spin = Spin.Up,
green_function_infinitesimal = 1.0e-5*electronVolt,
number_of_points = 100
)
current_down = calculateCurrent(
self_consistent_calculation = scf,
brillouin_zone_integration_parameters =bz_int_param,
spin = Spin.Down,
green_function_infinitesimal = 1.0e-5*electronVolt,
number_of_points = 100
)
print >>tcfile, "%s\t%.2e\t%.2e" %(voltage,current_up.inUnitsOf(Ampere)current_down.inUnitsOf(Ampere))
*******************************************************************************