The tight binding model¶
Exercises¶
Preliminary provocations¶
- Compare the expression of the effective mass with Newton's second law. Do you observe any similarities?
-
Check the units of the effective mass. Is it what you expect?
-
Calculate the effective mass of the free-electron dispersion relation. Is this what was expected?
-
Under what condition is the effective mass the same for each electron?
If the dispersion relation is parabolic, so in the free electron model.
Exercise 1: The next-nearest neighbour chain¶
Let's expand our one-dimensional chain model by extending the range of interaction to include the next-nearest neighbours:
-
Write down the new Schrödinger equation for this system.
The Schrödinger equation is given by: such that we find
-
Solve the Schrödinger equation to find the dispersion relation .
Solving the Schrödinger equation yields dispersion:
-
Calculate the effective mass .
Plot for t=t':
k1 = np.linspace(-pi, -pi/2-0.01, 300); k2 = np.linspace(-pi/2+0.01, pi/2-0.01, 300); k3 = np.linspace(pi/2+0.01, pi, 300); pyplot.plot(k1, 1/(5*np.cos(k1)),'b'); pyplot.plot(k2, 1/(5*np.cos(k2)),'b'); pyplot.plot(k3, 1/(5*np.cos(k3)),'b'); pyplot.xlabel(r'$k$'); pyplot.ylabel('$m_{eff}(k)$'); pyplot.xticks([-pi,0,pi],[r'$-\pi/a$',0,r'$\pi/a$']); pyplot.yticks([],[]); pyplot.tight_layout();
-
Sketch the effective mass as a function of for the cases , and .
Plots for 2t'=t, 4t'=t and 10t'=t:
def m(k,t): return 1/(np.cos(k)+4*t*np.cos(2*k)) k1 = np.linspace(-1.6, -0.83, 300); k2 = np.linspace(-0.826, 0.826, 300); k3 = np.linspace(0.83, 1.6, 300); pyplot.plot(k1, m(k1,2),'b'); pyplot.plot(k2, m(k2,2),'b'); pyplot.plot(k3, m(k3,2),'b',label='t=2t\''); pyplot.xlabel('$k$'); pyplot.ylabel('$m_{eff}(k)$'); pyplot.xticks([-1.6,0,1.6],[r'$-\pi/a$',0,r'$\pi/a$']); pyplot.yticks([0],[]); pyplot.tight_layout(); k1 = np.linspace(-1.58, -0.81, 300); k2 = np.linspace(-0.804, 0.804, 300); k3 = np.linspace(0.81, 1.58, 300); pyplot.plot(k1, m(k1,4),'r'); pyplot.plot(k2, m(k2,4),'r'); pyplot.plot(k3, m(k3,4),'r',label='t=4t\''); k1 = np.linspace(-1.575, -0.798, 300); k2 = np.linspace(-0.790, 0.790, 300); k3 = np.linspace(0.798, 1.575, 300); pyplot.plot(k1, m(k1,10),'k'); pyplot.plot(k2, m(k2,10),'k'); pyplot.plot(k3, m(k3,10),'k',label='t=10t\''); pyplot.legend();