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

Class to calculate statistics using the so-called Chauvenet criterion. More...

#include <ChauvenetCriterionStatistics.h>

Public Member Functions

 ChauvenetCriterionStatistics (Double zscore=-1, Int maxIterations=0)
 If zscore is not negative, use that value to discard outliers beyond zscore standard deviations from the mean, and compute statistics based on the remaining data. More...
 
virtual ~ChauvenetCriterionStatistics ()
 
ChauvenetCriterionStatistics< CASA_STATP > & operator= (const ChauvenetCriterionStatistics< CASA_STATP > &other)
 copy semantics More...
 
virtual StatisticsData::ALGORITHM algorithm () const
 get the algorithm that this object uses for computing stats More...
 
virtual void reset ()
 reset object to initial state. More...
 
void setCalculateAsAdded (Bool c)
 This class does not allow statistics to be calculated as datasets are added, so an exception will be thrown if c is True. More...
 
uInt getNiter () const
 get the number of iterations More...
 
- Public Member Functions inherited from casacore::ConstrainedRangeStatistics< CASA_STATP >
virtual ~ConstrainedRangeStatistics ()
 
ConstrainedRangeStatistics< CASA_STATP > & operator= (const ConstrainedRangeStatistics< CASA_STATP > &other)
 copy semantics More...
 
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...
 
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...
 
CASA_STATP getMedianAndQuantiles (std::map< Double, CASA_STATP > &quantileToValue, const std::set< Double > &quantiles, 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() seperately, as the first will scan large data sets fewer times than calling the seperate methods. More...
 
std::map< Double, CASA_STATPgetQuantiles (const std::set< Double > &quantiles, 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)
 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...
 
- 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...
 
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...
 

Private Member Functions

void _setRange ()
 

Private Attributes

Double _zscore
 
Int _maxIterations
 
Bool _rangeIsSet
 
uInt _niter
 

Additional Inherited Members

- Protected Member Functions inherited from casacore::ConstrainedRangeStatistics< CASA_STATP >
 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 const Bool * &maskBegin, uInt maskStride) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride, const DataRanges &ranges, Bool isInclude) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride) const
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const DataIterator &weightsBegin, Int64 nr, uInt dataStride, const DataRanges &ranges, Bool isInclude) const
 
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
 
void _accumNpts (uInt64 &npts, const DataIterator &dataBegin, const DataIterator &weightBegin, Int64 nr, uInt dataStride, const const Bool * &maskBegin, uInt maskStride) const
 
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
 
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
 
- Protected Member Functions inherited from casacore::ClassicalStatistics< CASA_STATP >
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...
 
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)
 
- 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::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >

Class to calculate statistics using the so-called Chauvenet criterion.

This method iteratively calculates statistics by discarding outliers on the basis of Chauvenet's criterion, until the specified maximum number of iterations is reached, or the final iteration results in no additional points being discarded. Alternatively, one can specify a z score which indicates the number of standard deviations beyond which to discard points. In this case, no iterating is done.

Definition at line 48 of file ChauvenetCriterionStatistics.h.

Constructor & Destructor Documentation

§ ChauvenetCriterionStatistics()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::ChauvenetCriterionStatistics ( Double  zscore = -1,
Int  maxIterations = 0 
)

If zscore is not negative, use that value to discard outliers beyond zscore standard deviations from the mean, and compute statistics based on the remaining data.

If zscore is negative, use Chauvenet's Criterion to determine which outliers to discard. maxIterations is the maximum number of iterations to use before stopping. If negative, continue iterating until the set zscore or Chauvenet's criterion is met (ie that there are no remaining outliers).

§ ~ChauvenetCriterionStatistics()

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

Member Function Documentation

§ _setRange()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_setRange ( )
private

§ algorithm()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual StatisticsData::ALGORITHM casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::algorithm ( ) const
inlinevirtual

§ getNiter()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
uInt casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::getNiter ( ) const
inline

§ operator=()

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

copy semantics

§ reset()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
virtual void casacore::ChauvenetCriterionStatistics< 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::ConstrainedRangeStatistics< CASA_STATP >.

Referenced by casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::algorithm().

§ setCalculateAsAdded()

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
void casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::setCalculateAsAdded ( Bool  c)
virtual

This class does not allow statistics to be calculated as datasets are added, so an exception will be thrown if c is True.

Reimplemented from casacore::ClassicalStatistics< CASA_STATP >.

Referenced by casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::algorithm().

Member Data Documentation

§ _maxIterations

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
Int casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_maxIterations
private

Definition at line 87 of file ChauvenetCriterionStatistics.h.

§ _niter

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
uInt casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_niter
private

§ _rangeIsSet

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
Bool casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_rangeIsSet
private

Definition at line 88 of file ChauvenetCriterionStatistics.h.

§ _zscore

template<class AccumType, class DataIterator, class MaskIterator = const Bool*, class WeightsIterator = DataIterator>
Double casacore::ChauvenetCriterionStatistics< AccumType, DataIterator, MaskIterator, WeightsIterator >::_zscore
private

Definition at line 86 of file ChauvenetCriterionStatistics.h.


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