herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Shower
UEBase.h
1
// -*- C++ -*-
2
#ifndef HERWIG_UEBase_H
3
#define HERWIG_UEBase_H
4
//
5
// This is the declaration of the UEBase class.
6
//
7
8
#include "ThePEG/Interface/Interfaced.h"
9
#include "ThePEG/Handlers/StandardXComb.fh"
10
#include "UEBase.fh"
11
12
namespace
Herwig
{
13
14
using namespace
ThePEG
;
15
25
class
UEBase
:
public
Interfaced
{
26
27
public
:
28
35
static
void
Init
();
36
43
virtual
void
initialize
() {}
44
48
virtual
bool
beamOK
()
const
= 0;
49
53
virtual
bool
softInt
()
const
{
return
false
;}
54
58
virtual
Energy
Ptmin
()
const
= 0;
59
64
virtual
InvEnergy2
beta
()
const
{
return
ZERO
;}
65
69
virtual
void
finalize
() {}
70
74
virtual
void
clean
() {}
75
80
virtual
unsigned
int
additionalHardProcs
()
const
{
return
0;}
81
87
virtual
unsigned
int
multiplicity
(
unsigned
int
i=0) = 0;
88
94
virtual
tStdXCombPtr
generate
(
unsigned
int
sel=0) = 0;
95
99
virtual
int
Algorithm
()
const
= 0;
100
104
virtual
Energy
PtForVeto
()
const
= 0;
105
110
virtual
double
colourDisrupt
()
const
{
return
0.0;}
111
116
virtual
unsigned
int
softMultiplicity
()
const
{
return
0;}
118
122
virtual
CrossSection
inelasticXSec
()
const
=0;
123
127
virtual
CrossSection
diffractiveXSec
()
const
=0;
128
132
virtual
CrossSection
nonDiffractiveXSec
()
const
=0;
133
134
private
:
135
140
UEBase
&
operator=
(
const
UEBase
&) =
delete
;
141
142
};
143
144
}
145
146
#endif
/* HERWIG_UEBase_H */
Herwig::UEBase
Abstract base class used to minimize the dependence between MPIHandler and all Shower classes.
Definition:
UEBase.h:25
Herwig::UEBase::finalize
virtual void finalize()
Some finalize code eventually.
Definition:
UEBase.h:69
Herwig::UEBase::clean
virtual void clean()
Clean up method called after each event.
Definition:
UEBase.h:74
Herwig::UEBase::generate
virtual tStdXCombPtr generate(unsigned int sel=0)=0
Generate a additional interaction for ProcessHandler sel.
Herwig::UEBase::operator=
UEBase & operator=(const UEBase &)=delete
The assignment operator is private and must never be called.
Herwig::UEBase::diffractiveXSec
virtual CrossSection diffractiveXSec() const =0
Return the diffractiv cross section (sigmaDiff) assumed by the model.
Herwig::UEBase::beamOK
virtual bool beamOK() const =0
Return true or false depending on the generator setup.
Herwig::UEBase::nonDiffractiveXSec
virtual CrossSection nonDiffractiveXSec() const =0
Return the non-diffractiv cross section (sigmaND) assumed by the model.
Herwig::UEBase::PtForVeto
virtual Energy PtForVeto() const =0
Return the value of the hard Process pt cutoff for vetoing.
Herwig::UEBase::initialize
virtual void initialize()
Some initialization code eventually.
Definition:
UEBase.h:43
Herwig::UEBase::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::UEBase::softInt
virtual bool softInt() const
Return true or false depending on whether soft interactions are enabled.
Definition:
UEBase.h:53
Herwig::UEBase::beta
virtual InvEnergy2 beta() const
Return the slope of the soft pt spectrum.
Definition:
UEBase.h:64
Herwig::UEBase::colourDisrupt
virtual double colourDisrupt() const
Return the fraction of colour disrupted subprocesses.
Definition:
UEBase.h:110
Herwig::UEBase::additionalHardProcs
virtual unsigned int additionalHardProcs() const
Return the number of different hard processes.
Definition:
UEBase.h:80
Herwig::UEBase::softMultiplicity
virtual unsigned int softMultiplicity() const
Return the soft multiplicity.
Definition:
UEBase.h:116
Herwig::UEBase::Ptmin
virtual Energy Ptmin() const =0
Return the value of the pt cutoff.
Herwig::UEBase::Algorithm
virtual int Algorithm() const =0
Return the type of algorithm.
Herwig::UEBase::inelasticXSec
virtual CrossSection inelasticXSec() const =0
Return the inelastic cross section ( sigmaND + sigmaDiff )
Herwig::UEBase::multiplicity
virtual unsigned int multiplicity(unsigned int i=0)=0
return the hard multiplicity of process i.
ThePEG::Interfaced
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::ZERO
constexpr ZeroUnit ZERO
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6