herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
Shower
QTilde
ShowerConfig.h
1
// -*- C++ -*-
2
//
3
// ShowerConfig.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_ShowerConfig_H
10
#define HERWIG_ShowerConfig_H
11
//
12
// This is the declaration of the ShowerConfig class.
13
14
#include "
ThePEG/Config/ThePEG.h
"
15
#include "ThePEG/PDT/ParticleData.h"
16
#include "Herwig/Shower/QTilde/Base/ShowerParticle.fh"
17
#include "Herwig/Shower/QTilde/SplittingFunctions/SudakovFormFactor.fh"
18
#include "ThePEG/Persistency/PersistentOStream.h"
19
#include "ThePEG/Persistency/PersistentIStream.h"
20
#include "Herwig/Shower/ShowerInteraction.h"
21
22
namespace
Herwig
{
23
using namespace
ThePEG
;
24
34
typedef
Ptr<ThePEG::ColourLine>::pointer
ColinePtr
;
35
39
typedef
Ptr<ThePEG::ColourLine>::transient_pointer
tColinePtr
;
40
44
typedef
pair<ColinePtr,ColinePtr>
ColinePair
;
45
49
typedef
pair<tColinePtr,tColinePtr>
tColinePair
;
50
54
typedef
vector<ShowerParticlePtr>
ShowerParticleVector
;
55
59
typedef
vector<tShowerParticlePtr>
tShowerParticleVector
;
60
64
typedef
vector<tcPDPtr>
IdList
;
65
66
inline
ShowerInteraction
convertInteraction(
ShowerPartnerType
partner) {
67
if
(partner==ShowerPartnerType::QCDColourLine ||
68
partner==ShowerPartnerType::QCDAntiColourLine)
69
return
ShowerInteraction::QCD;
70
else
if
(partner==ShowerPartnerType::QED)
71
return
ShowerInteraction::QED;
72
else
73
return
ShowerInteraction::UNDEFINED;
74
}
75
79
struct
BranchingElement
{
80
84
BranchingElement
();
85
89
BranchingElement
(SudakovPtr sud, IdList part);
90
94
~
BranchingElement
();
95
99
SudakovPtr
sudakov
;
100
104
IdList
particles
;
105
109
IdList
conjugateParticles
;
110
114
bool
operator ==
(
const
BranchingElement
& x)
const
{
115
return
116
sudakov == x.
sudakov
&&
117
particles == x.
particles
&&
118
conjugateParticles == x.
conjugateParticles
;
119
}
120
};
121
125
typedef
multimap<long,BranchingElement>
BranchingList
;
126
130
typedef
pair<long, BranchingElement>
BranchingInsert
;
131
132
}
133
134
namespace
ThePEG
{
135
139
PersistentOStream
&
operator <<
(
PersistentOStream
& os,
140
const
Herwig::BranchingElement
& x);
141
145
PersistentIStream
&
operator >>
(
PersistentIStream
& is,
146
Herwig::BranchingElement
& x);
147
148
}
149
150
#endif // HERWIG_ShowerConfig_H
151
Herwig::tColinePtr
Ptr< ThePEG::ColourLine >::transient_pointer tColinePtr
Transient Pointer to a ColourLine.
Definition:
ShowerConfig.h:39
ThePEG::PersistentIStream
Herwig::BranchingElement
typedef to pair the SudakovFormFactor and the particles in a branching
Definition:
ShowerConfig.h:79
Herwig::tColinePair
pair< tColinePtr, tColinePtr > tColinePair
A pair of transient ColourLine pointers.
Definition:
ShowerConfig.h:49
Herwig::ShowerParticleVector
vector< ShowerParticlePtr > ShowerParticleVector
A Vector of ShowerParticle pointers.
Definition:
ShowerConfig.h:54
Herwig::ShowerPartnerType
ShowerPartnerType
Enum for the type of shower partner.
Definition:
ShowerInteraction.h:33
Herwig::ShowerInteraction
ShowerInteraction
Handy header file to be included in all Shower classes.
Definition:
ShowerInteraction.h:23
Herwig::ColinePtr
Ptr< ThePEG::ColourLine >::pointer ColinePtr
Handy header file to be included in all Shower classes.
Definition:
ShowerConfig.h:34
ThePEG::PersistentOStream
Herwig::BranchingInsert
pair< long, BranchingElement > BranchingInsert
typedef to create a structure which can be inserted into a BranchingList
Definition:
ShowerConfig.h:130
Herwig::operator==
bool operator==(const HPDiagram &x, const HPDiagram &y)
Test whether two diagrams are identical.
Definition:
HPDiagram.h:98
Herwig::BranchingElement::conjugateParticles
IdList conjugateParticles
Access to the charge conjugate particles.
Definition:
ShowerConfig.h:109
ThePEG
ThePEG.h
Herwig::BranchingList
multimap< long, BranchingElement > BranchingList
typedef to pair the PDG code of the particle and the BranchingElement
Definition:
ShowerConfig.h:125
Herwig::IdList
vector< tcPDPtr > IdList
Definition of the IdList for branchings.
Definition:
ShowerConfig.h:64
Herwig::operator<<
ostream & operator<<(ostream &, const DecayIntegrator &)
Output information on the DecayIntegrator for debugging purposes.
Herwig::ColinePair
pair< ColinePtr, ColinePtr > ColinePair
A pair of ColourLine pointers.
Definition:
ShowerConfig.h:44
Herwig::BranchingElement::particles
IdList particles
Access to the particles.
Definition:
ShowerConfig.h:104
Herwig::BranchingElement::sudakov
SudakovPtr sudakov
Access to the Sudakov.
Definition:
ShowerConfig.h:99
Herwig::operator>>
PersistentIStream & operator>>(PersistentIStream &is, map< ShowerInteraction, T, Cmp, A > &m)
Read a map with ShowerInteraction as the key.
Definition:
GeneralTwoBodyDecayer.h:288
Herwig::tShowerParticleVector
vector< tShowerParticlePtr > tShowerParticleVector
A Vector of transient ShowerParticle pointers.
Definition:
ShowerConfig.h:59
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Generated on Sat Apr 11 2020 14:50:31 for Herwig by
1.8.13