Schwarz-Christoffel Mapping
本笔记不全,跳过了部分内容,并持续更新~
Chapter 1: Introduction
1.1 The Schwarz-Christoffel Idea
Schwarz-Christoffel变换背后的想法是,任何共形映射(conformal mapping) f f f都有导数: f ′ = ∏ f k f'=\prod f_k f′=∏fk,其中 f k f_k fk是一系列典型(canonical)函数。这个公式的重要性在于辐角 arg f ′ = ∑ arg f k \arg f'=\sum\arg f_k argf′=∑argfk。在classical变换中,所有 arg f k \arg f_k argfk都设计为一个阶跃函数,所以 arg f ′ \arg f' argf′是一个带有特定阶跃的分段常数(如 f f f将实轴映射到多边形上)。设 P P P为多边形 Γ \Gamma Γ包围的复平面,顶点为 w 1 , ⋯   , w n w_1,\cdots,w_n w1,⋯,wn,内角为 α 1 π , ⋯   , α n π \alpha_1\pi, \cdots, \alpha_n\pi α1π,⋯,αnπ,其中 α k ∈ ( 0 , 2 ) \alpha_k\in(0,2) αk∈(0,2)。设共形映射 f f f将上半平面 H + H^+ H+映射到 P P P上,并设 z k = f − 1 ( w k ) z_k=f^{-1}(w_k) zk=f−1(wk)是第 k k k个prevertex。我们可以不失一般性地假设 z n = ∞ z_n=\infin zn=∞,即实轴上的无穷映射到多边形最后一个顶点上,因为即使 ∞ \infin ∞还不是prevertex,我们也可以将其image设为一个新的内角为 π \pi π的顶点。其余的prevertices z 1 , ⋯   , z n − 1 z_1,\cdots,z_{n-1} z1,⋯,zn−1都是真的。
在线段 ( z k , z k + 1 ) (z_k,z_{k+1}) (zk,zk+1)之间, f f f是分析连续的,即 f ′ f' f′存在,且 arg f ′ \arg f' argf′是常数并在 z k z_k zk处有阶跃,即 [ arg f ′ ( z ) ] z k − z k + = ( 1 − α k ) π = β k π [\arg f'(z)]_{z_k^-}^{z_k^+}=(1-\alpha_k)\pi=\beta_k\pi [argf′(z)]zk−zk+=(1−αk)π=βkπ,其中 β k π \beta_k\pi βkπ是在第k个顶点处的转角。我们可以根据以上条件设定函数 f k = ( z − z k ) − β k f_k=(z-z_k)^{-\beta_k} fk=(z−zk)−βk。下图示意了实轴经过 f k f_k fk映射的结果。
定理1.1: 设P是多边形 Γ \Gamma Γ的内部,顶点为 w 1 , ⋯   , w n w_1,\cdots,w_n w1,⋯,wn(逆时针),内角为 α 1 π , ⋯   , α n π \alpha_1\pi, \cdots, \alpha_n\pi α1π,⋯,αnπ,定义 f f f是将上半平面 H + H_+ H+变换到 P P P的任意共形映射,且 f ( ∞ ) = w n f(\infin)=w_n f(∞)=wn,则 f ( z ) = A + C ∫ z ∏ k = 1 n − 1 ( ζ − z k ) a k − 1 d ζ f(z)=A+C\int^z\prod_{k=1}^{n-1}(\zeta-z_k)^{a_k-1} d \zeta f(z)=A+C∫zk=1∏n−1(ζ−zk)ak−1dζ其中 A , C A,C A,C都是复常数,且对于 k = 1 , ⋯   , n − 1 k=1, \cdots ,n-1 k=1,⋯,n−1都有 w k = f ( z k ) w_k=f(z_k) wk=f(zk)。
以上公式可以用于映射不同的区域(如单位圆)、有branch points的区域、多连通区域、边界为圆弧的区域、甚至是边界分段解析的区域,在第四章中说明。
问题来了:我们不知道prevertices z k z_k zk是多少,那也就没法用定理1.1计算映射。从定理中可以发现,无论 z k z_k zk是多少,多边形的内角都是不变的,这由 a k a_k ak决定。也就是说,如果 z k z_k zk选的不好,映射出来的多边形只是内角与目标多边形相同,而边长不同。 z k z_k zk的确定称为Schwarz-Christoffel parameter problem,并且需要在使用SC方程之前求解。具体求解方法在第二章中讲述。
在应用中, z k z_k zk非线性地取决于多边形的边长,没有解析解,因此经常使用数值计算来计算定理1.1中的积分。数值问题在第三章中讨论。
1.2 历史
共形映射起源于19世纪。黎曼在1851年提出了黎曼映射定理,说复平面上任何单连通区域,只要不是整个复平面,就可以互相进行共形映射。Schwarz-Christoffel公式随后提出。
Christoffel在1867年于ETH Zurich发表了第一篇关于SC公式的论文,发现了在多边形域内,格林方程可以通过对半平面进行共形映射获得。随后他扩展到多边形外部与曲线区域。
Schwarz与1869年独立提出相同的理论,但侧重于数值和特定情境,如三角形;他甚至发表了首个SC映射的plot。论文中还包含了他的著名的反射原理:如果一个解析函数 f f f被连续扩展到一个直线或圆弧边界,并将边界弧映射到另一个直线或者圆弧上,则 f f f可以被解析地continued across the arc by reflection。
在SC公式发现的130年后,它在理论复分析中产生了巨大影响,用于证明黎曼映射定理与其推论。在计算机发明以后,SC公式用于具体应用。
在20世纪下半夜,有很多关于算法和程序的工作,但质量不高、综合性不强;很多重要问题都被忽视,如SC积分的快速计算,还有在解参数问题时prevertices的顺序。最综合的程序应当是Trefethen在1980年写的SCPACK和Driscoll在1996年发布的SC Toolbox。
Chapter 2: Essentials of Schwarz-Christoffel mapping
2.1 多边形
定义多边形 Γ \Gamma Γ,顶点为 w 1 , ⋯   , w n w_1,\cdots,w_n w1,⋯,wn(逆时针),内角为 α 1 π , ⋯   , α n π \alpha_1\pi, \cdots, \alpha_n\pi α1π,⋯,αnπ,并扩展定义 w n + 1 = w 1 w_{n+1}=w_1 wn+1=w1与 w 0 = w n w_0=w_n w0=wn。
内角 α k \alpha_k αk的定义是从 w k w_k wk的incoming边到outgoing边的扫过的角度。如果 ∣ w k ∣ < ∞ |w_k|<\infin ∣wk∣<∞,则 α k ∈ ( 0 , 2 ] \alpha_k\in(0,2] αk∈(0,2]。如果 α k = 2 \alpha_k=2 αk=2,则两边重合, w k w_k wk是这个裂缝(slit)的尖尖。如果 w k = ∞ w_k=\infin wk=∞,则 α k ∈ [ − 2 , 0 ] \alpha_k\in[-2,0] αk∈[−2,0]。如果 w k w_k wk与其相邻顶点都是有限的,则指定 α k \alpha_k αk是冗余的,但如果不是,则就需要确定 α k \alpha_k αk来保证多边形唯一。
同时要求外角和为 2 π 2\pi 2π,即 ∑ k = 1 n α k = n − 2 \sum_{k=1}^n\alpha_k=n-2 ∑k=1nαk