org.apache.commons.math3.analysis.function

## Class Gaussian

- java.lang.Object
- - org.apache.commons.math3.analysis.function.Gaussian

- All Implemented Interfaces:
    DifferentiableUnivariateFunction, UnivariateDifferentiableFunction, UnivariateFunction

      public class Gaussian
      extends Object
      implements UnivariateDifferentiableFunction, DifferentiableUnivariateFunction

  Gaussian function.
  Since:
    3.0
  Version:
    $Id: Gaussian.java 1383441 2012-09-11 14:56:39Z luc $

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `Gaussian.Parametric` Parametric function where the input array contains the parameters of the Gaussian, ordered as follows: Norm Mean Standard deviation

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private double` | `i2s2` Inverse of twice the square of the standard deviation.
    `private double` | `is` Inverse of the standard deviation.
    `private double` | `mean` Mean.
    `private double` | `norm` Normalization factor.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Gaussian()` Normalized gaussian with zero mean and unit standard deviation.
    `Gaussian(double mean, double sigma)` Normalized gaussian with given mean and standard deviation.
    `Gaussian(double norm, double mean, double sigma)` Gaussian with given normalization factor, mean and standard deviation.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `UnivariateFunction` | `derivative()` Deprecated. as of 3.1, replaced by `value(DerivativeStructure)`
    `DerivativeStructure` | `value(DerivativeStructure t)` Simple mathematical function.
    `double` | `value(double x)` Compute the value of the function.
    `private static double` | `value(double xMinusMean, double norm, double i2s2)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### mean

          private final double mean

      Mean.

    - #### is

          private final double is

      Inverse of the standard deviation.

    - #### i2s2

          private final double i2s2

      Inverse of twice the square of the standard deviation.

    - #### norm

          private final double norm

      Normalization factor.

  - ### Constructor Detail

    - #### Gaussian

          public Gaussian(double norm,
                  double mean,
                  double sigma)
                   throws NotStrictlyPositiveException

      Gaussian with given normalization factor, mean and standard deviation.
      Parameters:
        `norm` - Normalization factor.
        `mean` - Mean.
        `sigma` - Standard deviation.
      Throws:
        `NotStrictlyPositiveException` - if `sigma <= 0`.

    - #### Gaussian

          public Gaussian(double mean,
                  double sigma)
                   throws NotStrictlyPositiveException

      Normalized gaussian with given mean and standard deviation.
      Parameters:
        `mean` - Mean.
        `sigma` - Standard deviation.
      Throws:
        `NotStrictlyPositiveException` - if `sigma <= 0`.

    - #### Gaussian

          public Gaussian()

      Normalized gaussian with zero mean and unit standard deviation.

  - ### Method Detail

    - #### value

          public double value(double x)

      Compute the value of the function.
      Specified by:
        `value` in interface `UnivariateFunction`
      Parameters:
        `x` - Point at which the function value should be computed.
      Returns:
        the value of the function.

    - #### derivative

          @Deprecated
          public UnivariateFunction derivative()

      Deprecated. as of 3.1, replaced by `value(DerivativeStructure)`
      Returns the derivative of the function
      Specified by:
        `derivative` in interface `DifferentiableUnivariateFunction`
      Returns:
        the derivative function

    - #### value

          private static double value(double xMinusMean,
                     double norm,
                     double i2s2)

      Parameters:
        `xMinusMean` - `x - mean`.
        `norm` - Normalization factor.
        `i2s2` - Inverse of twice the square of the standard deviation.
      Returns:
        the value of the Gaussian at `x`.

    - #### value

          public DerivativeStructure value(DerivativeStructure t)

      Simple mathematical function.

      `UnivariateDifferentiableFunction` classes compute both the value and the first derivative of the function.

      Specified by:
        `value` in interface `UnivariateDifferentiableFunction`
      Parameters:
        `t` - function input value
      Returns:
        function result
      Since:
        3.1

Copyright (c) 2003-2013 Apache Software Foundation