herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
Decay
WeakCurrents
ThreeMesonCurrentBase.h
1
// -*- C++ -*-
2
//
3
// ThreeMesonCurrentBase.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_ThreeMesonCurrentBase_H
10
#define HERWIG_ThreeMesonCurrentBase_H
11
// This is the declaration of the ThreeMesonCurrentBase class.
12
13
#include "WeakDecayCurrent.h"
14
15
namespace
Herwig
{
16
using namespace
ThePEG
;
17
59
class
ThreeMesonCurrentBase
:
public
WeakDecayCurrent
{
60
61
public
:
62
66
ThreeMesonCurrentBase
();
67
71
static
void
Init();
72
73
public
:
74
75
85
virtual
vector<LorentzPolarizationVectorE>
86
current(
const
int
imode,
const
int
ichan,Energy & scale,
87
const
ParticleVector
& decay,
DecayIntegrator::MEOption
meopt)
const
;
88
94
virtual
bool
accept(vector<int>
id
);
95
102
virtual
unsigned
int
decayMode(vector<int>
id
);
103
112
virtual
tPDVector
particles(
int
icharge,
unsigned
int
imode,
int
iq,
int
ia);
113
120
virtual
void
dataBaseOutput(ofstream & os,
bool
header,
bool
create)
const
;
121
122
protected
:
123
129
virtual
bool
acceptMode(
int
imode)
const
=0;
130
134
struct
FormFactors
{
135
139
complex<InvEnergy>
F1
;
140
144
complex<InvEnergy>
F2
;
145
149
complex<InvEnergy>
F3
;
150
154
complex<InvEnergy>
F4
;
155
159
complex<InvEnergy3>
F5
;
160
169
FormFactors
(complex<InvEnergy> f1 = InvEnergy(),
170
complex<InvEnergy> f2 = InvEnergy(),
171
complex<InvEnergy> f3 = InvEnergy(),
172
complex<InvEnergy> f4 = InvEnergy(),
173
complex<InvEnergy3> f5 = InvEnergy3())
174
: F1(f1), F2(f2), F3(f3), F4(f4), F5(f5) {}
175
};
176
186
virtual
FormFactors
calculateFormFactors(
const
int
ichan,
const
int
imode,
187
Energy2 q2,
188
Energy2 s1, Energy2 s2, Energy2 s3)
const
= 0;
189
190
private
:
191
196
ThreeMesonCurrentBase
& operator=(
const
ThreeMesonCurrentBase
&) =
delete
;
197
198
};
199
200
}
201
202
#endif
/* HERWIG_ThreeMesonCurrentBase_H */
Herwig::WeakDecayCurrent
The WeakDecayCurrent class is the base class for the hadronic currents produced in weak decays...
Definition:
WeakDecayCurrent.h:57
Herwig::ThreeMesonCurrentBase::FormFactors::F1
complex< InvEnergy > F1
Definition:
ThreeMesonCurrentBase.h:139
Herwig::ThreeMesonCurrentBase::FormFactors::F5
complex< InvEnergy3 > F5
Definition:
ThreeMesonCurrentBase.h:159
ThePEG
Herwig::DecayIntegrator::MEOption
MEOption
Enum for the matrix element option.
Definition:
DecayIntegrator.h:79
Herwig::ThreeMesonCurrentBase::FormFactors::F2
complex< InvEnergy > F2
Definition:
ThreeMesonCurrentBase.h:144
ThePEG::tPDVector
vector< tPDPtr > tPDVector
Herwig::ThreeMesonCurrentBase::FormFactors::FormFactors
FormFactors(complex< InvEnergy > f1=InvEnergy(), complex< InvEnergy > f2=InvEnergy(), complex< InvEnergy > f3=InvEnergy(), complex< InvEnergy > f4=InvEnergy(), complex< InvEnergy3 > f5=InvEnergy3())
Constructor.
Definition:
ThreeMesonCurrentBase.h:169
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::ThreeMesonCurrentBase::FormFactors
Helper class for form factors.
Definition:
ThreeMesonCurrentBase.h:134
Herwig::ThreeMesonCurrentBase::FormFactors::F4
complex< InvEnergy > F4
Definition:
ThreeMesonCurrentBase.h:154
ThePEG::ParticleVector
vector< PPtr > ParticleVector
Herwig::ThreeMesonCurrentBase
This is the base class for the three meson decays of the weak current.
Definition:
ThreeMesonCurrentBase.h:59
Herwig::ThreeMesonCurrentBase::FormFactors::F3
complex< InvEnergy > F3
Definition:
ThreeMesonCurrentBase.h:149
Generated on Sat Apr 11 2020 14:50:32 for Herwig by
1.8.13