Class AbstractEvaluation
- java.lang.Object
-
- org.apache.commons.math3.fitting.leastsquares.AbstractEvaluation
-
- All Implemented Interfaces:
LeastSquaresProblem.Evaluation
- Direct Known Subclasses:
DenseWeightedEvaluation,LeastSquaresFactory.LocalLeastSquaresProblem.LazyUnweightedEvaluation,LeastSquaresFactory.LocalLeastSquaresProblem.UnweightedEvaluation
public abstract class AbstractEvaluation extends java.lang.Object implements LeastSquaresProblem.Evaluation
An implementation ofLeastSquaresProblem.Evaluationthat is designed for extension. All of the methods implemented here use the methods that are left unimplemented. TODO cache results?- Since:
- 3.3
-
-
Field Summary
Fields Modifier and Type Field Description private intobservationSizenumber of observations
-
Constructor Summary
Constructors Constructor Description AbstractEvaluation(int observationSize)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublegetCost()Get the cost.RealMatrixgetCovariances(double threshold)Get the covariance matrix of the optimized parameters.doublegetRMS()Get the normalized cost.RealVectorgetSigma(double covarianceSingularityThreshold)Get an estimate of the standard deviation of the parameters.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.commons.math3.fitting.leastsquares.LeastSquaresProblem.Evaluation
getJacobian, getPoint, getResiduals
-
-
-
-
Constructor Detail
-
AbstractEvaluation
AbstractEvaluation(int observationSize)
Constructor.- Parameters:
observationSize- the number of observation. Needed forgetRMS().
-
-
Method Detail
-
getCovariances
public RealMatrix getCovariances(double threshold)
Get the covariance matrix of the optimized parameters.
Note that this operation involves the inversion of theJTJmatrix, whereJis the Jacobian matrix. Thethresholdparameter is a way for the caller to specify that the result of this computation should be considered meaningless, and thus trigger an exception.- Specified by:
getCovariancesin interfaceLeastSquaresProblem.Evaluation- Parameters:
threshold- Singularity threshold.- Returns:
- the covariance matrix.
-
getSigma
public RealVector getSigma(double covarianceSingularityThreshold)
Get an estimate of the standard deviation of the parameters. The returned values are the square root of the diagonal coefficients of the covariance matrix,sd(a[i]) ~= sqrt(C[i][i]), wherea[i]is the optimized value of thei-th parameter, andCis the covariance matrix.- Specified by:
getSigmain interfaceLeastSquaresProblem.Evaluation- Parameters:
covarianceSingularityThreshold- Singularity threshold (seecomputeCovariances).- Returns:
- an estimate of the standard deviation of the optimized parameters
-
getRMS
public double getRMS()
Get the normalized cost. It is the square-root of the sum of squared of the residuals, divided by the number of measurements.- Specified by:
getRMSin interfaceLeastSquaresProblem.Evaluation- Returns:
- the cost.
-
getCost
public double getCost()
Get the cost.- Specified by:
getCostin interfaceLeastSquaresProblem.Evaluation- Returns:
- the cost.
- See Also:
LeastSquaresProblem.Evaluation.getResiduals()
-
-