# Dielectric function tools

The DielectricFunction class inherits from ComplexSignal and can thus access complex properties. To convert a ComplexSignal to a DielectricFunction, make sure that the signal dimension and signal type are properly set:

>>> s.set_signal_type('DielectricFunction')


Note that DielectricFunction is complex and therefore is a subclass of ComplexSignal1D.

## Number of effective electrons

The Bethe f-sum rule gives rise to two definitions of the effective number (see [Egerton2011]):

\begin{align}\begin{aligned}n_{\mathrm{eff1}}\left(-\Im\left(\epsilon^{-1}\right)\right)=\frac{2\epsilon_{0}m_{0}}{\pi\hbar^{2}e^{2}n_{a}}\int_{0}^{E}E'\Im\left(\frac{-1}{\epsilon}\right)dE'\\n_{\mathrm{eff2}}\left(\epsilon_{2}\right)=\frac{2\epsilon_{0}m_{0}}{\pi\hbar^{2}e^{2}n_{a}}\int_{0}^{E}E'\epsilon_{2}\left(E'\right)dE'\end{aligned}\end{align}

where $$n_a$$ is the number of atoms (or molecules) per unit volume of the sample, $$\epsilon_0$$ is the vacuum permittivity, $$m_0$$ is the electron mass and $$e$$ is the electron charge.

The get_number_of_effective_electrons() method computes both.

## Compute the electron energy-loss signal

The get_electron_energy_loss_spectrum() “naively” computes the single-scattering electron-energy loss spectrum from the dielectric function given the zero-loss peak (or its integral) and the sample thickness using:

$S\left(E\right)=\frac{2I_{0}t}{\pi a_{0}m_{0}v^{2}}\ln\left[1+\left(\frac{\beta}{\theta(E)}\right)^{2}\right]\Im\left[\frac{-1}{\epsilon\left(E\right)}\right]$

where $$I_0$$ is the zero-loss peak integral, $$t$$ the sample thickness, $$\beta$$ the collection semi-angle and $$\theta(E)$$ the characteristic scattering angle.