Roofit in pyroot

Hello All,

I would like to use a roofit in my pyroot, I made a class:


from AlgorithmBase import *
from ROOT import *

class RooFitMassJPsi(AlgorithmBase):
    def __init__(self):
        print "initialization Chi2Analyzer "
        self.histograms= { }
        self.result=''

    def Fill(self, tree):
        print "Begin fill RooFitMassJPsi with"
        histogramName="MM"

        tree.tree.Draw(histogramName)
        self.histograms[histogramName]= gROOT.FindObject(histogramName)
        print "End of fill RooFitMassJPsi"


    def ProcessData(self):
        x= RooRealVar("x","mass JPsi",3.03,3.17,"GeV")

        mean1= RooRealVar("mean1","mean1",3.1,0,10)
        mean2= RooRealVar("mean2","mean2",3.0,0,10)
        sigma1= RooRealVar("sigma1","sigma1",5,0,10)
        sigma2= RooRealVar("sigma2","sigma2",8,0,10)

        gauss1= RooGaussian("gauss1","gauss1 PDF",x,mean1,sigma1)
        gauss2= RooGaussian("gauss2","gauss2 PDF",x,mean2,sigma2)
        lambdaa= RooRealVar("lambdaa", "slope",-9.9,-20,20)
        background= RooExponential("background","background",x,lambdaa)

        frac= RooRealVar("frac","signal fraction",0.1,0.,1.)
        frac2= RooRealVar ("frac2","signal fraction",0.3,0.,1.)

        nsigRooRealVar= RooRealVar("nsig","#signal events",39600,0.,1e10)
        nsig1RooRealVar= RooFormulaVar("nsig1","@0 * @1",RooArgList(frac,nsig))
        RooFormulaVar= nsig2("nsig2","@0 * @1",RooArgList(frac2,nsig))
        RooRealVar= nbkg("nbkg","#background events",2430,100,1e10)

        model = RooAddPdf("model","(g1+g2)+a",RooArgList(gauss1,gauss2,background),RooArgList(nsig1,nsig2,nbkg))

        data=RooDataHist("data","data",x,Import(self.histograms["MM"]))
        self.result=model.fitTo(data,RooFit.Extended(), RooFit.Minos(), RooFit.Save())

But the strange error is returned ( from function ProcessData )

How can I fix this issue?

Best Regards
A.Dendek

Hi,

first check:root-config --featuresto see whether roofit was enabled during the build (i.e. whether or not it is in the list of features).

Cheers,
Wim