simpeg.electromagnetics.natural_source.receivers.Impedance#

class simpeg.electromagnetics.natural_source.receivers.Impedance(locations_e, locations_h=None, orientation='xx', component='real', storeProjections=False)[source]#

Bases: _ElectricAndMagneticReceiver

Receiver class for 1D, 2D and 3D impedance data.

This class is used to simulate data types that can be derived from the impedance tensor:

\[\begin{split}\begin{bmatrix} Z_{xx} & Z_{xy} \\ Z_{yx} & Z_{yy} \end{bmatrix} = \begin{bmatrix} E_x^{(x)} & E_x^{(y)} \\ E_y^{(x)} & E_y^{(y)} \end{bmatrix} \, \begin{bmatrix} H_x^{(x)} & H_x^{(y)} \\ H_y^{(x)} & H_y^{(y)} \end{bmatrix}^{-1}\end{split}\]

where superscripts \((x)\) and \((y)\) denote signals corresponding to incident planewaves whose electric fields are polarized along the x and y-directions respectively. Electric and magnetic fields do not need to be simulated at the same location, so this class can be used to simulate quasi-impedance data; i.e. where the electric fields are measured at a base station.

Note that in simpeg, natural source EM data are defined according to standard xyz coordinates; i.e. (x,y,z) is (Easting, Northing, Z +ve up).

In addition to measuring the real or imaginary component of an impedance tensor element \(Z_{ij}\), the receiver object can be set to measure the the apparent resistivity:

\[\rho_{ij} = \dfrac{| Z_{ij} \, |^2}{\mu_0 \omega}\]

or the phase angle:

\[\phi_{ij} = \frac{180}{\pi} \, \tan^{-1} \Bigg ( \dfrac{Im[Z_{ij}]}{Re[Z_{ij}]} \Bigg )\]

where \(\mu_0\) is the permeability of free-space and \(\omega\) is the angular frequency in rad/s. The phase angle is represented in degrees and is computed by:

Parameters:
locations_e(n_loc, n_dim) array_like

Locations where the electric fields are measured.

locations_h(n_loc, n_dim) array_like, optional

Locations where the magnetic fields are measured. Defaults to the same locations as electric field measurements, locations_e.

orientation{‘xx’, ‘xy’, ‘yx’, ‘yy’}

Receiver orientation. Specifies whether the receiver’s data correspond to the \(Z_{xx}\), \(Z_{xy}\), \(Z_{yx}\) or \(Z_{yy}\) impedance. The data type is specified by the component input argument.

component{‘real’, ‘imag’, ‘apparent_resistivity’, ‘phase’, ‘complex’}

Data type. For the impedance element \(Z_{ij}\) specified by the orientation input argument, the receiver can be set to compute the following: - ‘real’: Real component of the impedance (V/A) - ‘imag’: Imaginary component of the impedance (V/A) - ‘rho’: Apparent resistivity (\(\Omega m\)) - ‘phase’: Phase angle (degrees) - ‘complex’: The complex impedance is returned. Do not use for inversion!

storeProjectionsbool

Whether to cache to internal projection matrices.

Attributes

component

Data type; i.e. "real", "imag", "apparent_resistivity", "phase".

locations

Locations of the two field measurements.

locations_e

Electric field measurement locations

locations_h

Magnetic field measurement locations

nD

Number of data associated with the receiver object.

orientation

Receiver orientation.

uid

Universal unique identifier

Methods

eval(src, mesh, f)

Compute receiver data from the discrete field solution.

evalDeriv(src, mesh, f[, du_dm_v, v, adjoint])

Derivative of data with respect to the fields.

getP(mesh, projected_grid[, location_id])

Get projection matrix from mesh to specified receiver locations.

Galleries and Tutorials using simpeg.electromagnetics.natural_source.receivers.Impedance#

MT: 3D: Forward

MT: 3D: Forward