thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.2.1
PDT
Onium3GDecayer.h
1
// -*- C++ -*-
2
//
3
// Onium3GDecayer.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2019 Leif Lonnblad
5
//
6
// ThePEG 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 THEPEG_Onium3GDecayer_H
10
#define THEPEG_Onium3GDecayer_H
11
// This is the declaration of the Onium3GDecayer class.
12
13
#include "ThePEG/PDT/FlatDecayer.h"
14
15
namespace
ThePEG
{
16
30
class
Onium3GDecayer
:
public
FlatDecayer
{
31
32
public
:
33
39
Onium3GDecayer
() :
doShower
(true),
theMinGGMass
(2.0*GeV) {}
40
44
virtual
~Onium3GDecayer
();
46
47
public
:
48
58
virtual
bool
accept
(
const
DecayMode
& dm)
const
;
59
66
virtual
ParticleVector
decay
(
const
DecayMode
& dm,
const
Particle
& p)
const
;
67
79
virtual
double
reweight
(
const
DecayMode
& dm,
const
Particle
& parent,
80
const
ParticleVector
& children)
const
;
82
86
bool
shower
()
const
{
return
doShower
; }
87
92
Energy
minGGMass
()
const
{
return
theMinGGMass
; }
93
94
public
:
95
96
103
void
persistentOutput
(
PersistentOStream
& os)
const
;
104
110
void
persistentInput
(
PersistentIStream
& is,
int
version);
112
116
static
void
Init
();
117
118
protected
:
119
126
virtual
IBPtr
clone
()
const
;
127
132
virtual
IBPtr
fullclone
()
const
;
134
135
private
:
136
140
bool
doShower
;
141
146
Energy
theMinGGMass
;
147
148
private
:
149
153
static
ClassDescription<Onium3GDecayer>
initOnium3GDecayer
;
154
158
Onium3GDecayer
&
operator=
(
const
Onium3GDecayer
&) =
delete
;
159
160
};
161
162
}
163
164
165
namespace
ThePEG
{
166
171
template
<>
172
struct
BaseClassTrait
<Onium3GDecayer,1>:
public
ClassTraitsType
{
174
typedef
FlatDecayer
NthBase;
175
};
176
180
template
<>
181
struct
ClassTraits
<Onium3GDecayer>
182
:
public
ClassTraitsBase
<Onium3GDecayer> {
184
static
string
className() {
return
"ThePEG::Onium3GDecayer"
; }
188
static
string
library() {
return
"Onium3GDecayer.so"
; }
189
};
190
193
}
194
195
#endif
/* THEPEG_Onium3GDecayer_H */
ThePEG::PersistentIStream
PersistentIStream is used to read persistent objects from a stream where they were previously written...
Definition:
PersistentIStream.h:48
ThePEG::Onium3GDecayer::reweight
virtual double reweight(const DecayMode &dm, const Particle &parent, const ParticleVector &children) const
Give a weight to a phase space point.
ThePEG::Particle
The Particle class is used to describe an instance of a particle.
Definition:
Particle.h:83
ThePEG::Onium3GDecayer::Onium3GDecayer
Onium3GDecayer()
Default constructor.
Definition:
Onium3GDecayer.h:39
ThePEG::Onium3GDecayer::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
ThePEG::ClassTraitsType
ClassTraitsType is an empty, non-polymorphic, base class.
Definition:
ClassTraits.h:30
ThePEG::ClassDescription
A concreate implementation of ClassDescriptionBase describing a concrete class with persistent data...
Definition:
ClassDescription.h:339
ThePEG::PersistentOStream
PersistentOStream is used to write objects persistently to a stream from which they can be read in ag...
Definition:
PersistentOStream.h:51
ThePEG::Onium3GDecayer::operator=
Onium3GDecayer & operator=(const Onium3GDecayer &)=delete
Private and non-existent assignment operator.
ThePEG::Onium3GDecayer::initOnium3GDecayer
static ClassDescription< Onium3GDecayer > initOnium3GDecayer
Describe a concrete class with persistent data.
Definition:
Onium3GDecayer.h:153
ThePEG::Onium3GDecayer::decay
virtual ParticleVector decay(const DecayMode &dm, const Particle &p) const
Perform a decay for a given DecayMode and a given Particle instance.
ThePEG::Onium3GDecayer::~Onium3GDecayer
virtual ~Onium3GDecayer()
Destructor.
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
ThePEG::Onium3GDecayer::Init
static void Init()
Standard Init function used to initialize the interfaces.
ThePEG::Onium3GDecayer::clone
virtual IBPtr clone() const
Make a simple clone of this object.
ThePEG::Onium3GDecayer::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
ThePEG::Onium3GDecayer::accept
virtual bool accept(const DecayMode &dm) const
Check if this decayer can perfom the decay specified by the given decay mode.
ThePEG::Onium3GDecayer::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::Onium3GDecayer::shower
bool shower() const
Return true if the produced gluons should be showered.
Definition:
Onium3GDecayer.h:86
ThePEG::Onium3GDecayer::minGGMass
Energy minGGMass() const
Return the minimum invariant mass between two gluons in gamma-g-g decays.
Definition:
Onium3GDecayer.h:92
ThePEG::Onium3GDecayer::theMinGGMass
Energy theMinGGMass
The minimum invariant mass between two gluons in gamma-g-g decays.
Definition:
Onium3GDecayer.h:146
ThePEG::Pointer::RCPtr
RCPtr is a reference counted (smart) pointer.
Definition:
RCPtr.h:60
ThePEG::ClassTraits
The default concrete implementation of ClassTraitsBase.
Definition:
ClassTraits.h:134
ThePEG::DecayMode
The DecayMode class describes a decay channel of a particle.
Definition:
DecayMode.h:87
ThePEG::Qty< 0, 1, 0 >
ThePEG::Onium3GDecayer::doShower
bool doShower
If true the produced gluons should be showered.
Definition:
Onium3GDecayer.h:140
ThePEG::ParticleVector
vector< PPtr > ParticleVector
A vector of pointers to Particle objects.
Definition:
Containers.h:73
ThePEG::BaseClassTrait
BaseClassTraits describes the base classes of the templated class.
Definition:
ClassTraits.h:156
ThePEG::Onium3GDecayer
The Onium3GDecayer class inherits from performs FlatDecayer and will reweight the flat phase space su...
Definition:
Onium3GDecayer.h:30
ThePEG::FlatDecayer
The FlatDecayer class inrerits from the abstract Decayer class and implements the decay of a given Pa...
Definition:
FlatDecayer.h:33
ThePEG::ClassTraitsBase
The templated ClassTraitsBase class defines a set of default information about classes used by ThePEG...
Definition:
ClassTraits.h:52
Generated on Sat Apr 11 2020 14:31:17 for ThePEG by
1.8.13