simpeg.regularization.CrossReferenceRegularization.f_m_deriv#

CrossReferenceRegularization.f_m_deriv(m)[source]#

Derivative of the regularization kernel function.

For CrossReferenceRegularization, the derivative of the regularization kernel function with respect to the model is given by:

\[\frac{\partial \mathbf{f_m}}{\partial \mathbf{m}} = \mathbf{X}\]

where \(\mathbf{X}\) is a linear operator that carries out the cross-product with a reference vector model.

Parameters:
mnumpy.ndarray

The vector model.

Returns:
scipy.sparse.csr_matrix

The derivative of the regularization kernel function.

Notes

The objective function for cross reference regularization is given by:

\[\phi_m (\mathbf{m}) = \Big \| \mathbf{W X m} \, \Big \|^2\]

where \(\mathbf{m}\) are the discrete vector model parameters defined on the mesh (model), \(\mathbf{X}\) carries out the cross-product with a reference vector model, and \(\mathbf{W}\) is the weighting matrix. See the CrossReferenceRegularization class documentation for more detail.

We define the regularization kernel function \(\mathbf{f_m}\) as:

\[\mathbf{f_m}(\mathbf{m}) = \mathbf{X m}\]

such that

\[\phi_m (\mathbf{m}) = \Big \| \mathbf{W} \, \mathbf{f_m} \Big \|^2\]

Thus, the derivative with respect to the model is:

\[\frac{\partial \mathbf{f_m}}{\partial \mathbf{m}} = \mathbf{X}\]