irradiapy.analysis.dpa module

Module for analyzing dpa.

irradiapy.analysis.dpa.depth_dpa_hist(recoilsdb, analysisdb, axis, damage_energy_mode, fluence, debris_path=None, nbins=100, p0=None, asymmetry=1.0)[source]

Get depth dpa histogram and save it into database.

Fit: asymmetric lorentzian function. Tries to fit to Eq. (2) of Nuclear Instruments and Methods in Physics Research B 500-501 (2021) 52-56.

Parameters:
  • recoilsdb (RecoilsDB) – Recoils database.

  • analysisdb (AnalysisDB) – Database for storing results.

  • axis (str) – Axis along which to calculate depth (‘x’, ‘y’, or ‘z’).

  • damage_energy_mode (DamageEnergyMode) – Damage energy calculation mode.

  • fluence (float) – Fluence in ions/Ų.

  • debris_path (Path | None) – Path to the debris LAMMPS file to compute the debris dpa.

  • nbins (int) – Number of bins for the depth histogram.

  • p0 (float | None) – Initial guess for Lorentzian fit.

  • asymmetry (float) – Bound for the asymmetry fit parameter. Fit will be done in (-asymmetry, asymmetry).

Return type:

None

irradiapy.analysis.dpa.depth_dpa_hist_plot(analysisdb, axis, fits=False, plot_path=None, show=False, dpi=300)[source]

Plot depth dpa histogram.

Parameters:
  • analysisdb (AnalysisDB) – Database. Must contain depth dpa data.

  • axis (str) – Axis along which to plot depth (‘x’, ‘y’, or ‘z’).

  • fits (bool) – Whether to plot the fit functions.

  • plot_path (Path | None) – Path to save the plot. If None, the plot is not saved.

  • show (bool) – Whether to show the plot.

  • dpi (int) – DPI for saving the plot.

Return type:

None

irradiapy.analysis.dpa.dpa(recoilsdb, analysisdb)[source]

Calculate dpa values from the recoils database.

Parameters:
  • recoilsdb (RecoilsDB) – Recoils database.

  • analysisdb (AnalysisDB) – Database. Must contain depth dpa data.

Returns:

Dictionary with dpa values: ‘nrt’, ‘arc’, ‘ferarc’, and ‘debris’.

Return type:

dict[str, float]