130 likes | 339 Views
EvtGen Interface with the LHCb Simulation Software. Patrick Robbe, LAL Orsay, GENSER Meeting, 25 Nov 2004. Introduction. LHCb uses EvtGen to generate Monte Carlo samples, in particular samples containing decays of B hadrons ( B 0 , B + , B s 0 , B c + , L b )
E N D
EvtGen Interface with the LHCb Simulation Software Patrick Robbe, LAL Orsay, GENSER Meeting, 25 Nov 2004
Introduction • LHCb uses EvtGen to generate Monte Carlo samples, in particular samples containing decays of B hadrons(B0, B+, Bs0, Bc+, Lb) • In this talk, presentation of the interface between EvtGen and the LHCb Simulation software to illustrate what are the important features needed in the LHCb Generation process.
Goals of the Generation Phase in LHCb • Generation of 3 types of events: • Minimum Bias (MB) events, where all particles decay generically. • Inclusive B (or D) events, extracted from the MB sample, with at least one B or B in 400 mrad with respect to the z axis. All particles decay generically. • Signal B (or J/y or D) events, with one B or one B forced to decay to the signal decay mode and within 400 mrad of the z axis. All other particles decay generically. • All types of events are generated with pile-up: each event is added to MB events, the number of interactions per event is determined by the beam parameters.
Tools • Two Monte Carlo generators: PYTHIA and EvtGen but with a framework which is general enough to be able to use other generators (Herwig for example). • HepMC to store parameters of generated particles and to communicate between all different parts of the Generation software: • Store mother/daughter links, position 4-vector, momentum 4-vector and status code (to recognize between stable/unstable particle or between particles generated by PYTHIA/EvtGen). • Tools available in PYTHIA and HepMC to convert between PYTHIA events and HepMC events (through HEPEVT common block). • “LHCb made” conversion from EvtParticle to HepMC events. • In the future, study how to deal with polarization.
Issues (1) • Particle Properties: they must be identical in all parts of the LHCb software. • Solution: • all particles properties are stored in a single place and are available from a “Particle Property Service”. • A temporary evt.pdl file (file used by EvtGen as input for the particle properties) is created at the beginning of the job from the Particle Property Service and is read by EvtGen. • The particle property service gives: PDG Id, Mass, Width, Mass cut-off and Name in EvtGen. • Other informations needed by EvtGen are: Lifetime (deduced from Width), spin and charge (deduced from PDG Id). • Inside EvtGen, particle properties are transmitted to PYTHIA.
Issues (2) • Coherence: one particle must always be decayed by the same generator (PYTHIA or EvtGen but not by both). • Solution: • When a particle X is known to EvtGen (ie when there is an entry “DECAY X” in the generic or user decay file of EvtGen), it is declared stable in PYTHIA (MDCY(X,1) = 0). • EvtGen is called then to decay all stable particles in PYTHIA. • Random numbers: events must be reproducible to be able to debug. • Solution: • All parts of the Simulation software use the same random number generator which is initialized at the beginning of the event with a different seed.
Issues (3) • Excited states: the signal particle can be inside a EvtGen decay tree, for example in B**B*0 ( B0g) p+ • EvtGen has then to be called from different places in the Simulation software. • Solution: use a “shared tool” which contains all the interface to EvtGen and whose functions have HepMC objects parameters. • All algorithms will then call the sameEvtGen engine.
Example: Generation of signal B+ sample • Illustration with generation of a sample of B±J/yK± signal events. (The other B hadron decays generically) • EvtGen is setup with the decay files: • DECAY.DEC for the generic part • USER.DEC for the signal part: (B+sig is an alias for B+) Decay B+sig 1.000 MyJ/psi K+ SVS; Enddecay CDecay B-sig # Decay MyJ/psi 1.000 e+ e- PHOTOS VLL; Enddecay
Signal Sample Generation: Step 1 • Generate MB events until it contains a B+ or a B- in 400 mrad: • The B± may come from a B** decay: decay with EvtGen all B hadrons with a mass largerthan m(B+) before analyzing the event. • The probability to have the signal mode is twice [ More exactly 2-Br(B+J/yK+)] in events with bothB+ and B- than in events with only oneB±: reject (1-Brsig)/(2-Brsig) of events with only one B±. • The process keeps possible B+/B-production asymmetries.
Signal Sample Generation: Step 2 • Decay the signal B in the signal mode: • Choose the B± which will be the “signal B” randomly (with 50% probability) if there are one B+ and one B- in 400 mrad. • Substitute this “signal B” with the corresponding alias B+sig or B-sig. • Call EvtGen to decayB+sig or B-sig according to the User decay file. • [For CP Violation: allow EvtGen to flip the flavour of the signal B and keep the event only if the flavour requested by PYTHIA matches the flavour requested by EvtGen, in order to generate integrated asymmetries.]
Signal Sample Generation: Step 3 • Generate the pile-up MB interactions. • Decay all remaining undecayed particles with EvtGen, according to the generic decay file. • Store the resulting HepMC event for offline analysis (useful for tagging studies for example) • Send the generated event to the Simulation part (Geant4).
Conclusions • EvtGen successfully integrated into the LHCb Simulation software and used in Data Challenge 2004 to generate 200 Millions of events. • The interface requires only very small changes to EvtGen itself (mainly activation of incoherent mixing and CP violation). • CP violation generation still experimental and not yet used in massive productions. • Polarization issues not dealt with yet but under study.