RadCluster
Graph-based cluster dynamics for irradiated materials
Loading...
Searching...
No Matches
Functions | Variables
py_utils.size_distributions Namespace Reference

Functions

 _set_title (ax, text, **kw)
 
 _slug (text)
 
 _apply_style (font_family, font_serif, font_size, axes_linewidth, dpi, save_dpi)
 
 _load_bins (xlsx_path, sheet)
 
 _annotate_cite (ax, text, fontsize)
 
 _save (fig, outdir, stem, formats)
 
 _filter (df, mat_c, type_c, dose_c, temp_c, bin_c, freq_c, material=None, irr_type=None, dose=None, temp=None)
 
 _xywh (df, bin_c, bw_c, freq_c)
 
 plot_size_distributions (xlsx="Ferritics_Irradiated_Microstructure_Data.xlsx", outdir="figures", save=True, show=False, formats=("pdf", "png"), include_overview=True, font_size=16, font_family="serif", font_serif=("Times New Roman", "DejaVu Serif"), axes_linewidth=1.2, dpi=150, save_dpi=300, cite_fontsize=None, figsize=(8, 5))
 
 main ()
 

Variables

list LOOP_CASES
 
list VOID_CASES
 
bool SHOW_TITLES = False
 

Detailed Description

size_distributions.py
Reads Size_Distribution_Database_FM_Steels.xlsx and produces
publication-quality bar-graph figures of dislocation loop and
void/cavity size distributions — one figure per condition.

Programmatic use (Jupyter):
    from size_distributions import plot_size_distributions
    figs = plot_size_distributions(
        xlsx="../../input/Size_Distribution_Database_FM_Steels.xlsx",
        outdir="../../output/size_distributions",
        font_size=16, save=True, show=True,
    )

CLI use:
    python size_distributions.py --xlsx ... --outdir ...

Function Documentation

◆ _annotate_cite()

py_utils.size_distributions._annotate_cite (   ax,
  text,
  fontsize 
)
protected

Definition at line 138 of file size_distributions.py.

◆ _apply_style()

py_utils.size_distributions._apply_style (   font_family,
  font_serif,
  font_size,
  axes_linewidth,
  dpi,
  save_dpi 
)
protected

Definition at line 113 of file size_distributions.py.

◆ _filter()

py_utils.size_distributions._filter (   df,
  mat_c,
  type_c,
  dose_c,
  temp_c,
  bin_c,
  freq_c,
  material = None,
  irr_type = None,
  dose = None,
  temp = None 
)
protected

Definition at line 149 of file size_distributions.py.

◆ _load_bins()

py_utils.size_distributions._load_bins (   xlsx_path,
  sheet 
)
protected

Definition at line 132 of file size_distributions.py.

◆ _save()

py_utils.size_distributions._save (   fig,
  outdir,
  stem,
  formats 
)
protected

Definition at line 144 of file size_distributions.py.

◆ _set_title()

py_utils.size_distributions._set_title (   ax,
  text,
**  kw 
)
protected
Axes (or panel) title, drawn only when SHOW_TITLES is on.

Definition at line 102 of file size_distributions.py.

◆ _slug()

py_utils.size_distributions._slug (   text)
protected

Definition at line 108 of file size_distributions.py.

◆ _xywh()

py_utils.size_distributions._xywh (   df,
  bin_c,
  bw_c,
  freq_c 
)
protected

Definition at line 163 of file size_distributions.py.

◆ main()

py_utils.size_distributions.main ( )

Definition at line 359 of file size_distributions.py.

◆ plot_size_distributions()

py_utils.size_distributions.plot_size_distributions (   xlsx = "Ferritics_Irradiated_Microstructure_Data.xlsx",
  outdir = "figures",
  save = True,
  show = False,
  formats = ("pdf", "png"),
  include_overview = True,
  font_size = 16,
  font_family = "serif",
  font_serif = ("Times New Roman", "DejaVu Serif"),
  axes_linewidth = 1.2,
  dpi = 150,
  save_dpi = 300,
  cite_fontsize = None,
  figsize = (8, 5) 
)
Build one figure per condition (loop and void size distributions).

Empty datasets are skipped. Returns dict{stem -> Figure} of figures
actually produced.

Set `include_overview=False` to skip the mean-loop-size-vs-T scatter.

Definition at line 171 of file size_distributions.py.

Variable Documentation

◆ LOOP_CASES

list py_utils.size_distributions.LOOP_CASES

Definition at line 35 of file size_distributions.py.

◆ SHOW_TITLES

bool py_utils.size_distributions.SHOW_TITLES = False

Definition at line 99 of file size_distributions.py.

◆ VOID_CASES

list py_utils.size_distributions.VOID_CASES
Initial value:
1= [
2 dict(kind="void", material="EUROFER97", dose=15, temp=330, color="#1B4F8A",
3 citation="[CIT-01] Klimenkov 2012", xlim=(0, 5),
4 title="EUROFER97 — 15 dpa / 330 °C (BOR-60, neutron)"),
5 dict(kind="void", material="EUROFER97", dose=32, temp=335, color="#2E86C1",
6 citation="[CIT-01] Klimenkov 2012", xlim=(0, 5),
7 title="EUROFER97 — 32 dpa / 335 °C (BOR-60, neutron)"),
8 dict(kind="void", material="T91", dose=15.4, temp=376, color="#117A65",
9 citation="[CIT-05] Gao 2018", xlim=(0, 5),
10 title="T91 — 15.4 dpa / 376 °C (BOR-60, neutron)"),
11 dict(kind="void", material="HT9", dose=17.1, temp=377, color="#1E8449",
12 citation="[CIT-06] Gao 2019", xlim=(0, 5),
13 title="HT9 — 17.1 dpa / 377 °C (BOR-60, neutron)"),
14 dict(kind="void", material="T91", dose=35.1, temp=376, color="#922B21",
15 citation="[CIT-05] Gao 2018", xlim=(0, 18), bimodal=True,
16 title="T91 — 35.1 dpa / 376 °C (BOR-60, neutron) — bimodal"),
17 dict(kind="void", material="HT9", dose=35.1, temp=377, color="#C0392B",
18 citation="[CIT-06] Gao 2019", xlim=(0, 18), bimodal=True,
19 title="HT9 — 35.1 dpa / 377 °C (BOR-60, neutron) — bimodal"),
20]

Definition at line 74 of file size_distributions.py.