Dear Nathaniel, In all cases, whatever you use for the parameters of your system (a, t, e_z), the transmission will be a number and will not change.
You are talking about a voltage. The voltage we talk about usually, is the difference between the left and right lead. The Transmission, which differs from the conductance, is obtained for the limit V--->0 and dividing by e^2/h. (the exact form involves an integral over energy) Transmission: no unit, doesn't depend on V Conductance: e^2/h, depends on V In the code you provided you are calculating the transmission. if you want to use a voltage, usually you will need to take a fraction of "t" regardless of the unit you are considering. I hope this helps, Adel On Mon, Jul 27, 2020 at 2:12 AM Nathaniel Gregory Seil < nsei7...@uni.sydney.edu.au> wrote: > Dear Abbout, > > Many thanks for your response and advice. > > I have made the changes you've suggested. However, I am unsure of your > last point. I get that the output is a transmission and that change in > units would not affect the units on that quantity. > > However, how would I know that I am applying the correct voltage/energy to > the leads? > > I understand that there is a scaling of the energies applied to the system > that can be calculated like: > > - t_actual = hbar^2 / (2*m_electron_real * a_real^2) > - (hbar, m_electron_real and a_real take on their SI units) > - t is set to 1 in the code > - Therefore the range of energies from [0 , 1] (energies=[0.01 * i*t > for i in range(100)]) actually corresponds to energies [(0 * > t_actual,1*t_actual)] > > Would it therefore be correct to take this approach? i.e.: > 1) to use a = 1, t = 1 (as the default example code does) and then > 2) acknowledge this solution, if applied to a system with a_real, > m_electron_real and hbar in SI units, corresponds to applying lead energies > in the range [(0 * t_actual,1*t_actual)]? > > > Also if other people wish to please feel welcome to add to this discussion. > > > Many thanks again for your help. > ------------------------------ > *From:* Abbout Adel <abbout.a...@gmail.com> > *Sent:* Monday, July 27, 2020 2:32 AM > *To:* Nathaniel Gregory Seil <nsei7...@uni.sydney.edu.au> > *Cc:* kwant-discuss@python.org <kwant-discuss@python.org> > *Subject:* Re: [Kwant] Migrating spin_orbit.py to real unit system > > Dear Nathaniel, > > If you check your band, you will see that the maximum of your energy is of > the order 1E-34 ! > kwant.plotter.bands(syst.leads[0]) > This means that you have a problem in your definitions. > First of all, do not define the Pauli matrices with hbar: You can see that > your onsite potential is (as you defined it) t*hbar*sigma0. It should be > t*sigma0. > For the spin orbit term, it depends how you define the constant alpha. if > you check the reference [1], you will see that there is no hbar. > In your code, (after you eliminate hbar from the definition of the Pauli > matrices), alpha becomes an energy, so you need to put a fraction of "t" > alpha=0.1*t. > > Check also the value of e_z and verify that it is consistent with the > values of "t" and alpha. > > I want just to stress that the transmission you are calculating is a > number, so it will not depend on the change of units you did. > I hope this helps > > > [1] https://journals.aps.org/prl/abstract/10.1103/PhysRevLett.90.256601 > <https://protect-au.mimecast.com/s/QUZGC6XQ4LfDBoRwCpm24b?domain=journals.aps.org> > > On Sat, Jul 25, 2020 at 3:05 PM Nathaniel Gregory Seil < > nsei7...@uni.sydney.edu.au> wrote: > > Hello, > > I would like to model a 2DEG under a magnetic field and have been > investigating the spin_orbit.py code. > > I would like to modify this code so that it utilises real units and models > upon a to-scale lattice. However, I am a little bit unclear as to how to > progress. > > I noticed in the base code we have a = 1, t = 1 and hbar = 2 (seen from > the Pauli spin matrices which normally have hbar/2 as a coefficient in > front). To represent the real life scenario of a lattice with constant a = > 5E-10 m, would we do the following: > > - a = 5E-10 m > - hbar = 1.05457E-34 J s (standard SI units) > - m_electron = 9.109E-31 kg (standard SI units) > - t = hbar ^ 2 / (2 * m_electron * a^2) > > and then just substitute these values into the rest of the code? > > I get the result of 0 conductivity for the lead voltages -0.046 to 0.105V > (code shows "energies=[0.01 * i*t - 0.3*t for i in range(100)]"). I also > get this for -0.0046 to 0.0105V and for -0.46 - 1.05V. Do these results > seem right? > > I have attached my code with these substitutions and the results. > > Many thanks, > Nathaniel Seil > > > > -- > Abbout Adel > -- Abbout Adel