Geodetic Line at Constant Altitude above the Ellipsoid
Abstract
The two-dimensional surface of a bi-axial ellipsoid is characterized by the lengths of its major and minor axes. Longitude and latitude span an angular coordinate system across. We consider the egg-shaped surface of constant altitude above (or below) the ellipsoid surface, and compute the geodetic lines—lines of minimum Euclidean length—within this surface which connect two points of fixed coordinates. This addresses the common “inverse” problem of geodesics generalized to non-zero elevations. The system of differential equations which couples the two angular coordinates along the trajectory is reduced to a single integral, which is handled by Taylor expansion up to fourth power in the eccentricity.
pacs:
91.10.By, 91.10.Ws, 02.40.HwI Contents
The common three parameters employed to relate Cartesian coordinates to an ellipsoidal surface are the angles of latitude and longitude in a grid on the surface, plus an altitude which is a shortest (perpendicular) distance to the surface. The well-known functional relations (coordinate transformations) are summarized in Section II.
The inverse problem of geodesy is to find the line embedded in the ellipsoid surface which connects two fixed points subject to minimization of its length. We pose the equivalent problem for lines at constant altitude, as if one would ask for the shortest track of the center of a sphere of given radius which rolls on the ellipsoid surface and meets two points of the same, known altitude. In Section III, we formulate this in terms of the generic differential equations of geodesy parametrized by the Christoffel symbols.
In the main Section IV, the coupled system of differential equations of latitude and longitude as a function of path length is reduced to one degree of freedom, here chosen to be the direction along the path at one of the fixed terminal points, measured in the topocentric horizontal system, and dubbed the launching angle. Closed-form expressions of this parameter in terms of the coordinates of the terminal points have not been found; instead, the results are presented as series expansions up to fourth power in the eccentricity.
The standard treatment of this analysis is the projection on an auxiliary sphere; this technique is (almost) completely ignored but for the pragmatic aspect that the case of zero eccentricity is a suitable zeroth-order reference of series expansions around small eccentricities.
II Spheroidal Coordinates
II.1 Surface
The cross section of an ellipsis of equatorial radius with eccentricity in a Cartesian () system is:
(1) |
The ellipsis defines a geocentric latitude and a geodetic latitude , the latter measured by intersection of the normal to the tangential plane with the equatorial plane (Figure 1).

On the surface of the ellipsoid [23, §IX][5][2, §140]:
(2) |
Supposed denotes the distance from the center of coordinates to the point on the geoid surface, the transformation from to is
(3) |
defines the difference between the geodetic (astronomical) and the geocentric latitudes,
(4) |
where the expansion of the denominator has been given in terms of the geometric series of the parameter
(5) |
The Taylor series in powers of and in powers of are
(6) | |||||
(7) |
A flattening factor is also commonly defined [10][19, (3.14)],
(8) |
The reference values of the Earth ellipsoid adopted in the WGS84 [16] are
(9) |
II.2 General Altitude
If one moves along the direction of a distance away from the surface of the geoid, the new coordinates relative to (3) are [6, 28, 9, 18, 30, 8, 12]
(10) |
which can be written in terms of a distance ,
(11) |
as
(12) |

