The OpenD Programming Language

MeanSD

Output range to compute mean, stdev, variance online. Getter methods * for stdev, var cost a few floating point ops. Getter for mean costs * a single branch to check for N == 0. Relatively expensive floating point * ops, if you only need mean, try Mean. This struct uses O(1) space and * does *NOT* store the individual elements. * * Note: This struct can implicitly convert to a Mean struct. * * References: Computing Higher-Order Moments Online. * http://people.xiph.org/~tterribe/notes/homs.html * * Examples: * --- * MeanSD summ; * summ.put(1); * summ.put(2); * summ.put(3); * summ.put(4); * summ.put(5); * assert(summ.mean == 3); * assert(summ.stdev == sqrt(2.5)); * assert(summ.var == 2.5); * ---

Alias This

toMean

Members

Functions

put
void put(double element)
put
void put(typeof(this) rhs)

Combine two MeanSD's.

toString
string toString()

Properties

N
double N [@property getter]
mean
double mean [@property getter]
mse
double mse [@property getter]

Mean squared error. In other words, a biased estimate of variance.

stdev
double stdev [@property getter]
sum
double sum [@property getter]
toMean
Mean toMean [@property getter]

Converts this struct to a Mean struct. Also called when an implicit conversion via alias this takes place.

toMeanSD
MeanSD toMeanSD [@property getter]

Simply returns this. Useful in generic programming contexts.

var
double var [@property getter]

Meta