Skip to content

MSSM Higgs to Tau Tau Analysis

Dennis Roy edited this page Aug 23, 2017 · 4 revisions

How to create mA-tanb-plots

  • Shape files

The first step to get the root files containing the shapes of the signal and background processes, as well as the shape uncertainties. This is done using the script scripts/makePlots_datacardsMSSMHtt.py (TODO: This doesn't work out-of-the-box). The input required for this is the output from running Artus. Note that the discriminating variable used in the HTauTau MSSM analysis is mttot, so be sure to set this as well when producing your own shapes files.

Alternatively, the files produced by other groups are available here on GitLab. You will need to get this repository anyway, as it also contains files about the MSSM scenarios, which are needed later. To copy it into your workspace, use:

git clone https://gitlab.cern.ch/cms-htt/MSSM-Full-2016.git shapes

You should put this "shapes" folder in the "CombineHarvester/MSSMFull2016/" folder (which only exists in the "MSSMFull2016-dev" branch of CombineHarvester).

  • Running CombineHarvester

CombineHarvester is required of all of the following steps. First of all, CombineHarvester also provides a list of tutorials on how to use it for different purposes. These can be found here (though some of them might be outdated). Instructions specifically on the MSSM workflow are also found here.

  • Producing datacards

The production of the (2016 MSSM) datacards is done by running MorphingMSSMFull2016. There are many options which can be set here. Here is an explanation of the most important ones: * "input_folder_xy": For the channel xy, use the shape files of the group set by this parameter. The default values are the same ones used for the official analysis. If you want to use your own shape files, make a new folder in "CombineHarvester/MSSMFull2016/shapes/", place the shape-file in that folder and set the corresponding parameter to the name of the folder. * "postfix": This is the name of the discriminating variable, and should be found on the name of the shape files. Set it to "-mttot". * "real_data": If this is set to "false" (which is the default), the data is replaced with an Asimov dataset. * "mass": This isn't what you think it is. If this value is nothing (which is default), the datacards will be created containing contribution from each neutral MSSM boson h, H and A. If the mass is set to "MH", the contribution is combined into one single signal H. This is used for model IN-dependent limits. * "SM125": Whether this parameter is set to "bkg_SM125", "signal_SM125" or "" (default) determines, if the contribution from the SM Higgs is added to the background, to the signal, or not at all. The output you will get from running MorphingMSSMFull2016 will be datacards for each channel and each category within that channel. These are divided in folders. For example: The "mt" folder contains all datacards for the mt channel, while the "htt_cmb_btag_13TeV" folder contains the datacards of all channels, but only from the btag category. This means you will find the same copies of datacards in different folders, along with other datacards.

  • Combining the datacards

Unless you want to work with the output of only one category of one channel, you need to combine many datacards into a single one. This is done with the "T2W" method of combineTool.py. Use:

combineTool.py -M T2W -i output/mssm_run2/cmb --cc

This will combine all datacards (because the folder "cmb" contains all of them) into a file output/mssm_run2/cmb/combined.txt.cmb. You might want to rename that file into something more obvious:

mv output/mssm_run2/cmb/combined.txt.cmb output/mssm_run2/htt_cmb_13TeV.txt

(Actually you can just set the output name in the combineTool.py step after "--cc", but for some reason that doesn't work for me)

  • Creating the workspace

The next step is to turn the datacard into a workspace. In this step you will also set the MSSM scenario you want to use. This will scale the cross sections and branching ratios of the signal processes for each mA and tanb according to what it should be in the chosen scenario. The command used to do this is called text2workspace.py. As an example, this command sets the mhmodp scenario on the datacard:

text2workspace.py -b output/mssm_run2/htt_cmb_13TeV.txt -o output/htt.output.mssm.root --default-morphing shape2 -P CombineHarvester.CombinePdfs.MSSM:MSSM --PO filePrefix=$CMSSW_BASE/src/CombineHarvester/MSSMFull2016/shapes/Models/ --PO modelFiles=13TeV,mhmodp_mu200_13TeV.root,1

As input (-b) you give the datacard. The option "-P" refers to the model you want to apply. In this case: In file CombineHarvester/CombinePdfs/python/MSSM.py, the model named "MSSM" is chosen. This model requires additional parameters, that are given with "--PO". "filePrefix" refers to the location of the MSSM scenario files. These files that you find in the GitLab repository above are the same ones you can also find here on the official TWiki page. In the "modelFiles" parameter you specify energy, the name of the file of the MSSM scenario you want to use, and the version number (leave this at "1" for all 13/14 TeV analyses).

  • Computating the limits

Now you can finally start to produce the limit. This step is slightly different depending on whether you want to calculate the limits using the quick asymptotic method, or the much more time consuming and resource heavy (though slightly more correct) toy-based method.

-----TODO-----

  • Creating the plot

You can create the plot using the script CombineHarvester/CombineTools/scripts/plotLimitGrid.py. It doesn't matter at this point, if you used the asymptotic or toy-based method eariler.

python ../../CombineTools/scripts/plotLimitGrid.py asymptotic_grid.root --scenario-label "m_{h}^{mod+}"

Aside from the output of the previous step, you should also add a scenario label.

Clone this wiki locally