Three data sources — my own DFT calculations, literature papers, and Materials Project — each with different reliability profiles. How I reconcile them into a single trustworthy training set.
Once I'd decided to add a data-driven layer to my DFT work, the first practical question was: what does my dataset actually look like? Not in the abstract — row by row, what goes in each cell.
I settled on three sources, each with very different reliability profiles:
- My own DFT calculations — the most trustworthy, but covering only the handful of compounds I've personally converged with Wien2k, VASP, or SIESTA.
- Literature papers — broad coverage, but inconsistent reporting. Some papers give Δ directly, others give crystal field parameters in cm⁻¹, others bury the magnetic moment in a table caption.
- Materials Project — structured, queryable, consistent units, but computed with a fixed methodology (usually GGA or GGA+U) that may not match what's appropriate for a given compound's correlation strength.
The reconciliation problem
The moment I tried to merge these, the mess started. The same compound — say FeS in a rock-salt-like environment — might show up with a band gap of 0.0 eV in Materials Project (predicted metallic under GGA), 0.3 eV in one paper using GGA+U, and a qualitative "small gap semiconductor" in another paper with no number at all. None of these are "wrong" — they're different methods answering slightly different questions.
So every row in the dataset needs not just values, but provenance: which method, which U value if applicable, which paper or MP entry ID. Without that, any correlation I find later is unfalsifiable — I won't be able to tell if a trend reflects physics or just which method happened to be used for which compounds.
Application: dataset row builder
Below is a small interactive mock-up of what a single dataset row looks like once assembled — pick a compound family and a source, and see how the same nominal property can carry different values depending on where it came from.
Dataset row preview
Pick a compound and a data source — see how the reported band gap and magnetic moment shift, and what provenance gets attached to the row.
| Band gap (eV) | – |
| Magnetic moment (μB) | – |
| Method / U (eV) | – |
| Provenance | – |
Illustrative values — the real dataset stores one row per (compound, source) pair rather than overwriting, so conflicting reports stay visible.
The schema I landed on
Each row carries: compound formula, space group, lattice parameters, M–X bond length(s), M–X–M angle(s), d-electron count, then the property block — band gap, magnetic moment, ordering type, Néel/Curie temperature where available — and finally the provenance block: source type, method, U value, reference. Multiple rows per compound are not just allowed, they're expected. Reconciliation happens later, at the feature-engineering stage, not at ingestion.
0 Comments