What the numbers refer to

A conformal map of a body that is not a quadric

Jacobi's ellipsoidal coordinates give a triaxial body a conformal map by two quadratures, and this collection wrote down what that argument uses: the surface has to be a quadric. A real body is not. Solving the discrete Cauchy–Riemann equations instead — one complex equation per triangle, two thousand triangles, conjugate gradients — gives a conformal map of a bumped body to a median of 1.10°, converging at first order in the mesh, with the areal factor spreading by 3.07 and refusing to converge at all.

Jacobi’s ellipsoidal coordinates give a triaxial ellipsoid an isothermal coordinate by two one-dimensional integrals, and a conformal map of Vesta follows. That result came with its own limit written down: the argument uses the fact that the surface is a quadric. The lines of curvature separate the metric because the surface is defined by a quadratic form, and a real body — Vesta with its craters, a comet nucleus, anything measured rather than idealised — is not one and has no such coordinate.

It has a conformal map anyway, because every surface does — Riemann’s mapping theorem says so for any simply-connected patch of any smooth surface. What it does not have is a formula.

That distinction is the one this collection makes everywhere: a map with no formula is still a map, and the fourteen numbers it consists of are as usable as a closed form provided somebody says what they are.

A conformal map solved rather than written down. The same patch of parameters on two bodies, mapped to the plane by solving the discrete Cauchy–Riemann equations — one complex equation per triangle, 1568 triangles, least squares, conjugate gradients, and no formula for either surface. Left: a sphere, where the answer is known in closed form and is not used. Right: a body with a bump on it, which has no isothermal coordinate and therefore no closed form at all. The parameter lines cross at right angles in both, to a median of 0.60° and 1.25° of angular deformation.
Fig. 1 The same rectangle of parameters on two bodies, mapped to the plane by solving the discrete Cauchy–Riemann equations — one complex equation per triangle, fifteen hundred triangles, least squares, conjugate gradients, and no formula for either surface. Left: a sphere, whose answer is known in closed form and is not used. Right: a body with a bump on it, which has no isothermal coordinate at all. The parameter lines cross at right angles in both.

One complex equation per triangle

The construction is short enough to state completely.

Take a triangle of the mesh and write its own three vertices in a plane frame laid flat on it — the triangle is flat, so this loses nothing. Call those w₁, w₂, w₃ as complex numbers, and set

W₁ = w₃ − w₂, W₂ = w₁ − w₃, W₃ = w₂ − w

Let z₁, z₂, z₃ be where the map sends the same three vertices. The map, restricted to this triangle, is a single linear map of the plane, and it is conformal exactly when

Wz₁ + Wz₂ + Wz₃ = 0

That is one complex equation — two real ones — per triangle, linear in the unknowns, with two unknowns per vertex. A mesh with more triangles than vertices gives an over-determined system, and the conformal map is its least-squares solution.

Two vertices have to be pinned. A conformal map composed with a rotation, a scaling or a translation is still conformal, so without pins the system is singular by exactly four dimensions, and pinning two points removes exactly those four.

The whole thing is then a sparse least-squares problem, solved by conjugate gradients on the normal equations without ever forming a matrix: each iteration is one pass over the triangles forward and one back. A dense linear solver was set aside by this collection long ago on the grounds that it had no home here; it still does not need one.

The control that is exact

Measuring the angular deformation of the solved map and finding it small proves nothing on its own, because a solver that returned a constant map would also report a small number, and because a sphere’s own answer is not a fair comparison — two conformal maps of the same simply-connected patch differ by a whole holomorphic function, not by a similarity, so the least-squares solution has no reason to be the stereographic one.

The control that works is a flat patch. On a plane region the discrete equations are satisfiable exactly rather than in the least-squares sense, and the answer is a similarity. The solver returns an angular deformation of 2.6 × 10⁻¹⁰ degrees and an areal factor constant to 2.8 × 10⁻¹¹.

That is the check the equations are right. What remains is whether they converge.

What converges, and at what rate

The solved map converges to a conformal one, at first order. Median angular deformation against the mesh size, for a sphere and for the bumped body. Both fall as the mesh spacing — fitted exponents 1.00 and 0.99 against a predicted 1 — so what is left at any resolution is discretisation and not a failure to be conformal. On a flat patch, where there is nothing to discretise, the same solver returns 2.6e-10° and an areal factor constant to 2.8e-11, which is the control that says the equations are right rather than merely convergent.
Fig. 2 Median angular deformation against the mesh size, for a sphere and for the bumped body, over a sixteenfold refinement. Both fall as the mesh spacing — fitted exponents 1.00 and 0.99 against a predicted 1.
triangles sphere, median ω bumped body, median ω
128 2.118° 4.353°
288 1.411° 2.914°
512 1.058° 2.195°
1,152 0.706° 1.465°
2,048 0.525° 1.099°

