herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
LEPBMultiplicity.h
1// -*- C++ -*-
2//
3// LEPBMultiplicity.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_LEPBMultiplicity_H
10#define HERWIG_LEPBMultiplicity_H
11//
12// This is the declaration of the LEPBMultiplicity class.
13//
14
15#include "ThePEG/Handlers/AnalysisHandler.h"
16
17namespace Herwig {
18
19using namespace ThePEG;
20
21
31 BranchingInfo(double mult=0.,double error=0.);
32
37
41 double obsError;
42
47
52
59
65 double simError(long N,BranchingInfo den=BranchingInfo());
66
72 double nSigma(long N,BranchingInfo den=BranchingInfo());
73
79 string bargraph(long N,BranchingInfo den=BranchingInfo());
80};
81
91
92public:
93
98
99public:
100
120 virtual void analyze(tEventPtr event, long ieve, int loop, int state);
122
123public:
124
131 static void Init();
132
133protected:
134
141 virtual IBPtr clone() const {return new_ptr(*this);}
142
147 virtual IBPtr fullclone() const {return new_ptr(*this);}
149
150protected:
151
158 virtual void dofinish();
160
161private:
162
168
169private:
170
174 map<long,BranchingInfo> _data;
175};
176
177}
178
179#endif /* HERWIG_LEPBMultiplicity_H */
The LEPBBMultiplicity class is designed to compare the production rates of , , and B-baryons in B ev...
virtual IBPtr clone() const
Make a simple clone of this object.
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
LEPBMultiplicity & operator=(const LEPBMultiplicity &)=delete
The assignment operator is private and must never be called.
virtual void dofinish()
Finalize this object.
LEPBMultiplicity()
The default constructor.
map< long, BranchingInfo > _data
Map of PDG codes to multiplicity info.
virtual void analyze(tEventPtr event, long ieve, int loop, int state)
Analyze a given Event.
static void Init()
The standard Init function used to initialize the interfaces.
InitState state() const
-*- C++ -*-
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::Ptr< Event >::transient_pointer tEventPtr
Struct for the multiplcity data.
BranchingInfo(double mult=0., double error=0.)
Default constructor.
double obsBranching
The observed multiplicity.
double nSigma(long N, BranchingInfo den=BranchingInfo())
Is the result more than from the experimental result.
double simError(long N, BranchingInfo den=BranchingInfo())
The error on the average number per event.
double simBranching(long N, BranchingInfo den=BranchingInfo())
The average fraction per quark.
string bargraph(long N, BranchingInfo den=BranchingInfo())
Plot standard error in a simple barchart.
double obsError
The error on the observed multiplicity.
double sumofsquares
Sum of squares of number per event for error.
long actualCount
Number of particles of this type.