herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Models
General
DecayConstructor.h
1
// -*- C++ -*-
2
//
3
// DecayConstructor.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_DecayConstructor_H
10
#define HERWIG_DecayConstructor_H
11
//
12
// This is the declaration of the DecayConstructor class.
13
//
14
15
#include "ThePEG/Interface/Interfaced.h"
16
#include "NBodyDecayConstructorBase.h"
17
#include "Herwig/Decay/Radiation/DecayRadiationGenerator.h"
18
#include "DecayConstructor.fh"
19
20
namespace
Herwig
{
21
using namespace
ThePEG
;
22
34
class
DecayConstructor
:
public
Interfaced
{
35
36
public
:
37
41
DecayConstructor
() :
NBodyDecayConstructors_
(0),
42
_disableDMTags
(0),
_minBR
(0.) {}
43
44
public
:
45
52
void
persistentOutput
(
PersistentOStream
& os)
const
;
53
59
void
persistentInput
(
PersistentIStream
& is,
int
version);
61
68
static
void
Init
();
69
76
void
createDecayers
(
const
vector<PDPtr> & particles,
double
minBR);
77
83
bool
disableDecayMode
(
string
tag)
const
;
84
88
DecayRadiationGeneratorPtr
QEDGenerator
() {
return
QEDGenerator_
;}
89
94
const
vector<NBodyDecayConstructorBasePtr> &
decayConstructors
() {
95
return
NBodyDecayConstructors_
;
96
}
97
101
double
minimumBR
()
const
{
return
_minBR
;}
102
103
protected
:
104
112
virtual
void
doinit
();
114
115
protected
:
116
123
virtual
IBPtr
clone
()
const
;
124
129
virtual
IBPtr
fullclone
()
const
;
131
132
private
:
133
138
DecayConstructor
&
operator=
(
const
DecayConstructor
&) =
delete
;
139
140
private
:
141
146
vector<NBodyDecayConstructorBasePtr>
NBodyDecayConstructors_
;
147
151
vector<string>
_disableDMTags
;
152
156
DecayRadiationGeneratorPtr
QEDGenerator_
;
157
161
double
_minBR
;
162
};
163
164
}
165
166
167
#endif
/* HERWIG_DecayConstructor_H */
Herwig::DecayConstructor
The DecayConstructor class is an interfaced class that stores a vector of NBodyDecayConstructor objec...
Definition:
DecayConstructor.h:34
Herwig::DecayConstructor::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::DecayConstructor::doinit
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
Herwig::DecayConstructor::QEDGenerator_
DecayRadiationGeneratorPtr QEDGenerator_
The decay radiation generator to use for QED radiation.
Definition:
DecayConstructor.h:156
Herwig::DecayConstructor::DecayConstructor
DecayConstructor()
The default constructor.
Definition:
DecayConstructor.h:41
Herwig::DecayConstructor::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Herwig::DecayConstructor::_disableDMTags
vector< string > _disableDMTags
A list of DecayMode tags that are not to be created.
Definition:
DecayConstructor.h:151
Herwig::DecayConstructor::disableDecayMode
bool disableDecayMode(string tag) const
Check whether the decay mode given is one that should not be created.
Herwig::DecayConstructor::_minBR
double _minBR
Minimum allowed branching ratio.
Definition:
DecayConstructor.h:161
Herwig::DecayConstructor::operator=
DecayConstructor & operator=(const DecayConstructor &)=delete
The assignment operator is private and must never be called.
Herwig::DecayConstructor::createDecayers
void createDecayers(const vector< PDPtr > &particles, double minBR)
Function to create decayers.
Herwig::DecayConstructor::NBodyDecayConstructors_
vector< NBodyDecayConstructorBasePtr > NBodyDecayConstructors_
Vector of references to the objects that will construct the N-Body decays.
Definition:
DecayConstructor.h:146
Herwig::DecayConstructor::QEDGenerator
DecayRadiationGeneratorPtr QEDGenerator()
QED Generator.
Definition:
DecayConstructor.h:88
Herwig::DecayConstructor::minimumBR
double minimumBR() const
Get minimum branching ratio.
Definition:
DecayConstructor.h:101
Herwig::DecayConstructor::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Herwig::DecayConstructor::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::DecayConstructor::decayConstructors
const vector< NBodyDecayConstructorBasePtr > & decayConstructors()
Vector of references to the objects that will construct the N-Body decays.
Definition:
DecayConstructor.h:94
Herwig::DecayConstructor::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::Interfaced
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
Generated on Thu Jun 20 2024 17:50:53 for Herwig by
1.9.6