herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
ADDModelFFWGRVertex.h
1// -*- C++ -*-
2//
3// ADDModelFFWGRVertex.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4// Copyright (C) 2002-2019 The Herwig Collaboration
5//
6// Herwig is licenced under version 3 of the GPL, see COPYING for details.
7// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8//
9#ifndef HERWIG_ADDModelFFWGRVertex_H
10#define HERWIG_ADDModelFFWGRVertex_H
11//
12// This is the declaration of the ADDModelFFWGRVertex class.
13
14#include "ThePEG/Helicity/Vertex/Tensor/FFVTVertex.h"
15#include "ADDModel.h"
16
17namespace Herwig {
18using namespace ThePEG;
19
29
30public:
31
36
45 virtual void setCoupling(Energy2 q2,tcPDPtr part1,tcPDPtr part2,
46 tcPDPtr part3, tcPDPtr part4);
47
48public:
49
57
63 void persistentInput(PersistentIStream & is, int version);
65
69 static void Init();
70
71protected:
72
79 virtual IBPtr clone() const {return new_ptr(*this);}
80
85 virtual IBPtr fullclone() const {return new_ptr(*this);}
87
88protected:
89
95 virtual void doinit();
96
105 virtual Complex propagator(int iopt, Energy2 q2,tcPDPtr part,
106 Energy mass=-GeV, Energy width=-GeV);
107
108private:
109
114
115private:
116
124 vector<double> charge_;
125
129 vector<double> gl_;
130
134 vector<double> gr_;
135
139 vector<vector<Complex> > ckm_;
140
145
149 Energy2 q2last_;
150
154 InvEnergy kappa_;
155
159 Energy r_;
161};
162}
163
164#endif /* HERWIG_ADDModelFFWGRVertex_H */
This is the implementation of the fermion-antifermion-vector-graviton vertex for the Randell-Sundrum ...
vector< double > gr_
The right couplings of the Standard Model fermions.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
ADDModelFFWGRVertex & operator=(const ADDModelFFWGRVertex &)=delete
Private and non-existent assignment operator.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Complex couplast_
The last value of the coupling/.
virtual void setCoupling(Energy2 q2, tcPDPtr part1, tcPDPtr part2, tcPDPtr part3, tcPDPtr part4)
Calculate the couplings.
virtual Complex propagator(int iopt, Energy2 q2, tcPDPtr part, Energy mass=-GeV, Energy width=-GeV)
Calculate the propagator for a diagram.
vector< double > gl_
The left couplings of the Standard Model fermions.
static void Init()
Standard Init function used to initialize the interfaces.
virtual void doinit()
Initialize this object after the setup phase before saving and EventGenerator to disk.
Energy r_
Mass ratio for the propagator.
vector< vector< Complex > > ckm_
The elements of the CKM matrix.
InvEnergy kappa_
The graviton coupling.
Energy2 q2last_
The last value of the scale, .
vector< double > charge_
Storage of the couplings.
ADDModelFFWGRVertex()
Default constructor.
virtual IBPtr clone() const
Make a simple clone of this object.
-*- C++ -*-
std::complex< double > Complex
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::Ptr< ParticleData >::transient_const_pointer tcPDPtr