herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
SextetModel.h
1 // -*- C++ -*-
2 #ifndef HERWIG_SextetModel_H
3 #define HERWIG_SextetModel_H
4 //
5 // This is the declaration of the SextetModel class.
6 //
7 
8 #include "Herwig/Models/General/BSMModel.h"
9 #include "ThePEG/Helicity/Vertex/AbstractVVVVertex.h"
10 #include "ThePEG/Helicity/Vertex/AbstractVVVVVertex.h"
11 #include "ThePEG/Helicity/Vertex/AbstractFFVVertex.h"
12 #include "ThePEG/Helicity/Vertex/AbstractFFSVertex.h"
13 #include "ThePEG/Helicity/Vertex/AbstractVSSVertex.h"
14 #include "ThePEG/Helicity/Vertex/AbstractVVSSVertex.h"
15 #include "SextetModel.fh"
16 
17 namespace Herwig {
18 
19 using namespace ThePEG;
20 
29 class SextetModel: public BSMModel {
30 
31 public:
32 
36  SextetModel() : g1L_(3,0.), g1R_(3,0.), g1pR_(3,0.), g1ppR_(3,0.),
37  g2_(3,0.), g2p_(3,0.), g3L_(3,0.),
38  enableScalarSingletY43_(false),enableScalarSingletY13_(false),
39  enableScalarSingletY23_(false),enableScalarTripletY13_(false),
40  enableVectorDoubletY16_(false),enableVectorDoubletY56_(false) {
41  useMe();
42  }
43 
51  const vector<double> & g1L() const {return g1L_;}
52 
56  const vector<double> & g1R() const {return g1R_;}
57 
61  const vector<double> & g1pR() const {return g1pR_;}
62 
66  const vector<double> & g1ppR() const {return g1ppR_;}
67 
71  const vector<double> & g2() const {return g2_;}
72 
76  const vector<double> & g2p() const {return g2p_;}
77 
81  const vector<double> & g3L() const {return g3L_;}
83 
91  bool ScalarSingletY43Enabled() const {return enableScalarSingletY43_;}
92 
96  bool ScalarSingletY13Enabled() const {return enableScalarSingletY13_;}
97 
101  bool ScalarSingletY23Enabled() const {return enableScalarSingletY23_;}
102 
106  bool ScalarTripletY13Enabled() const {return enableScalarTripletY13_;}
107 
111  bool VectorDoubletY16Enabled() const {return enableVectorDoubletY16_;}
112 
116  bool VectorDoubletY56Enabled() const {return enableVectorDoubletY56_;}
118 
119 public:
120 
127  void persistentOutput(PersistentOStream & os) const;
128 
134  void persistentInput(PersistentIStream & is, int version);
136 
143  static void Init();
144 
145 protected:
146 
153  virtual IBPtr clone() const;
154 
159  virtual IBPtr fullclone() const;
161 
162 protected:
163 
171  virtual void doinit();
172 
176  string doEnable(string command);
178 
179 private:
180 
185  SextetModel & operator=(const SextetModel &) = delete;
186 
187 private:
188 
197  AbstractVVVVertexPtr GVVVertex_;
198 
203  AbstractVVVVertexPtr PVVVertex_;
204 
209  AbstractVVVVVertexPtr VVVVVertex_;
210 
215  AbstractVSSVertexPtr GSSVertex_;
216 
221  AbstractVSSVertexPtr PSSVertex_;
222 
227  AbstractVVSSVertexPtr VVSSVertex_;
228 
233  AbstractFFVVertexPtr FFVVertex_;
234 
239  AbstractFFSVertexPtr FFSVertex_;
241 
249  vector<double> g1L_;
250 
254  vector<double> g1R_;
255 
259  vector<double> g1pR_;
260 
264  vector<double> g1ppR_;
265 
269  vector<double> g2_;
270 
274  vector<double> g2p_;
275 
279  vector<double> g3L_;
281 
290 
295 
300 
305 
310 
316 };
317 
318 }
319 
320 #endif /* HERWIG_SextetModel_H */
const vector< double > & g1L() const
Access to the couplings.
Definition: SextetModel.h:51
const vector< double > & g2() const
The coupling to .
Definition: SextetModel.h:71
bool enableVectorDoubletY16_
Vector Doublet .
Definition: SextetModel.h:309
bool enableScalarSingletY13_
Scalar Singlet .
Definition: SextetModel.h:294
bool VectorDoubletY16Enabled() const
Vector Doublet .
Definition: SextetModel.h:111
const vector< double > & g1ppR() const
The singlet coupling to .
Definition: SextetModel.h:66
const vector< double > & g3L() const
Coupling to .
Definition: SextetModel.h:81
AbstractFFSVertexPtr FFSVertex_
Pointer to the object handling the coupling of two quarks to a scalar sextet.
Definition: SextetModel.h:239
bool enableScalarSingletY23_
Scalar Singlet .
Definition: SextetModel.h:299
AbstractVSSVertexPtr GSSVertex_
Pointer to the object handling the strong coupling of a scalar sextet to one gluon.
Definition: SextetModel.h:215
bool ScalarSingletY13Enabled() const
Scalar Singlet .
Definition: SextetModel.h:96
bool ScalarTripletY13Enabled() const
Scalar Triplet .
Definition: SextetModel.h:106
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
vector< double > g1pR_
The singlet coupling to .
Definition: SextetModel.h:259
vector< double > g2p_
The coupling to .
Definition: SextetModel.h:274
vector< double > g3L_
Coupling to .
Definition: SextetModel.h:279
vector< double > g1R_
The singlet coupling to .
Definition: SextetModel.h:254
const vector< double > & g1R() const
The singlet coupling to .
Definition: SextetModel.h:56
AbstractVVVVertexPtr PVVVertex_
Pointer to the object handling the EM coupling of a vector sextet to one photon.
Definition: SextetModel.h:203
This class is used instead of the StandardModel class for the.
Definition: SextetModel.h:29
AbstractVVSSVertexPtr VVSSVertex_
Pointer to the object handling the strong coupling of a scalar sextet to two gluons.
Definition: SextetModel.h:227
Here is the documentation of the BSMModel class.
Definition: BSMModel.h:21
bool ScalarSingletY43Enabled() const
Switches to decide which particles to include.
Definition: SextetModel.h:91
const vector< double > & g1pR() const
The singlet coupling to .
Definition: SextetModel.h:61
AbstractVVVVVertexPtr VVVVVertex_
Pointer to the object handling the strong coupling of a vector sextet to two gluons.
Definition: SextetModel.h:209
AbstractVVVVertexPtr GVVVertex_
Pointers to the vertex objects.
Definition: SextetModel.h:197
bool enableVectorDoubletY56_
Vector Doublet .
Definition: SextetModel.h:314
bool enableScalarSingletY43_
Switches to decide which particles to include.
Definition: SextetModel.h:289
bool ScalarSingletY23Enabled() const
Scalar Singlet .
Definition: SextetModel.h:101
bool VectorDoubletY56Enabled() const
Vector Doublet .
Definition: SextetModel.h:116
AbstractVSSVertexPtr PSSVertex_
Pointer to the object handling the EM coupling of a scalar sextet to one photon.
Definition: SextetModel.h:221
AbstractFFVVertexPtr FFVVertex_
Pointer to the object handling the coupling of two quarks to a vector sextet.
Definition: SextetModel.h:233
-*- C++ -*-
SextetModel()
The default constructor.
Definition: SextetModel.h:36
vector< double > g2_
The coupling to .
Definition: SextetModel.h:269
bool enableScalarTripletY13_
Scalar Triplet .
Definition: SextetModel.h:304
vector< double > g1L_
Couplings.
Definition: SextetModel.h:249
vector< double > g1ppR_
The singlet coupling to .
Definition: SextetModel.h:264
const vector< double > & g2p() const
The coupling to .
Definition: SextetModel.h:76