How to reproduce Moriond 2013 H→γγ results (Page in construction be carefull)
install CMSSW_5_3_X release
cd CMSSW_5_3_X/src/
cmsenv
git clone -b massfac_moriond2013_approved git@github.com:h2gglobe/h2gglobe
cd h2gglobe
make
cd AnalysisScripts/
vi massfac_mva_binned/datafiles_massfacmva_Moriond2013.dat
change "histfile=..." (example histfile=CMS-HGG_massfit.root)
./mk_fitter.py -i massfac_mva_binned/datafiles_massfacmva_Moriond2013.dat -o scriptoutput/sub -l joboutput -n 200
./submit_fitter.py -d scriptoutput -q 8nh
./check_fitter.py scriptoutput ##check the job status and call combiner.py once all the jobs are done
Some other extra info: If you don't want to identify yourself in lxplus you can also clone with:
git clone -b massfac_moriond2013_approved https://git@github.com/h2gglobe/h2gglobe.git
To refit :
./combiner.py -i <task_folder>/filestocombine_refit.dat
To to the binned model :
cd CMSSW_5_3_X/src/h2gglobe/Macros
cp ../AnalysisScripts/scriptoutput/CMS-HGG_massfit.root .
./massInterpolator.py -i CMS-HGG_massfit.root --doSmoothing --pval | tee interpolation.log &
To see if the interpolation went well, you can do the EfficiencyXAcceptance plot :
python makeEffAcc.py CMS-HGG_massfit_interpolated.root (if it doesn't work, copy the version of makeEffAcc.py from the master branch of h2gglobe)
To do the parametric model (use CMSSW_6_1_1 and the head of globe) (Be really carfull here, things are changing):
cd SimultaneousSignalFitting
make
(Modify dat/config.dat and put your workspace) out of date
(./scripts/makeJobs.py -i dat/config.dat -o $PWD/files -f 8 -q 8nh --submit) out of date
./bin/SignalFit -i CMS-HGG_massfit.root -d dat/newConfig.dat -s dat/photonCatSyst.dat --skipSecondaryModels
Use the option --loadPriorConstraints to load officials parameters and put the parameters in dat/config.dat
./scripts/makeJobs.py –I dat/config.dat -o mySigJobs --runLocal --linearInterp --loadPriorConstraints --constraintValue=0.1
./bin/PackageOutput -i mySigJobs/filestocombine.dat -o mySigJobs/CMS-HGG_sigfit.root
To do the Limits :
cd CMSSW_6_1_1/src/h2gglobe/Macros/FinalResults
cp /afs/cern.ch/user/l/lsgandur/public/datacard_massfacmva_2012.txt
./combineHarvester.py --card2012=datacard_massfacmva_2012.txt (--unblind) -M Asymptotic -L 110 -H 150 -S 0.5 --run2012 -q 8nm
cd 8TeV/Asymptotic
hadd Asymptotic.root higgsCombine*.root
./makeCombinePlots.py -m Asymptotic -f 8TeV/Asymptotic/Asymptotic.root (--expected) --limit
./combineHarvester.py --card2012=datacard_massfacmva_2012.txt (--unblind) -M ExpProfileLikelihood -L 110 -H 150 -S 0.5 --run2012 -q 8nm
cd 8TeV/ExpProfileLikelihood
hadd ExpProfileLikelihood.root higgsCombine*.root
./makeCombinePlots.py -m ExpProfileLikelihood -f 8TeV/ExpProfileLikelihood/ExpProfileLikelihood.root (--expected) --pval
To plot, you can use instead :
./plotCombine.py --run2012 --lumi2012=19.6 -M ExpProfileLikelihood (--parametric)
./plotCombine.py --run2012 --lumi2012=19.6 -M Asymptotic (--parametric)
Or
./runFinalResults.py --card2012="datacard_massfacmva_2012.txt" --run2012 (--unblind)
./runFinalResults.py --makePlots --lumi2012=19.6 --run2012 (--unblind)
If you want to look at the fits :
cd CMSSW_5_3_X/src/h2gglobe/Macros/
vi makeBkgPlotsGeneric.C
std::string filebkg = "CMS-HGG_massfit.root" and std::string filesig = "CMS-HGG_massfit.root"
root -l -b -q makeBkgPlotsGeneric.C
Or you can use (example):
cd CMSSW_6_1_1/src/h2gglobe/BackgroundProfileFitting/
cmsenv
make
./scripts/subBkgPlots.py -bCMS-HGG_massfit.root -d BkgPlots -c 9 --useBinnedData --doBands --massStep=0.5