| The Gaudi Framework v32r1 (f65d50dc)

HistoStats.h
Go to the documentation of this file.
1 #ifndef GAUDIUTILS_HISTOSTATS_H
2 #define GAUDIUTILS_HISTOSTATS_H 1
3 // ============================================================================
4 // Include files
5 // ============================================================================
6 // STD & STL
7 // ============================================================================
8 #include <utility>
9 // ============================================================================
10 // Gaudi
11 // ============================================================================
12 #include "GaudiKernel/Kernel.h"
13 // ============================================================================
14 // forward declarations
15 // ============================================================================
16 namespace AIDA {
17 class IHistogram1D;
18 class IProfile1D;
19 } // namespace AIDA
20 // ============================================================================
21 namespace Gaudi {
22 namespace Utils {
23 // ========================================================================
30 class GAUDI_API HistoStats {
31 public: // 1D Histograms
32 // ======================================================================
39 static double moment( const AIDA::IHistogram1D* histo, const unsigned int order, const double value = 0 );
40 // ======================================================================
47 static double momentErr( const AIDA::IHistogram1D* histo, const unsigned int order );
48 // ======================================================================
55 static double centralMoment( const AIDA::IHistogram1D* histo, const unsigned int order );
56 // ======================================================================
65 static double centralMomentErr( const AIDA::IHistogram1D* histo, const unsigned int order );
66 // ======================================================================
68 static double skewness( const AIDA::IHistogram1D* histo );
69 // ======================================================================
71 static double skewnessErr( const AIDA::IHistogram1D* histo );
72 // ======================================================================
74 static double kurtosis( const AIDA::IHistogram1D* histo );
75 // ======================================================================
77 static double kurtosisErr( const AIDA::IHistogram1D* histo );
78 // ======================================================================
80 static double mean( const AIDA::IHistogram1D* histo );
81 // ======================================================================
83 static double meanErr( const AIDA::IHistogram1D* histo );
84 // ======================================================================
86 static double rms( const AIDA::IHistogram1D* histo );
87 // ======================================================================
89 static double rmsErr( const AIDA::IHistogram1D* histo );
90 // ======================================================================
92 static double nEff( const AIDA::IHistogram1D* histo );
93 // ======================================================================
95 static double sumBinHeightErr( const AIDA::IHistogram1D* histo );
96 // ======================================================================
98 static double sumAllBinHeightErr( const AIDA::IHistogram1D* histo );
99 // ======================================================================
101 static double overflowEntriesFrac( const AIDA::IHistogram1D* histo );
103 static double underflowEntriesFrac( const AIDA::IHistogram1D* histo );
105 static double overflowEntriesFracErr( const AIDA::IHistogram1D* histo );
107 static double underflowEntriesFracErr( const AIDA::IHistogram1D* histo );
108 // ======================================================================
110 static double overflowIntegralFrac( const AIDA::IHistogram1D* histo );
112 static double underflowIntegralFrac( const AIDA::IHistogram1D* histo );
114 static double overflowIntegralFracErr( const AIDA::IHistogram1D* histo );
116 static double underflowIntegralFracErr( const AIDA::IHistogram1D* histo );
117 // ======================================================================
125 static long nEntries( const AIDA::IHistogram1D* histo, const int imax );
133 static long nEntries( const AIDA::IHistogram1D* histo,
134 const int imin, // minimal bin number (included)
135 const int imax ); // maximal bin number (not included)
136 // ======================================================================
144 static double nEntriesFrac( const AIDA::IHistogram1D* histo, const int imax );
152 static double nEntriesFrac( const AIDA::IHistogram1D* histo, const int imin, const int imax );
153 // ======================================================================
161 static double nEntriesFracErr( const AIDA::IHistogram1D* histo, const int imax );
169 static double nEntriesFracErr( const AIDA::IHistogram1D* histo, const int imin, const int imax );
170 // ======================================================================
171 public: // 1D Profile Histograms
172 // ======================================================================
179 static double moment( const AIDA::IProfile1D* histo, const unsigned int order, const double value = 0 );
180 // ======================================================================
187 static double momentErr( const AIDA::IProfile1D* histo, const unsigned int order );
188 // ======================================================================
195 static double centralMoment( const AIDA::IProfile1D* histo, const unsigned int order );
196 // ======================================================================
205 static double centralMomentErr( const AIDA::IProfile1D* histo, const unsigned int order );
206 // ======================================================================
208 static double skewness( const AIDA::IProfile1D* histo );
209 // ======================================================================
211 static double skewnessErr( const AIDA::IProfile1D* histo );
212 // ======================================================================
214 static double kurtosis( const AIDA::IProfile1D* histo );
215 // ======================================================================
217 static double kurtosisErr( const AIDA::IProfile1D* histo );
218 // ======================================================================
220 static double mean( const AIDA::IProfile1D* histo );
221 // ======================================================================
223 static double meanErr( const AIDA::IProfile1D* histo );
224 // ======================================================================
226 static double rms( const AIDA::IProfile1D* histo );
227 // ======================================================================
229 static double rmsErr( const AIDA::IProfile1D* histo );
230 // ======================================================================
232 static double sumBinHeightErr( const AIDA::IProfile1D* histo );
233 // ======================================================================
235 static double sumAllBinHeightErr( const AIDA::IProfile1D* histo );
236 // ======================================================================
238 static double nEff( const AIDA::IProfile1D* histo );
239 // ======================================================================
241 static double overflowEntriesFrac( const AIDA::IProfile1D* histo );
243 static double underflowEntriesFrac( const AIDA::IProfile1D* histo );
245 static double overflowEntriesFracErr( const AIDA::IProfile1D* histo );
247 static double underflowEntriesFracErr( const AIDA::IProfile1D* histo );
248 // ======================================================================
250 static double overflowIntegralFrac( const AIDA::IProfile1D* histo );
252 static double underflowIntegralFrac( const AIDA::IProfile1D* histo );
254 static double overflowIntegralFracErr( const AIDA::IProfile1D* histo );
256 static double underflowIntegralFracErr( const AIDA::IProfile1D* histo );
257 // ======================================================================
265 static long nEntries( const AIDA::IProfile1D* histo, const int imax );
273 static long nEntries( const AIDA::IProfile1D* histo,
274 const int imin, // minimal bin number (included)
275 const int imax ); // maximal bin number (not included)
276 // ======================================================================
284 static double nEntriesFrac( const AIDA::IProfile1D* histo, const int imax );
292 static double nEntriesFrac( const AIDA::IProfile1D* histo, const int imin, const int imax );
293 // ======================================================================
301 static double nEntriesFracErr( const AIDA::IProfile1D* histo, const int imax );
309 static double nEntriesFracErr( const AIDA::IProfile1D* histo, const int imin, const int imax );
310 // ======================================================================
311 };
312 // ========================================================================
313 } // namespace Utils
314 // ==========================================================================
315 } // end of namespace Gaudi
316 // ============================================================================
317 // The END
318 // ============================================================================
319 #endif // GAUDIUTILS_HISTOSTATS_H
Kernel.h
GaudiPython.HistoUtils.underflowIntegralFracErr
underflowIntegralFracErr
Definition: HistoUtils.py:907
GaudiPython.HistoUtils.skewness
skewness
Definition: HistoUtils.py:883
GaudiPython.HistoUtils.nEntriesFracErr
nEntriesFracErr
Definition: HistoUtils.py:914
GaudiPython.HistoUtils.kurtosis
kurtosis
Definition: HistoUtils.py:887
GaudiPython.HistoUtils.meanErr
meanErr
Definition: HistoUtils.py:877
GaudiPython.HistoUtils.moment
moment
Definition: HistoUtils.py:865
GaudiPython.HistoUtils.skewnessErr
skewnessErr
Definition: HistoUtils.py:885
GaudiPython.HistoUtils.overflowIntegralFracErr
overflowIntegralFracErr
Definition: HistoUtils.py:903
GaudiPython.HistoUtils.overflowIntegralFrac
overflowIntegralFrac
Definition: HistoUtils.py:901
GaudiPython.HistoUtils.underflowEntriesFracErr
underflowEntriesFracErr
Definition: HistoUtils.py:898
AIDA
GaudiKernel.
Definition: Fill.h:10
GaudiPython.HistoUtils.overflowEntriesFracErr
overflowEntriesFracErr
Definition: HistoUtils.py:894
GaudiPython.HistoUtils.mean
mean
Definition: HistoUtils.py:875
GaudiPython.HistoUtils.underflowIntegralFrac
underflowIntegralFrac
Definition: HistoUtils.py:905
GaudiPython.HistoUtils.centralMoment
centralMoment
Definition: HistoUtils.py:869
GaudiPython.HistoUtils.nEntriesFrac
nEntriesFrac
Definition: HistoUtils.py:912
GaudiPython.HistoUtils.nEntries
nEntries
Definition: HistoUtils.py:910
GaudiPython.HistoUtils.kurtosisErr
kurtosisErr
Definition: HistoUtils.py:889
GaudiPython.HistoUtils.momentErr
momentErr
Definition: HistoUtils.py:867
GaudiPython.HistoUtils.nEff
nEff
Definition: HistoUtils.py:873
GaudiPython.HistoUtils.centralMomentErr
centralMomentErr
Definition: HistoUtils.py:871
GaudiPython.HistoUtils.rmsErr
rmsErr
Definition: HistoUtils.py:881
Gaudi::Utils::HistoStats
The collection of trivial functions to access the statistical information for the histograms.
Definition: HistoStats.h:30
GaudiPython.HistoUtils.underflowEntriesFrac
underflowEntriesFrac
Definition: HistoUtils.py:896
GaudiPython.HistoUtils.overflowEntriesFrac
overflowEntriesFrac
Definition: HistoUtils.py:892
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:71
Gaudi
Header file for std:chrono::duration-based Counters.
Definition: __init__.py:1
GaudiPython.HistoUtils.rms
rms
Definition: HistoUtils.py:879