• PDF
• Cite
• Share
Article Contents  Article Contents

# A Comparison of some numerical conformal mapping methods for simply and multiply connected domains

• * Corresponding author: T. K. DeLillo
• This paper compares some methods for computing conformal maps from simply and multiply connected domains bounded by circles to target domains bounded by smooth curves and curves with corners. We discuss the use of explicit preliminary maps, including the osculation method of Grassmann, to first conformally map the target domain to a more nearly circular domain. The Fourier series method due to Fornberg and its generalization to multiply connected domains are then applied to compute the maps to the nearly circular domains. The final map is represented as a composition of the Fourier/Laurent series with the inverted explicit preliminary maps. A method for systematically removing corners with power maps is also implemented and composed with the Fornberg maps. The use of explict maps has been suggested often in the past, but has rarely been carefully studied, especially for the multiply connected case. Using Fourier series to represent conformal maps from domains bounded by circles to more general domains has certain computational advantages, such as the use of fast methods. However, if the target domain has elongated sections or corners, the mapping problems can suffer from severe ill-conditioning or loss of accuracy. The purpose of this paper is to illustrate some of these practical possibilites and limitations.

Mathematics Subject Classification: Primary: 30C30, 65E05.

 Citation: • • Figure 1.  The composition $f = g^{-1}\circ h$ of Fornberg map $h$ using $N = 256$ Fourier points from unit disk to the near circle $g(\Gamma)$ (left), where $\Gamma$ is the inverted ellipse with $\alpha = 0.2$ (right), produced with composition of 10 Grassmann maps $g = g_{10}\circ \cdots g_2\circ g_1$.

Figure 24.  Fornberg is composed with corner smoothing maps to the exterior of $m = 3$ rectangles with $N = 128$ and $Ns = 50$ points per side.

Figure 2.  Fornberg maps to inverted ellipses with $\alpha = 0.8, 0.4, 0.2, 0.1$ and $N = 64,128,256,256$, resp..

Figure 3.  Errors for Fornberg maps to inverted ellipse with analytic boundary.

Figure 11.  Errors for Grassmann maps to inverted ellipse $Ns = 2000$.

Figure 13.  Inverted ellipse $\alpha = 0.2$ with $igm = 10$ and $Ns = 400$: distribution of $N = 256$ Fourier points.

Figure 12.  Errors for 10 Grassmann maps to inverted ellipse with $\alpha = 0.2$ and various numbers of splines points $Ns$ demonstrating that errors can be made smaller by increasing both $N$ and $Ns$. Note for fixed $Ns$ the minimum achievable error is fixed for a given domain.

Figure 4.  Ill-conditioned map: $\alpha = 0.3$ ellipse using $N = 2048$ with standard initial guess. $Ns = 2000$ spline points were used, but an analytic parametrization yields similar results. 11 Newton iteration gives an error in the successive iterates of 0 to machine precision. With $N = 1024$, small oscillations can be seen near $\pm 1$. Results with two crescent maps are slightly worse.

Figure 15.  Ill-conditioned map: $\alpha = 0.2$ ellipse using $N = 32,768$ with standard initial guess. $Ns = 4000$ spline points were used, but analytic parametrization yields similar results. 6 Newton iteration gives error in successive iterates of $1.0\cdot 10^{-4}$. Note the poor resolution near $\pm 1$.

Figure 16.  The map to an ellipse with $\alpha = 0.2$ is computed by the Fornberg map to near circle composed with 2 inverted crescent maps, $N = 32,768$. $Ns = 4000$ spline knots were used.

Figure 5.  Fornberg map to a curve with defined by $Ns = 100$ spline points using $N = 256$.

Figure 6.  One crescent map applied to an ellipse with $\alpha = 0.75$. The 'X's on the left figure mark the centers of the unit and tangent circles.

Figure 7.  One crescent map applied to an inverted ellipse with $\alpha = 0.52$.

Figure 8.  Steps for one Koebe map applied to an inverted ellipse with $\alpha = 0.48$. Note that the circle tangent to the boundary at the point nearest the origin does not intersect the unit circle, so that the crescent map cannot be applied. The square root is taken at the origin slightly off of the boundary curve, so that the curve remains smooth.

Figure 9.  Iterations 1, 3, and 6 of Grassmann maps applied to an inverted ellipse with $\alpha = 0.2$; see Table 3.

Figure 10.  Inverted ellipse $\alpha = 0.2$ with $igm = 10$ and $Ns = 400$.

Figure 14.  Fornberg map for ellipse $\alpha = 0.6, N = 256$ with two preliminary crescent maps to near circle.

Figure 17.  The steps for smoothing a corner: The domain is placed slightly inside of the unit disk and each corner is successively rotated to the negative real axis and mapped to the origin with a Möbius map of the disk taking the corner to the origin. The corner is smoothed with a power map, and the origin is mapped back to the negative real axis.

Figure 18.  Inverses of corner smoothing maps composed with Fornberg's map for a square.

Figure 19.  Sequence of maps from the unit disk to smoothed domain to a square $N = 1024$ for Fornberg's method and $Ns = 200$ points per side.

Figure 20.  Sequence of maps from the unit disk to a smoothed domain to a polygon with $N = 1024$ for Fornberg's method.

Figure 21.  Sequence of maps from the unit disk to a smoothed domain to a crescent with $N = 256$ for Fornberg's method. The exact map to the crescent is known The error using Fornberg's method is between $10^{-4}$ to about $1.5\cdot 10^{-2}$ near the prevertices and changes very little with increased $N$ and $Ns$.

Figure 22.  Fornberg composed with Grassmann maps for exterior of $m = 4$ curves -3 inverted ellipses and an ellipse with $N = 128, igm = 8, Ns = 200$. The Fornberg map directly to the domain did not converge.

Figure 23.  This domain is the same as the domain above, except that the thin ellipse and inverted ellipse are changed from $\alpha = 0.2$ to $\alpha = 0.4.$ Both the Fornberg map directly to the domain and composed with preliminary Grassmann maps converged for this case with $N = 128, Ns = 200, igm = 0$ or $8$.

Figure 26.  Joukowski map and $k^{-1}\circ h$.

Figure 28.  Streamlines for potential flow over two cosine airfoils with using the Karman-Trefftz transformation $k, k^{-1}\circ h$, composed with the extension of Fornberg's method for connectivity 2 and $N = 128$. Circulation is computed so that the Kutta condition is satisfied at the trailing edges.

Figure 25.  Joukowski airfoil smoothed by Karman-Trefftz map.

Figure 27.  Error for Joukowski map and $k^{-1}\circ h$.

Figure 29.  The map from the interior of the unit disk (left) with two circular holes to the interior of a diamond (right) with two elliptical holes by smoothing corners on the diamond and using $N = 256$ Fourier points for the map to the smooth region (middle).

Table 4.  The calculated error of the Koebe-like corner-removing method compared with the exact map to the square given by SC Toolbox for several values of $N$ for the Fornberg map.

 N Error 64 .1497 128 .0697 256 .0246 512 .007 1024 .0019

Table 1.  Convergence of successive iteration errors at the Fourier points for the map to an inverted ellipse with $\alpha = 0.2$ and $N = 128$. Note that the discrete problem is solved to machine precision but the truncation error is limited by $N$.

 Iteration $\Vert S^{k+1}-S^k\Vert_{\infty}$ $\Vert f_{computed} - f_{exact}\Vert_{\infty}$ 1 6.0e-01 6.6e-01 2 3.3e-01 3.3e-01 3 7.0e-02 6.9e-02 4 2.6e-03 2.6e-03 5 4.0e-06 4.9e-06 6 4.2e-11 1.2e-06 7 0.0e+00 1.2e-06 8 0.0e+00 1.2e-06

Table 5.  Convergence of successive Newton-iteration errors $\Vert S^{i+1}-S^i\Vert_{\infty}$ at the Fourier points for the Fourier series map to the the near-circular region of connectivity $m = 4$ in Figure 22 for $N = 128,256$. Note that the convergence rate is nearly independent of $N$. (The number of conjugate gradient iterations to solve the inner linear systems was fixed at 30.)

 Newton iterations $N=128$ $N=256$ 1 1.6e+00 3.3e+00 2 7.5e-01 1.5e-00 3 1.3e-02 2.5e-02 4 5.5e-04 1.5e-03 5 5.6e-06 5.7e-06 6 3.7e-08 1.5e-08 7 3.4e-10 2.6e-11 8 2.2e-12 1.0e-13 9 3.1e-14 5.6e-14 10 1.8e-14 2.7e-14

