RooFit & RooStats: Poisson with mu dependent on several factors

Hello,

Its been sometime since I used RooFit and RooStats and I’m thinking it might be able to help with an analysis I am thinking about.

I want to build a Poisson likelihood were the mu term will be constructed from a number of factors:

mu = V*N_s + (1-V)N_b.

where V is the weight I am trying to understand. N_s and N_b are found from shape analysis of MC and would have some uncertainty but here I ignore that.

Is it possible to create such a model in RooFit to be used then in RooStats ProfileLikelihood to help determine some limits on V (I know how to do the latter if it were a simpler expression for say N_s I wanted a limit on - its creating the model were I have questions)?

Thanks

@jonas Can you help?

Hi,

To create a counting model in RooStats you can look at the solution of Exercise 4 of this ROoStats tutorial:
https://twiki.cern.ch/twiki/bin/view/RooStats/RooStatsExercisesMarch2015

Best regards

Lorenzo

Hi Lorenzo,

Thank you, however, the link you provided doesn’t seem to work.

Strange, this should be a link public available.
Is this link working ?
https://twiki.cern.ch/twiki/bin/view/RooStats/RooStatsTutorialsAugust2012#Create_Poisson_Counting_model

Hi Lorenzo,

Yes, this link worked.

Thanks

Hi @moneta ,

I have another question. You see in the model I’m trying to analyze, I have a PDF which is a a product of Poissons over a large number of bins. The numbers from MC (background and signal) are taken from shape templates for each bin, such that the expected yield in each bin has just one unknown, which is the parameter of interest (this V term) which is “global” i.e. it should not be different for a given bin, the binning is used to be able to incoperate the shape into the expected yields.

Anyway, from what I see in these examples you can create 1 poison for the full sample, can you create a product of poisons too? And use that as your PDF? In the end my idea is to use a profile likelihood technique to find this V (its similar to a signal strength in a traditional search).

Thanks for any further advice

Hello,

You can make a model where you have Poisson for each bin, and make the total product. It is feasible, but it might not be very efficient when evaluating. In such case it is better using tools like the HIstFactory (see ROOT: HistFactory) which create the ROOFit model or classes from the RooHistPdf or RooParamHistFunc.

Lorenzo

1 Like

Hi @moneta,

Thank you I’ll take a look at these too. I think probably I can’t use the HistFactory tool since I have I have this dependence on (1-V) on my background term there. The idea was to have a Poisson on each bin, the shapes of signal and background can be used only to predict the yields of either signal/bakcground and there is just one unknown (V). Anyway, so I sense making the product of Poissons will be the better option. In this scenario I just make n (i.e. number of bins) Poissons and use the PROD: command to make a composite PDF of these n poissons - is that correct?

Thanks,

Yes, you can do that using the RooProdPdf to make the product of the Poisson.

1 Like

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