Rotation of (12) around the polar axis with geographic longitude defines the full 3D transformation between and ,
(13) |
The only theme of this paper is to generalize the geodetic lines of the literature [5, 24, 21, 25, 17, 3, 11, 14] to the case of finite altitude . The physics of gravimetric or potential theory is not involved, only the mathematics of the geometry. It should be noted that points with constant, non-zero do not define a surface of an ellipsoid with effective semi-axes —otherwise the geodetic line could be deduced by mapping the problem onto an equivalent ellipsoidal surface [5].
III Inverse Problem of Geodesy
III.1 Topocentric Coordinate System
A line of shortest distance at constant height const between two points 1 and 2 is defined by minimizing the Euclidean distance, the line integral
(14) |
for some parametrization . The integrand is equivalent to a Lagrange function or .
The gradient of (13) with respect to and defines the vectors that span the topocentric tangent plane
(15) |
where a meridional radius of curvature [26][19, (3.87)]
(16) |
is defined to simplify the notation. Building squares and dot products computes the three Gauss Fundamental parameters of the surface [20]
(17) | |||||
(18) | |||||
(19) |
Specializing to we get the You formulae [29]. and provide the principal curvatures along the meridian and azimuth [4], and the coefficients of the metric tensor in the quadratic form of ,
(20) |
III.2 Christoffel Symbols
Christoffel symbols are the connection coefficients between differentials of the topocentric axis and of the positions , in a generic definition
(21) |
This format is matched by first computing the derivative of with respect to and (at ):
(22) |
and of with respect to and :
(23) |
The next step splits these two equations to the expanded version of (21),
(24) | |||||
(25) |
The eight are extracted by evaluating dot products of the four vector coefficients in (22)–(23) by and ,
(26) |
(27) |
(28) |
(29) |
IV Reduction of the Differential Equations
IV.1 Separation of Angular Variables
Decoupling of the two differential equations (33)–(34) starts with the separation of variables in (33),
(35) |
Change of the integration variable on the right hand side from to allows to use the underivative of (28)
(36) |
to generate a first integral
(37) |
Exponentiation yields
(38) |
where
(39) |
is a constant for each geodesic; it plays the role of the Clairaut constant [22, 27], but has length units in our case. It has been defined with the azimuth and at the start of the line, but could as well be associated with any other point or the end point . is positive for trajectories starting into eastwards direction, negative for the westwards heading, zero for routes to the poles. Moving the square of (38) into (34) yields
(40) |
To solve this differential equation, we substitute the variable by its projection onto the polar axis,
(41) |
which implies transformations in the derivatives:
(42) |
(43) |
(44) |
We multiply (40) by , then replace and as noted above,
(45) |
This is a differential equation with no explicit appearance of the independent variable ,
and the standard way of progressing is the substitution
(46) |
(47) |
This is transformed to a linear differential equation by the further substitution , ,
(48) |
The standard approach is to solve the homogeneous differential equation first,
(49) |
After division through , the left hand side is easily integrated, and the right hand side (incompletely) decomposed into partial fractions,
(50) | |||||
Solution of the inhomogeneous differential equation (48) proceeds with the variation of the constant, the ansatz
(51) |
Back insertion into (48) leads to a first order differential equation for ,
which is decomposed into partial fractions
The ensuing integral over is solved by aid of the substitution ,
Back into (51)—using to indicate placement of any member of an anonymous bag of constants of integration,
(52) | |||||
(53) | |||||
(54) |
The subscript denotes values at the starting point of the curve,
(55) | |||||
(56) |
Solving for yields
(57) | |||||
Compared with the differential version of (20),
(58) |
we must have . Note that (54) is essentially a write-up for and could be derived quickly by inserting (38) directly into (58).
The square root of (54) is
(59) |
The sign in front of the square root is to be chosen positive for pieces of the trajectory with (northern direction), negative where (southern direction). The value in the square root may run through zero within one curve, at one point , such that the square root switches sign there (Figure 3). This happens whenever
(60) |
yields a vanishing discriminant of the square root for some , that is, whenever the difference is sufficiently large to create a point of minimum polar distance along the trajectory that is not one of the terminal points.


