Exemplo n.º 1
0
def basic_config_radial(args):
    # assert_highpt(args)
    config = combine.CombineConfig(args)
    config.onBatch = True
    config.queue = 'short.q'

    config.nPointsPerJob = 5
    if args.hzz:
        config.nPointsPerJob = 320

    config.decay_channel = differentialutils.get_decay_channel_tag(args)

    if args.combWithHbb or args.hbb:
        config.minimizer_settings.extend([
            '--minimizerStrategy 2',
            '--minimizerTolerance 0.001',
            '--robustFit 1',
            '--minimizerAlgoForMinos Minuit2,Migrad',
        ])

    config.deltaNLLCutOff = 60.
    config.nPoints = 50

    config.POIs = ['theta']
    config.PhysicsModelParameters = ['theta=0.0', 'r=1.0']
    config.set_parameter_range('theta', -0.25 * pi, 0.75 * pi)
    config.set_parameter_range('r', 0.0, 5.0)

    config.subDirectory = 'out/Scan_{0}_TopRadial_{1}'.format(
        datestr, config.decay_channel)

    return config
Exemplo n.º 2
0
def basic_config_points(args):
    # assert_highpt(args)
    config = combine.CombineConfig(args)
    config.onBatch = True
    config.queue = 'short.q'
    config.asimov = True if args.asimov else False
    config.decay_channel = differentialutils.get_decay_channel_tag(args)

    if args.combWithHbb or args.hbb:
        config.minimizer_settings.extend([
            '--minimizerStrategy 2',
            '--minimizerTolerance 0.001',
            '--robustFit 1',
            '--minimizerAlgoForMinos Minuit2,Migrad',
        ])

    config.PhysicsModelParameters = ['ct=1.0', 'cg=0.0']
    config.subDirectory = 'out/Scan_{0}_TopPoints_{1}'.format(
        datestr, config.decay_channel)
    return config
Exemplo n.º 3
0
def basic_config(args, hurry=False):
    config = combine.CombineConfig(args)
    config.onBatch       = True
    config.queue         = 'all.q'
    if hurry:
        logging.warning( 'Running with quick settings' )
        config.nPointsPerJob = 5
        config.queue         = 'short.q'

    if args.hzz:
        config.nPointsPerJob = 320
        config.queue         = 'short.q'

    if args.asimov:
        config.asimov = True
    else:
        config.asimov = False

    config.decay_channel = differentialutils.get_decay_channel_tag(args)

    config.nPoints = 70*70
    kappab_ranges = [ -15., 15. ]
    kappac_ranges = [ -35., 35. ]
    if config.args.lumiScale:
        config.nPoints = 40*40
        kappab_ranges = [ -7., 7. ]
        kappac_ranges = [ -17., 17. ]

    config.POIs = [ 'kappab', 'kappac' ]
    config.PhysicsModelParameters = [ 'kappab=1.0', 'kappac=1.0' ]
    config.PhysicsModelParameterRanges = [
        'kappab={0},{1}'.format( kappab_ranges[0], kappab_ranges[1] ),
        'kappac={0},{1}'.format( kappac_ranges[0], kappac_ranges[1] )
        ]
    config.subDirectory = 'out/Scan_Yukawa_{0}_{1}'.format(datestr, config.decay_channel)
    config.deltaNLLCutOff = 70.
    return config
Exemplo n.º 4
0
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 differential_config(args, ws, obs_name):
    base_config = combine.CombineConfig(args)
    base_config.onBatch = True
    base_config.nPoints = 55
    base_config.nPointsPerJob = 5
    base_config.queue = 'short.q'

    if args.asimov:
        base_config.asimov = True
    else:
        base_config.asimov = False

    base_config.decay_channel = differentialutils.get_decay_channel_tag(args)
    if args.hzz or args.hbb:
        base_config.nPointsPerJob = base_config.nPoints
    if args.combWithHbb:
        base_config.nPoints = 100
        base_config.nPointsPerJob = 4
    if args.hbb or args.combWithHbb:
        base_config.minimizer_settings = [
            '--cminDefaultMinimizerType Minuit2',
            '--cminDefaultMinimizerAlgo migrad',
            '--minimizerStrategy 2',
            '--minimizerTolerance 0.001',
            '--robustFit 1',
            '--minimizerAlgoForMinos Minuit2,Migrad',
        ]

    base_config.datacard = ws
    base_config.subDirectory = 'out/Scan_{0}_{1}_{2}'.format(
        datestr, obs_name, base_config.decay_channel)
    if args.lumiScale:
        base_config.hardPhysicsModelParameters.append(
            'lumiScale={0}'.format(lumiMultiplier))
        base_config.freezeNuisances.append('lumiScale')
        base_config.subDirectory += '_lumiScale{0}'.format(
            str(lumiMultiplier).replace('.', 'p'))
    if args.statonly:
        base_config.subDirectory += '_statonly'

    POIs = differentials.core.list_POIs(ws)
    POIrange = [-1.0, 4.0]
    if args.hzz:
        POIrange[0] = 0.0
    if args.hbb:
        POIrange = [-10.0, 10.0]
    if args.combWithHbb:
        POIrange = [-1.0, 6.0]
    if args.lumiScale:
        POIrange = [0.7, 1.3]
        base_config.nPoints = 35
        if lumiMultiplier > 10.:
            POIrange = [0.9, 1.1]

    base_config.POIs = POIs
    base_config.PhysicsModelParameters = ['{0}=1.0'.format(p) for p in POIs]

    for POI in POIs:
        left, right = POIrange
        if '350_600' in POI or 'GT600' in POI or 'GT200' in POI:
            left = -10.
            right = 10.
            if base_config.decay_channel == 'hgg':
                left = -15.
        base_config.PhysicsModelParameterRanges.append('{0}={1},{2}'.format(
            POI, left, right))

    if args.hbb or args.combWithHbb:
        logging.warning(
            'For hbb: qcdeff and r*p* parameters are given ranges! '
            'Should decide on (freezing) behaviour during postfit/scan')
        base_config.PhysicsModelParameterRanges.extend([
            'qcdeff=0.001,8.0',
            'r1p0=0.0,8.0',
            'r2p0=0.0,8.0',
            'r3p0=0.0,8.0',
            'r0p1=0.0,8.0',
            'r1p1=0.0,8.0',
            'r2p1=0.0,8.0',
            'r3p1=0.0,8.0',
        ])
    return base_config