# scipy.optimize.SR1

class scipy.optimize.SR1(min_denominator=1e-08, init_scale='auto')

  Symmetric-rank-1 Hessian update strategy.

  Parameters:
    min_denominator float

      This number, scaled by a normalization factor, defines the minimum denominator magnitude allowed in the update. When the condition is violated we skip the update. By default uses `1e-8`.

    init_scale{float, ‘auto’}, optional

      Matrix scale at first iteration. At the first iteration the Hessian matrix or its inverse will be initialized with `init_scale*np.eye(n)`, where `n` is the problem dimension. Set it to ‘auto’ in order to use an automatic heuristic for choosing the initial scale. The heuristic is described in [1], p.143. By default uses ‘auto’.

  Notes

  The update is based on the description in [1], p.144-146.

  References

  [1] (1,2)

  Nocedal, Jorge, and Stephen J. Wright. “Numerical optimization” Second Edition (2006).

  Methods

  `dot`(p) | Compute the product of the internal matrix with the given vector.
  `get_matrix`() | Return the current internal matrix.
  `initialize`(n, approx_type) | Initialize internal matrix.
  `update`(delta_x, delta_grad) | Update internal matrix.