Learning Objectives

  • Learn the basic structure of a decfile.

Controlling the decay: DecFiles

The DecFile controls the decay itself (i.e. what EvtGen does) as well as provide any event-type specific configuration (e.g. generator cuts). They exist in the Gen/DecFile package which we have already checked out and built in the beginning and are given as .dec files in Gen/DecFiles/dkfiles. For example, the .dec file for event-type 27175000 is Dst_D0pi,KKmumu=DecProdCut.dec:

# EventType: 27175000                                                                                                                                                                                                                                      
# Descriptor: [D*(2010)+ -> (D0 -> {K+ K- mu+ mu-}) pi+]cc                                                                                                                                                                                                 
# NickName: Dst_D0pi,KKmumu=DecProdCut                                                                                                                                                                                                                     
# Cuts: DaughtersInLHCb                                                                                                                                                                                                                                    
# Documentation: Forces the D* decay in generic b-bbar / c-cbar events + Requires products to be in LHCb acceptance                                                                                                                                        
# EndDocumentation                                                                                                                                                                                                                                         
# PhysicsWG: Charm                                                                                                                                                                                                                                         
# Tested: Yes                                                                                                                                                                                                                                              
# Responsible: Luisa Arrabito                                                                                                                                                                                                                              
# Email: unknown@<nospam>cern.ch                                                                                                                                                                                                                           
# Date: 20091215                                                                                                                                                                                                                                           
Alias MyD0 D0                                                                                                                                                                                                                                              
Alias MyantiD0 anti-D0                                                                                                                                                                                                                                     
ChargeConj MyD0 MyantiD0                                                                                                                                                                                                                                   
Decay D*+sig                                                                                                                                                                                                                                               
  1.000 MyD0  pi+    VSS;                                                                                                                                                                                                                                  
CDecay D*-sig                                                                                                                                                                                                                                              
Decay MyD0                                                                                                                                                                                                                                                 
  1.000 K+ K- mu+ mu- PHSP;                                                                                                                                                                                                                                
CDecay MyantiD0                                                                                                                                                                                                                                            

The commented actually contains vital information and is parsed during the compilation to create the <event-type>.py file that is given to Gauss as one of its options! The EventType is a series of flags which controls the generation. The rules for this are described in detail in LHCb-2005-034 and also a website that allows you to build/parse event-types. For example for the first digit: 1 = contains b quark, 2 = c quark, 3 = min bias …

Similarly, the document specifies the conventions for the “NickName” - which also has to be the filename. Note that once MC has been produced from a given DecFile, it is not allowed to be changed, so you never need to worry about which version of DecFiles you are looking at when trying to understand existing samples. The “Cuts” field specifies which one of a predetermined set of cut tools are used. Additional python code can be added to the resulting configuration file:

# InsertPythonCode:
# code ...
# EndInsertPythonCode

The bottom part of the decay file specifies the decay itself: This DecFile defines a signal D*+ which decays 100% to D0 pi+, and the D0 in turn decays 100% into K+, K-, mu+ and mu-. Important is the definition of “MyD0”. If the decay was to “D0” rather than “MyD0”, the D0 would decay via all of the decay modes implemented in DECAY.DEC. The final part of each decay is the actual physics model used - in this case “VSS”, the generic matrix element for vector to scaler-scaler transitions, and “PHSP”, which is phase space only (matrix element = constant). Note that with PHSP, the decay products are completely unpolarized - for anything other than (spin0) to (spin0 spin0) this will get the angular momentum wrong!