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 layers, 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.2.0-1.tar.gz (4.6 MB view details)

Uploaded Source

Built Distribution

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

harmonica-0.2.0-1-py3-none-any.whl (82.7 kB view details)

Uploaded Python 3

File details

Details for the file harmonica-0.2.0-1.tar.gz.

File metadata

  • Download URL: harmonica-0.2.0-1.tar.gz
  • Upload date:
  • Size: 4.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for harmonica-0.2.0-1.tar.gz
Algorithm Hash digest
SHA256 01a84f5249644dd373d2e9bc5b3fd91819bfbe77ec275d4f829d70a508252f44
MD5 98b306357ea493fec834ae7f32471a58
BLAKE2b-256 fe2bf429a03dc767cfbb52fb0d9cb1bbae563375385fd49aaa666afbcc762042

See more details on using hashes here.

File details

Details for the file harmonica-0.2.0-1-py3-none-any.whl.

File metadata

  • Download URL: harmonica-0.2.0-1-py3-none-any.whl
  • Upload date:
  • Size: 82.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8

File hashes

Hashes for harmonica-0.2.0-1-py3-none-any.whl
Algorithm Hash digest
SHA256 6ad97c9891c8f00fceb55786b9749d58843b37b6649c2e3f4eb6d9e72adf976d
MD5 f109c1ec7e641b055f4e2c817d5c5342
BLAKE2b-256 3d620edac154f3c9373bf55d3aabf1fd2c64a40267c1a54ffa2115f5e0c0ee99

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