pygimli.physics.em#
Frequency-domain (FD) or time-domain (TD) semi-analytical 1D solutions
Overview#
Functions
|
Import function reading in positions, data, frequencies, geometry. |
|
Read data from single USF (universal sounding file) file. |
|
Apparent resistivity from B-field TEM |
|
Apparent resistivity curve from classical TEM (U or dB/dt) |
Classes
|
Class for managing Frequency Domain EM data and their inversions. |
|
HEM Airborne modelling class based on the BGR RESOLVE system. |
|
TEM class mainly for holding data etc. |
alias of |
|
alias of |
|
|
Occam-style (smooth) inversion. |
|
Vertical magnetic dipole (VMD) modelling. |
Functions#
- pygimli.physics.em.importMaxminData(filename, verbose=False)[source]#
Import function reading in positions, data, frequencies, geometry.
- pygimli.physics.em.readusffile(filename, data=None)[source]#
Read data from single USF (universal sounding file) file.
data = readusffile( filename ) data = readusffile( filename, data ) will append to data
Classes#
- class pygimli.physics.em.FDEM(x=None, freqs=None, coilSpacing=None, inphase=None, outphase=None, filename=None, scaleFreeAir=False)[source]#
Bases:
object
Class for managing Frequency Domain EM data and their inversions.
- FOP(nlay=2, useHEM=1)[source]#
Forward modelling operator using a block discretization.
- Parameters:
nlay (int) – Number of blocks
- FOPsmooth(zvec)[source]#
Forward modelling operator using fixed layers (smooth inversion).
- Parameters:
zvec (array)
- __init__(x=None, freqs=None, coilSpacing=None, inphase=None, outphase=None, filename=None, scaleFreeAir=False)[source]#
Initialize data class and load data. Provide filename or data.
If filename is given, data is loaded, overwriting settings.
- Parameters:
x (array) – Array of measurement positions
freq (array) – Measured frequencies
coilSpacing (float) – Distance between 2 two coils
inphase (array) – real part of \(|amplitude| * \exp^{i phase}\)
outphase (array) – imaginary part of \(|amplitude| * \exp^{i phase}\)
filename (str) – Filename to read from. Supported: .xyz (MaxMin), *.txt (Emsys)
scaleFreeAir (bool) – Scale inphase and outphase data by free air (primary) solution
- errorvec(xpos=0, minvalue=0.0)[source]#
Extract error vector for a give position or sounding number.
- importEmsysAsciiData(filename)[source]#
Import data from emsys text export file.
columns: no, pos(1-3), separation(4), frequency(6), error(8), inphase (9-11), outphase (12-14), reads: positions, data, frequencies, error and geometry
- importIPXData(filename, verbose=False)[source]#
Import MaxMin IPX format with pos, data, frequencies & geometry.
- inv2D(nlay, lam=100.0, resL=1.0, resU=1000.0, thkL=1.0, thkU=100.0, minErr=1.0)[source]#
2d LCI inversion class.
- invBlock(xpos=0, nlay=2, noise=1.0, show=True, stmod=30.0, lam=1000.0, lBound=0.0, uBound=0.0, verbose=False, **kwargs)[source]#
Create and return Gimli inversion instance for block inversion.
- Parameters:
xpos (array) – position vector
nLay (int) – Number of layers of the model to be determined OR vector of layer numbers OR forward operator
noise (float) – Absolute data err in percent
stmod (float or pg.Vector) – Starting model
lam (float) – Global regularization parameter lambda.
lBound (float) – Lower boundary for the model
uBound (float) – Upper boundary for the model. 0 means no upper booundary
verbose (bool) – Be verbose
- plotAllData(orientation='horizontal', aspect=1000, outname=None, show=False, figsize=(11, 8), everyx=None)[source]#
Plot data along a profile as image plots for IP and OP.
- plotData(xpos=0, response=None, error=None, ax=None, marker='bo-', rmarker='rx-', clf=True, addlabel='', nv=2)[source]#
Plot data as curves at given position.
- plotModelAndData(model, xpos, response, modelL=None, modelU=None)[source]#
Plot both model and data in subfigures.
- readHEMData(filename, takeevery=1, choosevcp=True)[source]#
Read RESOLVE type airborne EM data from .XYZ file.
- class pygimli.physics.em.HEMmodelling(nlay, height, f=None, r=None, **kwargs)[source]#
Bases:
Block1DModelling
HEM Airborne modelling class based on the BGR RESOLVE system.
- c0 = 299792458.0000066#
- ep0 = 8.85418781762e-12#
- fdefault = array([ 387., 1821., 8388., 41460., 133300.])#
- mu0 = 1.2566370614359173e-06#
- rdefault = array([7.94, 7.93, 7.93, 7.91, 7.92])#
- scaling = 1000000.0#
- class pygimli.physics.em.TDEM(filename=None)[source]#
Bases:
object
TEM class mainly for holding data etc.
- basename = 'new'#
- pygimli.physics.em.TDEMBlockModelling#
alias of
VMDTimeDomainModelling
- pygimli.physics.em.TDEMOccamModelling#
alias of
TDEMSmoothModelling
- class pygimli.physics.em.TDEMSmoothModelling(thk, **kwargs)[source]#
Bases:
MeshModelling
Occam-style (smooth) inversion.
- class pygimli.physics.em.VMDTimeDomainModelling(times, txArea, rxArea=None, **kwargs)[source]#
Bases:
VMDModelling
Vertical magnetic dipole (VMD) modelling.