# coupe

Plot cross-sections of focal mechanisms

## Synopsis

gmt coupe [ table ] -J parameters -R region -A a|b|c|d params[+c[n|t]][+d dip][+r[a|e|dx]][+w width][+z[s]a|e|dz|min/max] -S format[scale][+a angle][+f font][+j justify][+l][+m][+o dx[/dy]][+s reference] [ -B[p|s]parameters ] [ -C cpt ] [ -D[+c][+g[fill]][+o dx[/dy]][+p pen][+s[symbol]size] ] [ -E fill ] [ -F mode[args] ] [ -G fill ] [ -H[scale] ] [ -I[intens] ] [ -L[pen] ] [ -N ] [ -Q ] [ -T[plane][+p pen] ] [ -U[stamp] ] [ -V[level] ] [ -W pen ] [ -X[a|c|f|r][xshift] ] [ -Y[a|c|f|r][yshift] ] [ -di nodata[+c col] ] [ -e regexp ] [ -h headers ] [ -i flags ] [ -p flags ] [ -qi flags ] [ -t transp ] [ -:[i|o] ] [ --PAR=value ]

## Description

Reads data values from table [or standard input] and will plot a cross-section of focal mechanisms. The name “coupe” comes from the French verb “to cut”. The best translation is a (vertical) cross section.

Unless -Q is used, a new file is created with the new coordinates (x, y) and the mechanism (from lower focal half-sphere for horizontal plane, to half-sphere behind a vertical plane). When the plane is not horizontal, - north direction becomes upwards steepest descent direction of the plane (u) - east direction becomes strike direction of the plane (s) - down direction (= north^east) becomes u^s Axis angles are defined in the same way as in horizontal plane in the new system. Moment tensor (initially in r, t, f system that is up, south, east) is defined in (-u^s, -u, s) system.

## Required Arguments

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.

-J parameters

  Specify the projection. (See full description) (See cookbook summary) (See projections table).

-R west/east/south/north[/zmin/zmax][+r][+u unit]

> Specify the region of interest. If frame is defined from cross-section parameters (see -A this option is not taken into account, but must be present.

> The region may be specified in one of several ways:

> 1. -R west/east/south/north. This is the standard way to specify geographic regions when using map projections where meridians and parallels are rectilinear. The coordinates may be specified in decimal degrees or in [±]dd:mm[:ss.xxx][W|E|S|N] format.

> 2. -R west/south/east/north+r. This form is useful for map projections that are oblique, making meridians and parallels poor choices for map boundaries. Here, we instead specify the lower left corner and upper right corner geographic coordinates, followed by the modifier +r. This form guarantees a rectangular map even though lines of equal longitude and latitude are not straight lines.

> 3. -Rg or -Rd. These forms can be used to quickly specify the global domain (0/360 for -Rg and -180/+180 for -Rd in longitude, with -90/+90 in latitude).

> 4. -R code1,code2,…[+e|r|R incs]. This indirectly supplies the region by consulting the DCW (Digital Chart of the World) database and derives the bounding regions for one or more countries given by the codes. Simply append one or more comma-separated countries using either the two-character ISO 3166-1 alpha-2 convention (e.g., NO) or the full country name (e.g., Norway). To select a state within a country (if available), append .state (e.g, US.TX), or the full state name (e.g., Texas). To specify a whole continent, spell out the full continent name (e.g., -RAfrica). Finally, append any DCW collection abbreviations or full names for the extent of the collection or named region. All names are case-insensitive. The following modifiers can be appended:

>    > - +r to adjust the region boundaries to be multiples of the steps indicated by inc, xinc/yinc, or winc/einc/sinc/ninc [default is no adjustment]. For example, -R FR+r1 will select the national bounding box of France rounded to nearest integer degree, where inc can be positive to expand the region or negative to shrink the region.

>    > - +R to adjust the region by adding the amounts specified by inc, xinc/yinc, or winc/einc/sinc/ninc [default is no extension], where inc can be positive to expand the region or negative to shrink the region.

>    > - +e to adjust the region boundaries to be multiples of the steps indicated by inc, xinc/yinc, or winc/einc/sinc/ninc, while ensuring that the bounding box is adjusted by at least 0.25 times the increment [default is no adjustment], where inc can be positive to expand the region or negative to shrink the region.

> 5. -R xmin/xmax/ymin/ymax[+u unit] specifies a region in projected units (e.g., UTM meters) where xmin/xmax/ymin/ymax are Cartesian projected coordinates compatible with the chosen projection (-J) and unit is an allowable distance unit [e]; we inversely project to determine the actual rectangular geographic region. For projected regions centered on (0,0) you may use the short-hand -R halfwidth[/halfheight]+u unit, where halfheight defaults to halfwidth if not given. This short-hand requires the +u modifier.

> 6. -R justifylon0/lat0/nx/ny, where justify is a 2-character combination of L|C|R (for left, center, or right) and T|M|B (for top, middle, or bottom) (e.g., BL for lower left). The two character code justify indicates which point on a rectangular region region the lon0/lat0 coordinates refer to and the grid dimensions nx and ny are used with grid spacings given via -I to create the corresponding region. This method can be used when creating grids. For example, -RCM 25/25/50/50 specifies a 50x50 grid centered on 25,25.

> 7. -R gridfile. This will copy the domain settings found for the grid in specified file. Note that depending on the nature of the calling module, this mechanism will also set grid spacing and possibly the grid registration (see Grid registration: The -r option).

> 8. -Ra[uto] or -Re[xact]. Under modern mode, and for plotting modules only, you can automatically determine the region from the data used. You can either get the exact area using -Re [Default if no -R is given] or a slightly larger area sensibly rounded outwards to the next multiple of increments that depend on the data range using -Ra.

-Aa|b|c|d params[+c[n|t]][+d dip][+r[a|e|dx]][+w width][+z[s]a|e|dz|min/max]

  Select the cross-section parameters:

  -Aa lon1/lat1/lon2/lat2

    lon and lat are the longitude and latitude of points 1 and 2 limiting the length of the cross-section, dip is the dip of the plane on which the cross-section is made [90], width is the width in km of the cross-section on each side of a vertical plane or above and under an oblique plane [infinity], and min and max are the limits on distances from horizontal plane in km, along steepest descent direction. Add +r to get the plot domain from the cross-section parameters; append a for automatic rounding of the domain, e for the exact limits [Default], or dx to round the distances to integer multiples of dx. Use +z to control the depth range by appending a for automatic rounding, e to use the exact fit values [Default], dz to round depths to integer multiples of dz, or give desired min/max range. For a and dz you may prepend s to clamp the minimum depth at the surface (0). When automatic depth range selection is in effect we consider the size of the symbols so that no symbol close to the depth limits will be clipped. Note: Append +c to simply report the determined region and exit (no plotting takes places). By default (+cn) we report a single numerical record with xmin xmax ymin ymax. Use +ct to instead report a text record in the format -R xmin/xmax/ymin/ymax.

  -Ab lon1/lat1/strike/length

    lon1 and lat1 are the longitude and latitude of the beginning of the cross-section, strike is the azimuth of the direction of the cross-section, and length is the length along which the cross-section is made (in km). The other parameters are the same as for -Aa option.

  -Ac x1/y1/x2/y2

    The same as -Aa option with x and y given as Cartesian coordinates.

  -Ad x1/y1/strike/length

    The same as -Ab option with x and y given as Cartesian coordinates.

-S format[scale][+a angle][+f font][+j justify][+l][+m][+o dx[/dy]][+s reference]

  Selects the meaning of the columns in the data file. scale adjusts the scaling of the radius of the “beach ball”, which will be proportional to the magnitude. scale is the size for magnitude = 5 (i.e. scalar seismic moment M0 = 4.0E23 dynes-cm). However, if +l is used then radius will be proportional to the seismic moment instead. Use +s to change the reference magnitude (or moment), and use +m to plot the same size for any magnitude. The color or shade of the compressive quadrants can be specified with the -G option. The color or shade of the extensive quadrants can be specified with the -E option. For each beachball, a text string can be specified to appear near the beachball [optional]. Append +a angle to change the angle of the text string; append +f font to change its font (size,fontname,color); append +j justify to change the text location relative to the beachball (default is above the beachball); append +o to offset the text string by dx/dy. Note: If scale is missing then we expect to read this value from the data record via the first column after the required columns for the symbol type.

  In order to use the same file to plot cross-sections, depth is in third column. Nevertheless, it is possible to use “old style” psvelomeca input files without depth in third column using the -Fo option.

-Sa[scale][+a angle][+f font][+j justify][+l][+m][+o dx[/dy]][+s reference]

  Focal mechanisms in Aki and Richards convention. Parameters are expected to be in the following columns:

  1,2: longitude, latitude of event (-: option interchanges order)

  3: depth of event in kilometers

  4,5,6: strike, dip and rake in degrees

  7: magnitude

  8,9: longitude, latitude at which to place beachball if -A is used (optional). Using 0,0 in columns 8 and 9 will plot the beach ball at the longitude, latitude given in columns 1 and 2. The -: option will interchange the order of columns (1,2) and (8,9).

  10: Text string to appear near the beach ball (optional).

-Sc[scale][+a angle][+f font][+j justify][+l][+m][+o dx[/dy]][+s reference]

  Focal mechanisms in Global CMT convention. Parameters are expected to be in the following columns:

  1,2: longitude, latitude of event (-: option interchanges order)

  3: depth of event in kilometers

  4,5,6: strike, dip, and rake of plane 1

  7,8,9: strike, dip, and rake of plane 2

  10,11: mantissa and exponent of moment in dyne-cm

  12,13: longitude, latitude at which to place beachball if -A is used (optional). Using 0,0 in columns 12 and 13 will plot the beach ball at the longitude, latitude given in columns 1 and 2. The -: option will interchange the order of columns (1,2) and (12,13).

  14: Text string to appear near the beach ball (optional).

-Sm|d|z[scale][+a angle][+f font][+j justify][+l][+m][+o dx[/dy]][+s reference]

  Seismic moment tensor. -Sm plots the full seismic moment tensor. -Sz plots the deviatoric part of the moment tensor (zero trace). -Sd plots the closest double couple defined from the moment tensor (zero trace and zero determinant). Global CMT moment tensors are deviatoric, so -Sm and -Sz will produce the same result, but -Sd will not, unless the input moment tensor is already a double couple. Parameters are expected to be in the following columns:

  1,2: longitude, latitude of event (-: option interchanges order)

  3: depth of event in kilometers

  4,5,6,7,8,9: mrr, mtt, mff, mrt, mrf, mtf in 10*exponent dynes-cm

  10: exponent

  11,12: longitude, latitude at which to place beachball if -A is used (optional). Using 0,0 in columns 11 and 12 will plot the beach ball at the longitude, latitude given in columns 1 and 2. The -: option will interchange the order of columns (1,2) and (11,12).

  13: Text string to appear near the beach ball (optional).

-Sp[scale][+a angle][+f font][+j justify][+l][+m][+o dx[/dy]][+s reference]

  Focal mechanisms given with partial data on both planes. Parameters are expected to be in the following columns:

  1,2: longitude, latitude of event (-: option interchanges order)

  3: depth of event in kilometers

  4,5: strike, dip of plane 1

  6: strike of plane 2

  7: must be ±1 for a normal/inverse fault

  8: magnitude

  9,10: longitude, latitude at which to place beachball if -A is used (optional). Using 0,0 in columns 9 and 10 will plot the beach ball at the longitude, latitude given in columns 1 and 2. The -: option will interchange the order of columns (1,2) and (9,10).

  11: Text string to appear near the beach ball (optional).

-Sx|y|t[scale][+a angle][+f font][+j justify][+l][+m][+o dx[/dy]][+s reference]

  Principal axis. Use -Sx to plot full seismic moment tensor. Use -Sy to plot the closest double couple defined from the moment tensor (zero trace and zero determinant). Use -St to plot the deviatoric part of the moment tensor (zero trace). Parameters are expected to be in the following columns:

  1,2: longitude, latitude of event (-: option interchanges order)

  3: depth of event in kilometers

  4,5,6,7,8,9,10,11,12: value (in 10*exponent dynes-cm), azimuth, plunge of T, N, P axis.

  13: exponent

  14,15: longitude, latitude at which to place beachball if -A is used (optional). Using 0,0 in columns 14 and 15 will plot the beach ball at the longitude, latitude given in columns 1 and 2. The -: option will interchange the order of columns (1,2) and (14,15).

  16: Text string to appear near the beach ball (optional).

## Optional Arguments

-B[p|s]parameters

  Set map boundary frame and axes attributes. (See full description) (See cookbook information).

-C cpt

  Give a CPT and let compressive part color be determined by the z-value in the third column.

-D[+c][+g[fill]][+o dx[/dy]][+p pen][+s[symbol]size] ]

  Offsets projected focal mechanisms to the alternate distance, depth given in the last two columns of the input file before the (optional) text string. Instead, if alternate geographical coordinates are given in the two columns then use +c to first convert them to distance, depth coordinates in the crossectional plane, and after projection to plot locations you can further adjust them via a fixed plot offset +o dx/dy . Alternatively, use +o to interpret the contents of the two columns as plot offsets instead, or append fixed offset dx/dy for all adjusted events plot locations. We will draw a line connecting the original and relocated beachball positions and optionally place a small symbol [circle] at the original location. Use +s size to set the diameter of the symbol [no symbol]. Change from circle to any of the standard geometric symbols in plot, i.e., a|c|d|g|h|i|n|p|s|t|x [c]. The symbol will be filled with the beachball color, but a fixed color (+g fill) or no fill (+g) can be selected. The line pen defaults to that given via -W but can be overridden by using +p pen [0.25p]. Note: If the cross symbol (x) is selected there is no fill since it is just two stroked lines. Use -W to set line thickness and append +c to color the crosses as other symbols.

