Systematic uncertainty on the signal yield with histfactory

Dear RooFit expert,

I am working with histfactory, and I would like to add a systematic uncertainty on the signal yield.

To give more explanation: for the time being, I just have a normalization factor corresponding to my signal strength which is allowed to float in my fit and is my parameter of interest. So my total signal yield is given by:

N_{tot} = \mu * N_{0}

In order to do that, I’m using the AddNormFactor function of histfactory.

What I would like to do is to add a second term in the formula above, such as to have :

N_{tot} = \mu * N_{0} + N_{1} * \theta

Where N_{1} is equal to a constant (fixed by me before the fit) and \theta is a nuisance parameter with a Gaussian constraint.

I was thinking to use the AddOverallSys function of histfactory, but it does not correspond to what I would like to do.

Would you please give me a hint on how I could do that?

Thank you very much for the help.

Best regards,
Nathan

Hi Nathan,

I don’t think this is directly possible in the HistFactory, but at the end the HistFactory builds a workspace and in principle you can modify the function defining the overall normalisation by a function as above. You might able to do this using the EDIT function of the workspace, or otherwise using a script to modify your model.
Otherwise another possibility if you just need to add an extra term, you could consider it as an additional background component to your signal.

Best regards

Lorenzo

Hi Lorenzo,

Thank you so much for answering!
Your first option sounds very good to me.
However, I’m not sure to understand your second option, because here, I would like to add a nuisance parameter to the signal yield. So adding an other background would be equivalent to do this?

Thank you again.
Best regards,
Nathan

Hi,
I think adding an extra contribution to the signal yield will be equivalent to add a flat background component.

Hi Lorenzo,

Thank you for the help!

Best regards,
Nathan

Hi Lorenzo,

I’m very sorry to come back to this topic again, but I would have one follow-up and one more question if I may:

  • I can’t modify my model because it’s not possible to overwrite objects in my workspace once it’s created: with EDIT I can create a clone with a different name, but not overwrite what is already there.
  • When you say a “flat background component”, is it really a flat background in the observable I’m considering, or do you mean that I should add a background with the same shape as my signal, but with +N_{1} events in every bin?

Thank you very much again for the very helpful comments.
Best regards,
Nathan

Hi,

Yes I think the background should have the same shape of the signal, so it is like some extra events with an overall normalisation N1 * theta

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.