herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Shower
Base
Base/ShowerBasis.h
1
// -*- C++ -*-
2
#ifndef Herwig_ShowerBasis_H
3
#define Herwig_ShowerBasis_H
4
//
5
// This is the declaration of the ShowerBasis class.
6
//
7
8
#include "ShowerBasis.fh"
9
#include "ShowerParticle.fh"
10
#include "Herwig/Shower/ShowerConfig.h"
11
#include "
ThePEG/Config/ThePEG.h
"
12
#include "ThePEG/Vectors/Lorentz5Vector.h"
13
14
namespace
Herwig
{
15
16
using namespace
ThePEG
;
17
21
class
ShowerBasis
:
public
Base
{
22
23
public
:
24
28
enum
Frame
{BackToBack,Rest};
29
30
public
:
31
35
ShowerBasis
() {}
36
40
Frame
frame
()
const
{
return
frame_
;}
41
45
void
frame
(
Frame
frame
) {
frame_
=
frame
;}
46
53
virtual
vector<Lorentz5Momentum>
getBasis
()
const
;
54
58
void
setBasis
(
const
Lorentz5Momentum &p,
const
Lorentz5Momentum & n,
59
Frame
frame
);
60
64
const
Lorentz5Momentum &
pVector
()
const
{
return
pVector_
;}
65
69
const
Lorentz5Momentum &
nVector
()
const
{
return
nVector_
;}
70
74
Energy2
p_dot_n
()
const
{
return
pVector_
*
nVector_
;}
75
79
virtual
void
transform
(
const
LorentzRotation
& r);
80
91
Lorentz5Momentum
sudakov2Momentum
(
double
alpha,
double
beta,
92
Energy px, Energy py)
const
{
93
return
alpha*
pVector_
+ beta*
nVector_
+ px*
xPerp_
+ py*
yPerp_
;
94
}
95
96
private
:
97
102
ShowerBasis
&
operator=
(
const
ShowerBasis
&) =
delete
;
103
104
private
:
105
109
Frame
frame_
;
110
114
Lorentz5Momentum
pVector_
;
115
119
Lorentz5Momentum
nVector_
;
120
124
LorentzVector<double>
xPerp_
;
125
129
LorentzVector<double>
yPerp_
;
130
131
};
132
133
}
134
135
#endif
/* Herwig_ShowerBasis_H */
ThePEG.h
Herwig::ShowerBasis
The ShowerBasis class stores the basis vectors used by the shower.
Definition:
Base/ShowerBasis.h:21
Herwig::ShowerBasis::pVector_
Lorentz5Momentum pVector_
The reference vector.
Definition:
Base/ShowerBasis.h:114
Herwig::ShowerBasis::pVector
const Lorentz5Momentum & pVector() const
Access to the vector used to describe the kinematics.
Definition:
Base/ShowerBasis.h:64
Herwig::ShowerBasis::yPerp_
LorentzVector< double > yPerp_
y reference vector
Definition:
Base/ShowerBasis.h:129
Herwig::ShowerBasis::operator=
ShowerBasis & operator=(const ShowerBasis &)=delete
The assignment operator is private and must never be called.
Herwig::ShowerBasis::sudakov2Momentum
Lorentz5Momentum sudakov2Momentum(double alpha, double beta, Energy px, Energy py) const
Converts a Sudakov parametrization of a momentum w.r.t.
Definition:
Base/ShowerBasis.h:91
Herwig::ShowerBasis::Frame
Frame
enum for the frame definition
Definition:
Base/ShowerBasis.h:28
Herwig::ShowerBasis::p_dot_n
Energy2 p_dot_n() const
Dot product of thew basis vectors.
Definition:
Base/ShowerBasis.h:74
Herwig::ShowerBasis::frame_
Frame frame_
The frame in which the basis vectors are defined.
Definition:
Base/ShowerBasis.h:109
Herwig::ShowerBasis::xPerp_
LorentzVector< double > xPerp_
x reference vector
Definition:
Base/ShowerBasis.h:124
Herwig::ShowerBasis::frame
Frame frame() const
Access to the frame definition.
Definition:
Base/ShowerBasis.h:40
Herwig::ShowerBasis::getBasis
virtual vector< Lorentz5Momentum > getBasis() const
Implementation of the virtual function returning a set of basis vectors, specific to the type of evol...
Herwig::ShowerBasis::ShowerBasis
ShowerBasis()
The default constructor.
Definition:
Base/ShowerBasis.h:35
Herwig::ShowerBasis::nVector
const Lorentz5Momentum & nVector() const
Access to the vector used to describe the kinematics.
Definition:
Base/ShowerBasis.h:69
Herwig::ShowerBasis::nVector_
Lorentz5Momentum nVector_
The reference vector.
Definition:
Base/ShowerBasis.h:119
Herwig::ShowerBasis::transform
virtual void transform(const LorentzRotation &r)
Transform the shower kinematics (usually the reference vectors)
Herwig::ShowerBasis::setBasis
void setBasis(const Lorentz5Momentum &p, const Lorentz5Momentum &n, Frame frame)
Set the basis vectors.
Herwig::ShowerBasis::frame
void frame(Frame frame)
Set the frame definition.
Definition:
Base/ShowerBasis.h:45
ThePEG::LorentzRotation
ThePEG::LorentzVector
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::Base
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6