예제 #1
0
파일: JetWeighter.py 프로젝트: anantoni/CMG
    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(JetWeighter, self).__init__(cfg_ana, cfg_comp, looperName)

        self.jet1 = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if self.cfg_comp.isMC or self.cfg_comp.isEmbed:
            self.trigEff = TriggerEfficiency()
            self.trigEff.lepEff = getattr(self.trigEff, self.cfg_ana.effWeight)
            self.trigEff.lepEffMC = None
            if hasattr(self.cfg_ana, 'effWeightMC'):
                self.trigEff.lepEffMC = getattr(self.trigEff,
                                                self.cfg_ana.effWeightMC)
예제 #2
0
    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(LeptonWeighter,self).__init__(cfg_ana, cfg_comp, looperName)

        self.leptonName = self.cfg_ana.lepton
        # self.lepton = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if (self.cfg_comp.isMC or self.cfg_comp.isEmbed) and \
               not ( hasattr(self.cfg_ana,'disable') and self.cfg_ana.disable is True ):
                self.trigEff = TriggerEfficiency()
                self.trigEff.lepEff = getattr( self.trigEff,
                                               self.cfg_ana.effWeight )
                self.trigEff.lepEffMC = None
                if hasattr( self.cfg_ana, 'effWeightMC'):
                    self.trigEff.lepEffMC = getattr( self.trigEff,
                                                     self.cfg_ana.effWeightMC )
예제 #3
0
    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(JetWeighter,self).__init__(cfg_ana, cfg_comp, looperName)

        self.jet1 = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if self.cfg_comp.isMC or self.cfg_comp.isEmbed:
            self.trigEff = TriggerEfficiency()
            self.trigEff.lepEff = getattr( self.trigEff,
                                           self.cfg_ana.effWeight )
            self.trigEff.lepEffMC = None
            if hasattr( self.cfg_ana, 'effWeightMC'):
                self.trigEff.lepEffMC = getattr( self.trigEff,
                                                 self.cfg_ana.effWeightMC )
예제 #4
0
    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(LeptonWeighter, self).__init__(cfg_ana, cfg_comp, looperName)

        self.leptonName = self.cfg_ana.lepton
        # self.lepton = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if (self.cfg_comp.isMC or self.cfg_comp.isEmbed) and not (
            hasattr(self.cfg_ana, "disable") and self.cfg_ana.disable is True
        ):
            self.trigEff = TriggerEfficiency()
            self.trigEff.lepEff = getattr(self.trigEff, self.cfg_ana.effWeight)
            self.trigEff.lepEffMC = None
            if hasattr(self.cfg_ana, "effWeightMC"):
                self.trigEff.lepEffMC = getattr(self.trigEff, self.cfg_ana.effWeightMC)
예제 #5
0
class JetWeighter( Analyzer ):
    '''Gets jet1 efficiency weight and puts it in the event'''

    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(JetWeighter,self).__init__(cfg_ana, cfg_comp, looperName)

        self.jet1 = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if self.cfg_comp.isMC or self.cfg_comp.isEmbed:
            self.trigEff = TriggerEfficiency()
            self.trigEff.lepEff = getattr( self.trigEff,
                                           self.cfg_ana.effWeight )
            self.trigEff.lepEffMC = None
            if hasattr( self.cfg_ana, 'effWeightMC'):
                self.trigEff.lepEffMC = getattr( self.trigEff,
                                                 self.cfg_ana.effWeightMC )
            
            
    def beginLoop(self):
        print self, self.__class__
        super(JetWeighter,self).beginLoop()
        self.averages.add('weight', Average('weight') )
        self.averages.add('triggerWeight', Average('triggerWeight') )
        self.averages.add('eff_data', Average('eff_data') )
        self.averages.add('eff_MC', Average('eff_MC') )
        self.averages.add('recEffWeight', Average('recEffWeight') )


    def process(self, iEvent, event):
        self.readCollections( iEvent )
	if len(event.cleanJets)<1: return
        self.jet1 = event.cleanJets[0]
        self.jet1.weight = 1
        self.jet1.triggerWeight = 1
        self.jet1.triggerEffData = 1
        self.jet1.triggerEffMC = 1 
        if self.cfg_comp.isMC or self.cfg_comp.isEmbed:
            assert( self.trigEff is not None )
            self.jet1.triggerEffData = self.trigEff.lepEff( self.jet1.pt(),
                                                              self.jet1.eta() )
            self.jet1.triggerWeight = self.jet1.triggerEffData

            if self.trigEff.lepEffMC is not None and \
                   len(self.cfg_comp.triggers)>0:
                self.jet1.triggerEffMC = self.trigEff.lepEffMC( self.jet1.pt(),
                                                                  self.jet1.eta() )
                if self.jet1.triggerEffMC>0:
                    self.jet1.triggerWeight /= self.jet1.triggerEffMC
                else:
                    self.jet1.triggerWeight = 1.                    

        self.jet1.weight = self.jet1.triggerWeight
        
