31#ifndef ETL_STANDARD_DEVIATION_INCLUDED
32#define ETL_STANDARD_DEVIATION_INCLUDED
43 namespace private_standard_deviation
48 template <
typename TInput,
typename TCalc>
57 template <
typename TCalc>
66 template <
typename TCalc>
76 namespace private_standard_deviation
78 template<
typename T =
void>
81 static ETL_CONSTANT
bool Sample =
false;
82 static ETL_CONSTANT
bool Population =
true;
99 template <
bool Standard_Deviation_Type,
typename TInput,
typename TCalc = TInput>
123 template <
typename TIterator>
135 sum_of_squares +=
TCalc(value * value);
144 template <
typename TIterator>
147 while (first != last)
167 template <
typename TIterator>
180 return variance_value;
190 return standard_deviation_value;
214 sum_of_squares =
calc_t(0);
217 variance_value = 0.0;
218 standard_deviation_value = 0.0;
227 void calculate()
const
231 standard_deviation_value = 0.0;
232 variance_value = 0.0;
243 if (variance_value > 0)
245 standard_deviation_value =
sqrt(variance_value);
253 calc_t sum_of_squares;
256 mutable double variance_value;
257 mutable double standard_deviation_value;
258 mutable bool recalculate;
Standard Deviation.
Definition standard_deviation.h:103
void operator()(TInput value)
Definition standard_deviation.h:158
size_t count() const
Get the total number added entries.
Definition standard_deviation.h:204
double get_standard_deviation() const
Get the standard_deviation.
Definition standard_deviation.h:186
void clear()
Clear the histogram.
Definition standard_deviation.h:212
void add(TInput value)
Add a pair of values.
Definition standard_deviation.h:133
double get_variance() const
Get the variance.
Definition standard_deviation.h:176
standard_deviation(TIterator first, TIterator last)
Constructor.
Definition standard_deviation.h:124
standard_deviation()
Constructor.
Definition standard_deviation.h:115
void add(TIterator first, TIterator last)
Add a range.
Definition standard_deviation.h:145
bitset_ext
Definition absolute.h:38
Definition functional.h:126
pair holds two objects of arbitrary type
Definition utility.h:164
Types for generic standard_deviation.
Definition standard_deviation.h:50
Definition standard_deviation.h:80
Calculates the smallest value that, when squared, will be not greater than VALUE.
Definition sqrt.h:47
Definition standard_deviation.h:93