|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.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 |