diff --git a/mkdocs.yml b/mkdocs.yml
index b077f59505d9e7215d8a36780ab6573b9ffef584..b99cac2048727a02350746bdfc1a14f0e253b540 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -37,6 +37,9 @@ nav:
   - Solutions:
     - Einstein model: '1_einstein_model_solutions.md'
     - Debye model: '2_debye_model_solutions.md'
+    - Crystal structure: '9_crystal_structure_solutions.md'
+    - X-ray diffraction: '10_xray_solutions.md'
+ 
 
 theme:
   name: material
diff --git a/src/10_xray_solutions.md b/src/10_xray_solutions.md
new file mode 100644
index 0000000000000000000000000000000000000000..e4070ba62180199228d5729eb4d3e1305d2c2e84
--- /dev/null
+++ b/src/10_xray_solutions.md
@@ -0,0 +1,155 @@
+```python tags=["initialize"]
+from matplotlib import pyplot as plt 
+import numpy as np
+from math import pi
+```
+# Solutions for lecture 10 exercises
+
+## Exercise 1: Equivalence of direct and reciprocal lattice
+
+### Subquestion 1
+$$
+V^*=\left|\mathbf{b}_{1} \cdot\left(\mathbf{b}_{2} \times \mathbf{b}_{3}\right)\right| = \frac{2\pi}{V}\left| (\mathbf{a}_{2} \times \mathbf{a}_{3}) \cdot\left(\mathbf{b}_{2} \times \mathbf{b}_{3}\right)\right| = \frac{(2\pi)^3}{V}
+$$
+
+In the second equality, we used the reciprocal lattice vector definition (see notes). In the third equality, we used the identity:
+
+$$
+(\mathbf{a} \times \mathbf{b}) \cdot(\mathbf{c} \times \mathbf{d})=(\mathbf{a} \cdot \mathbf{c})(\mathbf{b} \cdot \mathbf{d})-(\mathbf{a} \cdot \mathbf{d})(\mathbf{b} \cdot \mathbf{c})
+$$
+
+### Subquestion 2
+$$
+\mathbf{a}_{i} \epsilon_{ijk} = \frac{2\pi}{V^*} (\mathbf{b}_{j} \times \mathbf{b}_{k})
+$$
+
+whereas $\epsilon_{ijk}$ is the [Levi-Civita tensor](https://en.wikipedia.org/wiki/Levi-Civita_symbol#Three_dimensions)
+
+### Subquestion 3
+
+BCC primitive lattice vectors are given by:
+$$
+\mathbf{a_1} = \frac{a}{2} \left(-\hat{\mathbf{x}}+\hat{\mathbf{y}}+\hat{\mathbf{z}} \right) \\
+\mathbf{a_2} = \frac{a}{2} \left(\hat{\mathbf{x}}-\hat{\mathbf{y}}+\hat{\mathbf{z}} \right) \\
+\mathbf{a_3} = \frac{a}{2} \left(\hat{\mathbf{x}}+\hat{\mathbf{y}}-\hat{\mathbf{z}} \right)
+$$
+
+using definition of reciprocal lattice vector (see notes), one can show:
+
+$$
+\mathbf{b_1} = \frac{2 \pi}{a} \left(\hat{\mathbf{y}}+\hat{\mathbf{z}} \right) \\
+\mathbf{b_2} = \frac{2 \pi}{a} \left(\hat{\mathbf{x}}+\hat{\mathbf{z}} \right) \\
+\mathbf{b_3} = \frac{2 \pi}{a} \left(\hat{\mathbf{x}}+\hat{\mathbf{y}} \right)
+$$
+
+which is FCC primitive lattice vectors. Using the result in Subquestion 2, the vice versa result is trivial
+
+### Subquestion 4
+
+Brillouin zone is most easily given by the Wigner Seitz unit cell (see notes) by constructing planes in the midpoint between a lattice point and a nearest neighbor. Our lattice is FCC, so the reciprocal lattice is BCC. Since BCC has 8 nearest neighbors (see interactive figure in last week's [Exercise 1: Diatomic crystal](https://solidstate.quantumtinkerer.tudelft.nl/9_crystal_structure/#exercise-1-diatomic-crystal)), there will be 8 planes. A polyhedron which has 8 faces is an octahedron.
+
+## Exercise 2: Miller planes and reciprocal lattice vectors
+
+### Subquestion 1
+
+??? hint "First small hint"
+
+    The $(hkl)$ plane intersects lattice at position vectors of \frac{\mathbf{a_1}}{h}, \frac{\mathbf{a_2}}{k}, \frac{\mathbf{a_1}}{l}. Can you define a general vector inside the $(hkl)$ plane? 
+    
+??? hint "Second small hint"
+
+    Whats the best vector operation to show orthogonality between two vectors? 
+    
+### Subquestion 2
+
+One can compute the normal to the plane by using result from Subquestion 1:
+
+$\hat{\mathbf{n}} = \frac{\mathbf{G}}{|G|}$
+
+For lattice planes, there is always a plane intersecting the zero lattice point (0,0,0). As such, the distance from this plane to the closest next one is given by:
+
+$ d = \hat{\mathbf{n}} \cdot \frac{\mathbf{a_1}}{h} = \frac{2 \pi}{|G|} $
+
+### Subquestion 3
+
+Since $\rho=d / V$, we must maximize $d$. To do that, we must minimize $|G|$ (Subquestion 2). We must therefore use the smallest possible reciprocal lattice vector which means {100} family of planes (in terms of FCC primitive lattice vectors).
+
+## Exercise 3: X-ray scattering in 2D
+
+### Subquestion 1
+```
+def reciprocal_lattice(N = 7, lim = 40):
+    y = np.repeat(np.linspace(-18.4*(N//2),18.4*(N//2),N),N)
+    x = np.tile(np.linspace(-13.4*(N//2),13.4*(N//2),N),N)
+
+    plt.figure(figsize=(5,5))
+
+    plt.plot(x,y,'o', markersize=10, markerfacecolor='none', color='k')
+    plt.xlim([-lim,lim])
+    plt.ylim([-lim,lim])
+    plt.xlabel('$\mathbf{b_1}$')
+    plt.ylabel('$\mathbf{b_2}$')
+    plt.xticks(np.linspace(-lim,lim,5))
+    plt.yticks(np.linspace(-lim,lim,5))
+    
+reciprocal_lattice()
+plt.show()
+```
+### Subquestion 2
+
+$k = \frac{2 \pi}{\lambda} = 37.9 nm^{-1}$
+
+### Subquestion 3
+
+Note that $|k| = |k'| = k $ since elastic scatering
+
+```
+reciprocal_lattice()
+# G vector
+plt.arrow(0,0,13.4*2,18.4,color='r',zorder=10,head_width=2,length_includes_head=True)
+plt.annotate('$\Delta \mathbf{G}$',(17,6.5),fontsize=14,ha='center',color='r')
+# k vector
+plt.arrow(-6,37.4,6,-37.4,color='b',zorder=11,head_width=2,length_includes_head=True)
+plt.annotate('$\mathbf{k}$',(-8,18),fontsize=14, ha='center',color='b')
+# k' vector
+plt.arrow(-6,37.4,6+13.4*2,-37.4+18.4,color='k',zorder=11,head_width=2,length_includes_head=True)
+plt.annotate('$\mathbf{k\'}$',(15,30),fontsize=14, ha='center',color='k')
+```
+## Exercise 4: Structure factors
+
+### Subquestion 1
+
+$$
+S_\mathbf{G} = \sum_j f_j e^{i \mathbf{G} \cdot \mathbf{r_j}} = f(1 + e^{i \pi (h+k+l)}) = \begin{cases}
+      2f & \text{if $h+k+l$ is even}\\
+      0 & \text{if $h+k+l$ is odd}
+    \end{cases}       
+$$
+
+where we used sum over the basis of BCC in $j$.
+
+### Subquestion 2
+
+See when $S_G$ is zero
+
+### Subquestion 3
+
+$$
+S_\mathbf{G} = \begin{cases}
+      f_1 + f_2 & \text{if $h+k+l$ is even}\\
+      f_1 - f_2 & \text{if $h+k+l$ is odd}
+    \end{cases}       
+$$
+
+### Subquestion 4
+
+For FCC, the structure factor is the following:
+
+$$
+S_\mathbf{G} = \begin{cases}
+      4f & \text{if $h,k,l$ are all odd or even}\\
+      0 & \text{if otherwise}
+    \end{cases}       
+$$
+
+Since $(110)$ have mixed odd and even indices, no diffraction peak will be observed on FCC. For BCC, however, $(110)$ gives $1+1+0 = 2$ even number, so there will be diffraction.
diff --git a/src/9_crystal_structure_solutions.md b/src/9_crystal_structure_solutions.md
new file mode 100644
index 0000000000000000000000000000000000000000..57fac21fa8559b6c641c2fa29697d75dfa25fc30
--- /dev/null
+++ b/src/9_crystal_structure_solutions.md
@@ -0,0 +1,149 @@
+```python tags=["initialize"]
+from matplotlib import pyplot as plt 
+import numpy as np
+from math import pi
+```
+# Solutions for lecture 9 exercises
+
+## Exercise 1: Diatomic crystal¶
+
+### Subquestion 1
+```
+y = np.repeat(np.arange(0,8,2),4)
+x = np.tile(np.arange(0,8,2),4)
+plt.figure(figsize=(5,5))
+plt.axis('off')
+
+# WZ
+plt.plot([5,5,7,7,5],[5,7,7,5,5], color='k',ls=':')
+plt.annotate('WZ',(6,6.5),fontsize=14,ha='center')
+
+# PUC1 
+plt.plot([0,2,4,2,0],[4,6,6,4,4], color='k',ls=':')
+
+# UPC2
+plt.plot([6,4,2,4,6],[0,0,2,2,0], color='k',ls=':')
+
+plt.plot(x,y,'ko', markersize=15)
+plt.plot(x+1,y+1, 'o', markerfacecolor='none', markeredgecolor='k', markersize=15);
+```
+### Subquestion 2
+
+In case of different particles, $V = a^2$. 
+
+If identical particles, nearest neighbour distance becomes $a^* = \frac{a}{\sqrt{2}}$ and so $V^* = {a^*}^2 = \frac{a^2}{2}$
+
+### Subquestion 3
+
+$\mathbf{a_1} = a \hat{\mathbf{x}}, \quad \mathbf{a_2} = a \hat{\mathbf{y}}$
+
+Basis: 
+
+$\Huge \bullet \normalsize = (0,0)$
+
+$\bigcirc = (\frac{1}{2},\frac{1}{2})$
+
+### Subquestion 4
+
+Cubic lattice
+
+Basis: 
+
+$\Huge \bullet \normalsize = (0,0,0)$
+
+$\bigcirc = (\frac{1}{2},\frac{1}{2},\frac{1}{2})$
+
+Example: Cesium Chloride (CsCl)
+
+### Subquestion 5
+BCC lattice
+
+Example: Sodium (Na)
+
+### Subquestion 6
+See notes 
+
+??? hint "What to do?"
+
+    Relate radius of the atom $R$ to the lattice parameter $a$ by considering corner atom touching the center one
+    
+## Exercise 2: Diamond lattice
+### Subquestion 1
+
+It is made up from two FCC lattices
+
+$$
+\mathbf{a_1} = \frac{a}{2} \left(\hat{\mathbf{x}}+\hat{\mathbf{y}} \right) \\
+\mathbf{a_2} = \frac{a}{2} \left(\hat{\mathbf{x}}+\hat{\mathbf{z}} \right) \\
+\mathbf{a_3} = \frac{a}{2} \left(\hat{\mathbf{y}}+\hat{\mathbf{z}} \right)
+$$
+
+Basis = $ (0,0,0), (\frac{1}{4},\frac{1}{4},\frac{1}{4})$
+
+### Subquestion 2
+
+2 atoms in a primitive unit cell
+
+??? hint "Why 2 atoms?"
+
+    The basis for the lattice (defined in terms of the primitive lattice vectors) has two atoms. Keep in mind that atoms and lattice points are NOT equivalent in most cases!
+
+$V = \left| \mathbf{a_1} \cdot \left(\mathbf{a_2} \times \mathbf{a_3} \right) \right| = \frac{a^3}{4}$
+
+### Subquestion 3
+
+1 FCC lattice has 4 atoms. Therefore, 2 combined fcc lattices will have 8 atoms
+
+$V = a^3$
+
+### Subquestion 4 
+
+??? hint "Visual hint"
+
+    Consider the atom at (0.25,0.25,0.25) coordinates in the interactive diamond lattice image.
+
+4 nearest neighbours: $(\frac{1}{4},\frac{1}{4},\frac{1}{4})$ and $(\frac{1}{4},\frac{1}{4},\frac{1}{4}) + \mathbf{a_i}  $ where $i = 1,2,3$
+
+### Subquestion 5
+
+34%
+
+??? hint "Hint"
+
+    The nearest neighbour atoms should be touching for most efficient packing
+    
+
+## Exercise 3: Directions and Spacings of Miller planes
+### Subquestion 1
+
+Miller plane - plane that intersects and infinite number of lattice points
+
+Miller index - Set of 3 integers which specify a set of parallel planes
+
+### Subquestion 2
+
+??? hint "Small hint"
+
+    The $(hkl)$ plane intersects lattice at position vectors of \frac{\mathbf{a_1}}{h}, \frac{\mathbf{a_2}}{k}, \frac{\mathbf{a_1}}{l}. Can you define a general vector inside the $(hkl)$ plane? 
+    
+??? hint "Anoter small hint"
+
+    What vector operation takes two vectors and produces another vector that is perpendicular to the previous two? 
+
+??? hint "Last small hint"
+
+    Don't forget to normalize your direction vectors!
+    
+### Subquestion 3
+
+Same hints as in Subquestion 2
+
+### Subquestion 4
+
+??? hint "Big hint"
+
+    There is always a neighbouring lattice plane which intersects the (0,0,0) lattice point.
+    
+??? hint "Small hint"
+
+    Don't forget to reuse your unit normal of a plane from Subquestion 2.