pixie16 / paass

Pixie Acquisition and Analysis Software Suite
https://pixie16.github.io/paassdoc/
GNU General Public License v3.0
10 stars 29 forks source link

RootFitter does not do anything useful and needs updated #232

Closed spaulaus closed 7 years ago

spaulaus commented 7 years ago

Description

The RootFitter class doesn't do anything useful. Development was stalled out on it since there was some kind of funky ROOT related compilation issue. This issue has since been resolved and this fitter should be fixed. Implementation of this fitter along with the additional Function classes provides programs that do fitting (utkscan, scope) a consistent functional framework to work from.

Work to be completed

Acceptance Criteria

spaulaus commented 7 years ago

Test data information

I analyzed kqxhc:/data/utk/pixieworkshop/pulser_003.ldf. The configuration file can be found here. I made minor modifications to the configuration file to reflect some updates to the software.

Results using GslFitter (reference histogram)

The FWHM of the Time Difference was 33.7208 ps image

Results using RootFitter

The FWHM of the Time Difference was 33.7244 ps image

Processing times

The scan spends on average (20 samples) 52% more time in the FittingAnalyzer when we are using the RootFitter than the GslFitter. This result isn't surprising. The GslFitter uses predefined functions and derivatives to perform the fit, where as ROOT uses numerical methods to calculate the derivatives. Another reason is that we are setting up a TGraph before each fit. The overhead of creating the TGraph at each iteration may be causing some speed issues as well.

Conclusions

The RootFitter will work for analyzing signals. It only supports the VandleTimingFunction.