Event generators

From Charm-Tau Detector
(Difference between revisions)
Jump to: navigation, search
(EvtGen)
Line 74: Line 74:
 
  parser.add_option('-e', '--energy', dest='energy',      default=0.)
 
  parser.add_option('-e', '--energy', dest='energy',      default=0.)
 
I hope the meaning of parameters is self-evident.
 
I hope the meaning of parameters is self-evident.
 +
 +
=== Dec file configuration ===
 +
Dec file consists of particle decays definition. The file has the following structure:
 +
 +
<code>Define global parameters
 +
 +
Define decays for particle_1
 +
Define decays for particle_2
 +
...
 +
 +
End</code>
 +
 +
The definition of global parameters has a simple structure:
 +
 +
<code>Define parameterName parameterValue</code>
 +
 +
For example:
 +
<code>Define alpha 1.365
 +
Define beta 0.39</code>
 +
 +
Particle aliases can be also defined. For example:
 +
 +
<code>Alias Mypi0 pi0</code>
 +
 +
Particle decays definition has the following structure:
 +
 +
<code>Decay parentParticle
 +
decayProbability daughterParticle decayModel;
 +
Enddecay</code>
 +
 +
For example:
 +
 +
<code>Decay D*+
 +
0.683 D0 pi+ VSS;
 +
0.306 D+ pi0 VSS;
 +
0.011 D+ gamma VSP_PWAVE;
 +
Enddecay</code>
 +
 +
There are the following decay models:
 +
* Semileptonic decays:
 +
** HQET - Heavy Quark Effective Theory inspired form factor param.
 +
** ISGW, ISGW2 - Quark model based prediction, Isgur, Scora et al.
 +
** MELIKHOV - Quark model based prediction
 +
** SLPOLE - Generic spcification of form factors based on a lattice inspired parametrization.
 +
** VUB - For generic b->ulnu decays, uses JetSet for fragmentation.
 +
** GOITY_ROBERTS - Decays to non resonant D(*)pi lnu.
 +
 +
* CP violation in B decays
 +
** SSD_CP - generic model for two-body decays that are common final states of the B0 and the anti-B0. Includes effects of both the mass and width differences and should apply equally well to the B_s system.
 +
** SVV_CPLH - Model for decays with two vectors in the final state, e.g. B_s -> J/psi phi.
 +
** BTO3PI_CP, BTO4PI_CP, BTO2PI_CP_ISO, BTOKPI_CP_ISO specialized models.
 +
 +
* Generic amplitudes
 +
** HELAMP, PARTWAVE - generic two-body decays specified by the helicity or partial wave amplitudes.
 +
** SLN - Decay of scalar to lepton and neutrino.
 +
** PHSP - N-body phase space.
 +
** SVS, STS - Scalar decay to vector (or tensor) and scalar.
 +
** VSS, TSS - decay of vector or tensor particle to a pair of scalars.
 +
** VLL, SLL - Decay of vector or scalar to two leptons.
 +
** VSP_PWAVE, vector to scalar and photon, e.g., D*->Dgamma
 +
 +
* Special matrix elements
 +
** BTOXSGAMMA - b->X_s gamma with JetSet fragmentation.
 +
** BTOXSLL - b->X_sll with JetSet fragmentation.
 +
** D_DALITZ - 3-body D-decays with substructure.
 +
** ETA_DALITZ - eta to 3pions with measured dalitz amplitude.
 +
** KSTARNUNU - B->K*nunubar
 +
** LNUGAMMA - B->lnu gamma
 +
** OMEGA_DALITZ - Dalitz structure in the omega->3-pion decay
 +
** PHI_DALITZ - Dalitz structure in the phi->3-pion decay
 +
** PTO3P - scalar to 3 scalars decay where you can specify intermediate resonances
 +
** TAUHADNU - hadronic 1, 2, and 3 pion final states.
 +
** TAULNUNU - leptonic tau decays.
 +
** VSS_BMIX - Upsilon(4S) to BBbar, including mixing.
 +
** VVPIPI - decay of vector to vector and two pions, e.g. psi'->psi+pi+pi.
 +
** VECTORISR - ISR production of vector mesons: e+e- -> V+gamma
 +
 +
