[Roofit] How to/should I deal with RoofitGlue warnings

When I run my fit code, sometimes I get a warning (error) of the form:

[#0] WARNING:Minization -- RooFitGlue: Minimized function has error status.
Returning maximum FCN so far (-2.41706e+06) to force MIGRAD to back out of this region. Error log follows
Parameter values: alphaPP_d0Mass=0.8, flatPP_d0Mass1=0.5, flatPP_d0Mass2=1.49, flatPP_d0Mass3=0.5, muPP_d0Mass=1.87, nBG_d0Mass=19613.4, nPP_d0Mass=10, nSig_d0Mass=176521, sigPP_d0Mass=0.032                                                                                          
RooChebychev::flatPPBG_d0Mass[ x=d0Mass coefList=(flatPP_d0Mass1,flatPP_d0Mass2,flatPP_d0Mass3) ] 

Is there a way I should approach these warnings? Are they just completely innocuous and can they be ignored?

Thanks,
James

Hi James,

These warnings occur if your p.d.f. deforms in such a shape that the likelihood that is being minimized is no longer well defined. In general this happens when a) the p.d.f. is exactly zero or negative for one of the data points or b) the normalization integral become ill defined (e.g. when the sigma of a Gaussian goes to exactly zero). Case a) is most common, especially when polynomial p.d.f.s are used, which can easily deform into shapes that create regions with negative values.

RooFit aims to recover from this during fitting by returning a ‘high’ value of the -log(L) to MINUIT instead of the actual likelihood (which cannot be calculated). This high value has the effect that MINUIT will retreat from the point in the parameter phase space that caused the problem. In many cases the subsequent minimization will still converge correctly avoiding the forbidden region, but sometimes, when there are many ‘forbidden’ regions MINUIT gets confused and fails to converge.

So these warning can be harmless, but are not necessarily so. When you see them you should examine carefully if your fit converged OK.

Wouter