def __init__(self, codename, title, ngenerator, e_decprodcut, br, colour=1, extracuts="(1 > 0)"): self.codename = codename self.title = title self.ngenerator = poisson_counted(ngenerator) self.decprodcut = e_decprodcut self.br = br self.rootcolour = colour self.excut = extracuts
def expected_yield(self, nsurvive): """Calculate the expected yield of events in 3/fb""" from kstmm.lumidata import FULLDATALUMI, FD, FS, FLAMBDA, SIGMABBBAR # work out which fraction if self.codename.count("Bs"): hadrF = FS elif self.codename.count("Bu") or self.codename.count("Bd"): hadrF = FD elif self.codename.count("Lb"): hadrF = FLAMBDA else: print "ERROR" return real("-1 +/- 0") # calculate expected events nBHadrons = FULLDATALUMI * 2 * hadrF * SIGMABBBAR return self.br * nBHadrons * poisson_counted(nsurvive) * self.decprodcut / self.ngenerator