labscript-suite-temp / lyse

lyse is an analysis framework. It coordinates the running of python analysis scripts on experiment data as it becomes availiable, updating plots in real time.
BSD 2-Clause "Simplified" License
0 stars 0 forks source link

Analysis Globals #6

Open philipstarkey opened 10 years ago

philipstarkey commented 10 years ago

Original report (archived issue) by Philip Starkey (Bitbucket: pstarkey, GitHub: pstarkey).


Currently in the dual-species lab at Monash, we have some analysis globals. These globals are stored, and edited in runmanager because we have no other option. These globals however, are completely decoupled from the experiment, and really shouldn't be there.

I propose that we provide a new pane in lyse to edit analysis globals; that is, parameters which are frequently edited and used by analysis scripts. These globals would be stored in a separate h5 file.

This then makes lyse follow the same architecture as runmanager/labscript, and allows for asynchronous (or post-hoc) modification of the analysis globals. Of course, these globals should be saved along with the script, in the h5 file, when the anlaysis is run.

philipstarkey commented 10 years ago

Original comment by Chris Billington (Bitbucket: cbillington, GitHub: chrisjbillington).


Hm, ok, and analysis globals won't need to have expansions or anything like that - they're just values.

I'll see how easy this is to do once I'm writing the qt port anyway, liststores full of python values saved to h5 files will be fresh in my mind from having just ported runmanager, so it probably will be trivial to implement given I'll be knee deep in that anyway. But no guarantee. You can fudge a similar effect without runmanager currently by having an 'analysis' script that saves 'results': and store your globals there.

But it would be nice to have this in a gui and automatically populate a namespace for you.

philipstarkey commented 7 years ago

Original comment by Jan Werkmann (Bitbucket: PhyNerd, GitHub: PhyNerd).


After 3 years this is still relevant. We are doing the runmanager hack as well and I'd very much like to get rid of it.

philipstarkey commented 5 years ago

Original comment by David Meyer (Bitbucket: dihm, GitHub: dihm).


Giving this another small bump. We recently hit this limitation fairly hard in our lab as well. We have been using the runmanager hack but would really like to move away from it.

Is there something subtle that make it hard to implement a simpler version of the runmanager globals system in lyse? At first glance I can imagine it being a little hard to decide when to save the globals to the h5 file since the gui allows (even encourages) multiple analysis files to a shot, that can be run in arbitrary order an arbitrary number of times. Saving the same set of globals multiple times to a shot can lead to a lot of h5 file bloat.