herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Analysis
LEPMultiplicityCount.h
1
// -*- C++ -*-
2
//
3
// LEPMultiplicityCount.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_LEPMultiplicityCount_H
10
#define HERWIG_LEPMultiplicityCount_H
11
//
12
// This is the declaration of the LEPMultiplicityCount class.
13
//
14
15
#include "ThePEG/Handlers/AnalysisHandler.h"
16
#include "ThePEG/Repository/Repository.h"
17
#include "ThePEG/PDT/ParticleData.h"
18
#include "Herwig/Utilities/Histogram.h"
19
#include "MultiplicityInfo.h"
20
21
namespace
Herwig
{
22
23
using namespace
ThePEG
;
24
25
33
class
LEPMultiplicityCount
:
public
AnalysisHandler
{
34
35
public
:
36
40
LEPMultiplicityCount
();
41
42
public
:
43
63
virtual
void
analyze
(
tEventPtr
event,
long
ieve,
int
loop,
int
state
);
64
70
virtual
void
analyze
(
const
tPVector
& particles);
71
72
using
AnalysisHandler::analyze
;
74
75
public
:
76
83
void
persistentOutput
(
PersistentOStream
& os)
const
;
84
90
void
persistentInput
(
PersistentIStream
& is,
int
version);
92
99
static
void
Init
();
100
101
protected
:
102
109
virtual
IBPtr
clone
()
const
;
110
115
virtual
IBPtr
fullclone
()
const
;
117
118
protected
:
119
126
virtual
void
dofinish
();
128
129
private
:
130
135
LEPMultiplicityCount
&
operator=
(
const
LEPMultiplicityCount
&) =
delete
;
136
137
private
:
138
142
vector<long>
_particlecodes
;
143
147
vector<double>
_multiplicity
;
148
152
vector<double>
_error
;
153
157
vector<unsigned int>
_species
;
158
162
map<long,MultiplicityInfo>
_data
;
163
165
map<long,Histogram>
_histograms
;
166
170
map<int,Histogram>
_clusters
;
171
175
map<int,Histogram>
_primary
;
176
180
map<long,long>
_finalstatecount
;
181
185
map<long,long>
_collisioncount
;
186
188
bool
_makeHistograms
;
189
190
};
191
192
}
193
194
#endif
/* HERWIG_LEPMultiplicityCount_H */
Herwig::LEPMultiplicityCount
The LEPMultiplicityCount class is designed to count particle multiplicities and compare them to LEP d...
Definition:
LEPMultiplicityCount.h:33
Herwig::LEPMultiplicityCount::analyze
virtual void analyze(const tPVector &particles)
Analyze the given vector of particles.
Herwig::LEPMultiplicityCount::_data
map< long, MultiplicityInfo > _data
Map of PDG codes to multiplicity info.
Definition:
LEPMultiplicityCount.h:162
Herwig::LEPMultiplicityCount::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::LEPMultiplicityCount::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::LEPMultiplicityCount::_finalstatecount
map< long, long > _finalstatecount
Map of number of final-state particles to PDG code.
Definition:
LEPMultiplicityCount.h:180
Herwig::LEPMultiplicityCount::operator=
LEPMultiplicityCount & operator=(const LEPMultiplicityCount &)=delete
The assignment operator is private and must never be called.
Herwig::LEPMultiplicityCount::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Herwig::LEPMultiplicityCount::_multiplicity
vector< double > _multiplicity
The multiplcity.
Definition:
LEPMultiplicityCount.h:147
Herwig::LEPMultiplicityCount::_makeHistograms
bool _makeHistograms
Make histograms of cluster mass dependence.
Definition:
LEPMultiplicityCount.h:188
Herwig::LEPMultiplicityCount::_clusters
map< int, Histogram > _clusters
Histograms of the clusters after cluster splitting.
Definition:
LEPMultiplicityCount.h:170
Herwig::LEPMultiplicityCount::_primary
map< int, Histogram > _primary
Histograms of the primary clusters.
Definition:
LEPMultiplicityCount.h:175
Herwig::LEPMultiplicityCount::_species
vector< unsigned int > _species
Species of particle.
Definition:
LEPMultiplicityCount.h:157
Herwig::LEPMultiplicityCount::LEPMultiplicityCount
LEPMultiplicityCount()
The default constructor.
Herwig::LEPMultiplicityCount::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::LEPMultiplicityCount::_collisioncount
map< long, long > _collisioncount
Particles in hard process.
Definition:
LEPMultiplicityCount.h:185
Herwig::LEPMultiplicityCount::_particlecodes
vector< long > _particlecodes
The PDG codes of the particles.
Definition:
LEPMultiplicityCount.h:142
Herwig::LEPMultiplicityCount::analyze
virtual void analyze(tEventPtr event, long ieve, int loop, int state)
Analyze a given Event.
Herwig::LEPMultiplicityCount::_error
vector< double > _error
The error.
Definition:
LEPMultiplicityCount.h:152
Herwig::LEPMultiplicityCount::_histograms
map< long, Histogram > _histograms
Histograms for cluster mass dependence.
Definition:
LEPMultiplicityCount.h:165
Herwig::LEPMultiplicityCount::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Herwig::LEPMultiplicityCount::dofinish
virtual void dofinish()
Finalize this object.
ThePEG::AnalysisHandler
ThePEG::AnalysisHandler::analyze
virtual void analyze(tEventPtr event, long ieve, int loop, int state)
ThePEG::InterfacedBase::state
InitState state() const
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::tEventPtr
ThePEG::Ptr< Event >::transient_pointer tEventPtr
ThePEG::tPVector
vector< tPPtr > tPVector
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6