Package org.hipparchus.fitting
Class GaussianCurveFitter
- java.lang.Object
-
- org.hipparchus.fitting.AbstractCurveFitter
-
- org.hipparchus.fitting.GaussianCurveFitter
-
public class GaussianCurveFitter extends AbstractCurveFitter
Fits points to aGaussianfunction.
Theinitial guess valuesmust be passed in the following order:- Normalization
- Mean
- Sigma
Usage example:
WeightedObservedPoints obs = new WeightedObservedPoints(); obs.add(4.0254623, 531026.0); obs.add(4.03128248, 984167.0); obs.add(4.03839603, 1887233.0); obs.add(4.04421621, 2687152.0); obs.add(4.05132976, 3461228.0); obs.add(4.05326982, 3580526.0); obs.add(4.05779662, 3439750.0); obs.add(4.0636168, 2877648.0); obs.add(4.06943698, 2175960.0); obs.add(4.07525716, 1447024.0); obs.add(4.08237071, 717104.0); obs.add(4.08366408, 620014.0); double[] parameters = GaussianCurveFitter.create().fit(obs.toList());
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classGaussianCurveFitter.ParameterGuesserGuesses the parametersnorm,mean, andsigmaof aGaussian.Parametricbased on the specified observed points.-
Nested classes/interfaces inherited from class org.hipparchus.fitting.AbstractCurveFitter
AbstractCurveFitter.TheoreticalValuesFunction
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static GaussianCurveFittercreate()Creates a default curve fitter.protected LeastSquaresProblemgetProblem(Collection<WeightedObservedPoint> observations)Creates a least squares problem corresponding to the appropriate curve.GaussianCurveFitterwithMaxIterations(int newMaxIter)Configure the maximum number of iterations.GaussianCurveFitterwithStartPoint(double[] newStart)Configure the start point (initial guess).-
Methods inherited from class org.hipparchus.fitting.AbstractCurveFitter
fit, getOptimizer
-
-
-
-
Method Detail
-
create
public static GaussianCurveFitter create()
Creates a default curve fitter. The initial guess for the parameters will beGaussianCurveFitter.ParameterGuessercomputed automatically, and the maximum number of iterations of the optimization algorithm is set toInteger.MAX_VALUE.- Returns:
- a curve fitter.
- See Also:
withStartPoint(double[]),withMaxIterations(int)
-
withStartPoint
public GaussianCurveFitter withStartPoint(double[] newStart)
Configure the start point (initial guess).- Parameters:
newStart- new start point (initial guess)- Returns:
- a new instance.
-
withMaxIterations
public GaussianCurveFitter withMaxIterations(int newMaxIter)
Configure the maximum number of iterations.- Parameters:
newMaxIter- maximum number of iterations- Returns:
- a new instance.
-
getProblem
protected LeastSquaresProblem getProblem(Collection<WeightedObservedPoint> observations)
Creates a least squares problem corresponding to the appropriate curve.- Specified by:
getProblemin classAbstractCurveFitter- Parameters:
observations- Sample points.- Returns:
- the least squares problem to use for fitting the curve to the
given
points.
-
-