simpeg.maps.InjectActiveFaces.deriv#

InjectActiveFaces.deriv(m, v=None)[source]#

Return derivative of the mapping with respect to the input parameters.

For a discrete set of model parameters \(\mathbf{m}\) defined on a set of active faces, the mapping \(\mathbf{u}(\mathbf{m})\) is defined as:

\[\mathbf{u}(\mathbf{m}) = \mathbf{Pm} + \mathbf{d} \, m_\perp\]

where \(\mathbf{P}\) is a (nF , nP) projection matrix from active faces to all mesh faces, and \(\mathbf{d}\) is a (nF , 1) matrix that projects the inactive face value \(m_\perp\) to all inactive mesh faces.

the deriv method returns the derivative of \(\mathbf{u}\) with respect to the model parameters; i.e.:

\[\frac{\partial \mathbf{u}}{\partial \mathbf{m}} = \mathbf{P}\]

Note that in this case, deriv simply returns a sparse projection matrix.

Parameters:
m(nP) numpy.ndarray

A vector representing a set of model parameters.

v(nP) numpy.ndarray

If not None, the method returns the derivative times the vector v.

Returns:
scipy.sparse.csr_matrix

Derivative of the mapping with respect to the model parameters. If the input argument v is not None, the method returns the derivative times the vector v.