-E fill (more …)

  Set color or fill pattern for extensive quadrants [Default is white].

-F mode[args]

  Set one or more attributes; repeatable. The various combinations are

-Fs symbol[size]

  Select a symbol instead of mechanism. Choose from the following: (c) circle, (d) diamond, (i) itriangle, (s) square, (t) triangle, (x) cross. size is the symbol size in PROJ_LENGTH_UNIT (unless c, i, or p is appended to indicate that the size information is in units of cm, inches, meters, or points, respectively). If size must be read, it must be in column 4 and the text string will start in column 5.

  Parameters are expected to be in the following columns:

  1,2:

    longitude, latitude of event (-: option interchanges order)

  3:

    depth of event in kilometers

  4:

    Text string to appear near the beach ball

-Fa[size[/Psymbol[Tsymbol]]]

  Compute and plot P and T axes with symbols. Optionally specify size and (separate) P and T axis symbols from the following: (c) circle, (d) diamond, (h) hexagon, (i) inverse triangle, (p) point, (s) square, (t) triangle, (x) cross. [Default: 6p/cc]

-Fe fill (more …)

  Set the color or fill pattern for the T axis symbol. [Default as set by -E]

-Fg fill (more …)

  Set the color or fill pattern for the P axis symbol. [Default as set by -G]