First order in the mesh spacing, on both. So the residual angular deformation at any resolution is discretisation and nothing else: it is the price of representing a curved surface by flat triangles, it falls when the triangles get smaller, and it would fall to zero in the limit.

The bumped body’s numbers are about twice the sphere’s throughout. That factor is a property of how much the surface curves rather than of the method, and it is worth having: the method does not care whether a closed form exists. That is the same indifference a map with no formula found when a projection was solved rather than chosen, and it is the reason a numerical route is worth building even where an analytic one is available. The sphere has one and the bumped body does not, and the solver behaves identically on both.

What does not converge, because it is not an error

What does not converge, because it is not an error. The spread of the areal scale factor over the same patch, on the same meshes. It moves by 4 and 12 per cent across a sixteenfold refinement and settles at 1.57 and 3.07. The angular deformation is a discretisation error and goes away; this is the map's own behaviour and does not. A conformal map of a curved surface distorts area, and no amount of solving harder changes that.
Fig. 3 The spread of the areal scale factor over the same patch, on the same meshes. It moves by 4 and 12 per cent across a sixteenfold refinement and settles at 1.57 and 3.07. The line at 1 is where an equal-area map would be.

The angular deformation is an error and goes away. The areal spread is the map’s own behaviour and does not: 1.57 on the sphere and 3.07 on the bumped body, essentially flat across the refinement.

That is the trade-off in two lines arriving in the one place where nobody chose a projection. Nothing about this map was designed; it is the solution of an equation, and the equation only asks for conformality. The areal factor then does what the curvature makes it do, and a map that came back both conformal and equal-area would be an isometry — which the curvature forbids and which would mean the solver was broken. Curvature that varies from place to place is what sets how much area has to be given up, and on a bumped body it varies a great deal.

So a numerical conformal map is a projection like any other, and it has to be measured like one. The site’s usual apparatus applies unchanged: the linear map from each triangle’s own frame to its image is a 2 × 2 matrix, its singular values are the two principal scale factors, and every quantity in this collection follows from them — which is Tissot’s indicatrix applied to a map that has no formula to differentiate.

A conformal map of Vesta, in the coordinates that make one possible. The body's own isothermal coordinate, used as the map — which is Mercator's construction carried out on a body that has no axis to be Mercator about. The lines are Jacobi's ellipsoidal coordinates, which are the surface's lines of curvature, at 30° and 20° spacing; the two quadratures that turn them into an isothermal pair are one-dimensional. The measured angular deformation away from the marked points is 1.1e-6°, which is this site's noise floor, and the areal factor spans a factor of 162 — conformal, and emphatically not equal-area. The four marks are the umbilics, where the coordinate collapses and the map has nothing to say.
Fig. 4 The closed-form case, for comparison: the conformal map of Vesta built from Jacobi’s ellipsoidal coordinates, where two one-dimensional quadratures do the whole job. Everything in this essay exists because that construction needs the surface to be a quadric.
The coordinate lines cross at a right angle, or they do not. The worst departure from a right angle between the two coordinate lines, over each body. The site's existing parametric coordinates — longitude and a parametric latitude — depart by degrees, which is the measurement that says no auxiliary latitude can exist on a triaxial body. Jacobi's coordinates are the surface's own lines of curvature and depart by 1.8e-8°, which is the finite difference's noise. Orthogonality is not a nicety here: it is the first of the two conditions that make an isothermal coordinate obtainable by quadrature.
Fig. 5 Why the quadric matters. Jacobi’s coordinate lines cross at 2 × 10⁻⁸ degrees from square, where this collection’s parametric ones are 1.56° off on Vesta — and the separation of the metric that makes the quadratures possible is a fact about a quadratic form, not about a surface.

What this pays and what it does not

The recorded shortfall was: a general convex body — the real Vesta, with its craters — has no isothermal coordinate, and would need one computed numerically by solving an elliptic equation over the surface.

That is now done, with three qualifications worth being plain about.

