org.apache.commons.math3.fitting

## Class GaussianFitter

- java.lang.Object
- - org.apache.commons.math3.fitting.CurveFitter<Gaussian.Parametric>
  - - org.apache.commons.math3.fitting.GaussianFitter

    public class GaussianFitter
    extends CurveFitter<Gaussian.Parametric>

Fits points to a `Gaussian` function.

Usage example:

       GaussianFitter fitter = new GaussianFitter(
         new LevenbergMarquardtOptimizer());
       fitter.addObservedPoint(4.0254623,  531026.0);
       fitter.addObservedPoint(4.03128248, 984167.0);
       fitter.addObservedPoint(4.03839603, 1887233.0);
       fitter.addObservedPoint(4.04421621, 2687152.0);
       fitter.addObservedPoint(4.05132976, 3461228.0);
       fitter.addObservedPoint(4.05326982, 3580526.0);
       fitter.addObservedPoint(4.05779662, 3439750.0);
       fitter.addObservedPoint(4.0636168,  2877648.0);
       fitter.addObservedPoint(4.06943698, 2175960.0);
       fitter.addObservedPoint(4.07525716, 1447024.0);
       fitter.addObservedPoint(4.08237071, 717104.0);
       fitter.addObservedPoint(4.08366408, 620014.0);
       double[] parameters = fitter.fit();

Since:
  2.2
Version:
  $Id: GaussianFitter.java 1416643 2012-12-03 19:37:14Z tn $

### Nested Class Summary

Nested Classes
`static class` `GaussianFitter.ParameterGuesser` Guesses the parameters `norm`, `mean`, and `sigma` of a `Gaussian.Parametric` based on the specified observed points.

### Constructor Summary

Constructors
Constructor and Description
`GaussianFitter(MultivariateVectorOptimizer optimizer)` Constructs an instance using the specified optimizer.

### Method Summary

Methods
`double[]` `fit()` Fits a Gaussian function to the observed points.
`double[]` `fit(double[] initialGuess)` Fits a Gaussian function to the observed points.

### Methods inherited from class org.apache.commons.math3.fitting.CurveFitter

`addObservedPoint, addObservedPoint, addObservedPoint, clearObservations, fit, fit, getObservations`

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

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

### Constructor Detail

#### GaussianFitter

    public GaussianFitter(MultivariateVectorOptimizer optimizer)

Constructs an instance using the specified optimizer.

Parameters:
  `optimizer` - Optimizer to use for the fitting.

### Method Detail

#### fit

    public double[] fit(double[] initialGuess)

Fits a Gaussian function to the observed points.

Parameters:
  `initialGuess` - First guess values in the following order:
  - Norm
  - Mean
  - Sigma
Returns:
  the parameters of the Gaussian function that best fits the observed points (in the same order as above).
Since:
  3.0

#### fit

    public double[] fit()

Fits a Gaussian function to the observed points.

Returns:
  the parameters of the Gaussian function that best fits the observed points (in the same order as above).