simpeg.simulation.LinearSimulation#
- class simpeg.simulation.LinearSimulation(linear_model=None, model_map=None, G=None, **kwargs)[source]#
Bases:
BaseSimulation
Linear forward simulation class.
The
LinearSimulation
class is used to define forward simulations of the form:\[\mathbf{d} = \mathbf{G \, f}(\mathbf{m})\]where \(\mathbf{m}\) are the model parameters, \(\mathbf{f}\) is a mapping operator (optional) from the model space to a user-defined parameter space, \(\mathbf{d}\) is the predicted data vector, and \(\mathbf{G}\) is an
(n_data, n_param)
linear operator.The
LinearSimulation
class is generally used as a base class that is inherited by other simulation classes within SimPEG. However, it can be used directly as a simulation class if theG
property is used to set the linear forward operator directly.By default, we assume the mapping operator \(\mathbf{f}\) is the identity map, and that the forward simulation reduces to:
\[\mathbf{d} = \mathbf{G \, m}\]- Parameters:
- model_map
simpeg.maps.BaseMap
Mapping from the model parameters to vector that the linear operator acts on.
- G(
n_data
,n_param
)numpy.ndarray
orscipy.sparse.csr_matrx
The linear operator. For a
model_map
that maps within the same vector space (e.g. the identity map), the dimensionn_param
equals the number of model parameters. If not, the dimensionn_param
of the linear operator will depend on the mapping.
- model_map
Attributes
The linear operator.
A list of solver objects to clean when the model is updated
SimPEG
Counter
object to store iterations and run-times.HasModel.deleteTheseOnModelUpdate has been deprecated.
The model for a linear problem physical property model.
The inversion model.
Derivative of The model for a linear problem wrt the model.
Mapping of the inversion model to The model for a linear problem.
True if a model is necessary
Path to directory where sensitivity file is stored.
The survey for the simulation.
Verbose progress printout.
Methods
Jtvec
(m, v[, f])Compute the Jacobian transpose times a vector for the model provided.
Jtvec_approx
(m, v[, f])Approximation of the Jacobian transpose times a vector for the model provided.
Jvec
(m, v[, f])Compute the Jacobian times a vector for the model provided.
Jvec_approx
(m, v[, f])Approximation of the Jacobian times a vector for the model provided.
dpred
([m, f])Predicted data for the model provided.
fields
(m)Return the computed geophysical fields for the model provided.
getJ
(m[, f])Returns the full Jacobian.
make_synthetic_data
(m[, relative_error, ...])Make synthetic data for the model and Gaussian noise provided.
residual
(m, dobs[, f])The data residual.
Galleries and Tutorials using simpeg.simulation.LinearSimulation
#
PF: Gravity: Tiled Inversion Linear
Magnetic inversion on a TreeMesh with remanence
Magnetic inversion on a TreeMesh
Magnetic Amplitude inversion on a TreeMesh
Petrophysically guided inversion (PGI): Linear example
Petrophysically guided inversion: Joint linear example with nonlinear relationships
PF: Gravity: Laguna del Maule Bouguer Gravity
Straight Ray with Volume Data Misfit Term
Forward Simulation of Gravity Anomaly Data on a Tensor Mesh
Forward Simulation of Gradiometry Data on a Tree Mesh
Least-Squares Inversion of Gravity Anomaly Data
Sparse Norm Inversion of Gravity Anomaly Data
Compare weighting strategy with Inversion of surface Gravity Anomaly Data
Forward Simulation of Total Magnetic Intensity Data
Forward Simulation of Gradiometry Data for Magnetic Vector Models
Sparse Norm Inversion for Total Magnetic Intensity Data on a Tensor Mesh
Linear Least-Squares Inversion
Sparse Inversion with Iteratively Re-Weighted Least-Squares
Forward Simulation for Straight Ray Tomography in 2D
Sparse Norm Inversion of 2D Seismic Tomography Data
Joint PGI of Gravity + Magnetic on an Octree mesh using full petrophysical information
Joint PGI of Gravity + Magnetic on an Octree mesh without petrophysical information
Cross-gradient Joint Inversion of Gravity and Magnetic Anomaly Data