EvtGen
2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Toggle main menu visibility
Loading...
Searching...
No Matches
EvtGenExternal
EvtPythia.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
#ifndef EVTPYTHIA_HH
22
#define EVTPYTHIA_HH
23
24
#include "
EvtGenBase/EvtDecayIncoherent.hh
"
25
26
#include <string>
27
#include <vector>
28
29
class
EvtParticle
;
30
class
EvtAbsExternalGen
;
31
class
EvtDecayBase
;
32
33
// Description:
34
// Class to handle generic phase space decays not done
35
// in other decay models.
36
37
class
EvtPythia
final :
public
EvtDecayIncoherent
{
38
public
:
39
EvtPythia
() =
default
;
40
41
std::string
getName
()
const override
;
42
43
EvtDecayBase
*
clone
()
const override
;
44
45
void
initProbMax
()
override
;
46
47
void
init
()
override
;
48
49
void
decay
(
EvtParticle
* p )
override
;
50
51
std::string
commandName
()
override
;
52
void
command
( std::string )
override
;
53
54
private
:
55
void
fixPolarisations
(
EvtParticle
* p );
56
57
EvtAbsExternalGen
*
m_pythiaEngine
{
nullptr
};
58
59
std::vector<std::string>
m_commandList
;
60
};
61
62
#endif
EvtDecayIncoherent.hh
EvtAbsExternalGen
Definition
EvtAbsExternalGen.hh:28
EvtDecayBase
Definition
EvtDecayBase.hh:33
EvtDecayBase::EvtDecayBase
EvtDecayBase()=default
EvtDecayIncoherent
Definition
EvtDecayIncoherent.hh:31
EvtParticle
Definition
EvtParticle.hh:45
EvtPythia::decay
void decay(EvtParticle *p) override
Definition
EvtPythia.cpp:58
EvtPythia::clone
EvtDecayBase * clone() const override
Definition
EvtPythia.cpp:41
EvtPythia::getName
std::string getName() const override
Definition
EvtPythia.cpp:36
EvtPythia::command
void command(std::string) override
Definition
EvtPythia.cpp:134
EvtPythia::m_pythiaEngine
EvtAbsExternalGen * m_pythiaEngine
Definition
EvtPythia.hh:57
EvtPythia::commandName
std::string commandName() override
Definition
EvtPythia.cpp:124
EvtPythia::init
void init() override
Definition
EvtPythia.cpp:46
EvtPythia::fixPolarisations
void fixPolarisations(EvtParticle *p)
Definition
EvtPythia.cpp:78
EvtPythia::initProbMax
void initProbMax() override
Definition
EvtPythia.cpp:53
EvtPythia::m_commandList
std::vector< std::string > m_commandList
Definition
EvtPythia.hh:59
EvtPythia::EvtPythia
EvtPythia()=default
Generated by
1.17.0