Overview of Electromagnetics in SimPEG

The API

Problem

class SimPEG.EM.Base.BaseEMProblem(mesh, **kwargs)[source]

Bases: SimPEG.Problem.BaseProblem

Optional Properties:

  • model (Model): Inversion model., a numpy array of <class ‘float’>, <class ‘int’> with shape (*) or (*, *)

  • mu (PhysicalProperty): Magnetic Permeability (H/m), a physical property, Default: 1.2566370614359173e-06

  • mui (PhysicalProperty): Inverse Magnetic Permeability (m/H), a physical property

  • rho (PhysicalProperty): Electrical resistivity (Ohm m), a physical property

  • rhoMap (Mapping): Mapping of Electrical resistivity (Ohm m) to the inversion model., a SimPEG Map

  • sigma (PhysicalProperty): Electrical conductivity (S/m), a physical property

  • sigmaMap (Mapping): Mapping of Electrical conductivity (S/m) to the inversion model., a SimPEG Map

Other Properties:

  • rhoDeriv (Derivative): Derivative of Electrical resistivity (Ohm m) wrt the model.

  • sigmaDeriv (Derivative): Derivative of Electrical conductivity (S/m) wrt the model.

property sigma

Electrical conductivity (S/m)

property sigmaMap

Mapping of Electrical conductivity (S/m) to the inversion model.

property sigmaDeriv

Derivative of Electrical conductivity (S/m) wrt the model.

property rho

Electrical resistivity (Ohm m)

property rhoMap

Mapping of Electrical resistivity (Ohm m) to the inversion model.

property rhoDeriv

Derivative of Electrical resistivity (Ohm m) wrt the model.

property mu

Magnetic Permeability (H/m)

property mui

Inverse Magnetic Permeability (m/H)

surveyPair

alias of SimPEG.Survey.BaseSurvey

dataPair

alias of SimPEG.Survey.Data

mapPair

alias of SimPEG.Maps.IdentityMap

class Solver(A, **kwargs)

Bases: object

clean()
solverOpts = {}

Solver options

verbose = False
storeInnerProduct = True
property deleteTheseOnModelUpdate

matrices to be deleted if the model maps for conductivity and/or permeability are updated

property Me

Edge inner product matrix

property MeI

Edge inner product matrix

property Mf

Face inner product matrix

property MfI

Face inner product matrix

property Vol
property MfMui

Face inner product matrix for (mu^{-1}). Used in the E-B formulation

MfMuiDeriv(u, v=None, adjoint=False)[source]

Derivative of MfMui with respect to the model.

property MfMuiI

Inverse of MfMui.

MfMuiIDeriv(u, v=None, adjoint=False)[source]

Derivative of MfMui with respect to the model

property MeMu

Edge inner product matrix for (mu). Used in the H-J formulation

MeMuDeriv(u, v=None, adjoint=False)[source]

Derivative of MeMu with respect to the model.

property MeMuI

Inverse of MeMu

MeMuIDeriv(u, v=None, adjoint=False)[source]

Derivative of MeMuI with respect to the model

property MeSigma

Edge inner product matrix for (sigma). Used in the E-B formulation

MeSigmaDeriv(u, v=None, adjoint=False)[source]

Derivative of MeSigma with respect to the model times a vector (u)

property MeSigmaI

Inverse of the edge inner product matrix for (sigma).

MeSigmaIDeriv(u, v=None, adjoint=False)[source]

Derivative of MeSigmaI with respect to the model

property MfRho

Face inner product matrix for (rho). Used in the H-J formulation

MfRhoDeriv(u, v=None, adjoint=False)[source]

Derivative of MfRho with respect to the model.

property MfRhoI

Inverse of MfRho

MfRhoIDeriv(u, v=None, adjoint=False)[source]

Derivative of MfRhoI with respect to the model.

Survey

class SimPEG.EM.Base.BaseEMSurvey(srcList, **kwargs)[source]

Bases: SimPEG.Survey.BaseSurvey

eval(f)[source]

Project fields to receiver locations

Parameters

u (Fields) – fields object

Return type

numpy.ndarray

Returns

data

evalDeriv(f)[source]

This function s the derivative of projects the fields onto the data space.

\[\frac{\partial d_\text{pred}}{\partial u} = \mathbf{P}\]

Sources

class SimPEG.EM.Base.BaseEMSrc(rxList, **kwargs)[source]

Bases: SimPEG.Survey.BaseSrc

Required Properties:

  • integrate (Boolean): integrate the source term?, a boolean, Default: False

  • loc (Array): location of the source, a list or numpy array of <class ‘float’>, <class ‘int’> with shape (3) or (*, 3)

property loc

loc (Array): location of the source, a list or numpy array of <class ‘float’>, <class ‘int’> with shape (3) or (*, 3)

property integrate

integrate (Boolean): integrate the source term?, a boolean, Default: False

eval(prob)[source]
  • \(s_m\) : magnetic source term

  • \(s_e\) : electric source term

Parameters

prob (BaseFDEMProblem) – FDEM Problem

Return type

tuple

Returns

tuple with magnetic source term and electric source term

evalDeriv(prob, v=None, adjoint=False)[source]

Derivatives of the source terms with respect to the inversion model - s_mDeriv : derivative of the magnetic source term - s_eDeriv : derivative of the electric source term

Parameters
Return type

tuple

Returns

tuple with magnetic source term and electric source term derivatives times a vector

s_m(prob)[source]

Magnetic source term

Parameters

prob (BaseFDEMProblem) – FDEM Problem

Return type

numpy.ndarray

Returns

magnetic source term on mesh

s_e(prob)[source]

Electric source term

Parameters

prob (BaseFDEMProblem) – FDEM Problem

Return type

numpy.ndarray

Returns

electric source term on mesh

s_mDeriv(prob, v, adjoint=False)[source]

Derivative of magnetic source term with respect to the inversion model

Parameters
Return type

numpy.ndarray

Returns

product of magnetic source term derivative with a vector

s_eDeriv(prob, v, adjoint=False)[source]

Derivative of electric source term with respect to the inversion model

Parameters
Return type

numpy.ndarray

Returns

product of electric source term derivative with a vector