diff --git a/docs/11_nearly_free_electron_model.md b/docs/11_nearly_free_electron_model.md index 2e79af13d6476a58916f8aa7d6f0abdf5d316919..737c19c496f21133b446624906e1d59093e92aaa 100644 --- a/docs/11_nearly_free_electron_model.md +++ b/docs/11_nearly_free_electron_model.md @@ -80,6 +80,7 @@ ax.set_ylabel("$E$") ax.set_ylim(-.5, max_en + 5) ax.set_xticks(pi * np.arange(-3, 4)) ax.set_xticklabels(fr"${i}\pi$".replace("1", "") if i else "$0$" for i in range(-3, 4)) +ax.set_yticks([]) draw_classic_axes(ax, xlabeloffset=4) ``` @@ -238,6 +239,7 @@ ax.set_ylabel("$E$") ax.set_ylim(-.5, max_en + 5) ax.set_xticks(pi * np.arange(-1, 2)) ax.set_xticklabels(r"$-\pi$ $0$ $\pi$".split()) +ax.set_yticks([]) draw_classic_axes(ax, xlabeloffset=4) ``` @@ -267,6 +269,7 @@ ax.set_ylabel("$E$") ax.set_ylim(-.5, max_en + 5) ax.set_xticks(pi * np.arange(-3, 4)) ax.set_xticklabels(fr"${i}\pi$".replace("1", "") if i else "$0$" for i in range(-3, 4)) +ax.set_yticks([]) draw_classic_axes(ax, xlabeloffset=4) ``` diff --git a/docs/13_semiconductors.md b/docs/13_semiconductors.md index 64c6f3c0edabcd584e4684759b9b25e8384bb0bf..23d9f05d687d3ca7babba9bd558bb9943edfeebc 100644 --- a/docs/13_semiconductors.md +++ b/docs/13_semiconductors.md @@ -181,6 +181,7 @@ pyplot.xlabel('$k$') pyplot.ylabel('$E$') pyplot.ylim(-1.5, 3) pyplot.yticks([E_C_1 - .15, E_V_1 +.15], "$E_C$ $E_V$".split()) +pyplot.xticks([]) pyplot.legend(lines, ['Conduction band', 'Valence band']) draw_classic_axes(ax) ``` @@ -230,6 +231,7 @@ ax.set_xlabel('$E$') ax.set_ylabel('$g$') ax.set_xticks([E_V, E_C, E_F]) ax.set_xticklabels(['$E_V$', '$E_C$', '$E_F$']) +ax.set_yticks([]) ax.legend() draw_classic_axes(ax, xlabeloffset=.2) ``` diff --git a/docs/13_semiconductors_solutions.md b/docs/13_semiconductors_solutions.md index 53d891c456460abc6d9e453f2990eec1adf9b571..122dde1fc63c30e6d6c7e45987314bfc4ece8ddc 100644 --- a/docs/13_semiconductors_solutions.md +++ b/docs/13_semiconductors_solutions.md @@ -41,7 +41,8 @@ Following the derivation in the lecture notes, whenever calculating the hole-dep remembering that $E_{F,h} = - E_F$. -#### Question 3. +#### Question 3. + The sketch of the density of states (=band structure) for a 2D semiconductor: ```python @@ -81,12 +82,13 @@ ax.set_xlabel('$E$') ax.set_ylabel('$g$') ax.set_xticks([E_V, E_C, E_F]) ax.set_xticklabels(['$E_V$', '$E_C$', '$E_F$']) +ax.set_yticks([]) ax.legend() draw_classic_axes(ax, xlabeloffset=.1) - ``` -#### Question 4. +#### Question 4. + Assuming that the Fermi energy is in the gap $(E_v < E_F < E_c)$ and far away from the band edges compared to $k_BT$; $$ diff --git a/docs/14_doping_and_devices.md b/docs/14_doping_and_devices.md index b246bb9b26d98bc7af0476076f6a797c2060383b..00c2d99f79fa8ea3a0d40ea6daa80d5aca1e2e0d 100644 --- a/docs/14_doping_and_devices.md +++ b/docs/14_doping_and_devices.md @@ -106,6 +106,7 @@ ax.plot(E, g_A, label='$g_A$') ax.legend() ax.set_xticks([E_V, E_C, E_A, E_D]) ax.set_xticklabels(['$E_V$', '$E_C$', '$E_A$', '$E_D$']) +ax.set_yticks([]) ax.set_ylabel('$g$') ax.set_xlabel('$E$') draw_classic_axes(ax, xlabeloffset=.2) @@ -241,6 +242,7 @@ ax1.set_ylabel("$E_F$") ax1.set_xlabel("$T$") ax1.set_yticks([E_C, (E_C + E_V) / 2, E_D]) ax1.set_yticklabels(["$E_C$", "$(E_C + E_V) / 2$", "$E_D$"]) +ax1.set_xticks([]) ax1.legend() draw_classic_axes(ax1, y=-.05, ylabeloffset=0.01) @@ -253,6 +255,7 @@ ax2.set_ylabel("$n$") ax2.set_xlabel("$T$") ax2.set_yticks([(N_D - N_A)]) ax2.set_yticklabels(["$N_D - N_A$"]) +ax2.set_xticks([]) draw_classic_axes(ax2, ylabeloffset=0.01) ``` @@ -690,11 +693,7 @@ Conductance combines the contributions of electrons and holes, and allows to det A $pn$-junction has a **depletion layer** in its middle with the potential in a $pn$-junction having the following shape (where the transition region is made out of two parabolas): - -<figure markdown>  - <figcaption> </figcaption> -</figure> ## Exercises diff --git a/docs/4_sommerfeld_model.md b/docs/4_sommerfeld_model.md index ff9fc016ff425955c830b24a56427d86017eebe6..469e2b19414b7fcd5685286bbc32fa87ad669401 100644 --- a/docs/4_sommerfeld_model.md +++ b/docs/4_sommerfeld_model.md @@ -284,6 +284,8 @@ ax.plot(E, 15*np.sqrt(E), label = '3D') ax.set_ylabel(r"$g(\varepsilon)$") ax.set_xlabel(r"$\varepsilon$") ax.legend() +ax.set_xticks([]) +ax.set_yticks([]) draw_classic_axes(ax, xlabeloffset=.2) ``` @@ -368,6 +370,7 @@ ax.annotate('', xy=(1, 0), xytext=(1, 1), ax.text(1.2, .7, r'$g(ε_F)$', ha='center') ax.set_xticks([1]) ax.set_xticklabels([r'$ε_F$']) +ax.set_yticks([]) ax.set_ylabel(r"$g(ε)$") ax.set_xlabel(r"$ε$") diff --git a/docs/5_atoms_and_lcao.md b/docs/5_atoms_and_lcao.md index 233c7795cfcfbdf043e59253f5362425fd8ffc1d..3e4cc99d911df0263f16020181226126885e7f2e 100644 --- a/docs/5_atoms_and_lcao.md +++ b/docs/5_atoms_and_lcao.md @@ -239,17 +239,20 @@ r_1, r_2 = 0.5, 2.51 U = -1/np.abs(x - r_1) - 1/np.abs(x - r_2) psi_1 = 0.3 * np.exp(-2*(x - r_1)**2) psi_2 = 0.3 * np.exp(-2*(x - r_2)**2) -pyplot.fill_between(x, psi_1 + psi_2 - .5, -.5, alpha=.5, label="$\psi_+$") -pyplot.fill_between(x, psi_1 - psi_2 + .5, .5, alpha=.5, label="$\psi_-$") +pyplot.fill_between(x, psi_1 + psi_2 - .5, -.5, alpha=.5, label=r"$\psi_+$") +pyplot.fill_between(x, psi_1 - psi_2 + .5, .5, alpha=.5, label=r"$\psi_-$") pyplot.plot(x, U, label="$U(x)$", c='k', linestyle=':') pyplot.xlabel("$x$") -pyplot.ylabel("$\psi$") +pyplot.ylabel(r"$\psi$") pyplot.legend(loc=(0.8, 0.3)) pyplot.ylim(-3, 1) -draw_classic_axes(ax) +pyplot.xticks([r_1, r_2], ["$r_1$", "$r_2$"]) +pyplot.yticks([]) +draw_classic_axes(ax, xlabeloffset=0.17) ``` ### Bonding and antibonding orbitals + If we decrease the interatomic distance, the two atoms get closer and their atomic orbitals start to overlap more. This increase in orbital overlap increases the hopping $t$. We plot the symmetric and anti-symmetric energies as a function of the inter-atomic distance: @@ -264,6 +267,8 @@ ax.set_xlabel("$r$") ax.set_ylabel("$E$") ax.set_xlim(-.1, 3.2) ax.legend() +ax.set_xticks([]) +ax.set_yticks([]) draw_classic_axes(ax) ``` @@ -285,7 +290,9 @@ On the other hand, if each atom has 0 or 2 electrons in the outermost shell, the * If two atoms have one orbital and one electron each, the two electrons occupy the bonding orbital. ## Exercises + ### Warm-up questions* + 1. Is the assumption that the atomic orbitals are orthogonal always a reasonable assumption? 2. What is the effect on the molecular orbitals if the hopping $t$ is chosen to be negative? 3. How does the size of the Hamiltonian matrix change with the number of atoms? diff --git a/docs/6_bonds_and_spectra.md b/docs/6_bonds_and_spectra.md index a15c5406a3adc85c10e586a6f08321a422f34ad5..10528263284d79977cc33363b1d6b4a89fbffb65 100644 --- a/docs/6_bonds_and_spectra.md +++ b/docs/6_bonds_and_spectra.md @@ -48,6 +48,8 @@ ax.plot(r, Q - U, label="$E_+$") ax.set_xlabel("$r$") ax.set_ylabel("$E$") ax.set_xlim(-.1, 3.2) +ax.set_xticks([]) +ax.set_yticks([]) ax.legend() draw_classic_axes(ax) ``` diff --git a/docs/7_tight_binding.md b/docs/7_tight_binding.md index 36179cad8f8d941a6d178895f4742104aef7bfa1..ae98626ec496f7716375e8ef1af3b18bbcec4a2c 100644 --- a/docs/7_tight_binding.md +++ b/docs/7_tight_binding.md @@ -80,7 +80,7 @@ ax.set_xlabel("$x$") ax.set_ylabel("$U(x)$") ax.set_xticks([-.05, 1, 2]) ax.set_xticklabels(["$0$", "$a$", "$2a$"]) - +ax.set_yticks([]) draw_classic_axes(ax) ``` @@ -153,6 +153,8 @@ ax.set_xlabel('$x$') ax.set_ylabel('$u_n$') ax.set_xlim((-.1, 3.2)) ax.set_ylim((-1.3, 1.3)) +ax.set_xticks([]) +ax.set_yticks([]) ax.legend(loc='lower right') draw_classic_axes(ax) ax.annotate('', xy=(0, -1.1), xytext=(1, -1.1), @@ -280,7 +282,7 @@ ax.set_xlabel("$x$") ax.set_ylabel("$U(x)$") ax.set_xticks([-.05, 1, 2]) ax.set_xticklabels(["$0$", "$a$", "$2a$"]) - +ax.set_yticks([]) draw_classic_axes(ax) ``` diff --git a/docs/8_many_atoms.md b/docs/8_many_atoms.md index 4d15e5c821ae4380a01fe35a6fb0624b5ed4c79a..51fa3aef6b7a452320e84825110947b3f0b48ece 100644 --- a/docs/8_many_atoms.md +++ b/docs/8_many_atoms.md @@ -95,11 +95,7 @@ $$ \omega^2=\frac{\kappa(m_1+m_2)}{m_1m_2}\pm \kappa\left\{\left(\frac{m_1+m_2}{m_1m_2}\right)^2-\frac{4}{m_1m_2}\sin^2\left(\frac{1}{2}ka\right)\right\}^{\frac{1}{2}} $$ -Looking at the eigenvectors we see that for every $k$ there are now two values of $\omega$: one corresponding to in-phase motion (–) and anti-phase (+). - -<!--- -Should we mention that we choose omega > 0? ----> +Looking at the eigenvectors we see that for every $k$ there are now two positive values of $\omega$: one corresponding to in-phase motion (–) and anti-phase (+). ```python def dispersion_2m(k, kappa=1, M=1.4, m=1, acoustic=True): @@ -185,6 +181,7 @@ ax2.set_ylabel(r'$\omega$') # Truncate the singularity in the DOS max_x = ax2.get_xlim()[1] ax2.set_xlim((0, max_x/2)) +ax2.set_xticks([]) draw_classic_axes(ax2, xlabeloffset=.1) matplotlib.rcParams['font.size'] = 16 ``` diff --git a/docs/lecture_8.md b/docs/lecture_8.md index 289bb3804e3481576b91b718ba7855e4adacf045..87fc46aa74a296f3e191d67c53ec9ed42f95ec12 100644 --- a/docs/lecture_8.md +++ b/docs/lecture_8.md @@ -23,6 +23,7 @@ In this lecture we will: - discuss magnetic order ### Magnetic field + To start off confusing, there are two different quantities that are often referred to as the _magnetic field_: the ${\bf B}$-field (in units of Tesla) and the ${\bf H}$-field (in A/m). In vacuum, they are proportional: $$ @@ -104,6 +105,8 @@ ax.plot(B, np.tanh(B), label="high $T$") ax.legend() ax.set_ylabel("$M$") ax.set_xlabel("$B$") +ax.set_xticks([]) +ax.set_yticks([]) draw_classic_axes(ax, xlabeloffset=.2) ```