The computational pipeline behind the PAiCER manuscript ranks nickel (Ni) as the top divalent substituent for metal-substituted whitlockite (a calcium-phosphate bone-graft biomaterial) — Rank #1 by this computational screen after the stated chemical filters. (The experimental confirmation of Ni's superior reinforcement is reported in the manuscript, not in this repository.) The screen runs molecular dynamics → a physics-based scoring function → an XGBoost extension over the full candidate library, and ranks Ni at #1 with a Physics Score of 282.19.
Scientific question. Which substituent M gives the best reinforcement profile in metal-substituted whitlockite? Hypothesis. A d8 transition metal (Ni) maximizes strength through crystal-field stabilization (CFSE) and a regular octahedral preference in a distorted lattice.
This repository contains the computational/ML pipeline, its input data, and reproduced result tables only. Experimental characterization (XRD / XPS / FTIR / nanoindentation) is reported in the manuscript and its Supporting Information.
Layer 1 Physics Score (21 metals, MD+theory) + XGBoost to 45 elems -> Table S1; Ni = 282.19 (Rank #1)
Layer 2 Weighted ranking of the 21 candidates (biocompatibility 20%) -> Table S2; Ni = 97.29 (Rank #1)
Verify DFT (Ni Jahn-Teller-inactivity) -> CFSE / electronic origin
The screen is two-layer (PAiCER SI): Layer 1 is a broad physics-only Physics Score over a 5D Pareto front (Table S1, 0-300); Layer 2 is the biomaterial-facing weighted multi-objective ranking of the Pareto-viable candidates that adds LD50/IC50 biocompatibility as an explicit objective (Table S2, 0-100). Ni is Rank #1 in both.
src/physics_score_21metals.py computes the manuscript Physics Score for the 21 MD-screened metal-substituted whitlockites from MD- and theory-derived descriptors only. No experimental data is used.
The score is a weighted additive combination of:
| group | descriptors | weight basis |
|---|---|---|
| dynamic stability | MSD (50 ns, temporal stability, trend) | physical, fixed |
| structural uniformity | Lindemann CV, coordination-number CV | physical, fixed |
| bond strength | RDF peak height / width, time consistency | physical, fixed |
| crystallinity | calculated XRD peak count | physical, fixed |
| electronic / geometric | CFSE, ionic-radius match, Jahn-Teller penalty | ligand-field theory |
Running it reproduces Ni Physics Score = 282.1932 (Rank #1), matching the manuscript Table S1 (MD-data rows).
src/predict_candidates_xgboost.py trains an XGBoost regressor (Chen & Guestrin, 2016) on the 21 Stage-1 Physics Scores using theoretical atomic descriptors as features, then predicts the Physics Score for every candidate element. Ni remains Rank #1 (282.19); CFSE is the dominant feature. (The candidate library spans 62 elements across the periodic table; the manuscript Table S1 reports the 45 divalent-relevant candidates — Ni is Rank #1 in both.)
The authoritative reproduced ranking is outputs/physics_ranking_xgboost.csv (manuscript Table S1).
Note. The ranking uses XGBoost (Chen & Guestrin, 2016), the algorithm named in the manuscript. The Stage-1 Physics Scores for the 21 MD-screened metals — including Ni = 282.19 (Rank #1) — are model-independent and reproduce exactly.
src/physics_score_S2_21candidates.py ranks the 21 Pareto-viable candidates by a weighted sum of five normalized objectives — the manuscript's biomaterial-facing final ranking (Fig. 1):
| objective | weight | direction |
|---|---|---|
| Hardness | 40 | higher better (min-max) |
| CFSE | 30 | higher better |
| Biocompatibility (LD50/IC50) | 20 | lower toxicity better (inverted) |
| Lindemann CV | 5 | lower better (inverted) |
| dUtopia | 5 | pre-normalized Pareto-utopia distance |
This is where biocompatibility enters as an explicit 20% objective, so physically-strong but unsafe candidates (e.g. Pb, Ra, Ba) fall in the ranking. The per-element objective values are the published PAiCER SI Table S2 values (data/objectives_21candidates.csv). Running the script reproduces Ni = 97.2881 (Rank #1) and matches all 21 published Weighted sums to within 1e-3 (expected/TableS2_21.csv). The manuscript synthesizes and characterizes the top-ranked viable set Ni, Co, Cu, Mg.
- DFT: Quantum ESPRESSO (PBE+U) + LOBSTER address the electronic origin (CFSE / COHP) and confirm Ni's Jahn-Teller-inactive character (the proposed amorphization mechanism). A 42-atom primitive cell with a two-step protocol (
nspin=1relaxation →nspin=2energy) handles Ni's near-degenerate high/low-spin states. Seedocs/DFT_convergence_criteria.md.
Experimental nanoindentation (which independently confirms the Ni system is by far the hardest) is reported in the manuscript; the ML ranking here does not take any measured hardness as input.
pip install -r requirements.txt
python src/physics_score_21metals.py # Layer 1 -> outputs/physics_score_21metals.csv (Ni = 282.1932)
python src/predict_candidates_xgboost.py # Layer 1 -> outputs/physics_ranking_xgboost.csv (Table S1, Ni #1)
python src/physics_score_S2_21candidates.py # Layer 2 -> outputs/physics_score_S2_21candidates.csv (Table S2, Ni = 97.2881)expected/TableS1_45.csv and expected/TableS2_21.csv are the published SI answer keys used for verification.
src/ Layer-1 Physics Score + XGBoost extension; Layer-2 weighted ranking
data/ MD descriptors (21 metals), calculated XRD peaks, Table S2 objective values
expected/ published SI answer keys (Table S1 45-elem, Table S2 21-cand)
docs/ analysis & validation notes, DFT convergence, data dictionary
outputs/ reproduced result tables
- Jung Heon Lee — @juhelee7 — supervision, corresponding author
- Jina Bae — @jinjin-del — experiments (synthesis & characterization)
- Byoungsang Lee — @carryer123 — MD / DFT / ML computation (this repo)
See CONTRIBUTORS.md.
GROMACS (MD); Quantum ESPRESSO 7.3.1 + LOBSTER 5.1.0 (DFT); XGBoost, NumPy, pandas (ML).
Manuscript: PAiCER (Bae et al.), submitted to Advanced Materials. ML method: Chen, T. & Guestrin, C. XGBoost: A Scalable Tree Boosting System. KDD 2016.