#include <NUHistoAxis.h>
Public Member Functions | |
double | binCenter (const int binNum) const |
Interval< double > | binInterval (const int binNum) const |
int | binNumber (double x) const |
unsigned | closestValidBin (double x) const |
double | fltBinNumber (double x, bool mapLeftEdgeTo0=true) const |
bool | isClose (const NUHistoAxis &, double tol) const |
double | leftBinEdge (const int binNum) const |
NUHistoAxis (const std::vector< double > &binEdges, const char *label=0) | |
bool | operator!= (const NUHistoAxis &) const |
bool | operator== (const NUHistoAxis &) const |
NUHistoAxis | rebin (unsigned newBins) const |
double | rightBinEdge (const int binNum) const |
void | setLabel (const char *newlabel) |
double | min () const |
double | max () const |
Interval< double > | interval () const |
double | length () const |
unsigned | nBins () const |
double | binWidth (const int binNum) const |
const std::string & | label () const |
bool | isUniform () const |
gs::ClassId | classId () const |
bool | write (std::ostream &of) const |
Static Public Member Functions | |
static const char * | classname () |
static NUHistoAxis * | read (const gs::ClassId &id, std::istream &in) |
static unsigned | version () |
Private Member Functions | |
NUHistoAxis (unsigned nBins, double min, double max, const char *label=0) | |
NUHistoAxis () | |
unsigned | overflowIndex (const double x, unsigned *binNum) const |
Private Attributes | |
std::vector< double > | binEdges_ |
std::string | label_ |
double | max_ |
double | min_ |
unsigned | nBins_ |
bool | uniform_ |
Friends | |
class | DualHistoAxis |
template<typename Numeric , class Axis > | |
class | HistoND |
This class can be used to create histograms with non-uniform binning
Definition at line 27 of file NUHistoAxis.h.
npstat::NUHistoAxis::NUHistoAxis | ( | const std::vector< double > & | binEdges, |
const char * | label = 0 |
||
) |
The number of bin edges provided must be at least 2. Edge coordinates will be sorted internally in the increasing order. The number of bins will be less by 1 than the number of edges.
Definition at line 15 of file NUHistoAxis.cc.
|
private |
Definition at line 29 of file NUHistoAxis.cc.
|
inlineprivate |
Definition at line 137 of file NUHistoAxis.h.
|
inline |
Return the coordinate of the given bin center
Definition at line 60 of file NUHistoAxis.h.
References binEdges_.
Referenced by npstat::convertToGridAxis().
|
inline |
Return the coordinate interval occupied by the given bin
Definition at line 64 of file NUHistoAxis.h.
References binEdges_.
int npstat::NUHistoAxis::binNumber | ( | double | x | ) | const |
This method returns -1 for values below the lower limit and "nBins()" for values equal to or above the upper limit
Definition at line 78 of file NUHistoAxis.cc.
Referenced by overflowIndex().
|
inline |
|
inline |
Method related to "geners" I/O
Definition at line 101 of file NUHistoAxis.h.
Referenced by npstat::DualHistoAxis::write().
|
inlinestatic |
Definition at line 105 of file NUHistoAxis.h.
unsigned npstat::NUHistoAxis::closestValidBin | ( | double | x | ) | const |
This method returns the closest valid bin number (above 0 and below nBins() )
Definition at line 150 of file NUHistoAxis.cc.
double npstat::NUHistoAxis::fltBinNumber | ( | double | x, |
bool | mapLeftEdgeTo0 = true |
||
) | const |
Floating point bin number given the coordinate. Useful for interpolation methods and such.
Definition at line 85 of file NUHistoAxis.cc.
|
inline |
Definition at line 41 of file NUHistoAxis.h.
bool npstat::NUHistoAxis::isClose | ( | const NUHistoAxis & | r, |
double | tol | ||
) | const |
Comparison of axis coordinates within given tolerance
Definition at line 49 of file NUHistoAxis.cc.
|
inline |
|
inline |
Definition at line 47 of file NUHistoAxis.h.
References label_.
Referenced by npstat::convertToGridAxis().
|
inline |
Return the coordinate of the given bin left edge
Definition at line 52 of file NUHistoAxis.h.
References binEdges_.
|
inline |
Definition at line 43 of file NUHistoAxis.h.
|
inline |
|
inline |
|
inline |
Definition at line 44 of file NUHistoAxis.h.
References nBins_.
Referenced by npstat::convertToGridAxis().
bool npstat::NUHistoAxis::operator!= | ( | const NUHistoAxis & | r | ) | const |
Definition at line 73 of file NUHistoAxis.cc.
bool npstat::NUHistoAxis::operator== | ( | const NUHistoAxis & | r | ) | const |
Definition at line 63 of file NUHistoAxis.cc.
|
inlineprivate |
|
static |
Definition at line 171 of file NUHistoAxis.cc.
Referenced by npstat::DualHistoAxis::read().
NUHistoAxis npstat::NUHistoAxis::rebin | ( | unsigned | newBins | ) | const |
Return uniformly rebinned axis
Definition at line 44 of file NUHistoAxis.cc.
|
inline |
Return the coordinate of the given bin right edge
Definition at line 56 of file NUHistoAxis.h.
References binEdges_.
|
inline |
|
inlinestatic |
Definition at line 106 of file NUHistoAxis.h.
bool npstat::NUHistoAxis::write | ( | std::ostream & | of | ) | const |
Definition at line 162 of file NUHistoAxis.cc.
Referenced by npstat::DualHistoAxis::write().
|
friend |
Definition at line 121 of file NUHistoAxis.h.
|
friend |
Definition at line 120 of file NUHistoAxis.h.
|
private |
Definition at line 115 of file NUHistoAxis.h.
Referenced by binCenter(), binInterval(), binWidth(), leftBinEdge(), and rightBinEdge().
|
private |
Definition at line 116 of file NUHistoAxis.h.
Referenced by label(), and setLabel().
|
private |
Definition at line 114 of file NUHistoAxis.h.
Referenced by interval(), length(), max(), and overflowIndex().
|
private |
Definition at line 113 of file NUHistoAxis.h.
Referenced by interval(), length(), min(), and overflowIndex().
|
private |
Definition at line 117 of file NUHistoAxis.h.
Referenced by nBins().
|
private |
Definition at line 118 of file NUHistoAxis.h.
Referenced by isUniform().