# grdseamount¶

Create synthetic seamounts (Gaussian, parabolic, polynomial, cone or disc; circular or elliptical)

## Synopsis¶

**gmt grdseamount** [ *table* ]
**-G***outgrid*
**-I***increment*
**-R***region*
[ **-A**[*out*/*in*] ]
[ **-C**[**c**|**d**|**g**|**o**|**p**] ]
[ **-D***unit* ]
[ **-E** ]
[ **-F**[*flattening*] ]
[ **-L**[*cut*] ]
[ **-M**[*list*] ]
[ **-N***norm* ]
[ **-Q***bmode*/*fmode*[**+d**] ]
[ **-S***scale* ]
[ **-T***t0*[/*t1*/*dt*][**+l**] ]
[ **-Z***level* ]
[ **-V**[*level*] ]
[ **-bi**binary ]
[ **-e**regexp ]
[ **-f**flags ]
[ **-i**flags ]
[ **-r**reg ]
[ **--PAR**=*value* ]

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

## Description¶

**grdseamount** will compute the combined shape of multiple synthetic seamounts given their individual shape
parameters. We read from *table* (or stdin) a list of seamount locations and sizes and can evaluate either
Gaussian, parabolic, conical, polynomial or disc shapes, which may be circular or elliptical, and optionally
truncated. Various scaling options are available to modify the result, including an option to add in
a background depth (more complicated backgrounds may be added via grdmath).
The input data must contain *lon*, *lat*, *radius*, *height* for each seamount.
For elliptical features (**-E**) we expect *lon*, *lat*, *azimuth*, *semi-major*, *semi-minor*,
*height* instead. If flattening is specified (via **-F**) with no value appended
then a final column with *flattening* is expected (cannot be used for plateaus).
For temporal evolution of topography the **-T** option may be used, in which case the
data file must have two final columns with the start and stop time of seamount construction.
In this case you may choose to write out a cumulative shape or just the increments produced
by each time step (see **-Q**). Finally, for mixing shapes you can use the trailing text to set
the shape by using **-C** without an argument.

## Required Arguments (if **-L** not given)¶

*table*One or more ASCII (or binary, see

**-bi**[*ncols*][*type*]) data table file(s) holding a number of data columns. If no tables are given then we read from standard input.

**-G***outgrid*[=*ID*][**+d***divisor*][**+n***invalid*]
[**+o***offset*|**a**][**+s***scale*|**a**]
[:*driver*[*dataType*][**+c***options*]]

Give the name of the output grid file. If

-Tis set thenoutgridmust be a filename template that contains a floating point format (C syntax). If the filename template also contains either %s (for unit name) or %c (for unit letter) then we use the corresponding time (in units specified in-T) to generate the individual file names, otherwise we use time in years with no unit. Optionally, append =IDfor writing a specific file format (See full description). The following modifiers are supported:

+d- Divide data values by givendivisor[Default is 1].

+n- Replace data values matchinginvalidwith a NaN.

+o- Offset data values by the givenoffset, or appendafor automatic range offset to preserve precision for integer grids [Default is 0].

+s- Scale data values by the givenscale, or appendafor automatic scaling to preserve precision for integer grids [Default is 1].Note: Any offset is added before any scaling.

+saalso sets+oa(unless overridden). To write specific formats via GDAL, use =gdand supplydriver(and optionallydataType) and/or one or more concatenated GDAL-cooptions using+c. See the “Writing grids and images” cookbook section for more details.

**-I***x_inc*[**+e**|**n**][/*y_inc*[**+e**|**n**]]Set the grid spacing as

*x_inc*[and optionally*y_inc*].**Geographical (degrees) coordinates**: Optionally, append an increment unit. Choose among:**m**to indicate arc minutes**s**to indicate arc seconds**e**(meter),**f**(foot),**k**(km),**M**(mile),**n**(nautical mile) or**u**(US survey foot), in which case the increment will be converted to the equivalent degrees longitude at the middle latitude of the region (the conversion depends on PROJ_ELLIPSOID). If*y_inc*is given but set to 0 it will be reset equal to*x_inc*; otherwise it will be converted to degrees latitude.

**All coordinates**: The following modifiers are supported:**+e**to slightly adjust the max*x*(*east*) or*y*(*north*) to fit exactly the given increment if needed [Default is to slightly adjust the increment to fit the given domain].**+n**to define the*number of nodes*rather than the increment, in which case the increment is recalculated from the number of nodes, the*registration*(see GMT File Formats), and the domain.**Note**: If**-R***grdfile*is used then the grid spacing and the registration have already been initialized; use**-I**and**-R**to override these values.

**-R***xmin*/*xmax*/*ymin*/*ymax*[**+r**][**+u***unit*]Specify the region of interest. (See full description) (See cookbook information).

## Optional Arguments¶

**-A**[*out/in*]Build a mask grid, append outside/inside values [1/NaN]. Here, height and flattening are ignored and

**-L**,**-N**and**-Z**are disallowed.

**-C**[**c**|**d**|**g**|**o**|**p**]Select seamount shape function: choose among

**c**(cone),**d**(disc),**g**(Gaussian)**o**(polynomial) and**p**(parabolic) shape [Default is Gaussian]. All but the disc can furthermore be truncated via a flattening parameter*f*set by**-F**. If**-C**is not given any argument then we will read the shape code from the last input column. If**-C**is not given at all then we default to Gaussian shapes [**g**].**Note**: The polynomial model has an amplitude for a normalized radius*r*that is given by \(h(r) = \frac{(1+r)^3(1-r)^3)}{1+r^3}\). It is very similar to the Gaussian model (volume is just ~2.4% larger) but*h*goes exactly to zero at the basal radius.

**-D***unit*Append the unit used for horizontal distances in the input file (see Units). Does not apply for geographic data (

**-f**flags) which we convert to km.

**-E**Elliptical data format. We expect the input records to contain

*lon, lat, azimuth, major, minor, height*(with the latter in m) for each seamount. [Default is Circular data format, expecting*lon, lat, radius, height*].

**-F**[*flattening*]Seamounts are to be truncated to guyots. Append

*flattening*from 0 (no flattening) to 1 (no feature!), otherwise we expect to find it in last input column [no truncation]. Ignored if used with**-Cd**.

**-L**[*cut*]List area, volume, and mean height for each seamount; No grid is created. Optionally, append the noise-floor cutoff level below which we ignore area and volume [0].

**-M**[*list*]Write the times and names of all grids that were created to the text file

*list*. Requires**-T**. If not*list*file is given then we write to standard output.

**-N***norm*Normalize grid so maximum grid height equals

*norm*[no normalization]

**-Q***bmode*/*fmode*[**+d**]Only to be used in conjunction with

**-T**. Append two different modes settings: The*bmode*determines how we construct the surface. Specify**c**for cumulative volume through time [Default], or**i**for incremental volume added for each time slice. The*fmode*determines the volume flux curve we use. Give**c**for a constant volume flux or**g**for a Gaussian volume flux [Default] between the start and stop times of each feature. These fluxes integrate to a linear or error-function volume fraction over time, respectively, as shown below. By default we compute the exact cumulative and incremental values for the seamounts specified. Append**+d**to instead approximate each incremental layer by a disc of constant thickness.

**-S***scale*Sets optional scale factor for radii [1].

**-T***t0*[/*t1*/*dt*][**+l**]Specify

