herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.2.1
Shower
QTilde
SplittingFunctions
CMWOneOneOneSplitFn.h
1
// -*- C++ -*-
2
//
3
// CMWOneOneOneSplitFn.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_CMWOneOneOneSplitFn_H
10
#define HERWIG_CMWOneOneOneSplitFn_H
11
//
12
// This is the declaration of the CMWOneOneOneSplitFn class.
13
//
14
15
#include "OneOneOneSplitFn.h"
16
#include "Herwig/Shower/ShowerAlpha.h"
17
18
19
namespace
Herwig
{
20
21
using namespace
ThePEG
;
38
class
CMWOneOneOneSplitFn
:
public
OneOneOneSplitFn
{
39
40
public
:
41
53
virtual
double
P(
const
double
z,
const
Energy2 t,
const
IdList
& ids,
54
const
bool
mass,
const
RhoDMatrix
& rho)
const
;
55
62
virtual
double
ratioP(
const
double
z,
const
Energy2 t,
const
IdList
& ids,
63
const
bool
mass,
const
RhoDMatrix
& rho)
const
;
68
double
Kg
(Energy2 )
const
{
69
//TODO: Might be t-dependent
70
int
Nf=5;
//alpha_->Nf(t)
71
return
(3.*(67./18.-1./6.*
sqr
(Constants::pi))-5./9.*Nf);
72
}
73
75
76
public
:
77
84
void
persistentOutput(
PersistentOStream
& os)
const
;
85
91
void
persistentInput(
PersistentIStream
& is,
int
version);
93
100
static
void
Init();
101
102
103
protected
:
104
112
virtual
void
doinit
(){
113
OneOneOneSplitFn::doinit
();
114
};
116
117
private
:
118
119
// Pointer to the alpha_s object in use.
120
ShowerAlphaPtr alpha_;
121
// Provide information if the kernel is used for initial state.
122
// as the pt definition contains an additional factor of z.
123
bool
isIS_=
false
;
124
125
protected
:
126
133
virtual
IBPtr
clone
()
const
{
return
new_ptr(*
this
);}
134
139
virtual
IBPtr
fullclone
()
const
{
return
new_ptr(*
this
);}
141
142
private
:
143
148
CMWOneOneOneSplitFn
& operator=(
const
CMWOneOneOneSplitFn
&) =
delete
;
149
150
};
151
152
}
153
154
#endif
/* HERWIG_CMWOneOneOneSplitFn_H */
ThePEG::PersistentIStream
Herwig::CMWOneOneOneSplitFn::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Definition:
CMWOneOneOneSplitFn.h:133
ThePEG::PersistentOStream
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
sqr
constexpr auto sqr(const T &x) -> decltype(x *x)
ThePEG
Herwig::IdList
vector< tcPDPtr > IdList
Definition of the IdList for branchings.
Definition:
ShowerConfig.h:64
Herwig::CMWOneOneOneSplitFn::Kg
double Kg(Energy2) const
Return the correction term from: Nucl.Phys.
Definition:
CMWOneOneOneSplitFn.h:68
Herwig::OneOneOneSplitFn
This class provides the concrete implementation of the exact leading-order splitting function for ...
Definition:
OneOneOneSplitFn.h:40
Herwig::CMWOneOneOneSplitFn::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition:
CMWOneOneOneSplitFn.h:139
Herwig::SplittingFunction::doinit
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
Herwig::CMWOneOneOneSplitFn
This class provides the concrete implementation of the CMW enhanced expressions for the splitting fun...
Definition:
CMWOneOneOneSplitFn.h:38
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG::RhoDMatrix
Herwig::CMWOneOneOneSplitFn::doinit
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
Definition:
CMWOneOneOneSplitFn.h:112
Generated on Sat Apr 11 2020 14:50:29 for Herwig by
1.8.13