def combine_cards_pth_ggH_lastBinDroppedHgg(args): out_card = 'suppliedInput/combination_pth_ggH_lastBinDroppedHgg_{0}.txt'.format( core.datestr()) combine_cards(out_card, 'hgg=' + LatestPaths.card.pth_ggH.hgg, 'hzz=' + LatestPaths.card.pth_ggH.hzz, '--xc=recoPt_600p0_10000p0_.*') drop_pdfindices(out_card)
def combine_cards_Top_last2BinsDropped(args): hgg_cat_pats = [ 'recoPt_350p0_600p0', 'recoPt_600p0_10000p0', ] decay_channel = differentialutils.get_decay_channel_tag(args) out_card = 'suppliedInput/Top_{0}_pth_ggH_{1}_last2BinsDropped.txt'.format( decay_channel, core.datestr()) cmd = [] if args.combWithHbb or args.combination or args.hgg: cmd.append('hgg=' + LatestPaths.card.pth_ggH.hgg) for cat_pat in hgg_cat_pats: cmd.append('--xc={0}.*'.format(cat_pat)) if args.combWithHbb or args.hbb: cmd.append('hbb=' + LatestPaths.card.pth_ggH.hbb) if args.combWithHbb or args.combination or args.hzz: cmd.append('hzz=' + LatestPaths.card.pth_ggH.hzz) combine_cards(out_card, *cmd) # Have to manually remove the if args.combWithHbb or args.combination or args.hgg: drop_pdfindices(out_card, hgg_cat_pats)
def combine_cards_Yukawa(args): hgg_cat_pats = [ 'recoPt_120p0_200p0', 'recoPt_200p0_350p0', 'recoPt_350p0_600p0', 'recoPt_600p0_10000p0', ] hzz_cat_pats = [ 'hzz_PTH_GT200_cat2e2mu', 'hzz_PTH_GT200_cat4e', 'hzz_PTH_GT200_cat4mu', ] decay_channel = differentialutils.get_decay_channel_tag(args) out_card = 'suppliedInput/Yukawa_{0}_pth_ggH_{1}.txt'.format( decay_channel, core.datestr()) cmd = [] if args.combination or args.hzz: cmd.append('hzz=' + LatestPaths.card.pth_ggH.hzz) for cat_pat in hzz_cat_pats: cmd.append('--xc={0}.*'.format(cat_pat)) if args.combination or args.hgg: cmd.append('hgg=' + LatestPaths.card.pth_ggH.hgg) for cat_pat in hgg_cat_pats: cmd.append('--xc={0}.*'.format(cat_pat)) combine_cards(out_card, *cmd) # Have to manually remove the pdf indices if args.combWithHbb or args.combination or args.hgg: drop_pdfindices(out_card, hgg_cat_pats)
def __init__(self): self.variations = [] self.do_wrt_central = False self.last_bin_is_overflow = False self.tags = [] self.outdir = None self.default_outdir = 'out/scalecorrelations_{0}'.format(core.datestr())
def combine_cards_Top_noBinsDropped(args): decay_channel = differentialutils.get_decay_channel_tag(args) out_card = 'suppliedInput/Top_{0}_pth_ggH_{1}_noBinsDropped.txt'.format( decay_channel, core.datestr()) cmd = [] if args.combWithHbb or args.combination or args.hgg: cmd.append('hgg=' + LatestPaths.card.pth_ggH.hgg) if args.combWithHbb or args.hbb: cmd.append('hbb=' + LatestPaths.card.pth_ggH.hbb) if args.combWithHbb or args.combination or args.hzz: cmd.append('hzz=' + LatestPaths.card.pth_ggH.hzz) combine_cards(out_card, *cmd)
def combine_cards_for_observable(args, obsname): decay_channel = differentialutils.get_decay_channel_tag(args) out_card = 'suppliedInput/{0}_{1}_{2}.txt'.format(decay_channel, obsname, core.datestr()) cmd = [] if args.combWithHbb or args.combination or args.hgg: cmd.append('hgg=' + LatestPaths.card[obsname].hgg) if args.combWithHbb or args.combination or args.hzz: cmd.append('hzz=' + LatestPaths.card[obsname].hzz) if args.combWithHbb or args.hbb: cmd.append('hbb=' + LatestPaths.card[obsname].hbb) combine_cards(out_card, *cmd)
def combine_pth_smH(args): decay_channel = differentialutils.get_decay_channel_tag(args) out_card = 'suppliedInput/{0}_pth_smH_{1}.txt'.format( decay_channel, core.datestr()) cmd = [] if args.combWithHbb or args.combination or args.hgg: cmd.append('hgg=' + LatestPaths.card.pth_ggH.hgg ) # use ggH, but use special scaling in T2WS if args.combWithHbb or args.hbb: cmd.append('hbb=' + LatestPaths.card.pth_ggH.hbb ) # use ggH, but use special scaling in T2WS if args.combWithHbb or args.combination or args.hzz: cmd.append('hzz=' + LatestPaths.card.pth_smH.hzz) combine_cards(out_card, *cmd)
def __init__(self, card=None, model_file=None, model_name=None, name=None): super(T2WS, self).__init__() self.name = name self.card = card self.ignore_xH = True self.model_file = self.default_model_file if not (model_file is None): self.model_file = model_file if model_name is None: if self.model_file == T2WS.default_model_file: self.model_name = 'multiSignalModel' else: base = basename(self.model_file).replace('.py', '') self.model_name = base[0].lower() + base[1:] else: self.model_name = model_name self.outdir = 'workspaces_{0}'.format(core.datestr()) self.output_ws = None self.tags = [] self.extra_options = [] self.map_options = []
def get_outpath(self): outpath = 'out/theories_{0}_{1}'.format( core.datestr(), '_'.join(self.tags), ) return outpath
def __init__(self, *args, **kwargs): super(CombineCorrMat, self).__init__(*args, **kwargs) self.subDirectory = 'out/corrmats_{0}'.format(core.datestr())
def __init__(self, *args, **kwargs): super(CombineOnlyPostfit, self).__init__(*args, **kwargs) self.subDirectory = 'out/postfits_{0}'.format(core.datestr()) self.onBatch = True
def base_config(args): config = combine.CombineConfig(args) config.subDirectory = 'out/corrmats_{0}'.format(core.datestr()) config.queue = 'short.q' config.onBatch = False return config
def fix_extension_for_txt(out): if not out.endswith('.txt'): out += '.txt' out = out.replace('.txt', '_{0}.txt'.format(core.datestr())) return out