Draft: Module AnalysisBeamProfile
This implements a module called AnalysisBeamProfile
.
This module is can be used for analysing properties of a bunched beam on an event-by-event basis. What it does is the following:
- read
Pixel
objects for the corresponding detector from the clipboard - create a single cluster per event
- assign central cluster position and
errorX
&errorY
as widths based on a fit to a gaussian distribution or from statistics to (charge-weighted) projections onto the x/y-axes
- assign central cluster position and
- add cluster to clipboard
- plot hitmaps, projections and width/center distributions, most of them also vs event number
Points for discussion:
-
Renaming? I could imagine that a more generic name like AnalysisBeamProfile
would be more suitable. We use it for this method, but in principle the functionality is very generic. Any opinions? -
Cluster->errorX()
? I abused theerrorX
&errorY
for storing the width of the cluster. The reason is, that here we'd like to store the width of a gaussian of the cluster projection (or StdDev, depending on the configuration), and thecolumnWidth
&rowWidth
members are Cluster-internally coded to be the extent of the cluster along these axes, computed duringaddPixel(...)
. An option would be to add setter functions for thecolumnWidth
&rowWidth
members and overwrite them in the new module after the last pixel has been added. Any opinions?