def allowedChannels(mDarkPhoton): print "Allowed channels for dark photon mass = %3.3f" % mDarkPhoton allowedDecays = {'A -> hadrons': 'yes'} if mDarkPhoton > 2. * mass('e'): allowedDecays.update({'A -> e- e+': 'yes'}) print "allowing decay to e" if mDarkPhoton > 2. * mass('mu'): allowedDecays.update({'A -> mu- mu+': 'yes'}) print "allowing decay to mu" if mDarkPhoton > 2. * mass('tau'): allowedDecays.update({'A -> tau- tau+': 'yes'}) print "allowing decay to tau" return allowedDecays
def allowedChannels(self): print "Allowed channels for dark photon mass = %3.3f"%self.mDarkPhoton allowedDecays = {'A -> hadrons':'yes'} if self.mDarkPhoton > 2.*mass('e-'): allowedDecays.update({'A -> e- e+':'yes'}) print "allowing decay to e" if self.mDarkPhoton > 2.*mass('mu-'): allowedDecays.update({'A -> mu- mu+':'yes'}) print "allowing decay to mu" if self.mDarkPhoton > 2.*mass('tau-'): allowedDecays.update({'A -> tau- tau+':'yes'}) print "allowing decay to tau" return allowedDecays
def allowedChannels(self): print("Allowed channels for dark photon mass = %3.3f" % self.mDarkPhoton) allowedDecays = {'A -> hadrons': 'yes'} if self.mDarkPhoton > 2. * mass('e-'): allowedDecays.update({'A -> e- e+': 'yes'}) print("allowing decay to e") if self.mDarkPhoton > 2. * mass('mu-'): allowedDecays.update({'A -> mu- mu+': 'yes'}) print("allowing decay to mu") if self.mDarkPhoton > 2. * mass('tau-'): allowedDecays.update({'A -> tau- tau+': 'yes'}) print("allowing decay to tau") return allowedDecays
def scaleNEventsIncludingHadrons(self, n): """ Very simple patch to take into account A' -> hadrons """ brh = self.hadronicBranchingRatio() #print brh # if M > m(c cbar): if self.mDarkPhoton > 2. * mass('c'): visible_frac = 1. else: visible_frac = 2. / 3. increase = brh * visible_frac #print increase return n * (1. + increase)
def scaleNEventsIncludingHadrons(self,n): """ Very simple patch to take into account A' -> hadrons """ brh = self.hadronicBranchingRatio() #print brh # if M > m(c cbar): if self.mDarkPhoton > 2.*mass('c'): visible_frac = 1. else: visible_frac = 2./3. increase = brh*visible_frac #print increase return n*(1. + increase)
def leptonicDecayWidth(self,lepton): # mDarkPhoton in GeV """ Dark photon decay width into leptons, in GeV (input short name of lepton family) """ ml = mass(lepton) #print 'lepton %s mass %.3e'%(lepton,ml) constant = (1./3.) * alphaQED * self.mDarkPhoton * pow(self.epsilon, 2.) if 2.*ml < self.mDarkPhoton: rad = math.sqrt( 1. - (4.*ml*ml)/(self.mDarkPhoton*self.mDarkPhoton) ) else: rad = 0. par = 1. + (2.*ml*ml)/(self.mDarkPhoton*self.mDarkPhoton) tdw=math.fabs(constant*rad*par) #print 'Leptonic decay width to %s is %.3e'%(lepton,tdw) return tdw