Model¶

EM-modelling routines. The implemented routines might not be the fastest solution to your specific problem. Use these routines as template to create your own, problem-specific modelling routine!

Principal routines:

The main routine is `bipole`, which can model bipole source(s) and bipole receiver(s) of arbitrary direction, for electric or magnetic sources and receivers, both in frequency and in time. A subset of `bipole` is `dipole`, which models infinitesimal small dipoles along the principal axes x, y, and z. The third routine, `loop`, can be used if the source or the receivers are loops instead of dipoles.

Further routines are:

The `dipole_k` routine can be used if you are interested in the wavenumber-domain result, without Hankel nor Fourier transform. It calls straight the `empymod.kernel`. The `gpr`-routine convolves the frequency-domain result with a wavelet, and applies a gain to the time-domain result. This function is still experimental.

The modelling routines make use of the following two core routines:

Functions¶

 `bipole`(src, rec, depth, res, freqtime[, …]) Return EM fields due to arbitrary rotated, finite length EM dipoles. `dipole`(src, rec, depth, res, freqtime[, …]) Return EM fields due to infinitesimal small EM dipoles. `loop`(src, rec, depth, res, freqtime[, …]) Return EM fields due to a magnetic source loop. `analytical`(src, rec, res, freqtime[, …]) Return analytical full- or half-space solution. `gpr`(src, rec, depth, res, freqtime, cf[, …]) Return Ground-Penetrating Radar signal. `dipole_k`(src, rec, depth, res, freq, wavenumber) Return electromagnetic wavenumber-domain field. `fem`(ab, off, angle, zsrc, zrec, lsrc, lrec, …) Return electromagnetic frequency-domain response. `tem`(fEM, off, freq, time, signal, ft, ftarg) Return time-domain response of the frequency-domain response fEM.