Next: Preface to version 2.1 Up: Prefaces Previous: Preface to version 3.1

# Preface to version 3.0 (Oct-1995)

As of January 1995 it appears that around 5000 scientists and engineers worldwide are using GMT in their work. This estimate is based on ftp traffic over the last few years. Most users of GMT are geoscientists, but there are apparently no limits to the kind of applications that may benefit from GMT: We know GMT is used in medical research, engineering, physics, mathematics, social and biological sciences, and by geographers, fisheries institutes, oil companies, and a wide range of government agencies.

Figure 1.1: A subset of all GMT users obtained by an electronic survey in October 1994. The circles represent approximately 200 separate institutions with more than 1600 GMT users combined.

The present version 3.0 represents a significant improvement over earlier releases. The most visible change is the inclusion of a high-resolution coastline data base which will allow the generation of small-scale, detailed maps of high quality and accuracy (see Appendix K for more details). In addition, we have added three more map projections, six new programs, modified and added new options to others, and killed numerous bugs. The file CHANGES on the tar archive has all the details; here are some highlights:

Customizable grdfile i/o.

This allows the user to supply his/her own read/write kernels, link these with GMT during installation, and be able to use GMT programs directly with the user’s data files. This mechanism also speeds up many operations by letting the user select a format that allows piping instead of saving the results of intermediate steps to temporary files (as is necessary with the netCDF format). In addition to the default netCDF-based gridfile format, GMT comes equipped with 3 additional formats:

-
  binary 4-byte floating points with leading grdheader (See Appendix B for formats)

-
  binary 2-byte short integers with leading grdheader

-
  Sun 8-bit standard rasterfile (colormap ignored)

The file gmt_customio.c contains information on how to add more formats. We anticipate that formats of general interest will be developed by enterprising users and forwarded to us for possible inclusion in later GMT releases.

Binary i/o option for several i/o intensive programs.

Several programs typically read and/or write large amounts of data These include blockmean , blockmedian , grd2xyz , nearneighbor , splitxyz , surface , and xyz2grd . These programs are often used to decimate vast quantities of data, but much of the processing time can be spent on the ASCII-binary conversion during read and write. A new -b option allows these programs to do their i/o in native binary format (single or double precision).

4+ new map projections.

We have included the Robinson pseudo-cylindrical projection (adopted by the National Geographic Society), the Eckert VI equal area projection, the Plate Carrée equidistant cylindrical projection, and a generic cylindrical equal area projection. The latter accepts an arbitrary standard latitude: Set to 0o, 30o, 37.4o, or 45o you obtain the Lambert, Behrmann, Trystan-Edwards, and Peters (Gall) cylindrical projections, respectively. Furthermore, we have generalized the sinusoidal projection. The interrupted map on the cover page is a superposition of three sinusoidal plots that are offset horizontally.

6 new programs.

Programs have been added to address several important tasks:

Table 1.10: New programs in GMT 3.0
Program | Task
grd2cpt | Creates a color palette table based on a grdfile
grdlandmask | Creates ``wet-dry'' mask grdfile from shoreline data base
grdreformat | Converts between various grid formats
grdvector | Draws vector field plots for gridded files
pscontour | Contouring of raw xyz data (by triangulation)
triangulate | Optimal Delaunay triangulation and gridding of xyz-data

Simpler map projection option -–J*.

All projections may now be specified with upper or lower case modifier *: Lower case works as before (it expects map scale), while upper case expects map width. This makes it much easier to fit a plot on the page. E.g., -–Jm5 will generate a Mercator map in which 1o of longitude equals 5 inches (or cm, depending on your choice of units), while -JM5 will make a map that is 5 inches (or cm) wide regardless of region selected (in both cases, the height will of course depend on region).

All projections now accept arbitrary regions in the -–R option (in earlier versions there were some projections that implicitly assumed a global map -R0/360/-90/90).

Improved syntax checking.

All GMT programs now have extensive syntax checking and give shorter and more meaningful error messages. It is only when no arguments are provided that the entire usage message will be echoed.

Better SI support

During installation of GMT you may choose to use SI units as your default (basically, it means that plot sizes are measured in cm instead of inch). This will modify the source code to show the SI default values and produce man pages using SI units. However, you can always override the defaults by modifying your .gmtdefaults file.

Operational changes.

A few modifications of command arguments have taken place. If you have developed shell-scripts with GMT commands you may need to edit these accordingly:

-
  The -# option (for multiple plot copies) has been replaced by -c to avoid problems in cshell scripts (# is the start of a comment in cshells).

-
  The optional ‘r’ suffix in -J has been moved to the -R option.

-
  grdmath is now a general-purpose ``Reverse Polish Notation'' (RPN) calculator for grd-files. Hence, the order of the arguments is different.

-
  The +file mechanism to read alternative .gmtcommands files has been changed to apply to alternative .gmtdefaults files. This is more useful since one can now use this mechanism to select different default settings for different output devices (e.g., slidemakers, laserwriters, camera-ready journal formats, etc.).

-
  2-D interpolations are now done as bicubic or bilinear interpolation (Taylor expansion is gone).

-
  Option -T in grdview (to smooth contours) has been renamed -S to match the usage in grdcontour .

-
  psxy now clips polygons that exceed the map region correctly.

-
  The improved -–U[/x0/y0/][label] option now allows you to specify where you want the timestamp to appear relative to the lower-left corner of the current plot (not page). This would override the default location (-0.75, -0.75) (inches) or (-2,2 cm).

Several programs have received additional options.

Table 1.11: Program changes in GMT 3.0
Program | Changes
grdcontour | Added -M to create a single multisegment file when using -–D.
| -–C will accept a cpt file if the name ends in ``.cpt''
grdmath | Added hypot, r_squared, min, and max operators.
nearneighbor | Added option -–W for weighted data input.
psbasemap | Added option -–L to draw map scale.
pscoast | Added option -L to draw map scale and -–I to draw rivers.
pshistogram | Added -S to draw stair-step diagram.
pstext | Added option -–N to not clip text at boundaries.
pswiggle | Added option -–S to draw z scale.
psxy | Added -Sl option to plot an arbitrary letter or string
| Added option -N to not clip symbols at boundaries.
psxyz | Added option -N to not clip symbols at boundaries.

The documentation (this book plus all manual pages) has been updated to reflect these changes. Two new appendices (J, K) discussing the finer points of filtering and the development of the high-resolution coastline data base have been added.

Finally, we would like to thank those of you who have contributed ideas, bug reports, and advice since version 2.1. We continue to appreciate your input, and believe version 3.0 reflects many of the suggestions you have provided.

Next: Preface to version 2.1 Up: Prefaces Previous: Preface to version 3.1