emission_yield module

Define an object to store an emission yield.

class EmissionYield(population, data)

Bases: EmissionData

An emission yield.

Instantiate the data.

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

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

e_max: float

Energy at the maximum emission yield in \(\mathrm{eV}\). Not defined for BEs.

ey_max: float

Maximum emission yield. Not defined for BEs.

e_c1: float

First cross-over enrergy in \(\mathrm{eV}\). Not defined for BEs.

e_c2: float | None

Second cross-over enrergy in \(\mathrm{eV}\). Not defined for BEs.

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).

_parameters(n_resample=-1)

Compute the characteristics of the emission yield.

Return type:

tuple[float, float, float, float | None]

_get_maximum_ey(normal_ey, tol_energy=10.0)

Get the position and value of max emission yield.

Parameters:
  • normal_ey (DataFrame) – Holds energy of PEs as well as emission yield at nominal incidence.

  • tol_energy (float, default: 10.0) – If the \(E_{max}\) is too close to the maximum PE energy, an warning is raised; tolerance is tol_energy.

Return type:

tuple[float, float]

Returns:

\(E_{max}\) and \(\sigma_{max}\).

_get_crossovers(normal_ey, e_max, min_e=10.0, tol_ey=0.01)

Compute first and second crossover energies.

Parameters:
  • normal_ey (DataFrame) – Holds energy of PEs as well as emission yield at nominal incidence.

  • e_max (float) – Energy of maximum emission yield. Used to discriminate \(E_{c1}\) from \(E_{c2}\).

  • min_e (float, default: 10.0) – Energy under which \(E_{c1}\) is not searched. It is useful if emission yield data comes from a model which sets the emission yield to unity at very low energies (eg some implementations of Vaughan).

  • tol_ey (float, default: 0.01) – It the emission yield is too far from unity at crossover energy, a warning is raised. Tolerance is tol_ey.

Returns:

First and second crossover energies.

Return type:

tuple[float, float | None]

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_yield() method.

Return type:

TypeVar(T)