herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
Shower
QTilde
Kinematics
ShowerKinematics.h
1
// -*- C++ -*-
2
//
3
// ShowerKinematics.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_ShowerKinematics_H
10
#define HERWIG_ShowerKinematics_H
11
//
12
// This is the declaration of the ShowerKinematics class.
13
//
14
15
#include "Herwig/Shower/QTilde/ShowerConfig.h"
16
#include "
ThePEG/Config/ThePEG.h
"
17
#include "Herwig/Shower/QTilde/SplittingFunctions/SudakovFormFactor.h"
18
#include "Herwig/Shower/QTilde/Kinematics/ShowerKinematics.fh"
19
20
namespace
Herwig
{
21
22
using namespace
ThePEG
;
23
45
class
ShowerKinematics
:
public
Base
{
46
47
public
:
48
52
ShowerKinematics
() :
Base
(),
53
_scale(), _z( 0.0 ), _phi( 0.0 ), _pt(),
54
_sudakov() {}
55
59
ShowerKinematics
(Energy scale,
double
z,
double
phi, Energy pt, tSudakovPtr sud)
60
:
Base
(),
61
_scale(scale), _z(z), _phi(phi), _pt(pt),
62
_sudakov(sud) {}
63
80
virtual
void
updateChildren(
const
tShowerParticlePtr parent,
81
const
ShowerParticleVector
& children,
82
ShowerPartnerType
partnerType)
const
;
83
84
virtual
void
resetChildren(
const
tShowerParticlePtr parent,
85
const
ShowerParticleVector
& children)
const
;
86
94
virtual
void
updateParent(
const
tShowerParticlePtr parent,
95
const
ShowerParticleVector
& children,
96
unsigned
int
pTscheme,
97
ShowerPartnerType
partnerType)
const
;
98
108
virtual
void
updateLast(
const
tShowerParticlePtr last,
109
Energy px, Energy py)
const
;
111
126
virtual
void
reconstructChildren(
const
tShowerParticlePtr parent,
127
const
ShowerParticleVector
& children)
const
;
128
135
virtual
void
reconstructParent(
const
tShowerParticlePtr parent,
136
const
ParticleVector
& children)
const
;
137
146
virtual
void
reconstructLast(
const
tShowerParticlePtr last, Energy mass=-1.*GeV)
const
;
148
149
public
:
150
158
Energy
scale
()
const
{
return
_scale; }
159
163
void
scale
(
const
Energy in) { _scale=in; }
164
168
double
z
()
const
{
return
_z; }
169
173
void
z
(
const
double
in) { _z=in; }
174
178
double
phi
()
const
{
return
_phi; }
179
183
void
phi
(
const
double
in) { _phi=in; }
184
188
Energy
pT
()
const
{
return
_pt; }
189
193
void
pT
(
const
Energy in)
const
{ _pt=in; }
195
204
tSplittingFnPtr
splittingFn
()
const
{
return
_sudakov->
splittingFn
(); }
206
214
tSudakovPtr
SudakovFormFactor
()
const
{
return
_sudakov; }
215
220
void
SudakovFormFactor
(
const
tSudakovPtr sud) { _sudakov=sud; }
222
223
private
:
224
229
ShowerKinematics
& operator=(
const
ShowerKinematics
&) =
delete
;
230
231
private
:
232
236
Energy
_scale
;
237
241
double
_z
;
242
246
double
_phi
;
247
251
mutable
Energy
_pt
;
252
256
tSudakovPtr
_sudakov
;
257
258
};
259
260
}
261
262
#endif
/* HERWIG_ShowerKinematics_H */
Herwig::ShowerKinematics::phi
double phi() const
Access the azimuthal angle, .
Definition:
ShowerKinematics.h:178
Herwig::ShowerKinematics::scale
void scale(const Energy in)
Set the scale of the splitting.
Definition:
ShowerKinematics.h:163
Herwig::ShowerKinematics::ShowerKinematics
ShowerKinematics(Energy scale, double z, double phi, Energy pt, tSudakovPtr sud)
The default constructor.
Definition:
ShowerKinematics.h:59
Herwig::ShowerParticleVector
vector< ShowerParticlePtr > ShowerParticleVector
A Vector of ShowerParticle pointers.
Definition:
ShowerConfig.h:54
ThePEG::Base
Herwig::ShowerPartnerType
ShowerPartnerType
Enum for the type of shower partner.
Definition:
ShowerInteraction.h:33
Herwig::ShowerKinematics::SudakovFormFactor
void SudakovFormFactor(const tSudakovPtr sud)
Set the SudakovFormFactor object responsible of the eventual branching of this particle.
Definition:
ShowerKinematics.h:220
Herwig::ShowerKinematics::_sudakov
tSudakovPtr _sudakov
The splitting function for the branching of the particle.
Definition:
ShowerKinematics.h:256
Herwig::ShowerKinematics::scale
Energy scale() const
Set/Get methods for the kinematic variables.
Definition:
ShowerKinematics.h:158
Herwig::ShowerKinematics::pT
void pT(const Energy in) const
Set the relative for the branching.
Definition:
ShowerKinematics.h:193
Herwig::ShowerKinematics
This is the abstract base class from which all other shower kinematics classes derive.
Definition:
ShowerKinematics.h:45
ThePEG
ThePEG.h
Herwig::ShowerKinematics::z
void z(const double in)
Set the energy fraction, .
Definition:
ShowerKinematics.h:173
Herwig::ShowerKinematics::_phi
double _phi
The azimuthal angle, .
Definition:
ShowerKinematics.h:246
Herwig::ShowerKinematics::phi
void phi(const double in)
Set the azimuthal angle, .
Definition:
ShowerKinematics.h:183
Herwig::ShowerKinematics::ShowerKinematics
ShowerKinematics()
The default constructor.
Definition:
ShowerKinematics.h:52
Herwig::ShowerKinematics::_pt
Energy _pt
The relative .
Definition:
ShowerKinematics.h:251
Herwig::ShowerKinematics::z
double z() const
Access the energy fraction, .
Definition:
ShowerKinematics.h:168
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
Herwig::ShowerKinematics::_scale
Energy _scale
The evolution variable.
Definition:
ShowerKinematics.h:236
Herwig::ShowerKinematics::SudakovFormFactor
tSudakovPtr SudakovFormFactor() const
Set and get methods for the SudakovFormFactor object.
Definition:
ShowerKinematics.h:214
Herwig::ShowerKinematics::pT
Energy pT() const
Access the relative for the branching.
Definition:
ShowerKinematics.h:188
Herwig::ShowerKinematics::splittingFn
tSplittingFnPtr splittingFn() const
Set and get methods for the SplittingFunction object.
Definition:
ShowerKinematics.h:204
ThePEG::ParticleVector
vector< PPtr > ParticleVector
Herwig::ShowerKinematics::_z
double _z
The energy fraction, .
Definition:
ShowerKinematics.h:241
Generated on Sat Apr 11 2020 14:50:31 for Herwig by
1.8.13