|
casacore
|
Makes a histogram from input values. More...
#include <HistAcc.h>
Public Member Functions | |
| HistAcc (const uInt nBuff) | |
| Constructors and destructor. More... | |
| HistAcc (const uInt nBuff, const T width) | |
| HistAcc (const T low, const T high, const T width) | |
| HistAcc (const HistAcc &) | |
| ~HistAcc () | |
| void | copy (const HistAcc &) |
| Copy operations. More... | |
| HistAcc & | operator= (const HistAcc &) |
| void | put (const T v) |
| Accumulate (put) value(s) into the histogram. More... | |
| void | put (const Array< T > &vv) |
| void | put (const Block< T > &vv) |
| void | reset () |
| Reset the contents of the bins to zero, but retain the current bin definition. More... | |
| void | emptyBinsWithLessThan (const uInt nmin) |
| Empty all bins whose contents is < nmin (e.g. More... | |
| Fallible< T > | getPercentile (const Float p) |
| The median is the 50-percentile (getPercentile(50)), i.e. More... | |
| Fallible< T > | getMedian () |
| Fallible< T > | getBinWidth () const |
| All bins have the same width. More... | |
| const StatAcc< T > & | getStatistics () |
| Get the internal Statistics accumulator (see StatAcc,h). More... | |
| Fallible< uInt > | getHistogram (Block< uInt > &bins, Block< T > &values) |
| The return value is the nr of histogram bins, and is invalid if the number is zero. More... | |
| uInt | getSpurious (uInt &tooSmall, uInt &tooLarge) |
| Get the nr of `spurious' values, i.e. More... | |
| void | printHistogram (ostream &, const String &caption) |
| Print histogram. More... | |
Private Member Functions | |
| void | put1 (const T) |
| Accumulate a single value into the histogram. More... | |
| void | defineBins (const T low, const T high, const T width) |
| Definition of histogram bins with given parameters. More... | |
| void | initBuffer (const uInt size) |
| Internal helper functions for the automatic definition of histogram parameters, using the contents of itsBuffer. More... | |
| void | putBuffer (const T v) |
| void | clearBuffer () |
| void | autoDefineBins () |
| void | init () |
| Other internal helper function(s). More... | |
| Fallible< T > | getBinValue (const uInt index) const |
Private Attributes | |
| Block< uInt > | itsBinContents |
| Block< T > | itsBinHighLimit |
| T | itsUserDefinedBinWidth |
| StatAcc< T > | itsStatAcc |
| Bool | itsAutoDefineMode |
| Block< T > | itsBuffer |
| uInt | itsBufferContents |
Makes a histogram from input values.
HistAcc stands for `Histogram Accumulator'.
Makes a histogram from input values. The histogram bin parameters may be defined, or determined from the first n input values. The input values are fed to HistAcc via the member function `put'. They can be fed individually, or in the form of an Array.
The histogram `bins' can be defined via the constructor in the form of loop variables: low bin, high bin, bin-width. It is also possible to let the bin parameters be determined automatically from the first n (e.g. n=50) input values. If the actual nr of input values is less than n when the histogram is interrogated in some way, the bin parameters will be determined from what is available.
It is usually convenient to let the bins be defined automatically:
In some cases the bin parameters are pre-defined:
The internal statistics accumulator can be interrogated explicitly or implicitly:
| casacore::HistAcc< T >::HistAcc | ( | const uInt | nBuff | ) |
Constructors and destructor.
If the bin-parameters low, high and width (for lowest and highest bin, and binwidth) are not specified, they will be determined automatically from the first nBuff input values (which are stored in a temporary buffer).
| casacore::HistAcc< T >::HistAcc | ( | const uInt | nBuff, |
| const T | width | ||
| ) |
| casacore::HistAcc< T >::HistAcc | ( | const T | low, |
| const T | high, | ||
| const T | width | ||
| ) |
| casacore::HistAcc< T >::HistAcc | ( | const HistAcc< T > & | ) |
|
inline |
|
private |
|
private |
| void casacore::HistAcc< T >::copy | ( | const HistAcc< T > & | ) |
Copy operations.
|
private |
Definition of histogram bins with given parameters.
| void casacore::HistAcc< T >::emptyBinsWithLessThan | ( | const uInt | nmin | ) |
Empty all bins whose contents is < nmin (e.g.
nmin=2). This is useful to remove `noise' values from the histogram.
|
private |
| Fallible<T> casacore::HistAcc< T >::getBinWidth | ( | ) | const |
All bins have the same width.
| Fallible<uInt> casacore::HistAcc< T >::getHistogram | ( | Block< uInt > & | bins, |
| Block< T > & | values | ||
| ) |
The return value is the nr of histogram bins, and is invalid if the number is zero.
The given blocks/vectors are resized, and contain the contents and centre values of the bins.
| Fallible<T> casacore::HistAcc< T >::getMedian | ( | ) |
| Fallible<T> casacore::HistAcc< T >::getPercentile | ( | const Float | p | ) |
The median is the 50-percentile (getPercentile(50)), i.e.
the value which has 50 percent of the input values below it. Calculation takes into account the spurious input values, i.e. values that fell outside the bins.
| uInt casacore::HistAcc< T >::getSpurious | ( | uInt & | tooSmall, |
| uInt & | tooLarge | ||
| ) |
Get the nr of `spurious' values, i.e.
the ones that fell outside the defined bins.
| const StatAcc<T>& casacore::HistAcc< T >::getStatistics | ( | ) |
Get the internal Statistics accumulator (see StatAcc,h).
It can be used to obtain statistics of the input values.
|
private |
Other internal helper function(s).
|
private |
Internal helper functions for the automatic definition of histogram parameters, using the contents of itsBuffer.
| HistAcc& casacore::HistAcc< T >::operator= | ( | const HistAcc< T > & | ) |
| void casacore::HistAcc< T >::printHistogram | ( | ostream & | , |
| const String & | caption | ||
| ) |
Print histogram.
|
inline |
| void casacore::HistAcc< T >::put | ( | const Array< T > & | vv | ) |
| void casacore::HistAcc< T >::put | ( | const Block< T > & | vv | ) |
|
private |
Accumulate a single value into the histogram.
|
private |
| void casacore::HistAcc< T >::reset | ( | ) |
Reset the contents of the bins to zero, but retain the current bin definition.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
1.8.5