Problem in creating model and estimation of significance

Dear experts,

I am trying to construct a model for my signal which is BW convoluted with gaussian, with a polynomial resolution function and background which is exp(-am+bm^(2))*m^(-k). Here is m is mass. I started with example code HybridOriginalDemo.C under root 6.02 and implemented my models in it. But, the problem is I am not getting results what is expected. And I have no clue what is going on and how to solve it? Kindly note that for background model I have obtained their fit parameters from simple root fit using given function as above.
Please find attached my code and example code attached to it.
Thank you so much in advance for any help.

RooPowerLaw.h (866 Bytes) (1.25 KB)
HybridOriginalDemo.C (5.35 KB)
ToyMyModel.C (6.11 KB)


I would not use the HybridOriginal calculator. It is now deprecated in RooStats. If you have made a workspace, with the ModelCOnfig, you should then use the StandardHypoTestDemo.C macro which computes the significance.

Examples are available in these tutorials … _significa

Best Regards


Dear Lorenzo,

Thanks so much for reply. And I am sorry for replying late. Please excuse me for some naive questions now.

So, using some old package named exost I managed to create workspace. Now I am trying to run and calculate significance using the StandardHypoTestDemo.C but it complains that data or ModelConfig was not found.
I am wondering if its because I do not see any name against RooDataSet:: ? Which means data is not written in workspace at all.

I am attaching my workspace root file. Can you please have a look at it and suggest workaround.

Thanks so much.

PS: Print of WS contents:

RooWorkspace(myWS) myWS contents




RooCFAuto002Pdf::bkgpdf[ a=a mass=mass b=b c=c d=d ] = 1.8533e+13
RooProdPdf::model[ model_core * syst_nsig ] = 2.50131e+14
RooAddPdf::model_core[ nsig * sigpdf + nbkg * bkgpdf ] = 1.8533e+13
RooProdPdf::prior[ prior_ratio * syst_nbkg ] = 2.18812
RooUniform::prior_ratio[ x=(ratio) ] = 1
RooVoigtian::sigpdf[ x=mass_scaled mean=peak width=width sigma=sigma ] = 0.0622797
RooLognormal::syst_nbkg[ x=beta_nbkg m0=glob_nbkg k=nbkg_kappa ] = 2.18812
RooLognormal::syst_nsig[ x=beta_nsig m0=glob_nsig k=nsig_kappa ] = 13.4966


RooCFAuto001Func::eff[ eff_scale=eff_scale eff_a=eff_a eff_b=eff_b peak=peak eff_c=eff_c ] = 0.587827
RooCFAuto000Func::eff_dummy[ eff_scale=eff_scale eff_a=eff_a eff_b=eff_b peak=peak eff_c=eff_c ] = -174010
RooCFAuto003Func::mass_nuis[ mass_kappa=mass_kappa beta_mass=beta_mass ] = 1.01
RooProduct::mass_scaled[ mass * mass_nuis ] = 303
RooProduct::nbkg[ nbkg_est * beta_nbkg ] = 696
RooProduct::nsig[ nsig_scale * ratio * nz * eff * beta_nsig ] = 0
RooProduct::sigma[ sigma_rel * peak ] = 5.52012
RooAddition::sigma_rel[ res_p0 + sigma_rel_2 + sigma_rel_3 ] = 0.0184004
RooProduct::sigma_rel_2[ res_p1 * peak ] = 0.005505
RooProduct::sigma_rel_3[ sigma_rel_3_1 * peak ] = -2.4597e-05
RooProduct::sigma_rel_3_1[ res_p2 * peak ] = -8.199e-08
RooCFAuto004Func::sigma_rel_dummy[ res_s=res_s peak=peak res_n=res_n res_c=res_c ] = 0.013425
RooAddition::width[ width_p0 + width_2 ] = 0.018
RooProduct::width_2[ width_p1 * peak ] = 0.018

named sets


generic objects


embedded class code

RooCFAuto000Func, RooCFAuto001Func, RooCFAuto002Pdf, RooCFAuto003Func, RooCFAuto004Func
new_dimuon_ws.root (20.4 KB)


Yes, the workspace seems to be missing the dataset. There is a generic RooDataSet with empty name, but it is not sure it is really a data set.
You should import in the workspace your data set, by calling RooWorkspace::import(dataset)

Best Regards


Many thanks Lorenzo.