McCode icon indicating copy to clipboard operation
McCode copied to clipboard

Enhancement of Monitor_nD list-mode and its graphics-outputs

Open willend opened this issue 3 years ago • 1 comments

(includes inputs from @mads-bertelsen and @ebknudsen)

Monitor_nD bastardises the normal mccode 2D "datatype" when creating its list-mode output, which typically produces an unreadable figure. This issue discusses ideas to improve / avoid plotting of this type of data plus other eventmode enhancements.

  • The list-mode data is of # type: array_2d(columns, rows), having a dedicated type would mean that plots are immediately disabled. Likely the easiest / best way would be to write an independent list-mode writing function, i.e. not use detector_out_2d.
  • Another simple solution would be to lower the current "plotting limit" of 1e6 events to e.g 1e3
  • On the wish-list also is making the list buffer 2D internally to Monitor_nD, e.g. by using the dArray2D type.
  • One could consider enabling 1D histograms of each column instead, e.g. by using logic ~ what is in the Monitor_nD autolimits code. There are many implementation alternatives, could be done in FINALLY (read the file, process, output 1D histograms for plotting), could be done within the plotter itself, could be done using a stand-alone tool for processing the event files.

willend avatar Sep 01 '21 10:09 willend

It turns out the "plotting limit" is controlled via the setting of MONND_BUFSIZ - it is simply the first access to the file (which also writes the header) that defines the # type: array_2d(...) line.

My impression is that it could be plotter-dependent if this information is used or not.

willend avatar Sep 01 '21 10:09 willend

Related to #292

farhi avatar Nov 08 '22 16:11 farhi