/** * Configure the maximum number of iterations. * @param newMaxIter maximum number of iterations * @return a new instance. */ public HarmonicCurveFitter withMaxIterations(int newMaxIter) { return new HarmonicCurveFitter(initialGuess, newMaxIter); }
HarmonicCurveFitter curveFitter = HarmonicCurveFitter.create(); curveFitter = curveFitter.withStartPoint(guess); double[] coef = curveFitter.fit(points.toList()); HarmonicOscillator pf = new HarmonicOscillator(coef[0], coef[1], coef[2]);
/** * Creates a default curve fitter. * The initial guess for the parameters will be {@link ParameterGuesser} * computed automatically, and the maximum number of iterations of the * optimization algorithm is set to {@link Integer#MAX_VALUE}. * * @return a curve fitter. * * @see #withStartPoint(double[]) * @see #withMaxIterations(int) */ public static HarmonicCurveFitter create() { return new HarmonicCurveFitter(null, Integer.MAX_VALUE); }
/** * Configure the start point (initial guess). * @param newStart new start point (initial guess) * @return a new instance. */ public HarmonicCurveFitter withStartPoint(double[] newStart) { return new HarmonicCurveFitter(newStart.clone(), maxIter); }
/** * Configure the maximum number of iterations. * @param newMaxIter maximum number of iterations * @return a new instance. */ public HarmonicCurveFitter withMaxIterations(int newMaxIter) { return new HarmonicCurveFitter(initialGuess, newMaxIter); }
/** * Configure the maximum number of iterations. * @param newMaxIter maximum number of iterations * @return a new instance. */ public HarmonicCurveFitter withMaxIterations(int newMaxIter) { return new HarmonicCurveFitter(initialGuess, newMaxIter); }
/** * Creates a default curve fitter. * The initial guess for the parameters will be {@link ParameterGuesser} * computed automatically, and the maximum number of iterations of the * optimization algorithm is set to {@link Integer#MAX_VALUE}. * * @return a curve fitter. * * @see #withStartPoint(double[]) * @see #withMaxIterations(int) */ public static HarmonicCurveFitter create() { return new HarmonicCurveFitter(null, Integer.MAX_VALUE); }
/** * Creates a default curve fitter. * The initial guess for the parameters will be {@link ParameterGuesser} * computed automatically, and the maximum number of iterations of the * optimization algorithm is set to {@link Integer#MAX_VALUE}. * * @return a curve fitter. * * @see #withStartPoint(double[]) * @see #withMaxIterations(int) */ public static HarmonicCurveFitter create() { return new HarmonicCurveFitter(null, Integer.MAX_VALUE); }
/** * Configure the start point (initial guess). * @param newStart new start point (initial guess) * @return a new instance. */ public HarmonicCurveFitter withStartPoint(double[] newStart) { return new HarmonicCurveFitter(newStart.clone(), maxIter); }
/** * Configure the start point (initial guess). * @param newStart new start point (initial guess) * @return a new instance. */ public HarmonicCurveFitter withStartPoint(double[] newStart) { return new HarmonicCurveFitter(Cloner.clone(newStart), maxIter); }