Tomographer
v1.0a
Tomographer C++ Framework Documentation
|
Combines several histograms (with same parameters) into an averaged histogram. More...
#include <tomographer/histogram.h>
Public Types | |
typedef HistogramType_ | HistogramType |
Type of the individual histograms we are averaging. More... | |
typedef UniformBinsHistogramWithErrorBars< typename HistogramType_::Scalar, RealAvgType > | Base_ |
Shortcut for our base class' type. | |
typedef Base_::Params | Params |
The histogram parameters' type. See UniformBinsHistogramWithErrorBars::Params. | |
typedef Base_::Scalar | Scalar |
The histogram's X-axis scalar type. See UniformBinsHistogramWithErrorBars::Scalar. | |
typedef Base_::CountType | CountType |
The histogram' count type. This is exactly the same as RealAvgType. | |
Public Types inherited from Tomographer::UniformBinsHistogramWithErrorBars< HistogramType_::Scalar, RealAvgType > | |
typedef HistogramType_::Scalar | Scalar |
The Scalar (X-axis) Type. See UniformBinsHistogram<Scalar_,CountType_>::Scalar. | |
typedef RealAvgType | CountType |
The Type used to keep track of counts. See UniformBinsHistogram<Scalar_,CountType_>::CountType. | |
typedef UniformBinsHistogram< HistogramType_::Scalar, RealAvgType > | Base_ |
Shortcut for our base class type. | |
typedef Base_::Params | Params |
Shortcut for our base class' histogram parameters. See UniformBinsHistogram<typename Scalar_, typename CountType_>::Params. | |
Public Types inherited from Tomographer::UniformBinsHistogram< HistogramType_::Scalar, RealAvgType > | |
typedef HistogramType_::Scalar | Scalar |
The scalar type of the "X"-axis of the histogram (usually double ) | |
typedef RealAvgType | CountType |
The type that serves to count how many hits in each bin. | |
Public Member Functions | |
AveragedHistogram (const Params ¶ms=Params()) | |
Constructs an AveragedHistogram with the given histogram parameters. More... | |
void | reset (const Params ¶ms_) |
Resets the data and sets new params. More... | |
void | reset () |
Resets the data keeping the exisiting params. More... | |
template<bool dummy = true, typename std::enable_if< dummy &&(!HistogramType::HasErrorBars), bool >::type dummy2 = true> | |
void | add_histogram (const HistogramType &histogram) |
template<bool dummy = true, typename std::enable_if< dummy &&(!HistogramType::HasErrorBars), bool >::type dummy2 = true> | |
void | finalize () |
template<bool dummy = true, typename std::enable_if< dummy &&(HistogramType::HasErrorBars), bool >::type dummy2 = true> | |
void | add_histogram (const HistogramType &histogram) |
template<bool dummy = true, typename std::enable_if< dummy &&(HistogramType::HasErrorBars), bool >::type dummy2 = true> | |
void | finalize () |
Public Member Functions inherited from Tomographer::UniformBinsHistogramWithErrorBars< HistogramType_::Scalar, RealAvgType > | |
UniformBinsHistogramWithErrorBars (Params params=Params()) | |
Constructor, with given histogram parameters. More... | |
UniformBinsHistogramWithErrorBars (Scalar min, Scalar max, std::size_t num_bins) | |
Constructor, with given histogram parameters. More... | |
void | reset () |
Resets the histogram to zero counts everywhere, and zero error bars. More... | |
CountType | errorbar (std::size_t i) const |
For the Histogram Interface. Get error bar for bin number i. More... | |
std::string | pretty_print (int max_width=0) const |
Print the histogram in human readable form. More... | |
Public Member Functions inherited from Tomographer::UniformBinsHistogram< HistogramType_::Scalar, RealAvgType > | |
UniformBinsHistogram (Params p=Params()) | |
Constructor: stores the parameters and initializes the histogram to zero counts everywhere. | |
UniformBinsHistogram (Scalar min_, Scalar max_, std::size_t num_bins) | |
Constructor: stores the parameters and initializes the histogram to zero counts everywhere. | |
UniformBinsHistogram (const HistogramType &other) | |
Constructor: copy another histogram type. | |
void | reset () |
Resets the histogram to zero counts everywhere. | |
void | load (const Eigen::DenseBase< EigenType > &x, CountType off_chart_=0) |
Load data for the histogram. Uses current histogram parameters, just sets the bin counts. More... | |
void | add (const Eigen::ArrayBase< EigenType > &x, CountType off_chart_=0) |
Add data to the histogram. More... | |
void | add (const UniformBinsHistogram< OtherScalar, OtherCountType > &x) |
Add data to the histogram. More... | |
std::size_t | num_bins () const |
Shorthand for params.num_bins | |
CountType | count (std::size_t i) const |
Shorthand for bins(i) | |
bool | is_within_bounds (Scalar value) const |
Shorthand for params.is_within_bounds(value) | |
std::size_t | bin_index (Scalar value) const |
Shorthand for params.bin_index(value) | |
Scalar | bin_lower_value (int index) const |
Shorthand for params.bin_lower_value(index) | |
Scalar | bin_center_value (std::size_t index) const |
Shorthand for params.bin_center_value(index) | |
Scalar | bin_upper_value (std::size_t index) const |
Shorthand for params.bin_upper_value(index) | |
Scalar | bin_resolution () const |
Shorthand for params.bin_resolution() | |
std::size_t | record (Scalar value) |
Record a new value in the histogram. More... | |
std::size_t | record (Scalar value, CountType weight) |
Record a new value in the histogram, with a certain weight. More... | |
std::string | pretty_print (int max_width=0) const |
Pretty-print the histogram and return it as a string with horizontal bars. More... | |
Public Attributes | |
int | num_histograms |
The number of histograms averaged. More... | |
Public Attributes inherited from Tomographer::UniformBinsHistogramWithErrorBars< HistogramType_::Scalar, RealAvgType > | |
Eigen::Array< CountType, Eigen::Dynamic, 1 > | delta |
The error bars associated with each histogram bin. | |
Public Attributes inherited from Tomographer::UniformBinsHistogram< HistogramType_::Scalar, RealAvgType > | |
Params | params |
Parameters of this histogram (range and # of bins) | |
Eigen::Array< CountType, Eigen::Dynamic, 1 > | bins |
The counts for each bin. | |
CountType | off_chart |
The number of points that fell outside of the given range. | |
Static Public Attributes | |
static constexpr bool | HasErrorBars = true |
For the Histogram Interface. This histogram type does provide error bars. | |
Static Public Attributes inherited from Tomographer::UniformBinsHistogramWithErrorBars< HistogramType_::Scalar, RealAvgType > | |
static constexpr bool | HasErrorBars |
For the Histogram Interface. This type of histogram does provide error bars. | |
Static Public Attributes inherited from Tomographer::UniformBinsHistogram< HistogramType_::Scalar, RealAvgType > | |
static constexpr bool | HasErrorBars |
This histogram type does not provide error bars (see Histogram Interface) | |
Combines several histograms (with same parameters) into an averaged histogram.
What this class does exactly is explained on the page Averaged Histogram.
The HistogramType is expected to be a Histogram Interface -compliant type. It may, or may not, come with its own error bars. If this is the case, then the error bars are properly combined.
You should add histograms to average with repeated calls to add_histogram(). Then, you should call finalize(). Then this object, which inherits UniformBinsHistogramWithErrorBars, will be properly initialized with average counts and error bars.
This class itself complies with the Histogram Interface.
HistgoramType_ | the type of the individual histograms that we are averaging. This must comply with the Histogram Interface |
RealAvgType | the real scalar type used for averaging. You'll most likely want to choose double here. This can be different from the underlying HistogramType's CountType, because that may be an integer type and not suitable for holding an average. |
Definition at line 506 of file histogram.h.
typedef HistogramType_ Tomographer::AveragedHistogram< HistogramType_, RealAvgType >::HistogramType |
Type of the individual histograms we are averaging.
This is the argument given as template parameter, and is expected to compily with the Histogram Interface.
Definition at line 514 of file histogram.h.
|
inline |
Constructs an AveragedHistogram with the given histogram parameters.
The params are the histogram parameters (see UniformBinsHistogram::Params) of the individual histograms which will be averaged. Note that all those histograms must have the same params.
Definition at line 542 of file histogram.h.
|
inline |
Resets the data and sets new params.
Definition at line 553 of file histogram.h.
|
inline |
Resets the data keeping the exisiting params.
Definition at line 566 of file histogram.h.
int Tomographer::AveragedHistogram< HistogramType_, RealAvgType >::num_histograms |
The number of histograms averaged.
This member records how many histograms have been added using add_histogram() since the object was created or was last reset().
Definition at line 533 of file histogram.h.