This file is indexed.

/usr/share/doc/geographiclib/html/jacobi.html is in geographiclib-doc 1.49-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>GeographicLib: Jacobi&#39;s conformal projection</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="/usr/share/javascript/mathjax/MathJax.js/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">GeographicLib
   &#160;<span id="projectnumber">1.49</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">Jacobi's conformal projection </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><center> Back to <a class="el" href="triaxial.html">Geodesics on a triaxial ellipsoid</a>. Forward to <a class="el" href="rhumb.html">Rhumb lines</a>. Up to <a class="el" href="index.html#contents">Contents</a>. </center><p>In addition to solving the geodesic problem for the triaxial ellipsoid, Jacobi (1839) briefly mentions the problem of the conformal projection of ellipsoid. He covers this in greater detail in <a href="https://books.google.com/books?id=ryEOAAAAQAAJ&amp;pg=PA212"><em>Vorlesungen &uuml;ber Dynamik</em>, &sect;28</a>, which is now available in an <a href="https://www.worldcat.org/oclc/440645889">English translation: Lectures on Dynamics</a> (<a href="https://geographiclib.sourceforge.io/jacobi-errata.html">errata</a>).</p>
<h1><a class="anchor" id="jacobi-conformal"></a>
Conformal projection</h1>
<p>It is convenient to rotate Jacobi's ellipsoidal coordinate system so that \((X,Y,Z)\) are respectively the middle, large, and small axes of the ellipsoid. The longitude \(\omega\) is shifted so that \((\beta=0,\omega=0)\) is the point \((b,0,0)\). The coordinates are thus defined by </p><p class="formulaDsp">
\[ \begin{align} X &amp;= b \cos\beta \cos\omega, \\ Y &amp;= a \sin\omega \frac{\sqrt{a^2 - b^2\sin^2\beta - c^2\cos^2\beta}} {\sqrt{a^2 - c^2}}, \\ Z &amp;= c \sin\beta \frac{\sqrt{a^2\cos^2\omega + b^2\sin^2\omega - c^2}} {\sqrt{a^2 - c^2}}. \end{align} \]
</p>
<p> After this change, the large principal ellipse is the equator, \(\beta=0\), while the small principal ellipse is the prime meridian, \(\omega=0\). The four umbilic points, \(\left|\omega\right| = \left|\beta\right| = \frac12\pi\), lie on middle principal ellipse in the plane \(X=0\).</p>
<p>Jacobi gives the following conformal mapping of the triaxial ellipsoid onto a plane </p><p class="formulaDsp">
\[ \begin{align} x &amp;= \frac{\sqrt{a^2-c^2}}b \int \frac {\sqrt{a^2 \cos^2\omega + b^2 \sin^2\omega}} {\sqrt{a^2 \cos^2\omega + b^2 \sin^2\omega - c^2}}\, d\omega, \\ y &amp;= \frac{\sqrt{a^2-c^2}}b \int \frac {\sqrt{b^2 \sin^2\beta + c^2 \cos^2\beta}} {\sqrt{a^2 - b^2 \sin^2\beta - c^2 \cos^2\beta}}\, d\beta. \end{align} \]
</p>
<p> The scale of the projection is </p><p class="formulaDsp">
\[ k = \frac{\sqrt{a^2-c^2}} {b\sqrt{a^2 \cos^2\omega + b^2 (\sin^2\omega-\sin^2\beta) - c^2 \cos^2\beta}}. \]
</p>
<p> I have scaled the Jacobi's projection by a constant factor, </p><p class="formulaDsp">
\[ \frac{\sqrt{a^2-c^2}}{2b}, \]
</p>
<p> so that it reduces to the familiar formulas in the case of an oblate ellipsoid.</p>
<h1><a class="anchor" id="jacobi-elliptic"></a>
The projection in terms of elliptic integrals</h1>
<p>The projection may be expressed in terms of elliptic integrals, </p><p class="formulaDsp">
\[ \begin{align} x&amp;=(1+e_a^2)\,\Pi(\omega&#39;,-e_a^2, \cos\nu),\\ y&amp;=(1-e_c^2)\,\Pi(\beta&#39; , e_c^2, \sin\nu),\\ k&amp;=\frac{\sqrt{e_a^2+e_c^2}}{b\sqrt{e_a^2\cos^2\omega+e_c^2\cos^2\beta}}, \end{align} \]
</p>
<p> where </p><p class="formulaDsp">
\[ \begin{align} e_a &amp;= \frac{\sqrt{a^2-b^2}}b, \qquad e_c = \frac{\sqrt{b^2-c^2}}b, \\ \tan\omega&#39; &amp;= \frac ba \tan\omega = \frac 1{\sqrt{1+e_a^2}} \tan\omega, \\ \tan\beta&#39; &amp;= \frac bc \tan\beta = \frac 1{\sqrt{1-e_c^2}} \tan\beta, \\ \tan\nu &amp;= \frac ac \frac{\sqrt{b^2-c^2}}{\sqrt{a^2-b^2}} =\frac{e_c}{e_a}\frac{\sqrt{1+e_a^2}}{\sqrt{1-e_c^2}}, \end{align} \]
</p>
<p> \(\nu\) is the geographic latitude of the umbilic point at \(\beta = \omega = \frac12\pi\) (the angle a normal at the umbilic point makes with the equatorial plane), and \(\Pi(\phi,\alpha^2,k)\) is the elliptic integral of the third kind, <a href="http://dlmf.nist.gov/19.2.E7">http://dlmf.nist.gov/19.2.E7</a>. This allows the projection to be numerically computed using <a class="el" href="classGeographicLib_1_1EllipticFunction.html#a7b427b170bd7f22e516dfea0ea42bf51">EllipticFunction::Pi(real phi) const</a>.</p>
<p>Nyrtsov, et al.,</p><ul>
<li>M. V. Nyrtsov, M. E. Flies, M. M. Borisov, P. J. Stooke, <a href="https://doi.org/10.1007/978-3-642-32618-9_17">Jacobi conformal projection of the triaxial ellipsoid: new projection for mapping of small celestial bodies,</a> in <em>Cartography from Pole to Pole</em> (Springer, 2014), pp. 235&ndash;246.</li>
</ul>
<p>also expressed the projection in terms of elliptic integrals. However, their expressions don't allow the limits of ellipsoids of revolution to be readily recovered. The relations <a href="http://dlmf.nist.gov/19.7.E5">http://dlmf.nist.gov/19.7.E5</a> can be used to put their results in the form given here.</p>
<h1><a class="anchor" id="jacobi-properties"></a>
Properties of the projection</h1>
<p>\(x\) (resp. \(y\)) depends on \(\omega\) (resp. \(\beta\)) alone, so that latitude-longitude grid maps to straight lines in the projection. In this sense, the Jacobi projection is the natural generalization of the Mercator projection for the triaxial ellipsoid. (See below for the limit \(a\rightarrow b\), which makes this connection explicit.)</p>
<p>In the general case (all the axes are different), the scale diverges only at the umbilic points. The behavior of these singularities is illustrated by the complex function </p><p class="formulaDsp">
\[ f(z;e) = \cosh^{-1}(z/e) - \log(2/e). \]
</p>
<p> For \(e &gt; 0\), this function has two square root singularities at \(\pm e\), corresponding to the two northern umbilic points. Plotting contours of its real (resp. imaginary) part gives the behavior of the lines of constant latitude (resp. longitude) near the north pole in Fig. 1. If we pass to the limit \(e\rightarrow 0\), then \( f(z;e)\rightarrow\log z\), and the two branch points merge yielding a stronger (logarithmic) singularity at \(z = 0\), concentric circles of latitude, and radial lines of longitude.</p>
<p>Again in the general case, the extents of \(x\) and \(y\) are finite, </p><p class="formulaDsp">
\[ \begin{align} x\bigl(\tfrac12\pi\bigr) &amp;=(1+e_a^2)\,\Pi(-e_a^2, \cos\nu),\\ y\bigl(\tfrac12\pi\bigr) &amp;=(1-e_c^2)\,\Pi(e_c^2, \sin\nu), \end{align} \]
</p>
<p> where \(\Pi(\alpha^2,k)\) is the complete elliptic integral of the third kind, <a href="http://dlmf.nist.gov/19.2.E8">http://dlmf.nist.gov/19.2.E8</a>.</p>
<p>In particular, if we substitute values appropriate for the earth, </p><p class="formulaDsp">
\[ \begin{align} a&amp;=(6378137+35)\,\mathrm m,\\ b&amp;=(6378137-35)\,\mathrm m,\\ c&amp;=6356752\,\mathrm m,\\ \end{align} \]
</p>
<p> we have </p><p class="formulaDsp">
\[ \begin{align} x\bigl({\textstyle\frac12}\pi\bigr) &amp;= 1.5720928 = \hphantom{0}90.07428^\circ,\\ y\bigl({\textstyle\frac12}\pi\bigr) &amp;= 4.2465810 = 243.31117^\circ.\\ \end{align} \]
</p>
<p>The projection may be inverted (to give \(\omega\) in terms of \(x\) and \(\beta\) in terms of \(y\)) by using Newton's method to find the root of, for example, \(x(\omega) - x_0 = 0\). The derivative of the elliptic integral is, of course, just given by its defining relation.</p>
<p>If rhumb lines are defined as curves with a constant bearing relative to the ellipsoid coordinates, then these are straight lines in the Jacobi projection. A rhumb line which passes over an umbilic point immediately retraces its path. A rhumb line which crosses the line joining the two northerly umbilic points starts traveling south with a reversed heading (e.g., a NE heading becomes a SW heading). This behavior is preserved in the limit \(a\rightarrow b\) (although the longitude becomes indeterminate in this limit).</p>
<h1><a class="anchor" id="jacobi-limiting"></a>
Limiting cases</h1>
<p><b>Oblate ellipsoid</b>, \(a\rightarrow b\). The coordinate system is </p><p class="formulaDsp">
\[ \begin{align} X &amp;= b \cos\beta \cos\omega, \\ Y &amp;= b \cos\beta \sin\omega, \\ Z &amp;= c \sin\beta. \end{align} \]
</p>
<p> Thus \(\beta\) (resp. \(\beta&#39;\)) is the parametric (resp. geographic) latitude and \(\omega=\omega&#39;\) is the longitude; the quantity \(e_c\) is the eccentricity of the ellipsoid. Using <a href="http://dlmf.nist.gov/19.6.E12">http://dlmf.nist.gov/19.6.E12</a> and <a href="http://dlmf.nist.gov/19.2.E19">http://dlmf.nist.gov/19.2.E19</a> the projection reduces to the normal Mercator projection for an oblate ellipsoid, </p><p class="formulaDsp">
\[ \begin{align} x &amp;= \omega,\\ y &amp;= \sinh^{-1}\tan\beta&#39; - e_c \tanh^{-1}(e_c\sin\beta&#39;),\\ k &amp;= \frac1{b\cos\beta}. \end{align} \]
</p>
<p><b>Prolate ellipsoid</b>, \(c\rightarrow b\). The coordinate system is </p><p class="formulaDsp">
\[ \begin{align} X &amp;= b \cos\omega \cos\beta, \\ Y &amp;= a \sin\omega, \\ Z &amp;= b \cos\omega \sin\beta. \end{align} \]
</p>
<p> Thus \(\omega\) (resp. \(\omega&#39;\)) now plays the role of the parametric (resp. geographic) latitude and while \(\beta=\beta&#39;\) is the longitude. Using <a href="http://dlmf.nist.gov/19.6.E12">http://dlmf.nist.gov/19.6.E12</a> <a href="http://dlmf.nist.gov/19.2.E19">http://dlmf.nist.gov/19.2.E19</a> and <a href="http://dlmf.nist.gov/19.2.E18">http://dlmf.nist.gov/19.2.E18</a> the projection reduces to similar expressions with the roles of \(\beta\) and \(\omega\) switched, </p><p class="formulaDsp">
\[ \begin{align} x &amp;= \sinh^{-1}\tan\omega&#39; + e_a \tan^{-1}(e_a\sin\omega&#39;),\\ y &amp;= \beta,\\ k &amp;= \frac1{b\cos\omega}. \end{align} \]
</p>
<p><b>Sphere</b>, \(a\rightarrow b\) and \(c\rightarrow b\). This is a non-uniform limit depending on the parameter \(\nu\), </p><p class="formulaDsp">
\[ \begin{align} X &amp;= b \cos\omega \cos\beta, \\ Y &amp;= b \sin\omega \sqrt{1 - \sin^2\nu\sin^2\beta}, \\ Z &amp;= b \sin\beta \sqrt{1 - \cos^2\nu\sin^2\omega}. \end{align} \]
</p>
<p> Using <a href="http://dlmf.nist.gov/19.6.E13">http://dlmf.nist.gov/19.6.E13</a> the projection can be put in terms of the elliptic integral of the first kind, <a href="http://dlmf.nist.gov/19.2.E4">http://dlmf.nist.gov/19.2.E4</a> </p><p class="formulaDsp">
\[ \begin{align} x &amp;= F(\omega, \cos\nu), \\ y &amp;= F(\beta, \sin\nu), \\ k &amp;= \frac1{b \sqrt{\cos^2\nu\cos^2\omega + \sin^2\nu\cos^2\beta}}, \end{align} \]
</p>
<p> Obtaining the limit of a sphere via an oblate (resp. prolate) ellipsoid corresponds to setting \(\nu = \frac12\pi\) (resp. \(\nu =0\)). In these limits, the elliptic integral reduces to elementary functions <a href="http://dlmf.nist.gov/19.6.E7">http://dlmf.nist.gov/19.6.E7</a> and <a href="http://dlmf.nist.gov/19.6.E8">http://dlmf.nist.gov/19.6.E8</a> </p><p class="formulaDsp">
\[ \begin{align} F(\phi, 0) &amp;= \phi, \\ F(\phi, 1) &amp;= \mathop{\mathrm{gd}}\nolimits^{-1}\phi = \sinh^{-1}\tan\phi. \end{align} \]
</p>
<p> The spherical limit gives the projection found by &Eacute;. Guyou in</p><ul>
<li><a href="https://books.google.com/books?id=saBDAQAAIAAJ&amp;pg=PA308">Sur un nouveau syst&egrave;me de projection de la sph&egrave;re</a>, Comptes Rendus 102(6), 308&ndash;310 (1886).</li>
<li><a href="https://books.google.com/books?id=VjU8AQAAMAAJ&amp;pg=PA16">Nouveau syst&egrave;me de projection de la sph&egrave;re: g&eacute;n&eacute;ralisation de la projection de Mercator</a>, Annales Hydrographiques (2nd series) 9, 16&ndash;35 (1887).</li>
</ul>
<p>who apparently derived it without realizing that it is just a special case of the projection Jacobi had given some 40 years earlier. Guyou's name is usually associated with the particular choice, \(\nu=\frac14\pi\), in which case the hemisphere \(\left|\omega\right|\le\frac12\pi\) is mapped into a square. However, by varying \(\nu\in[0,\frac12\pi]\) the hemisphere can be mapped into a rectangle with any aspect ratio, \(K(\cos\nu) : K(\sin\nu)\), where \(K(k)\) is the complete elliptic integral of the first find, <a href="http://dlmf.nist.gov/19.2.E8">http://dlmf.nist.gov/19.2.E8</a>.</p>
<h1><a class="anchor" id="jacobi-sphere"></a>
Conformal mapping of an ellipsoid to a sphere</h1>
<p>An essential tool in deriving conformal projections of an ellipsoid of revolution is the conformal mapping of the ellipsoid onto a sphere. This allows conformal projections of the sphere to be generalized to the case of an ellipsoid of revolution. This conformal mapping is obtained by using the ellipsoidal Mercator projection to map the ellipsoid to the plane and then using the spherical Mercator projection to map the plane onto the sphere.</p>
<p>A similar construction is possible for a triaxial ellipsoid. Map each octant of the ellipsoid onto a rectangle using the Jacobi projection. The aspect ratio of this rectangle is </p><p class="formulaDsp">
\[ (1+e_a^2)\,\Pi(-e_a^2, \cos\nu) : (1-e_c^2)\,\Pi( e_c^2, \sin\nu). \]
</p>
<p> Find the value of \(\nu&#39;\) such that this ratio equals </p><p class="formulaDsp">
\[ K(\cos\nu&#39;) : K(\sin\nu&#39;). \]
</p>
<p> Map the rectangle onto the equivalent octant of the sphere using Guyou's projection with parameter \(\nu = \nu&#39;\). This reduces to the standard construction in the limit of an ellipsoid of revolution.</p>
<h1><a class="anchor" id="jacobi-implementation"></a>
An implementation of the projection</h1>
<p>The <a class="el" href="classGeographicLib_1_1JacobiConformal.html" title="Jacobi&#39;s conformal projection of a triaxial ellipsoid. ">JacobiConformal</a> class provides an implementation of the Jacobi conformal projection is given here. <b>NOTE:</b> This is just sample code. It is not part of <a class="el" href="namespaceGeographicLib.html" title="Namespace for GeographicLib. ">GeographicLib</a> itself.</p>
<center> Back to <a class="el" href="triaxial.html">Geodesics on a triaxial ellipsoid</a>. Forward to <a class="el" href="rhumb.html">Rhumb lines</a>. Up to <a class="el" href="index.html#contents">Contents</a>. </center> </div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>