Hi,
I’m using RooFit to fit a resonance described as a Breit-Wigner function, convolved with a resonance described as a Crystal-Ball function. There is also a wide background, described as a Gaussian.
Here is the result of the fit :
As you can see, the signal has an odd behaviour at high mass : at some point in the high mass region, it seems to increase, though such a function should not.
To make sure this was not a graphic artefact or something like that, I made a macro in which I created the same PDf with the parameters of the fit :
[code]#include
#include “TROOT.h”
#include “TCanvas.h”
#include “RooFit.h”
#include “RooRealVar.h”
#include “RooBreitWigner.h”
#include “RooCBShape.h”
#include “RooFFTConvPdf.h”
#include “RooPlot.h”
void convBW_CB() {
RooRealVar x( “x”, “x”, 70., 120. );
// Breit-Wigner
RooRealVar m0( “m0”, “m0”, 90.5 );
RooRealVar width( “width”, “width”, 2.49 );
RooBreitWigner bw( “bw”, “bw”, x, m0, width );
// Crystal-Ball
RooRealVar mean( “mean”, “mean”, 0. );
RooRealVar sigma( “sigma”, “sigma”, 2.6 );
RooRealVar alpha( “alpha”, “alpha”, 1.2 );
RooRealVar n( “n”, “n”, 0.81 );
RooCBShape cb( “cb”, “cb”, x, mean, sigma, alpha, n );
// convolution
RooFFTConvPdf pdf( “pdf”, “pdf”, x, bw, cb );
TCanvas canv( “canv”, “canv”, 800., 600. );
plot = x.frame();
plot -> SetTitle( “Convolution of a Breit-Wigner and a Crystal-Ball” );
plot -> GetXaxis() -> SetTitle( “x” );
plot -> GetYaxis() -> SetTitleOffset( 1.5 );
pdf.plotOn( plot );
plot -> Draw();
canv.SaveAs( “BWxCB.pdf” );
}[/code]
and I still observe this problem, so I guess RooFFTConvPdf does not do the job well.
Any idea where it comes from/how to fix it ?
Thanks,
Pierre