Skip to content

Make sure refinement results can be plotted - #1717

Open
MBartkowiakSTFC wants to merge 2 commits into
masterfrom
maciej/parameter-plot
Open

MBartkowiakSTFC wants to merge 2 commits into
masterfrom
maciej/parameter-plot

Conversation

@MBartkowiakSTFC

Copy link
Copy Markdown
Collaborator

Description of work
Simplifies the plotting mechanism for the parameter output. The plotter takes all the points sampled by CMAES and makes a corner plot showing the parameter correlation:
summary_sto_dos_cornerplot

There is also a scatter plot of parameters sorted by FoM:
summary_sto_dos_parameters

It would probably make sense to output the correlation information directly from the optimiser. Also, discarding a fraction of the initial values before creating the corner plot could also help illustrate what correlations have been found.

Fixes

  1. Remove GPO from PlotResults,
  2. Add a scatter plot of parameters vs. FoM.
  3. Include plot output in examples/sto-dos.py.

To test
Run examples/sto-dos.py. It should save plots to a file. (You can adjust the parameters to make the run faster/shorter.)
Add control.plot_results() to the "Argon-a-to-z" Jupyter notebook and check if the plot is created at the end.

@MBartkowiakSTFC

Copy link
Copy Markdown
Collaborator Author

@ChiCheng45 @oerc0122 What kind of visual output do you think would be useful at the end of an optimisation run? I was considering adding a plot of FoM over time to give a basic idea of how the refinement was converging.

@ChiCheng45

ChiCheng45 commented Sep 14, 2026 •

Copy link
Copy Markdown
Collaborator

This seems like something that someone would create themselves to suit their own needs/research project. But anyway, the above looks good to me and I agree some plot over time would probably be useful. Here is what I was creating for Argon.

image image

I was also plotting the Log10(FoM).

image

@MBartkowiakSTFC MBartkowiakSTFC changed the title [WIP] Make sure refinement results can be plotted Make sure refinement results can be plotted Sep 14, 2026
@MBartkowiakSTFC

Copy link
Copy Markdown
Collaborator Author

OK, I added a logscale plot of the FoM values as a function of refinement step.

Also, the cornerplot inputs and the parameter plot inputs now both use the same subset of all the points, which currently means that they get sorted by the FoM and points with the highest FoM are not included in the plot. The default setting is to keep half of the points.

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.

2 participants