simpeg.maps.ParametricLayer.deriv#

ParametricLayer.deriv(m)[source]#

Derivative of the mapping with respect to the input parameters.

Let \(\mathbf{m} = [\sigma_0, \;\sigma_1,\; z_L , \; h]\) be the set of model parameters the defines a layer within a wholespace. The mapping :math:`mathbf{u}(mathbf{m})`from the parameterized model to all active cells is given by:

\[\mathbf{u}(\mathbf{m}) = \sigma_0 + \frac{(\sigma_1 - \sigma_0)}{\pi} \Bigg [ \arctan \Bigg ( a \bigg ( \mathbf{z_c} - z_L + \frac{h}{2} \bigg ) \Bigg ) - \arctan \Bigg ( a \bigg ( \mathbf{z_c} - z_L - \frac{h}{2} \bigg ) \Bigg ) \Bigg ]\]

where \(\mathbf{z_c}\) is a vectors containing the vertical cell center locations for all active cells in the mesh. The derivative of the mapping with respect to the model parameters is a numpy.ndarray of shape (nAct, 4) given by:

\[\frac{\partial \mathbf{u}}{\partial \mathbf{m}} = \Bigg [ \frac{\partial \mathbf{u}}{\partial \sigma_0} \;\; \frac{\partial \mathbf{u}}{\partial \sigma_1} \;\; \frac{\partial \mathbf{u}}{\partial z_L} \;\; \frac{\partial \mathbf{u}}{\partial h} \Bigg ]\]
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.