casacore
Public Member Functions | Protected Member Functions | List of all members
casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator > Class Template Reference

Abstract base class for statistics algorithms which are characterized by a range of good values. More...

#include <ConstrainedRangeStatistics.h>

Public Member Functions

virtual ~ConstrainedRangeStatistics ()
 
ConstrainedRangeStatistics< CASA_STATP > & operator= (const ConstrainedRangeStatistics< CASA_STATP > &other)
 copy semantics More...
 
AccumType getMedian (CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< AccumType > knownMin=NULL, CountedPtr< AccumType > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 In the following group of methods, if the size of the composite dataset is smaller than binningThreshholdSizeBytes, the composite dataset will be (perhaps partially) sorted and persisted in memory during the call. More...
 
AccumType getMedianAbsDevMed (CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< AccumType > knownMin=NULL, CountedPtr< AccumType > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 get the median of the absolute deviation about the median of the data. More...
 
AccumType getMedianAndQuantiles (std::map< Double, AccumType > &quantileToValue, const std::set< Double > &quantiles, CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< AccumType > knownMin=NULL, CountedPtr< AccumType > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 If one needs to compute both the median and quantile values, it is better to call getMedianAndQuantiles() rather than getMedian() and getQuantiles() seperately, as the first will scan large data sets fewer times than calling the seperate methods. More...
 
std::map< Double, AccumType > getQuantiles (const std::set< Double > &quantiles, CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< AccumType > knownMin=NULL, CountedPtr< AccumType > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 Get the specified quantiles. More...
 
virtual void getMinMax (AccumType &mymin, AccumType &mymax)
 get the min and max of the data set More...
 
virtual uInt64 getNPts ()
 scan the dataset(s) that have been added, and find the number of good points. More...
 
std::pair< Int64, Int64getStatisticIndex (StatisticsData::STATS stat)
 see base class description More...
 
virtual void reset ()
 reset object to initial state. More...
 
- Public Member Functions inherited from casacore::ClassicalStatistics< CASA_STATP >
 ClassicalStatistics ()
 
 ClassicalStatistics (const ClassicalStatistics< CASA_STATP, DataIterator, const Bool *, DataIterator > &cs)
 copy semantics More...
 
virtual ~ClassicalStatistics ()
 
ClassicalStatistics< CASA_STATP, DataIterator, const Bool *, DataIterator > & operator= (const ClassicalStatistics< CASA_STATP, DataIterator, const Bool *, DataIterator > &other)
 copy semantics More...
 
virtual StatisticsData::ALGORITHM algorithm () const
 get the algorithm that this object uses for computing stats More...
 
virtual CASA_STATP getMedian (CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< CASA_STATP > knownMin=NULL, CountedPtr< CASA_STATP > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 In the following group of methods, if the size of the composite dataset is smaller than binningThreshholdSizeBytes, the composite dataset will be (perhaps partially) sorted and persisted in memory during the call. More...
 
virtual CASA_STATP getMedianAndQuantiles (std::map< Double, CASA_STATP > &quantiles, const std::set< Double > &fractions, CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< CASA_STATP > knownMin=NULL, CountedPtr< CASA_STATP > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 If one needs to compute both the median and quantile values, it is better to call getMedianAndQuantiles() rather than getMedian() and getQuantiles() separately, as the first will scan large data sets fewer times than calling the separate methods. More...
 
virtual CASA_STATP getMedianAbsDevMed (CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< CASA_STATP > knownMin=NULL, CountedPtr< CASA_STATP > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 get the median of the absolute deviation about the median of the data. More...
 
virtual std::map< Double, CASA_STATPgetQuantiles (const std::set< Double > &fractions, CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< CASA_STATP > knownMin=NULL, CountedPtr< CASA_STATP > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 Get the specified quantiles. More...
 
virtual void getMinMax (CASA_STATP &mymin, CASA_STATP &mymax)
 scan the dataset(s) that have been added, and find the min and max. More...
 
virtual void setCalculateAsAdded (Bool c)
 Should statistics be updated with calls to addData or should they only be calculated upon calls to getStatistics etc? Beware that calling this will automatically reinitialize the object, so that it will contain no references to data et al. More...
 
void setDataProvider (StatsDataProvider< CASA_STATP, DataIterator, const Bool *, DataIterator > *dataProvider)
 An exception will be thrown if setCalculateAsAdded(True) has been called. More...
 
void setStatsToCalculate (std::set< StatisticsData::STATS > &stats)
 Provide guidance to algorithms by specifying a priori which statistics the caller would like calculated. More...
 
- Public Member Functions inherited from casacore::StatisticsAlgorithm< CASA_STATP, DataIterator, const Bool *, DataIterator >
virtual ~StatisticsAlgorithm ()
 
virtual void addData (const DataIterator &first, uInt nr, uInt dataStride=1, Bool nrAccountsForStride=False)
 Add a dataset to an existing set of datasets on which statistics are to be calculated. More...
 
virtual void addData (const DataIterator &first, uInt nr, const DataRanges &dataRanges, Bool isInclude=True, uInt dataStride=1, Bool nrAccountsForStride=False)
 
virtual void addData (const DataIterator &first, const const Bool * &maskFirst, uInt nr, uInt dataStride=1, Bool nrAccountsForStride=False, uInt maskStride=1)
 
virtual void addData (const DataIterator &first, const const Bool * &maskFirst, uInt nr, const DataRanges &dataRanges, Bool isInclude=True, uInt dataStride=1, Bool nrAccountsForStride=False, uInt maskStride=1)
 
virtual void addData (const DataIterator &first, const DataIterator &weightFirst, uInt nr, uInt dataStride=1, Bool nrAccountsForStride=False)
 
virtual void addData (const DataIterator &first, const DataIterator &weightFirst, uInt nr, const DataRanges &dataRanges, Bool isInclude=True, uInt dataStride=1, Bool nrAccountsForStride=False)
 
virtual void addData (const DataIterator &first, const DataIterator &weightFirst, const const Bool * &maskFirst, uInt nr, uInt dataStride=1, Bool nrAccountsForStride=False, uInt maskStride=1)
 
virtual void addData (const DataIterator &first, const DataIterator &weightFirst, const const Bool * &maskFirst, uInt nr, const DataRanges &dataRanges, Bool isInclude=True, uInt dataStride=1, Bool nrAccountsForStride=False, uInt maskStride=1)
 
void deleteSortedArray ()
 delete any (partially) sorted array More...
 
CASA_STATP getQuantile (Double quantile, CountedPtr< uInt64 > knownNpts=NULL, CountedPtr< CASA_STATP > knownMin=NULL, CountedPtr< CASA_STATP > knownMax=NULL, uInt binningThreshholdSizeBytes=4096 *4096, Bool persistSortedArray=False, uInt64 nBins=10000)
 
virtual CASA_STATP getStatistic (StatisticsData::STATS stat)
 get the value of the specified statistic More...
 
virtual StatsData< CASA_STATPgetStatistics ()
 
virtual void setData (const DataIterator &first, uInt nr, uInt dataStride=1, Bool nrAccountsForStride=False)
 setdata() clears any current datasets or data provider and then adds the specified data set as the first dataset in the (possibly new) set of data sets for which statistics are to be calculated. More...
 
virtual void setData (const DataIterator &first, uInt nr, const DataRanges &dataRanges, Bool isInclude=True, uInt dataStride=1, Bool nrAccountsForStride=False)
 
virtual void setData (const DataIterator &first, const const Bool * &maskFirst, uInt nr, uInt dataStride=1, Bool nrAccountsForStride=False, uInt maskStride=1)
 
virtual void setData (const DataIterator &first, const const Bool * &maskFirst, uInt nr, const DataRanges &dataRanges, Bool isInclude=True, uInt dataStride=1, Bool nrAccountsForStride=False, uInt maskStride=1)
 
virtual void setData (const DataIterator &first, const DataIterator &weightFirst, uInt nr, uInt dataStride=1, Bool nrAccountsForStride=False)
 
virtual void setData (const DataIterator &first, const DataIterator &weightFirst, uInt nr, const DataRanges &dataRanges, Bool isInclude=True, uInt dataStride=1, Bool nrAccountsForStride=False)
 
virtual void setData (const DataIterator &first, const DataIterator &weightFirst, const const Bool * &maskFirst, uInt nr, uInt dataStride=1, Bool nrAccountsForStride=False, uInt maskStride=1)
 
virtual void setData (const DataIterator &first, const DataIterator &weightFirst, const const Bool * &maskFirst, uInt nr, const DataRanges &dataRanges, Bool isInclude=True, uInt dataStride=1, Bool nrAccountsForStride=False, uInt maskStride=1)
 
virtual void setDataProvider (StatsDataProvider< CASA_STATP > *dataProvider)
 instead of settng and adding data "by hand", set the data provider that will provide all the data sets. More...
 

Protected Member Functions

 ConstrainedRangeStatistics ()
 
void _accumNpts (uInt64 &npts, const DataIterator &dataStart, Int64 nr, uInt dataStride) const
 scan through the data set to determine the number of good (unmasked, weight > 0, within range) points. More...
 
void _accumNpts (uInt64 &npts, const DataIterator &dataStart, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, Int64 nr, uInt dataStride) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, Int64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const WeightsIterator &weightBegin, Int64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< AccumType > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const vector< typename StatisticsUtilities< AccumType >::BinDesc > &binDesc, const vector< AccumType > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< AccumType > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const vector< typename StatisticsUtilities< AccumType >::BinDesc > &binDesc, const vector< AccumType > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< AccumType > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const vector< typename StatisticsUtilities< AccumType >::BinDesc > &binDesc, const vector< AccumType > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< AccumType > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const vector< typename StatisticsUtilities< AccumType >::BinDesc > &binDesc, const vector< AccumType > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< AccumType > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, Int64 nr, uInt dataStride, const vector< typename StatisticsUtilities< AccumType >::BinDesc > &binDesc, const vector< AccumType > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< AccumType > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const vector< typename StatisticsUtilities< AccumType >::BinDesc > &binDesc, const vector< AccumType > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< AccumType > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, const WeightsIterator &weightsBegin, Int64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const vector< typename StatisticsUtilities< AccumType >::BinDesc > &binDesc, const vector< AccumType > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< AccumType > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, const WeightsIterator &weightBegin, Int64 nr, uInt dataStride, const MaskIterator &maskBegin, uInt maskStride, const vector< typename StatisticsUtilities< AccumType >::BinDesc > &binDesc, const vector< AccumType > &maxLimit) const
 
- Protected Member Functions inherited from casacore::ClassicalStatistics< CASA_STATP >
virtual void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride) const
 
virtual void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 
virtual void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride) const
 
virtual void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
 
virtual void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 
virtual void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride) const
 
void _accumulate (CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const CASA_STATP &datum, Int64 count)
 
void _accumulate (CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const CASA_STATP &datum, const CASA_STATP &weight, Int64 count)
 
void _addData ()
 Allows derived classes to do things after data is set or added. More...
 
void _clearData ()
 
void _clearStats ()
 
void _doMinMax (CASA_STATP &vmin, CASA_STATP &vmax)
 scan dataset(s) to find min and max More...
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< CASA_STATP > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const vector< typename StatisticsUtilities< CASA_STATP >::BinDesc > &binDesc, const vector< CASA_STATP > &maxLimit) const
 Get the counts of data within the specified histogram bins. More...
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< CASA_STATP > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const vector< typename StatisticsUtilities< CASA_STATP >::BinDesc > &binDesc, const vector< CASA_STATP > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< CASA_STATP > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const vector< typename StatisticsUtilities< CASA_STATP >::BinDesc > &binDesc, const vector< CASA_STATP > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< CASA_STATP > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const vector< typename StatisticsUtilities< CASA_STATP >::BinDesc > &binDesc, const vector< CASA_STATP > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< CASA_STATP > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const vector< typename StatisticsUtilities< CASA_STATP >::BinDesc > &binDesc, const vector< CASA_STATP > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< CASA_STATP > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const vector< typename StatisticsUtilities< CASA_STATP >::BinDesc > &binDesc, const vector< CASA_STATP > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< CASA_STATP > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const vector< typename StatisticsUtilities< CASA_STATP >::BinDesc > &binDesc, const vector< CASA_STATP > &maxLimit) const
 
virtual void _findBins (vector< vector< uInt64 > > &binCounts, vector< CountedPtr< CASA_STATP > > &sameVal, vector< Bool > &allSame, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const vector< typename StatisticsUtilities< CASA_STATP >::BinDesc > &binDesc, const vector< CASA_STATP > &maxLimit) const
 
CASA_STATP _getStatistic (StatisticsData::STATS stat)
 
StatsData< CASA_STATP_getStatistics ()
 
virtual StatsData< CASA_STATP > & _getStatsData ()
 retreive stats structure. More...
 
virtual const StatsData< CASA_STATP > & _getStatsData () const
 
virtual void _minMax (CountedPtr< CASA_STATP > &mymin, CountedPtr< CASA_STATP > &mymax, const DataIterator &dataBegin, Int64 nr, uInt dataStride) const
 
virtual void _minMax (CountedPtr< CASA_STATP > &mymin, CountedPtr< CASA_STATP > &mymax, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
 
virtual void _minMax (CountedPtr< CASA_STATP > &mymin, CountedPtr< CASA_STATP > &mymax, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride) const
 
virtual void _minMax (CountedPtr< CASA_STATP > &mymin, CountedPtr< CASA_STATP > &mymax, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 
virtual void _minMax (CountedPtr< CASA_STATP > &mymin, CountedPtr< CASA_STATP > &mymax, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride) const
 
virtual void _minMax (CountedPtr< CASA_STATP > &mymin, CountedPtr< CASA_STATP > &mymax, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
 
virtual void _minMax (CountedPtr< CASA_STATP > &mymin, CountedPtr< CASA_STATP > &mymax, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 
virtual void _minMax (CountedPtr< CASA_STATP > &mymin, CountedPtr< CASA_STATP > &mymax, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride) const
 
virtual void _populateArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, Int64 nr, uInt dataStride) const
 populate an unsorted array with valid data. More...
 
virtual void _populateArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
 ranges More...
 
virtual void _populateArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride) const
 
virtual void _populateArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 mask and ranges More...
 
virtual void _populateArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride) const
 weights More...
 
virtual void _populateArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
 weights and ranges More...
 
virtual void _populateArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride) const
 weights and mask More...
 
virtual void _populateArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 weights, mask, ranges More...
 
virtual void _populateArrays (vector< vector< CASA_STATP > > &arys, uInt &currentCount, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const vector< std::pair< CASA_STATP, CASA_STATP > > &includeLimits, uInt maxCount) const
 Create a vector of unsorted arrays, one array for each bin defined by includeLimits. More...
 
virtual void _populateArrays (vector< vector< CASA_STATP > > &arys, uInt &currentCount, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const vector< std::pair< CASA_STATP, CASA_STATP > > &includeLimits, uInt maxCount) const
 ranges More...
 
virtual void _populateArrays (vector< vector< CASA_STATP > > &arys, uInt &currentCount, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const vector< std::pair< CASA_STATP, CASA_STATP > > &includeLimits, uInt maxCount) const
 
virtual void _populateArrays (vector< vector< CASA_STATP > > &arys, uInt &currentCount, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const vector< std::pair< CASA_STATP, CASA_STATP > > &includeLimits, uInt maxCount) const
 mask and ranges More...
 
virtual void _populateArrays (vector< vector< CASA_STATP > > &arys, uInt &currentCount, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const vector< std::pair< CASA_STATP, CASA_STATP > > &includeLimits, uInt maxCount) const
 weights More...
 
virtual void _populateArrays (vector< vector< CASA_STATP > > &arys, uInt &currentCount, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, const vector< std::pair< CASA_STATP, CASA_STATP > > &includeLimits, uInt maxCount) const
 weights and ranges More...
 
virtual void _populateArrays (vector< vector< CASA_STATP > > &arys, uInt &currentCount, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const vector< std::pair< CASA_STATP, CASA_STATP > > &includeLimits, uInt maxCount) const
 weights and mask More...
 
virtual void _populateArrays (vector< vector< CASA_STATP > > &arys, uInt &currentCount, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, const vector< std::pair< CASA_STATP, CASA_STATP > > &includeLimits, uInt maxCount) const
 weights, mask, ranges More...
 
virtual Bool _populateTestArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, Int64 nr, uInt dataStride, uInt maxElements) const
 no weights, no mask, no ranges More...
 
virtual Bool _populateTestArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, uInt maxElements) const
 ranges More...
 
