Dennis Milbert

Updated:  2015-jul-10

The program, solid, will ask for a date and location, and then writes solid earth tide (body tide) components into a text file.

Fine Print: If you are looking for wet tide (ocean tide) software, you do not want to be here. Information on wet tides for the USA can be found at NOAA's "Center for Operational Oceanographic Products and Services".



The solid.exe program runs in a DOS window. It prompts for date and location, and creates the file solid.txt. Example of how to run the program:


The program will first ask for a year, a month number, and a day. Dates must range from 1980-jan-06 through 2016-jun-29. The program will then ask for a geodetic (ellipsoidal) latitude and longitude. An Earth-centered, GRS80 ellipsoid is used. (Which can be considered equivalent to the WGS84 ellipsoid at the sub-millimeter level.)

One file is generated as output. It's name is solid.txt. If you have an existing solid.txt file in your subdirectory, then the old file will be overwritten. You can cancel the program by pressing "ctrl" and "c" at the same time. (However, program solid runs so fast that you will not have a chance to cancel it.)


Dates must range from 1980-jan-06 through 2016-jun-29. Input latitude is in decimal degrees, positive North. Input longitude is in decimal degrees, positive East, and may range from -360.0 to +360.0. Thus, 91.5W may be entered as either -91.5 or +268.5.

Output File:

The output file name is solid.txt. It is plain ASCII text. After the header, solid earth tide components are computed for 24 hours, at 1 minute intervals. Note: the time stamps refer to GPS time, not civil time. The solid earth tide components are North, East, Up in the local geodetic (ellipsoidal) horizon system.

Output File Format

The first line echos the requested date. The second line echos the position.

The format of the remaining records are:

01-08  Seconds of day, GPS time system, seconds
09-18  Solid Earth Tide, North component, meters  (to 0.000001 m)
19-28  Solid Earth Tide, East  component, meters  (to 0.000001 m)
29-38  Solid Earth Tide, Up    component, meters  (to 0.000001 m)

Source Code and Binary Executable

The Fortran source code is solid.for.

The compiled executable (zipped) is solid.exe.


Everybody is used to the ocean tide. The pull of the Moon and the Sun on the ocean causes cyclic variations in local sea level that can exceed 10 meters in some places.

What is less well known is that the Earth itself also responds to lunisolar gravitational attraction. The solid earth tide (body tide) often reaches +/- 20 cm, and can exceed 30 cm. While ocean tides can be easily measured relative to the solid Earth, solid earth tides are easily measured only with satellite systems or sensitive gravimeters. Also, the solid earth tide is a very smooth function around the Earth. For this reason, differential positioning systems, such as differential carrier phase GPS, can frequently ignore solid earth tide effects. Global geodetic networks and GPS carrier phase precise point positioning must include the effect of solid earth tide.

Program solid is based on an edited version of the dehanttideinelMJD.f source code provided by Professor V. Dehant. This code is an implementation of the solid earth tide computation found in section 7.1.2 of the IERS Conventions (2003) , IERS Technical Note No. 32.

A few words are in order about the editing. dehanttideinelMJD.f contains entries that are not found in Table 7.5a of the Conventions. These entries, which are smaller than 0.05 mm, are retained. However, whenever a dehanttideinelMJD.f entry differed from Table 7.5a of the Conventions, irrespective of magnitude, the Table 7.5a value was used.

Solid is invoked in the GPS time system. Note that this time system differs from both universal time and terrestrial time (ephemeris time). GPS time is converted into terrestrial time before calling the Step 2 computations.

Solid is driven by a pair of routines that compute low-precision geocentric coordinates for the Moon and the Sun. These routines were coded from the equations in "Satellite Orbits: Models, Methods, Applications" by Montenbruck & Gill (2000), section 3.3.2, pp.70-73. One may also refer to "Astronomy on the Personal Computer", 4th ed. by Montenbruck & Pfleger (2005), section 3.2, pp.38-39. This reference explains that the distinction between universal time (UTC) and terrestrial time (TT) is negligible for these low-precision functions. Even so, solid does include the conversions between GPS time, UTC, and TT. Since leap seconds are involved in the conversions, users will need to edit the source code to incorporate future leap seconds (i.e. after June 30, 2015).

