8 #ifndef Pythia8_TauDecays_H
9 #define Pythia8_TauDecays_H
11 #include "Pythia8/Basics.h"
12 #include "Pythia8/Event.h"
13 #include "Pythia8/HelicityBasics.h"
14 #include "Pythia8/HelicityMatrixElements.h"
15 #include "Pythia8/PhysicsBase.h"
16 #include "Pythia8/PythiaComplex.h"
17 #include "Pythia8/PythiaStdlib.h"
18 #include "Pythia8/Settings.h"
27 class TauDecays :
public PhysicsBase {
32 TauDecays() : correlated(), tauExt(), tauMode(), tauMother(), tauPol(),
33 hardME(), decayME(), tau0Max(), tauMax(), rMax(), xyMax(), zMax(),
34 limitTau0(), limitTau(), limitRadius(), limitCylinder(), limitDecay() {};
41 bool decay(
int iDec,
Event& event);
44 bool internalMechanism(
Event &event);
45 bool externalMechanism(
Event &event);
48 vector<HelicityParticle> createChildren(HelicityParticle parent);
51 void isotropicDecay(vector<HelicityParticle>& p);
54 void writeDecay(
Event& event, vector<HelicityParticle>& p);
59 static const int NTRYCHANNEL, NTRYDECAY;
60 static const double WTCORRECTION[11];
66 int tauExt, tauMode, tauMother, tauPol;
69 HelicityMatrixElement* hardME;
70 HelicityMatrixElement* decayME;
73 HMETwoFermions2W2TwoFermions hmeTwoFermions2W2TwoFermions;
74 HMETwoFermions2GammaZ2TwoFermions hmeTwoFermions2GammaZ2TwoFermions;
75 HMEW2TwoFermions hmeW2TwoFermions;
76 HMEZ2TwoFermions hmeZ2TwoFermions;
77 HMEGamma2TwoFermions hmeGamma2TwoFermions;
78 HMEHiggs2TwoFermions hmeHiggs2TwoFermions;
81 HMETau2Meson hmeTau2Meson;
82 HMETau2TwoLeptons hmeTau2TwoLeptons;
83 HMETau2TwoMesonsViaVector hmeTau2TwoMesonsViaVector;
84 HMETau2TwoMesonsViaVectorScalar hmeTau2TwoMesonsViaVectorScalar;
85 HMETau2ThreePions hmeTau2ThreePions;
86 HMETau2ThreeMesonsWithKaons hmeTau2ThreeMesonsWithKaons;
87 HMETau2ThreeMesonsGeneric hmeTau2ThreeMesonsGeneric;
88 HMETau2TwoPionsGamma hmeTau2TwoPionsGamma;
89 HMETau2FourPions hmeTau2FourPions;
90 HMETau2FivePions hmeTau2FivePions;
91 HMETau2PhaseSpace hmeTau2PhaseSpace;
94 HelicityParticle in1, in2, mediator, out1, out2;
95 vector<HelicityParticle> particles;
98 double tau0Max, tauMax, rMax, xyMax, zMax;
99 bool limitTau0, limitTau, limitRadius, limitCylinder, limitDecay;
107 #endif // end Pythia8_TauDecays_H