Dear Zhang Bing,
Please take a look at the following bit of code that calculates
nonlocal resistance in a 4-terminal device from a Kwant scattering
matrix. (Taken from the Kwant example to appear with the revised
version of Kwant paper.)
# First we calculate the conductance matrix given the scattering matrix S.
cond = np.array([[s.transmission(i, j) for j in xrange(n)] for i in
xrange(n)])
# Correct the reflection blocks, so that rows and columns sum to zero.
cond -= np.diag(cond.sum(axis=0))
# In order to calculate the nonlocal conductance we eliminate one row and
# one column from the condutcance matrix. This amounts to setting the
# corresponding voltage to zero and using current conservation to calculate
# the current through the last terminal.
cm = conductance_matrix(sys, energy, [args])[:-1, :-1]
# We then set the current to be 1 in the lead 0, -1 in lead 2, and
# calculate the voltage in lead 1 (so V_1 - V_3 since V_3 = 0).
nonlocal_resistance = np.linalg.solve(cm, [1, 0, -1])[1]
Generalization to a 6-terminal case should be straightforward.
Best regards,
Anton Akhmerov
On Sat, Apr 26, 2014 at 6:14 AM, ZHANG Bing
Dear Sir,
I am a PhD student of Hong Kong University of Science and Technology. I want to use KWANT to caculate Hall resistance of a Hall bar structure.We can get the conductance between 6 electrodes, but how to get hall resistance? Can you give me some help? Thank you very much.
Best Regards, Zhang Bing