herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
StoFFFFDecayer.h
1 // -*- C++ -*-
2 #ifndef HERWIG_StoFFFFDecayer_H
3 #define HERWIG_StoFFFFDecayer_H
4 //
5 // This is the declaration of the StoFFFFDecayer class.
6 //
7 
8 #include "GeneralFourBodyDecayer.h"
9 #include "ThePEG/Helicity/Vertex/AbstractSSSVertex.h"
10 #include "ThePEG/Helicity/Vertex/AbstractFFSVertex.h"
11 #include "ThePEG/Helicity/Vertex/AbstractFFVVertex.h"
12 #include "ThePEG/Helicity/Vertex/AbstractVSSVertex.h"
13 #include "ThePEG/Helicity/Vertex/AbstractVVSVertex.h"
14 
15 namespace Herwig {
16 
17 using namespace ThePEG;
18 
26 
27 public:
28 
37  virtual double me2(const int ichan, const Particle & part,
38  const ParticleVector & decay, MEOption meopt) const;
39 
40 public:
41 
48  void persistentOutput(PersistentOStream & os) const;
49 
55  void persistentInput(PersistentIStream & is, int version);
57 
64  static void Init();
65 
66 protected:
67 
74  virtual IBPtr clone() const;
75 
80  virtual IBPtr fullclone() const;
82 
83 protected:
84 
92  virtual void doinit();
94 
95 private:
96 
101  StoFFFFDecayer & operator=(const StoFFFFDecayer &) = delete;
102 
103 private:
104 
108  vector<double> sign_;
109 
117  vector<AbstractVVSVertexPtr> firstVVS_;
118 
122  vector<AbstractVSSVertexPtr> firstVSS_;
123 
127  vector<AbstractSSSVertexPtr> firstSSS_;
128 
132  vector<AbstractFFSVertexPtr> firstFFS_;
134 
142  vector<AbstractFFVVertexPtr> secondFFV_;
143 
147  vector<AbstractFFSVertexPtr> secondFFS_;
149 
157  vector<AbstractFFVVertexPtr> thirdFFV_;
158 
162  vector<AbstractFFSVertexPtr> thirdFFS_;
164 
168  mutable RhoDMatrix rho_;
169 
174 
178  mutable pair<vector<SpinorWaveFunction>,vector<SpinorBarWaveFunction> > outwave_[4];
179 
180 };
181 
182 }
183 
184 #endif /* HERWIG_StoFFFFDecayer_H */
vector< AbstractFFSVertexPtr > secondFFS_
FFS Vertex.
vector< AbstractFFSVertexPtr > thirdFFS_
FFS Vertex.
RhoDMatrix rho_
Spin density matrix.
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
vector< AbstractVSSVertexPtr > firstVSS_
VSS Vertex.
Here is the documentation of the GeneralFourBodyDecayer class.
MEOption
Enum for the matrix element option.
vector< AbstractVVSVertexPtr > firstVVS_
Potential vertices for the first step.
vector< AbstractSSSVertexPtr > firstSSS_
SSS Vertex.
vector< AbstractFFVVertexPtr > thirdFFV_
Potential vertices for the third step.
vector< AbstractFFSVertexPtr > firstFFS_
FFS Vertex.
Here is the documentation of the StoFFFFDecayer class.
-*- C++ -*-
vector< double > sign_
Signs for NO.
vector< AbstractFFVVertexPtr > secondFFV_
Potential vertices for the second step.
vector< PPtr > ParticleVector
ScalarWaveFunction swave_
Scalar wavefunction.