Imposter syndrome disclaimer


Processing and modelling gravity and magnetic data


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 point sources, prisms and tesseroids. The inversion methods are implemented as classes with an interface inspired by scikit-learn (like Verde).

Getting started

New to Harmonica? Start here!


Need help?

Ask on our community channels

Join the conversation

Reference documentation

A list of modules and functions

API Reference

Using Harmonica for research?

Citations help support our work

Citing Harmonica

See also

Harmonica is a part of the Fatiando a Terra project.

Ready for daily use but still changing

This means that we are still adding a lot of new features and sometimes we make changes to the ones we already have while we try to improve the software based on users’ experience, test new ideas, take better design decisions, etc. Some of these changes could be backwards incompatible. Keep that in mind before you update Harmonica to a newer version.

We welcome any feedback and ideas! This is a great time to bring new ideas on how we can improve Harmonica, feel free to join the conversation or submit a new issues on Github.

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.

How to contribute

Please, read our Contributor Guide to learn how you can contribute to the project.


This disclaimer was adapted from the MetPy project.