1 Introduction

Holomorphic functions build the basis and heart of the rich theory of complex analysis. Holomorphic functions with nowhere vanishing derivative, also called conformal maps, have the property to preserve angles. Thus they may be characterized by the fact that they are infinitesimal scale-rotations.

In the discrete theory, the idea of characterizing conformal maps as local scale-rotations may be translated into different concepts. Here we consider the discretization coming from a metric viewpoint: Infinitesimally, lengths are scaled by a factor, i.e. by \(|f'(z)|\) for a conformal function f on \(D\subset \mathbb C\). More generally, on a smooth manifold two Riemannian metrics g and \(\tilde{g}\) are conformally equivalent if \(\tilde{g}=\text {e}^{2u}g\) for some smooth function u.

The smooth complex domain (or manifold) is replaced in this discrete setting by a triangulation of a connected subset of the plane \(\mathbb C\) (or a triangulated piecewise Euclidean manifold).

1.1 Convergence for Discrete Conformal PL-Maps on Triangular Lattices

In this article we focus on the case where the triangulation is a (part of a) triangular lattice. In particular, let T be a lattice triangulation of the whole complex plane \(\mathbb C\) with congruent triangles, see Fig. 1a. The sets of vertices and edges of T are denoted by V and E respectively. Edges will often be written as \(e=[v_i,v_j]\in E\), where \(v_i,v_j\in V\) are its incident vertices. For triangular faces we use the notation \(\varDelta [v_i,v_j,v_k]\) enumerating the incident vertices with respect to the orientation (counterclockwise) of \(\mathbb C\).

Fig. 1
figure 1

Lattice triangulation of the plane with congruent triangles. a Example of a triangular lattice. b Acute angled triangle.

On a subcomplex of T we now define a discrete conformal mapping. The main idea is to change the lengths of the edges of the triangulation according to scale factors at the vertices. The new triangles are then ‘glued together’ to result in a piecewise linear map, see Fig. 2 for an illustration. More precisely, we have

Definition 1.1

A discrete conformal PL-mapping  g is a continuous and orientation preserving map of a subcomplex \(T_S\) of a triangular lattice T to \(\mathbb C\) which is locally a homeomorphism in a neighborhood of each interior point and whose restriction to every triangle is a linear map onto the corresponding image triangle, that is the mapping is piecewise linear. Furthermore, there exists a function \(u:V_S\rightarrow \mathbb {R}\) on the vertices, called associated scale factors, such that for all edges \(e=[v,w]\in E_S\) there holds

$$\begin{aligned} |g(v)-g(w)|=|v-w|\text {e}^{(u(v)+u(w))/2}, \end{aligned}$$

where |a| denotes the modulus of \(a\in \mathbb C\).

Note that Eq. (1) expresses a linear relation for the logarithmic edge lengths, that is

$$\begin{aligned} 2\log |g(v)-g(w)| =2\log |v-w| +u(v)+u(w). \end{aligned}$$
Fig. 2
figure 2

Example of a discrete conformal PL-map g

In fact, the definition of a discrete conformal PL-map relies on the notion of discrete conformal triangle meshes. These have been studied by Luo, Gu, Sun, Wu, Guo [8, 9, 14], Bobenko, Pinkall, and Springborn [1] and others.

As possible application, discrete conformal PL-maps can be used for discrete uniformization. The simplest case is a discrete Riemann mapping theorem, i.e. the problem of finding a discrete conformal mapping of a simply connected domain onto the unit disc. Similarly, we may consider a related Dirichlet problem. Given some function \(u_\partial \) on the boundary of a subcomplex \(T_S\), find a discrete conformal PL-map whose associated scale factors agree on the boundary with \(u_\partial \). For such a Dirichlet problem (with assumptions on \(u_\partial \) and \(T_S\)) we will prove existence as part of our convergence theorem.

In this article we present a first answer to the following problem: Given a smooth conformal map, find a sequence of discrete conformal PL-maps which approximate the given map. We study this problem on triangular lattices T with acute angles and always assume for simplicity that the origin is a vertex. Denote by \(\varepsilon T\) the lattice T scaled by \(\varepsilon >0\). Using the values of \(\log |f'|\), we obtain a discrete conformal PL-map \(f^\varepsilon \) on a subcomplex of \(\varepsilon T\) from a boundary value problem for the associated scale factors. More precisely, we prove the following approximation result.

Theorem 1.2

Let \(f:D\rightarrow \mathbb C\) be a conformal map (i.e. holomorphic with \(f'\not =0\)). Let \(K\subset D\) be a compact set which is the closure of its simply connected interior int(K) and assume that \(0\in int(K)\). Let T be a triangular lattice with strictly acute angles. For each \(\varepsilon >0\) let \(T^\varepsilon _K\) be a subcomplex of \(\varepsilon T\) whose support is contained in K and is homeomorphic to a closed disc. We further assume that 0 is an interior vertex of \(T^\varepsilon _K\). Let \(e_0=[0,{\hat{v}}_0]\in E^\varepsilon _K\) be one of its incident edges.

Then if \(\varepsilon >0\) is small enough (depending on K, f, and T) there exists a unique discrete conformal PL-map \(f^\varepsilon \) on \(T^\varepsilon _K\) which satisfies the following two conditions:

  • The associated scale factors \(u^\varepsilon :V^\varepsilon _K\rightarrow \mathbb {R}\) satisfy

    $$\begin{aligned} u^\varepsilon (v)=\log |f'(v)|\qquad \text {for all boundary vertices } v \text { of } V^\varepsilon _K. \end{aligned}$$
  • The discrete conformal PL-map is normalized according to \(f^\varepsilon (0)=f(0)\) and \(\arg (f^\varepsilon ({\hat{v}}_0)-f^\varepsilon (0))= \arg ({\hat{v}}_0)+ \arg (f'(\frac{{\hat{v}}_0}{2})) \pmod {2\pi }\).

Furthermore, the following estimates for \(u^\varepsilon \) and \(f^\varepsilon \) hold for all vertices \(v\in V^\varepsilon _K\) and points x in the support of \(T^\varepsilon _K\) respectively with constants \(C_1,C_2,C_3\) depending only on K, f, and T, but not on v or x:

  1. (i)

    The scale factors \(u^\varepsilon \) approximate \(\log |f'|\) uniformly with error of order \(\varepsilon ^2\):

    $$\begin{aligned} \left| u^\varepsilon (v)-\log |f'(v)|\right| \leqslant C_1\varepsilon ^2. \end{aligned}$$
  2. (ii)

    The discrete conformal PL-mappings \(f^\varepsilon \) converge to f for \(\varepsilon \rightarrow 0\) uniformly with error of order \(\varepsilon \):

    $$\begin{aligned} \left| f^\varepsilon (x)-f(x)\right| \leqslant C_2\varepsilon . \end{aligned}$$
  3. (iii)

    The derivatives of \(f^\varepsilon \) (in the interior of the triangles) converge to \(f'\) uniformly for \(\varepsilon \rightarrow 0\) with error of order \(\varepsilon \):

    $$\begin{aligned} \left| \partial _z f^\varepsilon (x)-f'(x)\right| \leqslant C_3\varepsilon \qquad \text {and} \qquad \left| \partial _{\bar{z}} f^\varepsilon (x)\right| \leqslant C_3\varepsilon \end{aligned}$$

    for all points x in the interior of a triangle \(\varDelta \) of \(T^\varepsilon _K\). Here \(\partial _z\) and \(\partial _{\bar{z}}\) denote the Wirtinger derivatives applied to the linear maps \(f^\varepsilon |_\varDelta \).

Note that the subcomplexes \(T^\varepsilon _K\) may be chosen such that they approximate the compact set K. Further notice that (3) implies that \(u^\varepsilon \) converges to \(\log |f'|\) in \(C^1\) with error of order \(\varepsilon \), in the sense that also

$$\begin{aligned} \left| \frac{u^\varepsilon (v)-u^\varepsilon (w)}{\varepsilon } - \text {Re}\left( \frac{f''((v+w)/2)}{f'((v+w)/2)}\right) \right| \leqslant {\tilde{C}}\varepsilon \end{aligned}$$

on edges [vw] uniformly for some constant \(\tilde{C}\).

The proof of Theorem 1.2 is given in Sect. 4. The arguments are based on estimates derived in Sect. 3.

The problem of actually computing the scale factors u for given boundary values \(u_\partial \) such that u gives rise to a discrete conformal PL-map (in case it exists) can be solved using a variational principle, see [1, 20]. Our proof relies on investigations using the corresponding convex functional, see Theorem 2.2 in Sect. 2.

Remark 1.3

The convergence result of Theorem 1.2 also remains true if linear interpolation is replaced with the piecewise projective interpolation schemes described in [1, 3], i.e., circumcircle preserving, angle bisector preserving and, generally, exponent-t-center preserving for all \(t\in \mathbb {R}\). The proof is the same with only small adaptations. This is due to the fact that the image of the vertices is the same for all these interpolation schemes and these image points converge uniformly to the corresponding image points under f with error of order \(\varepsilon \). The estimates for the derivatives similarly follow from Theorem 1.2(i).

1.2 Other Convergence Results for Discrete Conformal Maps

Smooth conformal maps can be characterized in various ways. This leads to different notions of discrete conformality. Convergence issues have already been studied for some of these discrete analogs. We only give a very short overview and cite some results of a growing literature.

In particular, linear definitions can be derived as discrete versions of the Cauchy-Riemann equations and have a long and still developing history. Connections of such discrete mappings to smooth conformal functions have been studied for example in [2, 6, 7, 13, 16, 19, 22].

The idea of characterizing conformal maps as local scale-rotations has lead to the consideration of circle packings, more precisely to investigations on circle packings with the same (given) combinatorics of the tangency graph. Thurston [21] first conjectured the convergence of circle packings to the Riemann map, which was then proven by [10, 11, 17].

The theory of circle patterns generalizes the case of circle packings. Also, there is a link to integrable structures via isoradial circle patterns. The approximation of conformal maps using circle patterns has been studied in [4, 5, 12, 15, 18].

The approach taken in this article constructs discrete conformal maps from given boundary values. Our approximation results and some ideas of the proof are therefore similar to those in [4, 5, 18] for circle patterns which also rely on boundary value problems.

2 Some Characterizations of Associated Scale Factors of Discrete Conformal PL-Maps

Consider a subcomplex \(T_S\) of a triangular lattice T and an arbitrary function \(u:V_S\rightarrow \mathbb {R}\). Assign new lengths to the edges according to (1) by

$$\begin{aligned} \tilde{l}([v,w])=|v-w|\text {e}^{(u(v)+u(w))/2} \end{aligned}$$

In order to obtain new triangles with these lengths (and ultimately a discrete conformal PL-map) the triangle inequalities need to hold for the edge lengths \(\tilde{l}\) on each triangle. If we assume this, we can embed the new triangles (respecting orientation) and immerse sequences of triangles with edge lengths given by \(\tilde{l}\) as in (4). In order to obtain a discrete conformal PL-map, in particular a local homeomorphism, the interior angles of the triangles need to sum up to \(2\pi \) at each interior vertex. The angle at a vertex of a triangle with given side lengths can be calculated. With the notation of Fig. 1b we have the half-angle formula

$$\begin{aligned} \tan \left( \frac{\alpha }{2}\right) = \sqrt{\frac{(-b+a+c)(-c+a+b)}{(b+c-a)(a+b+c)}} = \sqrt{\frac{1-(\frac{b}{a}-\frac{c}{a})^2}{(\frac{b}{a}+\frac{c}{a})^2-1}}. \end{aligned}$$

The last expression emphasizes the fact that the angle does not depend on the scaling of the triangle. Careful considerations of this angle function depending on (scaled) side lengths of the triangle form the basis for our proof. In particular, we define the function

$$\begin{aligned} \theta (x,y):=2\arctan \sqrt{\frac{1-(\text {e}^{-x/2} -\text {e}^{-y/2})^2}{(\text {e }^{-x/2} +\text {e}^{-y/2})^2-1}}, \end{aligned}$$

so (5) can be written as

$$\alpha =\theta (x,y)\qquad \text {with}\quad \frac{b}{a}=\text {e}^{-x/2}\ \text { and }\ \frac{c}{a}=\text {e}^{-y/2}.$$

Summing up, we have the following characterization of scale factors associated to discrete conformal PL-maps.

Proposition 2.1

Let \(T_S\) be a subcomplex of a triangular lattice T and \(u:V_S\rightarrow \mathbb {R}\) a function satisfying the following two conditions.

  1. (i)

    For every triangle \(\varDelta [v_1,v_2,v_3]\) of \(T_S\) the triangle inequalities for \(\tilde{l}\) defined by (4) hold, in particular

    $$\begin{aligned} |v_i-v_j|\text {e}^{(u(v_i)+u(v_j))/2}< |v_i-v_k|\text {e}^{(u(v_i)+u(v_k))/2} +|v_j-v_k|\text {e}^{(u(v_j)+u(v_k))/2} \end{aligned}$$

    for all permutations (ijk) of (123).

  2. (ii)

    For every interior vertex \(v_0\) with neighbors \(v_1,v_2,\dots ,v_k,v_{k+1}=v_1\) in cyclic order we have

    $$\begin{aligned} \sum _{j=1}^k \theta (\lambda (v_0,v_j,v_{j+1})+ u(v_{j+1})-u(v_0), \lambda (v_0,v_{j+1},v_j) +u(v_j)-u(v_0))=2\pi , \end{aligned}$$

    where \(\lambda (v_a,v_b,v_c)= 2\log (|v_b-v_c|/|v_a-v_b|)\) for a triangle \(\varDelta [v_a,v_b,v_c]\).

Then there is a discrete conformal PL-map (unique up to post-composition with Euclidean motions) such that its associated scale factors are the given function \(u:V_S\rightarrow \mathbb {R}\).

Conversely, given a discrete conformal PL-map on a subcomplex \(T_S\) of a triangular lattice T, its associated scale factors \(u:V_S\rightarrow \mathbb {R}\) satisfy conditions (i) and (ii).

In order to obtain discrete conformal PL-maps from a given smooth conformal map we will consider a Dirichlet problem for the associated scale factors. Therefore we will apply a theorem from [1] which characterizes the scale factors u for given boundary values using a variational principle for a functional E defined in [1, Sect. 4]. Note that we will not need the exact expression for E but only the formula for its partial derivatives. In fact, the vanishing of these derivatives is equivalent to the necessary condition (8) for the scale factors to correspond to a discrete conformal PL-map.

Theorem 2.2

([1]) Let \(T_S\) be a subcomplex of a triangular lattice and let \(u_\partial :V_\partial \rightarrow \mathbb {R}\) be a function on the boundary vertices \(V_\partial \) of \(T_S\). Then the solution \(\tilde{u}\) (if it exists) of Eq. (8) at all interior vertices with \({\tilde{u}}|_{V_\partial }=u_\partial \) is the unique argmin of a locally strictly convex functional \(E(u)=E_{T_S}(u)\) which is defined for functions \(u:V\rightarrow \mathbb {R}\) satisfying the inequalities (7).

The partial derivative of E with respect to \(u_i=u(v_i)\) at an interior vertex \(v_i\in V_{int}\) with k neighbors \(v_{i_1},v_{i_2},\dots ,v_{i_k}v_{i_{k+1}}=v_{i_1}\) in cyclic order is

$$\begin{aligned} \frac{\partial E}{\partial u_i}(u) = 2\pi - \sum _{j=1}^k \theta (2\log \left( \frac{l_{i_{j+1},i_j}}{l_{i,i_{j+1}}}\right) + u_{i_j}- u_i, 2\log \left( \frac{l_{i_{j+1},i_j}}{l_{i,i_{j}}}\right) + u_{i_{j+1}} -u_i), \end{aligned}$$

where \(l_{j,k}=|v_j-v_k|\).

By Proposition 2.1 such a solution \(\tilde{u}\) are then scale factors associated to a discrete conformal PL-map.

Remark 2.3

The functional E can be extended to a convex continuously differentiable function on \(\mathbb {R}^V\), see [1] for details.

3 Taylor Expansions

We now examine the effect when we take \(u=\log |f'|\) as ‘scale factors’, i.e. for each triangle we multiply the length \(|v-w|\) of an edge [vw] by the geometric mean \(\sqrt{|f'(v)f'(w)|}\) of \(|f'|\) at the vertices. The proof of Theorem 1.2 is based on the idea that \(u=\log |f'|\) almost satisfies the conditions for being the associated scale factors of an discrete conformal PL-map, that is conditions (i) and (ii) of Proposition 2.1, and therefore is close to the exact solution \(u^\varepsilon \).

To be precise, suppose that \(\varepsilon T\) is the equilateral triangulation of the plane. Assume without loss of generality that the edge lengths equal \(\frac{\sqrt{3}}{2}\varepsilon >0\) and edges are parallel to \(\text {e}^{ij\pi /3}\) for \(j=0,1,\dots , 5\). Let the conformal function f, the compact set K, and the subcomplexes \(T^\varepsilon _K\) (with vertices \(V^\varepsilon _K\) and edges \(E^\varepsilon _K\)) be given as in Theorem 1.2. Let \(v_0\in V^\varepsilon _{K, \text {int}}\) be an interior vertex. Here and below \(V^\varepsilon _{K,\text {int}}\) denotes the set of interior vertices having six neighbors in \(V^\varepsilon _K\). Denote the neighbors of \(v_0\) by \(v_j= v_0+\varepsilon \frac{\sqrt{3}\text {e}^{ij\frac{\pi }{3}}}{2}\) and consider the triangle \(\varDelta _j= \varDelta [v_0,v_j,v_{j+1}]\) for some \(j\in \{0,1,\dots , 5\}\). Taking \(u=\log |f'|\), we obtain edge lengths of a new triangle \({{\tilde{\varDelta }}}_j\), i.e. satisfying (7), if \(\varepsilon \) is small enough. Then the angle in \({\tilde{\varDelta }}_j\) at the image vertex of \(v_0\) is given by

$$ \theta (\log |f'(v_0+\varepsilon \frac{\sqrt{3}\text {e}^{ij\frac{\pi }{3}}}{2})| -\log |f'(v_0)|,\, \log |f'(v_0+\varepsilon \frac{\sqrt{3}\text {e}^{i(j+1)\frac{\pi }{3}}}{2})| -\log |f'(v_0)|) $$

according to (6). Summing up these angles—that is inserting \(\log |f'|\) into (8) instead of u at an interior vertex \(v_0\in V^\varepsilon _{K, \text {int}}\)—we obtain the function

$$\begin{aligned}&\mathcal{S}_{v_0}(\varepsilon )= \\&\sum _{j=0}^5 \theta (\log |f'(v_0+\varepsilon \frac{\sqrt{3}\text {e}^{ij\frac{\pi }{3}}}{2})| -\log |f'(v_0)|,\, \log |f'(v_0+\varepsilon \frac{\sqrt{3}\text {e}^{i(j+1)\frac{\pi }{3}}}{2})| -\log |f'(v_0)|) \end{aligned}$$

We are interested in the Taylor expansion of \(\mathcal{S}_{v_0}\) in \(\varepsilon \). The symmetry of the lattice T implies that \(\mathcal{S}_{v_0}\) is an even function, so the expansion contains only even powers of \(\varepsilon ^n\). Using a computer algebra program we arrive at

$$\begin{aligned} \mathcal{S}_{v_0}(\varepsilon )= 2\pi + C_{v_0}\varepsilon ^4 +\mathscr {O}(\varepsilon ^6). \end{aligned}$$

Here and below, the notation \(h(\varepsilon )=\mathscr {O}(\varepsilon ^n)\) means that there is a constant \(\mathcal C\), such that \(|h(\varepsilon )|\leqslant \mathcal{C}\varepsilon ^n\) holds for all small enough \(\varepsilon >0\). The constant of the \(\varepsilon ^4\)-term is

$$C_{v_0}= -\frac{3\sqrt{3}}{32} \text {Re}\left( S(f)(v_0) \overline{\left( { \frac{f''}{f'}}\right) '}(v_0)\right) ,$$

where \(S(f)=\left( \frac{f''}{f'}\right) ' -\frac{1}{2} \left( \frac{f''}{f'}\right) ^2\) is the Schwarzian derivative of f. We will not need the exact form of this constant, but only the fact that it is bounded on K.

Analogous results to (10) hold for all triangular lattices \(\varepsilon T\) with edge lengths \(a^\varepsilon =\varepsilon \sin \alpha \), \(b^\varepsilon =\varepsilon \sin \beta \), \(c^\varepsilon =\varepsilon \sin \gamma \), also if the angles are larger than \(\pi /2\). We assume without loss of generality the edge directions being parallel to 1, \(\text {e}^{i\alpha }\) and \(\text {e}^{i(\alpha +\beta )}\). Arguing as above, we consider the function

$$\begin{aligned} \mathcal{S}_{v_0}(\varepsilon ) =&\quad \theta ( 2\log \frac{\sin \alpha }{\sin \gamma } +\log |\frac{f'(v_0+\varepsilon \sin \beta )}{f'(v_0)}|,\, 2\log \frac{\sin \alpha }{\sin \beta }+ \log |\frac{f'(v_0+\varepsilon \sin \gamma \text {e}^{i \alpha })}{f'(v_0)}|) \\&+ \theta ( 2\log \frac{\sin \beta }{\sin \alpha }+ \log |\frac{f'(v_0+\varepsilon \sin \gamma \, \text {e}^{i \alpha })}{f'(v_0)}|, \, 2\log \frac{\sin \beta }{\sin \gamma }+ \log |\frac{f'(v_0+\varepsilon \sin \alpha \, \text {e}^{i (\alpha +\beta )})}{f'(v_0)}|) \\&+ \theta ( 2\log \frac{\sin \gamma }{\sin \beta }+ \log |\frac{f'(v_0+\varepsilon \sin \alpha \, \text {e}^{i (\alpha +\beta )})}{f'(v_0)}|,\, 2\log \frac{\sin \gamma }{\sin \alpha }+\log |\frac{f'(v_0-\varepsilon \sin \beta )}{f'(v_0)}|) \\&+ \theta ( 2\log \frac{\sin \alpha }{\sin \gamma }+ \log |\frac{f'(v_0-\varepsilon \sin \beta )}{f'(v_0)}|, \, 2\log \frac{\sin \alpha }{\sin \beta }+ \log |\frac{f'(v_0-\varepsilon \sin \gamma \, \text {e}^{i \alpha })}{f'(v_0)|}) \\&+ \theta ( 2\log \frac{\sin \beta }{\sin \alpha }+ \log |\frac{f'(v_0-\varepsilon \sin \gamma \, \text {e}^{i \alpha })}{f'(v_0)}|,\, 2\log \frac{\sin \beta }{\sin \gamma }+ \log |\frac{f'(v_0-\varepsilon \sin \alpha \, \text {e}^{i (\alpha +\beta )})}{f'(v_0)}|) \\&+ \theta ( 2\log \frac{\sin \gamma }{\sin \beta }+ \log |\frac{f'(v_0-\varepsilon \sin \alpha \, \text {e}^{i (\alpha +\beta )})}{f'(v_0)}|,\, 2\log \frac{\sin \gamma }{\sin \alpha }+ \log |\frac{f'(v_0+\varepsilon \sin \beta )}{f'(v_0)}|). \end{aligned}$$

Again, \(\mathcal{S}_{v_0}\) is an even function. Using a computer algebra program we arrive at

$$\begin{aligned} \mathcal{S}_{v_0}(\varepsilon )= 2\pi + C_{v_0}\varepsilon ^4 +\mathscr {O}(\varepsilon ^6), \end{aligned}$$

with corresponding constant

$$\begin{aligned}&C_{v_0}= -\frac{\sin \alpha \sin \beta \sin \gamma }{4}\; \text {Re}\left( S(f)(v_0) \overline{\left( \frac{f''}{f'}\right) '}(v_0)\right. \\&\qquad \qquad \qquad \qquad \qquad \left. +c(\alpha ,\beta ,\gamma ) \left( \frac{1}{2}\left( \frac{f''}{f'}\right) ^2 \left( \frac{f''}{f'}\right) ' -\frac{1}{3}\left( \frac{f''}{f'}\right) ''' \right) \right) , \end{aligned}$$

where \(c(\alpha ,\beta ,\gamma )=\cos \beta \sin ^3\beta +\cos \gamma \sin ^3\gamma \text {e}^{2i\alpha } +\cos \alpha \sin ^3\alpha \text {e}^{2i(\alpha +\beta )}\).

Our key observation is that we can control the sign of the \(\mathscr {O}(\varepsilon ^4)\)-term in (10) if we replace \(\log |f'(x)|\) by \(\log |f'(x)|+a\varepsilon ^2|x|^2\), where \(a\in \mathbb {R}\) is some suitable constant. In particular, for positive constants \(M^\pm ,C^\pm \) consider the functions

$$\begin{aligned} w^\pm&= \log |f'| +q^\pm&\text { with } q^\pm (v)&={\left\{ \begin{array}{ll}\pm \varepsilon ^2(M^\pm -C^\pm |v|^2) &{} \text {for }v\in V^\varepsilon _{K,\text {int}}, \\ 0 &{} \text {for }v\in \partial V^\varepsilon _K. \end{array}\right. } \end{aligned}$$

Here and below \(\partial V^\varepsilon _K\) denotes the set of boundary vertices of \(V^\varepsilon _K\).

Then we obtain for equilateral triangulations with edge length \(\frac{\sqrt{3}}{2}\varepsilon \) the following Taylor expansion for all interior vertices \(v_0\in V^\varepsilon _{K,\text {int}}\) whose neighbors are also in \(V^\varepsilon _{K,\text {int}}\):

$$\begin{aligned}&\sum _{j=0}^5 \theta (w^\pm (v_0+\varepsilon \frac{\sqrt{3}}{2} \text {e}^{ij\frac{\pi }{3}}) -w^\pm (v_0), w^\pm (v_0+\varepsilon \frac{\sqrt{3}}{2} \text {e}^{i(j+1)\frac{\pi }{3}}) -w^\pm (v_0)) \nonumber \\&\qquad \qquad \qquad \qquad \qquad = 2\pi + (C_{v_0}\mp \frac{3\sqrt{3}}{2}C^\pm )\varepsilon ^4 +\mathscr {O}(\varepsilon ^5). \end{aligned}$$

Again, analogous results hold for all regular triangular lattices, where the corresponding \(\mathscr {O}(\varepsilon ^4)\)-term then is

$$\begin{aligned} C_{v_0}\mp 4 \sin \alpha \sin \beta \sin \gamma \; C^\pm . \end{aligned}$$

For interior vertices \(v_0\in V^\varepsilon _{K,\text {int}}\) which are incident to k boundary vertices we obtain instead of the right-hand side of (12):

$$ 2\pi \mp k\frac{\sqrt{3}}{4} (M^\pm -C^\pm |v_0|^2)\varepsilon ^2 +\mathscr {O}(\varepsilon ^4). $$

For general triangular lattices we get for every edge \(e={[}v_0,v_j{]}\) which is incident to a boundary vertex \(v_j \in \partial V^{{\varepsilon }}_K\) a term \({\mp } ({M}^{\pm } - {C}^{\pm }{|{v_{0}}|}^2)\cos {\varphi }_{e}\sin \varphi _{e} \varepsilon ^2\) where \({\varphi }_e\) is the angle opposite to the edge e, see Fig. 3.

Fig. 3
figure 3

Two adjacent triangles of the triangular lattice \(\varepsilon T\) and orthogonal edges \(e\in (\varepsilon E)\) (solid) and \(e^*\in (\varepsilon E^{*})\) (dashed)

The following lemma summarizes the main properties of \(w^\pm \) which follow from the definition of \(w^\pm \) together with the preceding estimates.

Lemma 3.1

\(w^\pm \) satisfies the boundary condition \(w^\pm |_{\partial V^\varepsilon _K} = \log |f'| \big |_{\partial V^\varepsilon _K}\).

Furthermore, \(C^\pm >0\) and \(M^\pm >0\) can be chosen such that for all \(\varepsilon \) small enough and all \(v_0\in V^\varepsilon _{K, \text {int}}\):

  1. (i)

    \(q^+(v_0)>0\) and \(q^-(v_0)<0\)

  2. (ii)

    If \(v_1, v_2,\dots , v_6,v_7=v_1\) denote the chain of neighboring vertices of \(v_0\) in cyclic order and \(\lambda (v_a,v_b,v_c)= 2\log (|v_b-v_c|/|v_a-v_b|)\) for any triangle \(\varDelta [v_a,v_b,v_c]\), we have

$$\begin{aligned} \sum _{j=1}^6 \theta (&\lambda (v_0,v_{j+1},v_j) +w^+(v_{j})- w^+(v_0), \lambda (v_0,v_j,v_{j+1}) +w^+(v_{j+1})-w^+(v_0)) < 2\pi ,\\ \sum _{j=1}^6 \theta (&\lambda (v_0,v_{j+1},v_j) +w^-(v_{j})- w^-(v_0),\lambda (v_0,v_j,v_{j+1}) +w^-(v_{j+1})-w^-(v_0)) > 2\pi \end{aligned}$$

The choices of \(C^\pm \) and \(M^\pm \) only depend on f (and its derivatives), K, and on the angles of the triangular lattice T.

In analogy to the continuous case we interpret Eq. (8) as a non-linear Laplace equation for u. In this spirit \(w^+\) may be taken as superharmonic function and \(w^-\) as subharmonic function.

4 Existence of Discrete Conformal PL-Maps and Estimates

The functions \(w^\pm \) have been introduced in order to ‘catch’ the solution \(u^\varepsilon \) in the following compact set:

$$\begin{aligned}&W^\varepsilon =\{u:V^\varepsilon _K\rightarrow \mathbb {R}\ |\ u(v) = \log |f'(v)| \text { for all } v\in \partial V^\varepsilon _K,\\&\qquad \qquad \qquad \qquad \qquad w^-(v)\leqslant u(v)\leqslant w^+(v) \text { for all } v\in V^\varepsilon _{K, \text {int}} \}. \end{aligned}$$

Note that \(W^\varepsilon \) is a n-dimensional interval in \(\mathbb {R}^n\) for \(n=|V^\varepsilon _K|=\) number of vertices, if we identify a function \(u:V^\varepsilon _K\rightarrow \mathbb {R}\) with the vector of its values \(u(v_i)\). Also, for neighboring vertices \(v_i\sim v_j\) and \(u\in W^\varepsilon \) we have \(u(v_j)-u(v_i)=\mathscr {O}(\varepsilon )\). Therefore, \(u\in W^\varepsilon \) satisfies the triangle inequalities (7) if \(\varepsilon \) is small enough.

Our aim is to show that for \(\varepsilon \) small enough there exists a function \(u^\varepsilon \) satisfying conditions (i) and (ii) of Proposition 2.1 and \(u^\varepsilon (v)=\log |f'(v)|\) for all boundary vertices \(v\in \partial V^\varepsilon _K\). This function then defines a discrete conformal PL-map \(f^\varepsilon \) (uniquely if we use the normalization of Theorem 1.2).

Theorem 4.1

Assume that all angles of the triangular lattice T are strictly smaller than \(\pi /2\). There is an \(\varepsilon _0>0\) (depending on f, K and the triangulation parameters) such that for all \(0<\varepsilon <\varepsilon _0\) the minimum of the functional E (see Theorem 2.2) with boundary conditions (2) is attained in \(W^\varepsilon \).

Corollary 4.2

For all \(0<\varepsilon <\varepsilon _0\) there exists a discrete conformal PL-map on \(T^\varepsilon _K\) whose associated scale factors satisfy the boundary conditions (2).

The proof of Theorem 4.1 follows from Lemma 4.4 below. It is based on Theorem 2.2 and on monotonicity estimates of the angle function \(\theta (x,y)\) defined in (6). It is only here where we need the assumption that all angles of the triangular lattice T are strictly smaller than \(\pi /2\).

Lemma 4.3

(Monotonicity lemma) Consider the star of a vertex \(v_0\) of a triangular lattice T and its neighboring vertices \(v_1,\dots , v_6,v_7=v_1\) in cyclic order. Denote \(\lambda _{0,k}:=2\log (|v_{k+1}-v_{k}|/|v_{0}-v_{k}|)\). Assume that all triangles \(\varDelta (v_0,v_k,v_{k+1})\) are strictly acute angled, i.e. all angles \(<\pi /2\).

Then there exists \(\eta _0>0\), depending on the \(\lambda \)s, such that for all \(0\leqslant \eta _1,\dots ,\eta _6\), \(\eta _7=\eta _1<\eta _0\) there holds

$$\sum _{k=1}^6 \theta (\lambda _{0,k}+\eta _{k}, \lambda _{0,k+1}+\eta _{k+1})\geqslant \sum _{k=1}^6 \theta (\lambda _{0,k}, \lambda _{0,k+1}),$$

and for all \(0\geqslant \eta _1,\dots ,\eta _6,\eta _7=\eta _1>-\eta _0\) we have

$$\sum _{k=1}^6 \theta (\lambda _{0,k}+\eta _{k}, \lambda _{0,k+1}+\eta _{k+1})\leqslant \sum _{k=1}^6 \theta (\lambda _{0,k}, \lambda _{0,k+1}).$$


First, consider a single acute angled triangle. Observe that with the notation of Fig. 1b:

$$\begin{aligned} \frac{\partial \beta }{\partial a} = -\frac{1}{a}\cot \gamma . \end{aligned}$$

Thus, we easily deduce that

$$\left. \frac{\partial }{\partial \varepsilon } \theta (2\log (\frac{a}{c})+\varepsilon ,2\log (\frac{a}{b}))\right| _{\varepsilon =0}= \frac{1}{2} \cot \gamma .$$

Now the claim follows by Taylor expansion. \(\square \)

Lemma 4.4

There is an \(\varepsilon _0>0\) such that for all \(0<\varepsilon <\varepsilon _0\) the negative gradient \(-\text {grad}(E)\) on the boundary of \(W^\varepsilon \) points into the interior of \(W^\varepsilon \).


For notational simplicity, set \(u_k=u(v_k)\), \(w_k^\pm =w^\pm (v_k)\) for vertices \(v_k\in V^\varepsilon _K\) and \(\lambda _{a,b,c}=2\log (|v_b-v_c|/|v_a-v_b|)\).

Consider \(\text {grad} (E)\) on a boundary face \(W_i^+=\{u\in W^\varepsilon : u_i=w_i^+\}\) of the n-dimensional interval \(W^\varepsilon \). Let \(v_1,\dots , v_6,v_7=v_1\) denote the neighbors of \(v_i\) in cyclic order. Note that \(w_j^+-w_j^-=\varepsilon ^2(M^++M^--(C^++C^-)|v_j|^2)\) for all vertices \(v_j\). As K is compact we may assume that \(0<\varepsilon _0\) is such that \(w_j^+-w_j^-\,{\leqslant }\, \varepsilon \) for \(0<\varepsilon \,{<}\,\varepsilon _0\). Then using the properties of \(w^+\) and u we obtain from Lemmas 4.3 and 3.1

$$\begin{aligned} \frac{\partial E}{\partial u_i}(u)&= 2\pi - \sum _{j=0}^5 \theta (\lambda _{i,{j+1},j} +\underbrace{u_j- \underbrace{u_i}_{=w_i^+}}_{\leqslant w_j^+-w_i^+} ,\lambda _{i,j,{j+1}} + \underbrace{u_{j+1} -\underbrace{u_i}_{=w_i^+}}_{\leqslant w_{j+1}^+-w_i^+})\\&\geqslant 2\pi - \sum _{j=0}^5 \theta (\lambda _{i,{j+1},j} +w_j^+-w_i^+, \lambda _{i,j,{j+1}} +w_{j+1}^+-w_i^+) \\&> 0. \end{aligned}$$

An analogous estimate holds for boundary faces \(W_i^-\). \(\square \)

We are now ready to deduce our convergence theorem.


(of Theorem 1.2) The existence part follows from Theorem 4.1. The uniqueness is obvious as the translational and rotational freedom of the image of \(f^\varepsilon \) is fixed using values of f.

We now deduce the remaining estimates.

Part (i): Together with the definition of \(w^\pm \), Theorem 4.1 implies that for \(\varepsilon >0\) small enough and all vertices \(v\in V^\varepsilon _K\)

$$\begin{aligned}&-\varepsilon ^2(M^--C^-|v|^2) \\&\qquad \leqslant w^-(v) -\log |f'(v)| \leqslant u^\varepsilon (v)-\log |f'(v)|\leqslant w^+(v) -\log |f'(v)|\\&\qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \leqslant \varepsilon ^2(M^+-C^+|v|^2). \end{aligned}$$

As K is compact, this implies estimate (3).

Part (ii): Given the scale factors \(u^\varepsilon \) associated to the discrete conformal PL-map \(f^\varepsilon \) on \(T^\varepsilon _K\), we can in every image triangle determine the interior angles (using for example (5)). In particular, we begin by deducing from estimate (3) the change of these interior angles of the triangles.

Recall that for acute angled triangles the center of the circumcircle lies in the interior of the triangle. Joining these centers for incident triangles leads to an embedded regular graph \(\varepsilon T^*=(\varepsilon V^*,\varepsilon E^*)\) which is dual to the given triangular lattice \(\varepsilon T\). In particular, the vertices \(\varepsilon V^*\) are identified with the centers of the circumcircles of the triangles of \(\varepsilon T\). Furthermore, each edge \(e^*\in (\varepsilon E^*)\) intersects exactly one edge \(e\in (\varepsilon E)\) orthogonally, so e and \(e^*\) are dual, see Fig. 3. Consider an edge \(e=[v_1,v_2]\in E^\varepsilon _K\) with dual edge \(e^*=[c_1,c_2]\). Their lengths are related by \(|c_2-c_1|= |v_2-v_1|\cot \varphi _e\), where \(\varphi _e\) denotes the angle opposite to e in \(\varepsilon T\). Furthermore we obtain

$$\begin{aligned} \cot \varphi _e(\log |f'(v_2)|-\log |f'(v_1)|)&=\cot \varphi _e\text {Re}((\log f')'(v_1)(v_2-v_1)) +\mathscr {O}(\varepsilon ^2) \nonumber \\&= \cot \varphi _e\text {Im}((\log f')'(v_1)i(v_2-v_1)) +\mathscr {O}(\varepsilon ^2)\nonumber \\&=\text {Im}((\log f')'(v_1)(c_2-c_1)) +\mathscr {O}(\varepsilon ^2) \nonumber \\&=2\text {Im}((\log f')'(v_1)(c_2-v_1)) \nonumber \\&\quad +2\text {Im}((\log f')'(v_1)(v_1-\frac{c_2+c_1}{2})) +\mathscr {O}(\varepsilon ^2) \nonumber \\&= 2\arg f'(c_2)-2\arg f'(\underbrace{\frac{c_2+c_1}{2}}_{=\frac{v_2+v_1}{2}}) +\mathscr {O}(\varepsilon ^2) \end{aligned}$$
$$\begin{aligned}&=2\arg f'(\frac{v_2+v_1}{2}) - 2\arg f'(c_1)+\mathscr {O}(\varepsilon ^2), \end{aligned}$$

where we have chosen the notation such that \((v_2-v_1)i=(c_2-c_1)\tan \varphi _e\).

Now we estimate the change of the angles in a triangle of \(T^\varepsilon _K\) compared with its image triangle under \(f^\varepsilon \). Assume given a triangle \(\varDelta [v_0,v_1,v_2]\) and denote \(e_1=[v_0,v_1]\) and \(e_2=[v_0,v_2]\). Denote the angle at \(v_0\) by \(\theta _0=\theta (\lambda _1,\lambda _2)\), where \(l_{e_{j}}=|v_j-v_0|\) and \(\lambda _j=2\log (|v_1-v_2|/l_{e_{j+1}})\) for \(j=1,2\) and \(e_3=e_1\). Consider the Taylor expansion

$$\theta (\lambda _1 +x_1\varepsilon ,\lambda _2 +x_2\varepsilon )= \theta _0 +\varepsilon ( \frac{\cot \varphi _{e_1}}{2}x_1 +\frac{\cot \varphi _{e_2}}{2}x_2) + \mathscr {O}(\varepsilon ^2).$$

We apply this estimate for the bounded terms

$$x_j= \frac{u^\varepsilon (v_j)-u^\varepsilon (v_0)}{\varepsilon } = \frac{\log |f'(v_j)|-\log |f'(v_0)|}{\varepsilon } +\mathscr {O}(\varepsilon )$$

for \(j=1,2\). Denote by \(\delta +\theta _0\in (0,\pi )\) the angle at the image point of \(v_0\) in the image triangle \(f^\varepsilon (\varDelta [v_0,v_1,v_2])\). Then by (13) and (14) the change of angle \(\delta \) is given by

$$\begin{aligned} \delta = \arg f'(\frac{v_2+v_0}{2})-\arg f'(\frac{v_0+v_1}{2}) + \mathscr {O}(\varepsilon ^2) \end{aligned}$$

This local change of angles is related to the angle \(\psi ^\varepsilon (e)\) by which each edge e of \(T^\varepsilon _K\) has to be rotated to obtain the corresponding image edge \(f^\varepsilon (e)\) (or, more precisely, a parallel edge). The function \(\psi ^\varepsilon \) may be defined globally on \(E^\varepsilon _K\) such that in the above notation the change of the angle at \(v_0\) is given as \(\delta = \psi ^\varepsilon (e_2)-\psi ^\varepsilon (e_1) \in (-\pi ,\pi )\). We fix the value of \(\psi ^\varepsilon \), that is the rotational freedom of the image of \(T^\varepsilon _K\) under \(f^\varepsilon \) at the edge \(e_0\) according to \(\arg f'\), see Theorem 1.2. Then we take shortest simple paths and deduce from (15) that each edge \(e=[v_j,v_{j+1}]\in E^\varepsilon _K\) is rotated counterclockwise by

$$\psi ^\varepsilon (e)= \arg f'(\frac{v_j+v_{j+1}}{2}) + \mathscr {O}(\varepsilon ).$$

This implies together with (3) that for all edges \(e=[v_j,v_{j+1}]\in E^\varepsilon _K\) we have uniformly

$$\begin{aligned} \log f'(\frac{v_j+v_{j+1}}{2}) - \frac{u^\varepsilon (v_j)+u^\varepsilon (v_{j+1})}{2} -i\psi ^\varepsilon (e)=\mathscr {O}(\varepsilon ). \end{aligned}$$

Therefore the difference of the smooth and discrete conformal maps at vertices \(v_0\in V^\varepsilon _K\) satisfies uniformly

$$\begin{aligned} f(v_0)-f^\varepsilon (v_0)= O(\varepsilon ) \end{aligned}$$

by suitable integration along shortest simple paths from the reference point as above. This estimate then also holds for all points in the support of \(T^\varepsilon _K\) and \(\varepsilon \rightarrow 0\).

Part (iii): As last step we consider the derivatives of \(f^\varepsilon \) restricted to a triangle.

Assume given a triangle \(\varDelta [v_0,v_1,v_2]\) in \(T^\varepsilon _K\). As \(f^\varepsilon \) is piecewise linear its restriction to \(\varDelta =\varDelta [v_0,v_1,v_2]\) is the restriction of an \(\mathbb {R}\)-linear map \(L_\varDelta \). This map can be written for \(z\in \mathbb C\) as

$$\begin{aligned} L_\varDelta (z)= f^\varepsilon (v_0) + a\cdot (z-v_0) +b\cdot \overline{(z-v_0)}, \end{aligned}$$

where the constants \(a,b\in \mathbb C\) are determined from the conditions \(L_\varDelta (v_j)= f^\varepsilon (v_j)\) for \(j=0,1,2\). Straightforward calculation gives

$$\begin{aligned} \partial _z L_\varDelta&= a= \frac{(f^\varepsilon (v_2)-f^\varepsilon (v_0)) \overline{(v_1-v_0)} -(f^\varepsilon (v_1)-f^\varepsilon (v_0)) \overline{(v_2-v_0)}}{\overline{(v_1-v_0)}(v_2-v_0) -(v_1-v_0)\overline{(v_2-v_0)}} \\ \partial _{\bar{z}} L_\varDelta&= b= \frac{(f^\varepsilon (v_2)-f^\varepsilon (v_0))(v_1-v_0) -(f^\varepsilon (v_1)-f^\varepsilon (v_0))(v_2-v_0)}{\overline{(v_1-v_0)}(v_2-v_0) -(v_1-v_0)\overline{(v_2-v_0)}}. \end{aligned}$$

Note that by definition of \(f^\varepsilon \) and \(\psi ^\varepsilon \) we know that

$$f^\varepsilon (v_j)-f^\varepsilon (v_0)= (v_j-v_0)\text {e}^{(u^\varepsilon (v_j)+u^\varepsilon (v_0))/2 +i\psi ^\varepsilon ([v_j,v_0])},$$

where we use the rotation function \(\psi ^\varepsilon \) on the edges as defined in the previous part (ii) of the proof. Now (16) together with the above expressions of a and b immediately implies the desired estimates

$$ \partial _z f^\varepsilon |_\varDelta (z)=\partial _z L_\varDelta (z) =f'(z)+\mathscr {O}(\varepsilon ) \quad \text {and}\quad \partial _{\bar{z}} f^\varepsilon |_\varDelta (z)= \partial _{\bar{z}} L_\varDelta (z)= \mathscr {O}(\varepsilon ). $$

uniformly on the triangle \(\varDelta =\varDelta [v_0,v_1,v_2]\). Also, the constants in the estimate do not depend on the choice of the triangle. This finishes the proof. \(\square \)

Remark 4.5

Theorem 1.2 focuses on a particular way to approximate a given conformal map f by a sequence of discrete conformal PL-maps. Namely, we consider corresponding smooth and discrete Dirichlet boundary value problems and compare the solutions. There is of course a corresponding problem for Neumann boundary conditions, i.e. prescribing angle sums of the triangles at boundary vertices using \(\arg f'\). Also, there is a corresponding variational description for conformally equivalent triangle meshes or discrete conformal PL-maps in terms of angles, see [1]. But unfortunately, the presented methods for a convergence proof seem not to generalize in a straightforward manner to this case, as the order of the corresponding Taylor expansion is lower .