Add check that performs 1D fits
Adds a new check type, range_fit
, which performs an extended binned fit to data. Users can define a set of parameters, which can be used in fit component function. A handful of function types are defined for use. The full PDF is the sum of these.
One possible significant change in this MR is that the class CheckResult
class is moved from checks.py
to checks_utils.py
. This is done to avoid circular importing, and it makes most sense for checks
to be able to import from checks_utils
than vice versa. This has the potential to break things elsewhere if they import CheckResult
directly - LbAPLocal
and LbAnalysisProductions
appear to be fine at a glance, but other relevant repos should be checked before merging, and if needed a MR opened to fix the import of CheckResult
.
-
Demonstrate a simple test fit using the Checks framework -
Update YAML with a new check type, which lets users specify parameters and fit components (from a pre-defined list of functions) -
Implement PDF/CDFs -
Gaussian -
Exponential -
Polynomial
-
-
Perform fit using PDF/CDF generated from YAML -
Add tests -
Implement combining of fit checks -
Add tests of combining of fit checks