Skip to main content

Forward modeling, inversion, and processing gravity and magnetic data

Project description

Harmonica

Documentation | Documentation (dev version) | Contact | Part of the Fatiando a Terra project

Latest version on PyPI GitHub Actions status Test coverage status Compatible Python versions. Digital Object Identifier for the Zenodo archive

Disclaimer

🚨 This package is in early stages of design and implementation. 🚨

We welcome any feedback and ideas! Let us know by submitting issues on Github or send us a message on our Slack chatroom.

About

Harmonica is a Python library for processing and modeling gravity and magnetic data. It includes common processing steps, like calculation of Bouguer and terrain corrections, reduction to the pole, upward continuation, equivalent sources, and more. There are forward modeling functions for basic geometric shapes, like spheres, prisms, polygonal prisms, and tesseroids. The inversion methods are implemented as classes with an interface inspired by scikit-learn (like Verde).

Project goals

These are the long-term goals for Harmonica:

  • Efficient, well designed, and fully tested code for gravity and magnetic data.

  • Cover the entire data life-cycle: from raw data to 3D Earth model.

  • Focus on best-practices to discourage misuse of methods, particularly inversion.

  • Easily extended code to enable research on the development of new methods.

See the Github milestones for short-term goals.

Things that will not be covered in Harmonica:

  • Multi-physics partial differential equation solvers. Use SimPEG or PyGIMLi instead.

  • Generic grid processing methods (like horizontal derivatives and FFT). These should be implemented in Verde.

  • Data visualization.

  • GUI applications.

Contacting Us

Contributing

Code of conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Contributing Guidelines

Please read our Contributing Guide to see how you can help and give feedback.

Imposter syndrome disclaimer

We want your help. No, really.

There may be a little voice inside your head that is telling you that you’re not ready to be an open source contributor; that your skills aren’t nearly good enough to contribute. What could you possibly offer?

We assure you that the little voice in your head is wrong.

Being a contributor doesn’t just mean writing code. Equally important contributions include: writing or proof-reading documentation, suggesting or implementing tests, or even giving feedback about the project (including giving feedback about the contribution process). If you’re coming to the project with fresh eyes, you might see the errors and assumptions that seasoned contributors have glossed over. If you can write any code at all, you can contribute code to open source. We are constantly trying out new skills, making mistakes, and learning from those mistakes. That’s how we all improve and we are happy to help others learn.

This disclaimer was adapted from the MetPy project.

License

This is free software: you can redistribute it and/or modify it under the terms of the BSD 3-clause License. A copy of this license is provided in LICENSE.txt.

Documentation for other versions

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

harmonica-0.4.0.tar.gz (100.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

harmonica-0.4.0-py3-none-any.whl (106.2 kB view details)

Uploaded Python 3

File details

Details for the file harmonica-0.4.0.tar.gz.

File metadata

  • Download URL: harmonica-0.4.0.tar.gz
  • Upload date:
  • Size: 100.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for harmonica-0.4.0.tar.gz
Algorithm Hash digest
SHA256 812fccac9cae9a0d759a0353358437276ba666873b2149e1efa3215d94bfe8cb
MD5 1ec20f499863604238c2835e3d464515
BLAKE2b-256 3f43388af9e68850a2e2881917b649dbbb48bb466c019ebb0fa2986d6bf73bd5

See more details on using hashes here.

File details

Details for the file harmonica-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: harmonica-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 106.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for harmonica-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 caee8bde9176e1986065f87b48be874f60ee7598853c3de0fbef0822378a528e
MD5 792ed99379a40134f066af01f5442cf8
BLAKE2b-256 61554da5903dbfae694dfa28921a35dded5e6912cac146153f330778d68fa148

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page