virtual Bool _populateTestArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, uInt maxElements) const
 mask More...
 
virtual Bool _populateTestArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, uInt maxElements) const
 mask and ranges More...
 
virtual Bool _populateTestArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, uInt maxElements) const
 weights More...
 
virtual Bool _populateTestArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude, uInt maxElements) const
 weights and ranges More...
 
virtual Bool _populateTestArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, uInt maxElements) const
 weights and mask More...
 
virtual Bool _populateTestArray (vector< CASA_STATP > &ary, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude, uInt maxElements) const
 weights, mask, ranges More...
 
virtual void _unweightedStats (uInt64 &ngood, CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const DataIterator &dataBegin, Int64 nr, uInt dataStride)
 no weights, no mask, no ranges More...
 
virtual void _unweightedStats (uInt64 &ngood, CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude)
 no weights, no mask More...
 
virtual void _unweightedStats (uInt64 &ngood, CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride)
 
virtual void _unweightedStats (uInt64 &ngood, CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude)
 
virtual void _weightedStats (CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride)
 has weights, but no mask, no ranges More...
 
virtual void _weightedStats (CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude)
 
virtual void _weightedStats (CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride)
 
virtual void _weightedStats (CASA_STATP &mymin, CASA_STATP &mymax, Int64 &minpos, Int64 &maxpos, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude)
 
