This page lists all the combine commands and plotting macros needed to produce the HZZ4L statistical results. It shos how to produce results for the signal strenght, limits and p-value. Last update is for ICHEP2016 results

It supposes that you ALREADY produced the combined cards and workspaces. For instructions to do so please refer to the README in CombinationPy/CreateDataCards, or in the gitLab CJLST repository (if you are using CJLST framework)

Some of the links might be outdated. If the link does not work and points to an older versioning system than the one you are using, please look for a macro with the same name in the latest version of the HZZ4L/CombinationPy package


  • Observed:
    • combine comb_hzz4l.root -n HZZ4L_PLP -m 125.7 --X-rtd TMCSO_AdaptivePseudoAsimov --minimizerTolerance=0.0001 --signif --pvalue --rMax=1
  • Expected:
    • combine comb_hzz4l.root -n HZZ4L_PLPE -m 125.7 --X-rtd TMCSO_AdaptivePseudoAsimov --minimizerTolerance=0.0001 --signif --pvalue --expectSignal=1 -t -1 --toysFreq
  • For both you can use the automatic tool python -M PLP -f masses.txt -o -s
    • Modify to add --X-rtd TMCSO_AdaptivePseudoAsimov in OPTIONS environment variable
    • -M PLPE for expected
    • Suggested queues: 8nh for PLP, 1nd for PLPE


Pvalue vs mass:

  • run plot_Signif_3lines.C (from CombinationPy/PlotLimits/)
    • Options to add 1D/2D to the plot are in the macro


  • Observed and Expected:
    • combine -M Asymptotic comb_hzz4l.root -m 125.7 --minosAlgo=stepping --X-rtd TMCSO_AdaptivePseudoAsimov --minimizerStrategy=0 --minimizerTolerance=0.0001 --cminFallback Minuit2:0.01 --cminFallback Minuit:0.001
  • You can use the automatic tool python -M ASCLS -f masses.txt -o -s
    • Modify to add --X-rtd TMCSO_AdaptivePseudoAsimov in OPTIONS environment variable
    • Use 2nw queue


Limits vs mass:

1D/2D/3D limits versus mass


From the LegoCards, you can have a scan of the mass by using:
  • for channel in 4e 4mu 2e2mu comb ; do for X in $(seq 118 130); do for D in $(seq 0 9); do echo -n "$X.$D: "; combine -M ProfileLikelihood --signif -m $X.$D hzz4lcard_${channel}.root -n HZZ4L_PLP_${channel} --pvalue --rMax=1 --freezeNuisances MH | grep Significance; combine -M ProfileLikelihood --signif -m $X.$D hzz4lcard_${channel}.root -n HZZ4L_PLPE_${channel} --pvalue --freezeNuisances MH --expectSignal=1 -t -1 --toysFreq ; done; done ; done
  • This will NOT including per-event mass errors. It will just be the best fit of the mass from the standard 2D analysis.

Signal Strength

  • Mu:
    • combine -M MaxLikelihoodFit comb_hzz4l.root -n HZZ4L_ML -m 125.7 --X-rtd TMCSO_AdaptivePseudoAsimov --optimizeSim=1 --minimizerStrategy=2 --minimizerTolerance=0.00001
    • For all mass values python -M ML -f masses.txt -o -s
    • Modify to add --X-rtd TMCSO_AdaptivePseudoAsimov in OPTIONS environment variable
  • Mu_V and Mu_F:
    • Create a workspace with comb_hzz4l.txt -m 125.7 -P HiggsAnalysis.CombinedLimit.PhysicsModel:rVrFXSHiggs -o RvRfworkspace.root
    • combine --X-rtd TMCSO_AdaptivePseudoAsimov -M MultiDimFit RvRfworkspace.root -n RvRf_Singles -m 125.7 --algo=singles --cl=0.68
    • To run the 2D mu_V mu_F plot, run as above but with --algo=grid (instead of --algo=singles --cl=0.68) and with --setPhysicsModelParameterRanges RV=0,5:RF=0,5, then plot using TH2::CONT option
    • There is a script to launch observed RVvsRF on the cern batch that can be launched using
  • Mu_dijet: Run as for Mu, but in a folder where you combine only the dijet cards
  • Mu_untagged: Run as for Mu, but in a folder where you combine only the untagged cards
  • Mu compatibility plot (Inclusive,dijet,untagged):
    • Run the following for inclusive, dijet, untagged
    • combine -M MultiDimFit comb_hzz4l.txt -m 125.7 --algo=grid --points=10000 --X-rtd TMCSO_AdaptivePseudoAsimov
  • Mu compatibility plot (all):
  • All couplings (kV,ktau,ktop,kbottom,kgluon,kgamma) warning: not tested
    • comb_hzz4l.txt -m 125.09 -P HiggsAnalysis.CombinedLimit.HiggsCouplings:c6 -o C6Couplings.root
    • combine -M MultiDimFit C6Couplings.root -n C6_Singles -m 125.09 --algo=singles --cl=0.68
  • All channels warning: not tested assuming ggH,WH,ZH,qqH,ttH is what you need
    • comb_hzz4l.txt -m 125.09 -P HiggsAnalysis.CombinedLimit.PhysicsModel:multiSignalModel --PO verbose --PO 'map=.*/ggH:r_gg[1,0,10]' --PO 'map=.*/qqH:r_qq[1,0,10]' --PO 'map=.*/ttH:r_tt[1,0,20]' --PO 'map=.*/WH:r_W[1,0,20]' --PO 'map=.*/ZH:r_Z[1,0,20]' -o MultiSignal.root
    • combine -M MultiDimFit MultiSignal.root -n MultiSignal_Singles -m 125.09 --algo=singles --cl=0.68


Feldmann-Cousins contours

  • NB: the FC algorithm of combine is not the correct method to extract FC contours. Instead, we have to rely on HybridNew grids
  • Algorithm is slow, I advise to run on grid (one job per point, long queue)
  • If you need some contour or similar:
    • combine MultiSignal.root -M HybridNew --freq --testStat=PL --rule=CLsplusb --saveToys --importantContours=0.68,0.95 --singlePoint r_gg=A,r_qq=B,r_tt=C,r_W=D,r_Z=E -n $X.$D
  • If you can loose time, you can compute it in just one go:
  • For 4l, this is usually too slow. One saves time by first constructing a grid:
    • combine MultiSignal.root -M HybridNew --freq --testStat=PL --clsAcc 0 -s -1 --singlePoint r_gg=A,r_qq=B,r_tt=C,r_W=D,r_Z=E --saveToys --saveHybridResult --importantContours=0.68,0.95
    • and then after hadd of all the results:
    • combine mydatcard.txt -M HybridNew --freq --grid=mygrid.root --saveGrid
    • combine mydatcard.txt -M HybridNew --freq --grid=mygrid.root --saveGrid --expectedFromGrid [0.5,0.16,0.84,0.05,0.95]
    • python test/ --input mygrid.root --poi r_gg --val all --mass 125.09
Edit | Attach | Watch | Print version | History: r15 < r14 < r13 < r12 < r11 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r15 - 2017-03-07 - GiacomoOrtona
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback