Gravity anomaly for 3D density Grid

Hi all!

I was wondering if maybe you can help me with something. I am trying to compute the gravity anomaly of a 3D density model (in Julia). My model is very simple, it is composed by a regular 3D grid (Lat, Long, Depth) and I have a density value for each node. My grid is global (just in case this changes anything).

I wonder if you could recommend a method (I don’t know if the GMT grav functions could help me) to compute the anomaly produced by my model.

You can try the grdgravmag3d module. It does not allow a variable density grid but it does accept a top and a bottom grid. You could try to play with this to simulate a variable density. This module has not been ported to julia syntax so you will need to use the monolithic syntax (e.g. gmt("grdgravmag3d …options ")).

You can look at this test (in bash) for inspiration on how to use it.
Also, I never used it in global grids and have no idea right now if there are issues related to that (there might be).

Thants @Joaquim I will test it and report back!

And there are also gmtgravmag3d that lets set variable density but have more doubts on if can be used to compute global grids. The Okabe method is cartesian and a local plane is used when computing in geogs. Finally the is also talwani3d but I never used. Maybe Paul has something to say about it.

Any example for both? I will try and see what works

The sombrero_mag test has an example of using gmtgravmag3d for computing a magnetic anomaly. Regarding gmttalwani3d I find only tests over regular bodies. Not what you want.

1 Like

Dear Mariano,

I have no idea how to do this job with GMT but it is very simple if you convert your grid to a volume element model (a set of rectangular joining prisms) and then compute its gravitational effect using the closed formulae available for prism. You may even assign different density value for each prism. Moreover you may apply a top and a bottom “surface” to simulate topography and/or some interface in the crust. But, and this is a limitation, of course, you can do this for local models when the planar (map projection) approximation is acceptable (i.e. the effect of curvature of the earth’s surface is negligible). For large areas (for the whole earth), you have to use polyhedrons, point masses or the tesseroid approach to follow the curved geometry of the globe properly. How big and dense is your grid? Best regards, Gábor Papp (

1 Like