Thank you so much, it was driving me crazy. El jue, 27 abr 2023, 17:42, Anton Akhmerov <anton.akhmerov...@gmail.com> escribió:
> Hi Alejandro, > > Please see the full traceback message, it describes that the problem > is in the shape function. The documentation of Builder.fill states > that the shape function has to accept sites are arguments, and you > instead assume that the function takes a real space position instead. > > Hope that this helps, > Anton > > On Thu, 27 Apr 2023 at 16:26, Alejandro Alvarez Chico <aleal...@ucm.es> > wrote: > > > > Hello: > > > > Im simulating a nanotube with this hamiltonian: > > ns = {'hdiag':[[1,0,0,0],[0,-1,0,0],[0,0,1,0],[0,0,0,-1]], > 'hA1':[[0,1,0,0],[1,0,0,0],[0,0,0,-1],[0,0,-1,0]], > > 'hA2r':[[0,0,0,1],[0,0,1,0],[0,0,0,0],[0,0,0,0]], > 'hA2s':[[0,0,0,0],[0,0,0,0],[0,1,0,0],[1,0,0,0]] } > > > > ham=""" > > > > > (C_0+C_1*k_z**2+C_2*(k_x**2+k_y**2))*identity(4)+(M_0+M_1*k_z**2+M_2*(k_x**2+k_y**2))*hdiag > + > > (B_0*k_z)*hA1 + (1/sqrt(2)*(1+1j)*A_0*(k_x-1j*k_y))*hA2r + > (1/sqrt(2)*(1-1j)*A_0*(k_x+1j*k_y))*hA2s > > > > """ > > ham= kwant.continuum.sympify(ham,ns) > > and this shape: > > > > def cuboid_shape(pos): > > x, y, z = pos > > return 0 <= x < Lx/2 and abs(y) <= R and abs(z) <= > np.sqrt(R**2-y**2) > > > > When using : > > > > lat = kwant.lattice.general([(1, 0, 0),(0, 1, 0),(0, 0, 1)], norbs=4) > > syst = kwant.Builder() > > template = kwant.continuum.discretize(ham, coords =['x','y','z'], > grid=a) > > syst.fill(template, cuboid_shape,(0,0,0)) > > > > I get this weird error that all the sites have been deleted because an > exception with fill(); and i can't seem to find a similar error anywhere on > the internet. Any ideas? > > > > Kind Regards > > > > Alejandro Álvarez Chico > > >