*t0*,*t1*, and time increment (*dt*) for sequence of calculations [Default is one step, with no time dependency]. For a single specific time, just give start time*t0*. Default*unit*is years; append**k**for kyr and**M**for Myr. For a logarithmic time scale, append**+l**and specify*n*steps instead of*dt*. Alternatively, give a file with the desired times in the first column (these times may have individual units appended, otherwise we assume year). Note that a grid will be written for all time-steps even if there are no loads or no changes.

**-V**[*level*]Select verbosity level [

**w**]. (See full description) (See cookbook information).

**-Z***level*Set the background depth [0].

**-bi***record*[**+b**|**l**] (more …)Select native binary format for primary table input. [Default is 4 input columns].

**-e**[**~**]*“pattern”*|**-e**[**~**]/*regexp*/[**i**] (more …)Only accept data records that match the given pattern.

**-f**flagsGeographic grids (dimensions of longitude, latitude) will be converted to km via a “Flat Earth” approximation using the current ellipsoid parameters.

**-h**[**i**|**o**][*n*][**+c**][**+d**][**+m***segheader*][**+r***remark*][**+t***title*] (more …)Skip or produce header record(s). Not used with binary data.

**-i***cols*[**+l**][**+d***divisor*][**+s***scale*|**d**|**k**][**+o***offset*][,*…*][,**t**[*word*]] (more …)Select input columns and transformations (0 is first column,

**t**is trailing text, append*word*to read one word only).

**-r**[**g**|**p**] (more …)Set node registration [gridline].

**-:**[**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 exit (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 exit.

**-?**or no argumentsPrint a complete usage (help) message, including the explanation of all options, then exit.

**--PAR**=*value*Temporarily override a GMT default setting; repeatable. See gmt.conf for parameters.

## Units¶

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 (**-jg**) using the authalic radius
(see PROJ_MEAN_RADIUS). You can use **-jf** to perform
“Flat Earth” calculations (quicker but less accurate) or **-je** to perform
exact geodesic calculations (slower but more accurate; see
PROJ_GEODESIC for method used).

## Examples¶

To compute the incremental loads from two elliptical, truncated Gaussian seamounts being constructed from 3 Ma to 2 Ma and 2.8 M to 1.9 Ma using a constant volumetric production rate, and output an incremental grid every 0.1 Myr from 3 Ma to 1.9 Ma, we can try:

```
cat << EOF > t.txt
#lon lat azimuth, semi-major, semi-minor, height tstart tend
0 0 -20 120 60 5000 3.0M 2M
50 80 -40 110 50 4000 2.8M 21.9M
EOF
gmt grdseamount -Rk-1024/1022/-1122/924 -I2000 -Gsmt_%3.1f_%s.nc t.txt -T3M/1.9M/0.1M -Qi/c -Dk -E -F0.2 -Cg -Ml.lis
```

The file l.lis will contain records with numerical time, gridfile, and unit time.