Matching the eigenmodes in scattering region and leads
Dear KWANT Community, I am defining a scattering region and its corresponding leads by specifying how many unit cells are there in transversal and longitudinal direction. SR and leads have same number of unit cells in transversal direction but leads have only one unit cell in longitudinal direction. Here is my code that does that: def scattering_region_shape(pos): pos = np.array(pos) # Get the primitive vector coordinates of the position l, w = np.dot(self.Pinv, pos.reshape(-1, 1)).flatten() if l >= -0.1 and l <= n_cell_l + self.ucell_eps and w >= -(self.armchair_edge_eps + self.ucell_eps) and w <= n_cell_w + self.ucell_eps: return True return False def leads_shape(pos): pos = np.array(pos) x,y = pos # Get the primitive vector coordinates of the position l, w = np.dot(self.Pinv, pos.reshape(-1, 1)).flatten() if l >= -0.1 and l <= 1 + self.ucell_eps and w >= -(self.armchair_edge_eps + self.ucell_eps) and w <= n_cell_w + self.ucell_eps: return True return False 1) First of all, what is the difference between these two ways of calculating wavefunctions of scattering region?: wf = kwant.wave_function(system.sys, -2.4)(0) I would expect wf(0) and wf(1) returns wavefunctions that has different shapes because one of them is for SR and the other is for leads where I put less sites to the leads. But it does not, both wavefunctions have 444 elements. Why? Second way: H = system.sys.hamiltonian_submatrix() eigvals, eigvecs = np.linalg.eigh(H) idx = np.argsort(eigvals) eigvals = eigvals[idx] eigvecs = eigvecs[:,idx] E = -2.4 # Find the 10 closest eigenenergies to E closest_indices = np.argsort(np.abs(eigvals - E))[:10] # Get the 10 closest eigenenergies and their corresponding eigenvectors closest_eigvals = eigvals[closest_indices] closest_eigvecs = eigvecs[:, closest_indices] 2) Secondly, scattering region has no translational symmetry and it has discrete energy levels. On the other hand, leads have translational symmetry and their energy levels form continous bands (we can sample as many momentum space points as we want). How can we obtain a solution to Schrödinger Equation for any energy that crosses at least one band? Maybe the spectrum of the scattering region does not contain that energy and we cannot match a wavefunction of lead to the wavefunction in the scattering region to get a solution for the whole system with a definite energy? I hope I made my questions clear. I am curiously waiting for your answers Thank you -- *Yiğithan Gediz* *Junior Undergraduate Student* *Department of Physics* *Koç University*
participants (1)
-
YIGITHAN GEDIZ