herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
Decay
WeakCurrents
KaonThreeMesonCurrent.h
1
// -*- C++ -*-
2
//
3
// KaonThreeMesonCurrent.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_KaonThreeMesonCurrent_H
10
#define HERWIG_KaonThreeMesonCurrent_H
11
//
12
// This is the declaration of the KaonThreeMesonCurrent class.
13
//
14
15
#include "ThreeMesonCurrentBase.h"
16
17
namespace
Herwig
{
18
19
using namespace
ThePEG
;
20
30
class
KaonThreeMesonCurrent
:
public
ThreeMesonCurrentBase
{
31
32
public
:
33
37
KaonThreeMesonCurrent
();
38
55
virtual
bool
createMode(
int
icharge,
unsigned
int
imode,DecayPhaseSpaceModePtr mode,
56
unsigned
int
iloc,
unsigned
int
ires,
57
DecayPhaseSpaceChannelPtr phase,Energy upp);
59
66
virtual
void
dataBaseOutput(ofstream & os,
bool
header,
bool
create)
const
;
67
80
double
threeBodyMatrixElement(
const
int
imode,
const
Energy2 q2,
81
const
Energy2 s3,
const
Energy2 s2,
82
const
Energy2 s1,
const
Energy m1,
83
const
Energy m2,
const
Energy m3)
const
;
84
85
protected
:
86
91
virtual
bool
acceptMode(
int
)
const
;
92
103
virtual
FormFactors
calculateFormFactors(
const
int
ichan,
const
int
imode,
104
Energy2 q2,Energy2 s1,Energy2 s2,Energy2 s3)
const
;
105
106
public
:
107
114
void
persistentOutput(
PersistentOStream
& os)
const
;
115
121
void
persistentInput(
PersistentIStream
& is,
int
version);
123
130
static
void
Init();
131
132
protected
:
133
140
virtual
IBPtr
clone()
const
;
141
146
virtual
IBPtr
fullclone()
const
;
148
149
protected
:
150
158
virtual
void
doinit();
159
163
virtual
void
doinitrun();
164
168
virtual
void
doupdate();
170
171
private
:
172
177
KaonThreeMesonCurrent
& operator=(
const
KaonThreeMesonCurrent
&) =
delete
;
178
179
private
:
180
186
Complex
Trho1(Energy2 q2,
int
ires)
const
;
187
193
Complex
Trho2(Energy2 q2,
int
ires)
const
;
194
200
Complex
TKstar1(Energy2 q2,
int
ires)
const
;
201
207
Complex
TKstar2(Energy2 q2,
int
ires)
const
;
208
214
Complex
BWrho1(Energy2 q2,
unsigned
int
ires)
const
;
215
221
Complex
BWrho2(Energy2 q2,
unsigned
int
ires)
const
;
222
228
Complex
BWKstar1(Energy2 q2,
unsigned
int
ires)
const
;
229
235
Complex
BWKstar2(Energy2 q2,
unsigned
int
ires)
const
;
236
242
Complex
a1BreitWigner(Energy2 q2)
const
;
243
250
Complex
TK1(Energy2 q2,
unsigned
int
iopt,
int
ires)
const
;
251
258
Complex
K1BreitWigner(Energy2 q2,
unsigned
int
ires)
const
;
259
265
Energy a1Width(Energy2 q2)
const
;
266
270
double
g(Energy2 q2)
const
;
271
276
void
inita1Width(
int
iopt);
277
283
Complex
Tomega(Energy2 q2,
int
ires)
const
;
284
290
Complex
OmegaPhiBreitWigner(Energy2 q2,
unsigned
int
ires)
const
;
291
299
Complex
TOmegaKStar(Energy2 s1,Energy2 s2,
int
ires)
const
;
300
301
private
:
302
310
vector<double>
_rho1wgts
;
311
315
vector<Energy>
_rho1mass
;
316
320
vector<Energy>
_rho1width
;
322
330
vector<double>
_rho2wgts
;
331
335
vector<Energy>
_rho2mass
;
336
340
vector<Energy>
_rho2width
;
342
350
vector<double>
_kstar1wgts
;
351
355
vector<Energy>
_kstar1mass
;
356
360
vector<Energy>
_kstar1width
;
362
370
vector<double>
_kstar2wgts
;
371
375
vector<Energy>
_kstar2mass
;
376
380
vector<Energy>
_kstar2width
;
382
390
Energy
_a1mass
;
391
395
Energy
_a1width
;
396
400
vector<Energy>
_k1mass
;
401
405
vector<Energy>
_k1width
;
406
410
vector<double>
_k1wgta
;
411
415
vector<double>
_k1wgtb
;
416
420
vector<Energy>
_a1runwidth
;
421
425
vector<Energy2>
_a1runq2
;
426
430
Interpolator<Energy,Energy2>::Ptr
_a1runinter
;
432
440
double
_epsomega
;
441
445
Energy
_omegamass
;
446
450
Energy
_omegawidth
;
451
455
Energy
_phimass
;
456
460
Energy
_phiwidth
;
462
466
double
_omegaKstarwgt
;
467
471
Energy
_fpi
;
472
476
Energy
_mpi
;
477
481
Energy
_mK
;
482
490
bool
_initializea1
;
491
495
bool
_rhoparameters
;
496
500
bool
_kstarparameters
;
501
505
bool
_a1parameters
;
506
510
bool
_k1parameters
;
511
515
bool
_a1opt
;
516
520
bool
_omegaopt
;
522
526
Energy
_maxmass
;
527
531
Energy
_maxcalc
;
532
};
533
534
}
535
536
#endif
/* HERWIG_KaonThreeMesonCurrent_H */
Herwig::KaonThreeMesonCurrent::_k1wgta
vector< double > _k1wgta
The weights for the different resonances for .
Definition:
KaonThreeMesonCurrent.h:410
ThePEG::PersistentIStream
Herwig::KaonThreeMesonCurrent::_rhoparameters
bool _rhoparameters
use local values of the masses and widths
Definition:
KaonThreeMesonCurrent.h:495
Herwig::KaonThreeMesonCurrent::_rho1mass
vector< Energy > _rho1mass
Masses.
Definition:
KaonThreeMesonCurrent.h:315
Herwig::KaonThreeMesonCurrent::_k1parameters
bool _k1parameters
Use local values of the parameters.
Definition:
KaonThreeMesonCurrent.h:510
Herwig::KaonThreeMesonCurrent::_fpi
Energy _fpi
The pion decay constant, .
Definition:
KaonThreeMesonCurrent.h:471
ThePEG::Complex
std::complex< double > Complex
Herwig::KaonThreeMesonCurrent::_a1runinter
Interpolator< Energy, Energy2 >::Ptr _a1runinter
The interpolator for the running width calculation.
Definition:
KaonThreeMesonCurrent.h:430
Herwig::KaonThreeMesonCurrent::_epsomega
double _epsomega
Parameters for the function.
Definition:
KaonThreeMesonCurrent.h:440
Herwig::KaonThreeMesonCurrent::_k1mass
vector< Energy > _k1mass
The masses of the resonances.
Definition:
KaonThreeMesonCurrent.h:400
ThePEG::PersistentOStream
Herwig::KaonThreeMesonCurrent::_maxmass
Energy _maxmass
The maximum mass of the hadronic system.
Definition:
KaonThreeMesonCurrent.h:526
Herwig::KaonThreeMesonCurrent::_phimass
Energy _phimass
Mass of the .
Definition:
KaonThreeMesonCurrent.h:455
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Herwig::Interpolator
Definition:
Interpolator.h:31
ThePEG
Herwig::KaonThreeMesonCurrent::_omegawidth
Energy _omegawidth
Width of the .
Definition:
KaonThreeMesonCurrent.h:450
Herwig::KaonThreeMesonCurrent::_a1opt
bool _a1opt
Option for the width.
Definition:
KaonThreeMesonCurrent.h:515
Herwig::KaonThreeMesonCurrent::_mK
Energy _mK
The kaon mass.
Definition:
KaonThreeMesonCurrent.h:481
Herwig::KaonThreeMesonCurrent::_maxcalc
Energy _maxcalc
The maximum mass when the running width was calculated.
Definition:
KaonThreeMesonCurrent.h:531
Herwig::KaonThreeMesonCurrent::_kstar2mass
vector< Energy > _kstar2mass
Masses.
Definition:
KaonThreeMesonCurrent.h:375
Herwig::KaonThreeMesonCurrent::_k1width
vector< Energy > _k1width
The widths of the resonances.
Definition:
KaonThreeMesonCurrent.h:405
Herwig::KaonThreeMesonCurrent::_mpi
Energy _mpi
The pion mass.
Definition:
KaonThreeMesonCurrent.h:476
Herwig::KaonThreeMesonCurrent::_kstarparameters
bool _kstarparameters
use local values of the resonances masses and widths
Definition:
KaonThreeMesonCurrent.h:500
Herwig::KaonThreeMesonCurrent::_rho2width
vector< Energy > _rho2width
Widths.
Definition:
KaonThreeMesonCurrent.h:340
Herwig::KaonThreeMesonCurrent::_a1runwidth
vector< Energy > _a1runwidth
The width for the running width calculation.
Definition:
KaonThreeMesonCurrent.h:420
Herwig::KaonThreeMesonCurrent::_rho1width
vector< Energy > _rho1width
Widths.
Definition:
KaonThreeMesonCurrent.h:320
Herwig::KaonThreeMesonCurrent::_kstar1width
vector< Energy > _kstar1width
Widths.
Definition:
KaonThreeMesonCurrent.h:360
Herwig::KaonThreeMesonCurrent::_omegamass
Energy _omegamass
Mass of the .
Definition:
KaonThreeMesonCurrent.h:445
Herwig::KaonThreeMesonCurrent::_a1runq2
vector< Energy2 > _a1runq2
The for the running width calculation.
Definition:
KaonThreeMesonCurrent.h:425
Herwig::KaonThreeMesonCurrent::_rho2mass
vector< Energy > _rho2mass
Masses.
Definition:
KaonThreeMesonCurrent.h:335
Herwig::KaonThreeMesonCurrent::_kstar1mass
vector< Energy > _kstar1mass
Masses.
Definition:
KaonThreeMesonCurrent.h:355
Herwig::KaonThreeMesonCurrent::_phiwidth
Energy _phiwidth
Width of the .
Definition:
KaonThreeMesonCurrent.h:460
Herwig::KaonThreeMesonCurrent::_initializea1
bool _initializea1
Initialization switches.
Definition:
KaonThreeMesonCurrent.h:490
Herwig::KaonThreeMesonCurrent::_a1mass
Energy _a1mass
Parameters for the three meson resonances.
Definition:
KaonThreeMesonCurrent.h:390
Herwig::KaonThreeMesonCurrent::_kstar1wgts
vector< double > _kstar1wgts
Parameters for the in the axial-vector terms.
Definition:
KaonThreeMesonCurrent.h:350
Herwig::KaonThreeMesonCurrent::_a1width
Energy _a1width
The width of the resonances.
Definition:
KaonThreeMesonCurrent.h:395
Herwig::KaonThreeMesonCurrent
The KaonThreeMesonCurrent class implements the model of M.
Definition:
KaonThreeMesonCurrent.h:30
Herwig::KaonThreeMesonCurrent::_rho1wgts
vector< double > _rho1wgts
Parameters for the in the axial-vector terms.
Definition:
KaonThreeMesonCurrent.h:310
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::KaonThreeMesonCurrent::_k1wgtb
vector< double > _k1wgtb
The weights for the different resonaces for .
Definition:
KaonThreeMesonCurrent.h:415
Herwig::ThreeMesonCurrentBase::FormFactors
Helper class for form factors.
Definition:
ThreeMesonCurrentBase.h:134
Herwig::KaonThreeMesonCurrent::_kstar2wgts
vector< double > _kstar2wgts
Parameters for the in the vector terms.
Definition:
KaonThreeMesonCurrent.h:370
Herwig::KaonThreeMesonCurrent::_rho2wgts
vector< double > _rho2wgts
Parameters for the in the vector terms.
Definition:
KaonThreeMesonCurrent.h:330
Herwig::KaonThreeMesonCurrent::_a1parameters
bool _a1parameters
Use local values of the parameters.
Definition:
KaonThreeMesonCurrent.h:505
Herwig::KaonThreeMesonCurrent::_omegaKstarwgt
double _omegaKstarwgt
The relative weight of the and where needed.
Definition:
KaonThreeMesonCurrent.h:466
Herwig::ThreeMesonCurrentBase
This is the base class for the three meson decays of the weak current.
Definition:
ThreeMesonCurrentBase.h:59
Herwig::KaonThreeMesonCurrent::_kstar2width
vector< Energy > _kstar2width
Widths.
Definition:
KaonThreeMesonCurrent.h:380
Herwig::KaonThreeMesonCurrent::_omegaopt
bool _omegaopt
Option for the parameters.
Definition:
KaonThreeMesonCurrent.h:520
Generated on Sat Apr 11 2020 14:50:30 for Herwig by
1.8.13