Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more FFT-based transformations and filters #299

Merged
merged 71 commits into from
Feb 10, 2023
Merged

Commits on Jan 17, 2022

  1. Draft of FFT Filter

    Draft of FFT Filter
    LL-Geo committed Jan 17, 2022
    Configuration menu
    Copy the full SHA
    e50a8fe View commit details
    Browse the repository at this point in the history
  2. Some minor edits

    RichardScottOZ committed Jan 17, 2022
    Configuration menu
    Copy the full SHA
    ba82c85 View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2022

  1. Merge pull request #1 from RichardScottOZ/patch-1

    Some minor edits
    LL-Geo authored Jan 19, 2022
    Configuration menu
    Copy the full SHA
    b8f3c03 View commit details
    Browse the repository at this point in the history
  2. Update environment

    Update environment and requirements.
    Style check
    LL-Geo committed Jan 19, 2022
    Configuration menu
    Copy the full SHA
    5a077da View commit details
    Browse the repository at this point in the history

Commits on May 29, 2022

  1. Rename function to isostatic_moho_airy

    1. Rename function to isostatic_moho_airy
    2. Test density array
    LL-Geo committed May 29, 2022
    Configuration menu
    Copy the full SHA
    3e4d141 View commit details
    Browse the repository at this point in the history

Commits on Jun 16, 2022

  1. Revert "Rename function to isostatic_moho_airy"

    This reverts commit 3e4d141.
    LL-Geo committed Jun 16, 2022
    Configuration menu
    Copy the full SHA
    1d92cbb View commit details
    Browse the repository at this point in the history

Commits on Jun 23, 2022

  1. Add new filter

    Add new filter
    LL-Geo committed Jun 23, 2022
    Configuration menu
    Copy the full SHA
    5a837d2 View commit details
    Browse the repository at this point in the history
  2. Squashed commit of the following:

    commit 54c3cbe52bd33a94ccbb5bb44f2958bb3afc9330
    Author: LL-Geo <[email protected]>
    Date:   Thu Jun 23 21:36:23 2022 +0800
    
        Update filter
    
        Add more filter
    
    commit 4a5d6f1
    Author: Santiago Soler <[email protected]>
    Date:   Thu Jun 16 18:00:32 2022 -0300
    
        Avoid checking floats in tesseroid doctests (fatiando#326)
    
        Remove expected results for tesseroid calculations in docstring examples.
        Printing floats in forward modelling examples isn't that meaningful and often
        creates failures when running doctests: small differences between the expected
        and the got value could occur under some dependency and OS combinations.
    
    commit cc697af
    Author: Matt Tankersley <[email protected]>
    Date:   Fri Jun 17 08:24:32 2022 +1200
    
        Add progressbar to prism forward gravity calculations (fatiando#315)
    
        Add optional `progressbar` flag to `prism_gravity` function and to the
        `gravity` method of the prism layer accesor to print a progress bar using
        `numba_progress`. Add `numba_progress` as optional dependency. Add test
        functions for the new feature.
    
    commit 5a1c895
    Author: Santiago Soler <[email protected]>
    Date:   Tue Jun 14 13:20:39 2022 -0300
    
        Specify spherical latitude in point sources guide (fatiando#325)
    
        Replaces latitude for spherical latitude in another place of the
        `point.rst`. Fix typo on "Alternatively".
    
    commit cb476b2
    Author: Federico Esteban <[email protected]>
    Date:   Tue Jun 14 11:33:22 2022 -0300
    
        Note that spherical and geodetic latitudes are equal in spherical ellipsoids (fatiando#324)
    
        Add sentence in the Coordinate Systems section of the User Guide noting that
        if the reference ellipsoid were a sphere both the spherical latitude and the
        geodetic latitude are equivalent.
    
    commit 1256ff6
    Author: Federico Esteban <[email protected]>
    Date:   Mon Jun 13 11:35:02 2022 -0300
    
        Add Federico Esteban to AUTHORS.md (fatiando#323)
    
        Add his name, link to his GitHub account, affiliation and ORCID number.
    
    commit 32de6e0
    Author: Federico Esteban <[email protected]>
    Date:   Thu Jun 9 15:44:48 2022 -0300
    
        Specify "spherical latitude" when describing coordinates of point masses (fatiando#321)
    
        Add "spherical" when describing the spherical latitude coordinate of point
        masses in the user guide. This way we differentiate it from the "latitude"
        geodetic coordinate.
    
    commit 9667fab
    Author: Santiago Soler <[email protected]>
    Date:   Mon Jun 6 11:05:17 2022 -0300
    
        Fix small format errors in the user guide (fatiando#319)
    
        Fix link to EquivalentSources.predict method and fix superscripts in the docs.
    
    commit 2f7fcb6
    Author: Santiago Soler <[email protected]>
    Date:   Fri Jun 3 11:17:51 2022 -0300
    
        Update docs and create a proper user guide (fatiando#305)
    
        Update Sphinx docs using sphinx-panels.
        Add a proper User Guide that will ultimately replace the gallery examples.
        Each page of the new User Guide is a .rst file that uses jupyter-sphinx to run example code blocks.
        Added pages for: Coordinate systems, Forward Modelling, Gravity corrections and Equivalent Sources.
        Added a new doc/versions.rst file with links to previous documentations.
    
    commit cf4080c
    Author: Santiago Soler <[email protected]>
    Date:   Tue May 31 15:58:25 2022 -0300
    
        Compute upward derivative of a grid in the frequency domain (fatiando#238)
    
        Define a new derivative_upward function for computing the spatial upward
        derivative of a 2D grid in the frequency domain. The function makes use of
        xrft for handling Fourier transformations of xarray objects. Add a new
        filters subpackage that includes FFT filters: functions that take grids in
        frequency domain and return the desired filter also in frequency domain. Add
        fft and ifft wrapper functions of the xrft.fft and xrft.ifft ones. Add
        a new apply_filter function that takes a grid in the spatial domain, applies
        fft, the filter and ifft and returns the filtered grid also in spatial domain.
        Add tests for the new features and a gallery example for the upward derivative.
        Add netcdf4 as requirement for testing.
    
    commit 6a30797
    Author: Santiago Soler <[email protected]>
    Date:   Fri May 27 16:22:18 2022 -0300
    
        Ditch soon-to-be deprecated args of equivalent sources grid method (fatiando#311)
    
        The grid() method of Verde gridders now take a coordinates argument with
        the coordinates of the target grid. The previous region, shape and
        spacing arguments will be deprecated in Verde v2.0.0. This change makes it
        easier for our equivalent sources classes: we don't need the extra upward
        argument, users can create the coordinates of the target grid using
        verde.grid_coordinates and pass them via coordinates argument. Ditch the
        upward, shape, spacing and region arguments from the equivalent sources
        gridders. Replace them for the new coordinates argument: users need to
        provide the coordinates of the target grid instead of building it through the
        grid method. Raise errors if any of those old arguments are being passed. Raise
        warnings if any kwargs are passed: they are being ignored and not passed to the
        BaseGridder.grid() method.
    
    commit 51ceb7e
    Author: Agustina <[email protected]>
    Date:   Mon May 23 11:03:54 2022 -0300
    
        Remove deprecated point_mass_gravity function (fatiando#310)
    
        Remove point_mass_gravity function from harmonica because it was deprecated on
        PR fatiando#280. Remove related test functions.
    
    commit f336aa8
    Author: Santiago Soler <[email protected]>
    Date:   Thu May 5 14:52:08 2022 -0300
    
        Drop support for Python 3.6 (fatiando#309)
    
        Remove the compatibility metadata, remove from the CI matrix, bump the
        python_requires to 3.7+.
    
    commit d132abb
    Author: Santiago Soler <[email protected]>
    Date:   Tue May 3 12:47:22 2022 -0300
    
        Add computation of gravitational tensor components for point sources (fatiando#288)
    
        Add new kernel functions to compute gravity tensor components generated by
        point sources. Add test functions for the new feature: check that the diagonal
        elements satisfy the Laplace equation, compare all components against finite
        difference computations from the gravity acceleration. Add test class for
        checking the symmetry of tensor components. Refactor old test functions for
        point gravity: merge some functions into single ones through pytest
        parametrizations. Avoid using "gradient" for specifying the gravity
        acceleration vector: the "gravity gradient" is usually used to refer to the
        tensor.
    
    commit eb71d54
    Author: Santiago Soler <[email protected]>
    Date:   Fri Apr 22 17:23:00 2022 -0300
    
        Add deprecations to datasets and synthetic modules (fatiando#304)
    
        Add FutureWarnings to public functions of the synthetic and dataset
        modules. Add tests for the new warnings. Both modules will be deprecated in
        Harmonica v0.6.0. Instead of providing sample datasets, Harmonica will depend
        on Ensaio for that. The synthetic surveys depend on some of the sample
        datasets, but those functions are intended to be used in methodology articles,
        so they should live somewhere else.
    
    commit a4598ef
    Author: Santiago Soler <[email protected]>
    Date:   Fri Apr 22 17:06:43 2022 -0300
    
        Add conversion of prisms or a prism layer to PyVista objects (fatiando#291)
    
        Add a new visualization module that hosts prism_to_pyvista: a function to
        convert a set of prisms into a pyvista.UnstructuredGrid. Include the new
        module and this function in the API Reference. Add a new to_pyvista() method
        to the PrismLayer accessor that converts a prism layer into a pyvista grid,
        making it easier to plot it in 3D. The UnstructuredGrid has the information
        about each prism as hexahedrons, along with their physical properties as cell
        data. Add tests for the new features. Add pyvista and vtk as optional
        dependencies to environment.yml and setup.cfg. Add a new example for
        plotting a PrismLayer. Configure Sphinx to show pyvista plots in the gallery
        and to use the pyvista-plot directive in docstrings.
    
    commit 762d210
    Author: Santiago Soler <[email protected]>
    Date:   Mon Apr 4 14:09:45 2022 -0300
    
        Update Black to its stable version (fatiando#301)
    
        Black has released a stable version: 22.3.0. Now the style check tests use this
        version. Fixes a bug on CI in which Black was trying to import a private module
        of click that doesn't exist anymore. Rerun black: now Black hugs simple
        power operators.
    
    commit 10577fa
    Author: Santiago Soler <[email protected]>
    Date:   Mon Apr 4 14:00:42 2022 -0300
    
        Update Sphinx version to 4.5.0 (fatiando#302)
    
        Updates also sphinx gallery and sphinx book theme.
        This fixes a issue between latest jinja2 and Sphinx 3.5.*.
    
    commit f880065
    Author: Leonardo Uieda <[email protected]>
    Date:   Fri Mar 18 13:34:51 2022 +0000
    
        Move configuration from setup.py to setup.cfg (fatiando#296)
    
        Make the move away from setup.py following the recommendations from the
        Python packaging guides. Moves the requirement listing to setup.cfg as
        well and will use a script to extract this for conda installing on CI.
    LL-Geo committed Jun 23, 2022
    Configuration menu
    Copy the full SHA
    42239ad View commit details
    Browse the repository at this point in the history
  3. Merge branch 'main' into main

    LL-Geo authored Jun 23, 2022
    Configuration menu
    Copy the full SHA
    c9adca8 View commit details
    Browse the repository at this point in the history
  4. Reformat

    LL-Geo committed Jun 23, 2022
    Configuration menu
    Copy the full SHA
    7f613f9 View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2022

  1. Update test for filter

    Update test for filter ( derivative_easting,
        derivative_northing, derivative_upward, upward_continuation)
    LL-Geo committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    df77b13 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'main' into main

    LL-Geo authored Jul 14, 2022
    Configuration menu
    Copy the full SHA
    2bfa108 View commit details
    Browse the repository at this point in the history
  3. Update test kernel

    LL-Geo committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    c8760e2 View commit details
    Browse the repository at this point in the history
  4. Change Vn and Ve tolerance

    LL-Geo committed Jul 14, 2022
    Configuration menu
    Copy the full SHA
    5416778 View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2022

  1. Configuration menu
    Copy the full SHA
    4c49ecb View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2022

  1. Merge branch 'main' into main

    LL-Geo authored Sep 27, 2022
    Configuration menu
    Copy the full SHA
    b2cafc2 View commit details
    Browse the repository at this point in the history
  2. fix pseudo gravity

    fix pseudo gravity filter
    LL-Geo committed Sep 27, 2022
    1 Configuration menu
    Copy the full SHA
    9671392 View commit details
    Browse the repository at this point in the history

Commits on Nov 21, 2022

  1. update filter and kernel test

    update PG filter and kernel test
    LL-Geo committed Nov 21, 2022
    Configuration menu
    Copy the full SHA
    8c5dd71 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'main' into main

    LL-Geo authored Nov 21, 2022
    Configuration menu
    Copy the full SHA
    7c674d8 View commit details
    Browse the repository at this point in the history
  3. Update test_filters.py

    LL-Geo committed Nov 21, 2022
    Configuration menu
    Copy the full SHA
    c3e5d58 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    79bf5c9 View commit details
    Browse the repository at this point in the history
  5. Update test_filters.py

    LL-Geo committed Nov 21, 2022
    Configuration menu
    Copy the full SHA
    44eb40a View commit details
    Browse the repository at this point in the history
  6. deal with nan to 0

    LL-Geo committed Nov 21, 2022
    Configuration menu
    Copy the full SHA
    a7e59dc View commit details
    Browse the repository at this point in the history
  7. Rework test filter kernel

    LL-Geo committed Nov 21, 2022
    Configuration menu
    Copy the full SHA
    b4e2faf View commit details
    Browse the repository at this point in the history
  8. upload filter test file

    upload filter test file
    LL-Geo committed Nov 21, 2022
    Configuration menu
    Copy the full SHA
    d4ce28c View commit details
    Browse the repository at this point in the history

Commits on Nov 26, 2022

  1. Update harmonica/filters/_filters.py

    Change docstrings
    
    Co-authored-by: Santiago Soler <[email protected]>
    LL-Geo and santisoler authored Nov 26, 2022
    Configuration menu
    Copy the full SHA
    2bc07bf View commit details
    Browse the repository at this point in the history
  2. Update harmonica/filters/_filters.py

    correct docstrings
    
    Co-authored-by: Santiago Soler <[email protected]>
    LL-Geo and santisoler authored Nov 26, 2022
    Configuration menu
    Copy the full SHA
    a9b9ae0 View commit details
    Browse the repository at this point in the history
  3. Update harmonica/filters/_filters.py

    correct docstrings
    
    Co-authored-by: Santiago Soler <[email protected]>
    LL-Geo and santisoler authored Nov 26, 2022
    Configuration menu
    Copy the full SHA
    b559e9e View commit details
    Browse the repository at this point in the history
  4. Update harmonica/filters/_filters.py

    Correct docstring
    
    Co-authored-by: Santiago Soler <[email protected]>
    LL-Geo and santisoler authored Nov 26, 2022
    Configuration menu
    Copy the full SHA
    9ffd38e View commit details
    Browse the repository at this point in the history
  5. Update docstring and add test

    Update docstring and add test for other filters
    LL-Geo committed Nov 26, 2022
    Configuration menu
    Copy the full SHA
    2ed424e View commit details
    Browse the repository at this point in the history

Commits on Nov 27, 2022

  1. Update test file from netcdf4 to netcdf3

    Update test file from netcdf4 to netcdf3
    LL-Geo committed Nov 27, 2022
    Configuration menu
    Copy the full SHA
    703531c View commit details
    Browse the repository at this point in the history
  2. remove about test

    LL-Geo committed Nov 27, 2022
    Configuration menu
    Copy the full SHA
    cef807c View commit details
    Browse the repository at this point in the history
  3. Add drop coordinate in test and change atol in filter

    1. Add drop coordinate in test
    2. change atol in high and low pass filter
    2. Remove black space
    LL-Geo committed Nov 27, 2022
    Configuration menu
    Copy the full SHA
    c8cc2e5 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    524559d View commit details
    Browse the repository at this point in the history
  5. Merge branch 'main' into main

    LL-Geo authored Nov 27, 2022
    Configuration menu
    Copy the full SHA
    ccca3d4 View commit details
    Browse the repository at this point in the history

Commits on Nov 28, 2022

  1. Improve math of horizontal derivative and bandpass filters

    Improve the math showed in the docstrings of the horizontal derivative
    filters and the bandpass filters.
    santisoler committed Nov 28, 2022
    Configuration menu
    Copy the full SHA
    6b61e95 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8235a50 View commit details
    Browse the repository at this point in the history
  3. Run make format

    santisoler committed Nov 28, 2022
    Configuration menu
    Copy the full SHA
    c58ae11 View commit details
    Browse the repository at this point in the history

Commits on Dec 15, 2022

  1. Update test for filter_kernel

    1. improve test for filter kernel (set test with numerical output, RTP test with old Fatiando package)
    2. set back 0 wavenumber to 0
    3. Reduce the code length for pseudo_gravity
    4. update test for transformation
    LL-Geo committed Dec 15, 2022
    Configuration menu
    Copy the full SHA
    480f6ce View commit details
    Browse the repository at this point in the history
  2. fix starred expression error

    LL-Geo committed Dec 15, 2022
    Configuration menu
    Copy the full SHA
    e667f17 View commit details
    Browse the repository at this point in the history
  3. change xrt to npt

    LL-Geo committed Dec 15, 2022
    Configuration menu
    Copy the full SHA
    90b6260 View commit details
    Browse the repository at this point in the history
  4. Increase rtol

    Increase rtol from 1e-6 to 2e-6
    LL-Geo committed Dec 15, 2022
    Configuration menu
    Copy the full SHA
    de761fc View commit details
    Browse the repository at this point in the history
  5. change height_displacement to positive

    change height_displacement to positive
    increase rtol for height_displacement = 1000
    LL-Geo committed Dec 15, 2022
    Configuration menu
    Copy the full SHA
    65fbdfe View commit details
    Browse the repository at this point in the history

Commits on Dec 16, 2022

  1. Refactor reduction to the pole and pseudogravity filters

    Move some portions of the RTP code into its own private function that
    both the RTP filter and the pseudogravity filter can use. Refactor the
    code to generate the filter to improve readability and make it a little
    bit more optimal by predefining the cosines and sines. Define a private
    function to check if the two angles for the magnetization are both None
    or both angles but not one None and one angle.
    santisoler committed Dec 16, 2022
    Configuration menu
    Copy the full SHA
    d98916c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6e7753c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3b56e45 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    329caca View commit details
    Browse the repository at this point in the history
  5. Add test for invalid magnetization angles

    Add test function that raises an error if only one of the magnetization
    angles is None.
    santisoler committed Dec 16, 2022
    Configuration menu
    Copy the full SHA
    cb87af9 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d3d0146 View commit details
    Browse the repository at this point in the history

Commits on Dec 20, 2022

  1. Refactor kernel and add test

    1. update f to ambient_field
    2. update 149 to 1/gravitational constant
    3. set 0 wavenumber to 0
    4. add test for case magnetization is none
    LL-Geo committed Dec 20, 2022
    Configuration menu
    Copy the full SHA
    e6bbfca View commit details
    Browse the repository at this point in the history
  2. Update test for pseudo_gravity_kernel

    1. change expected value due to change 149.8 to 1/gravitational constant
    2. update test for inclination = 90
    LL-Geo committed Dec 20, 2022
    Configuration menu
    Copy the full SHA
    8e20937 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    599ff84 View commit details
    Browse the repository at this point in the history
  4. Refactor pseudogravity kernel

    Avoid repetition of the kernel line and reduce the if else to a single
    if statement.
    santisoler committed Dec 20, 2022
    Configuration menu
    Copy the full SHA
    087ce02 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5ec084c View commit details
    Browse the repository at this point in the history

Commits on Dec 22, 2022

  1. Change pseudo_gravity from cgs unit to SI unit

    1. Change pseudo_gravity from cgs unit to SI unit
    2. update test according to this change
    LL-Geo committed Dec 22, 2022
    Configuration menu
    Copy the full SHA
    98ae716 View commit details
    Browse the repository at this point in the history

Commits on Dec 24, 2022

  1. Configuration menu
    Copy the full SHA
    3b8da5f View commit details
    Browse the repository at this point in the history

Commits on Feb 3, 2023

  1. Remove PG filter for future

    Remove PG filter for future
    Lu Li committed Feb 3, 2023
    Configuration menu
    Copy the full SHA
    3efbbd5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0516fc5 View commit details
    Browse the repository at this point in the history
  3. Update __init__.py

    remove pg
    Lu Li committed Feb 3, 2023
    Configuration menu
    Copy the full SHA
    7e48a05 View commit details
    Browse the repository at this point in the history
  4. Update test_filters.py

    Lu Li committed Feb 3, 2023
    Configuration menu
    Copy the full SHA
    0631dc1 View commit details
    Browse the repository at this point in the history
  5. Increase rtol of test_equivalent_sources_spherical

    increase rtol from 1e-5 to 1.3e-5
    Lu Li committed Feb 3, 2023
    Configuration menu
    Copy the full SHA
    d44e6ec View commit details
    Browse the repository at this point in the history

Commits on Feb 10, 2023

  1. Configuration menu
    Copy the full SHA
    8517463 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    316628c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c816db6 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    cb0ab49 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c8e6b7b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    e865d6e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    df59d82 View commit details
    Browse the repository at this point in the history
  8. Fix error in description of wavelength parameters

    The wavelength should have the inverse units of the frequencies
    coordinates.
    santisoler committed Feb 10, 2023
    Configuration menu
    Copy the full SHA
    7dbd949 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d114dd8 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    9d430a9 View commit details
    Browse the repository at this point in the history