##        varName = '_'.join([self.jet1Name, 'eff'])
##         setattr( event, varName, self.jet1.triggerEffData )

##         varName = '_'.join([self.jet1Name, 'effMC'])
##         setattr( event, varName, self.triggerEffMC )

##         varName = '_'.join([self.jet1Name, 'triggerWeight'])
##         setattr( event, varName, self.jet1.triggerWeight )

##         varName = '_'.join([self.jet1Name, 'weight'])
##         setattr( event, varName, self.jet1.weight )

        event.eventWeight *= self.jet1.weight
	if not hasattr(event,"triggerWeight"): event.triggerWeight=1.0
	event.triggerWeight *= self.jet1.triggerWeight
        self.averages['weight'].add( self.jet1.weight )
        self.averages['triggerWeight'].add( self.jet1.triggerWeight )
        self.averages['eff_data'].add( self.jet1.triggerEffData )
        self.averages['eff_MC'].add( self.jet1.triggerEffMC )
예제 #6
0
class LeptonWeighter(Analyzer):
    """Gets lepton efficiency weight and puts it in the event"""

    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(LeptonWeighter, self).__init__(cfg_ana, cfg_comp, looperName)

        self.leptonName = self.cfg_ana.lepton
        # self.lepton = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if (self.cfg_comp.isMC or self.cfg_comp.isEmbed) and not (
            hasattr(self.cfg_ana, "disable") and self.cfg_ana.disable is True
        ):
            self.trigEff = TriggerEfficiency()
            self.trigEff.lepEff = getattr(self.trigEff, self.cfg_ana.effWeight)
            self.trigEff.lepEffMC = None
            if hasattr(self.cfg_ana, "effWeightMC"):
                self.trigEff.lepEffMC = getattr(self.trigEff, self.cfg_ana.effWeightMC)

    def beginLoop(self):
        print self, self.__class__
        super(LeptonWeighter, self).beginLoop()
        self.averages.add("weight", Average("weight"))
        self.averages.add("triggerWeight", Average("triggerWeight"))
        self.averages.add("eff_data", Average("eff_data"))
        self.averages.add("eff_MC", Average("eff_MC"))
        self.averages.add("recEffWeight", Average("recEffWeight"))
        self.averages.add("idWeight", Average("idWeight"))
        self.averages.add("isoWeight", Average("isoWeight"))

    def process(self, iEvent, event):
        self.readCollections(iEvent)
        lep = getattr(event, self.leptonName)
        lep.weight = 1
        lep.triggerWeight = 1
        lep.triggerEffData = 1
        lep.triggerEffMC = 1
        lep.recEffWeight = 1
        lep.idWeight = 1
        lep.isoWeight = 1

        if (self.cfg_comp.isMC or self.cfg_comp.isEmbed) and not (
            hasattr(self.cfg_ana, "disable") and self.cfg_ana.disable is True
        ):
            assert self.trigEff is not None

            lep.triggerEffData = self.trigEff.lepEff(lep.pt(), lep.eta())
            lep.triggerWeight = lep.triggerEffData

            if self.trigEff.lepEffMC is not None and len(self.cfg_comp.triggers) > 0:
                lep.triggerEffMC = self.trigEff.lepEffMC(lep.pt(), lep.eta())

                if lep.triggerEffMC > 0:
                    lep.triggerWeight /= lep.triggerEffMC
                else:
                    lep.triggerWeight = 1.0

            def getWeight(weightMap, lepton):
                try:
                    weight = weightMap.weight(pt=lep.pt(), eta=abs(lep.eta())).weight.value
                except AttributeError:
                    print "cannot find weight!"
                    print weightMap
                    print lep.pt(), lep.eta()
                    raise

            #### these are == 1. for tautau
            if hasattr(self.cfg_ana, "idWeight"):
                lep.idWeight = self.cfg_ana.idWeight.weight(lep.pt(), abs(lep.eta())).weight.value
            if hasattr(self.cfg_ana, "isoWeight"):
                lep.isoWeight = self.cfg_ana.isoWeight.weight(lep.pt(), abs(lep.eta())).weight.value

        lep.recEffWeight = lep.idWeight * lep.isoWeight
        lep.weight = lep.triggerWeight * lep.recEffWeight

        #### fill variables for diTauJet
        if self.cfg_ana.effWeightMC == "eff2012IsoTau19fbMC_Simone":

            if not hasattr(event, "triggerWeight_diTauJet"):
                event.triggerWeight_diTauJet = 1.0
            if not hasattr(event, "triggerEffMC_diTauJet"):
                event.triggerEffMC_diTauJet = 1.0
            if not hasattr(event, "triggerEffData_diTauJet"):
                event.triggerEffData_diTauJet = 1.0

            event.eventWeight *= lep.weight
            event.triggerWeight_diTauJet *= lep.triggerWeight
            event.triggerEffMC_diTauJet *= lep.triggerEffMC
            event.triggerEffData_diTauJet *= lep.triggerEffData

            #### fill variables for diTau
        if self.cfg_ana.effWeightMC == "eff2012IsoParkedTau19fbMC_Simone":

            if not hasattr(event, "triggerWeight_diTau"):
                event.triggerWeight_diTau = 1.0
            if not hasattr(event, "triggerEffMC_diTau"):
                event.triggerEffMC_diTau = 1.0
            if not hasattr(event, "triggerEffData_diTau"):
                event.triggerEffData_diTau = 1.0

            event.eventWeight *= lep.weight
            event.triggerWeight_diTau *= lep.triggerWeight
            event.triggerEffMC_diTau *= lep.triggerEffMC
            event.triggerEffData_diTau *= lep.triggerEffData

        self.averages["weight"].add(lep.weight)
        self.averages["triggerWeight"].add(lep.triggerWeight)
        self.averages["eff_data"].add(lep.triggerEffData)
        self.averages["eff_MC"].add(lep.triggerEffMC)
        self.averages["recEffWeight"].add(lep.recEffWeight)
        self.averages["idWeight"].add(lep.idWeight)
        self.averages["isoWeight"].add(lep.isoWeight)
