コード例 #1
0
def makeClosureTestTable():
    fitVariable='absolute_eta_M3_angle_bl'
    for channel in channels:
        print 'CHANNEL :',channel
        for variable in variables:
            print '--->',variable
            # Read fit results
            dir = 'data/'+fitVariable+'/'+com+'/'
            if closureTest : dir = 'data/closure_test/simple/'+fitVariable+'/'+com+'/'
            fit_results = read_normalisation( dir,
                                        variable,
                                        'central',
                                        channel,
                                        'patType1CorrectedPFMet' )
            # Read initial values
            initial_values = read_initial_normalisation( dir,
                                        variable,
                                        'central',
                                        channel,
                                        'patType1CorrectedPFMet' )
            
#             for whichBin in range (0,len(bin_edges[variable])-1):
            for whichBin in range (0,1):
                for process in processes:
                    scale = closure_tests['simple'][process]
                    
                    line = '%s ' % (samples_latex[process])
                    line += '& %.0f ' % initial_values[process][whichBin][0]
                    line += '& %.0f ' % (initial_values[process][whichBin][0]*scale)
                    line += '& %.0f \pm %.0f ' % (fit_results[process][whichBin][0],fit_results[process][whichBin][1])
                    line += '\\\\'
                    print line
#                     print process
#                     print scale
#                     print initial_values[process][whichBin][0]
#                     print initial_values[process][whichBin][0]*scale
#                     print fit_results[process][whichBin][0],'+/-',fit_results[process][whichBin][1]
                    
                    pass
                pass
            print '\n'
            pass
        pass
    pass
コード例 #2
0
def makeClosureErrorTable():
    for channel in channels:
        print 'CHANNEL :',channel
        for variable in variables:
            print '--->',variable
            for whichBin in range (0,len(bin_edges[variable])-1):
                fitResults = {}

                for process in processes:
                    fitResults[process] = []
                    for fitVariable in fitVariableCombinations:
                        # Read fit results
                        dir = 'data/'+fitVariable+'/'+com+'/'
                        if closureTest : dir = 'data/closure_test/simple/'+fitVariable+'/'+com+'/'
                        fit_results_ = read_normalisation( dir,
                                                    variable,
                                                    'central',
                                                    channel,
                                                    'patType1CorrectedPFMet' )
                        fitResults[process].append( fit_results_[process][whichBin] )
                        pass
                    pass
                
                for process in processes:
                    line = samples_latex[process] + ' '
                
                    for fit in fitResults[process]:
                        line += '& %.0f \pm %.1f ' % ( fit[0],fit[1] )
                        pass
                    line +=' \\\\'
                    print line
                    pass
                print '\n'
                pass
            print '\n'
            pass
        pass
    pass
コード例 #3
0
                       'M3': {'min':0, 'max':1000, 'rebin':5, 'x-title': 'M3 [GeV]', 'y-title': 'Events/25 GeV'},
                       'angle_bl': {'min':0, 'max':3.5, 'rebin':2, 'x-title': 'angle(b,l)', 'y-title': 'Events/(0.2)'},
                       'absolute_eta': {'min':0, 'max':2.6, 'rebin':2, 'x-title': '$\left|\eta(e)\\right|$', 'y-title': 'Events/(0.2)'},
                       }


variables = [ 'MET', 'HT', 'ST', 'WPT', 'MT' ]


for test in closure_tests:
    if test != 'qcd_only' : continue;
    for variable in variables:
        
        fit_results_ = read_normalisation( 'data/closure_test/'+test+'/absolute_eta_M3_angle_bl/8TeV/',
                                    variable,
                                    'central',
                                    'electron',
                                     'patType1CorrectedPFMet' )
    
        fit_templates_ = read_fit_templates( 'data/closure_test/'+test+'/absolute_eta_M3_angle_bl/8TeV/',
                                        variable,
                                        'central',
                                        'electron',
                                         'patType1CorrectedPFMet' )
        
        initial_values_ = read_initial_normalisation( 'data/closure_test/'+test+'/absolute_eta_M3_angle_bl/8TeV/',
                                        variable,
                                        'central',
                                        'electron',
                                         'patType1CorrectedPFMet' )
    
コード例 #4
0
        'min': 0,
        'max': 2.6,
        'rebin': 2,
        'x-title': '$\left|\eta(e)\\right|$',
        'y-title': 'Events/(0.2)'
    },
}

variables = ['MET', 'HT', 'ST', 'WPT', 'MT']

for test in closure_tests:
    if test != 'qcd_only': continue
    for variable in variables:

        fit_results_ = read_normalisation(
            'data/closure_test/' + test + '/absolute_eta_M3_angle_bl/8TeV/',
            variable, 'central', 'electron', 'patType1CorrectedPFMet')

        fit_templates_ = read_fit_templates(
            'data/closure_test/' + test + '/absolute_eta_M3_angle_bl/8TeV/',
            variable, 'central', 'electron', 'patType1CorrectedPFMet')

        initial_values_ = read_initial_normalisation(
            'data/closure_test/' + test + '/absolute_eta_M3_angle_bl/8TeV/',
            variable, 'central', 'electron', 'patType1CorrectedPFMet')

        for whichBin in range(0, len(fit_results_['TTJet'])):
            for fitVariable in fit_variable_properties:
                fitTemplates = fit_templates_[fitVariable]

                histograms = {}