## org.apache.commons.math3.optim.nonlinear.vector
Class MultivariateVectorOptimizer

    java.lang.Object
      org.apache.commons.math3.optim.BaseOptimizer<PAIR>
          org.apache.commons.math3.optim.BaseMultivariateOptimizer<PointVectorValuePair>
              org.apache.commons.math3.optim.nonlinear.vector.MultivariateVectorOptimizer

Direct Known Subclasses:
  JacobianMultivariateVectorOptimizer

    public abstract class MultivariateVectorOptimizer

extends BaseMultivariateOptimizer<PointVectorValuePair>

Base class for a multivariate vector function optimizer.

Since:
  3.1
Version:
  $Id$

Field Summary
`private MultivariateVectorFunction` `model` Model function.
`private double[]` `target` Target values for the model function at optimum.
`private RealMatrix` `weightMatrix` Weight matrix.

Fields inherited from class org.apache.commons.math3.optim.BaseOptimizer
`evaluations, iterations`

Constructor Summary
`protected` `MultivariateVectorOptimizer(ConvergenceChecker<PointVectorValuePair> checker)`

Method Summary
`private void` `checkParameters()` Check parameters consistency.
`protected double[]` `computeObjectiveValue(double[] params)` Computes the objective function value.
`double[]` `getTarget()` Gets the observed values to be matched by the objective vector function.
`int` `getTargetSize()` Gets the number of observed values.
`RealMatrix` `getWeight()` Gets the weight matrix of the observations.
`PointVectorValuePair` `optimize(OptimizationData... optData)` Stores data and performs the optimization.
`private void` `parseOptimizationData(OptimizationData... optData)` Scans the list of (required and optional) optimization data that characterize the problem.

Methods inherited from class org.apache.commons.math3.optim.BaseMultivariateOptimizer
`getLowerBound, getStartPoint, getUpperBound`

Methods inherited from class org.apache.commons.math3.optim.BaseOptimizer
`doOptimize, getConvergenceChecker, getEvaluations, getIterations, getMaxEvaluations, getMaxIterations, incrementEvaluationCount, incrementIterationCount`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### target

    private double[] target

  Target values for the model function at optimum.

### weightMatrix

    private RealMatrix weightMatrix

  Weight matrix.

### model

    private MultivariateVectorFunction model

  Model function.

Constructor Detail

### MultivariateVectorOptimizer

    protected MultivariateVectorOptimizer(ConvergenceChecker<PointVectorValuePair> checker)

Parameters:
  `checker` - Convergence checker.

Method Detail

### computeObjectiveValue

    protected double[] computeObjectiveValue(double[] params)

  Computes the objective function value. This method must be called by subclasses to enforce the evaluation counter limit.

  Parameters:
    `params` - Point at which the objective function must be evaluated.
  Returns:
    the objective function value at the specified point.
  Throws:
    `TooManyEvaluationsException` - if the maximal number of evaluations (of the model vector function) is exceeded.

### optimize

    public PointVectorValuePair optimize(OptimizationData... optData)
                                  throws TooManyEvaluationsException,
                                         DimensionMismatchException

  Stores data and performs the optimization.

  Overrides:
    `optimize` in class `BaseMultivariateOptimizer<PointVectorValuePair>`
  Parameters:
    `optData` - Optimization data. The following data will be looked for:
    - `MaxEval`
    - `InitialGuess`
    - `SimpleBounds`
    - `Target`
    - `Weight`
    - `ModelFunction`
  Returns:
    a point/value pair that satifies the convergence criteria.
  Throws:
    `TooManyEvaluationsException` - if the maximal number of evaluations is exceeded.
    `DimensionMismatchException` - if the initial guess, target, and weight arguments have inconsistent dimensions.

### getWeight

    public RealMatrix getWeight()

  Gets the weight matrix of the observations.

  Returns:
    the weight matrix.

### getTarget

    public double[] getTarget()

  Gets the observed values to be matched by the objective vector function.

  Returns:
    the target values.

### getTargetSize

    public int getTargetSize()

  Gets the number of observed values.

  Returns:
    the length of the target vector.

### parseOptimizationData

    private void parseOptimizationData(OptimizationData... optData)

  Scans the list of (required and optional) optimization data that characterize the problem.

  Parameters:
    `optData` - Optimization data. The following data will be looked for:
    - `Target`
    - `Weight`
    - `ModelFunction`

### checkParameters

    private void checkParameters()

  Check parameters consistency.

  Throws:
    `DimensionMismatchException` - if `target` and `weightMatrix` have inconsistent dimensions.

Copyright (c) 2003-2013 Apache Software Foundation