예제 #7
0
class LeptonWeighter( Analyzer ):
    '''Gets lepton efficiency weight and puts it in the event'''

    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(LeptonWeighter,self).__init__(cfg_ana, cfg_comp, looperName)

        self.leptonName = self.cfg_ana.lepton
        # self.lepton = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if (self.cfg_comp.isMC or self.cfg_comp.isEmbed) and \
               not ( hasattr(self.cfg_ana,'disable') and self.cfg_ana.disable is True ):
                self.trigEff = TriggerEfficiency()
                self.trigEff.lepEff = getattr( self.trigEff,
                                               self.cfg_ana.effWeight )
                self.trigEff.lepEffMC = None
                if hasattr( self.cfg_ana, 'effWeightMC'):
                    self.trigEff.lepEffMC = getattr( self.trigEff,
                                                     self.cfg_ana.effWeightMC )

            
    def beginLoop(self):
        print self, self.__class__
        super(LeptonWeighter,self).beginLoop()
        self.averages.add('weight', Average('weight') )
        self.averages.add('triggerWeight', Average('triggerWeight') )
        self.averages.add('eff_data', Average('eff_data') )
        self.averages.add('eff_MC', Average('eff_MC') )
        self.averages.add('recEffWeight', Average('recEffWeight') )
        self.averages.add('idWeight', Average('idWeight') )
        self.averages.add('isoWeight', Average('isoWeight') )


    def process(self, iEvent, event):
        self.readCollections( iEvent )
        lep = getattr( event, self.leptonName )
        lep.weight = 1
        lep.triggerWeight = 1
        lep.triggerEffData = 1
        lep.triggerEffMC = 1 
        lep.recEffWeight = 1
        lep.idWeight = 1
        lep.isoWeight = 1

        if (self.cfg_comp.isMC or self.cfg_comp.isEmbed) and \
           not ( hasattr(self.cfg_ana,'disable') and self.cfg_ana.disable is True ) and lep.pt() < 9999.:
            assert( self.trigEff is not None )
            lep.triggerEffData = self.trigEff.lepEff( lep.pt(),
                                                      lep.eta() )
            lep.triggerWeight = lep.triggerEffData

            # JAN: Don't apply MC trigger efficiency for embedded samples
            if not self.cfg_comp.isEmbed and self.trigEff.lepEffMC is not None and \
                   len(self.cfg_comp.triggers)>0:
                lep.triggerEffMC = self.trigEff.lepEffMC( lep.pt(),
                                                          lep.eta() )
                if lep.triggerEffMC>0:
                    lep.triggerWeight /= lep.triggerEffMC
                else:
                    lep.triggerWeight = 1.                    

            def getWeight(weightMap, lepton):
                try:
                    weight = weightMap.weight(
                        pt=lep.pt(),
                        eta=abs(lep.eta()) ).weight.value
                except AttributeError:
                    print 'cannot find weight!'
                    print weightMap
                    print lep.pt(), lep.eta()
                    raise

            if hasattr( self.cfg_ana, 'idWeight'):
                lep.idWeight = self.cfg_ana.idWeight.weight(lep.pt(), abs(lep.eta()) ).weight.value
            # JAN: Do not apply iso weight for embedded sample
            if hasattr( self.cfg_ana, 'isoWeight') and not self.cfg_comp.isEmbed:
                lep.isoWeight = self.cfg_ana.isoWeight.weight(lep.pt(), abs(lep.eta()) ).weight.value
            
        lep.recEffWeight = lep.idWeight * lep.isoWeight
        lep.weight = lep.triggerWeight * lep.recEffWeight

        event.eventWeight *= lep.weight
	if not hasattr(event,"triggerWeight"): event.triggerWeight=1.0
        event.triggerWeight *= lep.triggerWeight
        self.averages['weight'].add( lep.weight )
        self.averages['triggerWeight'].add( lep.triggerWeight )
        self.averages['eff_data'].add( lep.triggerEffData )
        self.averages['eff_MC'].add( lep.triggerEffMC )
        self.averages['recEffWeight'].add( lep.recEffWeight )
        self.averages['idWeight'].add( lep.idWeight )
        self.averages['isoWeight'].add( lep.isoWeight )
