#include <HistoAxis.h>
Public Types | |
typedef Axis | axis_type |
enum | RebinType { SAMPLE = 0, SUM, AVERAGE } |
typedef Numeric | value_type |
Public Member Functions | |
template<typename Acc > | |
void | accumulateBinsInBox (const BoxND< double > &box, Acc *acc, bool calculateAverage=false) const |
const std::string & | accumulatedDataLabel () const |
template<class Point > | |
void | allBinCenters (std::vector< Point > *centers) const |
const std::vector< Axis > & | axes () const |
const Axis & | axis (const unsigned i) const |
void | binBox (unsigned long binNumber, BoxND< double > *box) const |
void | binCenter (unsigned long binNumber, double *coords, unsigned lenCoords) const |
const ArrayND< Numeric > & | binContents () const |
double | binVolume (unsigned long binNumber=0) const |
BoxND< double > | boundingBox () const |
void | clear () |
void | clearBinContents () |
void | clearOverflows () |
const Numeric & | closestBin (const double *coords, unsigned coordLength) const |
unsigned | dim () const |
template<typename Num2 , class Functor > | |
void | dispatch (const double *coords, unsigned coordLength, Num2 &weight, Functor &f) |
const Numeric & | examine (const double *coords, unsigned coordLength) const |
template<typename Num2 > | |
void | fill (const double *coords, unsigned coordLength, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (const double *coords, unsigned coordLength, const Num2 &weight) |
unsigned long | getModCount () const |
HistoND (const std::vector< Axis > &axes, const char *title=0, const char *accumulatedDataLabel=0) | |
HistoND (const Axis &xAxis, const char *title=0, const char *accumulatedDataLabel=0) | |
HistoND (const Axis &xAxis, const Axis &yAxis, const char *title=0, const char *accumulatedDataLabel=0) | |
HistoND (const Axis &xAxis, const Axis &yAxis, const Axis &zAxis, const char *title=0, const char *accumulatedDataLabel=0) | |
HistoND (const Axis &xAxis, const Axis &yAxis, const Axis &zAxis, const Axis &tAxis, const char *title=0, const char *accumulatedDataLabel=0) | |
HistoND (const Axis &xAxis, const Axis &yAxis, const Axis &zAxis, const Axis &tAxis, const Axis &vAxis, const char *title=0, const char *accumulatedDataLabel=0) | |
HistoND (const ArrayShape &shape, const BoxND< double > &boundingBox, const char *title=0, const char *accumulatedDataLabel=0) | |
template<typename Num2 , class Functor > | |
HistoND (const HistoND< Num2, Axis > &h, const Functor &f, const char *title=0, const char *accumulatedDataLabel=0) | |
template<typename Num2 > | |
HistoND (const HistoND< Num2, Axis > &h, const unsigned *indices, unsigned nIndices, const char *title=0) | |
template<typename Num2 > | |
HistoND (const HistoND< Num2, Axis > &h, const Axis &newAxis, unsigned newAxisNumber, const char *title=0) | |
template<typename Num2 > | |
HistoND (const HistoND< Num2, Axis > &h, RebinType rType, const unsigned *newBinCounts, unsigned lenNewBinCounts, const double *shifts=0, const char *title=0) | |
HistoND (const HistoND &) | |
void | incrModCount () |
double | integral () const |
bool | isSameData (const HistoND &) const |
bool | isUniformlyBinned () const |
unsigned long | nBins () const |
unsigned long | nFillsInRange () const |
unsigned long | nFillsOver () const |
unsigned long | nFillsTotal () const |
bool | operator!= (const HistoND &) const |
template<typename Num2 > | |
HistoND & | operator*= (const Num2 &r) |
template<typename Num2 > | |
HistoND< Numeric, Axis > & | operator*= (const Num2 &r) |
template<typename Num2 > | |
HistoND & | operator+= (const HistoND< Num2, Axis > &r) |
template<typename Num2 > | |
HistoND< Numeric, Axis > & | operator+= (const HistoND< Num2, Axis > &r) |
template<typename Num2 > | |
HistoND & | operator-= (const HistoND< Num2, Axis > &r) |
template<typename Num2 > | |
HistoND< Numeric, Axis > & | operator-= (const HistoND< Num2, Axis > &r) |
template<typename Num2 > | |
HistoND & | operator/= (const Num2 &r) |
template<typename Num2 > | |
HistoND< Numeric, Axis > & | operator/= (const Num2 &r) |
HistoND & | operator= (const HistoND &) |
bool | operator== (const HistoND &) const |
const ArrayND< Numeric > & | overflows () const |
void | recalculateNFillsFromData () |
void | setAccumulatedDataLabel (const char *newlabel) |
void | setAxisLabel (const unsigned axisNum, const char *newlabel) |
template<typename Num2 > | |
void | setBinContents (const Num2 *data, unsigned long dataLength, bool clearOverflows=true) |
template<typename Num2 > | |
void | setBinsToConst (const Num2 &value) |
template<typename Num2 > | |
void | setOverflows (const Num2 *data, unsigned long dataLength) |
template<typename Num2 > | |
void | setOverflowsToConst (const Num2 &value) |
void | setTitle (const char *newtitle) |
const std::string & | title () const |
HistoND | transpose (unsigned axisNum1, unsigned axisNum2) const |
double | volume () const |
template<typename Num2 > | |
void | fill (const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, double x2, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, double x2, double x3, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, double x2, double x3, double x4, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, double x2, double x3, double x4, double x5, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, double x2, double x3, double x4, double x5, double x6, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8, const Num2 &weight) |
template<typename Num2 > | |
void | fill (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8, double x9, const Num2 &weight) |
template<typename Num2 , class Functor > | |
void | dispatch (Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, double x2, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, double x2, double x3, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, double x2, double x3, double x4, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, double x2, double x3, double x4, double x5, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, double x2, double x3, double x4, double x5, double x6, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8, Num2 &weight, Functor &f) |
template<typename Num2 , class Functor > | |
void | dispatch (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8, double x9, Num2 &weight, Functor &f) |
const Numeric & | examine () const |
const Numeric & | examine (double x0) const |
const Numeric & | examine (double x0, double x1) const |
const Numeric & | examine (double x0, double x1, double x2) const |
const Numeric & | examine (double x0, double x1, double x2, double x3) const |
const Numeric & | examine (double x0, double x1, double x2, double x3, double x4) const |
const Numeric & | examine (double x0, double x1, double x2, double x3, double x4, double x5) const |
const Numeric & | examine (double x0, double x1, double x2, double x3, double x4, double x5, double x6) const |
const Numeric & | examine (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7) const |
const Numeric & | examine (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8) const |
const Numeric & | examine (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8, double x9) const |
const Numeric & | closestBin () const |
const Numeric & | closestBin (double x0) const |
const Numeric & | closestBin (double x0, double x1) const |
const Numeric & | closestBin (double x0, double x1, double x2) const |
const Numeric & | closestBin (double x0, double x1, double x2, double x3) const |
const Numeric & | closestBin (double x0, double x1, double x2, double x3, double x4) const |
const Numeric & | closestBin (double x0, double x1, double x2, double x3, double x4, double x5) const |
const Numeric & | closestBin (double x0, double x1, double x2, double x3, double x4, double x5, double x6) const |
const Numeric & | closestBin (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7) const |
const Numeric & | closestBin (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8) const |
const Numeric & | closestBin (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8, double x9) const |
template<typename Num2 > | |
void | fillC (const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, double x2, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, double x2, double x3, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, double x2, double x3, double x4, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, double x2, double x3, double x4, double x5, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, double x2, double x3, double x4, double x5, double x6, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8, const Num2 &weight) |
template<typename Num2 > | |
void | fillC (double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8, double x9, const Num2 &weight) |
template<typename Num2 > | |
void | setBin (const unsigned *index, unsigned indexLen, const Num2 &v) |
template<typename Num2 > | |
void | setBin (const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, unsigned i2, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, unsigned i2, unsigned i3, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, unsigned i6, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, unsigned i6, unsigned i7, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, unsigned i6, unsigned i7, unsigned i8, const Num2 &v) |
template<typename Num2 > | |
void | setBin (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, unsigned i6, unsigned i7, unsigned i8, unsigned i9, const Num2 &v) |
template<typename Num2 > | |
void | setLinearBin (const unsigned long index, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (const unsigned *index, unsigned indexLen, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, unsigned i2, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, unsigned i2, unsigned i3, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, unsigned i6, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, unsigned i6, unsigned i7, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, unsigned i6, unsigned i7, unsigned i8, const Num2 &v) |
template<typename Num2 > | |
void | setBinAt (unsigned i0, unsigned i1, unsigned i2, unsigned i3, unsigned i4, unsigned i5, unsigned i6, unsigned i7, unsigned i8, unsigned i9, const Num2 &v) |
template<typename Num2 > | |
void | setLinearBinAt (const unsigned long index, const Num2 &v) |
void | setNFillsTotal (const unsigned long i) |
void | setNFillsOver (const unsigned long i) |
template<typename Num2 > | |
void | scaleBinContents (const Num2 *data, unsigned long dataLength) |
template<typename Num2 > | |
void | scaleOverflows (const Num2 *data, unsigned long dataLength) |
template<typename Num2 > | |
void | addToBinContents (const Num2 &weight) |
template<typename Num2 > | |
void | addToOverflows (const Num2 &weight) |
template<typename Num2 > | |
void | addToBinContents (const Num2 *data, unsigned long dataLength) |
template<typename Num2 > | |
void | addToOverflows (const Num2 *data, unsigned long dataLength) |
template<typename Num2 , typename Num3 > | |
void | addToProjection (HistoND< Num2, Axis > *projection, AbsArrayProjector< Numeric, Num3 > &projector, const unsigned *projectedIndices, unsigned nProjectedIndices) const |
template<typename Num2 , typename Num3 > | |
void | addToProjection (HistoND< Num2, Axis > *projection, AbsVisitor< Numeric, Num3 > &projector, const unsigned *projectedIndices, unsigned nProjectedIndices) const |
gs::ClassId | classId () const |
bool | write (std::ostream &of) const |
Static Public Member Functions | |
static const char * | classname () |
static HistoND * | read (const gs::ClassId &id, std::istream &in) |
static unsigned | version () |
Private Member Functions | |
template<typename Acc > | |
void | accumulateBinsLoop (unsigned level, const BoxND< double > &box, unsigned *idx, Acc *accumulator, double overlapFraction, long double *wsum) const |
template<typename Num2 > | |
void | fillPreservingCentroid (const Num2 &weight) |
HistoND () | |
HistoND (const HistoND &r, unsigned ax1, unsigned ax2) | |
Private Attributes | |
std::string | accumulatedDataLabel_ |
std::vector< Axis > | axes_ |
ArrayND< Numeric > | data_ |
unsigned | dim_ |
unsigned long | fillCount_ |
std::vector< unsigned > | indexBuf_ |
unsigned long | modCount_ |
unsigned long | overCount_ |
ArrayND< Numeric > | overflow_ |
std::string | title_ |
std::vector< double > | weightBuf_ |
Friends | |
template<typename Num2 , class Axis2 > | |
class | HistoND |
(Almost) arbitrary-dimensional histogram with binning determined by the second template parameter (typically HistoAxis or NUHistoAxis). The dimensionality must not exceed CHAR_BIT*sizeof(unsigned long)-1 which is normally 31/63 on 32/64-bit systems.
The template parameter class (Numeric) must be such that it can be used as the template parameter of ArrayND class. For a typical usage pattern, Numeric should also support operator += between itself and the weights with which the histogram is filled (see, however, the description of the "dispatch" method which is not subject to this recommendation).
If the "fillC" method is used to accumulate the data then the weights must support multiplication by a double, and then it must be possible to use the "+=" operator to add such a product to Numeric.
Note that there are no methods which would allow the user to examine the bin contents of the histogram using bin numbers. This is intentional: almost always such examinations are performed in a loop over indices, and it is more efficient to grab a reference to the underlying array using the "binContents()" method and then examine that array directly.
Definition at line 22 of file HistoAxis.h.
typedef Axis npstat::HistoND< Numeric, Axis >::axis_type |
typedef Numeric npstat::HistoND< Numeric, Axis >::value_type |
enum npstat::HistoND::RebinType |
Enumerator | |
---|---|
SAMPLE | |
SUM | |
AVERAGE |
|
explicit |
Main constructor for arbitrary-dimensional histograms
Definition at line 1220 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::clear(), and npstat::HistoND< Numeric, Axis >::dim_.
|
explicit |
Convenience constructor for 1-d histograms
Definition at line 1240 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_, npstat::HistoND< Numeric, Axis >::clear(), and npstat::HistoND< Numeric, Axis >::dim_.
npstat::HistoND< Numeric, Axis >::HistoND | ( | const Axis & | xAxis, |
const Axis & | yAxis, | ||
const char * | title = 0 , |
||
const char * | accumulatedDataLabel = 0 |
||
) |
Convenience constructor for 2-d histograms
Definition at line 1257 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_, npstat::HistoND< Numeric, Axis >::clear(), and npstat::HistoND< Numeric, Axis >::dim_.
npstat::HistoND< Numeric, Axis >::HistoND | ( | const Axis & | xAxis, |
const Axis & | yAxis, | ||
const Axis & | zAxis, | ||
const char * | title = 0 , |
||
const char * | accumulatedDataLabel = 0 |
||
) |
Convenience constructor for 3-d histograms
Definition at line 1275 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_, npstat::HistoND< Numeric, Axis >::clear(), and npstat::HistoND< Numeric, Axis >::dim_.
npstat::HistoND< Numeric, Axis >::HistoND | ( | const Axis & | xAxis, |
const Axis & | yAxis, | ||
const Axis & | zAxis, | ||
const Axis & | tAxis, | ||
const char * | title = 0 , |
||
const char * | accumulatedDataLabel = 0 |
||
) |
Convenience constructor for 4-d histograms
Definition at line 1295 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_, npstat::HistoND< Numeric, Axis >::clear(), and npstat::HistoND< Numeric, Axis >::dim_.
npstat::HistoND< Numeric, Axis >::HistoND | ( | const Axis & | xAxis, |
const Axis & | yAxis, | ||
const Axis & | zAxis, | ||
const Axis & | tAxis, | ||
const Axis & | vAxis, | ||
const char * | title = 0 , |
||
const char * | accumulatedDataLabel = 0 |
||
) |
Convenience constructor for 5-d histograms
Definition at line 1316 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_, npstat::HistoND< Numeric, Axis >::clear(), and npstat::HistoND< Numeric, Axis >::dim_.
npstat::HistoND< Numeric, Axis >::HistoND | ( | const ArrayShape & | shape, |
const BoxND< double > & | boundingBox, | ||
const char * | title = 0 , |
||
const char * | accumulatedDataLabel = 0 |
||
) |
Simple constructor for uniformly binned histograms without axis labels. Sequence size returned by the size() method of both "shape" and "boundingBox" arguments must be the same.
Definition at line 1339 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_, npstat::HistoND< Numeric, Axis >::clear(), npstat::HistoND< Numeric, Axis >::dim_, i, bookConverter::max, and min().
npstat::HistoND< Numeric, Axis >::HistoND | ( | const HistoND< Num2, Axis > & | h, |
const Functor & | f, | ||
const char * | title = 0 , |
||
const char * | accumulatedDataLabel = 0 |
||
) |
npstat::HistoND< Numeric, Axis >::HistoND | ( | const HistoND< Num2, Axis > & | h, |
const unsigned * | indices, | ||
unsigned | nIndices, | ||
const char * | title = 0 |
||
) |
A slicing constructor. The new histogram will be created by slicing another histogram. See the description of the slicing constructor in the "ArrayND" class for the meaning of arguments "indices" and "nIndices". The data of the newly created histogram is cleared.
Definition at line 1387 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::clear().
npstat::HistoND< Numeric, Axis >::HistoND | ( | const HistoND< Num2, Axis > & | h, |
const Axis & | newAxis, | ||
unsigned | newAxisNumber, | ||
const char * | title = 0 |
||
) |
A constructor that inserts a new axis into a histogram (as if the argument histogram was a slice of the new histogram). The "newAxisNumber" argument specifies the number of the new axis in the axis sequence of the constructed histogram. If the "newAxisNumber" exceeds the number of axes of the argument histogram, the new axis will become last. The data of the newly created histogram is cleared.
Definition at line 1405 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::clear(), and npstat::HistoND< Numeric, Axis >::dim_.
npstat::HistoND< Numeric, Axis >::HistoND | ( | const HistoND< Num2, Axis > & | h, |
RebinType | rType, | ||
const unsigned * | newBinCounts, | ||
unsigned | lenNewBinCounts, | ||
const double * | shifts = 0 , |
||
const char * | title = 0 |
||
) |
Create a rebinned histogram with the same axis coverage. Note that not all such operations will be meaningful if the bin contents do not belong to one of the floating point types. The "newBinCounts" argument specifies the new number of bins along each axis. The length of this array (provided by the "lenNewBinCounts" argument) should be equal to the input histogram dimensionality.
The "shifts" argument can be meaningfully specified with the "rType" argument set to "SAMPLE". These shifts will be added to the bin centers of the created histogram when the bin contents are looked up in the input histogram. This can be useful in case the bin center lookup without shifts would fall exactly on the bin edge. Naturally, the length of the "shifts" array should be equal to the input histogram dimensionality.
Definition at line 1427 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::AVERAGE, create_public_lumi_plots::ax, npstat::HistoND< Numeric, Axis >::axes_, npstat::HistoND< Numeric, Axis >::binCenter(), npstat::ArrayND< Numeric, StackLen, StackDim >::convertLinearIndex(), npstat::HistoND< Numeric, Axis >::data_, npstat::HistoND< Numeric, Axis >::dim_, i, npstat::HistoND< Numeric, Axis >::indexBuf_, npstat::ArrayND< Numeric, StackLen, StackDim >::length(), npstat::ArrayND< Numeric, StackLen, StackDim >::linearValue(), npstat::HistoND< Numeric, Axis >::SAMPLE, and npstat::HistoND< Numeric, Axis >::weightBuf_.
npstat::HistoND< Numeric, Axis >::HistoND | ( | const HistoND< Numeric, Axis > & | r | ) |
|
private |
|
private |
Definition at line 3351 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_, and std::swap().
void npstat::HistoND< Numeric, Axis >::accumulateBinsInBox | ( | const BoxND< double > & | box, |
Acc * | acc, | ||
bool | calculateAverage = false |
||
) | const |
Add contents of all bins inside the given box to the accumulator. Note that Numeric type must support multiplication by a double in order for this function to work (it calculates the overlap fraction of each bin with the box and multiplies bin content by that fraction for subsequent accumulation). The operation Acc += Numeric must be defined.
Definition at line 1174 of file HistoND.h.
References assert(), i, and dttmaxenums::L.
|
private |
Definition at line 1144 of file HistoND.h.
References i, testEve_cfg::level, and pileupCalc::nbins.
|
inline |
Label associated with accumulated data
Definition at line 163 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::accumulatedDataLabel_.
void npstat::HistoND< Numeric, Axis >::addToBinContents | ( | const Num2 & | weight | ) |
void npstat::HistoND< Numeric, Axis >::addToBinContents | ( | const Num2 * | data, |
unsigned long | dataLength | ||
) |
void npstat::HistoND< Numeric, Axis >::addToOverflows | ( | const Num2 & | weight | ) |
void npstat::HistoND< Numeric, Axis >::addToOverflows | ( | const Num2 * | data, |
unsigned long | dataLength | ||
) |
|
inline |
Code for projecting one histogram onto another. For now, this is done for bin contents only, not for overflows. The projection should be created in advance from this histogram with the aid of the slicing constructor. The indices used in that constructor should be provided here as well.
Note that you might want to recalculate the number of fills from data after performing all projections needed.
Definition at line 3538 of file HistoND.h.
References assert().
|
inline |
Definition at line 3553 of file HistoND.h.
References assert().
void npstat::HistoND< Numeric, Axis >::allBinCenters | ( | std::vector< Point > * | centers | ) | const |
Convenience function which fills out a vector of bin centers in the same order as the linear order of binContents(). The class "Point" must have a subscript operator, default constructor, copy constructor, and the size() method (use, for example, std::array).
Definition at line 1545 of file HistoND.h.
References assert(), create_public_lumi_plots::ax, and i.
|
inline |
Inspect histogram axes
Definition at line 173 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_.
Referenced by npstat::interpolateHistoND().
|
inline |
Inspect a histogram axis for the given dimension
Definition at line 176 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_.
Referenced by npstat::interpolateHistoND().
void npstat::HistoND< Numeric, Axis >::binBox | ( | unsigned long | binNumber, |
BoxND< double > * | box | ||
) | const |
Bounding box for the given bin
Definition at line 1570 of file HistoND.h.
References assert(), create_public_lumi_plots::ax, and i.
void npstat::HistoND< Numeric, Axis >::binCenter | ( | unsigned long | binNumber, |
double * | coords, | ||
unsigned | lenCoords | ||
) | const |
Position of the bin center. Length of the "coords" array (filled on return) should be equal to the dimensionality of the histogram.
Definition at line 1526 of file HistoND.h.
References assert(), create_public_lumi_plots::ax, and i.
Referenced by npstat::HistoND< Numeric, Axis >::HistoND().
|
inline |
Retrive a reference to the array of bin contents
Definition at line 167 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::data_.
Referenced by npstat::interpolateHistoND(), and npstat::StorableHistoNDFunctor< Numeric, Axis, Converter >::table().
double npstat::HistoND< Numeric, Axis >::binVolume | ( | unsigned long | binNumber = 0 | ) | const |
This method returns width/area/volume/etc. of a single bin. 1.0 is returned for a dimensionless histogram.
Definition at line 1613 of file HistoND.h.
References create_public_lumi_plots::ax, i, and findQualityFiles::v.
BoxND< double > npstat::HistoND< Numeric, Axis >::boundingBox | ( | ) | const |
Bounding box for the whole histogram
Definition at line 1512 of file HistoND.h.
References create_public_lumi_plots::ax, and i.
|
inline |
|
static |
|
inline |
Clear the histogram contents (both bins and overflows)
Definition at line 1212 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::HistoND().
|
inline |
|
inline |
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | const double * | coords, |
unsigned | coordLength | ||
) | const |
The "closestBin" functions are similar to the "examine" functions but always return a valid bin and never overflow. This can be useful for implementing lookup tables with constant extrapolation outside of the histogram range.
Definition at line 1732 of file HistoND.h.
References assert(), create_public_lumi_plots::ax, i, and customizeTrackingMonitorSeedNumber::idx.
|
inline |
Convenience "closestBin" method for histograms of corresponding dimensionality
Definition at line 1849 of file HistoND.h.
References npstat::Private::h_badargs().
|
inline |
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1 | ||
) | const |
Definition at line 1998 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1, | ||
double | x2 | ||
) | const |
Definition at line 2087 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3 | ||
) | const |
Definition at line 2186 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4 | ||
) | const |
Definition at line 2291 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5 | ||
) | const |
Definition at line 2411 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6 | ||
) | const |
Definition at line 2536 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7 | ||
) | const |
Definition at line 2671 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8 | ||
) | const |
Definition at line 2812 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::closestBin | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8, | ||
double | x9 | ||
) | const |
Definition at line 2963 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
|
inline |
Histogram dimensionality
Definition at line 157 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::dim_.
Referenced by npstat::Private::iHND_checkArgs(), and npstat::StorableHistoNDFunctor< Numeric, Axis, Converter >::minDim().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | const double * | coords, |
unsigned | coordLength, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Location-based dispatch method. The provided binary functor will be called with the approprite histogram bin value as the first argument and the weight as the second (functor return value is ignored). This allows for a very general use of the histogram binning functionality. For example, with a proper functor, the histogram bins can be filled with pointers to an arbitrary class (this is the only way to use classes which do not have default constructors as bin contents) and the functor can be used to dispatch class methods. Depending on the exact nature of the functor, multiple things might be modified as the result of this call: the bin value, the weight, and the functor internal state.
Definition at line 1675 of file HistoND.h.
References assert(), create_public_lumi_plots::ax, f, i, customizeTrackingMonitorSeedNumber::idx, and w.
|
inline |
Convenience "dispatch" method for histograms of corresponding dimensionality
Definition at line 1825 of file HistoND.h.
References f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
Num2 & | weight, | ||
Functor & | f | ||
) |
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 1946 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
double | x2, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 2031 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 2124 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 2226 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 2336 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 2459 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 2588 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 2726 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::dispatch | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8, | ||
double | x9, | ||
Num2 & | weight, | ||
Functor & | f | ||
) |
Definition at line 2871 of file HistoND.h.
References create_public_lumi_plots::ax, f, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | const double * | coords, |
unsigned | coordLength | ||
) | const |
The "examine" functions allow the user to access bin contents when bins are addressed by their coordinates. Use "binContents()" to access the data by bin numbers. Overflow bins will be accessed if the given coordinates fall outside the histogram range.
Definition at line 1704 of file HistoND.h.
References assert(), create_public_lumi_plots::ax, i, and customizeTrackingMonitorSeedNumber::idx.
|
inline |
Convenience "examine" method for histograms of corresponding dimensionality
Definition at line 1842 of file HistoND.h.
References npstat::Private::h_badargs().
|
inline |
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1 | ||
) | const |
Definition at line 1983 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1, | ||
double | x2 | ||
) | const |
Definition at line 2070 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3 | ||
) | const |
Definition at line 2167 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4 | ||
) | const |
Definition at line 2271 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5 | ||
) | const |
Definition at line 2387 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6 | ||
) | const |
Definition at line 2512 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7 | ||
) | const |
Definition at line 2645 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8 | ||
) | const |
Definition at line 2785 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
const Numeric & npstat::HistoND< Numeric, Axis >::examine | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8, | ||
double | x9 | ||
) | const |
Definition at line 2934 of file HistoND.h.
References create_public_lumi_plots::ax, and npstat::Private::h_badargs().
void npstat::HistoND< Numeric, Axis >::fill | ( | const double * | coords, |
unsigned | coordLength, | ||
const Num2 & | weight | ||
) |
Fill function for histograms of arbitrary dimensionality. The length of the "coords" array should be equal to the histogram dimensionality. The Numeric type must have the "+=" operator defined with the Num2 type on the right side.
Definition at line 1642 of file HistoND.h.
References assert(), create_public_lumi_plots::ax, i, customizeTrackingMonitorSeedNumber::idx, and w.
|
inline |
Convenience "fill" method for histograms of corresponding dimensionality
Definition at line 1816 of file HistoND.h.
References npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
const Num2 & | weight | ||
) |
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
const Num2 & | weight | ||
) |
Definition at line 1926 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
double | x2, | ||
const Num2 & | weight | ||
) |
Definition at line 2010 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
const Num2 & | weight | ||
) |
Definition at line 2101 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
const Num2 & | weight | ||
) |
Definition at line 2202 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
const Num2 & | weight | ||
) |
Definition at line 2309 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
const Num2 & | weight | ||
) |
Definition at line 2431 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
const Num2 & | weight | ||
) |
Definition at line 2558 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8, | ||
const Num2 & | weight | ||
) |
Definition at line 2695 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fill | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8, | ||
double | x9, | ||
const Num2 & | weight | ||
) |
Definition at line 2838 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | const double * | coords, |
unsigned | coordLength, | ||
const Num2 & | weight | ||
) |
The "fillC" functions are similar to the "fill" methods but they preserve the centroid of the deposit. Note that, if the histogram dimensionality is high, "fillC" works significantly slower than the corresponding "fill". Also note that there must be at least 2 bins in each dimension in order for this function to work.
A word of caution. What is added to the bins is the input weight multiplied by another weight calculated using the bin proximity. If the input weight is just 1 (which happens quite often in practice), the product of the weights is normally less than 1. If the histogram template parameter is one of the integer types, operator += will convert this product to 0 before adding it to the bin! Therefore, it is best to use "fillC" only with floating point template parameters (float, double, etc).
Currently, the "fillC" methods work sensibly only in the case the binning is uniform (i.e., the second template parameter is HistoAxis rather than, let say, NUHistoAxis). They typically will not even compile if the binning is not uniform.
Definition at line 1782 of file HistoND.h.
References assert(), create_public_lumi_plots::ax, i, customizeTrackingMonitorSeedNumber::idx, and w.
|
inline |
Convenience "fillC" method for histograms of corresponding dimensionality
Definition at line 1834 of file HistoND.h.
References npstat::Private::h_badargs(), and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
const Num2 & | weight | ||
) |
Definition at line 1888 of file HistoND.h.
References npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
const Num2 & | weight | ||
) |
Definition at line 1963 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
double | x2, | ||
const Num2 & | weight | ||
) |
Definition at line 2049 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
const Num2 & | weight | ||
) |
Definition at line 2144 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
const Num2 & | weight | ||
) |
Definition at line 2247 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
const Num2 & | weight | ||
) |
Definition at line 2360 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
const Num2 & | weight | ||
) |
Definition at line 2484 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
const Num2 & | weight | ||
) |
Definition at line 2615 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8, | ||
const Num2 & | weight | ||
) |
Definition at line 2754 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
void npstat::HistoND< Numeric, Axis >::fillC | ( | double | x0, |
double | x1, | ||
double | x2, | ||
double | x3, | ||
double | x4, | ||
double | x5, | ||
double | x6, | ||
double | x7, | ||
double | x8, | ||
double | x9, | ||
const Num2 & | weight | ||
) |
Definition at line 2901 of file HistoND.h.
References create_public_lumi_plots::ax, npstat::Private::h_badargs(), customizeTrackingMonitorSeedNumber::idx, and w.
|
private |
Definition at line 1753 of file HistoND.h.
References i, w, and create_public_pileup_plots::weights.
|
inline |
This method returns the number of modifications performed on the histogram since its creation. This number is always increasing during the lifetime of the histogram object. Its main property is as follows: if the method "getModCount" returns the same number twice, there should be no changes in the histogram object (so that a drawing program does not need to redraw the histogram image).
This number is pure transient, it is not serialized and does not participate in histogram comparisons for equality.
Definition at line 826 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::modCount_.
|
inline |
Indicate that the histogram contents have changed. Should be used by any code which directly modifies histogram bins (after using const_cast on the relevant reference).
Definition at line 833 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::modCount_.
double npstat::HistoND< Numeric, Axis >::integral | ( | ) | const |
Integral of the histogram
Definition at line 1489 of file HistoND.h.
|
inline |
bool npstat::HistoND< Numeric, Axis >::isUniformlyBinned | ( | ) | const |
This method returns "true" if the method isUniform() of each histogram axis returns "true"
Definition at line 1480 of file HistoND.h.
References i.
Referenced by npstat::Private::iHND_checkArgs(), and npstat::StorableHistoNDFunctor< Numeric, Axis, Converter >::StorableHistoNDFunctor().
|
inline |
Total number of bins
Definition at line 180 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::data_, and npstat::ArrayND< Numeric, StackLen, StackDim >::length().
|
inline |
Total number of fills which fell inside the histogram range
Definition at line 186 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::fillCount_, and npstat::HistoND< Numeric, Axis >::overCount_.
|
inline |
Total number of fills which fell outside the histogram range
Definition at line 190 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::overCount_.
|
inline |
Total number of fills performed
Definition at line 183 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::fillCount_.
|
inline |
Logical negation of operator==
Definition at line 1607 of file HistoND.h.
References alignCSCRings::r.
HistoND& npstat::HistoND< Numeric, Axis >::operator*= | ( | const Num2 & | r | ) |
In-place multiplication by a scalar (scaling)
|
inline |
HistoND& npstat::HistoND< Numeric, Axis >::operator+= | ( | const HistoND< Num2, Axis > & | r | ) |
Fill from another histogram. Compatibility of axis limits will not be checked, but compatibility of array shapes will be.
|
inline |
HistoND& npstat::HistoND< Numeric, Axis >::operator-= | ( | const HistoND< Num2, Axis > & | r | ) |
Subtract contents of another histogram. Equivalent to multiplying the contents of the other histogram by -1 and then adding them. One of the consequences of this approach is that, for histograms "a" and "b", the sequence of operations "a += b; a -= b;" does not leave histogram "a" unchanged: although its bin contents will remain the same (up to round-off errors), the fill counts will increase by twice the fill counts of "b".
|
inline |
HistoND& npstat::HistoND< Numeric, Axis >::operator/= | ( | const Num2 & | r | ) |
In-place division by a scalar
|
inline |
HistoND< Numeric, Axis > & npstat::HistoND< Numeric, Axis >::operator= | ( | const HistoND< Numeric, Axis > & | r | ) |
|
inline |
|
inline |
Retrive a reference to the array of overflows
Definition at line 170 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::overflow_.
|
static |
Definition at line 3590 of file HistoND.h.
References data, npstat::ArrayND< Numeric, StackLen, StackDim >::restore(), query::result, AlCaHLTBitMon_QueryRunRegistry::string, and indexGen::title.
Referenced by edmIntegrityCheck.PublishToFileSystem::get().
|
inline |
void npstat::HistoND< Numeric, Axis >::scaleBinContents | ( | const Num2 * | data, |
unsigned long | dataLength | ||
) |
void npstat::HistoND< Numeric, Axis >::scaleOverflows | ( | const Num2 * | data, |
unsigned long | dataLength | ||
) |
|
inline |
Modify the label associated with accumulated data
Definition at line 203 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::accumulatedDataLabel_, and npstat::HistoND< Numeric, Axis >::modCount_.
|
inline |
Modify the label for the histogram axis with the given number
Definition at line 207 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::axes_, and npstat::HistoND< Numeric, Axis >::modCount_.
|
inline |
Method to set contents of individual bins (no bounds checking)
Definition at line 2991 of file HistoND.h.
References findQualityFiles::v.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Method to set contents of individual bins with bounds checking
Definition at line 3001 of file HistoND.h.
References findQualityFiles::v.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Setting bin contents to some constant value. The Num2 type should allow automatic conversion to Numeric.
Definition at line 703 of file HistoND.h.
References npstat::ArrayND< Numeric, StackLen, StackDim >::constFill(), npstat::HistoND< Numeric, Axis >::data_, and npstat::HistoND< Numeric, Axis >::modCount_.
|
inline |
Definition at line 632 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::data_, npstat::ArrayND< Numeric, StackLen, StackDim >::linearValue(), npstat::HistoND< Numeric, Axis >::modCount_, and findQualityFiles::v.
|
inline |
Definition at line 685 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::data_, npstat::ArrayND< Numeric, StackLen, StackDim >::linearValueAt(), npstat::HistoND< Numeric, Axis >::modCount_, and findQualityFiles::v.
|
inline |
Definition at line 729 of file HistoND.h.
References i, npstat::HistoND< Numeric, Axis >::modCount_, and npstat::HistoND< Numeric, Axis >::overCount_.
|
inline |
This method is intended for data format conversion programs only, not for typical histogramming use
Definition at line 727 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::fillCount_, i, and npstat::HistoND< Numeric, Axis >::modCount_.
|
inline |
|
inline |
Setting overflows to some constant value. The Num2 type should allow automatic conversion to Numeric.
Definition at line 711 of file HistoND.h.
References npstat::ArrayND< Numeric, StackLen, StackDim >::constFill(), npstat::HistoND< Numeric, Axis >::modCount_, and npstat::HistoND< Numeric, Axis >::overflow_.
|
inline |
Modify the histogram title
Definition at line 199 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::modCount_, and npstat::HistoND< Numeric, Axis >::title_.
|
inline |
Histogram title
Definition at line 160 of file HistoND.h.
References npstat::HistoND< Numeric, Axis >::title_.
Referenced by cuy.plotElement::__init__(), cuy.additionElement::__init__(), cuy.superimposeElement::__init__(), and cuy.graphElement::__init__().
HistoND< Numeric, Axis > npstat::HistoND< Numeric, Axis >::transpose | ( | unsigned | axisNum1, |
unsigned | axisNum2 | ||
) | const |
Transpose the histogram axes and bin contents
Definition at line 3408 of file HistoND.h.
|
inlinestatic |
Definition at line 842 of file HistoND.h.
Referenced by validation.Sample::datasetpattern(), and validation.Sample::filename().
double npstat::HistoND< Numeric, Axis >::volume | ( | void | ) | const |
Volume of the histogram bounding box (this direct call is faster than calling boundingBox().volume() ). This function returns 1.0 for 0-dim histogram, axis interval length for 1-d histogram, etc.
Definition at line 1628 of file HistoND.h.
References create_public_lumi_plots::ax, i, bookConverter::max, min(), and findQualityFiles::v.
bool npstat::HistoND< Numeric, Axis >::write | ( | std::ostream & | of | ) | const |
|
friend |
|
private |
Definition at line 860 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::accumulatedDataLabel(), and npstat::HistoND< Numeric, Axis >::setAccumulatedDataLabel().
|
private |
Definition at line 863 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::axes(), npstat::HistoND< Numeric, Axis >::axis(), npstat::HistoND< Numeric, Axis >::HistoND(), and npstat::HistoND< Numeric, Axis >::setAxisLabel().
|
private |
Definition at line 861 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::binContents(), npstat::HistoND< Numeric, Axis >::HistoND(), npstat::HistoND< Numeric, Axis >::nBins(), npstat::HistoND< Numeric, Axis >::setBinsToConst(), npstat::HistoND< Numeric, Axis >::setLinearBin(), and npstat::HistoND< Numeric, Axis >::setLinearBinAt().
|
private |
Definition at line 869 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::dim(), and npstat::HistoND< Numeric, Axis >::HistoND().
|
private |
Definition at line 866 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::nFillsInRange(), npstat::HistoND< Numeric, Axis >::nFillsTotal(), and npstat::HistoND< Numeric, Axis >::setNFillsTotal().
|
mutableprivate |
Definition at line 865 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::HistoND().
|
private |
Definition at line 868 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::getModCount(), npstat::HistoND< Numeric, Axis >::incrModCount(), npstat::HistoND< Numeric, Axis >::setAccumulatedDataLabel(), npstat::HistoND< Numeric, Axis >::setAxisLabel(), npstat::HistoND< Numeric, Axis >::setBinsToConst(), npstat::HistoND< Numeric, Axis >::setLinearBin(), npstat::HistoND< Numeric, Axis >::setLinearBinAt(), npstat::HistoND< Numeric, Axis >::setNFillsOver(), npstat::HistoND< Numeric, Axis >::setNFillsTotal(), npstat::HistoND< Numeric, Axis >::setOverflowsToConst(), and npstat::HistoND< Numeric, Axis >::setTitle().
|
private |
Definition at line 867 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::nFillsInRange(), npstat::HistoND< Numeric, Axis >::nFillsOver(), and npstat::HistoND< Numeric, Axis >::setNFillsOver().
|
private |
Definition at line 862 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::overflows(), and npstat::HistoND< Numeric, Axis >::setOverflowsToConst().
|
private |
Definition at line 859 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::setTitle(), and npstat::HistoND< Numeric, Axis >::title().
|
mutableprivate |
Definition at line 864 of file HistoND.h.
Referenced by npstat::HistoND< Numeric, Axis >::HistoND().