To define a particle as stable:
 +
 +
<code>Decay particleName
 +
Enddecay</code>
 +
 +
There is an example of dec file:
 +
 +
<code>Alias MyD*+ D*+
 +
 +
Decay B0
 +
1.0 MyD*+ pi- SVS;
 +
Enddecay
 +
 +
Decay MyD*+
 +
1.0 D0 pi+ VSS;
 +
Enddecay
 +
 +
Decay D0
 +
Enddecay
 +
 +
End</code>
 +
 +
More details using EvtGen is in [https://indico.cern.ch/event/411269/contributions/1867718/attachments/835829/1159322/tut-all.pdf this file]
  
 
--[[User:V.S.Vorobev|V.S.Vorobev]] ([[User talk:V.S.Vorobev|talk]]) 15:00, 5 August 2019 (+07)
 
--[[User:V.S.Vorobev|V.S.Vorobev]] ([[User talk:V.S.Vorobev|talk]]) 15:00, 5 August 2019 (+07)
 
[[Category:Not_public]]
 
[[Category:Not_public]]

Revision as of 18:41, 15 September 2021

Contents

EvtGen

Default script

Script Generation/GenExamples/scripts/runevtgen.py generates Aurora script to run EvtGen. This script is added to the path and can be invoked from any place:

 runevtgen.py  

This string generates the default script ctaugen.py and produces the default output file output.root. This file contains 1000 events of inclusive psi(3770) decays in the SCT edm format.

One can run

ctaurun ctaugen.py

to invoke generator again.

Configuration

The file ctaugen.py contains two lines:

from GenWrappers.EvtGenTools import generateEvtGen
generateEvtGen(dec="",root="psi(3770)",ecms=0.0,nevt=1000,ip=[0.01, 0.01, 0.5],ofile="{CWD}/output.root"),

where ${CWD} is the path from where runevtgen.py was called.

generateEvtGen function has the following parameters:

  • dec - EvtGen users decay file. It can be one of the included in Aurora files or absolute path to your own decay file. Inclusive MC generation does not require user decay file
  • root - root particle for EvtGen. vpho (virtual photon) should be used for non-resonant processes
    • Acceptable root particles: vpho, J/psi, psi(2S), psi(3770), psi(4040), psi(4160), psi(4415). For more details see Generation/GenTools/GenWrappers/python/EvtGenTools.py in Aurora.
  • ecms - center-of-mass energy (mass of the root particle). The parameter ecms must be set for virtual photon while for other root particles (J/\psi, \psi(2S), ...) this parameter is optional. Mean mass of the root particle is adopted if ecms is omitted.
  • nevt - number if events to be gnerated
  • ip - uniform 3D smearing (in mm) for the primary vertex
  • ofile - output file name

One can change these parameters to change behaviour of EvtGen and to produce arbitrary MC sample.

Examples

Use dec file:

generateEvtGen(dec="dkpi.dec",root="psi(3770)",ecms=0,nevt=1000,ip=[0.01, 0.01, 0.5],ofile="/gcf/stark/home/razuvaev/workarea3/run/output.root")

Some example dec files available within aurora are listed below.

File name Decay chain
cont.dec
denu.dec e+e- -> psi(3770) -> [D+ -> e+ nu] D- + c.c.
dhh.dec e+e- -> psi(3770) -> [D0 -> h+ h-] [anti-D0 -> h+ h-]
dk3pi.dec e+e- -> psi(3770) -> [D0 -> K- [pi pi pi]+] anti-D0 + c.c.
tautau.dec e+e- -> gamma* -> tau+ tau-
xic0.dec e+e- -> gamma* -> Xi_c0 anti-Xi_c0
taumugamma.dec e+e- -> [tau+ -> mu+ gamma] [tau- -> X] (and c.c.)
lambdac.dec e+e- -> gamma* -> Lambda_c+ anti-Lambda_c-

All example dec files are stored in Generation/GenExamples/share/dec folder of Aurora.


An alternative approach is to invoke runevtgen.py script with command line arguments. Here is the code snippet of the parameters defined:

usage = 'evtgen.py [options]'
parser = OptionParser(usage=usage)
parser.add_option('-w', '--wdir',   dest='workdir',      default='.')
parser.add_option('-s', '--scr',    dest='scrfile',      default='ctaugen.py')
parser.add_option('-d', '--dec',    dest='decfile',      default=)
parser.add_option('-r', '--root',   dest='rootParticle', default='psi(3770)')
parser.add_option('-o', '--out',    dest='outfile',      default='output.root')
parser.add_option('-n', '--numevt', dest='nevt',         default=1000)
parser.add_option('-e', '--energy', dest='energy',       default=0.)

I hope the meaning of parameters is self-evident.

Dec file configuration

Dec file consists of particle decays definition. The file has the following structure:

Define global parameters

Define decays for particle_1
Define decays for particle_2
...

End

The definition of global parameters has a simple structure:

Define parameterName parameterValue

For example:

Define alpha 1.365
Define beta 0.39

Particle aliases can be also defined. For example:

Alias Mypi0 pi0

Particle decays definition has the following structure:

Decay parentParticle
decayProbability daughterParticle decayModel;
Enddecay

For example:

Decay D*+
0.683 D0 pi+ VSS;
0.306 D+ pi0 VSS;
0.011 D+ gamma VSP_PWAVE;
Enddecay

There are the following decay models:

  • Semileptonic decays:
    • HQET - Heavy Quark Effective Theory inspired form factor param.
    • ISGW, ISGW2 - Quark model based prediction, Isgur, Scora et al.
    • MELIKHOV - Quark model based prediction
    • SLPOLE - Generic spcification of form factors based on a lattice inspired parametrization.
    • VUB - For generic b->ulnu decays, uses JetSet for fragmentation.
    • GOITY_ROBERTS - Decays to non resonant D(*)pi lnu.
  • CP violation in B decays
    • SSD_CP - generic model for two-body decays that are common final states of the B0 and the anti-B0. Includes effects of both the mass and width differences and should apply equally well to the B_s system.
    • SVV_CPLH - Model for decays with two vectors in the final state, e.g. B_s -> J/psi phi.
    • BTO3PI_CP, BTO4PI_CP, BTO2PI_CP_ISO, BTOKPI_CP_ISO specialized models.
  • Generic amplitudes
    • HELAMP, PARTWAVE - generic two-body decays specified by the helicity or partial wave amplitudes.
    • SLN - Decay of scalar to lepton and neutrino.
    • PHSP - N-body phase space.
    • SVS, STS - Scalar decay to vector (or tensor) and scalar.
    • VSS, TSS - decay of vector or tensor particle to a pair of scalars.
    • VLL, SLL - Decay of vector or scalar to two leptons.
    • VSP_PWAVE, vector to scalar and photon, e.g., D*->Dgamma
  • Special matrix elements
    • BTOXSGAMMA - b->X_s gamma with JetSet fragmentation.
    • BTOXSLL - b->X_sll with JetSet fragmentation.
    • D_DALITZ - 3-body D-decays with substructure.
    • ETA_DALITZ - eta to 3pions with measured dalitz amplitude.
    • KSTARNUNU - B->K*nunubar
    • LNUGAMMA - B->lnu gamma
    • OMEGA_DALITZ - Dalitz structure in the omega->3-pion decay
    • PHI_DALITZ - Dalitz structure in the phi->3-pion decay
    • PTO3P - scalar to 3 scalars decay where you can specify intermediate resonances
    • TAUHADNU - hadronic 1, 2, and 3 pion final states.
    • TAULNUNU - leptonic tau decays.
    • VSS_BMIX - Upsilon(4S) to BBbar, including mixing.
    • VVPIPI - decay of vector to vector and two pions, e.g. psi'->psi+pi+pi.
    • VECTORISR - ISR production of vector mesons: e+e- -> V+gamma

To define a particle as stable:

Decay particleName
Enddecay

There is an example of dec file:

Alias MyD*+ D*+

Decay B0
1.0 MyD*+ pi- SVS;
Enddecay

Decay MyD*+
1.0 D0 pi+ VSS;
Enddecay

Decay D0
Enddecay

End

More details using EvtGen is in this file

--V.S.Vorobev (talk) 15:00, 5 August 2019 (+07)

Personal tools