I wanted to ask the experts here a question regarding letting RooFit know the correlations between normalization parameters in a fit. I am currently performing a template profile likelihood fit and I extract normalizations for three parameters that should sum to unity in the SM. I am using the fitter to extract the fractions of a model from data.
Currently, in RooFit, one has a possibility of passing a parameter in RooStats::HistFactory::Measurement under the AddPreprocessFunction method. Unfortunately for me, this function only takes one argument. Now, since for me, x+y+z = 1, could someone help me on how to actually implement this in the code? I basically need the fitter to know the correlations between each other.
Thanks
Hi,
Since you cannot put direct correlation between parameter in the minimisation when fitting, you should just redefine on of the parameter as a function of the others. In this way you are will have the constraints that the sum of them is equal to 1.
Lorenzo
Hi Lorenzo,
Thanks for the reply. The only way I can redefine the parameters is by saying:
z = 1-x-y and passing it into the AddPreprocessFunction method. The problem with this is, AddPreprocessFunction can only take in 1 argument extra, basically either 1-x or 1-y, but not both. This is what I hoped to fix.
Thanks
HI,
I understand now the issue. Then one needs to fix the AddPreprocessFunction. If you could do this and submit a PR will be great
Lorenzo
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.