Dear Sir, Thank you for the clarification.
Naveen Department of Physics & Astrophysics University of Delhi New Delhi-110007 On Tue, Aug 13, 2019, 17:56 Anton Akhmerov <anton.akhmerov...@gmail.com> wrote: > Dear Naveen, > > These inwards- and outwards- facing leads wouldn't have translation > invariance. This makes one unable to compute a mode decomposition in > such a geometry, and therefore computing the conductance becomes > extremely difficult. Right now Kwant only implements the algorithms > that assume translationally invariant leads. > > Best, > Anton > > On Tue, 13 Aug 2019 at 14:15, Naveen Yadav <naveengunwa...@gmail.com> > wrote: > > > > Dear sir, > > > > syst.attach_lead(lead, origin=lat(0, 0, 0)) # lat(0, 0, 0) is in the > hole of the annulus > > This is okay. But I want to create leads in the radial direction, > suppose X is the width of cylinder, Y is circumference and Z is the > Difference in outer and inner radii. So, I want to create leads wrapped > around Y, for inner circumference lead should directed towards origin and > for outer circle directed away from the origin. Code for creating annulus > geometry is given below- > > > > import kwant > > import scipy.sparse.linalg as sla > > import matplotlib.pyplot as plt > > import tinyarray > > import numpy as np > > from numpy import cos, sin, pi > > import cmath > > from cmath import exp > > > > sigma_0 = tinyarray.array([[1, 0], [0, 1]]) > > sigma_x = tinyarray.array([[0, 1], [1, 0]]) > > sigma_y = tinyarray.array([[0, -1j], [1j, 0]]) > > sigma_z = tinyarray.array([[1, 0], [0, -1]]) > > > > > > def make_system(a=1, L=22, r_in=22, r_out=30, t=1.0, t_x=1.0, t_y=1.0, > t_z=1.0, lamda=0.2, beta=1.05, phi_uc = 0.0078): > > # ring shape > > def ring(pos): > > (z, y, x) = pos > > rsq = y ** 2 + z ** 2 > > return r_in ** 2 <= rsq <= r_out ** 2 and x in range (L) > > > > def onsite(site): > > return (t_z * cos(beta) + 2 * t) * sigma_z > > > > def hoppingx(site0, site1): > > return (-0.5 * t * sigma_z - 0.5 * 1j * t_x * sigma_x) > > > > def hoppingy(site0, site1): > > return -0.5 * t * sigma_z - 0.5 * 1j * t_y * sigma_y > > > > def hoppingz(site0, site1): > > y = site1.pos[1] > > return (-0.5 * t_z * sigma_z - 0.5 * 1j * lamda * sigma_0) * > exp(2 * pi * 1j * phi_uc * a * (y-40)) > > > > > > syst = kwant.Builder() > > lat = kwant.lattice.cubic(a, norbs=2) > > syst[lat.shape(ring, (0, r_in+1, 0))] = onsite > > syst[kwant.builder.HoppingKind((1, 0, 0), lat, lat)] = hoppingz > > syst[kwant.builder.HoppingKind((0, 1, 0), lat, lat)] = hoppingy > > syst[kwant.builder.HoppingKind((0, 0, 1), lat, lat)] = hoppingx > > > > lead = kwant.Builder(kwant.TranslationalSymmetry((-a, 0, 0))) > > > > lead[lat.shape(ring, (0, r_in+1, 0))] = onsite > > lead[kwant.builder.HoppingKind((1, 0, 0), lat, lat)] = hoppingz > > lead[kwant.builder.HoppingKind((0, 1, 0), lat, lat)] = hoppingy > > lead[kwant.builder.HoppingKind((0, 0, 1), lat, lat)] = hoppingx > > > > syst.attach_lead(lead) > > syst.attach_lead(lead, origin=lat(0,0,0)) > > return syst > > > > def analyze_system(): > > syst = make_system() > > fig = plt.figure() > > ax = kwant.plot(syst) > > ax.savefig('sys2.png',dpi=200) > > > > def main(): > > syst = make_system() > > analyze_system() > > main() > > > > On Tue, Aug 13, 2019 at 3:18 PM Joseph Weston <joseph.westo...@gmail.com> > wrote: > >> > >> Hi, > >> > >> Dear sir, > >> > >> Could we attach circular leads to the inner and outer circle of annulus > geometry in 3D? Please suggest me if there is a way to do that. > >> > >> What do you mean by circular leads? Do you mean leads with a circle > cross-section (i.e. a semi-infinite cylinder lead)? If so then all you need > to do is create a lead with a circular cross-section uses 'lat.shape' in a > similar way to how you created the scattering region. You can attach leads > to the interior of the annulus by specifying the parameter 'origin' to be a > site in the interior of the annulus when calling 'attach_lead' (see the > documentation [1]). e.g.: > >> > >> syst.attach_lead(lead, origin=lat(0, 0)) # lat(0, 0) is in the > hole of the annulus > >> > >> > >> Happy Kwanting, > >> > >> > >> Joe > >> > >> > >> [1]: > https://kwant-project.org/doc/1/reference/generated/kwant.builder.Builder#kwant.builder.Builder.attach_lead > > > > > > > > -- > > > > > > With Best Regards > > NAVEEN YADAV > > Ph.D Research Scholar > > Deptt. Of Physics & Astrophysics > > University Of Delhi. >