simpeg.potential_fields.magnetics.SimulationEquivalentSourceLayer#

class simpeg.potential_fields.magnetics.SimulationEquivalentSourceLayer(mesh, cell_z_top, cell_z_bottom, engine='geoana', numba_parallel=True, **kwargs)[source]#

Bases: BaseEquivalentSourceLayerSimulation, Simulation3DIntegral

Equivalent source layer simulation

Parameters:
meshdiscretize.BaseMesh

A 2D tensor or tree mesh defining discretization along the x and y directions

cell_z_topnumpy.ndarray or float

Define the elevations for the top face of all cells in the layer. If an array it should be the same size as the active cell set.

cell_z_bottomnumpy.ndarray or float

Define the elevations for the bottom face of all cells in the layer. If an array it should be the same size as the active cell set.

engine{“geoana”, “choclo”}, optional

Choose which engine should be used to run the forward model.

numba_parallelbool, optional

If True, the simulation will run in parallel. If False, it will run in serial. If engine is not "choclo" this argument will be ignored.

Attributes

G

The linear operator.

M

M: ndarray

active_cells

Active cells in the mesh.

cell_z_bottom

Elevations for the bottom face of all cells in the layer.

cell_z_top

Elevations for the top face of all cells in the layer.

chi

Magnetic susceptibility (si) physical property model.

chiDeriv

Derivative of Magnetic Susceptibility (SI) wrt the model.

chiMap

Mapping of the inversion model to Magnetic Susceptibility (SI).

clean_on_model_update

A list of solver objects to clean when the model is updated

counter

SimPEG Counter object to store iterations and run-times.

deleteTheseOnModelUpdate

A list of properties stored on this object to delete when the model is updated

engine

Engine that will be used to run the simulation.

ind_active

active_cells.ind_active has been deprecated.

linear_model

The model for a linear problem physical property model.

mesh

Mesh for the simulation.

model

The inversion model.

modelType

model_type.modelType has been deprecated.

model_deriv

Derivative of The model for a linear problem wrt the model.

model_map

Mapping of the inversion model to The model for a linear problem.

model_type

Type of magnetization model

nD

Number of data

needs_model

True if a model is necessary

numba_parallel

Run simulation in parallel or single-threaded when using Numba.

sensitivity_dtype

dtype of the sensitivity matrix.

sensitivity_path

Path to directory where sensitivity file is stored.

solver_opts

Solver-specific parameters.

store_sensitivities

Options for storing sensitivities.

survey

The survey for the simulation.

verbose

Verbose progress printout.

ampDeriv

is_amplitude_data

n_processes

solver

tmi_projection

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.

compute_amplitude(b_xyz)

Compute amplitude of the magnetic field

dpred([m, f])

Predicted data for the model provided.

evaluate_integral(receiver_location, components)

Load in the active nodes of a tensor mesh and computes the magnetic forward relation between a cuboid and a given observation location outside the Earth [obsx, obsy, obsz]

fields(model)

Return the computed geophysical fields for the model provided.

getJ(m[, f])

Returns the full Jacobian.

getJtJdiag(m[, W, f])

Return the diagonal of JtJ

linear_operator()

Return linear operator.

make_synthetic_data(m[, relative_error, ...])

Make synthetic data for the model and Gaussian noise provided.

normalized_fields(fields)

Return the normalized B fields

residual(m, dobs[, f])

The data residual.