emission_data package
Define objects to store electron emission data.
- class DataMatrix
Bases:
objectStore all the input files and corresp data in a single object.
- _indexes_to_natures(row: int, col: int) tuple[Literal['SE', 'EBE', 'IBE', 'all'], Literal['Emission Yield', 'Emission Energy', 'Emission Angle']]
Give the desired natures.
- _natures_to_indexes(population_type: Literal['SE', 'EBE', 'IBE', 'all'], emission_data_type: Literal['Emission Yield', 'Emission Energy', 'Emission Angle']) tuple[int, int]
Give the desired indexes.
- property all_energy_distribution: EmissionEnergyDistribution
Return the energy distribution of all emitted electrons.
- get_data(row: int | None = None, col: int | None = None, population: Literal['SE', 'EBE', 'IBE', 'all'] | None = None, emission_data_type: Literal['Emission Yield', 'Emission Energy', 'Emission Angle'] | None = None) None | EmissionData | Collection[EmissionData]
Get the file(s) by index or name.
You can provide
rowandcoldirectly.Alternatively, provide
populationandemission_data_type. Ifpopulationis not given, return valid data corresponding to all populations. Ifemission_data_typeis not given, return valid data corresponding to all emission data.- Parameters:
row – Row index in data matrix.
col – Column index in data matrix.
population – Population type.
emission_data_type – Emission data type.
- Returns:
Desired data; if the specified data does not exists, a
Noneisreturned without any error message.
- get_files(row: int | None = None, col: int | None = None, population: Literal['SE', 'EBE', 'IBE', 'all'] | None = None, emission_data_type: Literal['Emission Yield', 'Emission Energy', 'Emission Angle'] | None = None) None | str | Path | Collection[str] | Collection[Path]
Get the file(s) by index or name.
- has_all_mandatory_files(model_config: ModelConfig) bool
Tell if files defined by
Model.model_configare set.
- plot(plotter: Plotter, population: Literal['SE', 'EBE', 'IBE', 'all'] | Collection[Literal['SE', 'EBE', 'IBE', 'all']], emission_data_type: Literal['Emission Yield', 'Emission Energy', 'Emission Angle'], axes: T | None = None, **kwargs) T | None
Plot desired measured data using
plotter.This method uses
DataMatrix.get_data()to get theEmissionDatainstance matchingpopulationandemission_data_type. Then it calls theEmissionData.plot()method.- Parameters:
plotter – Object realizing the plot. We transfer it to the
EmissionData.plot()method.population – One or several populations to plot. If several are given, we simply recursively call this method.
emission_data_type – Type of data to plot.
axes – Axes to re-use if given.
kwargs – Other keyword arguments passed to the
EmissionData.plot()method.
- Return type:
Created axes object, or
Noneif no plot was created.
- property se_energy_distribution: EmissionEnergyDistribution
Return the energy distribution of SEs.
- set_data(emission_data: EmissionData | Collection[EmissionData], row: int | None = None, col: int | None = None, population: Literal['SE', 'EBE', 'IBE', 'all'] | None = None, emission_data_type: Literal['Emission Yield', 'Emission Energy', 'Emission Angle'] | None = None) None
Set the data by index or name.
- set_files(files: str | Path | Collection[str] | Collection[Path], row: int | None = None, col: int | None = None, population: Literal['SE', 'EBE', 'IBE', 'all'] | None = None, emission_data_type: Literal['Emission Yield', 'Emission Energy', 'Emission Angle'] | None = None) None
Set the file(s) by index or name.
- property teey: EmissionYield
Return the TEEY directly.
Submodules
- data_matrix module
DataMatrixDataMatrix.__init__()DataMatrix._natures_to_indexes()DataMatrix._indexes_to_natures()DataMatrix.set_files()DataMatrix.set_data()DataMatrix.get_files()DataMatrix.get_data()DataMatrix.load_data()DataMatrix.has_all_mandatory_files()DataMatrix.plot()DataMatrix.teeyDataMatrix.se_energy_distributionDataMatrix.all_energy_distribution
- emission_angle_distribution module
- emission_data module
- emission_energy_distribution module
EmissionEnergyDistributionEmissionEnergyDistribution.__init__()EmissionEnergyDistribution.e_peak_seEmissionEnergyDistribution.i_peak_ebeEmissionEnergyDistribution.e_peak_ebeEmissionEnergyDistribution.e_peEmissionEnergyDistribution.normEmissionEnergyDistribution.from_filepath()EmissionEnergyDistribution.labelEmissionEnergyDistribution._abc_implEmissionEnergyDistribution.plot()EmissionEnergyDistribution._normalize()EmissionEnergyDistribution._se_ebe_limitEmissionEnergyDistribution._find_SE_peak()EmissionEnergyDistribution._find_EBE_peak()
- emission_yield module
- helper module