예제 #8
0
class LeptonWeighter( Analyzer ):
    '''Gets lepton efficiency weight and puts it in the event'''

    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(LeptonWeighter,self).__init__(cfg_ana, cfg_comp, looperName)

        self.leptonName = self.cfg_ana.lepton
        # self.lepton = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if (self.cfg_comp.isMC or self.cfg_comp.isEmbed) and \
               not ( hasattr(self.cfg_ana,'disable') and self.cfg_ana.disable is True ):
                self.trigEff = TriggerEfficiency()
                self.trigEff.lepEff = getattr( self.trigEff,
                                               self.cfg_ana.effWeight )
                self.trigEff.lepEffMC = None
                if hasattr( self.cfg_ana, 'effWeightMC'):
                    self.trigEff.lepEffMC = getattr( self.trigEff,
                                                     self.cfg_ana.effWeightMC )

            
    def beginLoop(self):
        print self, self.__class__
        super(LeptonWeighter,self).beginLoop()
        self.averages.add('weight', Average('weight') )
        self.averages.add('triggerWeight', Average('triggerWeight') )
        self.averages.add('eff_data', Average('eff_data') )
        self.averages.add('eff_MC', Average('eff_MC') )
        self.averages.add('recEffWeight', Average('recEffWeight') )
        self.averages.add('idWeight', Average('idWeight') )
        self.averages.add('isoWeight', Average('isoWeight') )


    def process(self, iEvent, event):
        self.readCollections( iEvent )
        lep = getattr( event, self.leptonName )
        lep.weight = 1
        lep.triggerWeight = 1
        lep.triggerEffData = 1
        lep.triggerEffMC = 1 
        lep.recEffWeight = 1
        lep.idWeight = 1
        lep.isoWeight = 1

        if (self.cfg_comp.isMC or self.cfg_comp.isEmbed) and \
           not ( hasattr(self.cfg_ana,'disable') and self.cfg_ana.disable is True ) and lep.pt() < 9999.:
            assert( self.trigEff is not None )
            lep.triggerEffData = self.trigEff.lepEff( lep.pt(),
                                                      lep.eta() )
            lep.triggerWeight = lep.triggerEffData

            # JAN: Don't apply MC trigger efficiency for embedded samples
            if not self.cfg_comp.isEmbed and self.trigEff.lepEffMC is not None and \
                   len(self.cfg_comp.triggers)>0:
                lep.triggerEffMC = self.trigEff.lepEffMC( lep.pt(),
                                                          lep.eta() )
                if lep.triggerEffMC>0:
                    lep.triggerWeight /= lep.triggerEffMC
                else:
                    lep.triggerWeight = 1.                    

            def getWeight(weightMap, lepton):
                try:
                    weight = weightMap.weight(
                        pt=lep.pt(),
                        eta=abs(lep.eta()) ).weight.value
                except AttributeError:
                    print 'cannot find weight!'
                    print weightMap
                    print lep.pt(), lep.eta()
                    raise

            if hasattr( self.cfg_ana, 'idWeight'):
                lep.idWeight = self.cfg_ana.idWeight.weight(lep.pt(), abs(lep.eta()) ).weight.value
            # JAN: Do not apply iso weight for embedded sample
            if hasattr( self.cfg_ana, 'isoWeight') and not self.cfg_comp.isEmbed:
                lep.isoWeight = self.cfg_ana.isoWeight.weight(lep.pt(), abs(lep.eta()) ).weight.value
            
        lep.recEffWeight = lep.idWeight * lep.isoWeight
        lep.weight = lep.triggerWeight * lep.recEffWeight

        event.eventWeight *= lep.weight
	if not hasattr(event,"triggerWeight"): event.triggerWeight=1.0
        event.triggerWeight *= lep.triggerWeight
        self.averages['weight'].add( lep.weight )
        self.averages['triggerWeight'].add( lep.triggerWeight )
        self.averages['eff_data'].add( lep.triggerEffData )
        self.averages['eff_MC'].add( lep.triggerEffMC )
        self.averages['recEffWeight'].add( lep.recEffWeight )
        self.averages['idWeight'].add( lep.idWeight )
        self.averages['isoWeight'].add( lep.isoWeight )
                
