AbstractEvaluation (Apache Commons Math 3.6.1 API)

org.apache.commons.math3.fitting.leastsquares

## Class AbstractEvaluation

- java.lang.Object
- - org.apache.commons.math3.fitting.leastsquares.AbstractEvaluation

- All Implemented Interfaces:
    LeastSquaresProblem.Evaluation

      public abstract class AbstractEvaluation
      extends Object
      implements LeastSquaresProblem.Evaluation

  An implementation of `LeastSquaresProblem.Evaluation` that is designed for extension. All of the methods implemented here use the methods that are left unimplemented.

  TODO cache results?
  Since:
    3.3

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `double` | `getCost()` Get the cost.
    `RealMatrix` | `getCovariances(double threshold)` Get the covariance matrix of the optimized parameters.
    `double` | `getRMS()` Get the normalized cost.
    `RealVector` | `getSigma(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`

- - ### Method Detail

    - #### getCovariances

          public RealMatrix getCovariances(double threshold)

      Get the covariance matrix of the optimized parameters.
      Note that this operation involves the inversion of the `JTJ` matrix, where `J` is the Jacobian matrix. The `threshold` parameter 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:
        `getCovariances` in interface `LeastSquaresProblem.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])`, where `a[i]` is the optimized value of the `i`-th parameter, and `C` is the covariance matrix.
      Specified by:
        `getSigma` in interface `LeastSquaresProblem.Evaluation`
      Parameters:
        `covarianceSingularityThreshold` - Singularity threshold (see `computeCovariances`).
      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:
        `getRMS` in interface `LeastSquaresProblem.Evaluation`
      Returns:
        the cost.

    - #### getCost

          public double getCost()

      Get the cost.
      Specified by:
        `getCost` in interface `LeastSquaresProblem.Evaluation`
      Returns:
        the cost.
      See Also:
        `LeastSquaresProblem.Evaluation.getResiduals()`

Copyright © 2003–2016 The Apache Software Foundation. All rights reserved.