atomate2 icon indicating copy to clipboard operation
atomate2 copied to clipboard

More tutorials

Open JaGeo opened this issue 1 year ago • 12 comments

@naik-aakash and I have build some new tutorials for an up-coming talk of mine. It might be interesting to also include such tutorials in the atomate2 documentation.

We have uploaded them here for now: https://jageo.github.io/TutorialAtomate2Forcefields/intro.html

https://jageo.github.io/sites/Phonon_wf_tutorial_update.html

Would be great to hear what others think about such tutorials and how to integrate them best.

JaGeo avatar Oct 23 '23 14:10 JaGeo

Might also be related to https://github.com/materialsproject/atomate2/issues/405.

Maybe you, @Andrew-S-Rosen, have some thoughts

JaGeo avatar Oct 23 '23 15:10 JaGeo

Thanks, @JaGeo! This will be very helpful for @prathami11 here in the Persson group 😄

Andrew-S-Rosen avatar Oct 23 '23 15:10 Andrew-S-Rosen

Just fixed one embarrassing mistake in my tutorial. Now, it should hopefully be very useful. 😃

JaGeo avatar Oct 23 '23 17:10 JaGeo

@JaGeo Thanks for the tutorial! I strongly agree that providing an ipynb is the best way for hands-on tutorials, and if we could have a place to organize all submission tutorials for all the workflows, that would be great! The Jupyter book you demoed here is an excellent choice (it is also a good idea to show the flow diagram in the notebook). @utf @janosh Any thoughts on whether/where we should put all tutorials in?

Zhuoying avatar Oct 24 '23 00:10 Zhuoying

I think the atomate2 repo is the obvious place to collect such tutorial notebooks. It always bugged me that it took me close to two years from starting to contribute to MP to discover all the examples in https://github.com/materialsvirtuallab/matgenb. This would not have happened if they were in pymatgen (most of them show off pymatgen functionality).

janosh avatar Oct 24 '23 02:10 janosh

I am learning about this right now...!

Andrew-S-Rosen avatar Oct 24 '23 02:10 Andrew-S-Rosen

When I started contributing to them, they were in pymatgen, I think. (@Andrew-S-Rosen : 🙈). This also led to all kinds of issues. Keeping the updated wasn't easy, I think..

Would be great to collect them in this repo here. We just need to update them frequently.

JaGeo avatar Oct 24 '23 04:10 JaGeo

I think it would be great to have tutorials in the atomate2 repo and on the docs. In terms of keeping them up to date, I wonder if there is any way we can have some sort of automated testing for them. This might work for the forcefield ones, but will be more difficult for the DFT ones.

utf avatar Oct 24 '23 08:10 utf

Could one use the mock_* methods within the tutorials without them showing up?

JaGeo avatar Oct 24 '23 08:10 JaGeo

@JaGeo Yes, Jupyter supports cell metadata which can contain tags. E.g.

{
    "jupyter": {
        "outputs_hidden": true
    },
    "tags": [
        "remove-input",
    ]
}

will hide both input and output of a notebook cell when converted to docs. This does not affect the notebook itself, just it's HTML conversion. Afaik this works with nbconvert, Sphinx and MyST-NB.

janosh avatar Oct 24 '23 15:10 janosh

I'm just using the new MPGGARelax (etc) workflows for the first time, happy to contribute an example use case taking a new material and screening it against MP results; guess this wouldn't be a direct tutorial though.

More generally I don't really follow the current structure of the online docs (e.g., the 'chaining workflows' section being hidden under Codes -> VASP) -- happy to do a pass on this if it isn't already in progress.

ml-evs avatar Nov 17 '23 10:11 ml-evs

@ml-evs if you have some thoughts for how to improve the docs, please go wild! IMO they could be vastly improved.

utf avatar Nov 17 '23 10:11 utf