Dear Quantumwise Staffs:
I wanna to calculate thermal-induced-current, so I make a new script by modifying the script from this topic: http://quantumwise.com/forum/index.php?topic=3411.msg20255#msg20255 (http://quantumwise.com/forum/index.php?topic=3411.msg20255#msg20255). But I have a questions:
what are units of elementary charge e, plank constant h and energes in the script, respectively? I find that I have to add "eV" in this sytanx to calculate current successfully :
k1 =1.0/planck_constant*Units.e*1*[b]eV[/b]*sum(f*T1*dE)
. But If so. it means that there is no unit for energes.
Attachments I is the script for calculating spin seebeck from the topic
Attachments II is what I modified using Attachments one
Could any one help me to inspect if there is mistakes in my script ?
Thanks
You are making quite a few changes when going from k1 = -1.0/planck_constant*(boltzmann_constant*temperature)*sum(E*T1*df)*dE
to k1 =1.0/planck_constant*Units.e*sum(f*T1*dE)
. For example, boltzmann_constant*temperature
has units of eV, but you remove it, so you may easily be missing the unit charge.
thank you, Sir, but I am confused :o
acccording to the formula in fig1, I write this code:
k1 =1.0/planck_constant*Units.e*sum(f*T1*dE)
planck_constant has the unit of eV*s, Units.e is elementary charge so in unit of Coulomb(C), f is Fr-Fl so is dimensionless, T1 is electron spectrum so is also dimensionless, dE is the infinitesimal energy so have the unit of eV. If I multiply these dimensions I will get Coulomb/s, which is just the current. Why should I have to add "eV" ?
what's more, E in attachment II is :
E = numpy.array(energies+energy_zero-average_fermi_level-energy_shift)
instead of E in attachment I :
E = numpy.array((energies+energy_zero-average_fermi_level-energy_shift)/(temperature * boltzmann_constant))
I don't know whether I am wrong
If possible, could you please provide a standard script for calculating thermal-induced current?
best