Antall krystallvakanser ($N_v$) i forhold til antall atomposisjoner ($N$) er gitt ved:
\begin{equation} N_v = N \text{exp}\big( -\frac{Q_v}{kT} \big) \end{equation}Eksempel:
import numpy as np
from matek import k
Qv = 3.8E-20
N = 10000
T = np.linspace(300,1000)
Nv = N*np.exp( -Qv/(k*T) )
import matplotlib.pyplot as plt
%matplotlib inline
fig, ax = plt.subplots()
ax.plot(T, Nv)
ax.set_xlabel('$T$ [K]', size=12)
ax.set_ylabel('$N_v$', size=12)
ax.grid()
plt.show()
print('Ved romtemp, pr. 10000 atom-posisjoner: Nv = ',Nv[0])
print('Ved 1000 [K], pr. 10000 atom-posisjoner: Nv = ',Nv[-1])
Derivert med hensyn på temperatur,
\begin{equation} \frac{dN_v}{dT} \end{equation}dNv = np.diff(Nv)
fig, ax = plt.subplots()
ax.plot(T[0:-1], dNv)
ax.set_xlabel('$T$[K]',size=12)
ax.set_ylabel('$(dN_v)/(dT)$',size=12)
ax.grid()
plt.show()
$\log(N_v)$ versus $\frac{1}{T}$ er en rett linje:
fig, ax = plt.subplots()
ax.semilogy(1/T, Nv)
ax.set_xlabel('$1/T$ [1/K]',size=12)
ax.set_ylabel('$N_v$',size=12)
ax.set_xticks((1/300,1/400, 1/600, 1/1000))
ax.set_xticklabels(('1/300','1/400','1/600','1/1000'))
ax.grid()
plt.show()