herwig is hosted by Hepforge, IPPP Durham
Herwig  7.2.1
LHTPFFHVertex.h
1 // -*- C++ -*-
2 #ifndef HERWIG_LHTPFFHVertex_H
3 #define HERWIG_LHTPFFHVertex_H
4 //
5 // This is the declaration of the LHTPFFHVertex class.
6 //
7 
8 #include "LHTPModel.h"
9 #include "ThePEG/Helicity/Vertex/Scalar/FFSVertex.h"
10 
11 namespace Herwig {
12 
13 using namespace ThePEG;
14 
20 
21 public:
22 
26  LHTPFFHVertex();
27 
36  virtual void setCoupling(Energy2 q2,tcPDPtr part1,tcPDPtr part2,tcPDPtr part3);
37 
38 public:
39 
46  void persistentOutput(PersistentOStream & os) const;
47 
53  void persistentInput(PersistentIStream & is, int version);
55 
62  static void Init();
63 
64 protected:
65 
72  virtual IBPtr clone() const {return new_ptr(*this);}
73 
78  virtual IBPtr fullclone() const {return new_ptr(*this);}
80 
81 protected:
82 
88  virtual void doinit();
89 
90 private:
91 
96  LHTPFFHVertex & operator=(const LHTPFFHVertex &) = delete;
97 
98 private:
99 
103  tcLHTPModelPtr model_;
104 
112  int idLast_[2];
113 
117  Energy2 q2Last_;
118 
122  Energy massLast_[2];
123 
127  vector<complex<InvEnergy> > coup_;
128 
132  vector<complex<InvEnergy> > cL_;
133 
137  vector<complex<InvEnergy> > cR_;
139 };
140 
141 }
142 
143 #endif /* HERWIG_LHTPFFHVertex_H */
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition: LHTPFFHVertex.h:78
The LHTPFFHVertex class implements the couplings of the fermions to the Higgs bosons of the Little Hi...
Definition: LHTPFFHVertex.h:19
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Energy2 q2Last_
The last the coupling was evaluated at.
vector< complex< InvEnergy > > coup_
The factors for the individual interactions.
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr
virtual IBPtr clone() const
Make a simple clone of this object.
Definition: LHTPFFHVertex.h:72
-*- C++ -*-
vector< complex< InvEnergy > > cL_
Left coupling.
vector< complex< InvEnergy > > cR_
Right coupling.
tcLHTPModelPtr model_
Pointer to the SM object.