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 a finite-difference upward derivative #441

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

leouieda
Copy link
Member

The upward_derivative function gains a method argument that defaults to finite-diff. The way this works is by upward and downward continuing the grid by half of the average grid spacing and then calculating a central difference approximation for the derivative. An advantage of this method is a lower sensitivity to noise than the FFT-based one. Even though the continuation is FFT-based, it's not very sensitive to high-frequency noise.

@leouieda
Copy link
Member Author

Trying this out. We've had good experiences with it in our magnetic microscopy paper. This was much better than the FFT-based one, particularly for Euler Deconvolution where the quality of the upward derivative is very important.

Implemented a test but it's still failing. Need to see if this is something I'm doing wrong in the code of if the results aren't as good as I thought.

@santisoler
Copy link
Member

@leouieda I think this PR just needs some little work to be ready, and I think it would be great to have it in the next release of Harmonica. Is that possible? What do you think?

@leouieda
Copy link
Member Author

leouieda commented Feb 1, 2024

@santisoler not sure I'll be able to finish this in time. I'll try but don't let this be a bottleneck for a release.

@RichardScottOZ
Copy link
Contributor

Much better in what sense for the layperson Leo?

@leouieda
Copy link
Member Author

In the paper we were writing, it was the difference between getting completely wrong depth from Euler deconvolution and getting the correct ones. But now that I think about it, our data didn't have a lot of high frequency noise so maybe that's what's making it not so good in this case.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants