예제 #1
0
 def __init__(self, moduleName, default_config):
     LineBuilder.__init__(self, moduleName, default_config)
     ###########################################################################
     # Prepare the inputs
     ###########################################################################
     # Prefilter input tracks
     pions = filterInputs('Pi', [StdNoPIDsPions], default_config['ALL'])
     kaons = filterInputs('K', [StdNoPIDsKaons], default_config['ALL'])
     protons = filterInputs('P', [StdNoPIDsProtons], default_config['ALL'])
     muons = filterInputs('Mu', [StdLooseMuons], default_config['ALL'])
     # Prefilter KS
     mergedKS = MergedSelection('MergedKS0',
                                RequiredSelections=[
                                    dataOnDemand("StdLooseKsDD"),
                                    dataOnDemand("StdLooseKsLL")
                                ])
     KS_filter = filterInputs('KS0', [mergedKS], default_config['KS0'])
     ks = [KS_filter]
     # Prefilter photons
     photons = filterPhotons([StdLooseAllPhotons], default_config['GAMMA'])
     mergedConvPhotons = MergedSelection(
         'MergedConvPhotons',
         RequiredSelections=[StdAllLooseGammaDD, StdAllLooseGammaLL])
     photonsConv = filterPhotonsConv([mergedConvPhotons],
                                     default_config['GAMMACONV'])
     # Prefilter pi0
     pi0_merged = filterPi0s('Merged', [StdLooseMergedPi0],
                             default_config['Pi0'])
     pi0_resolved = filterPi0s('Resolved', [StdLooseResolvedPi0],
                               default_config['Pi0'])
     pi0 = {"Merged": [pi0_merged], "Resolved": [pi0_resolved]}
     # Prefilter hard inputs
     topoPions = topoInputs('Pi', [pions])
     softtopoKaons = softtopoInputs('K', [kaons])
     topoKaons = topoInputs('K', [softtopoKaons])
     topoProtons = topoInputs('P', [protons])
     ###########################################################################
     # Build particles
     ###########################################################################
     # X -> hh
     hh = HHBuilder(pions, kaons, protons, muons, ks, pi0,
                    default_config['HH'], default_config['PID'])
     # X -> hhh
     hhh = HHHBuilder(pions, kaons, protons, pi0, default_config['HHH'])
     #hhh = None
     ###########################################################################
     # B -> X Gamma
     ###########################################################################
     b2xgamma = B2XGammaBuilder(photons, photonsConv, topoPions, topoKaons,
                                softtopoKaons, ks, pi0, hh, hhh,
                                default_config['B2X'])
     #b2xgamma = B2XGammaBuilder(photons, topoPions, topoKaons, ks, pi0, hh, hhh, config['B2X'])
     self._makeLines(b2xgamma.lines, default_config)
     ###########################################################################
     # Lb -> X Gamma
     ###########################################################################
     lb2xgamma = Lb2XGammaBuilder(photons, hh, default_config['B2X'])
     self._makeLines(lb2xgamma.lines, default_config)
예제 #2
0
 def __init__(self, moduleName, config):
     LineBuilder.__init__(self, moduleName, config)
     ###########################################################################
     # Prepare the inputs
     ###########################################################################
     # Prefilter input tracks
     pions = filterInputs('Pi', [StdAllNoPIDsPions], config['ALL'])
     kaons = filterInputs('K', [StdAllNoPIDsKaons], config['ALL'])
     protons = filterInputs('P', [StdAllNoPIDsProtons], config['ALL'])
     # Prefilter KS
     ks_dd = filterInputs('KS0_DD', [dataOnDemand("StdLooseKsDD")],
                          config['KS0'])  # KS from Downstream-Dowstream
     ks_ll = filterInputs('KS0_LL', [dataOnDemand("StdLooseKsLL")],
                          config['KS0'])  # KS from Long-Long
     #ks = {"DD": [ks_dd], "LL": [ks_ll]}
     ks = [ks_dd, ks_ll]
     # Prefilter photons
     photons = filterPhotons([StdLooseAllPhotons], config['GAMMA'])
     photonsConv = filterPhotonsConv(
         [StdAllLooseGammaDD, StdAllLooseGammaLL], config['GAMMACONV'])
     # Prefilter pi0
     pi0_merged = filterPi0s('Merged', [StdLooseMergedPi0], config['Pi0'])
     pi0_resolved = filterPi0s('Resolved', [StdLooseResolvedPi0],
                               config['Pi0'])
     pi0 = {"Merged": [pi0_merged], "Resolved": [pi0_resolved]}
     # Prefilter hard inputs
     topoPions = topoInputs('Pi', [pions])
     topoKaons = topoInputs('K', [kaons])
     topoProtons = topoInputs('P', [protons])
     ###########################################################################
     # Build particles
     ###########################################################################
     # X -> hh
     hh = HHBuilder(pions, kaons, protons, ks, pi0, config['HH'],
                    config['PID'])
     # X -> hhh
     hhh = HHHBuilder(pions, kaons, protons, pi0, config['HHH'])
     #hhh = None
     ###########################################################################
     # B -> X Gamma
     ###########################################################################
     b2xgamma = B2XGammaBuilder(photons, photonsConv, topoPions, topoKaons,
                                ks, pi0, hh, hhh, config['B2X'])
     #b2xgamma = B2XGammaBuilder(photons, topoPions, topoKaons, ks, pi0, hh, hhh, config['B2X'])
     self._makeLines(b2xgamma.lines, config)
     ###########################################################################
     # Lb -> X Gamma
     ###########################################################################
     lb2xgamma = Lb2XGammaBuilder(photons, hh, config['B2X'])
     self._makeLines(lb2xgamma.lines, config)