-Fp[pen]

  Draw the P axis outline using current pen (see -W), or sets pen attributes.

-Fr[fill]

  Draw a box behind the label (if any). [Default fill is white]

-Ft[pen]

  Draw the T axis outline using current pen (see -W), or sets pen attributes.

-G fill (more …)

  Set color or fill pattern for compressional quadrants [Default is black].

-H[scale]

  Scale symbol sizes and pen widths on a per-record basis using the scale read from the data set, given as the first column after the (optional) size columns [no scaling]. The symbol size is either provided by -S or via the input size column. Alternatively, append a constant scale that should be used instead of reading a scale column.

-I intens

  Use the supplied intens value (nominally in the ±1 range) to modulate the compressional fill color by simulating illumination [none]. If no intensity is provided we will instead read intens from an extra data column after the required input columns determined by -S.

-L[pen]

  Draw the “beach ball” outline using current pen (see -W) or sets pen attributes.

-N

  Does not skip symbols that fall outside map border [Default plots points inside border only].

-Q

  Suppress the production of files with cross-section and mechanism information.

-T[plane][+p pen]

  Plot the nodal planes and outlines the bubble which is transparent. If plane is

  0: both nodal planes are plotted [Default];

  1: only the first nodal plane is plotted;

  2: only the second nodal plane is plotted.

  Append +p pen to set alternative pen attributes for this feature [Default pen is as set by -W].

  For double couple mechanisms, the -T option renders the beach ball transparent by drawing only the nodal planes and the circumference. For non-double couple mechanisms, -T 0 option overlays best double couple transparently.

