simpeg.regularization.CrossGradient.deriv2#

CrossGradient.deriv2(model, v=None)[source]#

Hessian of the regularization function evaluated for the model provided.

Where ϕ(m) is the discrete regularization function (objective function), this method evalutate and returns the second derivative (Hessian) with respect to the model parameters: For a model m consisting of two physical properties such that:

m=[m1m2]

The Hessian has the form:

2ϕm2=[2ϕm122ϕm1m22ϕm2m12ϕm22]

When a vector (v) is supplied, the method returns the Hessian times the vector:

2ϕm2v
Parameters:
model(n_param, ) numpy.ndarray

The model; a vector array containing all physical properties.

vNone, (n_param, ) numpy.ndarray (optional)

A numpy array to model the Hessian by.

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

If the input argument v is None, the Hessian for the models provided is returned. If v is not None, the Hessian multiplied by the vector provided is returned.