if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print( "Not enough arguments passed to script execution. Printing docstring & EXIT." ) parser.print_help() #print __doc__ sys.exit(1) # Append folder to save directory path if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="TopTagSystematics") # See: https://twiki.cern.ch/twiki/bin/viewauth/CMS/TopSystematics allowedTypes = [ "showerScales", "highPtRadiation", "colourReconnection", "mTop", "evtGen", "partonShower" ] if opts.type not in allowedTypes: Print( "Invalid type \"%s\" selected. Please choose one of the following: %s" % (opts.type, ", ".join(allowedTypes)), True) sys.exit() # Apply type-related changes # opts.saveDir = os.path.join(opts.saveDir, opts.type)
help="Path to the multicrab directory for input") parser.add_option( "--refHisto", dest="refHisto", action="store", default=REFHISTO, help= "Name of histogram to be used as refernce in comparison many plotter [default: %s]" % (REFHISTO)) (opts, args) = parser.parse_args() if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="TFsInFakeBDir") # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print( "Not enough arguments passed to script execution. Printing docstring & EXIT." ) parser.print_help() sys.exit(1) main(opts)
parser.add_option("--inclusiveOnly", dest="inclusiveOnly", action="store_true", default=INCLUSIVE, help="Only calculate the inclusive Transfer Factor (TF). Do not calculated binned TF? [default: %s]" % (INCLUSIVE) ) parser.add_option("--ratio", dest="ratio", action="store_true", default=RATIO, help="Draw ratio canvas for Data/MC curves? [default: %s]" % (RATIO) ) parser.add_option("--folder", dest="folder", default=FOLDER, help="Folder in ROOT files under which all necessary histograms are located [default: %s]" % (FOLDER) ) (opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) # Sanity check if opts.noSFcrab == None or opts.withCR2SFcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.noSFcrab, prefix=opts.analysisName+"/", postfix="") # Call the main function main(opts) if not opts.batchMode: raw_input("=== getEfficiencies.py: Press any key to quit ROOT ...")
(opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="DataMC") # Sanity check allowedMass = [180, 200, 220, 250, 300, 350, 400, 500, 800, 1000, 2000, 3000] if opts.signalMass!=0 and opts.signalMass not in allowedMass: Print("Invalid signal mass point (=%.0f) selected! Please select one of the following:" % (opts.signalMass), True) for m in allowedMass: Print(m, False) sys.exit() else: opts.signal = "ChargedHiggs_HplusTB_HplusToTB_M_%.0f" % opts.signalMass # Sanity check allowedFolders = ["counters", "counters/weighted", "Weighting", "ForDataDrivenCtrlPlots", "ForDataDrivenCtrlPlotsEWKFakeB", "ForDataDrivenCtrlPlotsEWKGenuineB", "PUDependency", "Selection_Veto", "muSelection_Veto", "tauSelection_Veto",
(opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="Purity") # Sanity check allowedFolders = ["ForDataDrivenCtrlPlots", "ForFakeBMeasurement"] if opts.folder not in allowedFolders: Print("Invalid folder \"%s\"! Please select one of the following:" % (opts.folder), True) for m in allowedFolders: Print(m, False) sys.exit() # Call the main function main(opts) if not opts.batchMode: raw_input("=== printPSets.py: Press any key to quit ROOT ...")
help="Only calculate the inclusive Transfer Factor (TF). Do not calculated binned TF? [default: %s]" % (INCLUSIVE) ) parser.add_option("--ratio", dest="ratio", action="store_true", default=RATIO, help="Draw ratio canvas for Data/MC curves? [default: %s]" % (RATIO) ) parser.add_option("--folder", dest="folder", default=FOLDER, help="Folder in ROOT files under which all necessary histograms are located [default: %s]" % (FOLDER) ) (opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) # Sanity check if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="TransferFactor") # Call the main function main(opts) if not opts.batchMode: raw_input("=== getABCD_TF.py: Press any key to quit ROOT ...")
parser.add_option("--inclusiveOnly", dest="inclusiveOnly", action="store_true", default=INCLUSIVE, help="Only calculate the inclusive Transfer Factor (TF). Do not calculated binned TF? [default: %s]" % (INCLUSIVE) ) parser.add_option("--ratio", dest="ratio", action="store_true", default=RATIO, help="Draw ratio canvas for Data/MC curves? [default: %s]" % (RATIO) ) parser.add_option("--folder", dest="folder", default=FOLDER, help="Folder in ROOT files under which all necessary histograms are located [default: %s]" % (FOLDER) ) (opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) # Sanity check if opts.noSFcrab == None or opts.withCR1SFcrab == None or opts.withCR2SFcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.noSFcrab, prefix=opts.analysisName+"/", postfix="") # Call the main function main(opts) if not opts.batchMode: raw_input("=== getEfficiencies.py: Press any key to quit ROOT ...")
(opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="Significance") #if opts.normalizeByCrossSection == False and opts.normalizeToLumi == False: #raise Exception("One of the options --normalizeByCrossSection, --normalizeToLumi must be enabled (set to \"True\").") # Sanity check allowedFolders = ["counters", "counters/weighted", "PUDependency", "Weighting", "eSelection_Veto", "muSelection_Veto", "tauSelection_Veto", "ForDataDrivenCtrlPlotsEWKFakeB", "ForDataDrivenCtrlPlotsEWKGenuineB", "jetSelection_", "bjetSelection_", "metSelection_", "topologySelection_", "topbdtSelection_", "ForDataDrivenCtrlPlots"] if opts.folder not in allowedFolders: Print("Invalid folder \"%s\"! Please select one of the following:" % (opts.folder), True) for m in allowedFolders: Print(m, False)
if len(sys.argv) < 2: parser.print_help() sys.exit(1) # Sanity check if opts.mcrab == None: Print( "Not enough arguments passed to script execution. Printing docstring & EXIT." ) parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="TransferFactor") # Call the main function dsetSets = { "Run2016": [ "Run2016B", "Run2016C", "Run2016D", "Run2016E", "Run2016F", "Run2016G", "Run2016H" ], ### Individual Runs (too small statistics) # "Run2016B" : ["Run2016B"], # "Run2016C" : ["Run2016C"], # "Run2016D" : ["Run2016D"], # "Run2016E" : ["Run2016E"], # "Run2016F" : ["Run2016F"], # "Run2016G" : ["Run2016G"],
Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() sys.exit(1) if opts.mcrab2 == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() sys.exit(1) if opts.mcrab3 == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab1, prefix="", postfix="ClosurePerturbation") # Sanity check allowedMass = [180, 200, 220, 250, 300, 350, 400, 500, 650, 800, 1000, 2000, 3000] if opts.signalMass!=0 and opts.signalMass not in allowedMass: Print("Invalid signal mass point (=%.0f) selected! Please select one of the following:" % (opts.signalMass), True) for m in allowedMass: Print(m, False) sys.exit() else: opts.signal = "ChargedHiggs_HplusTB_HplusToTB_M_%.0f" % opts.signalMass # Call the main function main(opts)
help="List of datasets in mcrab to include") parser.add_option("-e", "--excludeTasks", dest="excludeTasks", action="store", help="List of datasets in mcrab to exclude") parser.add_option("--folder", dest="folder", type="string", default = FOLDER, help="ROOT file folder under which all histograms to be plotted are located [default: %s]" % (FOLDER) ) (opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="CSVv2AndCRs") # Call the main function main(opts) if not opts.batchMode: raw_input("=== plot_CSVv2AndCRs.py: Press any key to quit ROOT ...")
# Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print( "Not enough arguments passed to script execution. Printing docstring & EXIT." ) parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="Purity") # Sanity check allowedFolders = ["ForDataDrivenCtrlPlots", "ForFakeBMeasurement"] if opts.folder not in allowedFolders: Print( "Invalid folder \"%s\"! Please select one of the following:" % (opts.folder), True) for m in allowedFolders: Print(m, False) sys.exit() # Call the main function main(opts)
parser.add_option("--saveDir", dest="saveDir", type="string", default=SAVEDIR, help="Directory where all pltos will be saved [default: %s]" % SAVEDIR) parser.add_option("--url", dest="url", action="store_true", default=URL, help="Don't print the actual save path the histogram is saved, but print the URL instead [default: %s]" % URL) parser.add_option("-o", "--optMode", dest="optMode", type="string", default=OPTMODE, help="The optimization mode when analysis variation is enabled [default: %s]" % OPTMODE) parser.add_option("--fast", dest="fast", action="store_true", default=FAST, help="Only plots the OR trigger for 2 variables (testing purposes) [default: %s]" % FAST) (opts, parseArgs) = parser.parse_args() # Sanity check if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="Efficiency") # Program execution main(opts) if not opts.batchMode: raw_input("=== plotEfficiency.py: Press any key to quit ROOT ...")
default=FOLDER, help= "ROOT file folder under which all histograms to be plotted are located [default: %s]" % (FOLDER)) (opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print( "Not enough arguments passed to script execution. Printing docstring & EXIT." ) parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="MediumAndLoose") # Call the main function main(opts) if not opts.batchMode: raw_input("=== plot_MediumAndLoose.py: Press any key to quit ROOT ...")
parser.add_option("--yMin", dest="yMin", default=MINY, type="float", help="Overwrite automaticly calculated minimum value of y-axis [default: %s]" % (MINY) ) parser.add_option("--yMax", dest="yMax", default=MAXY, type="float", help="Overwrite automaticly calculated maximum value of y-axis [default: %s]" % (MAXY) ) parser.add_option("--saveDir", dest="saveDir", type="string", default=SAVEDIR, help="Directory where all plots will be saved [default: %s]" % SAVEDIR) parser.add_option("-m", "--mcrab", dest="mcrab", action="store", help="Path to the multicrab directory for input") (opts, args) = parser.parse_args() if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath("", prefix="", postfix="Test") # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() sys.exit(1) main(opts)
# Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print( "Not enough arguments passed to script execution. Printing docstring & EXIT." ) parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="TH1") if opts.normalizeToOne == False and opts.normalizeByCrossSection == False and opts.normalizeToLumi == False: raise Exception( "One of the options --normalizeToOne, --normalizeByCrossSection, --normalizeToLumi must be enabled (set to \"True\")." ) # Sanity check allowedFolders = [ "counters", "counters/weighted", "PUDependency", "Weighting", "eSelection_Veto", "muSelection_Veto", "tauSelection_Veto", "ForDataDrivenCtrlPlotsEWKFakeB", "ForDataDrivenCtrlPlotsEWKGenuineB", "jetSelection_", "bjetSelection_", "metSelection_", "topologySelection_", "topbdtSelection_", "ForDataDrivenCtrlPlots" ]
(opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="TH2") if opts.normalizeToOne == False and opts.normalizeByCrossSection == False and opts.normalizeToLumi == False: raise Exception("One of the options --normalizeToOne, --normalizeByCrossSection, --normalizeToLumi must be enabled (set to \"True\").") # Sanity check allowedFolders = ["counters", "counters/weighted", "PUDependency", "Weighting", "eSelection_Veto", "muSelection_Veto", "tauSelection_Veto", "ForDataDrivenCtrlPlotsEWKFakeB", "ForDataDrivenCtrlPlotsEWKGenuineB", "jetSelection_", "bjetSelection_", "metSelection_", "topologySelection_", "topbdtSelectionTH2_", "ForDataDrivenCtrlPlots", "topSelectionBDT_", "AnalysisTriplets", "AnalysisTripletsTrue", "AnalysisTripletsFalse", "topbdtSelection_", "topSelectionBDTopt_", "SystTopBDT_TH2"] if opts.folder not in allowedFolders: Print("Invalid folder \"%s\"! Please select one of the following:" % (opts.folder), True)
(opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) # Sanity check if opts.mcrab == None: Print( "Not enough arguments passed to script execution. Printing docstring & EXIT." ) parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="Closure/Binned") ratioTypes = ["errorPropagation", "errorScale", "binomial"] if opts.ratioType not in ratioTypes: raise Exception("Invalid ration type \"%s\". Please select from:%s" % (opts.ratioType, ", ".join(ratioTypes))) main(opts) if not opts.batchMode: raw_input("=== plot_ClosureBinned.py: Press any key to quit ROOT ...")
parser.add_option("--fast", dest="fast", action="store_true", default=FAST, help="Only plots the OR trigger for 2 variables (testing purposes) [default: %s]" % FAST) parser.add_option("--gridX", dest="gridX", default=GRIDX, action="store_true", help="Enable the grid for the x-axis [default: %s]" % (GRIDX) ) parser.add_option("--gridY", dest="gridY", default=GRIDY, action="store_true", help="Enable the grid for the y-axis [default: %s]" % (GRIDY) ) parser.add_option("--paper", dest="paper", default=PAPER, action="store_true", help="Apply paper stylings [default: %s]" % (PAPER) ) (opts, parseArgs) = parser.parse_args() # Sanity check if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="Efficiency") # Program execution main(opts) if not opts.batchMode: raw_input("=== plotEfficiency.py: Press any key to quit ROOT ...")
help= "Folder in ROOT files under which all necessary histograms are located [default: %s]" % (FOLDER)) (opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) # Sanity check if opts.mcrab == None: Print( "Not enough arguments passed to script execution. Printing docstring & EXIT." ) parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="TransferFactor") # Call the main function main(opts) if not opts.batchMode: raw_input("=== getABCD_TF.py: Press any key to quit ROOT ...")
parser.add_option("--prefit", dest="prefit", default=PREFIT, action="store_true", help="Draw the pre-fit histogams (not the post-fit ones) [default: %s]" % (PREFIT) ) parser.add_option("--fitUncert", dest="fitUncert", default=FITUNCERT, action="store_true", help="Include fit-uncertainty (and disable \"divideByBinWidth\" option) [default: %s]" % (FITUNCERT) ) parser.add_option("--mergeRares", dest="mergeRares", default=MERGERARES, action="store_true", help="Merge rare datasets into a single dataset? (v. small contribution to final count) [default: %s]" % (MERGERARES) ) (opts, args) = parser.parse_args() if opts.postfitFile == None: opts.postfitFile = "fitDiagnostics_ws.root" opts.dataFiles = [] opts.masses = opts.mass.split(",") for m in opts.masses: fName = "combine_histograms_hplushadronic_m%s.root" % (m) opts.dataFiles.append(fName) if opts.saveName == None: postfix = "postFit" if opts.prefit: postfix = "preFit" opts.saveName = "LdgTetrajetMass_%s" % (postfix) #results should be the same for bkg-only fit (expectedSignal=0) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="Closure") main(opts)
if "," in opts.mcrabs: opts.mcrabs = opts.mcrabs.split(",") aux.Print("Will use the following pseudo-multicrab directories:", True) for d in opts.mcrabs: aux.Print(d, False) else: cwd = os.getcwd() dirs = [ name for name in os.listdir(cwd) if os.path.isdir(os.path.join(cwd, name)) ] mcrabs = [d for d in dirs if opts.mcrabs in d and "Top" in d] opts.mcrabs = mcrabs # For-loop: All pseudomulticrab dirs for mcrab in opts.mcrabs: if not os.path.exists("%s/multicrab.cfg" % mcrab): msg = "No pseudo-multicrab directory found at path '%s'! Please check path or specify it with --mcrab!" % (mcrab) raise Exception(ShellStyles.ErrorLabel() + msg + ShellStyles.NormalStyle()) else: msg = "Using pseudo-multicrab directory %s" % (ShellStyles.NoteStyle() + mcrab + ShellStyles.NormalStyle()) aux.Verbose(msg , True) # Append folder to save directory path if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrabs[0] + "to" + opts.mcrabs[-1].split("_")[-1], prefix=opts.prefix, postfix=opts.postfix) # Call the main function main(opts) if not opts.batchMode: raw_input("=== plot_EfficiencySystTop.py: Press any key to quit ROOT ...")
(opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) # Append folder to save directory path if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="TopTagSystematics") # See: https://twiki.cern.ch/twiki/bin/viewauth/CMS/TopSystematics allowedTypes = ["showerScales", "highPtRadiation", "colourReconnection", "mTop", "evtGen", "partonShower"] if opts.type not in allowedTypes: Print("Invalid type \"%s\" selected. Please choose one of the following: %s" % (opts.type, ", ".join(allowedTypes)), True) sys.exit() # Apply type-related changes # opts.saveDir = os.path.join(opts.saveDir, opts.type) if opts.type == "showerScales": #ISR/FSR opts.excludeTasks = "mtop|hdamp|evtgen|erdON|EE5C" elif opts.type == "highPtRadiation": #hdamp (TOP-16-021) opts.excludeTasks = "mtop|evtgen|erdON|fsr|isr|EE5C" elif opts.type == "colourReconnection": #erdON opts.excludeTasks = "mtop|hdamp|evtgen|fsr|isr|EE5C"
help="List of datasets in mcrab to include") parser.add_option("-e", "--excludeTasks", dest="excludeTasks", action="store", help="List of datasets in mcrab to exclude") parser.add_option("--folder", dest="folder", type="string", default = FOLDER, help="ROOT file folder under which all histograms to be plotted are located [default: %s]" % (FOLDER) ) (opts, parseArgs) = parser.parse_args() # Require at least two arguments (script-name, path to multicrab) if len(sys.argv) < 2: parser.print_help() sys.exit(1) if opts.mcrab == None: Print("Not enough arguments passed to script execution. Printing docstring & EXIT.") parser.print_help() #print __doc__ sys.exit(1) if opts.saveDir == None: opts.saveDir = aux.getSaveDirPath(opts.mcrab, prefix="", postfix="MediumAndLoose") # Call the main function main(opts) if not opts.batchMode: raw_input("=== plot_MediumAndLoose.py: Press any key to quit ROOT ...")