hej
is hosted by
Hepforge
,
IPPP Durham
HEJ
2.1.4
High energy resummation for hadron colliders
Loading...
Searching...
No Matches
include
HEJ
EWConstants.hh
Go to the documentation of this file.
1
8
#pragma once
9
10
#include <cmath>
11
#include <memory>
12
13
#include "
HEJ/PDG_codes.hh
"
14
#include "
HEJ/exceptions.hh
"
15
16
namespace
HEJ
{
18
struct
ParticleProperties
{
19
double
mass
;
20
double
width
;
21
};
22
24
class
EWConstants
{
25
public
:
27
EWConstants
() =
default
;
29
constexpr
EWConstants
(
30
double
vev
,
31
ParticleProperties
Wprop
,
32
ParticleProperties
Zprop
,
33
ParticleProperties
Hprop
34
): set_{true}, vev_{
vev
}, Wprop_{std::move(
Wprop
)},
35
Zprop_{std::move(
Zprop
)}, Hprop_{std::move(
Hprop
)}
36
{}
38
void
set_vevWZH
(
39
double
vev
,
40
ParticleProperties
Wprop
,
41
ParticleProperties
Zprop
,
42
ParticleProperties
Hprop
43
){
44
set_ =
true
; vev_=
vev
; Wprop_= std::move(
Wprop
);
45
Zprop_= std::move(
Zprop
); Hprop_= std::move(
Hprop
);
46
}
48
double
vev
()
const
{check_set();
return
vev_;}
50
ParticleProperties
const
&
Wprop
()
const
{check_set();
return
Wprop_;}
52
ParticleProperties
const
&
Zprop
()
const
{check_set();
return
Zprop_;}
54
ParticleProperties
const
&
Hprop
()
const
{check_set();
return
Hprop_;}
56
ParticleProperties
const
&
prop
(
ParticleID
const
id
)
const
{
57
using namespace
pid;
58
switch
(
id
){
59
case
Wp:
60
case
Wm:
61
return
Wprop
();
62
case
Z:
63
return
Zprop
();
64
case
h:
65
return
Hprop
();
66
default
:
67
throw
std::invalid_argument(
"No properties available for particle "
+name(
id
));
68
}
69
}
71
double
cos_tw
()
const
{
return
Wprop
().
mass
/
Zprop
().
mass
;}
73
double
cos2_tw
()
const
{
return
cos_tw
()*
cos_tw
();}
75
double
sin_tw
()
const
{
return
std::sqrt(
sin2_tw
());}
77
double
sin2_tw
()
const
{
return
1. -
cos2_tw
();}
79
double
alpha_em
()
const
{
return
e2()/4./M_PI;}
81
double
alpha_w
()
const
{
return
gw2()/2.;}
82
83
private
:
84
double
gw2()
const
{
return
4*
Wprop
().
mass
/
vev
()*
Wprop
().
mass
/
vev
();}
85
double
e2()
const
{
return
gw2()*
sin2_tw
();}
86
void
check_set()
const
{
87
if
(!set_)
throw
std::invalid_argument(
"EW constants not specified"
);
88
}
89
bool
set_{
false
};
90
double
vev_{};
91
ParticleProperties Wprop_{};
92
ParticleProperties Zprop_{};
93
ParticleProperties Hprop_{};
94
};
95
}
// namespace HEJ
PDG_codes.hh
Contains the Particle IDs of all relevant SM particles.
HEJ::EWConstants
Collection of electro-weak constants.
Definition:
EWConstants.hh:24
HEJ::EWConstants::cos_tw
double cos_tw() const
cosine of Weinberg angle
Definition:
EWConstants.hh:71
HEJ::EWConstants::vev
double vev() const
vacuum expectation value
Definition:
EWConstants.hh:48
HEJ::EWConstants::sin_tw
double sin_tw() const
sinus Weinberg angle
Definition:
EWConstants.hh:75
HEJ::EWConstants::sin2_tw
double sin2_tw() const
sinus square of Weinberg angle
Definition:
EWConstants.hh:77
HEJ::EWConstants::alpha_w
double alpha_w() const
weak coupling
Definition:
EWConstants.hh:81
HEJ::EWConstants::EWConstants
constexpr EWConstants(double vev, ParticleProperties Wprop, ParticleProperties Zprop, ParticleProperties Hprop)
initialise by Vacuum expectation value & boson properties
Definition:
EWConstants.hh:29
HEJ::EWConstants::set_vevWZH
void set_vevWZH(double vev, ParticleProperties Wprop, ParticleProperties Zprop, ParticleProperties Hprop)
set constants by Vacuum expectation value & boson properties
Definition:
EWConstants.hh:38
HEJ::EWConstants::Zprop
ParticleProperties const & Zprop() const
Properties of the Z boson.
Definition:
EWConstants.hh:52
HEJ::EWConstants::Hprop
ParticleProperties const & Hprop() const
Properties of the Higgs boson.
Definition:
EWConstants.hh:54
HEJ::EWConstants::alpha_em
double alpha_em() const
elector magnetic coupling
Definition:
EWConstants.hh:79
HEJ::EWConstants::prop
ParticleProperties const & prop(ParticleID const id) const
access Properties by boson id
Definition:
EWConstants.hh:56
HEJ::EWConstants::EWConstants
EWConstants()=default
Default constructor, values have to be initialised separately.
HEJ::EWConstants::cos2_tw
double cos2_tw() const
cosine square of Weinberg angle
Definition:
EWConstants.hh:73
HEJ::EWConstants::Wprop
ParticleProperties const & Wprop() const
Properties of the W boson.
Definition:
EWConstants.hh:50
exceptions.hh
Custom exception classes.
HEJ::pid::ParticleID
ParticleID
The possible particle identities. We use PDG IDs as standard.
Definition:
PDG_codes.hh:23
HEJ
Main HEJ 2 Namespace.
Definition:
mainpage.dox:1
HEJ::ParticleProperties
collection of basic particle properties
Definition:
EWConstants.hh:18
HEJ::ParticleProperties::mass
double mass
Mass.
Definition:
EWConstants.hh:19
HEJ::ParticleProperties::width
double width
Decay width.
Definition:
EWConstants.hh:20
Generated by
1.9.5