Skip to content

187 add equation of state workgraph#255

Open
MM0hsin wants to merge 17 commits intostfc:mainfrom
MM0hsin:187-add-equation-of-state-workgraph
Open

187 add equation of state workgraph#255
MM0hsin wants to merge 17 commits intostfc:mainfrom
MM0hsin:187-add-equation-of-state-workgraph

Conversation

@MM0hsin
Copy link
Collaborator

@MM0hsin MM0hsin commented Nov 20, 2025

Add EOS workgraph

Get Scales > QE and split into test, train and valid file.

Copy link
Member

@ElliottKasoar ElliottKasoar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like a good start!

I think we may want to work with the StructureData a little more directly in general?

Currently, I don't think the input structure isn't actually saved, only the name of the path is, which isn't the most helpful for reproducibility.

I think we want an input to either be SinglefileData, or probably actually the StructureData, similar to our CalcJobs, and the QE CalcJob.

Then, could we not pass the StructureData from the scales_task to the qe_task (it doesn't hurt to have keep an auxiliary intermediate output file, but it's probably cleaner to work with the data more directly where possible)?

@MM0hsin
Copy link
Collaborator Author

MM0hsin commented Nov 21, 2025

Then, could we not pass the StructureData from the scales_task to the qe_task (it doesn't hurt to have keep an auxiliary intermediate output file, but it's probably cleaner to work with the data more directly where possible)?

So you mean storing the outputs from scales_task as variables in a dict, then passing the dict into qe_task?

@ElliottKasoar
Copy link
Member

Then, could we not pass the StructureData from the scales_task to the qe_task (it doesn't hurt to have keep an auxiliary intermediate output file, but it's probably cleaner to work with the data more directly where possible)?

So you mean storing the outputs from scales_task as variables in a dict, then passing the dict into qe_task?

Exactly how you store the StructureData probably doesn't matter, as long as the real data is in the graph, but yeah I'd imagine something like that. The main point was just to be able to keep using the structure data directly, rather than writing out the data and then just reading it back in immediately.

Copy link
Member

@ElliottKasoar ElliottKasoar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"id": "f8a6b9ee",
"metadata": {},
"source": [
"We can can use the outputs to viusualise the data, in this example we will print a simple bar chart of the energies:"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would also be nice to actually have the EoS plot here (see examples linked elsewhere). All you need is the energies (from the DFT) and the volumes (which you can get from the structures if this is not saved).

There's probably no time right now, but it would also be cool to then do an eos via janus with the fine-tuned model, and see how that compares.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couldnt do EOS.plot() as there was no minimum:
image

but i did change from bar chart to a scatter plot.

@MM0hsin
Copy link
Collaborator Author

MM0hsin commented Nov 28, 2025

@ElliottKasoar

How does this compare in terms of implementation to similar AiiDA example workflows

I was not aware workgraph-collections existed before this. But main difference is we dont use ase EquationOfState directly to calculate the energies, instead we generate the scaled structures and run Quantum Espresso

Copy link
Collaborator Author

@MM0hsin MM0hsin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added suggested changes

MM0hsin and others added 2 commits November 28, 2025 16:36
Co-authored-by: Elliott Kasoar <45317199+ElliottKasoar@users.noreply.github.com>
@MM0hsin MM0hsin force-pushed the 187-add-equation-of-state-workgraph branch from 05817dd to 639740e Compare November 28, 2025 16:43
@ElliottKasoar ElliottKasoar linked an issue Nov 28, 2025 that may be closed by this pull request
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

Successfully merging this pull request may close these issues.

Add equation of state workgraph

3 participants