|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.commons.math3.fitting.CurveFitter<T>
T - Function to use for the fit.public class CurveFitter<T extends ParametricUnivariateFunction>
Fitter for parametric univariate real functions y = f(x).
When a univariate real function y = f(x) does depend on some
unknown parameters p0, p1 ... pn-1,
this class can be used to find these parameters. It does this
by fitting the curve so it remains very close to a set of
observed points (x0, y0), (x1,
y1) ... (xk-1, yk-1). This fitting
is done by finding the parameters values that minimizes the objective
function ∑(yi-f(xi))2. This is
really a least squares problem.
| Constructor Summary | |
|---|---|
CurveFitter(MultivariateVectorOptimizer optimizer)
Simple constructor. |
|
| Method Summary | |
|---|---|
void |
addObservedPoint(double x,
double y)
Add an observed (x,y) point to the sample with unit weight. |
void |
addObservedPoint(double weight,
double x,
double y)
Add an observed weighted (x,y) point to the sample. |
void |
addObservedPoint(WeightedObservedPoint observed)
Add an observed weighted (x,y) point to the sample. |
void |
clearObservations()
Remove all observations. |
double[] |
fit(int maxEval,
T f,
double[] initialGuess)
Fit a curve. |
double[] |
fit(T f,
double[] initialGuess)
Fit a curve. |
WeightedObservedPoint[] |
getObservations()
Get the observed points. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public CurveFitter(MultivariateVectorOptimizer optimizer)
optimizer - Optimizer to use for the fitting.| Method Detail |
|---|
public void addObservedPoint(double x,
double y)
Calling this method is equivalent to call
addObservedPoint(1.0, x, y).
x - abscissa of the pointy - observed value of the point at x, after fitting we should
have f(x) as close as possible to this valueaddObservedPoint(double, double, double),
addObservedPoint(WeightedObservedPoint),
getObservations()
public void addObservedPoint(double weight,
double x,
double y)
weight - weight of the observed point in the fitx - abscissa of the pointy - observed value of the point at x, after fitting we should
have f(x) as close as possible to this valueaddObservedPoint(double, double),
addObservedPoint(WeightedObservedPoint),
getObservations()public void addObservedPoint(WeightedObservedPoint observed)
observed - observed point to addaddObservedPoint(double, double),
addObservedPoint(double, double, double),
getObservations()public WeightedObservedPoint[] getObservations()
addObservedPoint(double, double),
addObservedPoint(double, double, double),
addObservedPoint(WeightedObservedPoint)public void clearObservations()
public double[] fit(T f,
double[] initialGuess)
addObservedPoint method.
f - parametric function to fit.initialGuess - first guess of the function parameters.
DimensionMismatchException - if the start point dimension is wrong.
public double[] fit(int maxEval,
T f,
double[] initialGuess)
addObservedPoint method.
f - parametric function to fit.initialGuess - first guess of the function parameters.maxEval - Maximum number of function evaluations.
TooManyEvaluationsException - if the number of allowed evaluations is exceeded.
DimensionMismatchException - if the start point dimension is wrong.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||