-
Notifications
You must be signed in to change notification settings - Fork 863
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add OPTIMADE adapter #3876
Add OPTIMADE adapter #3876
Conversation
I would put this in pymatgen.ext rather than pymatgen.io. The ext are external interfaces to things like API resources. E.g., matproj is in pymatgen.ext. Thanks. |
Given this is purely for conversion to/from the OPTIMADE schema, Thanks for the PR @ml-evs ! |
f389666
to
e130ff4
Compare
Apologies, I made this during the OPTIMADE workshop and your responses got lost in the notifications -- happy for this to go wherever but agree with Matt that I'll get around to adding a couple more tests to this, but I think the code itself is ready for review. |
Ok, slightly concerned that rebasing this PR has lead to 395 files being changed... |
that's from the recent 9100860 which didn't ensure |
832a23a
to
e670eac
Compare
51eb467
to
418a163
Compare
Ok, rebased this more intelligently this time, have beefed up the test a little and think its ready to go. |
e3fbc67
to
41e6d99
Compare
Summary
This PR adds a converter between the
pymatgen.core.Structure
object and an OPTIMADE structure resource, migrated primarily out of https://github.com/Materials-Consortia/optimade-python-tools/blob/master/optimade/adapters/structures/pymatgen.py with the aim to remove it from our library.Todos
pymatgen.ext.optimade
client (future work)Checklist
ruff
.mypy
.duecredit
@due.dcite
decorators to reference relevant papers by DOI (example)