1 research outputs found

    Fatiando a Terra v0.4: Modeling and inversion in geophysics

    No full text
    <p>Fatiando a Terra (Portuguese for Slicing the Earth) is an open-source Python toolkit for modeling and inversion in geophysics. It provides an easy and flexible way to perform and implement geophysical data analysis.</p> <p>Official website and documentation: http://www.fatiando.org</p> <p>DOI for this release: http://dx.doi.org/10.5281/zenodo.49087</p> <p>Main changes to version 0.4 (see http://www.fatiando.org/changelog.html#version-0-4 for a complete list):</p> <p>* **New** module to obtain a synthetic convolutional seismogram in<br>   `fatiando.seismic.conv`. It can be given a depth model that will be<br>   converted to a time model before generating the synthetic seismogram.<br> * **Refactor** `fatiando.inversion`. Completely redesigned classes make<br>   implementing new inversions simpler. Subclassing `Misfit` is simpler, with<br>   fewer parameters necessary. The usage of existing inversions has changed<br>   little. A **new dependency** `future` was added to ease the transition to<br>   support Python 3.<br> * **BUG FIX**: Tesseroid computations failed (silently) when tesseroids were<br>   smaller than 1e-6 degrees on a side (~ 10 cm). Code now ignores these<br>   tesseroids on input and warns the user about it. If a tesseroid becomes<br>   smaller than this during adaptive discretization, the tesseroid effect will<br>   be computed without division.  The user will be warned when this happens.<br> * **New** reduction to the pole and upward continuation with FFT in<br>   `fatiando.gravmag.transform`. The pole reduction allows both remanent and<br>   induced magnetization. Upward continuation is more stable and faster than the<br>   old space domain approach that was implemented.<br> * **IMPORTANT BUG FIX**: Fixed wrong ordering of nodes in<br>   `fatiando.mesher.PointGrid`. The order of nodes had the same problem as the<br>   regular grids. This was not caught<br>   before because `PointGrid` didn't use `gridder.regular` to generate its<br>   internal regular grid. This is an example of why reuse is a good thing! Tests<br>   now should catch any future problems.<br> * **IMPORTANT BUG FIX**: `fatiando.gridder.regular` and many other places in<br>   Fatiando where using the wrong convention for x, y dimensions.<br>   x should point North and y East. Thus, a data matrix (regular grid) should<br>   have x varying in the lines and y varying in the columns. This is **oposite**<br>   what we had. This fix also changes the `shape` argument to be `(nx, ny)`<br>   instead of `(ny, nx)`. **Users should be aware of this and double check<br>   their code.**<br> * More stable derivatives in `fatiando.gravamag.transform`. The horizontal<br>   derivatives default to central finite-differences for greater stability. The<br>   FFT based derivatives use a grid padding to avoid edge effects.<br>   Thanks to [Matteo Niccoli](https://mycarta.wordpress.com/) for suggesting<br>   this fix.<br> * **Renamed** `fatiando.gravmag.fourier.ansig` to<br>   `fatiando.gravmag.transform.tga`<br> * **Remove** `fatiando.gravmag.fourier` by moving relevant functions into<br>   `fatiando.gravmag.transform`.<br> * **New** `seismic_wiggle` and `seismic_image` plotting functions for<br>   seismic data in `fatiando.vis.mpl`<br> * **Remove** OpenMP parallelism from the `fatiando.gravmag` Cython coded<br>   forward modeling. Caused the majority of our install problems and didn't<br>   offer a great speed up anyway (< 2x). Can be replaced by `multiprocessing`<br>   parallelism without the install problems<br> * Tesseroid forward modeling functions in `fatiando.gravmag.tesseroid` take<br>   an optional `pool` argument. Use it to pass an open<br>   `multiprocessing.Pool` for the function to use. Useful to avoid processes<br>   spawning overhead when calling the forward modeling many times<br> * **BUG FIX**: Avoid weird numba error when tesseroid has zero volume. Let to<br>   better sanitizing the input model. Tesseroids with dimensions < 1cm are<br>   ignored because they have almost zero gravitational effect<br> * Ported the tesseroid forward modeling code from Cython to numba. This is<br>   following the discussion on issue<br>   [#169](https://github.com/fatiando/fatiando/issues/169) to make installing<br>   less of burden by removing the compilation step. The numba code runs just as<br>   fast. New functions support multiprocessing parallelism.<br>   Thanks to new contributor Graham Markall for help with numba.<br> * **BUG FIX**: Replace `matplotlib.mlab.griddata` with<br>   `scipy.interpolate.griddata` in `fatiando.gridder.interp` to avoid<br>   incompatibilities when using `matplotlib > 1.3`<br>   (at least in MacOS). Nearest neighbor interpolation method flagged as `nn`<br>   was removed. Now it becomes only `nearest`. Also replace `matplotlib`<br>   with `scipy` in `fatiando.mesher.PrismMesh.carvetopo`<br> * **New class** `fatiando.gravmag.basin2d.PolygonalBasinGravity` for 2D<br>   gravity inversion for the relief of a basin.<br> * **Removed** package `fatiando.gui`. This was an experimental and temporary<br>   package to explore interactivity.<br> * Moved `Moulder` to the **new module** `fatiando.gravmag.interactive`.<br>   Completely rewrote the application. It now allows editing, moving, and<br>   deleting polygons, persisting the application to a pickle file and reloading,<br>   etc.</p> <p> </p
    corecore