The ways in which two ellipsoidal datums can differ are (i) position of the origin of coordinates; (ii) orientation of the coordinate axes (and hence of the reference ellipsoid) and (iii) size and shape of the reference ellipsoid. If we work in 3D Cartesian coordinates, item (iii) is not relevant (and any position given in latitude, longitude and ellipsoid height coordinates can be converted to 3D Cartesian coordinates using the formulae in 'Converting between 3D cartesian and ellipsoidal latitude, longitude and heigh coordinates'). Working with 3D Cartesian coordinates, therefore, we use six parameters to describe the difference between two datums, which are three parameters to describe a 3D translation between the coordinate origins, and three parameters to describe a 3D rotation between the orientations of the coordinate axes.
It has become traditional to add a seventh parameter known as the ‘scale factor’, which allows the scale of the axes to vary between the two coordinate systems. This can be confusing because the scale factor is nothing to do with the conventional definition of the datum expressed by the six parameters mentioned above. It was introduced to cope with transformations between TRFs measured by theodolite triangulation, which was the standard method before the latter half of the 20th century. These TRFs have the characteristic that network shape (which depends on angle measurement) is well measured, but network scale (which depends on distance measurements) is poorly measured, because distances were very hard to measure accurately before electronic techniques arrived in the 1950s. Strictly speaking, a Cartesian datum transformation has only six parameters, not seven. However, the scale factor is included in the usual formulation of the datum transformation, which is variously known as the ‘Helmert transformation’, ‘3D conformal transformation’, ‘3D similarity transformation’, or ‘seven parameter transformation’. All these terms refer to the same thing.
When this transformation is applied to a TRF, it has the effect of rotating and translating the network of points relative to the Cartesian axes and applying an overall scale factor (that is, a change of size), while leaving the shape of the figure unchanged.
The Helmert transformation can only provide a perfect transformation between perfect mathematical reference systems. In practice, we determine and use transformations between sets of real ground points, that is, between TRFs that are subject to the errors of the real world. The more distortion, subsidence, and so on present in the TRF, the worse the Helmert transformation will perform. Both the parameters of the transformation and the output coordinates will contain errors. Bear this in mind especially when working with pre‑GNSS coordinate sets and orthometric heights over large areas.
The usual mathematical form of the transformation is a linear formula which assumes that the rotation parameters are ‘small’. Rotation parameters between geodetic Cartesian systems are usually less than five seconds of arc, because the axes are conventionally aligned to the Greenwich Meridian and the Pole. Do not use this formula for larger angles – instead apply the full rotation matrices, which can be found in most photogrammetry and geodesy textbooks.
In matrix notation, the coordinates of each point in reference system B are computed from those in reference system A by:
where tX, tY and tZ, are the translations along the X, Y and Z axes respectively in metres rX, rY and rZ are the rotations about the X, Y and Z axes respectively in radians, and s is the scale factor (unitless) minus one. This definition of s is convenient, since its deviation from unity is usually very small. s is often stated in parts per million (ppm) – remember to divide this by a million before using equation 3. Rotations are often given in seconds of arc but must be converted to radians for use in equation (3).
Beware that two opposite conventions are in use regarding the rotation parameters of the Helmert transformation. The form of transformation as given in equation (3) is referred to as the “Position Vector transformation”. It is the form in most common use in Europe (particularly in the oil and gas industry), is used by the International Association of Geodesy (IAG) and recommended by ISO 19111 and is EPSG dataset coordinate operation method code 1033. The form of transformation that uses opposite rotation signs to those in equation (3) is referred to as the “Coordinate Frame Rotation transformation” and is common in the USA oil and gas industry and is EPSG dataset coordinate operation method code 1032. If there is any ambiguity about which convention applies it is best, for safety, to always include a test point with coordinates in systems A and B when stating a transformation.
Sometimes, three-parameter (translation only) or six-parameter (translation and rotation only) transformations are encountered, which omit some of the seven parameters used here. The same formula can be used to apply these transformations, setting parameters not used to zero.
Any ‘small’ Helmert transformation can be reversed by simply changing the signs of all the parameters and applying equation (3). This is valid only when the changes in coordinates due to the transformation are very small compared to the size of the network.
The Helmert transformation is designed to transform between two datums, and it cannot really cope with distortions in TRFs. As we’ve seen, in practice, we want an accurate transformation between the coordinates of points on the ground in the two coordinate systems for the area we’re interested in. If there are large regional distortions present in one or both of the TRFs, a single set of Helmert parameters for the whole coordinate system will not accomplish this. For the transformation from ETRS89 to OSGB36 in Britain, using a single Helmert transformation will give errors of up to 3 m (95%) in plan and 3.5 m (95%) plan and height, depending where in the country the points of interest are. One solution to this is to compute a special set of Helmert parameters for a particular region – this is known as a ‘local transformation’. Alternatively, more complex transformation types that model TRF distortion can be used. An example of this is the National Grid Transformation OSTN15 discussed in 'National Grid Transformations'.
To summarise: For a simple datum change of latitude and longitude coordinates from datum A to datum B, first convert to Cartesian coordinates (formulae in 'Converting between 3D Cartesian and ellipsoidal latitude, longitude and height coordinates'), taking all ellipsoid heights as zero and using the ellipsoid parameters of datum A; then apply a Helmert transformation from datum A to datum B using equation (3); finally convert back to latitude and longitude using the ellipsoid parameters of datum B (formulae in 'Converting between grid eastings and northings and ellipsoidal latitude and longitude') discarding the datum B ellipsoid height. There is a worked example Helmert transformation in the 'Helmert transformation worked example' page.
Molodensky datum transformations: there are formulae to change between geodetic datums when the positions of points are expressed as latitude and longitude coordinates, without first converting the positions to Cartesian coordinates. These are known as the Full Molodensky formulae or the Abridged Molodensky formulae, the latter having a lower degree of accuracy. However, the Molodensky formulae cannot cope with a difference in orientation of the ellipsoid axes – it only deals with a translation of the origin and changes in ellipsoid size and shape. For this reason, the Molodensky formulae are not given here.