Table 2.  Comparison of errors and approximate timings in seconds on a laptop using MATLAB for cubic spline and trigonometric interpolation for the inverted ellipse with $igm = 10$ preliminary Grassmann maps and 10 Newton iterations for Fornberg's method. Interpolation is needed to provide a good initial guess for the trig interpolation parameter.

 trig interp spline interp $\alpha$ Ns N error time error time 0.4 2000 256 1.2e-04 0.37 1.2e-04 0.06 2000 512 5.5e-06 0.89 5.5e-06 0.07 2000 1024 2.3e-08 1.26 1.5e-07 0.07 2000 2048 1.3e-09 2.59 2.3e-07 0.08 2000 4096 1.3e-09 4.69 2.3e-07 0.11 4096 4096 6.9e-14 10.09 9.4e-09 0.13 0.2 2000 256 1.0e-04 0.43 1.0e-04 0.07 2000 512 2.0e-06 0.84 1.7e-06 0.08 2000 1024 1.5e-06 1.25 6.0e-07 0.08 2000 2048 1.3e-06 2.55 5.7e-07 0.09 2000 4096 1.2e-06 4.48 5.7e-07 0.12 4096 4096 3.4e-09 12.60 3.4e-08 0.16 0.1 2000 256 2.4e-03 0.39 2.5e-03 0.07 2000 512 2.3e-04 0.74 2.3e-04 0.08 2000 1024 7.2e-05 1.49 4.4e-06 0.08 2000 2048 7.9e-05 2.77 1.3e-06 0.09 2000 4096 6.6e-05 5.46 1.3e-06 0.15 4096 4096 7.9e-06 10.13 3.6e-07 0.16

Table 3.  Convergence of the Grassmann maps (ig) for inverted ellipses, $\alpha = 0.8, 0.4, 0.2, 0.1$, ig = c = circle (crescent)map, ig = k = Koebe map. Note the fast initial convergence, but slow asymptotic convergence. Here $Ns = 400$ and $\gamma = 0.9$.

 ig $\alpha$ ig $\alpha$ ig $\alpha$ ig $\alpha$ 0 .800 0 .400 0 .200 0 .100 c .804 k .416 k .239 k .150 c .950 k .571 k .449 k .361 c .594 k .464 k .388 c .770 k .535 k .484 c .775 c .563 c .528 c .912 c .717 c .704 c .912 c .725 c .713 c .961 c .885 c .917 c .962 c .886 c .918 c .968 c .957 c .960

Table 6.  Some typical sample timings for map to regions in Figure 22 with $m = 4$. The number of Newton iterations are fixed at 10 and the number of conjugate gradient iterations are fixed at 30. For $m = 2$, we map to the exterior of the upper and right inverted ellipses in Figure 22. We use $igm = 8$ Grassmann maps, but times are similar with no preliminary maps. The dominant operation count is the $O((mN)^2)$ matrix-vector multiplication for solving the conjugate gradient solution for the inner linear systems for the Fornberg map.

 Ns N time (m=4) time (m=2) 200 128 1.45 0.77 200 256 3.65 1.64 200 512 15.92 3.36 400 128 1.71 0.73 400 256 3.54 1.11 400 512 15.66 3.28 800 128 1.56 0.81 800 256 3.62 1.16 800 512 15.73 3.30

Table 7.  Convergence of successive Newton-iteration errors $\Vert S^{i+1}-S^i\Vert_{\infty}$ at the Fourier points for the Fourier series map to the the near-circular regions for examples with corners in Figures 24, 26, and 28.

 Newton iterations 3 rectangles $N=128, Ns=201$ Joukowski airfoil $N=256, Ns=101$ Two cosine airfoils $N=128, Ns=101$ 1 2.3e+01 1.0e+00 3.4e+00 2 2.3e+01 3.0e-01 3.0e-01 3 3.1e+00 2.3e-02 3.0e-03 4 1.0e+00 1.2e-04 1.6e-05 5 5.2e-01 2.1e-09 3.4e-08 6 6.4e-02 5.4e-10 1.1e-10 7 6.9e-03 5.4e-10 3.3e-13 8 1.2e-04 5.4e-10 1.7e-15 9 1.9e-06 5.4e-10 4.1e-15 10 4.0e-08 5.4e-10 9.7e-15 11 6.2e-10 12 1.3e-11 13 1.8e-13 14 1.6e-14
• Figures(29)

Tables(7)

## Article Metrics  DownLoad:  Full-Size Img  PowerPoint