Skip to content

Add geometry optimization evaluation metrics#719

Open
janosh wants to merge 14 commits into
ddmms:mainfrom
janosh:feat/geo-opt-evaluation
Open

Add geometry optimization evaluation metrics#719
janosh wants to merge 14 commits into
ddmms:mainfrom
janosh:feat/geo-opt-evaluation

Conversation

@janosh

@janosh janosh commented Jul 22, 2026

Copy link
Copy Markdown

Summary

  • add Matbench-compatible geo-opt artifact schemas and aggregate metrics
  • analyze symmetry with moyopy and compare structures with pymatgen
  • keep structure-analysis dependencies in the optional geo-opt extra

Dependencies

Test plan

  • pytest -q tests/metrics/test_geo_opt_metrics.py tests/structure/test_symmetry.py (52 passed)
  • Ruff and diff checks

janosh added 8 commits July 22, 2026 07:50
Port Matbench Discovery scoring and artifact schemas without coupling evaluation to model execution or bundled prediction data.
Provide Matbench-compatible structure schemas, symmetry analysis, and aggregate metrics while keeping heavy dependencies optional.
Allow pytest framework filtering to select the imported Matbench Discovery suite.
Allow pytest framework filtering to select the imported Matbench Discovery suite.
Remove redundant copies and wrappers while preserving schema validation, metric semantics, and structure conversion behavior.
Consolidate energy preparation and fold overlapping regression tests without changing scoring behavior.
Wrap subset metrics with a schema version and Matbench Discovery source metadata so serialized outputs can evolve safely.
Add schema and Matbench Discovery version metadata to serialized geometry-optimization results.
@ElliottKasoar ElliottKasoar added new benchmark Proposals and suggestions for new benchmarks external Contribution from external framework labels Jul 23, 2026
janosh added 6 commits July 23, 2026 15:15
Note the schema and source version fields included in serialized evaluation output.
Note the schema, framework, and runtime versions included in serialized analysis output.
Accept only the versioned JSON list encoding and corrected symmetry columns defined by the new schema.
Route all public scoring and subset APIs through artifact masking and rounding, leaving raw helpers private.
Document parameters and return values required by the repository's numpydoc validation hook.
Document parameters and return values required by the repository's numpydoc validation hook.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

external Contribution from external framework new benchmark Proposals and suggestions for new benchmarks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants