org.apache.commons.math3.optimization.general

## Class GaussNewtonOptimizer

- java.lang.Object
- - org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateVectorOptimizer<DifferentiableMultivariateVectorFunction>
  - - org.apache.commons.math3.optimization.general.AbstractLeastSquaresOptimizer
    - - org.apache.commons.math3.optimization.general.GaussNewtonOptimizer

All Implemented Interfaces:
  BaseMultivariateVectorOptimizer<DifferentiableMultivariateVectorFunction>, BaseOptimizer<PointVectorValuePair>, DifferentiableMultivariateVectorOptimizer

Deprecated.
As of 3.1 (to be removed in 4.0).

    @Deprecated
    public class GaussNewtonOptimizer
    extends AbstractLeastSquaresOptimizer

Gauss-Newton least-squares solver.

This class solve a least-square problem by solving the normal equations of the linearized problem at each iteration. Either LU decomposition or QR decomposition can be used to solve the normal equations. LU decomposition is faster but QR decomposition is more robust for difficult problems.

Since:
  2.0
Version:
  $Id: GaussNewtonOptimizer.java 1423687 2012-12-18 21:56:18Z erans $

### Field Summary

Fields
`private boolean` `useLU` Deprecated. Indicator for using LU decomposition.

### Fields inherited from class org.apache.commons.math3.optimization.general.AbstractLeastSquaresOptimizer

`cols, cost, objective, point, rows, weightedResidualJacobian, weightedResiduals`

### Fields inherited from class org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateVectorOptimizer

`evaluations`

### Constructor Summary

Constructors
Constructor and Description
`GaussNewtonOptimizer()` Deprecated. See `SimpleVectorValueChecker.SimpleVectorValueChecker()`
`GaussNewtonOptimizer(boolean useLU)` Deprecated. See `SimpleVectorValueChecker.SimpleVectorValueChecker()`
`GaussNewtonOptimizer(boolean useLU, ConvergenceChecker<PointVectorValuePair> checker)` Deprecated.
`GaussNewtonOptimizer(ConvergenceChecker<PointVectorValuePair> checker)` Deprecated. Simple constructor with default settings.

### Method Summary

Methods
`PointVectorValuePair` `doOptimize()` Deprecated. Perform the bulk of the optimization algorithm.

### Methods inherited from class org.apache.commons.math3.optimization.general.AbstractLeastSquaresOptimizer

`computeCost, computeCovariances, computeResiduals, computeSigma, computeWeightedJacobian, getChiSquare, getCovariances, getCovariances, getJacobianEvaluations, getRMS, getWeightSquareRoot, guessParametersErrors, optimize, optimize, optimizeInternal, setCost, setUp, updateJacobian, updateResidualsAndCost`

### Methods inherited from class org.apache.commons.math3.optimization.direct.BaseAbstractMultivariateVectorOptimizer

`computeObjectiveValue, getConvergenceChecker, getEvaluations, getMaxEvaluations, getObjectiveFunction, getStartPoint, getTarget, getTargetRef, getWeight, getWeightRef, optimize, optimizeInternal, optimizeInternal`

### 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.optimization.BaseOptimizer

`getConvergenceChecker, getEvaluations, getMaxEvaluations`

### Field Detail

#### useLU

    private final boolean useLU

Deprecated.
Indicator for using LU decomposition.

### Constructor Detail

#### GaussNewtonOptimizer

    @Deprecated
    public GaussNewtonOptimizer()

Deprecated. See `SimpleVectorValueChecker.SimpleVectorValueChecker()`
Simple constructor with default settings. The normal equations will be solved using LU decomposition and the convergence check is set to a `SimpleVectorValueChecker` with default tolerances.

#### GaussNewtonOptimizer

    public GaussNewtonOptimizer(ConvergenceChecker<PointVectorValuePair> checker)

Deprecated.
Simple constructor with default settings. The normal equations will be solved using LU decomposition.

Parameters:
  `checker` - Convergence checker.

#### GaussNewtonOptimizer

    @Deprecated
    public GaussNewtonOptimizer(boolean useLU)

Deprecated. See `SimpleVectorValueChecker.SimpleVectorValueChecker()`
Simple constructor with default settings. The convergence check is set to a `SimpleVectorValueChecker` with default tolerances.

Parameters:
  `useLU` - If `true`, the normal equations will be solved using LU decomposition, otherwise they will be solved using QR decomposition.

#### GaussNewtonOptimizer

    public GaussNewtonOptimizer(boolean useLU,
                        ConvergenceChecker<PointVectorValuePair> checker)

Deprecated.

Parameters:
  `useLU` - If `true`, the normal equations will be solved using LU decomposition, otherwise they will be solved using QR decomposition.
  `checker` - Convergence checker.

### Method Detail

#### doOptimize

    public PointVectorValuePair doOptimize()

Deprecated.
Perform the bulk of the optimization algorithm.

Specified by:
  `doOptimize` in class `BaseAbstractMultivariateVectorOptimizer<DifferentiableMultivariateVectorFunction>`
Returns:
  the point/value pair giving the optimal value for the objective function.