In keeping with the design of dehanttideinelMJD.f, program solid removes all tidal deformation, both cyclic and permanent. More detail on this point can be found in the section below on permanent earth tide. Solid implements the conventions described in Section 7.1.2 of the IERS Conventions (2003). Solid does not implement ocean loading, atmospheric loading, or deformation due to polar motion, which are described in other sections of the Conventions.

Permanent Earth Tide

Fine Print: This section is not for the faint of heart. It can be skipped unless you really want to see the details involved in the creation and maintenance of global geodetic networks.

Lets begin with a fact discovered by Darwin in 1899.

Tides of the Earth do not average to zero.

This gives us a quick corollary.

Tidal deformation of the Earth does not average out to zero.

The easiest way to imagine this is to pretend that the Moon and Sun orbit around the Earth. Imagine them orbiting faster and faster, so that, on the average, they are "smeared" into bands around the Earth. Alternatively, you can imagine the Moon and Sun as chopped into tiny bits and spread around the Earth in a two-band system. These "average bands" will cause a permanent gravitational attraction leading to an increased equatorial bulge of the non-rigid Earth. In other words, most of the Earth’s equatorial bulge is due to the Earth’s rotation. But, there is a portion of the bulge that is created by the average tug of the Moon and Sun. The average attraction is called the permanent tide, and the associated effect on the Earth’s equatorial bulge is called the permanent tidal deformation (PTD).

Here is the second fact that makes this particularly complex.

The permanent tidal deformation is unobservable.

We know that the permanent deformation exists. And, satellite (and gravity, and VLBI) systems tell us about the Earth’s equatorial bulge and its variations. But, these systems tell us about the *total* bulge, and not how it is partitioned between the rotational part and the permanent tidal part. If there were a way to magically eliminate the Moon and Sun, then we could observe a "before-and-after" effect, and establish the magnitude of the permanent tidal deformation (PTD).

Now, its possible to make an educated guess on how big the PTD is. It happens that radial deformation is related to disturbing gravitational potential through a quantity called a Love number. (There are also Shida numbers that relate horizontal displacement to potential.) Through theory and indirect measurements, nominal values for Love and Shida numbers were established. Using these nominal values, one could compute PTD, since the masses and motions of the Moon and Sun were known. At its heart, though, these computations are based on a model.

PTD became an issue for geodesists in 1959 when Honkasalo presented a paper on correction of gravity data. The Honkasalo correction restored the permanent tide that was removed in the tide correction procedure. In this way, only the truly cyclic tidal elements were removed. This approach was called a "mean tide" system, and was used in computation of the global gravity network, IGSN71.

However, this retention of permanent tide violated theory that called for removal of external masses when computing the equipotential surface of the Earth (Heikkinen 1979). This caused the International Association of Geodesy (IAG) to resolve in 1979 to revert to the previous practice of tide correction, and remove the permanent tidal effects along with the periodic effects. This is designated as a "non-tidal" or "tide-free" system.

A plot of the radial difference between these two permanent tide systems can be found in Figure 1. The systems differ from +6 cm at the equator to -12 cm at the poles. The horizontal component (not shown) is 0 at the pole and equator, and reaches 2.5 cm at mid-latitude.

If one removes the Earth’s displacement due to the permanent tide, the PTD, then one gets errors in the model for the Earth’s length of day. It was proposed that one remove all tidal effects (tide-free) but then restore only the permanent tidal deformation and the associated changes in the Earth’s potential associated with that restored deformation. This re-reverts back to a mean tide system for station coordinates. And, it creates a new, "zero tide" system for the geopotential. This was adopted by the IAG in 1983.

This resolution has not met with widespread acceptance. The situation is described in the IERS Conventions (2003) , IERS Technical Note No. 32, Section 1.1, page 10:

