-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[RF] RooTruthModel analytical integrals for general integration ranges
The analytical integral code of the `RooTruthModel` was making the wrong assumption that if one uses the single-sided bases, the minimum x value is always at zero (or the maximum value at zero, for the case of the flipped bases). This resulted in wrong integral values when integrating over a subrange, as reported here on the forum: https://root-forum.cern.ch/t/possible-bug-in-integration-of-roobdecay-and-rooabsanaconvpdf/56968 This commit rewrites the RooTruthModel analytical integral code to also consider these cases. To avoid that with the additional code branches the code becomes too verbose, the code was refactored to use a helper function for evaluating indefinite integrals of symmetric or asymmetric basis functions. The refactored code is tested by the integration tests in `stressRooFit`, and the problem that was reported on the forum is covered by a new unit test.
- Loading branch information
1 parent
2d17eab
commit d12d1e0
Showing
5 changed files
with
242 additions
and
187 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.