## 8 Options common to all frontends

All frontends for optimization and for result statistics (nonlin_min, nonlin_residmin, nonlin_curvefit, residmin_stat, curvefit_stat)accept the following options, settable with (octave)optimset.

These options are handled within the frontend.

`FinDiffRelStep`

  Column vector (or scalar, for all parameters) of fractional intervals supposed to be used by gradient or Jacobian functions performing finite differencing. Default: `.002 * ones (size (parameters))` for central intervals and `.001 * ones (size (parameters))` for one-sided intervals. The default function for finite differencing won’t let the absolute interval width get smaller than `abs (FinDiffRelStep .* TypicalX` (see below).

`diffp`

  Can be used alternatively to `FinDiffRelStep`, but for central intervals twice the specified value will be used for backwards compatibility.

`diff_onesided`

  Logical column vector (or scalar, for all parameters) indicating the parameters for which one-sided intervals (instead of central intervals) should be used by gradient or Jacobian functions performing finite differencing. Default: `false (size (parameters))`.

`FinDiffType`

  Can be used alternatively to `diff_onesided`, but always applies to all parameters at once. Possible values: `"central"` (central intervals) or `"forward"` (one-sided intervals).

`TypicalX`

  Column vector (or scalar, for all parameters) whose absolute value specifies minimal absolute parameter values for computation of intervals in finite differencing by gradient or Jacobian functions (see `FinDiffRelStep`). Default: 0.0001. Must not be zero.

`cstep`

  Scalar step size for complex step derivative approximation of gradients or Jacobians. Default: 1e-20.

`parallel_local`

  Logical or numeric scalar, default: `false`. If the `parallel` package, `version >= 2.0.5`, is loaded, estimate gradients of objective function and Jacobians of model function and of constraints in parallel processes. If `parallel_local` is set to an integer `> 1`, this is number of parallel processes; if it is `<= 1`, the number of processes will be the number of available processor cores. Works for default (real) finite differences and for complex step derivatives. Due to overhead, a speed advantage can only be expected if objective function, model function or constraint functions are time consuming enough. Additionally, this setting is also passed to the individual optimization backends, which may also consider this option (see documentation of backends). If this option is equivalent to `true`, a warning (ID: `optim:parallel_local`) will be issued if no `parallel` package of a correct version is loaded.

`parallel_net`

  Empty (default) or a parallel connections object, see function `pconnect` of the `parallel` package. If not empty, estimate gradients of objective function and Jacobians of model function and of constraints using parallel processing in a network of machines. The considerations regarding a speed advantage are similar to those for option `parallel_local`.

`fixed`

  Logical column vector indicating which parameters are not optimized, but kept to their inital value.