This recommendation, however, has not been implemented in the algorithms used for tide modeling by the geodesy community in the analysis of space geodetic data in general. As a consequence, the station coordinates that go with such analyses (see Chapter 4) are "conventional tide free" values.

Thus, in conformance with the IERS Conventions, both dehanttideinelMJD.f and program solid compute all tidal deformation, both cyclic and permanent. As such, they realize a "conventional tide free" system.

Where does this leave us?

We have an effect that is sometimes negligible, is unobservable, but is non-zero and imbedded in various reference systems. Know that there are multiple ways of handling PTD. And, know that PTD is, indeed, handled differently in practice. The good news is that one may readily transform geometric and gravimetric quantities between the permanent tide systems.


This section is inspired in equal parts by:

Ekman, M., 1989: Impacts of Geodynamic Phenomena on Systems for Height and Gravity. Bulletin Geodesique, 63(3), pp. 281-296.

IERS Conventions (2003). Dennis D. McCarthy and Gérard Petit. (IERS Technical Note No. 32) Frankfurt am Main: Verlag des Bundesamts für Kartographie und Geodäsie, 2004. 127 pp., paperback, ISBN 3-89888-884-3, (

In addition --

Darwin, G.H., 1899: The Theory of the Figure of the Earth. Monthly Notices of the Royal Astronomical Society, 60.

Heikkinen, M., 1979: On the Honkasalo Term in Tidal Corrections to Gravimetric Observations. Bulletin Geodesique, 53(3), pp. 239-245.

Honkasalo, T., 1964: On the Tidal Gravity Correction. Bollettino di Geofisica Teorica ed Applicata, 21(4).

International Association of Geodesy (IAG), 1980: IAG Resolutions adopted at the XVII General Assembly of the IUGG in Canberra, December 1979. Bulletin Geodesique, 54(3), "The Geodesist's Handbook", p. 389.

International Association of Geodesy (IAG), 1984: IAG Resolutions adopted at the XVIII General Assembly of the IUGG in Hamburg, August 1983. Bulletin Geodesique, 58(3), "The Geodesist's Handbook", p. 321.

Lambeck, K., 1980: The Earth's Variable Rotation: Geophysical Causes and Consequences. Cambridge University Press, pp. 28-29.


In time it was found that Love numbers vary with tidal frequency, and that Love numbers for PTD (fluid limit Love numbers; e.g. Lambeck, 1980) were different from nominal (conventional) values. Even so, these newer Love numbers for PTD are based on indirect measurements and models. They would enable an alternative mean tide system and zero tide system to the "conventional mean tide" system and "conventional zero tide" system.


To get the full flavor of the PTD effect, understand that one gets two pieces when considering gravity and potential --

These, in combination, generate another way to handle the tides systems for gravitational factors (i.e. zero tide). The geometric PTD only sets up two permanent tide systems. The IERS Conventions (2003) , Section 1.1, is recommended reading.


This is "no frills" software. There are no warranties of any sort. No Windows GUI. Just the core function.

This program is written as a demonstration and a way of applying a reasonable solid earth tide correction. It's expected that this software could be imbedded into other applications.

To create a full blown, research-grade code, more effects could be added. Program solid does not contain ocean loading, atmospheric loading, or deformation due to polar motion. Also, one would want a more accurate set of routines to compute the geocentric positions of the Moon and the Sun.


Thanks to Professor V. Dehant for providing the dehanttideinelMJD.f source code. That code is authored by V. Dehant, S. Mathews, J. Gipson, and C. Bruyninx. Helpful discussion and assistance was provided by J. Ray and D. Smith. Professor V. Dehant alerted me to a sign correction and a table correction. Any errors are my own.

To Contact Me

My e-mail user name is the first initial of my first name followed by all the letters of my last name (see above). My ISP is "comcast", and it is a "dot-net", not a "dot-com". Sorry for not spelling out my e-mail address, but I try to keep the spam-bots from fingering me. But, just so the spam-bots don't feel left out, they can always go to

Back To Home