evtgen is hosted by Hepforge, IPPP Durham
EvtGen  2.0.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
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 
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 : public EvtDecayIncoherent {
38  public:
39  EvtPythia();
40  ~EvtPythia();
41 
42  std::string getName() override;
43 
44  EvtDecayBase* clone() override;
45 
46  void initProbMax() override;
47 
48  void init() override;
49 
50  void decay( EvtParticle* p ) override;
51 
52  std::string commandName() override;
53  void command( std::string ) override;
54 
55  protected:
57 
58  private:
59  void fixPolarisations( EvtParticle* p );
60  std::vector<std::string> _commandList;
61 };
62 
63 #endif
std::string commandName() override
Definition: EvtPythia.cpp:138
EvtAbsExternalGen * _pythiaEngine
Definition: EvtPythia.hh:56
EvtDecayBase * clone() override
Definition: EvtPythia.cpp:55
void command(std::string) override
Definition: EvtPythia.cpp:148
std::vector< std::string > _commandList
Definition: EvtPythia.hh:60
void fixPolarisations(EvtParticle *p)
Definition: EvtPythia.cpp:92
void init() override
Definition: EvtPythia.cpp:60
void initProbMax() override
Definition: EvtPythia.cpp:67
std::string getName() override
Definition: EvtPythia.cpp:50
void decay(EvtParticle *p) override
Definition: EvtPythia.cpp:72