-
Notifications
You must be signed in to change notification settings - Fork 0
Description
//L - low priority, M - medium, H - high, V - very high
//+ --'to add'
00)L histograms of linear combination of peak parameters (for A-S rotation)
01)M next/prev canvas is not working
02)L + A_S cut with multiple regions
03)M + A_S or x-y cut with arbitrary polyline
04)L + histograms of any peak parameter and any parameter pairing
05)L + exclude whole event with invalid peak (e.g. too large S)
06)L unite PMT and SiPM (MPPC)
07)L not every channel should have the same structure. All have peaks, but only some will contain single/double integral.
08)L AnalysisState::... is too long to type.
09)L not rewrote methods of recalibration of double integral to Npe.
10)H off/on channels are too costly to be implemented with generic cuts.
11)H off_ch(int) prints warning that the cut can't be drawn
12)M MPPC form for all channels by N peaks
13)M + cuts without updating histogram (too slow for many cuts in multichannel case)
14)H + ch(int a) for multichannel type will turn off all channels except for 'a'.
15)H LoopThroughData is called when not necessary:
> a) set_fit_gaus(int) when no fit is performed
> b) set_parameter_limits/value should not call LoopThroughData
etc. Make calculation of parameters such as limits, N of fills in one loop and implement their invalidation.
15.1)H LoopThroughData accepts array of independent operations.
15.2)H Minimize calls to LoopThroughData
16)L do_fit(false) does not remove refitting and TF1 redrawing
17)H on_ch does not print available channels on wrong input
18)V set_as_run_cut crushes
19)L + [ch1, ch2] in histogram title for multichannel types
20)M update_physical info is written into std::cout with delay (as in independent thread) (for PMT_times and PMT_times_N types)
21)L + poisson fit
22)L cut with draw_only=true but which cannot be displayed are not applied (and no warning)
23)L generate testing signals for windows.
24)L PostProcessor as state machine (fit state, histogram state, setups, histogram paramers state (valid/invalid))
25)L unset_zoom() does not work correctly when there are drawn cuts.
26)H + x-y axes labels for histograms (SetTitleX/Y(std::string) wrapper for ROOT methods)
27)H Rework correlation histogram type. It is impossible to plot the same type for different cuts, for example PMT_Npe_sum in t [25, 40] us window vs t [25, 160] us window.
28)M + Separate N_bins for X and Y
29)L Displaying cuts has some bugs when cut lines are the same as axes.
30)L + displaying SiPMs Npe by channel in 2D (matrix)
31)H + dB per channel in calibration_info
32)L + Type::None to AStates
33)M + Type::dt for peaks to AStates
34)H + remove lower cut (for correlation in particular)
35)L + ellipse selection cut (rotated)
36)L Changing AStates::Correlation_x/y should invalidate AStates::Correlation as well
37)H + trigger offset per event (+ set it from histogram)
38)H + distribution of signal start time calculated as a position of about 3 us window which has maximum Npe (either in single ch or in multiple channels, Npe and Npeaks as well).
39)M + logscale for histogram
40)M + histogram drawing option ("C" and "L" in addition to "hist") for quick forms estimate (do not want to launch compare_forms.cpp each time)
41)M + y_zoom for TH1 as well (via TFrame) for viewing forms in log scale
42)M + add calculation procedures {gap[mm], V0[kV], R3 resistance} -> {Td, Vdrift, Tdrift}. Use interpolation (order 1-4) for Vdrift (there is data for all Td of interest).
43)L Bug: wrong 2d cut drawing, e.g. for correlation:
ty(AStates::Correlation);
set_zoom(0, 150, 0, 150);
cut_x_y_right(57, 38.2, 200, 150, true, "3");
44)L set printing full status by default. Print all parameters for HistogramSetups and for RunCuts add printing number of events which passed previous cuts, by failed the printed one. (e.g. when there are 2 subsequent cuts: "Cd_peak":rejected 12000 events and "good_trigger_values":rejected 3000, there are events which fail both cuts simultaneously, say 2800, so add "good_trigger_values":rejected_on_this_step = 200)
45)L ch(int) function prints too many errors (but does not crush) when switching from PMT to MPPC. It should instead switch the type