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

Pseudogravity transformation #281

Open
RichardScottOZ opened this issue Nov 14, 2021 · 12 comments
Open

Pseudogravity transformation #281

RichardScottOZ opened this issue Nov 14, 2021 · 12 comments
Labels
enhancement Idea or request for a new feature

Comments

@RichardScottOZ
Copy link
Contributor

Description of the desired feature:

I saw a mention on your google group from april of the pseudogravity transform.

If I understand it correctly, Fourier transform of magnetics, do stuff to it, transform back?

See 'pseudo' et al here.

http://www.cpgg.ufba.br/sato/cursos/geo542/all.f From Blakely, 95
'Subroutine B.27. Subroutine to transform a total-field anomaly into a pseudogravity anomaly. Anomalies are specified on a rectangular grid, assumed to be horizontal. Both dimensions must be a power of two. Requires subroutines FOURN, DIRCOS, and KVALUE. Edge discontinuities should be eliminated from input grids (see subroutine EXPAND).

Are you willing to help implement and maintain this feature?

Yes.

@RichardScottOZ RichardScottOZ added the enhancement Idea or request for a new feature label Nov 14, 2021
@RichardScottOZ
Copy link
Contributor Author

RichardScottOZ commented Nov 16, 2021

Also will note this https://pubs.er.usgs.gov/publication/tm7C17
Which has software available via anonymous ftp.

@RichardScottOZ
Copy link
Contributor Author

https://pubs.usgs.gov/of/1995/ofr-95-0077/of-95-77.html - longer list of old stuff - dosbox, anyone?

@LL-Geo
Copy link
Member

LL-Geo commented Nov 17, 2021

Since xrft now has pad and unpad functions, I think it might be good to define all the frequency domain filters together. Like the RTP, the Vertical Integral, and derivatives. Then we can call and combine these filters to get what we need.

We might need another function to calculate the IGRF field to make the ambient field works here.

@RichardScottOZ
Copy link
Contributor Author

Makes sense to me.

@leouieda
Copy link
Member

If I remember correctly from previous discussions, the idea was to have 2 tiers of functions:

  1. The frequency domain filter. This function takes frequency domain input, applies the filter, and returns frequency domain output.
  2. Processing function. This function takes space domain input, applies FFT, calls the frequency-domain filter, applies inverse FFT, and returns space-domain output.

Most users will interact primarily with the processing function and our docs should focus on that. The frequency domain function is for internal use and for more advances use cases.

We could always implement just the frequency domain stuff first and add the other function in case it's really needed.

@RichardScottOZ
Copy link
Contributor Author

Yes, I think that makes sense.

Certainly those of us that aren't geophysicists will appreciate the automagic function that takes grid and gives back the new one all finished.

@RichardScottOZ
Copy link
Contributor Author

So, could be a holiday tinkering project, too - how would you like to approach?

@RichardScottOZ
Copy link
Contributor Author

RichardScottOZ commented Jan 17, 2022

and here etc. #162

these are in /filters in @santisoler fft branch I think?

@RichardScottOZ
Copy link
Contributor Author

and this note from said pull request:

Ditch horizontal derivatives
It's better to use xarray.differentiate for computing horizontal
derivatives of a regular grid than using FFT-based derivative.
We should add a tutorial explaining how to compute horizontal
derivatives.

@LL-Geo
Copy link
Member

LL-Geo commented Jan 17, 2022

Yep~ I drafted a function for FFT based filter with all these transformations. I'll upload it later today.

@RichardScottOZ
Copy link
Contributor Author

Great, looking forward to it!

@RichardScottOZ
Copy link
Contributor Author

Need to remember to link LL work here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Idea or request for a new feature
Projects
None yet
Development

No branches or pull requests

3 participants