[Proj] A couple of comments on computing geoid heights

Charles Karney charles.karney at sri.com
Fri Apr 27 07:03:07 PDT 2012


(1) GeographicLib now includes an example code, GeoidToGTX, that takes
one of the earth gravity models (egm84, egm96, or egm2008), computes the
geoid heights on a regular grid, and writes the results out as a gtx
file.  See

   http://geographiclib.sourceforge.net/html/gravity.html#gravityparallel

This allows

   http://download.osgeo.org/proj/vdatum/egm96_15/egm96_15.gtx

which has quantization errors of +/- 5mm and an incorrect origin, to be
corrected with

   GeoidToGTX egm96 4 egm96_15.gtx

Similarly,

   http://download.osgeo.org/proj/vdatum/egm08_25/egm08_25.gtx

which has an incorrect origin, can be corrected with

   GeoidToGTX egm2008 24 egm08_25.gtx

(Warning: this takes 8mins on my desktop, a 8 processor 2.66GHz system.
Computing the egm008 1' grid takes about 40mins.)

(2) I've quantified the penalty in accuracy the GeographicLib::Geoid
incurs by storing the geoid heights in a 2-byte format (versus the
4-byte format for gtx files).  See

   http://geographiclib.sourceforge.net/html/geoid.html#geoidinterp

The bottom line is that the penalty is barely noticeable if you use
bilinear interpolation (as proj does).  The advantage of a 2-byte format
is considerable for the 1' egm2008 model (0.5 GB for the world-wide grid
compared to 1 GB).

   --Charles



More information about the Proj mailing list