simpeg.objective_function.BaseObjectiveFunction.deriv2#

BaseObjectiveFunction.deriv2(m, v=None, **kwargs)[source]#

Hessian of the objective function evaluated for the model provided.

Where \(\phi (\mathbf{m})\) is the objective function, this method returns the second-derivative (Hessian) with respect to the model parameters:

\[\frac{\partial^2 \phi}{\partial \mathbf{m}^2}\]

or the second-derivative (Hessian) multiplied by a vector \((\mathbf{v})\):

\[\frac{\partial^2 \phi}{\partial \mathbf{m}^2} \, \mathbf{v}\]
Parameters:
m(n_param, ) numpy.ndarray

The model for which the Hessian is evaluated.

vNone or (n_param, ) numpy.ndarray, optional

A vector.

Returns:
(n_param, n_param) scipy.sparse.csr_matrix or (n_param, ) numpy.ndarray

If the input argument v is None, the Hessian of the objective function for the model provided is returned. If v is not None, the Hessian multiplied by the vector provided is returned.