Skip to content
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

Trajectories examples #522

Open
giovannipizzi opened this issue Jun 11, 2024 · 1 comment
Open

Trajectories examples #522

giovannipizzi opened this issue Jun 11, 2024 · 1 comment

Comments

@giovannipizzi
Copy link
Contributor

In order to ensure we are not forgetting some very important usecase in the trajectories endpoint specification (#377), and also to be able to then test the implementation when it's ready, it's useful to collect trajectory examples. This is the purpose of this issue. If you have trajectories, it would be great if you could add a comment below with:

  • Name of your DB
  • Type of data
  • Link to existing online data, or file attachment (in the second case, pick a small subset, say a couple of MBs at max). One or two trajectories will be enough
  • Short but complete human-readable explanation of how to read/interpret the data (which file format, which fields/units, ...)
  • Any additional information to be able to make sense of the data (including comments on if all parts of the data would be essential to understand the data, or some is "optional" and would be acceptable that it's not served by OPTIMADE (at least in a first implementation)
  • Brief discussion of which type of queries your users would typically want to do on your data (ideally, limiting to those already implemented in your DB or realistic, to avoid to go into a too long wish list that is technically hard to implement)
@JonathanSchmidt1
Copy link

JonathanSchmidt1 commented Jun 11, 2024

Alexandria https://alexandria.icams.rub.de/

import json, bz2
data = json.load(bz2.open('alex_go_aaa_000.json.bz2','r'))
#first step of one trajectory
d1['agm003294584'][0]['steps'][0].keys()
dict_keys(['structure', 'energy', 'forces', 'stress'])
#second step of the same trajectory
d1['agm003294584'][0]['steps'][1].keys()
dict_keys(['structure', 'energy', 'forces', 'stress'])
  • data is a dict[list[dict[list[dicts]]]]
  • the first key is a materials id
  • the respective value is a list of different trajectories for that material (subsequent relexations of the same material)
  • the actual structure, energy, forces, stress can be found under the "steps" key in each element of the list
  • structure is a dictionary of a pymatgen structure

People might want to get data for a certain compositions space or a certain entry from our database, so either query by composition or materials id.
There is some additional dft settings data that we would like to provide as meta information for each trajectory

Just tag me if there are any questions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants