scipy.optimize.

LbfgsInvHessProduct#

class scipy.optimize.LbfgsInvHessProduct(*args, **kwargs)[source]#

Linear operator for the L-BFGS approximate inverse Hessian.

This operator computes the product of a vector with the approximate inverse of the Hessian of the objective function, using the L-BFGS limited memory approximation to the inverse Hessian, accumulated during the optimization.

Objects of this class implement the scipy.sparse.linalg.LinearOperator interface.

Parameters:
skarray_like, shape=(n_corr, n)

Array of n_corr most recent updates to the solution vector. (See [1]).

ykarray_like, shape=(n_corr, n)

Array of n_corr most recent updates to the gradient. (See [1]).

Attributes:
H

Hermitian adjoint.

T

Transpose.

Methods

__add__(x)

Linear operator addition.

__call__(x)

Apply this linear operator.

__matmul__(other)

Matrix Multiplication.

__mul__(x)

Multiplication.

__rmatmul__(other)

Matrix Multiplication from the right.

__rmul__(x)

Multiplication from the right.

__truediv__(other)

Scalar Division.

adjoint()

Hermitian adjoint.

dot(x)

Multi-purpose multiplication method.

matmat(X)

Matrix-matrix multiplication.

matvec(x)

Matrix-vector multiplication.

rdot(x)

Multi-purpose multiplication method from the right.

rmatmat(X)

Adjoint matrix-matrix multiplication.

rmatvec(x)

Adjoint matrix-vector multiplication.

todense()

Return a dense array representation of this operator.

transpose()

Transpose.

__pow__

References

[1]

Nocedal, Jorge. “Updating quasi-Newton matrices with limited storage.” Mathematics of computation 35.151 (1980): 773-782.