41 GaussianStretch::GaussianStretch(
Histogram &histogram,
const double mean,
const double standardDeviation) {
44 p_stretch.ClearPairs();
46 double lastvalue = histogram.
Minimum();
47 for(
int i = 1; i <= histogram.
Bins() - 1; i++) {
48 double percent = 100.0 * (double)i / (
double)histogram.
Bins();
49 double input = histogram.
Percent(percent);
51 if(lastvalue + DBL_EPSILON > input)
continue;
52 if(fabs(input - lastvalue) < 100.0 * DBL_EPSILON)
continue;
54 p_stretch.AddPair(input, output);
58 if(histogram.
Maximum() > lastvalue) {
59 if(abs(histogram.
Maximum() - lastvalue) > 100 * DBL_EPSILON) {
73 double GaussianStretch::Map(
const double value)
const {
74 return p_stretch.Map(value);
gaussian distribution class
double Minimum() const
Returns the absolute minimum double found in all data passed through the AddData method.
Namespace for the standard library.
double InverseCumulativeDistribution(const double percent)
Computes and returns the inverse cumulative distribution evaluated at the specified percentage valu...
double Maximum() const
Returns the absolute maximum double found in all data passed through the AddData method.
Container of a cube histogram.
double Percent(const double percent) const
Computes and returns the value at X percent of the histogram.
Namespace for ISIS/Bullet specific routines.
int Bins() const
Returns the number of bins in the histogram.