SimPEG.potential_fields.base.BasePFSimulation#

class SimPEG.potential_fields.base.BasePFSimulation(mesh, ind_active=None, store_sensitivities='ram', n_processes=1, sensitivity_dtype=<class 'numpy.float32'>, **kwargs)[source]#

Bases: LinearSimulation

Base class for potential field simulations that use integral formulations.

For integral formulations, the forward simulation for a set of voxel cells can be defined as a linear operation of the form:

\[\mathbf{d} = \mathbf{Am}\]

where \(\mathbf{d}\) are the data, \(\mathbf{m}\) are the model paramters and \(\mathbf{A}\) is a linear operator defining the sensitivities. The primary difference between child simulation classes is the kernel function used to create the rows of \(\mathbf{A}\).

Parameters:
meshdiscretize.TensorMesh or discretize.TreeMesh

A 3D tensor or tree mesh.

ind_activenp.ndarray of int or bool

Indices array denoting the active topography cells.

store_sensitivities{‘ram’, ‘disk’, ‘forward_only’}

Options for storing sensitivities. There are 3 options

  • ‘ram’: sensitivities are stored in the computer’s RAM

  • ‘disk’: sensitivities are written to a directory

  • ‘forward_only’: you intend only do perform a forward simulation and sensitivities do not need to be stored

n_processesNone or int, optional

The number of processes to use in the internal multiprocessing pool for forward modeling. The default value of 1 will not use multiprocessing. Any other setting will. None implies setting by the number of cpus.

Notes

If using multiprocessing by setting n_processes to a value other than 1, you must be aware of the method your operating system uses to spawn the subprocesses. On Windows the default method starts new processes that all import the main script. Therefor you must protect the calls to this class by testing if you are in the main process with:

>>> from SimPEG.potential_fields import gravity
>>> if __name__ == '__main__':
...     # Do your processing here
...     sim = gravity.Simulation3DIntegral(n_processes=4, ...)
...     sim.dpred(m)

This usually does not affect jupyter notebook environments.

Attributes

actInd

'actInd' is deprecated.

ind_active

Active topography cells.

sensitivity_dtype

dtype of the sensitivity matrix.

store_sensitivities

Options for storing sensitivities.

n_processes

Methods

linear_operator()

Return linear operator.

Galleries and Tutorials using SimPEG.potential_fields.base.BasePFSimulation#

Maps: ComboMaps

Maps: ComboMaps

PF: Gravity: Tiled Inversion Linear

PF: Gravity: Tiled Inversion Linear

Magnetic inversion on a TreeMesh

Magnetic inversion on a TreeMesh

Magnetic inversion on a TreeMesh

Magnetic inversion on a TreeMesh

Magnetic Amplitude inversion on a TreeMesh

Magnetic Amplitude inversion on a TreeMesh

PF: Gravity: Laguna del Maule Bouguer Gravity

PF: Gravity: Laguna del Maule Bouguer Gravity

Forward Simulation of Total Magnetic Intensity Data

Forward Simulation of Total Magnetic Intensity Data

Forward Simulation of Gradiometry Data for Magnetic Vector Models

Forward Simulation of Gradiometry Data for Magnetic Vector Models

Sparse Norm Inversion for Total Magnetic Intensity Data on a Tensor Mesh

Sparse Norm Inversion for Total Magnetic Intensity Data on a Tensor Mesh

Forward Simulation of Gravity Anomaly Data on a Tensor Mesh

Forward Simulation of Gravity Anomaly Data on a Tensor Mesh

Forward Simulation of Gradiometry Data on a Tree Mesh

Forward Simulation of Gradiometry Data on a Tree Mesh

Least-Squares Inversion of Gravity Anomaly Data

Least-Squares Inversion of Gravity Anomaly Data

Sparse Norm Inversion of Gravity Anomaly Data

Sparse Norm Inversion of Gravity Anomaly Data

Joint PGI of Gravity + Magnetic on an Octree mesh using full petrophysical information

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

Joint PGI of Gravity + Magnetic on an Octree mesh without petrophysical information

Cross-gradient Joint Inversion of Gravity and Magnetic Anomaly Data

Cross-gradient Joint Inversion of Gravity and Magnetic Anomaly Data