simpeg.simulation.BaseSimulation.Jvec#

BaseSimulation.Jvec(m, v, f=None)[source]#

Compute the Jacobian times a vector for the model provided.

The Jacobian defines the derivative of the predicted data vector with respect to the model parameters. For a data vector \(\mathbf{d}\) predicted for a set of model parameters \(\mathbf{m}\), the Jacobian is an (n_data, n_param) matrix whose elements are given by:

\[J_{ij} = \frac{\partial d_i}{\partial m_j}\]

For a model m and vector v, the Jvec method computes the matrix-vector product

\[\mathbf{u} = \mathbf{J \, v}\]
Parameters:
m(n_param, ) numpy.ndarray

The model parameters.

v(n_param, ) numpy.ndarray

Vector we are multiplying.

fsimpeg.field.Fields, optional

If provided, fields will not need to be recomputed for the current model to compute Jvec.

Returns:
(n_data, ) numpy.ndarray

The Jacobian times a vector for the model and vector provided.