evtgen
is hosted by
Hepforge
,
IPPP Durham
Home
Documentation
Downloads
Repository
Bug tracker
Join the mailing list
Contact the developers
Licence
Acknowledgements
EvtGen
2.0.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
EvtGenExternal
EvtTauolaEngine.hh
Go to the documentation of this file.
1
2
/***********************************************************************
3
* Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
4
* *
5
* This file is part of EvtGen. *
6
* *
7
* EvtGen is free software: you can redistribute it and/or modify *
8
* it under the terms of the GNU General Public License as published by *
9
* the Free Software Foundation, either version 3 of the License, or *
10
* (at your option) any later version. *
11
* *
12
* EvtGen is distributed in the hope that it will be useful, *
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15
* GNU General Public License for more details. *
16
* *
17
* You should have received a copy of the GNU General Public License *
18
* along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
19
***********************************************************************/
20
21
#ifdef EVTGEN_TAUOLA
22
23
#ifndef EVTTAUOLAENGINE_HH
24
#define EVTTAUOLAENGINE_HH
25
26
#include "
EvtGenBase/EvtDecayBase.hh
"
27
#include "
EvtGenBase/EvtId.hh
"
28
#include "
EvtGenBase/EvtParticle.hh
"
29
#include "
EvtGenBase/EvtVector4R.hh
"
30
31
#include "
EvtGenModels/EvtAbsExternalGen.hh
"
32
33
#ifdef EVTGEN_HEPMC3
34
#include "HepMC3/Relatives.h"
35
#include "HepMC3/Units.h"
36
37
#include "Tauola/TauolaHepMC3Event.h"
38
#include "Tauola/TauolaHepMC3Particle.h"
39
#else
40
#include "Tauola/TauolaHepMCEvent.h"
41
#include "Tauola/TauolaHepMCParticle.h"
42
#include "Tauola/TauolaParticle.h"
43
#endif
44
#include "
EvtGenBase/EvtHepMCEvent.hh
"
45
46
#include <map>
47
#include <vector>
48
49
// Description: Interface to the TAUOLA external generator
50
51
class
EvtTauolaEngine :
public
EvtAbsExternalGen
{
52
public
:
53
EvtTauolaEngine(
bool
useEvtGenRandom =
true
);
54
55
bool
doDecay
(
EvtParticle
* theMother )
override
;
56
57
void
initialise
()
override
;
58
59
protected
:
60
private
:
61
bool
_initialised;
62
int
_tauPDG, _nTauolaModes;
63
int
_neutPropType, _posPropType, _negPropType;
64
65
GenParticlePtr
createGenParticle(
EvtParticle
* theParticle );
66
67
void
setUpPossibleTauModes();
68
void
setOtherParameters();
69
70
int
getModeInt(
EvtDecayBase
* decayModel );
71
72
void
decayTauEvent(
EvtParticle
* tauParticle );
73
};
74
75
#endif
76
77
#endif
EvtHepMCEvent.hh
GenParticlePtr
HepMC::GenParticle * GenParticlePtr
Definition:
EvtHepMCEvent.hh:54
EvtId.hh
EvtDecayBase.hh
EvtVector4R.hh
EvtParticle.hh
EvtDecayBase
Definition:
EvtDecayBase.hh:34
EvtAbsExternalGen
Definition:
EvtAbsExternalGen.hh:28
EvtAbsExternalGen::initialise
virtual void initialise()=0
EvtAbsExternalGen::doDecay
virtual bool doDecay(EvtParticle *theMother)=0
EvtAbsExternalGen.hh
EvtParticle
Definition:
EvtParticle.hh:46
Generated by
1.8.15