herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
FourBodyDecayConstructor.h
1 // -*- C++ -*-
2 #ifndef THEPEG_FourBodyDecayConstructor_H
3 #define THEPEG_FourBodyDecayConstructor_H
4 //
5 // This is the declaration of the FourBodyDecayConstructor class.
6 //
7 
8 #include "NBodyDecayConstructorBase.h"
9 #include "ThePEG/Helicity/Vertex/VertexBase.h"
10 #include "Herwig/Decay/General/GeneralFourBodyDecayer.fh"
11 #include "PrototypeVertex.h"
12 
13 namespace Herwig {
14 
15 using namespace ThePEG;
16 using Helicity::VertexBasePtr;
17 
25 
26 public:
27 
32  interOpt_(0), widthOpt_(1), particleType_(false) {}
33 
38 
45  virtual void DecayList(const set<PDPtr> & particles);
46 
50  virtual unsigned int numBodies() const {return 4;}
51 
55  void createDecayMode(vector<NBDiagram> &,bool,double);
56 
62  GeneralFourBodyDecayerPtr createDecayer(vector<NBDiagram> & diagrams,
63  bool inter, double symfac) const;
64 
71  string DecayerClassName(tcPDPtr incoming, const OrderedParticles & outgoing,
72  string & objname) const;
73 
74 public:
75 
82  void persistentOutput(PersistentOStream & os) const;
83 
89  void persistentInput(PersistentIStream & is, int version);
91 
98  static void Init();
99 
100 protected:
101 
108  virtual IBPtr clone() const;
109 
114  virtual IBPtr fullclone() const;
116 
117 private:
118 
123  FourBodyDecayConstructor & operator=(const FourBodyDecayConstructor &) = delete;
124 
125 private:
126 
130  unsigned int interOpt_;
131 
135  unsigned int widthOpt_;
136 
140  vector<PDPtr> particles_;
141 
146 };
147 
148 }
149 
150 #endif /* THEPEG_FourBodyDecayConstructor_H */
unsigned int widthOpt_
How to treat the widths of the intermediate particles.
FourBodyDecayConstructor()
The default constructor.
vector< PDPtr > particles_
Particles to override the default list.
Here is the documentation of the FourBodyDecayConstructor class.
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
multiset< PDPtr, ParticleOrdering > OrderedParticles
A set of ParticleData objects ordered as for the DecayMode&#39;s.
This is the base class for NBodyDecayConstructors.
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
-*- C++ -*-
unsigned int interOpt_
Option for the inclusion of intermediates.
virtual unsigned int numBodies() const
Number of outgoing lines.