- Protected Member Functions inherited from casacore::StatisticsAlgorithm< CASA_STATP, DataIterator, const Bool *, DataIterator >
 StatisticsAlgorithm ()
 
StatisticsAlgorithm< CASA_STATP > & operator= (const StatisticsAlgorithm< CASA_STATP > &other)
 use copy semantics More...
 
const vector< Int64 > & _getCounts () const
 
const vector< DataIterator > & _getData () const
 
StatsDataProvider< CASA_STATP > * _getDataProvider ()
 
const vector< uInt > & _getDataStrides () const
 
const std::map< uInt, Bool > & _getIsIncludeRanges () const
 
const std::map< uInt, const Bool * > _getMasks () const
 
const std::map< uInt, uInt > & _getMaskStrides () const
 
const std::map< uInt, DataRanges > & _getRanges () const
 
const std::set< StatisticsData::STATS_getStatsToCalculate () const
 
std::vector< CASA_STATP > & _getSortedArray ()
 
virtual const std::set< StatisticsData::STATS > & _getUnsupportedStatistics () const
 
const std::map< uInt, DataIterator > & _getWeights () const
 
void _setSortedArray (const vector< CASA_STATP > &v)
 

Additional Inherited Members

- Static Protected Member Functions inherited from casacore::StatisticsAlgorithm< CASA_STATP, DataIterator, const Bool *, DataIterator >
static std::map< Double, uInt64_indicesFromQuantiles (uInt64 npts, const std::set< Double > &quantiles)
 
