EvtGen
2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Loading...
Searching...
No Matches
src
EvtGenExternal
EvtTauola.cpp
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
#include "
EvtGenExternal/EvtTauola.hh
"
22
23
#include "
EvtGenBase/EvtDecayBase.hh
"
24
#include "
EvtGenBase/EvtParticle.hh
"
25
26
#include "
EvtGenModels/EvtAbsExternalGen.hh
"
27
28
#include "
EvtGenExternal/EvtExternalGenFactory.hh
"
29
30
#include <cmath>
31
#include <iostream>
32
#include <string>
33
34
std::string
EvtTauola::getName
()
const
35
{
36
return
"TAUOLA"
;
37
}
38
39
EvtDecayBase
*
EvtTauola::clone
()
const
40
{
41
return
new
EvtTauola
();
42
}
43
44
void
EvtTauola::init
()
45
{
46
}
47
48
void
EvtTauola::initProbMax
()
49
{
50
noProbMax
();
51
}
52
53
void
EvtTauola::decay
(
EvtParticle
* p )
54
{
55
// We check to see if the Tauola engine has been created before doing the decay.
56
// This should only create the full Tauola engine once, and all clones will
57
// point to the same engine.
58
59
if
( !
m_tauolaEngine
) {
60
m_tauolaEngine
=
EvtExternalGenFactory::getInstance
().
getGenerator
(
61
EvtExternalGenFactory::GenId::TauolaGenId
);
62
}
63
64
if
(
m_tauolaEngine
) {
65
m_tauolaEngine
->doDecay( p );
66
}
67
}
EvtAbsExternalGen.hh
EvtDecayBase.hh
EvtExternalGenFactory.hh
EvtParticle.hh
EvtTauola.hh
EvtDecayBase::EvtDecayBase
EvtDecayBase()=default
EvtDecayBase::noProbMax
void noProbMax()
Definition
EvtDecayBase.cpp:301
EvtExternalGenFactory::getInstance
static EvtExternalGenFactory & getInstance()
Definition
EvtExternalGenFactory.cpp:36
EvtExternalGenFactory::getGenerator
EvtAbsExternalGen * getGenerator(const GenId genId)
Definition
EvtExternalGenFactory.cpp:89
EvtExternalGenFactory::GenId::TauolaGenId
@ TauolaGenId
Definition
EvtExternalGenFactory.hh:37
EvtParticle
Definition
EvtParticle.hh:45
EvtTauola
Definition
EvtTauola.hh:32
EvtTauola::decay
void decay(EvtParticle *p) override
Definition
EvtTauola.cpp:53
EvtTauola::init
void init() override
Definition
EvtTauola.cpp:44
EvtTauola::m_tauolaEngine
EvtAbsExternalGen * m_tauolaEngine
Definition
EvtTauola.hh:44
EvtTauola::clone
EvtDecayBase * clone() const override
Definition
EvtTauola.cpp:39
EvtTauola::getName
std::string getName() const override
Definition
EvtTauola.cpp:34
EvtTauola::initProbMax
void initProbMax() override
Definition
EvtTauola.cpp:48
Generated by
1.16.1