Band gap refactor

The way we store band gaps should be refactored. Currently, there are different locations for storing this data, depending slightly on what is exactly being measured: results.properties.electronic.band_structure_electronic.band_gap for band gaps extracted from band structure (theory) and under results.properties.optoelectronic.band_gap_optical for band gaps extracted using experiments. Instead, the values should be stored in a single location no matter what the methodology for approximating the band gap is.

  • Decide a new location for the band gap information. Maybe results.electronic.band_gap would make most sense. The description needs to be modified to properly explain what can be stored in this quantity.
  • Modify the normalizers to store the band gap information in the correct place, refactor tests and add new ones.
  • Modify also custom normalizers in nomad/datamodel/metainfo/eln/perovskite_solar_cell_database/__init__.py and nomad/datamodel/metainfo/eln/__init__.py
  • Modify GUI to use the new location.
  • In production, we need to migrate the data to use the new location. This would mean reprocessing the ~420k entries with a band structure + 40k entries from the solar cell data.
  • Remove old metainfo once data has been migrated.
  • Maybe we need new metainfo for exciton_binding_energy?
Edited Apr 20, 2023 by Nathan Daelman
Assignee Loading
Time tracking Loading