*static std::map< uInt64, CASA_STATP_valuesFromArray (vector< CASA_STATP > &myArray, const std::set< uInt64 > &indices)
 The array can be changed by paritally sorting it up to the largest index. More...
 

Detailed Description

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
class casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >

Abstract base class for statistics algorithms which are characterized by a range of good values.

The range is usually calculated dynamically based on the entire distribution.

Definition at line 44 of file ConstrainedRangeStatistics.h.

Constructor & Destructor Documentation

§ ~ConstrainedRangeStatistics()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::~ConstrainedRangeStatistics ( )
virtual

§ ConstrainedRangeStatistics()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::ConstrainedRangeStatistics ( )
protected

Member Function Documentation

§ _accumNpts() [1/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_accumNpts ( uInt64 npts,
const DataIterator &  dataStart,
Int64  nr,
uInt  dataStride 
) const
inlineprotectedvirtual

scan through the data set to determine the number of good (unmasked, weight > 0, within range) points.

The first with no mask, no ranges, and no weights is trivial with npts = nr in this class, but is implemented here so that derived classes may override it.

Reimplemented from casacore::ClassicalStatistics< CASA_STATP >.

§ _accumNpts() [2/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_accumNpts ( uInt64 npts,
const DataIterator &  dataStart,
Int64  nr,
uInt  dataStride,
const DataRanges ranges,
Bool  isInclude 
) const
protectedvirtual

§ _accumNpts() [3/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_accumNpts ( uInt64 npts,
const DataIterator &  dataBegin,
Int64  nr,
uInt  dataStride,
const MaskIterator &  maskBegin,
uInt  maskStride 
) const
protected

§ _accumNpts() [4/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_accumNpts ( uInt64 npts,
const DataIterator &  dataBegin,
Int64  nr,
uInt  dataStride,
const MaskIterator &  maskBegin,
uInt  maskStride,
const DataRanges ranges,
Bool  isInclude 
) const
protected

§ _accumNpts() [5/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_accumNpts ( uInt64 npts,
const DataIterator &  dataBegin,
const WeightsIterator &  weightsBegin,
Int64  nr,
uInt  dataStride 
) const
protected

§ _accumNpts() [6/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_accumNpts ( uInt64 npts,
const DataIterator &  dataBegin,
const WeightsIterator &  weightsBegin,
Int64  nr,
uInt  dataStride,
const DataRanges ranges,
Bool  isInclude 
) const
protected

§ _accumNpts() [7/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_accumNpts ( uInt64 npts,
const DataIterator &  dataBegin,
const WeightsIterator &  weightsBegin,
Int64  nr,
uInt  dataStride,
const MaskIterator &  maskBegin,
uInt  maskStride,
const DataRanges ranges,
Bool  isInclude 
) const
protected

§ _accumNpts() [8/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_accumNpts ( uInt64 npts,
const DataIterator &  dataBegin,
const WeightsIterator &  weightBegin,
Int64  nr,
uInt  dataStride,
const MaskIterator &  maskBegin,
uInt  maskStride 
) const
protected

§ _findBins() [1/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_findBins ( vector< vector< uInt64 > > &  binCounts,
vector< CountedPtr< AccumType > > &  sameVal,
vector< Bool > &  allSame,
const DataIterator &  dataBegin,
Int64  nr,
uInt  dataStride,
const vector< typename StatisticsUtilities< AccumType >::BinDesc > &  binDesc,
const vector< AccumType > &  maxLimit 
) const
protectedvirtual

§ _findBins() [2/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_findBins ( vector< vector< uInt64 > > &  binCounts,
vector< CountedPtr< AccumType > > &  sameVal,
vector< Bool > &  allSame,
const DataIterator &  dataBegin,
Int64  nr,
uInt  dataStride,
const DataRanges ranges,
Bool  isInclude,
const vector< typename StatisticsUtilities< AccumType >::BinDesc > &  binDesc,
const vector< AccumType > &  maxLimit 
) const
protectedvirtual

§ _findBins() [3/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_findBins ( vector< vector< uInt64 > > &  binCounts,
vector< CountedPtr< AccumType > > &  sameVal,
vector< Bool > &  allSame,
const DataIterator &  dataBegin,
Int64  nr,
uInt  dataStride,
const MaskIterator &  maskBegin,
uInt  maskStride,
const vector< typename StatisticsUtilities< AccumType >::BinDesc > &  binDesc,
const vector< AccumType > &  maxLimit 
) const
protectedvirtual

§ _findBins() [4/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_findBins ( vector< vector< uInt64 > > &  binCounts,
vector< CountedPtr< AccumType > > &  sameVal,
vector< Bool > &  allSame,
const DataIterator &  dataBegin,
Int64  nr,
uInt  dataStride,
const MaskIterator &  maskBegin,
uInt  maskStride,
const DataRanges ranges,
Bool  isInclude,
const vector< typename StatisticsUtilities< AccumType >::BinDesc > &  binDesc,
const vector< AccumType > &  maxLimit 
) const
protectedvirtual

§ _findBins() [5/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_findBins ( vector< vector< uInt64 > > &  binCounts,
vector< CountedPtr< AccumType > > &  sameVal,
vector< Bool > &  allSame,
const DataIterator &  dataBegin,
const WeightsIterator &  weightsBegin,
Int64  nr,
uInt  dataStride,
const vector< typename StatisticsUtilities< AccumType >::BinDesc > &  binDesc,
const vector< AccumType > &  maxLimit 
) const
protectedvirtual

§ _findBins() [6/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_findBins ( vector< vector< uInt64 > > &  binCounts,
vector< CountedPtr< AccumType > > &  sameVal,
vector< Bool > &  allSame,
const DataIterator &  dataBegin,
const WeightsIterator &  weightsBegin,
Int64  nr,
uInt  dataStride,
const DataRanges ranges,
Bool  isInclude,
const vector< typename StatisticsUtilities< AccumType >::BinDesc > &  binDesc,
const vector< AccumType > &  maxLimit 
) const
protectedvirtual

§ _findBins() [7/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_findBins ( vector< vector< uInt64 > > &  binCounts,
vector< CountedPtr< AccumType > > &  sameVal,
vector< Bool > &  allSame,
const DataIterator &  dataBegin,
const WeightsIterator &  weightsBegin,
Int64  nr,
uInt  dataStride,
const MaskIterator &  maskBegin,
uInt  maskStride,
const DataRanges ranges,
Bool  isInclude,
const vector< typename StatisticsUtilities< AccumType >::BinDesc > &  binDesc,
const vector< AccumType > &  maxLimit 
) const
protectedvirtual

§ _findBins() [8/8]

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_findBins ( vector< vector< uInt64 > > &  binCounts,
vector< CountedPtr< AccumType > > &  sameVal,
vector< Bool > &  allSame,
const DataIterator &  dataBegin,
const WeightsIterator &  weightBegin,
Int64  nr,
uInt  dataStride,
const MaskIterator &  maskBegin,
uInt  maskStride,
const vector< typename StatisticsUtilities< AccumType >::BinDesc > &  binDesc,
const vector< AccumType > &  maxLimit 
) const
protectedvirtual

§ getMedian()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
AccumType casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::getMedian ( CountedPtr< uInt64 knownNpts = NULL,
CountedPtr< AccumType >  knownMin = NULL,
CountedPtr< AccumType >  knownMax = NULL,
uInt  binningThreshholdSizeBytes = 4096 *4096,
Bool  persistSortedArray = False,
uInt64  nBins = 10000 
)

In the following group of methods, if the size of the composite dataset is smaller than binningThreshholdSizeBytes, the composite dataset will be (perhaps partially) sorted and persisted in memory during the call.

In that case, and if persistSortedArray is True, this sorted array will remain in memory after the call and will be used on subsequent calls of this method when binningThreshholdSizeBytes is greater than the size of the composite dataset. If persistSortedArray is False, the sorted array will not be stored after this call completes and so any subsequent calls for which the dataset size is less than binningThreshholdSizeBytes, the dataset will be sorted from scratch. Values which are not included due to non-unity strides, are not included in any specified ranges, are masked, or have associated weights of zero are not considered as dataset members for quantile computations. If one has a priori information regarding the number of points (npts) and/or the minimum and maximum values of the data set, these can be supplied to improve performance. Note however, that if these values are not correct, the resulting median and/or quantile values will also not be correct (although see the following notes regarding max/min). Note that if this object has already had getStatistics() called, and the min and max were calculated, there is no need to pass these values in as they have been stored internally and used (although passing them in shouldn't hurt anything). If provided, npts, the number of points falling in the specified ranges which are not masked and have weights > 0, should be exactly correct. min can be less than the true minimum, and max can be greater than the True maximum, but for best performance, these should be as close to the actual min and max as possible. In order for quantile computations to occur over multiple datasets, all datasets must be available. This means that if setCalculateAsAdded() was previously called by passing in a value of True, these methods will throw an exception as the previous call indicates that there is no guarantee that all datasets will be available. If one uses a data provider (by having called setDataProvider()), then this should not be an issue.

get the median of the distribution. For a dataset with an odd number of good points, the median is just the value at index int(N/2) in the equivalent sorted dataset, where N is the number of points. For a dataset with an even number of points, the median is the mean of the values at indices int(N/2)-1 and int(N/2) in the sorted dataset.

§ getMedianAbsDevMed()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
AccumType casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::getMedianAbsDevMed ( CountedPtr< uInt64 knownNpts = NULL,
CountedPtr< AccumType >  knownMin = NULL,
CountedPtr< AccumType >  knownMax = NULL,
uInt  binningThreshholdSizeBytes = 4096 *4096,
Bool  persistSortedArray = False,
uInt64  nBins = 10000 
)

get the median of the absolute deviation about the median of the data.

§ getMedianAndQuantiles()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
AccumType casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::getMedianAndQuantiles ( std::map< Double, AccumType > &  quantileToValue,
const std::set< Double > &  quantiles,
CountedPtr< uInt64 knownNpts = NULL,
CountedPtr< AccumType >  knownMin = NULL,
CountedPtr< AccumType >  knownMax = NULL,
uInt  binningThreshholdSizeBytes = 4096 *4096,
Bool  persistSortedArray = False,
uInt64  nBins = 10000 
)

If one needs to compute both the median and quantile values, it is better to call getMedianAndQuantiles() rather than getMedian() and getQuantiles() seperately, as the first will scan large data sets fewer times than calling the seperate methods.

The return value is the median; the quantiles are returned in the quantileToValue map.

§ getMinMax()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::getMinMax ( AccumType &  mymin,
AccumType &  mymax 
)
virtual

get the min and max of the data set

§ getNPts()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual uInt64 casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::getNPts ( )
virtual

scan the dataset(s) that have been added, and find the number of good points.

This method may be called even if setStatsToCaclulate has been called and NPTS has been excluded. If setCalculateAsAdded(True) has previously been called after this object has been (re)initialized, an exception will be thrown.

Reimplemented from casacore::ClassicalStatistics< CASA_STATP >.

Reimplemented in casacore::FitToHalfStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >.

§ getQuantiles()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
std::map<Double, AccumType> casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::getQuantiles ( const std::set< Double > &  quantiles,
CountedPtr< uInt64 knownNpts = NULL,
CountedPtr< AccumType >  knownMin = NULL,
CountedPtr< AccumType >  knownMax = NULL,
uInt  binningThreshholdSizeBytes = 4096 *4096,
Bool  persistSortedArray = False,
uInt64  nBins = 10000 
)

Get the specified quantiles.

quantiles must be between 0 and 1, noninclusive.

§ getStatisticIndex()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
std::pair<Int64, Int64> casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::getStatisticIndex ( StatisticsData::STATS  stat)
virtual

see base class description

Reimplemented from casacore::ClassicalStatistics< CASA_STATP >.

§ operator=()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
ConstrainedRangeStatistics<CASA_STATP>& casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::operator= ( const ConstrainedRangeStatistics< CASA_STATP > &  other)

copy semantics

§ reset()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ConstrainedRangeStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::reset ( )
virtual

reset object to initial state.

Clears all private fields including data, accumulators, global range. It does not affect the fence factor (_f), which was set at object construction.

Reimplemented from casacore::ClassicalStatistics< CASA_STATP >.

Reimplemented in casacore::FitToHalfStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >, casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >, and casacore::HingesFencesStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >.


The documentation for this class was generated from the following file: