Skip to content

Releases: fatiando/harmonica

v0.7.0

12 Aug 22:37
b9f9c00
Compare
Choose a tag to compare

Released on: 2024/08/12

Digital Object Identifier for the Zenodo archive

Breaking changes:

  • Update the gravitational constant (#412)
  • Remove the harmonica.test() function (#482)
  • Remove depth_type from EquivalentSources (#468)
  • Change default value for depth in EquivalentSourcesGB (#515)
  • Change default for window size in EquivalentSourcesGB (#487)

Bug fixes:

  • Make reduce_to_pole work for arbitrary dimension names (#509)
  • Fix inverted sign in upward derivative filter (#479)
  • Fix coordinate rounding errors in FFT (#398)

New features:

  • Remove horizontal coordinates when ditching thin prisms (#394)
  • Raise error for zero depth value in equivalent sources (#524)
  • Merge magnetic forward functions for prisms (#448)
  • Merge magnetic forward functions for dipoles (#453)
  • Magnetic field of dipoles in Cartesian coordinates (#414)
  • Forward models of prisms gravity fields with Choclo (#400)
  • Drop null prisms when converting a prism layer to pyvista (#393)
  • Add total gradient amplitude transformation (#478)
  • Add total_field_anomaly function (#510)
  • Add progressbar to tesseroid forward modelling (#430)
  • Add new tilt_angle transformation function (#486)
  • Add magnetic field forward modelling of rectangular prisms (#369)
  • Add function to convert magnetic vector to inclination and declination (#402)
  • Add Euler Deconvolution of a single window (#493)
  • Add covariance, change fit data, more docs to Euler Deconvolution (#519)
  • Add associated Legendre function calculations (#505)

Maintenance:

  • Use Dependabot to update GitHub Actions workflows (#455)
  • Use Choclo functions for forward modelling point sources (#422)
  • Use Burocrata to check and add license notices (#469)
  • Use a text field for license in pyproject.toml (#442)
  • Specify nopython=True on jit functions (#435)
  • Setup Trusted Publisher deployment to PyPI (#477)
  • Run serial vs parallel test on prisms without Numba (#434)
  • Rewrite check for point inside tesseroid with Numba (#419)
  • Fix prism_layer test when accessing PyVista cells (#409)
  • Fix broken ICGEM file loader test (#457)
  • Extend support to Python 3.12 (#484)
  • Extend support for Numpy 2.0 (#514)
  • Drop support for Python 3.8 (#497)
  • Drop support for Python 3.7 (#404)
  • Ditch setup.cfg and use only pyproject.toml (#438)
  • Decorate tests for Legendre functions (#521)
  • Continue running doctests after failure (#411)
  • Add Yago M Castro to AUTHORS.md (#489)
  • Add India Uppal to AUTHORS.md (#500)
  • Add Gelson to AUTHORS.md (#520)

Documentation:

  • Update versions of Sphinx and its plugins (#472)
  • Update how to pip install dev version in install.rst (#444)
  • Set hinge to zero in gallery example plot (#408)
  • Replace sphinx napoleon for numpydoc (#492)
  • Replace color for fill in examples using PyGMT (#495)
  • Minor typo in eq sources parameter estimation docs (#389)
  • Minor edits to grid transformations guides (#391)
  • Make gravity units more explicit (#421)
  • Improve installation instructions in the docs (#483)
  • Improve docstrings of prism gravity functions (#429)
  • Improve docstring of prism_magnetic function (#481)
  • Improve coordinates description in forward functions (#413)
  • Fix wrong citations of Cordell (1992) (#518)
  • Fix visualization test using deprecated PyVista method (#433)
  • Fix typo in user guide (#475)
  • Fix typo in Installing (#416)
  • Fix spelling of "Gaussian" in tranformations guide (#464)
  • Fix prism and tesseroid layer in API Reference (#428)
  • Fix multiple typos on [DatasetAccessorPrismLayer]{.title-ref} (#494)
  • Fix missing PyGMT images in user guide (#474)
  • Download User Guides as scripts and notebooks (#405)

This release contains contributions from:

  • Agustina Pesce
  • Federico Esteban
  • Gelson F. Souza-Junior
  • India Uppal
  • Leonardo Miquelutti
  • Leonardo Uieda
  • Lu Li
  • Mariana Gómez
  • Matt Tankersley
  • RichardScottOZ
  • Santiago Soler
  • Sergei Freiman
  • Yago Moreira Castro

v0.6.0

02 Mar 04:10
941e3bb
Compare
Choose a tag to compare

Released on: 2023/03/01

Digital Object Identifier for the Zenodo archive

Deprecations:

  • Deprecate EQLHarmonic and EQLHarmonicSpherical classes (#366)
  • Deprecate isostasy_airy function (#379)
  • Deprecate the synthetic and dataset modules (#380)

New features:

  • Add function to create a tesseroid layer, similar to the one for the prism layer (#316)
  • Add function to read Oasis Montaj© grd files as xarray.DataArray (#348)
  • Add option to discard thin prisms when forward modelling a prism layer (#373)
  • Add FFT-based transformations and filters for horizontal derivatives, upward continuation, reduction to the pole of magnetic grids, and low-pass and high-pass Gaussian filters (#299)
  • Make horizontal derivative functions to compute the derivatives using central finite differences (#378)

Maintenance:

  • Minor optimization in prism forward modelling (#349)
  • Set lower bounds for supported dependency versions following NEP29 (#356)
  • Extend support for Python 3.10 (#240)
  • Bump versions of style checkers like Black and Flake8 (#368)
  • Replace setup.py with PyPA build (#363)
  • Clean Harmonica API: make the forward, equivalent_sources, gravity_corrections, isostasy and transformations submodules private (#362)

Documentation:

  • Replace Cartopy with PyGMT throughout the documentation (#327)
  • Fix typo in equivalent sources tutorial (#351)
  • Add tesseroid_layer to the API reference (#354)
  • Update README to match Verde and Boule (#358)
  • Fix contact link in the documentation side bar (#357)
  • Set v0.4.0 as the last with support for Python 3.6 (#359)
  • Add more papers to "Citing the methods" section in the docs (#375)
  • Add examples and a user guide page for grid transformations (#377)
  • Add examples on how to use horizontal derivative functions to the user guide (#384)

This release contains contributions from:

  • Mariana Gomez
  • Lu Li
  • Agustina Pesce
  • Santiago Soler
  • Matt Tankersley
  • Leonardo Uieda

v0.5.1

26 Aug 19:31
9529b5a
Compare
Choose a tag to compare

Released on: 2022/08/26

Digital Object Identifier for the Zenodo archive

Bug fixes:

  • Fix test function for empty ICGEM gdf file (#345)
  • Add a function to ignore the tesseroid with zero density or volume (#339)
  • Fix equivalent sources figures in gallery examples (#342)
  • Replace PROJECT placeholder in changes.rst for "harmonica" (#341)

This release contains contributions from:

  • Agustina Pesce
  • BenjMy
  • Santiago Soler

v0.5.0

12 Aug 21:53
d6a6002
Compare
Choose a tag to compare

Released on: 2022/08/12

Digital Object Identifier for the Zenodo archive

Deprecations:

  • Add FutureWarning to isostasy_airy function warning of deprecation after next release (#307)
  • Ditch soon-to-be deprecated args of equivalent sources grid method (#311)
  • Remove deprecated point_mass_gravity function (#310)
  • Drop support for Python 3.6 (#309)
  • Add deprecations to datasets and synthetic modules (#304)

New features:

  • Discard prisms with no volume or zero density before running the forward model (#334)
  • Add a new isostatic_moho_airy function to compute Moho depth based on Airy isostasy hypothesis using the rock equivalent topography concept (#307)
  • Add progressbar to prism forward gravity calculations (#315)
  • Add computation of gravitational tensor components for point sources (#288)
  • Add function to compute upward derivative of a grid in the frequency domain (#238)
  • Add conversion of prisms or a prism layer to PyVista objects (#291)

Maintenance:

  • Simplify tests for upward derivative (#328)
  • Avoid checking floats in tesseroid doctests (#326)
  • Update Black to its stable version (#301)
  • Move configuration from setup.py to setup.cfg (#296)
  • Pin style checkers and formatters (#295)

Documentation:

  • Add impostor syndrome disclaimer to docs (#333)
  • Convert README to Markdown, since it's no longer used to build the docs (#331)
  • Replace sphinx-panels for sphinx-design and refactor the home page of the docs(#329)
  • Specify spherical latitude in point sources guide (#325)
  • Note that spherical and geodetic latitudes are equal in spherical ellipsoids (#324)
  • Specify "spherical latitude" when describing coordinates of point masses (#321)
  • Fix small format errors in the user guide (#319)
  • Update docs and create a proper user guide (#305)
  • Update Sphinx version to 4.5.0 (#302)
  • Link Code of Conduct and Authorship, Contributing, and Maintainers Guides back to the Fatiando-wide pages (#294)
  • Replace Google Analytics for Plausible (#297)

This release contains contributions from:

  • Federico Esteban
  • Lu Li
  • Agustina Pesce
  • Santiago Soler
  • Matt Tankersley

v0.4.0

02 Dec 12:26
c1c2add
Compare
Choose a tag to compare

Released on: 2021/12/02

Digital Object Identifier for the Zenodo archive

New features:

  • Allow EquivalentSources to define block-averaged sources through a new block_size argument (Soler2021). (#260)
  • Add dtype argument to EquivalentSources. Allows to select the data type used to allocate the Jacobian matrix. (#278)
  • Add a new EquivalentSourcesGB class that implements gradient-boosted equivalent sources. Provides a method to estimate the amount of computer memory needed to allocate the largest Jacobian matrix (Soler2021](https://doi.org/10.1093/gji/ggab297)). (#275)
  • Allow tesseroid_gravity to compute gravitational fields of variable density tesseroids. Implements the density-based discretization algorithm and takes numba.njit decorated density functions as input (Soler2019). (#269)

Breaking changes:

  • Rename point_mass_gravity to point_gravity. Having mass and gravity in the same function name is redundant. The function name has the same structure as other forward modelling functions (tesseroid_gravity and prism_gravity). The old point_mass_gravity will be deprecated on the next release. (#280)

Bug fixes:

  • Fix bug with the require_numba pytest mark and rename it to run_only_with_numba for improved readability. (#273)

Documentation:

  • Fix typo on EquivalentSources docstring: replace bloc_size with block_size. (#276)
  • Minor improvements to the docs: fix bad references and links, replace Equivalent Layer for Equivalent Sources on API Index, fix bad RST syntax. (#274)

Maintenance:

  • Rename the default branch: from master to main (#287)
  • Replace pylint for flake8 extensions. Add isort for autoformatting imports. (#285)
  • Replace conda for pip on GitHub Actions and split requirements files for each separate task. (#282)
  • Make GitHub Actions to check if license notice is present in source files. (#277)

This release contains contributions from:

  • Santiago Soler

v0.3.3

22 Oct 15:54
2245452
Compare
Choose a tag to compare

Released on: 2021/10/22

Digital Object Identifier for the Zenodo archive

Bug fix:

  • Add EquivalentSources and EquivalentSourcesSph to API index. Replace the old equivalent layer classes. (#270)

This release contains contributions from:

  • Santiago Soler

v0.3.2

21 Oct 15:49
ef58983
Compare
Choose a tag to compare

Released on: 2021/10/21

Digital Object Identifier for the Zenodo archive

Bug fixes:

  • Fix import of Harmonica version on sample datasets: solves a problem whenbuilding docs for releases. Define the __version__ variable inside a new version.py file. (#264)

This release contains contributions from:

  • Santiago Soler

v0.3.1

20 Oct 17:43
db4d642
Compare
Choose a tag to compare

Released on: 2021/10/20

Digital Object Identifier for the Zenodo archive

Bug fix:

  • Package requirements.txt and update the dependencies list: remove scipy and add scikit-learn. Exclude license_notice.py and .flake8 from the MANIFEST.in (#261)

This release contains contributions from:

  • Santiago Soler

v0.3.0

20 Oct 11:42
1b75690
Compare
Choose a tag to compare

Released on: 2021/10/20

Digital Object Identifier for the Zenodo archive

Deprecations:

  • Rename equivalent sources classes to EquivalentSources and EquivalentSourcesSph. The old EQLHarmonic and EQLHarmonicSpherical will be removed on v0.5 (#255)
  • Rename the relative_depth parameters in EquivalentSources to depth. The old relative_depth parameter will be deleted on v0.5 (#236)

New features:

  • Enable parallelization on tesseroids forward modelling and refactor its code (#244)
  • Add option to set EquivalentSources points to constant depth (#236)
  • Allow prism_layer to take Xarray objects as arguments (#243)

Maintenance:

  • Generate version string on _version.py on build (#237)
  • Run CIs only on the two ends of supported Python versions (#256)
  • Transform require_numba decorator into a global variable (#245)

Documentation:

  • Fix typo: replace bellow for below across docstrings (#253)
  • Fix version display in the HTML title (#249)
  • Remove unneeded line in prism_gravity example (#248)
  • Update Fukushima2020 citation on References (#246)
  • Change order of dims in example of prism_layer (#241)
  • Fix class name on See also section in prism_layer (#230)
  • Use the Jupyter book Sphinx theme instead of RTD (#227)

This release contains contributions from:

  • Santiago Soler
  • Leonardo Uieda

v0.2.1

13 Apr 22:41
632d7ae
Compare
Choose a tag to compare

Released on: 2021/04/14

Digital Object Identifier for the Zenodo archive

Minor changes:

  • Rename prisms_layer to prism_layer (#223)

Bug fixes:

  • Unpin Sphinx and fix documentation style (#224)

This release contains contributions from:

  • Santiago Soler