The equation solved is the discrete Cauchy–Riemann system rather than the Laplace–Beltrami equation, which is the same problem in a different form: the least-squares conformal energy differs from the Dirichlet energy by the signed area, and minimising either gives the same map. The discrete form is chosen because it is one equation per triangle and needs no discrete Laplacian.

The body is a stated star-shaped surface, not a shape model. Its radius is an ellipsoid times one written-down function of the direction cosines, so the surface can be reproduced from the essay. A real shape model is a mesh of a few hundred thousand triangles delivered by a spacecraft, which is data, and a body with no sea level is where this collection’s rule about data is set out.

And the map is of a patch, not of the whole body. A conformal map of a closed surface onto the plane does not exist — that is the impossibility at its most basic — so something has to be cut, and what is solved here is a rectangle of parameters with a free boundary. Mapping the whole body means choosing where to cut it, which is the cut having to go somewhere and is a separate decision.

What it costs to run

The numbers are small enough to be worth stating, because the impression that a numerical conformal map is expensive is what keeps people looking for closed forms.

A two-thousand-triangle patch converges in 467 conjugate-gradient iterations and takes under a tenth of a second. The whole refinement study — two bodies, five meshes each, from 128 triangles to 2,048 — takes 282 milliseconds. There is no matrix, no factorisation and no library: the entire solver is two loops over the triangle list and the conjugate-gradient recurrence.

That is the argument for doing it this way on a small body. The closed form for a triaxial ellipsoid is more elegant and it is not faster, and the moment the surface departs from a quadric by so much as a crater the elegant route is unavailable and this one is unchanged.

Vesta, with its own coordinate lines. Vesta drawn in an orthographic projection — every figure here is a projection, including this one — with the parametric coordinate lines its published coordinates are written in. Its three semi-axes are 286.3, 278.6 and 223.2 km, so the equator is an ellipse rather than a circle and the body has no axis of revolution to define a latitude against. The surface's own radius runs from 223.2 to 286.2 km, a ratio of 1.282, and the outward normal departs from the direction out of the centre by up to 14.10°.
Fig. 6 The body the closed-form argument was built for. Vesta’s three axes are all different and it is still a quadric, which is exactly the property that gives it an isothermal coordinate — and exactly the property a real surface loses the moment a crater is put on it.

What was computed, and how

The mesh is a structured grid in colatitude and longitude, split into triangles — deliberately not adaptive, because a refinement study needs the mesh to be a function of one number.

Each triangle’s own isometric frame comes from its three vertices directly: one edge along the x axis, the third vertex placed by projection. Nothing about the parameterisation enters, which is what makes the result a property of the surface.

The linear system is assembled implicitly. applyA runs over the triangles accumulating the residuals; applyAᵀ runs over them accumulating the adjoint; conjugate gradients calls each once per iteration and converges in 75 to 470 iterations depending on the mesh.

One bug is worth recording because it looked like a hard problem rather than a broken solver. The forward operator includes the pinned vertices’ contribution, so it is affine rather than linear — A(x) = Aᶠʳᵉᵉx + Aᵖⁱⁿxᵖⁱⁿ. Feeding that to conjugate gradients, which needs the linear part alone, makes the iteration diverge silently: it ran to its four-thousand-iteration limit and returned a map with a worst angular deformation of 140° and an areal spread of 28. Both numbers are perfectly plausible for a genuinely difficult surface, and neither has anything to do with the surface.

The assertions have five parts, three of them refusals: the flat patch must come back exact; the angular deformation must halve across the refinement on both bodies; the areal spread must not move across the same refinement, which distinguishes a property from an error; and the areal spread must not be 1, because nothing can be both.

What this makes possible for a small body

The practical consequence is that the vocabulary this collection uses for the Earth can be carried onto a body with no formula at all.

A conformal map of a patch means a local coordinate system in which angles are right, which is what a survey needs and what every national grid on Earth provides. Nothing about it requires the surface to be a quadric, an ellipsoid, or even smooth in any strong sense — a triangulated shape model is enough, and the shape models exist for every body a spacecraft has visited.

What the map does not come with is a name, an inverse formula, or a set of parameters that can be written into a coordinate reference system definition. It comes as a list of vertex positions. That is a real cost for interoperability and it is not a cost in correctness, and it is the same trade a map with no formula made for a projection solved rather than chosen.

What first order costs, in triangles

The convergence table is reassuring and it is worth converting into the number a practitioner would actually need, because first order is a slow rate and the arithmetic is not obvious from the exponent.

