Class EvaluationRmsChecker
- java.lang.Object
-
- org.apache.commons.math4.legacy.fitting.leastsquares.EvaluationRmsChecker
-
- All Implemented Interfaces:
ConvergenceChecker<LeastSquaresProblem.Evaluation>
public class EvaluationRmsChecker extends Object implements ConvergenceChecker<LeastSquaresProblem.Evaluation>
Check if an optimization has converged based on the change in computed RMS.- Since:
- 3.4
-
-
Constructor Summary
Constructors Constructor Description EvaluationRmsChecker(double tol)Create a convergence checker for the RMS with the same relative and absolute tolerance.EvaluationRmsChecker(double relTol, double absTol)Create a convergence checker for the RMS with a relative and absolute tolerance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanconverged(int iteration, LeastSquaresProblem.Evaluation previous, LeastSquaresProblem.Evaluation current)Check if the optimization algorithm has converged.
-
-
-
Constructor Detail
-
EvaluationRmsChecker
public EvaluationRmsChecker(double tol)
Create a convergence checker for the RMS with the same relative and absolute tolerance.Convenience constructor for when the relative and absolute tolerances are the same. Same as
new EvaluationRmsChecker(tol, tol).- Parameters:
tol- the relative and absolute tolerance.- See Also:
EvaluationRmsChecker(double, double)
-
EvaluationRmsChecker
public EvaluationRmsChecker(double relTol, double absTol)
Create a convergence checker for the RMS with a relative and absolute tolerance.The optimization has converged when the RMS of consecutive evaluations are equal to within the given relative tolerance or absolute tolerance.
- Parameters:
relTol- the relative tolerance.absTol- the absolute tolerance.- See Also:
Precision.equals(double, double, double),Precision.equalsWithRelativeTolerance(double, double, double)
-
-
Method Detail
-
converged
public boolean converged(int iteration, LeastSquaresProblem.Evaluation previous, LeastSquaresProblem.Evaluation current)
Check if the optimization algorithm has converged.- Specified by:
convergedin interfaceConvergenceChecker<LeastSquaresProblem.Evaluation>- Parameters:
iteration- Current iteration.previous- Best point in the previous iteration.current- Best point in the current iteration.- Returns:
trueif the algorithm is considered to have converged.
-
-