emission_energy_distribution module

Define an object to store an emission energy distribution.

class EmissionEnergyDistribution(population, data, e_pe=None, norm=None)

Bases: EmissionData

An emission energy distribution.

Instantiate the data.

Parameters:
  • population (Literal['SE', 'EBE', 'IBE', 'all']) – The concerned population of electrons.

  • data (DataFrame) – Structure holding the data. Must have a Energy (eV) column holding population energy. And one or several columns theta [deg], where theta is the value of the incidence angle and content is corresponding emission energy.

  • e_pe (float | None, default: None) – Energy of primary electrons in \(\mathrm{eV}\).

  • norm (float | None, default: None) – To specify re-normalization constant. If not provided, we try to set the maximum of SEs to unity. Provide 1.0 to avoid any normalization.

e_peak_se: float

Energy at the maximum of SEs in \(\mathrm{eV}\). Defined for SEs and distribution of all electrons.

i_peak_ebe: int

Position of EBE peak.

e_peak_ebe: float

Energy at the maximum of EBEs in \(\mathrm{eV}\). Defined for EBEs and distribution of all electrons.

e_pe: float

Energy of PEs in \(\mathrm{eV}\). If this information is not found in the file header, we set it to the value of self.e_peak_ebe.

norm: float

Re-normalization factor of distribution.

classmethod from_filepath(population, loader, *filepath)

Instantiate the data from files.

Parameters:
  • loader (Loader) – The object that will load the data.

  • population (Literal['SE', 'EBE', 'IBE', 'all']) – The concerned population of electrons.

  • *filepath (str | Path) – Path(s) to file holding data under study.

Return type:

Self

property label: str

Print nature of data (markdown).

plot(plotter, *args, lw=0.0, marker='+', axes=None, grid=True, population=None, **kwargs)

Plot the contained data using plotter.

This wrapper simply calls the Plotter.plot_emission_energy_distribution() method. method.

Return type:

TypeVar(T)

_normalize()

Normalize the distribution.

Return type:

None

property _se_ebe_limit: int

Arbitrary index limit between SEs and EBEs.

_find_SE_peak()

Find the SEs maximum.

Return type:

tuple[int, float]

_find_EBE_peak()

Find the position of the EBE peak.

Return type:

tuple[int, float]