talwani2d - Compute geopotential anomalies over 2-D bodies by the method of Talwani


talwani2d [ modeltable ] [ -A ] [ -Drho ] ] [ -Ff|n[lat]|v ] [ -M[h][v] ] [ -Ntrackfile ] [ -Tminmax/inc ] [ -Zlevel[ymin/ymax] ] [ -V[level] ] [ -bibinary ] [ -iflags ] [ -oflags ] [ -x[[-]n] ]

Note: No space is allowed between the option flag and the associated arguments.


talwani2d will read the multi-segment modeltable from file or standard input. This file contains cross-sections of one or more 2-D bodies, with one polygon per segment. The segment header must contain the parameter rho, which states the the density of this body (individual body densities may be overridden by a fixed constant density contrast given via -D). We can compute anomalies on an equidistant lattice (by specifying a lattice with -T) or provide arbitrary output points specified in a file via -N. Choose between free-air anomalies, vertical gravity gradient anomalies, or geoid anomalies. Options are available to control axes units and direction.

Required Arguments

The file describing cross-sectional polygons of one or more bodies. Polygons will be automatically closed if not already closed, and repeated vertices will be eliminated.

Optional Arguments

The z-axis should be positive upwards [Default is down].
Sets fixed density contrast that overrides any setting in model file, in kg/m^3.
Specify desired gravitational field component. Choose between f (free-air anomaly) [Default], n (geoid, and optionally append average latitude for normal gravity reference value [45]) or v (vertical gravity gradient).
Sets units used. Append h to indicate horizontal distances are in km [m], and append z to indicate vertical distances are in km [m].
Specifies locations where we wish to compute the predicted value. When this option is used you cannot use -T to set an equidistant lattice. The output data records are written to stdout.
Specify an equidistant output lattice starting at x = min, with increments inc and ending at x = max.
Set observation level as a constant [0]. Optionally, and for gravity anomalies only, append the finite extent limits of a 2.5-D body.
-bi[ncols][t] (more ...)
Select native binary input. [Default is 2 input columns].
-h[i|o][n][+c][+d][+rremark][+rtitle] (more ...)
Skip or produce header record(s). Not used with binary data.
-icols[+l][+sscale][+ooffset][,...] (more ...)
Select input columns and transformations (0 is first column).
-ocols[,...] (more ...)
Select output columns (0 is first column).
-V[level] (more ...)
Select verbosity level [c].
-x[[-]n] (more ...)
Limit number of cores used in multi-threaded algorithms (OpenMP required).
-:[i|o] (more ...)
Swap 1st and 2nd column on input and/or output.
-^ or just -
Print a short message about the syntax of the command, then exits (NOTE: on Windows just use -).
-+ or just +
Print an extensive usage (help) message, including the explanation of any module-specific option (but not the GMT common options), then exits.
-? or no arguments
Print a complete usage (help) message, including the explanation of all options, then exits.


For map distance unit, append unit d for arc degree, m for arc minute, and s for arc second, or e for meter [Default], f for foot, k for km, M for statute mile, n for nautical mile, and u for US survey foot. By default we compute such distances using a spherical approximation with great circles. Prepend - to a distance (or the unit is no distance is given) to perform “Flat Earth” calculations (quicker but less accurate) or prepend + to perform exact geodesic calculations (slower but more accurate).


To compute the free-air anomalies on a grid over a 2-D body that has been contoured and saved to body.txt, using 1.7 g/cm^3 as the density contrast, try

gmt talwani2d -T-200/200/2 body.txt -D1700 -Fg > 2dgrav.txt

To obtain the vertical gravity gradient anomaly along the track in crossing.txt for the same model, try

gmt talwani2d -Ncrossing.txt body.txt -D1700 -Fv > vgg_crossing.txt

The geoid anomaly for the same setup is given by

gmt talwani2d -Ncrossing.txt body.txt -D1700 -Fn > n_crossing.txt


  1. The 2-D geoid anomaly is a logarithmic potential and thus has no natural reference level. We simply remove the most negative (if density contrast is positive) or positive (if density contrast is negative) computed value from all values, rendering the entire anomaly positive (or negative). You can use gmtmath to change the zero level to suit your needs.


Chapman, M. E., 1979, Techniques for interpretation of geoid anomalies, J. Geophys. Res., 84(B8), 3793-3801.

Kim, S.-S., and P. Wessel, 2016, New analytic solutions for modeling vertical gravity gradient anomalies, Geochem. Geophys. Geosyst., 17, http://dx.doi.org/10.1002/2016GC006263.

Talwani, M., J. L. Worzel, and M. Landisman, 1959, Rapid gravity computations for two-dimensional bodies with application to the Mendocino submarine fracture zone, J. Geophys. Res., 64, 49-59.