nomad-coe / nomad

NOMAD lets you manage and share your materials science data in a way that makes it truly useful to you, your group, and the community.
https://nomad-lab.eu
Apache License 2.0
64 stars 13 forks source link

Workflow engine parsers #11

Open markus1978 opened 3 years ago

markus1978 commented 3 years ago

Workflow engines like fhi-vibes, Phonopy have underlying codes (vasp, fhi-aims etc.) to calculate desired properties. Typically, all the settings for these codes are not saved by the engines themselves but only a reference to these calculations are provided. In the case of Phonopy, a special normalization layer is added to fetch the information from the reference calculations belonging to the same upload. I personally do not favour this strategy as it will become cumbersome as we integrate more and more workflow engines.

This issue is also on GitLab here There is a related discussion on matsci here

@lauri-codes @ladinesa

markus1978 commented 3 years ago

There might be an acceptable solution that could be realised immediately.

We introduce a second parser phase that is run after all parsing/normalising has been completed. This would basically be a formalisation of our current phonopy-hack. Parsers configure if they need a second phase by providing an implementation of parse_workflow(entry_archive, logger) (the name is debatable). From the parser perspective, it is guaranteed that this is run after all other parsing/normalising.

Furthermore, we need to provide some utility to easily read the other results, either to copy results or create cross entry archive references.

flokno commented 3 years ago

Hopping on this, I just tried to upload a phonopy calculation with the following output files

phonopy.yaml
band.yaml
phonopy.yaml

which are sufficient to reconstruct the entire Phonopy object through phonopy.load. But I think NOMAD didn't parse anything from the upload, so I assume phonopy.yaml is not understood? What is the currently supported way to upload phonopy calculations to NOMAD? I see a phonopy parser in the docs, but the usage itself is not documented if I see this correctly.

ladinesa commented 3 years ago

It reads only phonon.yaml not phonopy.yaml which I based on name of the mainfile in the phonopy database. I will update the parser to include this also.

flokno commented 2 years ago

I tried phonon.yaml, that worked, with phonopy.yaml still no success.

ladinesa commented 2 years ago

The correction is still in beta:

https://nomad-lab.eu/prod/rae/beta/gui

You can try this and let me know if still does not work.

flokno commented 2 years ago

that worked :+1: