USGS

Isis 3.0 Developer's Reference (API)

Home

Isis::GaussianDistribution Class Reference
[Statistics]

gaussian distribution class More...

#include <GaussianDistribution.h>

Inherits Isis::Statistics.

List of all members.

Public Member Functions

 GaussianDistribution (const double mean=0.0, const double standardDeviation=1.0)
 Constructs a gaussian distribution object.
 ~GaussianDistribution ()
double Probability (const double value)
 Computes and returns the probability of the specified value on the gaussian distribution.
double CumulativeDistribution (const double value)
 Computes and returns the cumulative distribution up to the specified value on the gaussian distribution.
double InverseCumulativeDistribution (const double percent)
 Computes and returns the inverse cumulative distribution evaluated at the specified percentage value on the gaussian distribution.
double Mean () const
 Returns the mean.
double StandardDeviation () const
 Returns the standard deviation.
void Reset ()
 Reset all accumulators and counters to zero.
void AddData (const double *data, const unsigned int count)
 Add an array of doubles to the accumulators and counters.
void AddData (const double data)
 Add a double to the accumulators and counters.
void RemoveData (const double *data, const unsigned int count)
 Remove an array of doubles from the accumulators and counters.
void RemoveData (const double data)
void SetValidRange (const double minimum=Isis::ValidMinimum, const double maximum=Isis::ValidMaximum)
double ValidMinimum () const
double ValidMaximum () const
bool InRange (const double value)
bool AboveRange (const double value)
bool BelowRange (const double value)
double Average () const
 Computes and returns the average.
double Variance () const
 Computes and returns the variance.
double Rms () const
 Computes and returns the rms.
double Minimum () const
 Returns the absolute minimum double found in all data passed through the AddData method.
double Maximum () const
 Returns the absolute maximum double found in all data passed through the AddData method.
double ChebyshevMinimum (const double percent=99.5) const
 This method returns a minimum such that X percent of the data will fall with K standard deviations of the average (Chebyshev's Theorem).
double ChebyshevMaximum (const double percent=99.5) const
 This method returns a maximum such that X percent of the data will fall with K standard deviations of the average (Chebyshev's Theorem).
double BestMinimum (const double percent=99.5) const
 This method returns the better of the absolute minimum or the Chebyshev minimum.
double BestMaximum (const double percent=99.5) const
 This method returns the better of the absolute maximum or the Chebyshev maximum.
double ZScore (const double value) const
 This method returns the better of the z-score of the given value.
BigInt TotalPixels () const
 Returns the total number of pixels processed (valid and invalid).
BigInt ValidPixels () const
 Returns the total number of valid pixels processed.
BigInt OverRangePixels () const
 Returns the total number of pixels over the valid range encountered.
BigInt UnderRangePixels () const
 Returns the total number of pixels under the valid range encountered.
BigInt NullPixels () const
 Returns the total number of NULL pixels encountered.
BigInt LisPixels () const
 Returns the total number of low instrument saturation (LIS) pixels encountered.
BigInt LrsPixels () const
 Returns the total number of low representation saturation (LRS) pixels encountered.
BigInt HisPixels () const
 Returns the total number of high instrument saturation (HIS) pixels encountered.
BigInt HrsPixels () const
 Returns the total number of high representation saturation (HRS) pixels encountered.
BigInt OutOfRangePixels () const
 Returns the total number of pixels outside of the valid range encountered.
double Sum () const
 Returns the sum of all the data.
double SumSquare () const
 Returns the sum of all the squared data.

Detailed Description

gaussian distribution class

This class is used to calculate the probability distribution function, the cumulative distribution function, and the inverse cumulative distribution function of a gaussian (or normal) distribution.

Author:
2006-05-25 Jacob Danton

Constructor & Destructor Documentation

Isis::GaussianDistribution::GaussianDistribution ( const double  mean = 0.0,
const double  standardDeviation = 1.0 
)

Constructs a gaussian distribution object.

Parameters:
mean The Distribution's mean
standardDeviation The Distribution's standard deviation
Isis::GaussianDistribution::~GaussianDistribution (  )  [inline]

Member Function Documentation

bool Isis::Statistics::AboveRange ( const double  value  )  [inline, inherited]
void Isis::Statistics::AddData ( const double  data  )  [inline, inherited]

Add a double to the accumulators and counters.

This method can be invoked multiple times (for example: once for each pixel in a cube) before obtaining statistics.

Parameters:
data The data to be added to the data set used for statistical calculations.

References Isis::Statistics::AboveRange(), Isis::Statistics::InRange(), Isis::IsHisPixel(), Isis::IsHrsPixel(), Isis::IsLisPixel(), Isis::IsLrsPixel(), Isis::IsNullPixel(), and Isis::IsValidPixel().

void Isis::Statistics::AddData ( const double *  data,
const unsigned int  count 
) [inherited]
double Isis::Statistics::Average (  )  const [inherited]
bool Isis::Statistics::BelowRange ( const double  value  )  [inline, inherited]
double Isis::Statistics::BestMaximum ( const double  percent = 99.5  )  const [inherited]

This method returns the better of the absolute maximum or the Chebyshev maximum.

The better value is considered the value closest to the mean.

Parameters:
percent The probability that the maximum is within K standard deviations of the mean (Used to compute the Chebyshev maximum). Default value = 99.5.
Returns:
Best of absolute and Chebyshev maximums
See also:
Statistics::Maximum Statistics::ChebyshevMaximum

References Isis::Statistics::ChebyshevMaximum(), Isis::Statistics::Maximum(), and Isis::NULL8.

Referenced by Isis::StretchTool::histFromBuffer(), Isis::VisualDisplay::setPixelData(), Isis::LinearStretchType::setStretch(), Isis::StretchTool::stretchBand(), and Isis::StretchTool::stretchBuffer().

double Isis::Statistics::BestMinimum ( const double  percent = 99.5  )  const [inherited]

This method returns the better of the absolute minimum or the Chebyshev minimum.

The better value is considered the value closest to the mean.

Parameters:
percent The probability that the minimum is within K standard deviations of the mean (Used to compute the Chebyshev minimum). Default value = 99.5.
Returns:
Best of absolute and Chebyshev minimums
See also:
Statistics::Minimum Statistics::ChebyshevMinimum

References Isis::Statistics::ChebyshevMinimum(), min(), Isis::Statistics::Minimum(), and Isis::NULL8.

Referenced by Isis::StretchTool::histFromBuffer(), Isis::VisualDisplay::setPixelData(), Isis::LinearStretchType::setStretch(), Isis::StretchTool::stretchBand(), and Isis::StretchTool::stretchBuffer().

double Isis::Statistics::ChebyshevMaximum ( const double  percent = 99.5  )  const [inherited]

This method returns a maximum such that X percent of the data will fall with K standard deviations of the average (Chebyshev's Theorem).

It can be used to obtain a minimum that does not include statistical outliers.

Parameters:
percent The probability that the maximum is within K standard deviations of the mean. Default value = 99.5.
Returns:
maximum value excluding statistical outliers
Exceptions:
Isis::iException::Message 

References _FILEINFO_, Isis::Statistics::Average(), Isis::iException::Message(), Isis::NULL8, Isis::iException::Programmer, and Isis::Statistics::StandardDeviation().

Referenced by Isis::Statistics::BestMaximum().

double Isis::Statistics::ChebyshevMinimum ( const double  percent = 99.5  )  const [inherited]

This method returns a minimum such that X percent of the data will fall with K standard deviations of the average (Chebyshev's Theorem).

It can be used to obtain a minimum that does not include statistical outliers.

Parameters:
percent The probability that the minimum is within K standard deviations of the mean. Default value = 99.5.
Returns:
Minimum value (excluding statistical outliers)
Exceptions:
Isis::iException::Message 

References _FILEINFO_, Isis::Statistics::Average(), Isis::iException::Message(), Isis::NULL8, Isis::iException::Programmer, and Isis::Statistics::StandardDeviation().

Referenced by Isis::Statistics::BestMinimum().

double Isis::GaussianDistribution::CumulativeDistribution ( const double  value  ) 

Computes and returns the cumulative distribution up to the specified value on the gaussian distribution.

Parameters:
value the input value
Returns:
The CDF evaluated at the specified value

References Isis::PI(), sum, and x.

Referenced by InverseCumulativeDistribution().

BigInt Isis::Statistics::HisPixels (  )  const [inherited]

Returns the total number of high instrument saturation (HIS) pixels encountered.

Returns:
The number of HIS pixels (data) processed
BigInt Isis::Statistics::HrsPixels (  )  const [inherited]

Returns the total number of high representation saturation (HRS) pixels encountered.

Returns:
The number of HRS pixels (data) processed
bool Isis::Statistics::InRange ( const double  value  )  [inline, inherited]
double Isis::GaussianDistribution::InverseCumulativeDistribution ( const double  percent  ) 

Computes and returns the inverse cumulative distribution evaluated at the specified percentage value on the gaussian distribution.

See also:
"Rational Chebyshev Approximations for the Error Function
  • W. J. Cody
http://home.online.no/~pjacklam/notes/invnorm/#The_distribution_function
Parameters:
percent The input percentage value
Returns:
The ICDF evaluated at the specified percentage value

References _FILEINFO_, CumulativeDistribution(), Isis::iException::Message(), Isis::PI(), Isis::iException::Programmer, and x.

Referenced by Isis::GaussianStretch::GaussianStretch().

BigInt Isis::Statistics::LisPixels (  )  const [inherited]

Returns the total number of low instrument saturation (LIS) pixels encountered.

Returns:
The number of LIS pixels (data) processed
BigInt Isis::Statistics::LrsPixels (  )  const [inherited]

Returns the total number of low representation saturation (LRS) pixels encountered.

Returns:
The number of LRS pixels (data) processed
double Isis::Statistics::Maximum (  )  const [inherited]

Returns the absolute maximum double found in all data passed through the AddData method.

If there are no valid pixels, then NULL8 is returned.

Returns:
Current maximum value in data set
Exceptions:
Isis::iException::Message The data set is blank, so the maximum is invalid.

References _FILEINFO_, Isis::iException::Message(), Isis::NULL8, and Isis::iException::Programmer.

Referenced by Isis::Statistics::BestMaximum(), Isis::GaussianStretch::GaussianStretch(), Isis::ControlNetStatistics::GenerateControlNetStats(), Isis::ControlNet::GetMaximumResidual(), Isis::VisualDisplay::paintPixmap(), Isis::SawtoothStretchType::SawtoothStretchType(), Isis::HistogramWidget::setHistogram(), Isis::StretchTool::stretchBuffer(), and Isis::Statistics::ZScore().

double Isis::GaussianDistribution::Mean (  )  const [inline]

Returns the mean.

Returns:
The mean
double Isis::Statistics::Minimum (  )  const [inherited]

Returns the absolute minimum double found in all data passed through the AddData method.

If there are no valid pixels, then NULL8 is returned.

Returns:
Current minimum value in data set.
Exceptions:
Isis::iException::Message The data set is blank, so the minimum is invalid.

References _FILEINFO_, Isis::iException::Message(), Isis::NULL8, and Isis::iException::Programmer.

Referenced by Isis::Statistics::BestMinimum(), Isis::GaussianStretch::GaussianStretch(), Isis::ControlNetStatistics::GenerateControlNetStats(), Isis::VisualDisplay::paintPixmap(), Isis::SawtoothStretchType::SawtoothStretchType(), Isis::HistogramWidget::setHistogram(), and Isis::StretchTool::stretchBuffer().

BigInt Isis::Statistics::NullPixels (  )  const [inherited]

Returns the total number of NULL pixels encountered.

Returns:
The number of NULL pixels (data) processed
BigInt Isis::Statistics::OutOfRangePixels (  )  const [inherited]

Returns the total number of pixels outside of the valid range encountered.

Returns:
The number of Out of Range pixels (data) processed
BigInt Isis::Statistics::OverRangePixels (  )  const [inherited]

Returns the total number of pixels over the valid range encountered.

Returns:
The number of pixels less than the ValidMaximum() processed
double Isis::GaussianDistribution::Probability ( const double  value  ) 

Computes and returns the probability of the specified value on the gaussian distribution.

Parameters:
value The input value
Returns:
The PDF evaluated at the specified value

References Isis::PI().

void Isis::Statistics::RemoveData ( const double  data  )  [inherited]
void Isis::Statistics::RemoveData ( const double *  data,
const unsigned int  count 
) [inherited]

Remove an array of doubles from the accumulators and counters.

Note that is invalidates the absolute minimum and maximum. They will no longer be usable.

Parameters:
data The data to be removed from data set used for statistical calculations.
count The number of elements in the data to be removed.
Exceptions:
Isis::iException::Message RemoveData is trying to remove data that doesn't exist.

Reimplemented in Isis::Histogram.

References _FILEINFO_, Isis::Statistics::AboveRange(), Isis::Statistics::InRange(), Isis::IsHisPixel(), Isis::IsHrsPixel(), Isis::IsLisPixel(), Isis::IsLrsPixel(), Isis::IsNullPixel(), Isis::IsValidPixel(), Isis::iException::Message(), and Isis::iException::Programmer.

Referenced by Isis::Statistics::RemoveData().

void Isis::Statistics::Reset (  )  [inherited]
double Isis::Statistics::Rms (  )  const [inherited]

Computes and returns the rms.

If there are no valid pixels, then NULL8 is returned.

Returns:
The rms (root mean square)

References Isis::NULL8.

Referenced by Isis::ControlPoint::GetLineResidualRms(), Isis::ControlPoint::GetResidualRms(), and Isis::ControlPoint::GetSampleResidualRms().

void Isis::Statistics::SetValidRange ( const double  minimum = Isis::ValidMinimum,
const double  maximum = Isis::ValidMaximum 
) [inherited]
double Isis::GaussianDistribution::StandardDeviation (  )  const [inline]

Returns the standard deviation.

Returns:
The standard deviation

Reimplemented from Isis::Statistics.

double Isis::Statistics::Sum (  )  const [inline, inherited]

Returns the sum of all the data.

Returns:
The sum of the data
double Isis::Statistics::SumSquare (  )  const [inline, inherited]

Returns the sum of all the squared data.

Returns:
The sum of the squared data

Referenced by Isis::BundleAdjust::Solve().

BigInt Isis::Statistics::TotalPixels (  )  const [inherited]

Returns the total number of pixels processed (valid and invalid).

Returns:
The number of pixels (data) processed

Referenced by Isis::VisualDisplay::paintPixmap(), and Isis::BundleAdjust::Solve().

BigInt Isis::Statistics::UnderRangePixels (  )  const [inherited]

Returns the total number of pixels under the valid range encountered.

Returns:
The number of pixels less than the ValidMinimum() processed
double Isis::Statistics::ValidMaximum (  )  const [inline, inherited]
double Isis::Statistics::ValidMinimum (  )  const [inline, inherited]
BigInt Isis::Statistics::ValidPixels (  )  const [inherited]

Returns the total number of valid pixels processed.

Only valid pixels are utilized when computing the average, standard deviation, variance, minimum and maximum.

Returns:
The number of valid pixels (data) processed

Referenced by Isis::OverlapNormalization::AddOverlap(), Isis::QHistogram::Load(), Isis::Histogram::Percent(), Isis::Histogram::Skew(), Isis::StretchTool::stretchBuffer(), and Isis::StretchTool::updateHistograms().

double Isis::Statistics::Variance (  )  const [inherited]

Computes and returns the variance.

If there are no valid pixels, then NULL8 is returned.

Returns:
The variance

References Isis::NULL8.

Referenced by Isis::Statistics::StandardDeviation(), and Isis::OverlapStatistics::toPvl().

double Isis::Statistics::ZScore ( const double  value  )  const [inherited]

This method returns the better of the z-score of the given value.

The z-score is the number of standard deviations the value lies above or below the average.

Parameters:
value The value to calculate the z-score of.
Returns:
z-score

References _FILEINFO_, Isis::Statistics::Average(), Isis::Statistics::Maximum(), Isis::iException::Message(), Isis::iException::Programmer, and Isis::Statistics::StandardDeviation().


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