34 import modularAnalysis
as ma
35 from variables
import variables
as vm
47 ma.inputMdstList(
'default', [b2.find_file(
'analysis/tests/mdst.root')], path=mypath)
53 ma.fillParticleList(
'pi+:all',
'', path=mypath)
54 ma.fillParticleList(
'K+:all',
'', path=mypath)
56 ma.reconstructDecay(
'D0:Example -> pi-:all pi+:all K_S0:merged',
'1.7 < M < 2.0', path=mypath)
57 ma.reconstructDecay(
'D*+:Example -> pi+:all D0:Example',
'0 < Q < 0.022 and useCMSFrame(p)>2.3', path=mypath)
60 ma.matchMCTruth(list_name=
'D*+:Example', path=mypath)
63 basic_vars = vc.inv_mass + vc.kinematics + vc.mc_truth + vc.mc_variables
66 isSignalSomething_vars = [
"isSignalAcceptWrongFSPs"]
67 isSignalSomething_vars += [
"isSignalAcceptMissingNeutrino",
"isSignalAcceptMissingMassive"]
68 isSignalSomething_vars += [
"isSignalAcceptMissingGamma",
"isSignalAcceptMissing",
"mcParticleStatus"]
74 c_MissingResonance = 2
81 c_MissMassiveParticle = 32
84 c_AddedWrongParticle = 256
88 c_AddedRecoBremsPhoton = 2048
92 vu.create_isSignal_alias(
"isSignalAcceptMissingGammaAndMissingNeutrino", [16, 8])
93 isSignalSomething_vars += [
"isSignalAcceptMissingGammaAndMissingNeutrino"]
95 vu.create_isSignal_alias(
"isSignalAcceptMissingGammaAndDecayInFlight", [c_MissGamma, c_DecayInFlight])
96 isSignalSomething_vars += [
"isSignalAcceptMissingGammaAndDecayInFlight"]
99 vm.addAlias(
"isSignalAcceptMissingNeutrinoAndWrongFSP",
"passesCut(unmask(mcErrors," +
100 "%d) == %d)" % (c_MissGamma | c_MissMassiveParticle | c_MissKlong | c_MissKlong, c_Correct))
101 isSignalSomething_vars += [
"isSignalAcceptMissingNeutrinoAndWrongFSP"]
103 basic_vars += isSignalSomething_vars
109 ma.variablesToNtuple(
'D*+:Example', basic_vars, filename=
"isSignalAcceptFlags.root",
110 treename=
'Dst', path=mypath)