-U[label|+c][+j justify][+o dx[/dy]][+t text]

  Draw GMT time stamp logo on plot. (See full description) (See cookbook information).

-V[level]

  Select verbosity level [w]. (See full description) (See cookbook information).

-W[pen] (more …)

  Set pen attributes for text string or default pen attributes for fault plane edges. [Defaults: 0.25p,black,solid].

-X[a|c|f|r][xshift]

  Shift plot origin. (See full description) (See cookbook information).

-Y[a|c|f|r][yshift]

  Shift plot origin. (See full description) (See cookbook information).

-di nodata[+c col] (more …)

  Replace input columns that equal nodata with NaN.

-e[~]“pattern” | -e[~]/regexp/[i] (more …)

  Only accept data records that match the given pattern.

-h[i|o][n][+c][+d][+m segheader][+r remark][+t title] (more …)

  Skip or produce header record(s).

-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).

-p[x|y|z]azim[/elev[/zlevel]][+w lon0/lat0[/z0]][+v x0/y0] (more …)

  Select perspective view.

-qi[~]rows|limits[+c col][+a|t|s] (more …)

  Select input rows or data limit(s) [default is all rows].

-t[transp[/transp2]][+f][+s]

  Set transparency level for an overlay, in [0-100] percent range. [Default is 0, i.e., opaque]. Only visible when PDF or raster format output is selected. Only the PNG format selection adds a transparency layer in the image (for further processing). If given, transp applies to both fill and stroke, but you can limit the transparency to one of them by appending +f or +s for fill or stroke, respectively. Alternatively, append /transp2 to set separate transparencies for fills and strokes. If no transparencies are given then we expect to read them from the last numerical column(s). Use the modifiers to indicate which one(s) we should be reading (if both are requested, fill transparency is expected before stroke transparency in the column order). If just -t is given then we interpret it to mean -t+f for fill transparency only.

-:[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 arguments

  Print 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.

## Data Column Order

The -S option determines how many size columns are required to generate the selected symbol, but if size is not given then we expect to read size from file. In addition, your use of options -H, -I and -t will require extra columns. The order of the data record is fixed regardless of option order, even if not all items may be activated. We expect data columns to come in the following order:

    lon lat depth symbol-columns [size] [scale] [intens] [transp [transp2]] [trailing-text]

where items given in brackets are optional and under the control of the stated options: -S without a size selects the optional size-columns, -H selects the optional scale column, -I selects the optional intens column, and -t selects the optional transp column(s). Trailing text is always optional. Notes: (1) depth is normally required but will not be expected if -Fo is given to meca. (2) You can use -i to rearrange your data record to match the expected format.

## Examples

The following will plot a cross section of three focal mechanisms:

    gmt coupe << END -Sa1c -Aa111/33/119/33+d90+w500+z0/50+r -Q \
                -JX15c/-8c -Bxaf+l"Distance (km)" -Byaf+l"Depth (km)" -BWSen -png test
    112 32 25  30  90   0  4  Strike-slip
    115 34 15  30  60  90  5  Reverse
    118 32 45  30  60 -90  6  Normal
    END

## References

- Aki, K., & Richards, P. G. (1980). Quantitative seismology: theory and methods. San Francisco: W. H. Freeman.

- Dahlen, F. A., & Tromp, J. (1998). Theoretical global seismology. Princeton, N.J: Princeton University Press.

- Frohlich, C. (1996). Cliff’s Nodes Concerning Plotting Nodal Lines for P, SH and SV. Seismological Research Letters, 67(1), 16–24. https://doi.org/10.1785/gssrl.67.1.16

- Lay, T., & Wallace, T. C. (1995). Modern global seismology. San Diego: Academic Press.

## Author

Genevieve Patau, Laboratory of Seismogenesis, Institut de Physique du Globe de Paris, Departement de Sismologie, Paris, France

## See Also

meca, polar, gmt, basemap, plot