Class PolynomialCurveFitter


  • public class PolynomialCurveFitter
    extends AbstractCurveFitter
    Fits points to a polynomial function.
    The size of the initial guess array defines the degree of the polynomial to be fitted. They must be sorted in increasing order of the polynomial's degree. The optimal values of the coefficients will be returned in the same order.
    Since:
    3.3
    • Method Detail

      • create

        public static PolynomialCurveFitter create​(int degree)
        Creates a default curve fitter. Zero will be used as initial guess for the coefficients, and the maximum number of iterations of the optimization algorithm is set to Integer.MAX_VALUE.
        Parameters:
        degree - Degree of the polynomial to be fitted.
        Returns:
        a curve fitter.
        See Also:
        withStartPoint(double[]), withMaxIterations(int)
      • withStartPoint

        public PolynomialCurveFitter withStartPoint​(double[] newStart)
        Configure the start point (initial guess).
        Parameters:
        newStart - new start point (initial guess)
        Returns:
        a new instance.
      • withMaxIterations

        public PolynomialCurveFitter withMaxIterations​(int newMaxIter)
        Configure the maximum number of iterations.
        Parameters:
        newMaxIter - maximum number of iterations
        Returns:
        a new instance.
      • getProblem

        protected LeastSquaresProblem getProblem​(java.util.Collection<WeightedObservedPoint> observations)
        Creates a least squares problem corresponding to the appropriate curve.
        Specified by:
        getProblem in class AbstractCurveFitter
        Parameters:
        observations - Sample points.
        Returns:
        the least squares problem to use for fitting the curve to the given points.