예제 #9
0
파일: JetWeighter.py 프로젝트: anantoni/CMG
class JetWeighter(Analyzer):
    '''Gets jet1 efficiency weight and puts it in the event'''
    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(JetWeighter, self).__init__(cfg_ana, cfg_comp, looperName)

        self.jet1 = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if self.cfg_comp.isMC or self.cfg_comp.isEmbed:
            self.trigEff = TriggerEfficiency()
            self.trigEff.lepEff = getattr(self.trigEff, self.cfg_ana.effWeight)
            self.trigEff.lepEffMC = None
            if hasattr(self.cfg_ana, 'effWeightMC'):
                self.trigEff.lepEffMC = getattr(self.trigEff,
                                                self.cfg_ana.effWeightMC)

    def beginLoop(self):
        print self, self.__class__
        super(JetWeighter, self).beginLoop()
        self.averages.add('weight', Average('weight'))
        self.averages.add('triggerWeight', Average('triggerWeight'))
        self.averages.add('eff_data', Average('eff_data'))
        self.averages.add('eff_MC', Average('eff_MC'))
        self.averages.add('recEffWeight', Average('recEffWeight'))

    def process(self, iEvent, event):
        self.readCollections(iEvent)
        if len(event.cleanJets) < 1: return
        self.jet1 = event.cleanJets[0]
        self.jet1.weight = 1
        self.jet1.triggerWeight = 1
        self.jet1.triggerEffData = 1
        self.jet1.triggerEffMC = 1
        if self.cfg_comp.isMC or self.cfg_comp.isEmbed:
            assert (self.trigEff is not None)
            self.jet1.triggerEffData = self.trigEff.lepEff(
                self.jet1.pt(), self.jet1.eta())
            self.jet1.triggerWeight = self.jet1.triggerEffData

            if self.trigEff.lepEffMC is not None and \
                   len(self.cfg_comp.triggers)>0:
                self.jet1.triggerEffMC = self.trigEff.lepEffMC(
                    self.jet1.pt(), self.jet1.eta())
                if self.jet1.triggerEffMC > 0:
                    self.jet1.triggerWeight /= self.jet1.triggerEffMC
                else:
                    self.jet1.triggerWeight = 1.

        self.jet1.weight = self.jet1.triggerWeight

        ##        varName = '_'.join([self.jet1Name, 'eff'])
        ##         setattr( event, varName, self.jet1.triggerEffData )

        ##         varName = '_'.join([self.jet1Name, 'effMC'])
        ##         setattr( event, varName, self.triggerEffMC )

        ##         varName = '_'.join([self.jet1Name, 'triggerWeight'])
        ##         setattr( event, varName, self.jet1.triggerWeight )

        ##         varName = '_'.join([self.jet1Name, 'weight'])
        ##         setattr( event, varName, self.jet1.weight )

        event.eventWeight *= self.jet1.weight
        if not hasattr(event, "triggerWeight"): event.triggerWeight = 1.0
        event.triggerWeight *= self.jet1.triggerWeight
        self.averages['weight'].add(self.jet1.weight)
        self.averages['triggerWeight'].add(self.jet1.triggerWeight)
        self.averages['eff_data'].add(self.jet1.triggerEffData)
        self.averages['eff_MC'].add(self.jet1.triggerEffMC)
