New datums are stored in a text file named datums.txt that can be stored either locally or in the $PROHOME/etc directory, or both.
The following is the top portion of the file.
!
! NOTE: The range of D900 to D998 is reserved for
! local customer development.
!
! The range of D-90 to D-98 is reserved for
! local customer development.
!
! New datum definitions can be submitted to
! [email protected]
!
"DoD World Geodetic System 1984, DMA TR 8350.2"
"4 JUL 1997, Third Printing, Includes 3 JAN 2000 Updates"
"D-01","NAD27 (USA, NADCON)","E000","Conterminous U.S.","D122","conus.los","conus.las"
"D-02","NAD83 (Deprecated - use D122)","E008",0,0,0,"Conterminous U.S.",2,2,2,354
"D-03","NAD27 (Canada, NTv1)","E000","Canada","D122","grid.dac"
To define the new datum, add the new datum definition as one line of text to the datum.txt file.
For example:
"D801","ATS77","E910",0,0,0,"New Brunswick",0,0,0,0
The fields of the new three-term Molodensky transformation datum record are as follows:
| Field No. | Example Value | Description |
|---|---|---|
| 1 | D801 | A unique code for the datum that does not already exist in this file. The first character is D (or d) for datum followed by an integer (maximum of 3 characters). |
| 2 | "ATS77" | A descriptor string for the Earth datum. This descriptor is not currently used in the software. An empty character string can be used. |
| 3 | E910 | Field 1 of the ellipsoid record uses the datum from ellips.txt. If this is a new ellipsoid that is not supported, it can be defined. See Defining new ellipsoids. |
| 4 | 0 | An x offset of the ellipsoid to the Earth center, in meters. |
| 5 | 0 | A y offset of the ellipsoid to the Earth center, in meters. |
| 6 | 0 | A z offset of the ellipsoid to the Earth center, in meters. |
| 7 | New Brunswick | A descriptor string for the Earth datum. This descriptor defines where this datum is typically used. |
| 8 | 0 | The minimum error for the x-dimension, in meters.
Note: This is not used and can be set as 0.
|
| 9 | 0 | The minimum error for the y-dimension, in meters.
Note: This is not used and can be set as 0.
|
| 10 | 0 | The minimum error for the z-dimension, in meters.
Note: This is not used and can be set as 0.
|
| 11 | 0 | The number of Doppler stations used to model the offsets and errors.
Note: This is not used and can be set as 0.
|
Fields 1 to 11 are required to add a new three-term Molodensky transformation. For a new seven-term Bursa-Wolf transform, four additional terms (12 to 15) must be added to the end of the new datum record.
For example:
"D802","ATS77","E910",0,0,0,"New Brunswick",0,0,0,0,0.001,0.002,0.004,1.00001
The additional fields of the new seven-term Bursa-Wolf datum record are as follows:
| Field No. | Example Value | Description |
|---|---|---|
| 12 | 0.001 | The x-rotation, in decimal seconds. |
| 13 | 0.002 | The y-rotation, in decimal seconds. |
| 14 | 0.004 | The z-rotation, in decimal seconds. |
| 15 | 1.00001 |
The new scale. This field is the new scale and is used "as is" in the seven-term transformation. It is commonly accepted elsewhere that this term is the "change in scale in parts per million" that is added to 1.0.
This field is processed as follows:
However, if the ScaleValue is in the range of 0.999 to 1.001 and it is supposed to be change of scale in parts per million, this ScaleValue should be handled with the old method. Calculate the math manually and enter that value for the ScaleValue. Problems with alternating the old and new methods for processing the ScaleValue are possible, but unlikely, because:
|
To add a definition once so that it is globally available to all users (and if you have write-permission to the file), the new definition can be added to the file $PROHOME/etc/datum.txt.
At the operating-system level (for example, on a UNIX platform), you can copy the files as follows:
% cp $PROHOME/etc/datum.txt % chmod 644 datum.txt
You may also wish to define a datum that uses a grid shift file or a set of gridshift files to perform coordinate transformation, instead of using numerical parameters.
For example:
"D788","NAD83 HARN (USA, NADCON)","E008","Utah","D122","uthpgn.los","uthpgn.las"
The first three fields for this type of datum record are the same as the definition of a standard; the remaining fields should be defined as follows:
| Field No. | Example Value | Description |
|---|---|---|
| 4 | Utah | A descriptor string for the Earth datum. This descriptor defines where this datum is typically used. |
| 5 | D122 | The target datum used by the specified grid shift file(s) to shift. In this example, the grid shift files are used to transform to D122. |
| 6 | uthpgn.los | The grid shift file used to perform longitude shifts. If the grid shift file format requires only one grid shift file that is used to perform both longitude and latitude shifts (for example, NTv2), use that file for this field. |
| 7 | uthpgn.las | The grid shift file used to perform latitude shifts. If the grid shift file format requires only one grid shift file that is used to perform both longitude and latitude shifts (for example, NTv2), do not include this field in the datum record. |
© PCI Geomatics Enterprises, Inc.®, 2026. All rights reserved.