Skip to content

Releases: emsig/empymod

Bugfix np.seterr(all='ignore')

04 Jul 10:55
0467d97
Compare
Choose a tag to compare
  • Bumped the minimum requirements to:

    • Python 3.7
    • NumPy 1.17
    • SciPy 1.4
    • Numba 0.47
  • Legacy clean-up: The kernel of empymod used to switch off all NumPy errors
    via np.seterr(all='ignore'). That means that any script or library that
    used empymod switched off all warnings from NumPy, which is not good. Since
    empymod v2 this does make even less sense, as the entire kernel is jitted
    with numba. This setting is therefore removed.

Bugfix azm/dip broadcasting

23 Jun 07:06
f317472
Compare
Choose a tag to compare
  • Bugfix in empymod.bipole and empymod.loop when using various azimuths
    and dips (some cases used to cause a shape-mismatch error).

Theme change & streamline

30 May 19:19
229f8de
Compare
Choose a tag to compare
  • Streamline some things with emsig and emg3d:

    • Change theme from rtd to pydata.
    • New primary links https://emsig.xyz and https://empymod.emsig.xyz.
    • Move copyright from «The empymod Developers» to «The emsig community».
    • Slight rework of some parts of the docs.

Bugfix Windows int32/64

26 Mar 17:33
8676702
Compare
Choose a tag to compare
  • Bugfix Windows int32/64.
  • New example "Magnetotelluric".

M&B I

01 Mar 13:06
ace1b4f
Compare
Choose a tag to compare

Maintenance and small bug fix:

  • Time-domain modelling failed when using DLF for the Fourier transform with pts_per_dec=0 and signal={-1;1} (broadcasting error).
  • RTD fixes & changes and GitHub Action fixes; update year.

Move to EMSiG

09 Dec 13:04
49860c7
Compare
Choose a tag to compare

Small maintenance release:

  • Update github.com/empymod to github.com/emsig.
  • Moved from Travis CI to GitHub Actions.

Docs and gallery

22 Sep 10:40
82c4730
Compare
Choose a tag to compare
  • Documentation:

    • New section under Tips and tricks regarding Zero horizontal offset.
  • Example gallery:

    • Re-organization of the section Reproducing: split CSEM into the two examples, rename all.
    • New example Hunziker et al., 2015, in the section Reproducing.
    • Update and maintain all of them.
  • Maintenance:

Fix example: `tem_walktem`

02 Jul 09:12
Compare
Choose a tag to compare
  • Fix example tem_walktem, related to changes in scipy.quadrature: Replace not-existing private name scipy.integrate.quadrature._cached_roots_legendre with the public name scipy.special.roots_legendre.
  • As a consequence of the above, changed in empymod the used, old name scipy.special.p_roots by new, more descriptive name scipy.special.roots_legendre.
  • Improve publications-section in the example gallery.
  • Change error reporting to native (instead of print(bla) and raise Error do raise Error(bla)); improve corresponding error testing by checking the error message too.

Bug fixes: ftarg, docs, CI, req

19 Jun 17:43
4c8bf21
Compare
Choose a tag to compare
  • Bugfix that using ftarg returned from utils.check_time as input for the same utils.check_time does not throw a warning in the case of fftlog and qwe.
  • Various micro-improvements and simplifications with regards to the documentation, testing, and requirement specifications.

Numba

29 Apr 10:28
eeba70b
Compare
Choose a tag to compare

This version is backwards incompatible and requires Python 3.6+.

  • Numba:

    • Using numexpr is no longer a possibility. Instead, numba is a new dependency. All four kernel routines (wavenumber, greenfct, reflections, and fields) are now numba-jitted functions.
  • Removed:

    • Removed all deprecated functions.
    • Dropped support for Python 3.5; moved to f-strings.
    • Dropped testing for channel conda-forge. The problems encountered at the early development cycle of empymod with conda-forge do not exist any longer.
  • New defaults:

    • EMArray: .amp and .pha are now methods, not properties. Phase takes three optional boolean parameters deg=False, unwrap=True, and lag=True, to get radians or degrees; unwrapped or not; and lag or lead defined phases.
    • The parameters epermV and mpermV are set to the values of epermH and mpermH, respectively, if not provided (hence assuming isotropic behaviour). Before they were set to ones if not provided.
  • Renaming:

    • transform.fht -> transform.hankel_dlf
    • transform.hqwe -> transform.hankel_qwe
    • transform.hquad -> transform.hankel_quad
    • transform.ffht -> transform.fourier_dlf
    • transform.fqwe -> transform.fourier_qwe
    • transform.fftlog -> transform.fourier_fftlog
    • transform.fft -> transform.fourier_fft
    • transform.fhti -> transform.get_fftlog_input
    • transform.get_spline_values -> transform.get_dlf_points.
    • factAng -> ang_fact
    • In htarg-dict: fftfilt-> dlf (filter name for Hankel-DLF)
    • In ftarg-dict: fhtfilt-> dlf (filter name for Fourier-DLF)
    • In ftarg-dict: ft-> kind (method in Fourier-DLF [sine/cosine])
    • Only dictionaries allowed for htarg and ftarg; strings, lists, or tuples are not allowed any longer. They are also dictionaries internally now.
    • ht: There is only one unique name for each method: 'dlf', 'qwe', 'quad'.
    • ft: There is only one unique name for each method: 'dlf', 'qwe', 'fftlog', 'fft'.
    • Within transform, change fhtarg, qweargs, and quadargs to htarg; qweargs to ftarg.
  • Other changes:

    • All settings (xdirect, ht, htarg, ft, ftarg, loop, verb) are now extracted from kwargs. This makes it possible that all model-functions take the same keyword-arguments; warnings are raised if a particular parameter is not used in this function, but it doesn't fail (it fails, however, for unknown parameters). Pure positional calls including those parameters will therefore not work any longer.
    • Undo a change introduced in v1.8.0: get_dlf_points is calculated directly within transform.fht empymod#26.
    • Ensured that source and receiver inputs are not altered.
    • Significantly reduced top namespace; only functions from model are loaded into the top namespace now.