Loading...
Searching...
No Matches
Stats Class Reference

This class computes statistics (minimum value, maximum value, mean, variance and standard deviation) of a population of floating-point values. More...

`#include <openvdb/math/Stats.h>`

Inheritance diagram for Stats:

## Public Member Functions

| Stats ()
void | add (double val)
| Add a single sample.
void | add (double val, uint64_t n)
| Add n samples with constant value val.
void | add (const Stats &other)
| Add the samples from the other Stats instance.
double | avg () const
| Return the arithmetic mean, i.e. average, value.
double | mean () const
double | var () const
| Return the population variance.
double | variance () const
double | std () const
| Return the standard deviation (=Sqrt(variance)) as defined from the (biased) population variance.
double | stdDev () const
void | print (const std::string &name="", std::ostream &strm=std::cout, int precision=3) const
| Print statistics to the specified output stream.
void | add (const Extrema &other)
| Add the samples from the other Stats instance.
uint64_t | size () const
| Return the size of the population, i.e., the total number of samples.
double | min () const
| Return the minimum value.
double | max () const
| Return the maximum value.
double | range () const
| Return the range defined as the maximum value minus the minimum value.

## Protected Member Functions

void | join (const Extrema &other)

## Protected Attributes

double | mAvg
double | mAux
uint64_t | mSize
double | mMin
double | mMax

## Detailed Description

This class computes statistics (minimum value, maximum value, mean, variance and standard deviation) of a population of floating-point values.

variance = Mean[ (X-Mean[X])^2 ] = Mean[X^2] - Mean[X]^2, standard deviation = sqrt(variance)

Note
  This class employs incremental computation and double precision.

## Constructor & Destructor Documentation

## Stats()

Stats | ( |  | ) |

inline

## Member Function Documentation

## add() [1/4]

void add | ( | const Extrema & | other | ) |

inlineinherited

Add the samples from the other Stats instance.

## add() [2/4]

void add | ( | const Stats & | other | ) |

inline

Add the samples from the other Stats instance.

## add() [3/4]

void add | ( | double | val | ) |

inline

Add a single sample.

## add() [4/4]

void add | ( | double | val,
|  | uint64_t | n
| ) |  |

inline

Add n samples with constant value val.

## avg()

double avg | ( |  | ) | const

inline

Return the arithmetic mean, i.e. average, value.

## join()

void join | ( | const Extrema & | other | ) |

inlineprotectedinherited

## max()

double max | ( |  | ) | const

inlineinherited

Return the maximum value.

## mean()

double mean | ( |  | ) | const

inline

## min()

double min | ( |  | ) | const

inlineinherited

Return the minimum value.

## print()

void print | ( | const std::string & | name = `""`,
|  | std::ostream & | strm = `std::cout`,
|  | int | precision = `3`
| ) |  | const

inline

Print statistics to the specified output stream.

## range()

double range | ( |  | ) | const

inlineinherited

Return the range defined as the maximum value minus the minimum value.

## size()

uint64_t size | ( |  | ) | const

inlineinherited

Return the size of the population, i.e., the total number of samples.

## std()

double std | ( |  | ) | const

inline

Return the standard deviation (=Sqrt(variance)) as defined from the (biased) population variance.

## stdDev()

double stdDev | ( |  | ) | const

inline

## var()

double var | ( |  | ) | const

inline

Return the population variance.

Note
  The unbiased sample variance = population variance *

## variance()

double variance | ( |  | ) | const

inline

## Member Data Documentation

## mAux

double mAux

protected

## mAvg

double mAvg

protected

## mMax

double mMax

protected

## mMin

double mMin

protected

## mSize

uint64_t mSize

protected