Dear User support,
Being not familiar with rooStats, I’m trying to use the HybridCalculator algorithm in a simple code including a treatment of nuisance. The code is attached below, basically there are 2 input histograms describing an observable (one for the signal and the second one for the background). The ModelConfig consists in a usual S+B approach. For the signal, two additionnal histograms are build and they correspond to the +/- 1 sigma variations of a nuisance parameter resulting in distorded Pdfs with respect to the reference one : this is performed by means of the RooMomentMorph command. Then the CLS and upperlimit on teh signal yield are computed using a toy mc and a simple likelihood ratio test through the HypoTestInverter command.
As it can be seen in the code, there are 2 nuisance paramters, one being used with RooMomentMorph (acting on the signal shape) and the second one describing the background error (acting on the scale level of the background). The POI is the signal yield.
My problem is that when I try to use this model when the distorded pdfs are very close to the reference one, the return upper limit is completely different wrt to the one obtained by considering the reference pdf only in the model (by about a factor ~2). I was expected a very similar results in both cases.
Is the problem coming from a bad use of the RooMomentMorph command or are there other bugs in the code?
Thanks a lot for any help.
Denis
HybridCalculatorDebug.C (8.25 KB)