def C3(kx,ky): kt = scipy.sqrt(kx**2+ky**2) mat = scipy.complex128(scipy.zeros((kpSize,kpSize,s.grid.rnum))) mat[0,2,:] = -1j*hbar**2/(2*m0)*s.A6*kt/2 mat[1,2,:] = -1j*hbar**2/(2*m0)*s.A6*kt/2 mat[2,0,:] = 1j*hbar**2/(2*m0)*s.A6*kt/2 mat[2,1,:] = 1j*hbar**2/(2*m0)*s.A6*kt/2 return mat
def C3(kx, ky): kt = scipy.sqrt(kx**2 + ky**2) mat = scipy.complex128(scipy.zeros((kpSize, kpSize, s.grid.rnum))) mat[0, 2, :] = -1j * hbar**2 / (2 * m0) * s.A6 * kt / 2 mat[1, 2, :] = -1j * hbar**2 / (2 * m0) * s.A6 * kt / 2 mat[2, 0, :] = 1j * hbar**2 / (2 * m0) * s.A6 * kt / 2 mat[2, 1, :] = 1j * hbar**2 / (2 * m0) * s.A6 * kt / 2 return mat
def C4(kx, ky): kt = scipy.sqrt(kx**2 + ky**2) mat = scipy.complex128(scipy.zeros((kpSize, kpSize, s.grid.rnum))) mat[0,0,:] = s.Eref+s.delcr+s.delso/3+hbar**2/(2*m0)*(s.A2+s.A4)*kt**2+ \ (s.D1+s.D3)*s.epszz+(s.D2+s.D4)*2*s.epsxx mat[0, 1, :] = hbar**2 / (2 * m0) * s.A5 * kt**2 mat[1, 0, :] = hbar**2 / (2 * m0) * s.A5 * kt**2 mat[1,1,:] = s.Eref+s.delcr-s.delso/3+hbar**2/(2*m0)*(s.A2+s.A4)*kt**2+ \ (s.D1+s.D3)*s.epszz+(s.D2+s.D4)*2*s.epsxx mat[1, 2, :] = scipy.sqrt(2) * s.delso / 3 mat[2, 1, :] = scipy.sqrt(2) * s.delso / 3 mat[2,2,:] = s.Eref+hbar**2/(2*m0)*s.A2*kt**2+ \ s.D1*s.epszz+s.D2*2*s.epsxx return mat
def C4(kx,ky): kt = scipy.sqrt(kx**2+ky**2) mat = scipy.complex128(scipy.zeros((kpSize,kpSize,s.grid.rnum))) mat[0,0,:] = s.Eref+s.delcr+s.delso/3+hbar**2/(2*m0)*(s.A2+s.A4)*kt**2+ \ (s.D1+s.D3)*s.epszz+(s.D2+s.D4)*2*s.epsxx mat[0,1,:] = hbar**2/(2*m0)*s.A5*kt**2 mat[1,0,:] = hbar**2/(2*m0)*s.A5*kt**2 mat[1,1,:] = s.Eref+s.delcr-s.delso/3+hbar**2/(2*m0)*(s.A2+s.A4)*kt**2+ \ (s.D1+s.D3)*s.epszz+(s.D2+s.D4)*2*s.epsxx mat[1,2,:] = scipy.sqrt(2)*s.delso/3 mat[2,1,:] = scipy.sqrt(2)*s.delso/3 mat[2,2,:] = s.Eref+hbar**2/(2*m0)*s.A2*kt**2+ \ s.D1*s.epszz+s.D2*2*s.epsxx return mat
def C1(kx, ky): mat = scipy.complex128(scipy.zeros((kpSize, kpSize, s.grid.rnum))) mat[0, 0, :] = hbar**2 / (2 * m0) * (s.A1 + s.A3) mat[1, 1, :] = hbar**2 / (2 * m0) * (s.A1 + s.A3) mat[2, 2, :] = hbar**2 / (2 * m0) * s.A1 return mat
def C4(kx, ky): mat = scipy.complex128(scipy.zeros((kpSize, kpSize, s.grid.rnum))) mat[0,0,:] = s.Eref+s.Eg0+s.delcr+s.delso/3+hbar**2/(2*s.mepara)*(kx**2+ky**2)+ \ (s.a1+s.D1)*s.epszz+(s.a2+s.D2)*(s.epsxx+s.epsyy) return mat
def C3(kx, ky): return scipy.complex128(scipy.zeros((kpSize, kpSize, s.grid.rnum)))
def C1(kx, ky): mat = scipy.complex128(scipy.zeros((kpSize, kpSize, s.grid.rnum))) mat[0, 0, :] = hbar**2 / (2 * s.meperp) return mat
def C1(kx,ky): mat = scipy.complex128(scipy.zeros((kpSize,kpSize,s.grid.rnum))) mat[0,0,:] = hbar**2/(2*m0)*(s.A1+s.A3) mat[1,1,:] = hbar**2/(2*m0)*(s.A1+s.A3) mat[2,2,:] = hbar**2/(2*m0)*s.A1 return mat
def C4(kx,ky): mat = scipy.complex128(scipy.zeros((kpSize,kpSize,s.grid.rnum))) mat[0,0,:] = s.Eref+s.Eg0+s.delcr+s.delso/3+hbar**2/(2*s.mepara)*(kx**2+ky**2)+ \ (s.a1+s.D1)*s.epszz+(s.a2+s.D2)*(s.epsxx+s.epsyy) return mat
def C3(kx,ky): return scipy.complex128(scipy.zeros((kpSize,kpSize,s.grid.rnum)))
def C1(kx,ky): mat = scipy.complex128(scipy.zeros((kpSize,kpSize,s.grid.rnum))) mat[0,0,:] = hbar**2/(2*s.meperp) return mat