The median angular deformation falls as the mesh spacing, and the spacing on a structured mesh falls as the square root of the triangle count — which the table shows directly: sixteen times the triangles and four times less deformation, on both bodies. So the deformation is proportional to N^(−1/2), and reaching a stated accuracy costs the square of the improvement.

Take a tenth of a degree as a target, which is about the angular tolerance a survey grid on Earth is held to. The bumped body sits at 1.099° with 2,048 triangles, so an elevenfold improvement costs 121 times the triangles: a quarter of a million. A hundredth of a degree costs 12,100 times, which is twenty-five million triangles — larger than any published shape model of a small body, and larger by an order of magnitude than the data that would justify it.

The time follows worse than linearly. Conjugate gradients on this system took 75 iterations at 128 triangles and 467 at 2,048, which is close to the square root of the triangle count that an unpreconditioned method predicts, so the total work grows as N^(3/2). Scaling the measured tenth of a second at 2,048 triangles gives about ten minutes for the quarter-million mesh and something over a day for the twenty-five-million one.

That is the honest case for the higher-order schemes this essay sets aside. At the accuracies the argument here needs — showing that the residual is discretisation, and that it converges — first order is not merely adequate, it is the right choice, because the rate is the evidence. At the accuracy a working coordinate system would need it is the difference between minutes and days, and the circle-pattern and Ricci-flow constructions exist precisely to buy that back. Nothing in this essay requires them and nothing in it argues that a real application would not.

Where the model stops

Least-squares conformal mapping is first order, which is why the numbers above are what they are. Higher-order discrete conformal schemes exist — circle patterns, discrete Ricci flow — and would reach the same map with fewer triangles. Nothing here needs them, and adopting one would replace a construction that fits in a paragraph with one that does not.

The free boundary is doing work that is not measured. The solution is the conformal map that minimises the energy with those two pins and that boundary, and a different pair of pins gives a different map — related to this one by a Möbius transformation, but different, and with a different areal spread. The number 3.07 is therefore a property of the patch, the pins and the boundary together, and the essay’s claim is about the shape of the result rather than about that value.

The refinement study is also a study of one shape. Both surfaces here are smooth, and the convergence rate a mesh achieves depends on how well flat triangles approximate the surface locally — a crater rim or a facet edge is a place where they do so much worse, and a real shape model is made almost entirely of such places. The first-order rate measured here is therefore the best case rather than the typical one.

And nothing here is about accuracy on a real body. The measurement that would matter for an actual small body is how many triangles a shape model needs before the map stops changing, which is a question about the shape model and not about the method.

The same is true of the alternative nobody reaches for: fitting a named projection to a small body and accepting the error. That is what has been done in practice, and the error it accepts is not small — a spherical projection applied to a body whose axes differ by a fifth is wrong by a fifth, everywhere, in a way that no parameter choice removes.

Who found it, and when

Discrete conformal mapping by least squares on the Cauchy–Riemann equations is Lévy, Petitjean, Ray and Maillot’s, from 2002, invented for texture-mapping in computer graphics rather than for cartography. The mathematical content — that a conformal map exists on any simply-connected patch of any smooth surface — is Riemann’s mapping theorem in the form Koebe and others made precise, and is a century older than any way of computing one.

That the two fields do not talk is the ordinary situation. A cartographer wants a projection with a formula, because a formula is what goes into a coordinate reference system definition and what a receiver can invert in a microsecond. A graphics programmer wants a flattening of a mesh, and does not care that it has no name. What the small bodies need is the second thing, because they have no formula available, and the machinery for it has existed for twenty years in a field that has never heard of a datum.

Where the ladder goes next

Seven rungs have taken a coordinate onto another body, put a projection on it, found the body with no axis of revolution, mapped it equal-area, found it has no sea level, given it a conformal map in closed form, and now given a body with no closed form a conformal map anyway. Every one of them treats the body as rigid and known. A small body’s shape is a measurement with an uncertainty, and what a coordinate on it means when the surface itself has error bars is the question this ladder now owes.

Named alongside this one

Essays reaching for the same objects. Nobody chose these; they are what the concept index makes visible.

What links here

Every essay whose body links to this one.

The objects this essay names

Each one links to every other essay that touches it.

Areal scaleCauchy riemannClosed formConformalityConvergence orderFirst fundamental formIsothermal coordinatesLeast-squaresNumerical integrationPlanetary datumShape modelTriaxial ellipsoid