package scipy

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type tag = [
  1. | `SR1
]
type t = [ `Object | `SR1 ] Obj.t
val of_pyobject : Py.Object.t -> t
val to_pyobject : [> tag ] Obj.t -> Py.Object.t
val create : ?min_denominator:float -> ?init_scale:[ `F of float | `Auto ] -> unit -> t

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 Nocedal, Jorge, and Stephen J. Wright. 'Numerical optimization' Second Edition (2006).

val dot : p:[> `Ndarray ] Np.Obj.t -> [> tag ] Obj.t -> [ `ArrayLike | `Ndarray | `Object ] Np.Obj.t

Compute the product of the internal matrix with the given vector.

Parameters ---------- p : array_like 1-D array representing a vector.

Returns ------- Hp : array 1-D represents the result of multiplying the approximation matrix by vector p.

val get_matrix : [> tag ] Obj.t -> [ `ArrayLike | `Ndarray | `Object ] Np.Obj.t

Return the current internal matrix.

Returns ------- M : ndarray, shape (n, n) Dense matrix containing either the Hessian or its inverse (depending on how `approx_type` was defined).

val initialize : n:int -> approx_type:[ `Hess | `Inv_hess ] -> [> tag ] Obj.t -> Py.Object.t

Initialize internal matrix.

Allocate internal memory for storing and updating the Hessian or its inverse.

Parameters ---------- n : int Problem dimension. approx_type : 'hess', 'inv_hess' Selects either the Hessian or the inverse Hessian. When set to 'hess' the Hessian will be stored and updated. When set to 'inv_hess' its inverse will be used instead.

val update : delta_x:[> `Ndarray ] Np.Obj.t -> delta_grad:[> `Ndarray ] Np.Obj.t -> [> tag ] Obj.t -> Py.Object.t

Update internal matrix.

Update Hessian matrix or its inverse (depending on how 'approx_type' is defined) using information about the last evaluated points.

Parameters ---------- delta_x : ndarray The difference between two points the gradient function have been evaluated at: ``delta_x = x2 - x1``. delta_grad : ndarray The difference between the gradients: ``delta_grad = grad(x2) - grad(x1)``.

val to_string : t -> string

Print the object to a human-readable representation.

val show : t -> string

Print the object to a human-readable representation.

val pp : Stdlib.Format.formatter -> t -> unit

Pretty-print the object to a formatter.

OCaml

Innovation. Community. Security.