Skip to content
Snippets Groups Projects

Solutions lecture 7

Merged Lars kleyn Winkel requested to merge solutions-lecture-7 into master
Compare and Show latest version
1 file
+ 27
17
Compare changes
  • Side-by-side
  • Inline
@@ -81,7 +81,7 @@ The Schrödinger equation is given as: $|\Psi\rangle = \sum_n \phi_n |n\rangle$
Solving the Schrödinger equation yields dispersion: $$E(k) = E_0 -t\cos(ka) -t'\cos(2ka)$$
### Subquestiion 3
### Subquestion 3
$$m_{eff} = \frac{\hbar^2}{2a^2}\frac{1}{t\cos(ka)+4t'\cos(2ka)}$$
@@ -106,28 +106,38 @@ pyplot.tight_layout();
Plots for 2t'=t, 4t'=t and 10t'=t:
```python
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',label='t=2t\'');
pyplot.plot(k2, 1/(5*np.cos(k2)),'b');
pyplot.plot(k3, 1/(5*np.cos(k3)),'b');
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([-pi,0,pi],[r'$-\pi/a$',0,r'$\pi/a$']);
pyplot.yticks([-20,20],[]);
pyplot.yticks([-10,10],[]);
pyplot.tight_layout();
pyplot.plot(k1, 1/(17*np.cos(k1)),'r');
pyplot.plot(k2, 1/(17*np.cos(k2)),'r');
pyplot.plot(k3, 1/(17*np.cos(k3)),'r',label='t=4t\'');
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, 1/(41*np.cos(k1)),'k');
pyplot.plot(k2, 1/(41*np.cos(k2)),'k');
pyplot.plot(k3, 1/(41*np.cos(k3)),'k',label='t=10t\'');
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();
pyplot.show()
pyplot.legend()
```
Loading