IV.2 Launching Direction
So far we have written the bundle of all geodesics through in the format (59), which specifies the change of latitude as a function of distance traveled. The direction at point 1 in the topocentric system of coordinates is represented by . To address the inverse problem of geodesy, that is to pick the particular geodesics which also runs through the terminal point in fulfillment of the Dirichlet boundary conditions, the associated change in longitude, some form of (38),
(61) |
must obviously get involved. The strategy is to write down or with as a parameter, then to adjust to ensure with what would be called a shooting method that starting at point 1 at that angle eventually passes through point 2. Coupling of to is done by division of (59) and (61),
(62) |
Separation of both variables yields
(63) |
An approach of evaluating the integral by power series expansion in is proposed in [15].
For short paths, small , the integral is simply . If one of the cases occurs, where the difference in is too large for a solution, the additional path through the singularity is to be used [with some local extremum in the graph ], and the integral is to be interpreted as . Taking the sign change and the symmetry of the integrand into account, this is , twice the underivative at minus the sum of the underivative at and . In the right plot of Figure 3, the difference is in including or not including the loudspeaker shaped area between and .
is the solution of (60), the positive value of the solution taken if at , the negative value if at . The squared zero of , , is a root of the fourth-order polynomial which emerges by rewriting (60),
(64) |
Alternatively, admits a Taylor expansion by expanding the zero of (60) in orders of :
(65) |
where some maximum distance
(66) |
to the polar axis has been defined to condense the notation.
The integrand in (63) has a Taylor expansion in ,
(67) |
We integrate the left hand side of (67) separately for each power of up to ,
(68) |
where
(69) |
is some convenient definition of the trajectory’s distance to its solstice . The first term is not the principal value of the arc tangent but its steadily defined extension through the entire interval of -values, . It is an odd function of , and phase jumps are corrected as follows: the inclination at has (by inspection of the derivative above at ) the sign of . So whenever the triple product is negative, one must shift the branch of the arctan by adding multiples of to the principal value.
Whether this is to be taken between the limits and or as the sum of two components (see above) can be tested by integrating up to , , where the value of the underivative at is given by , effectively after selecting the branch of the inverse trigonometric function as described above.
Equation (68) is solved numerically, where is the unknown, where and are known from the coordinates of the two points that define the boundary value problem, and where and are constant parameters. The complexity of the equation suggests use of a Newton algorithm to search for the zero, starting from (118), , as the initial estimate.
An alternative is to insert the power series
(70) |
right into (63), integrate the orders of term-by-term, and to obtain the coefficients , etc. by comparison with the equivalent powers of the right hand side. is given by (118); the coefficients of the higher powers are recursively calculated from linear equations. , for example, is determined via
(71) |
The corresponding equation for is already too lengthy to be reproduced here, so no real advantage remains in comparison with solving the non-linear equation (67).
Once the parameter is known for a particular set of terminal coordinates, is given by replacing and in (68) by any other generic pair of values. Two other variables of interest along the curve, the direction and integrated distance from the starting point, are then accessible with methods summarized in the next, final two sub-chapters.
IV.3 Nautical course
The nautical course at any point of the trajectory is the angle in the topocentric coordinate system spanned by (direction North) and (direction East), measured North over East,
(72) |
is the differential of (13) with respect to , where ,
(73) |
The sign indicates that the left hand side of this equation is a vector normalized to unity, but not the right hand side.
(74) |
Insertion of (17), (19) and (42) yield
(75) |
Mixing (62) into this yields the course, supposed and are known,
(76) |
IV.4 Distance To Terminal Points
An implicit write-up for the distance from the origin measured along the curve is given by separating variables in (59):
(77) |
Power series expansion of the integrand in powers of , then integration term-by-term, generate a Taylor series of the form
In the notation (69), the components of the underivative read:
(78) |
(79) |
(80) |
V Summary
Computation of the geodetic line within the iso-surface of constant altitude above the ellipsoid is of the same complexity as on its surface at zero altitude. Although the surface is no longer an ellipsoid, mathematics reaches an equivalent level of simplification at which one integral is commonly expanded in powers of the eccentricity or flattening factor. We have done this first for the parameter which provides a solution to the inverse problem, then for two of the basic functions, distance from the starting point and compass course.
Appendix A Reference: Spherical case
The limit of vanishing eccentricity, , simplifies the curved trajectories to arcs of great circles, and presents an easily accessible first estimate of the series expansions in orders of . The Cartesian coordinates of the two points to be connected then are
(81) |
The angular separation is derived from the dot product ,
(82) |
Each point on the great circle in between lies in the plane defined by the sphere center and the terminal points, and can therefore be written as a linear combination
(83) |
The square must remain normalized to the squared radius
(84) |
which couples the two expansion coefficients via
(85) |
One reduction to a single parameter to enforce this condition is
(86) |
In summary, the point (83) on the great circle of radius between and has the Cartesian coordinates
(93) | |||||
(97) |
The -component of this,
(98) |
allows to convert into . No ambiguity with respect to the branch of the arises since . The ratio of the and -components demonstrates the dependence of on ,
(99) |
where the branch is defined by considering separately the numerator and denominator under the restrictions that no signs are canceled. The azimuth angle between the points at and at follows from ,
(109) | |||||
(110) |
The path length along the great circle perimeter is simply the radial distance to the center of coordinates times the azimuth angle measured in radians,
(111) |
To calculate the direction in the - -plane at the starting point , we employ as the parameter that mediates between and :
(112) |
To calculate , use the derivative of (99) with respect to ,
(113) | |||||
In particular at the starting point, where , and ,
By multiplication with
(114) |
To calculate , we convert the cosine in (110) to the sine,
(115) |
The derivative of this with respect to is
in particular at the starting point, ,
(116) |
Insert this derivative and (114) back into (112)
(117) |
to obtain the master parameter for the spherical case with (39),
(118) |
Appendix B Notations
constants of integration | |
Gauss parameter eq. (17) and its value at curve origin | |
Incomplete Elliptic Integral of the Second Kind in the Abramowitz-Stegun notation [1, §17] | |
eccentricity of the ellipsoid, eq. (1) | |
horizontal topocentric coordinate vectors at () | |
flattening, eq. (8) | |
Gauss parameter, eq. (18) | |
Gauss parameter, eq. (19) and its value at curve origin | |
Christoffel symbols in coordinates | |
vertical distance to surface of ellipsoid | |
maximum distance to polar axis (in the equatorial plane), eq. (66) | |
nautical angle, North over East in the topocentric tangential plane | |
longitude | |
a radius of curvature on the ellipsoid surface, eq. (16) | |
a radius of curvature on the ellipsoid surface, eq. (11) | |
distance ellipsoid center to foot point on the surface | |
equatorial, polar radius of ellipsoid, eq. (1) | |
distance along geodetic line measured from curve origin | |
vector from ellipsoid center to point on geodetic line | |
length of curved geodetic trajectory; equals at | |
sign function, or | |
azimuth along great circle, eq. (111) | |
normalized distance from closest polar approach, eq (69) | |
and its value at start of curve, eq. (41) | |
geodetic minus geocentric latitude | |
geodetic latitude | |
geocentric latitude | |
Cartesian coordinates from ellipsoid center, eq. (13) | |
parametrization of great circle (spherical case), eq. (93) | |
cone angle of circular section (spherical case), eq. (82) |
Appendix C FEM implementation
C.1 Compilation
The simplest numerical solution of the inverse problem without restriction on the eccentricity could be a finite-element (FEM) integration of (63) and iterative adjustment of the single free parameter . The Java program in the anc directory implements this approach. It is either compiled with
cd anc ; make
on Linux systems or by manually executing the compiler steps in anc/Makefile . It is then called with
-
•
java -jar Geod.jar
which will query the parameters interactively
-
•
or providing all parameters with
java -jar Geod.jar [-e ] [-R ] [-h h ] [-s ] [-u ]
on the command line. The last four parameters are the geodetic angles of the start and final point in degrees. is the positive integer number of finite elements in the interval -interval in the approximation, and in the range 1… (and typically a divisor of ) is the small positive integer subsampling number of the results along the trajectory which are actually printed to the standard output. The square brackets above indicate that the switches are optional because they have default values; the square brackets are not part of the command line syntax.
-
•
or calling the program as
java -cp Geod.jar org.nevec.rjm.GeodGUI
which allows to type the parameters in fields of a graphical user interface (GUI); the purpose of that wrapper is to embed the program in web applications that support the Java Network Launch Protocol (JNLP).
The output lines contain the information on the trajectory: the first three values are the , and Cartesian coordinates of the subsampled points, the next three values are , and at these points in degrees, and the last value is the length travelled from the start point.
C.2 Overview of Functions
Member functions in overview: the constructors Geod define a surface from the parameters , and in which the geodetic line is embedded. getCartesian computes the vector (13). curvN computes (11). dNdtau computes
(119) |
flatt computes (8). curvM computes (16). dMdtau computes
(120) |
d2Mdtau2 computes
(121) |
GaussE computes (17). dEdtau computes
(122) |
d2Edtau2 computes the next higher derivative, . GaussG computes (19). dtaudlambda computes via (62), referencing one factor to (59). dsdlambda is , the inverse of (61). discrT computes , which generalizes (69) to nonzero . Its derivatives
(123) | |||||
(124) |
are implemented in dTdtau and d2Tdtau2. dtauds calculates (59). d2taudlambda2 calculates the derivative of (62),
(125) |
d3taudlambda3 is the next higher order application of Bruno di Faà’s formula to relegate derivatives to derivatives , [7, 0.430],
(126) |
d2sdlambda2 calculates
(127) |
d3sdlambda3 calculates
(128) |
c3Sphere returns the estimate (118). dtaudsSignum returns the sign of at , obtained by considering the sign of the derivative of (98) with respect to . adjLambdaEnd modifies modulo to select the smallest value of . nautAngle computes from (76).
tauShoot walks along a geodetic line on a discrete mesh of width by extrapolating
(129) |
initialized at , given . The equivalent formula is used to build up . c3shoot calls tauShoot four times to adjust such that the error by which was missed—returned by tauShoot—is minimized. The first call assumes (118), the second takes an arbitrary small offset, and the third and fourth estimates are from linear and quadratic interpolations in the earlier calls to zoom into a root of this error as a function of . The last of these runs tabulates the Cartesian coordinates (13), , , and on a subgrid of the -mesh. main collects some adjustable parameters plus the pairs and , and calls c3shoot to solve the inverse problem of geodetics.
References
- Abramowitz and Stegun [1972] Abramowitz, M., and I. A. Stegun (eds.), 1972, Handbook of Mathematical Functions (Dover Publications, New York), 9th edition, ISBN 0-486-61272-4.
- Bouasse [1919] Bouasse, H., 1919, Geographie Mathématique (Librairie Delagrave, Paris).
- Bowring [1983] Bowring, B. R., 1983, Bull. Geod. 57(1–4), 109.
- Dorrer [1999] Dorrer, E., 1999, in Quo vadis geodesia…?, edited by F. Krumm and V. S. Schwarze (Universität Stuttgart), Technical Reports of Geodesy and GeoInformatics, ISSN 0933-2839.
- Dufour [1958] Dufour, H. M., 1958, Bull. Geod. 32(2), 26.
- Fukushima [2006] Fukushima, T., 2006, J. Geod. 79(12), 689.
- Gradstein and Ryshik [1981] Gradstein, I., and I. Ryshik, 1981, Summen-, Produkt- und Integraltafeln (Harri Deutsch, Thun), 1st edition, ISBN 3-87144-350-6.
- Hradilek [1976] Hradilek, L., 1976, Bull. Geod. 50(4), 301.
- Jones [2004] Jones, G. C., 2004, J. Geod. 76(8), 437.
- Kaplan [2006] Kaplan, G. H., 2006, arXiv:astro-ph/0602086 eprint astro-ph/0602086.
- Karney [2013] Karney, C. F. F., 2013, J. Geod. 87, 43.
- Keeler and Nievergelt [1998] Keeler, S. P., and Y. Nievergelt, 1998, SIAM Review 40(2), 300.
- Long [1975] Long, S. A. T., 1975, Cel. Mech. 12(2), 225.
- Mai [2010] Mai, E. ., 2010, J. Appl. Geodesy 4, 145.
- Mathar [2010] Mathar, R. J., 2010, arXiv:1005.3790 [math.CA] .
- National Imagery and Mapping Agency [2000] National Imagery and Mapping Agency, 2000, Department Of Defense World Geodetic System 1984, Technical Report TR8350.2, NIMA, URL http://earth-info.nga.mil/GandG/publications/tr8350.2/tr8350_2.html.
- Ölander [1952] Ölander, V. R., 1952, Bull. Geod. 26(3), 337.
- Pollard [2002] Pollard, J., 2002, J. Geod. 76(1), 36.
- Rapp [1991] Rapp, R. H., 1991, Geometric Geodesy Part 1 (Ohio State University, Columbus, Ohio).
- Reichardt [1957] Reichardt, H., 1957, Vorlesungen über Vektor- und Tensorrechnung, volume 34 of Hochschulbücher für Mathematik (Deutscher Verlag der Wissenschaften, Berlin).
- Saito [1970] Saito, T., 1970, Bull. Geod. 44(4), 341.
- Sjöberg [2012] Sjöberg, L. E., 2012, J. Geod. Sci. 2(3), 162.
- Smart [1949] Smart, W. M., 1949, Text-book on Spherical Astronomy (Cambridge University Press, Cambridge), 4th edition.
- Sodano [1958] Sodano, E. M., 1958, Bull. Geod. 32(2), 13.
- Thomas [1965] Thomas, P. D., 1965, J. Geophys. Res. 70(14), 3331.
- Tienstra [1951] Tienstra, J. M., 1951, Bull. Geod. 25(1), 7.
- Tseng [2014] Tseng, W.-K., 2014, J. Navig. 67(5), 825.
- Vermeille [2004] Vermeille, H., 2004, J. Geod. 78(1–2), 94.
- You [1999] You, R.-J., 1999, in Quo vadis geodesia…?, edited by F. Krumm and V. S. Schwarze (Universität Stuttgart), Technical Reports of Geodesy and GeoInformatics, ISSN 0933-2839.
- Zhang et al. [2005] Zhang, C.-D., H. T. Hsu, X. P. Wu, S. S. Li, Q. B. Wang, H. Z. Chai, and L. Du, 2005, J. Geod. 79(8), 413.