Event generators

From Charm-Tau Detector
(Difference between revisions)
Jump to: navigation, search
(EvtGen)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= EvtGen =
+
= Physical =
 +
* [[KKMC]]
 +
* [[KKMCee v5]]
 +
* [[EvtGen]]
  
A lot of information on EvtGen can be found here: [https://evtgen.hepforge.org/].
+
= Technical =
 
+
* [[Particle Gun]]
== Default script ==
+
Script <code>Generation/GenExamples/scripts/runevtgen.py</code> generates Aurora script to run <code>EvtGen</code>. This script is added to the path and can be invoked from any place:
+
<code> runevtgen.py  </code>
+
 
+
This string generates the default script <code>ctaugen.py</code> and produces the default output file <code>output.root</code>. This file contains 1000 events of inclusive psi(3770) decays in the SCT edm format.
+
 
+
One can run
+
<code>ctaurun ctaugen.py</code>
+
to invoke generator again.
+
 
+
== Configuration ==
+
The file <code>ctaugen.py</code> contains two lines:
+
<code>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")</code>,
+
where ${CWD} is the path from where <code>runevtgen.py</code> was called (CWD stays for Current Working Directory).
+
 
+
<code>generateEvtGen</code> function has the following parameters:
+
* <code>dec</code> - 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
+
* <code>root</code> - root particle for EvtGen. <code>vpho</code> (virtual photon) should be used for non-resonant processes
+
** Acceptable root particles: <code>vpho</code>, <code>J/psi</code>, <code>psi(2S)</code>, <code>psi(3770)</code>, <code>psi(4040)</code>, <code>psi(4160)</code>, <code>psi(4415)</code>. For more details see Generation/GenTools/GenWrappers/python/EvtGenTools.py in Aurora.
+
* <code>ecms</code> - center-of-mass energy (mass of the root particle). The parameter <code>ecms</code> must be set for virtual photon while for other root particles (<math>J/\psi</math>, <math>\psi(2S)</math>, ...) this parameter is optional. Mean mass of the root particle is adopted if <code>ecms</code> is omitted.
+
* <code>nevt</code> - number if events to be gnerated
+
* <code>ip</code> - uniform 3D smearing (in mm) for the primary vertex
+
* <code>ofile</code> - output file name
+
One can change these parameters to change behaviour of EvtGen and to produce arbitrary MC sample.
+
 
+
=== Examples ===
+
 
+
Use dec file:
+
<code>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")</code>
+
Some example dec files available within aurora are listed below.
+
{| class="wikitable"
+
|-
+
! 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 <code>Generation/GenExamples/share/dec</code> folder of Aurora.
+
 
+
 
+
An alternative approach is to invoke <code>runevtgen.py</code> 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:
+
 
+
<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)
+
[[Category:Not_public]]
+

Latest revision as of 11:26, 19 July 2024

[edit] Physical

[edit] Technical

Personal tools