예제 #10
0
class JetWeighter(Analyzer):
    '''Gets jet1 efficiency weight and puts it in the event'''
    def __init__(self, cfg_ana, cfg_comp, looperName):
        super(JetWeighter, self).__init__(cfg_ana, cfg_comp, looperName)

        self.jet1 = None
        self.weight = None
        # self.weightFactor = 1.
        self.trigEff = None
        if self.cfg_comp.isMC or self.cfg_comp.isEmbed:
            self.trigEff = TriggerEfficiency()
            self.trigEff.lepEff = getattr(self.trigEff, self.cfg_ana.effWeight)
            self.trigEff.lepEffMC = None
            if hasattr(self.cfg_ana, 'effWeightMC'):
                self.trigEff.lepEffMC = getattr(self.trigEff,
                                                self.cfg_ana.effWeightMC)

    def beginLoop(self, setup):
        print self, self.__class__
        super(JetWeighter, self).beginLoop(setup)
        self.averages.add('weight', Average('weight'))
        self.averages.add('triggerWeight', Average('triggerWeight'))
        self.averages.add('eff_data', Average('eff_data'))
        self.averages.add('eff_MC', Average('eff_MC'))
        self.averages.add('recEffWeight', Average('recEffWeight'))

    def process(self, event):
        self.readCollections(event.input)
        if len(event.cleanJets) < 1: return
        #import pdb ; pdb.set_trace()
        self.jet1 = event.cleanJets[0]
        self.jet1.weight = 1
        self.jet1.triggerWeight = 1
        self.jet1.triggerEffData = 1
        self.jet1.triggerEffMC = 1
        if self.cfg_comp.isMC or self.cfg_comp.isEmbed:
            assert (self.trigEff is not None)
            #import pdb ; pdb.set_trace()
            self.jet1.triggerEffData = self.trigEff.lepEff(
                self.jet1.pt(), self.jet1.eta())
            self.jet1.triggerWeight = self.jet1.triggerEffData

            #import pdb ; pdb.set_trace()
            if self.trigEff.lepEffMC is not None and len(
                    self.cfg_comp.triggers) > 0:
                self.jet1.triggerEffMC = self.trigEff.lepEffMC(
                    self.jet1.pt(), self.jet1.eta())
                if self.jet1.triggerEffMC > 0:
                    self.jet1.triggerWeight /= self.jet1.triggerEffMC
                else:
                    self.jet1.triggerWeight = 1.

        #import pdb ; pdb.set_trace()

        self.jet1.weight = self.jet1.triggerWeight

        ##        varName = '_'.join([self.jet1Name, 'eff'])
        ##         setattr( event, varName, self.jet1.triggerEffData )

        ##         varName = '_'.join([self.jet1Name, 'effMC'])
        ##         setattr( event, varName, self.triggerEffMC )

        ##         varName = '_'.join([self.jet1Name, 'triggerWeight'])
        ##         setattr( event, varName, self.jet1.triggerWeight )

        ##         varName = '_'.join([self.jet1Name, 'weight'])
        ##         setattr( event, varName, self.jet1.weight )

        ######## commented for now, need to change the variables names
        #         event.eventWeight *= self.jet1.weight
        # 	if not hasattr(event,"triggerWeight") : event.triggerWeight  = 1.0
        # 	event.triggerWeight  *= self.jet1.triggerWeight
        # 	if not hasattr(event,"triggerEffMC")  : event.triggerEffMC   = 1.0
        #         event.triggerEffMC   *= self.jet1.triggerEffMC
        # 	if not hasattr(event,"triggerEffData"): event.triggerEffData = 1.0
        #         event.triggerEffData *= self.jet1.triggerEffData

        event.eventWeight *= self.jet1.weight
        if not hasattr(event, "triggerWeight_diTauJet"):
            event.triggerWeight_diTauJet = 1.0
        event.triggerWeight_diTauJet *= self.jet1.triggerWeight
        if not hasattr(event, "triggerEffMC_diTauJet"):
            event.triggerEffMC_diTauJet = 1.0
        event.triggerEffMC_diTauJet *= self.jet1.triggerEffMC
        if not hasattr(event, "triggerEffData_diTauJet"):
            event.triggerEffData_diTauJet = 1.0
        event.triggerEffData_diTauJet *= self.jet1.triggerEffData

        self.averages['weight'].add(self.jet1.weight)
        self.averages['triggerWeight'].add(self.jet1.triggerWeight)
        self.averages['eff_data'].add(self.jet1.triggerEffData)
        self.averages['eff_MC'].add(self.jet1.triggerEffMC)