mgd77convert - Convert MGD77 data to other file formats


mgd77convert NGDC-ids -Fa|c|m |t -T[+]a|c|m|t [ -C ] [ -D ] [ -L[w][e][+] ] [ -V[level] ]

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


mgd77convert reads versions of MGD77 files and writes the same data in (probably) another format to a new file in the current directory. Both pre- and post-Y2K MGD77 formats can be processed.

Required Arguments


Can be one or more of five kinds of specifiers:

  1. 8-character NGDC IDs, e.g., 01010083, JA010010etc., etc.
  2. 2-character agency codes which will return all cruises from each agency.
  3. 4-character <agency><vessel> codes, which will return all cruises from those vessels.
  4. =list, where list is a table with NGDC IDs, one per line.
  5. If nothing is specified we return all cruises in the data base.

(See mgd77info -L for agency and vessel codes). If no file extension is given then we search for files with one of the four known extensions. The search order (and the extensions) tried is MGD77+ (”.nc”), MGD77T (”.m77t”), MGD77 (”.mgd77” ) and plain text file (”.dat”). Use -I to ignore one or more of these file types). Cruise files will be looked for first in the current directory and second in all directories listed in $MGD77_HOME/mgd77_paths.txt [If $MGD77_HOME is not set it will default to $GMT_SHAREDIR/mgd77].

-Fa|c|m |t
Specifies the format of the input (From) files. Choose from a for standard MGD77 ASCII table (with extension .mgd77), c for the new MGD77+ netCDF format (with extension .nc), m for the new MGD77T format (extension .m77t) and t for a plain ASCII tab-separated table dump (with extension .dat). Use -FC to recover the original MGD77 setting from the MGD77+ file [Default will apply any E77 corrections encoded in the file].
-T[+]a|c|m |t
Specifies the format of the output (To) files. Choose from a for standard MGD77 ASCII table (with extension .mgd77), c for the new MGD77+ netCDF format (with extension .nc), m for the new MGD77T format (extension .m77t) and t for a plain ASCII tab-separated table dump (with extension .dat). We will refuse to create the file(s) if they already exist in the current directory. Prepend + to override this policy.

Optional Arguments

Convert from NGDC two-file data sets *.h77, *.a77 to single file *.mgd77. No other options (except -V) are allowed. Give one or more names of *.h77 files, *.a77 files, or just the file prefixes.
By default, the storage types used in a MGD77+ netCDF file greatly exceed the precision imposed by the ASCII MGD77 format. However, for the five items faa, eot, mag, diur and msd we use 2-byte integers with implied precisions of 0.1 mGal, 0.1 nTesla, and 1 m as in the MGD77 format. It is possible that at some point these items will need to be stored as 4-byte ints which would allow precisions of 10 fTesla, 1 nGal, and 0.01 mm, respectively. This option activates such storage [Default uses 2-byte integers].
Set the level of verification reporting [none] and where to send such reports [stderr]. Append a combination of w for warnings, e for errors, and + to send such log information to stdout.
-V[level] (more ...)
Select verbosity level [c].
-^ 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.


To convert a large set of a77,h77 pairs to proper mgd77 files, try

gmt mgd77convert -C *.h77

To convert 01010047.mgd77 and 01010008.mgd77 to new netCDF .nc files, and capture all verification messages, try

gmt mgd77convert 01010047 01010008 -Fa -Tc -V -Lew+ > log.lis

To convert back to MGD77 ASCII and make sure it is identical to the original file, try (Bourne shell syntax)

orig=`gmt mgd77path 01010047 -Ic`
gmt mgd77convert 01010047 -Fc -Ta -V
diff $orig 01010047.mgd77

To convert to a plain ASCII table for manual editing, overwriting any existing table, try

gmt mgd77convert 01010047 -Fc -T+t -V

To recover the original NGDC MGD77 version of and ignore any E77 corrections, use

gmt mgd77convert 01020051 -FC -Ta -V

File Formats

mgd77convert handles four different formats. (1) NGDC has now started to use the new tab-delimited version of the MGD77 data format, called MGD77T. In addition to all the info in old MGD77 files it contains a few more quality flags for grav, mag, and bathymetry. (2) The MGD77+ netCDF format was developed to facilitate the use of MGD77 data by scientists. It contains all the information of the original MGD77 file and if you convert back and forth you end up with the original. However, file sizes are typically ~30% of the original ASCII format and is much faster to operate on. (3) The MGD77 ASCII tables are the traditional standard for distribution of underway geophysical data to and from the NGDC data center, now superseded by MGD77T. Normally, only the ship-operations people and the cruise PI might be involved in making an MGD77 ASCII file for transmission to NGDC; users are more interested in reading such files. (4) The plain ASCII tab-separated dump is available for users who need to manually edit the content of a MGD77 file. This is usually easier to do when the columns are tab-separated than when they are all crunched together in the MGD77 punch-card format.

Other Tools

The MGD77+ netCDF files are CF-1.0 and COARDS compliant and can be examined with general-purpose tools such as ncBrowse and ncView.


ncBrowse, see ncView, see The Marine Geophysical Data Exchange Format - “MGD77”, see