Physics-Informed Machine Learning Framework for Cross-Family Classification and Inverse Identification of Superconducting Materials from Simulated Nanoindentation Responses — Reproducible Pipeline

Published: 23 July 2026| Version 1 | DOI: 10.17632/92rfxxfjr7.1
Contributors:
,

Description

This deposit is the complete, fully deterministic computational pipeline that reproduces every quantitative result, table, and figure of the associated article by C. M. Yeşilkanat and U. Kölemen. No physical indentation experiments were performed. A physics-informed Monte Carlo forward model — built on the Oliver–Pharr (1992) contact mechanics, the Nix–Gao (1998) indentation-size-effect law, and the Bolshakov–Pharr (1998) unloading/pile-up framework — generates 2,520 physically self-consistent Berkovich load–displacement (P–h) curves across six superconductor families (YBCO, BSCCO, MgB2, BaFe2As2, Nb3Sn, Nb/NbTi). Hardness and reduced-modulus sampling windows are anchored to peer-reviewed indentation measurements. The pipeline then (i) extracts dimensional-analysis curve-shape descriptors, (ii) benchmarks six-family classification (random forest, SVM, histogram gradient boosting; macro-F1 rising from 0.707 on scalar descriptors to 0.894 on curve-shape descriptors), (iii) provides SHAP and UMAP explainability, (iv) evaluates leave-one-family-out generalization with Isolation-Forest anomaly scoring, (v) recovers hardness, reduced modulus, and the indentation-size-effect length h* from a single curve (R2 = 0.986, 0.991, 0.937), (vi) runs an ablation isolating the physics-versus-machine-learning contribution, and (vii) validates the forward model against published BSCCO microindentation scalars. Everything is deterministic under the global random seed 20260719: a single command (python run_all.py) regenerates every number, table, and figure. Requirements: Python >= 3.10 (tested on 3.12); ~5–8 minutes on a standard laptop; no GPU. Released under the MIT license. Contents: code/ (5 Python modules), data/ (descriptor table + all reported scalars as JSON), figures/ (Figures 1–9 as PNG and editable-text SVG), tables/ (all manuscript tables as CSV), and full documentation (README, LICENSE, CITATION.cff, AUTHORS, data provenance/ethics, requirements, changelog).

Files

Steps to reproduce

``` . ├── README.md ← this file ├── LICENSE ← MIT license (C. M. Yeşilkanat & U. Kölemen) ├── CITATION.cff ← machine-readable citation metadata ├── AUTHORS.md ← authorship and contribution statement ├── requirements.txt ← pinned, tested Python environment ├── CHANGELOG.md ← version history ├── data_provenance.md ← origin of every externally sourced number (ethics) ├── run_all.py ← ONE command reproduces everything ├── code/ │ ├── forward_model.py ← Oliver–Pharr + Nix–Gao + Bolshakov–Pharr Monte Carlo generator │ ├── feature_engineering.py ← Set A / Set B / Set C descriptors + closed-form Nix–Gao estimator │ ├── analysis.py ← classification, SHAP, UMAP, LOFO + Isolation Forest, inverse regression, ablation │ ├── validation_kolemen.py ← forward-model validation vs published BSCCO X₀ scalars │ └── figures.py ← manuscript Figures 1–9 (PNG 200 dpi + editable-text SVG) ├── data/ │ ├── feature_table.csv ← the 2,520-curve descriptor table (regenerated by the pipeline) │ ├── summary.json ← EVERY scalar quoted in the manuscript text │ └── validation.json ← all validation scalars (Section 3.6) ├── figures/ ← fig1..fig9 as PNG and SVG (regenerated) └── tables/ ← all manuscript tables as CSV (regenerated) ``` ## 4. How to reproduce everything (quick start) Requirements: Python ≥ 3.10 (tested on 3.12), ~2 GB RAM, ~5–8 min on a standard laptop, no GPU. ```bash # 1. (optional but recommended) create a clean environment python -m venv venv source venv/bin/activate # on Windows: venv\Scripts\activate # 2. install the pinned dependencies pip install -r requirements.txt # 3. reproduce the entire study python run_all.py ``` `run_all.py` executes the four stages in order and overwrites `data/`, `tables/`, and `figures/` with freshly computed, bit-for-bit identical outputs: 1. `code/forward_model.py` → 2,520 physics-based P–h curves 2. `code/analysis.py` → all classification/SHAP/LOFO/inverse/ablation results → `tables/*.csv`, `data/summary.json` 3. `code/validation_kolemen.py`→ `data/validation.json`, validation curves 4. `code/figures.py` → `figures/fig1..fig9` (PNG + SVG) ## 5. Running a single stage Each module is runnable on its own from the `code/` directory (they resolve paths relative to the deposit root): ```bash cd code python forward_model.py # regenerate the dataset only python feature_engineering.py # rebuild the descriptor table python analysis.py # rerun the machine-learning analyses python validation_kolemen.py # rerun the forward-model validation python figures.py # redraw all figures ```

Institutions

Categories

Physics, Materials Science, Computer Science Applications, Condensed Matter Physics, Machine Learning

Licence