analysis_name.extend(['bre', str(int(100*stop_br_e)), 'brm', str(int(100*stop_br_m)), 'brt', str(int(100*stop_br_t))]) if myFitType == FitType.Exclusion: analysis_name.append(test_sr) analysis_name.append('blind' if is_blind else 'unblind') # Define HistFactory attributes configMgr.analysisName = '_'.join(analysis_name) configMgr.histCacheFile = "data/"+configMgr.analysisName+".root" configMgr.outputFileName = "results/"+configMgr.analysisName+"_Output.root" # Scaling calculated by outputLumi / inputLumi configMgr.inputLumi = 0.001 # Luminosity of input TTree after weighting configMgr.outputLumi = 20.3 # Luminosity required for output histograms configMgr.setLumiUnits("fb-1") # Set the files to read from data_files = [] bkg_files = [] sig_files = [] if configMgr.readFromTree: print 'reading from trees!' data_files.append("${BASE_WORK_DIR}/HistFitterNtuples/BackgroundHistFitterTrees.root") # the below samples are artificial data for validation purposes # data_files.append("${BASE_WORK_DIR}/HistFitterNtuples/ArtificialData.ttbar_1.ZGamma_1.root") # data_files.append("${BASE_WORK_DIR}/HistFitterNtuples/ArtificialData.ttbar_5.ZGamma_1.root") bkg_files.append("${BASE_WORK_DIR}/HistFitterNtuples/BackgroundHistFitterTrees.root") if myFitType == FitType.Exclusion: sig_files.append("${BASE_WORK_DIR}/HistFitterNtuples/SignalHistFitterTrees.root") else:
configMgr.histCacheFile = "data/" + configMgr.analysisName + ".root" # specify the output file based on wehter we do toys or not if not userOpts.doToys : configMgr.outputFileName = "results/"+configMgr.analysisName + "_Output.root" else : configMgr.outputFileName = "results/"+configMgr.analysisName+"_"+userOpts.gridForToys+"_withToys"+userOpts.sigUncert+"_"+userOpts.signalRegion+"_"+str(toyindex)+"_Output.root" ############################################################## ## Set the luminosity ## ############################################################## userPrint("Specifying Luminosity") configMgr.inputLumi = userOpts.inputLumi configMgr.outputLumi = userOpts.outputLumi configMgr.setLumiUnits( userOpts.lumiUnits ) userPrint(" >>> Input luminosity : %s"%str(configMgr.inputLumi)) userPrint(" >>> Output luminosity : %s"%str(configMgr.outputLumi)) userPrint(" >>> Luminosity units : %s"%str(userOpts.lumiUnits)) ############################################################## ## Specify the background MC input files ## ############################################################## userPrint("Specifying the background input") mcSamples = [ higgsSample, zvSample, wwSample, dataSample ] bkgFiles = [] topFiles = [] zjetsFiles = []
configMgr.doExclusion = False if MYFIT == FITTYPE.Exclusion: configMgr.doExclusion = True configMgr.calculatorType = 2 # 2=asymptotic calculator, 0=frequentist calculator configMgr.testStatType = 3 # 3=one-sided profile likelihood test statistic (LHC default) configMgr.nPoints = 20 # number of values scanned of signal-strength for upper-limit determination of signal strength. #------------------------------------- # Now we start to build the data model #------------------------------------- # Scaling calculated by outputLumi / inputLumi configMgr.inputLumi = 0.001 # Luminosity of input TTree after weighting configMgr.outputLumi = 4.713 # Luminosity required for output histograms configMgr.setLumiUnits("fb-1") # Set the files to read from bgdFiles = [] topFiles = [] qcdFiles = [] dibosonFiles = [] dataFiles = [] dataCRWTFiles = [] wFiles = [] zFiles = [] gammaFiles = [] if configMgr.readFromTree: qcdFiles.append(INPUTDIR + "/QCD.root") dibosonFiles.append(INPUTDIR + "/Diboson.root")
configMgr.fixSigXSec = runOptions.doTheoryBand() configMgr.analysisName = runOptions.getSignalRegion() + "_" + runOptions.getGrid() suffix = "" if runOptions.getOutputSuffix() != "": suffix += "_%s" % runOptions.getOutputSuffx() configMgr.histCacheFile = "data" + suffix + "/" + configMgr.analysisName + suffix + ".root" configMgr.outputFileName = "results" + suffix + "/" + configMgr.analysisName + suffix + "_Output.root" configMgr.inputLumi = runOptions.getInputLumi() configMgr.outputLumi = runOptions.getOutputLumi() configMgr.setLumiUnits(runOptions.getLumiUnits()) configMgr.cutsDict = runOptions.getCutDict() configMgr.weights = runOptions.getWeights() configMgr.calculatorType = runOptions.getCalculatorType() configMgr.testStatType = runOptions.getTestStatType() configMgr.nPoints = runOptions.getNumberOfScanPoints() configMgr.writeXML = True if not runOptions.check(): sys.exit() else: userPrint(" --> RunOptions consistent.") runOptions.Print()