discrete conformal maps - tu berlin
TRANSCRIPT
![Page 1: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/1.jpg)
Discrete Riemann Surfaces
Introduction
Discrete Conformal Maps
period matrices and all that
Alexander Bobenko1, Christian Mercat2,Markus Schmies1
1 Technische Universitat Berlin (FZT 86, F5),2 Institut de Mathematiques et de Modelisation de
Montpellier (I3M, UM2)
Discrete Differential Geometry 07
![Page 2: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/2.jpg)
Discrete Riemann Surfaces
Introduction
Peter Schroder & al., CalTech
Global parametrization sending little circles to circles. Riemanntheorem mapping a topological disk to the unit disk or with freeboundaries (see M. Desbrun & al. or C. Gotsman & M. Ben-Chen)
![Page 3: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/3.jpg)
Discrete Riemann Surfaces
Introduction
X. Gu & S.-T. Yau, Harvard Uni.
Surface interpolation (especially staying isometric). Texturemapping. Surface matching. Remeshing, coarsening, refining.
![Page 4: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/4.jpg)
Discrete Riemann Surfaces
Introduction
Monica K. Hurdal & al., Florida State UniversityCommonly parametrize different surfaces
to compare functions on them.
![Page 5: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/5.jpg)
Discrete Riemann Surfaces
Introduction
Tony Chan, UCLA
Whether preserving little circles (see K. Stephenson) or preservinglittle squares.
![Page 6: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/6.jpg)
Discrete Riemann Surfaces
Introduction
Linear and quadratic conformality
f is conformal ⇒ f (z) =
az + b + o(z),az + bcz + d + o(z2).
Two notions on a “quad-graph”:– Preserve the diagonal ratio (linear),– or preserve the cross-ratio (Mobius invariant).
y ′
x ′
y
x
Diagonals ratio:y ′ − y
x ′ − x= i ρ
y ′ − x ′
x ′ − y
y − x
x − y ′= q
Crossratio:
![Page 7: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/7.jpg)
Discrete Riemann Surfaces
Introduction
Linear and quadratic conformality
f is conformal ⇒ f (z) =
az + b + o(z),az + bcz + d + o(z2).
Two notions on a “quad-graph”:– Preserve the diagonal ratio (linear),– or preserve the cross-ratio (Mobius invariant).
y ′
x ′
y
x
Diagonals ratio:y ′ − y
x ′ − x= i ρ =
f (y ′)− f (y)
f (x ′)− f (x)
y ′ − x ′
x ′ − y
y − x
x − y ′= q
Crossratio:
![Page 8: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/8.jpg)
Discrete Riemann Surfaces
Introduction
Linear and quadratic conformality
f is conformal ⇒ f (z) =
az + b + o(z),az + bcz + d + o(z2).
Two notions on a “quad-graph”:– Preserve the diagonal ratio (linear),– or preserve the cross-ratio (Mobius invariant).
y ′
x ′
y
x
Diagonals ratio:y ′ − y
x ′ − x= i ρ
y ′ − x ′
x ′ − y
y − x
x − y ′= q
Crossratio:
=f (y ′)− f (x ′)f (x ′)− f (y)
f (y)− f (x)
f (x)− f (y ′)
![Page 9: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/9.jpg)
Discrete Riemann Surfaces
Introduction
Circle patterns
Circle patterns are a particular case
−→
x
y
y ′
x ′θ θ′
ρ =cos(θ−θ′)−cos(ϕ)
sin(ϕ)
ϕ
ϕq = e−2(θ+θ′)
= e−2ϕ
![Page 10: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/10.jpg)
Discrete Riemann Surfaces
Introduction
Hirota System
A function F preserving the cross-ratio can be written in termsof a function f such that
F (y)− F (x) = f (x) f (y) (y − x) = “F ′(z) dz”.
fulfilling on the face (x , y , x ′, y ′),y ′
x ′
y
x
∮F ′(z) dz = f (x) f (y) (y − x) + f (y) f (x ′) (x ′ − y) +
f (x ′) f (y ′) (y ′ − x ′) + f (y ′) f (x) (x − y ′) = 0
Circle patterns case: F (y)− F (x) = r(x) e i θ(y) (y − x).
![Page 11: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/11.jpg)
Discrete Riemann Surfaces
Introduction
Morera equationH
F ′(z) dz = 0
Understood as Morera equations where function integration is
I the geometric mean for cross-ratio preserving maps
∫
(x ,y)g dZ :=
√g(x) g(y) (y − x).
I the arithmetic mean for diagonal ratio preserving maps
∫
(x ,y)g dZ :=
g(x) + g(y)
2(y − x).
![Page 12: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/12.jpg)
Discrete Riemann Surfaces
Introduction
From quadratic to linear
When the quadratic case is linearized:
![Page 13: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/13.jpg)
Discrete Riemann Surfaces
Introduction
From quadratic to linear
Circle patterns preserve circles and intersection angles. Linearmaps preserve the shape of dual/primal polygons, the derivativef ′(z) locally inflates and turns each polygon, the Morera equation∮
f ′(z) dZ = 0 insures that they fit together. Compare with thecontinuous case: http://ens.math.univ-montp2.fr/SPIP/-Deformer-par-une-application-
z 7→ z3
![Page 14: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/14.jpg)
Discrete Riemann Surfaces
Linear theory
de Rham Cohomology
2. Face dual to a vertex.1. Dual edges.0. Vertex dual to a face.
e∗F∗e
v1
v2
v
vn
The double Λ = Γ⊕ Γ∗
The chains-complex C (Λ) = C0(Λ)⊕ C1(Λ)⊕ C2(Λ)linear combination of vertices (0), edges (1) and faces (2).boundary operator ∂ : Ck(Λ)→ Ck−1(Λ)Null on vertices, ∂2 = 0.Its kernel ker ∂ =: Z•(Λ) are the closed chains or cycles.Its image are the exact chains.
![Page 15: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/15.jpg)
Discrete Riemann Surfaces
Linear theory
de Rham Cohomology
The space dual to chains form the cochains,C k(Λ) := Hom(Ck(Λ),C).Evaluation is denoted f (x),
∫(x ,x ′) α,
∫∫F ω.
The coboundary is dual to the boundary. d : C k(Λ)→ C k+1(Λ),defined by Stokes formula
∫
(x ,x ′)
df := f(∂(x , x ′)
)= f (x ′)− f (x),
∫∫
F
dα :=
∮
∂F
α.
A cocycle is a closed cochain α ∈ Z k(Λ).
![Page 16: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/16.jpg)
Discrete Riemann Surfaces
Linear theory
Metric, Hodge operator, Laplacian
Scalar product weighted by ρ
ρ(x ,x ′) = −i y ′−yx ′−x
y ′
xx ′
y
(α, β) := 12
∑
e∈Λ1
ρ(e)
(∫
eα
)(∫
eβ
). (1)
![Page 17: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/17.jpg)
Discrete Riemann Surfaces
Linear theory
Metric, Hodge operator, Laplacian
A Hodge operator ∗
∗ : C k(Λ) → C 2−k(Λ)
C 0(Λ) 3 f 7→ ∗f :
∫∫
F∗f := f (F ∗),
C 1(Λ) 3 α 7→ ∗α :
∫
e∗α := −ρ(e∗)
∫
e∗α, (2)
C 2(Λ) 3 ω 7→ ∗ω : (∗ω)(x) :=
∫∫
x∗ω.
Verifies ∗2 = (−IdC k )k .The discrete laplacian ∆ = ∆Γ ⊕∆Γ∗ := −d ∗ d ∗ − ∗ d ∗ d :
(∆(f )) (x) =V∑
k=1
ρ(x , xk) (f (x)− f (xk)) .
Its kernel are the harmonic forms.
![Page 18: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/18.jpg)
Discrete Riemann Surfaces
Linear theory
Holomorphic forms
α ∈ C 1(Λ) is conformal iff dα = 0 and ∗ α = −iα, (3)
π(1,0) =1
2(Id + i ∗) π(0,1) =
1
2(Id− i ∗)
d ′ := π(1,0)d : C 0(Λ)→ C 1(Λ), d ′ := dπ(1,0) : C 1(Λ)→ C 2(Λ)
f ∈ Ω0(Λ) iff d ′(f ) = 0.
− ∗ d ∗ = d∗ the adjoint of the coboundary
C k(Λ) = Im d ⊕⊥ Im d∗ ⊕⊥ Ker ∆,
Ker ∆ = Ker d ∩ Ker d∗ = Ker d ′ ⊕⊥ Ker d ′′.
![Page 19: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/19.jpg)
Discrete Riemann Surfaces
Linear theory
External Product
∧ : C k(♦)× C l(♦)→ C k+l(♦) s.t. (α, β) =
∫∫α ∧ ∗β
For f , g ∈ C 0(♦), α, β ∈ C 1(♦) et ω ∈ C 2(♦):
(f · g)(x) :=f (x) · g(x) for x ∈ ♦0,∫
(x ,y)
f · α :=f (x) + f (y)
2
∫
(x ,y)
α for (x , y) ∈ ♦1,
∫∫
(x1,x2,x3,x4)
α ∧ β :=14
4∑
k=1
∫
(xk−1,xk )
α
∫
(xk ,xk+1)
β −∫
(xk+1,xk )
α
∫
(xk ,xk−1)
β,
∫∫
(x1,x2,x3,x4)
f · ω :=f (x1)+f (x2)+f (x3)+f (x4)
4
∫∫
(x1,x2,x3,x4)
ω
for (x1, x2, x3, x4) ∈ ♦2.
![Page 20: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/20.jpg)
Discrete Riemann Surfaces
Linear theory
External Product
∧ : C k(♦)× C l(♦)→ C k+l(♦) s.t. (α, β) =
∫∫α ∧ ∗β
For f , g ∈ C 0(♦), α, β ∈ C 1(♦) et ω ∈ C 2(♦):
(f · g)(x) :=f (x) · g(x) for x ∈ ♦0,∫
(x ,y)
f · α :=f (x) + f (y)
2
∫
(x ,y)
α for (x , y) ∈ ♦1,
∫∫
(x1,x2,x3,x4)
α ∧ β :=14
4∑
k=1
∫
(xk−1,xk )
α
∫
(xk ,xk+1)
β −∫
(xk+1,xk )
α
∫
(xk ,xk−1)
β,
∫∫
(x1,x2,x3,x4)
f · ω :=f (x1)+f (x2)+f (x3)+f (x4)
4
∫∫
(x1,x2,x3,x4)
ω
for (x1, x2, x3, x4) ∈ ♦2.
![Page 21: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/21.jpg)
Discrete Riemann Surfaces
Linear theory
External Product
A form on ♦ can be averaged into a form on Λ:
∫
(x ,x ′)
A(α♦) := 12
∫
(x ,y)
+
∫
(y ,x ′)
+
∫
(x ,y ′)
+
∫
(y ′,x ′)
α♦, (4)
∫∫
x∗
A(ω♦) := 12
d∑
k=1
∫∫
(xk ,yk ,x ,yk−1)
ω♦, (5)
Ker(A) = Span(d♦ε)
![Page 22: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/22.jpg)
Discrete Riemann Surfaces
Main Results
Discrete Harmonicity
I Hodge Star: ∗ : C k → C 2−k ,∫(y ,y ′) ∗α := ρ(x ,x ′)
∫(x ,x ′) α.
I Discrete Laplacian:d∗ := − ∗ d ∗, ∆ := d d∗ + d∗d ,∆ f (x) =
∑ρ(x ,xk )(f (x)− f (xk)).
I Hodge Decomposition:C k = Imd ⊕⊥ Imd∗ ⊕⊥ Ker ∆, Ker ∆1 = C (1,0) ⊕⊥ C (0,1).
I Weyl Lemma:∆ f = 0⇐⇒ ∫∫
f ∗∆g = 0, ∀g compact.
I Green Identity:∫∫D(f ∗∆g − g ∗∆f ) =
∮∂D(f ∗ dg − g ∗ df ).
cf Wardetzky, Polthier, Glickenstein, Novikov, Wilson
![Page 23: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/23.jpg)
Discrete Riemann Surfaces
Main Results
Meromorphic Forms
α ∈ C 1 is conformal ⇐⇒∗α = −iα of type (1,0)
dα = 0 closed.
I α of type (1,0) (i.e.∫(y ,y ′) α = iρ(x ,x ′)
∫(x ,x ′) α) has a pole of
order 1 in v with a residue Resv α := 12iπ
∮∂v∗ α 6= 0.
I If α is not of type (1,0) on (x , y , x ′, y ′), it has a pole oforder > 1.
I Discrete Riemann-Roch theorem: Existence of forms withprescribed poles and holonomies.
I Green Function and Potential, Cauchy Integral Formula:∮∂D f · νx ,y = 2iπ f (x)+f (y)
2 .
I Period Matrix, Jacobian, Abel’s map, Riemann bilinearrelations.
I Continuous limit theorem in locally flat regions (criticality).
![Page 24: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/24.jpg)
Discrete Riemann Surfaces
Main Results
Dirac spinor
ξ2
ξ3ξ4
y
ξ1
φ(y ,y ′)x ′
y ′
x
∮
(x ,y ,x ′,y ′)ξ√
dZ = 0
Υ
Υ
Ising model ρ(e) = sinh2Ke , is critical iff the fermion ψxy = σx µy
is a discrete massless Dirac spinor. Criticality has a meaning atfinite size: compatibility with holomorphicity.Off criticality: massive spinor.(see V. Bazhanov, D. Cimasoni and U. Pinkall)
![Page 25: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/25.jpg)
Discrete Riemann Surfaces
Main Results
Energies
The L2-norm of the 1-form df is the Dirichlet energy
ED(f ) := ‖df ‖2 = (df , df ) =1
2
∑
(x ,x ′)∈Λ1
ρ(x , x ′)∣∣f (x ′)− f (x)
∣∣2
=ED(f |Γ) + ED(f |Γ∗)
2.
The conformal energy of the map measures its conformalitydefect
EC (f ) := 12‖df − i ∗ df ‖2.
![Page 26: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/26.jpg)
Discrete Riemann Surfaces
Main Results
Energies
Dirichlet and Conformal energies are related through
EC (f ) = 12 (df − i ∗ df , df − i ∗ df )
= 12‖df ‖2 + 1
2‖−i ∗ df ‖2 + Re(df , −i ∗ df )
= ‖df ‖2 + Im
∫∫
♦2
df ∧ df
= ED(f )− 2A(f )
with the algebraic area of the image
A(f ) :=i
2
∫∫
♦2
df ∧ df
On a face the algebraic algebra of the image reads∫∫
(x ,y ,x ′,y ′)
df ∧ df = i Im((f (x ′)− f (x))(f (y ′)− f (y))
)
= −2iA(f (x), f (x ′), f (y), f (y ′)
)
![Page 27: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/27.jpg)
Discrete Riemann Surfaces
Main Results
Complex discrete structure
(∫(x ,x ′) ∗α∫(y ,y ′) ∗α
):=
1
cos θ
(− sin θ −1r
r sin θ
) (∫(x ,x ′) α∫(y ,y ′) α
).
(α, β) :=
∫∫
♦α ∧ ∗β = 1
2
∑
e∈Λ1
∫e α
Re (ρe)
(|ρe |2
∫
eβ + Im (ρe)
∫
e∗β
)
ED(f ) := ‖df ‖2 =1
2
∑
e∈Λ1
|f (x ′)− f (x)|2Re (ρe)
(|ρe |2 + Im (ρe)
f (y ′)− f (y)
f (x ′)− f (x)
).
For x0 ∈ Λ0, x∗0 = (y1, y2, . . . , yV ) ∈ Λ2, (x0, xk)∗ = (yk , yk+1) ∈ Λ1,
∆(f )(x0) =V∑
k=1
1
Re(ρe
)(|ρe |2
(f (xk)−f (x)
)+Im
(ρe
)(f (yk+1)−f (yk)
))
![Page 28: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/28.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I Basis of holomorphic forms(a discrete Riemann surface S)
I find a normalized homotopy basis ℵ of ¦(S)
I foreach ℵk
I I compute ℵΓk and ℵΓ∗
kI compute the real discrete harmonic form ωk on Γ s.t.∮
γωk = γ · ℵΓ
kI compute the form ∗ωk on Γ∗I check it is harmonic on on Γ∗I compute its holonomies (
∮ℵΓ∗
`∗ωk)k,` on the dual graph
I do some linear algebra (R is a rectangular complex matrix) toget the basis of holomorphic forms (ζk)k = R(Id + i ∗)(ωk)ks.t. (
∮ℵΓ
`ζk) = δk,`
I define the period matrix Πk,` := (∮ℵΓ∗
`ζk)
![Page 29: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/29.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I spanning tree(a root vertex)
I tree ← sd ← root; sdp1← ∅; points ← all the vertices;
I while points 6= ∅I points ← points \ sd
I foreach v ∈ sdI I foreach v ′ ∼ v
I I if v ′ ∈ pointsI sdp1← sdp1 ∪ v ′I tree ← tree ∪ (v , v ′)
I sd ← sdp1; sdp1← ∅I return tree
![Page 30: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/30.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I spanning tree(a root vertex)
I tree ← sd ← root; sdp1← ∅; points ← all the vertices;
I while points 6= ∅I points ← points \ sd
I foreach v ∈ sdI I foreach v ′ ∼ v
I I if v ′ ∈ pointsI sdp1← sdp1 ∪ v ′I tree ← tree ∪ (v , v ′)
I sd ← sdp1; sdp1← ∅I return tree
![Page 31: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/31.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I spanning tree(a root vertex)
I tree ← sd ← root; sdp1← ∅; points ← all the vertices;
I while points 6= ∅I points ← points \ sd
I foreach v ∈ sdI I foreach v ′ ∼ v
I I if v ′ ∈ pointsI sdp1← sdp1 ∪ v ′I tree ← tree ∪ (v , v ′)
I sd ← sdp1; sdp1← ∅I return tree
![Page 32: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/32.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I spanning tree(a root vertex)
I tree ← sd ← root; sdp1← ∅; points ← all the vertices;
I while points 6= ∅I points ← points \ sd
I foreach v ∈ sdI I foreach v ′ ∼ v
I I if v ′ ∈ pointsI sdp1← sdp1 ∪ v ′I tree ← tree ∪ (v , v ′)
I sd ← sdp1; sdp1← ∅I return tree
![Page 33: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/33.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I fundamental polygon(a spanning tree)I faces ← all the faces; edges ← tree ∪ tree;
toClose : faces → P(all the edges);I foreach (face ∈ faces) facesToClose(face)← ∂(face) \ edgesI doI I finished ← true
I foreach (face ∈ faces such that |facesToClose(face)| == 1)I I finished ← false; e = facesToClose(face);
I edges ← edges \ e, e; faces ← faces \ face;lface ← leftFace(e);
I if (lface)I facesToClose(lface)← facesToClose(lface \ e)Iif (|facesToClose(lface)| == 0) faces ← faces \ lface;
I while (not(finished));
I return facesToClose
![Page 34: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/34.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I fundamental polygon(a spanning tree)I faces ← all the faces; edges ← tree ∪ tree;
toClose : faces → P(all the edges);I foreach (face ∈ faces) facesToClose(face)← ∂(face) \ edgesI doI I finished ← true
I foreach (face ∈ faces such that |facesToClose(face)| == 1)I I finished ← false; e = facesToClose(face);
I edges ← edges \ e, e; faces ← faces \ face;lface ← leftFace(e);
I if (lface)I facesToClose(lface)← facesToClose(lface \ e)Iif (|facesToClose(lface)| == 0) faces ← faces \ lface;
I while (not(finished));
I return facesToClose
![Page 35: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/35.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I fundamental polygon(a spanning tree)I faces ← all the faces; edges ← tree ∪ tree;
toClose : faces → P(all the edges);I foreach (face ∈ faces) facesToClose(face)← ∂(face) \ edgesI doI I finished ← true
I foreach (face ∈ faces such that |facesToClose(face)| == 1)I I finished ← false; e = facesToClose(face);
I edges ← edges \ e, e; faces ← faces \ face;lface ← leftFace(e);
I if (lface)I facesToClose(lface)← facesToClose(lface \ e)Iif (|facesToClose(lface)| == 0) faces ← faces \ lface;
I while (not(finished));
I return facesToClose
![Page 36: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/36.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I fundamental polygon(a spanning tree)I faces ← all the faces; edges ← tree ∪ tree;
toClose : faces → P(all the edges);I foreach (face ∈ faces) facesToClose(face)← ∂(face) \ edgesI doI I finished ← true
I foreach (face ∈ faces such that |facesToClose(face)| == 1)I I finished ← false; e = facesToClose(face);
I edges ← edges \ e, e; faces ← faces \ face;lface ← leftFace(e);
I if (lface)I facesToClose(lface)← facesToClose(lface \ e)Iif (|facesToClose(lface)| == 0) faces ← faces \ lface;
I while (not(finished));
I return facesToClose
![Page 37: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/37.jpg)
Discrete Riemann Surfaces
Main Results
Algorithm
I fundamental polygon(a spanning tree)I faces ← all the faces; edges ← tree ∪ tree;
toClose : faces → P(all the edges);I foreach (face ∈ faces) facesToClose(face)← ∂(face) \ edgesI doI I finished ← true
I foreach (face ∈ faces such that |facesToClose(face)| == 1)I I finished ← false; e = facesToClose(face);
I edges ← edges \ e, e; faces ← faces \ face;lface ← leftFace(e);
I if (lface)I facesToClose(lface)← facesToClose(lface \ e)Iif (|facesToClose(lface)| == 0) faces ← faces \ lface;
I while (not(finished));
I return facesToClose
![Page 38: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/38.jpg)
Discrete Riemann Surfaces
Numerics
Surfaces tiled by squares
Surface Period Matrix Numerical Analysis
Ω1 = i3
(5 −4−4 5
)#vertices ‖ΩD − Ω1‖∞
25 1.13 · 10−8
106 3.38 · 10−8
430 4.75 · 10−8
1726 1.42 · 10−7
6928 1.35 · 10−6
Ω2 = 13
( −2 +√
8i 1−√2i
1−√2i −2 +√
8i
)
#vertices ‖ΩD − Ω2‖∞14 3.40 · 10
−2
62 9.51 · 10−3
254 2.44 · 10−3
1022 6.12 · 10−4
4096 1.53 · 10−4
Ω3 = i√3
(2 −1−1 2
)#vertices ‖ΩD − Ω3‖∞
22 3.40 · 10−3
94 9.51 · 10−3
382 2.44 · 10−4
1534 6.12 · 10−5
6142 1.53 · 10−6
![Page 39: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/39.jpg)
Discrete Riemann Surfaces
Numerics
Wente torus
Grid : 10× 10 Grid : 20× 20
Grid : 40× 40 Grid : 80× 80
τw ≈ 0.41300 . . .+ 0.91073 . . . i ≈ exp(i1.145045 . . . .).
Grid ‖τin − τw‖ ‖τex − τw‖10× 10 1.24 · 10−3 2.58 · 10−4
20× 20 2.10 · 10−4 5.88 · 10−4
40× 40 3.87 · 10−5 8.49 · 10−5
80× 80 6.54 · 10−6 7.32 · 10−5
![Page 40: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/40.jpg)
Discrete Riemann Surfaces
Numerics
Lawson surface
1162 vertices 2498 vertices
Ωl =i√3
(2 −1−1 2
)
#vertices ‖Ωin − Ωl‖∞ ‖Ωex − Ωl‖∞1162 1.68 · 10−3 1.68 · 10−3
2498 3.01 · 10−3 3.20 · 10−3
10090 8.55 · 10−3 8.56 · 10−3
![Page 41: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/41.jpg)
Discrete Riemann Surfaces
Quasi conformal maps
∂ and ∂
In the continuous case
for f (z + z0) = f (z0) + z × (∂f )(z0) + z × (∂f )(z0) + o(|z |),
(∂f )(z0) = limγ→z0
i
2A(γ)
∮
γfd z , (∂f )(z0) = − lim
γ→z0
i
2A(γ)
∮
γfdZ ,
along a loop γ around z0.leading to the discrete definition
∂ : C 0(♦) → C 2(♦)
f 7→ ∂f =[(x , y , x ′, y ′) 7→ − i
2A(x ,y ,x ′,y ′)
∮
(x ,y ,x ′,y ′)
fdZ]
= (f (x ′)−f (x))(y ′−y)−(x ′−x)(f (y ′)−f (y))(x ′−x)(y ′−y)−(x ′−x)(y ′−y) ,
∂ : C 0(♦) → C 2(♦)
f 7→ ∂f =[(x , y , x ′, y ′) 7→ − i
2A(x ,y ,x ′,y ′)
∮
(x ,y ,x ′,y ′)
fdZ]
= (f (x ′)−f (x))(y ′−y)−(x ′−x)(f (y ′)−f (y))(x ′−x)(y ′−y)−(x ′−x)(y ′−y) .
![Page 42: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/42.jpg)
Discrete Riemann Surfaces
Quasi conformal maps
A conformal map f fulfills ∂f ≡ 0 and (with Z (u) denoted u)
∂f (x , y , x ′, y ′) =f (y ′)− f (y)
y ′ − y=
f (x ′)− f (x)
x ′ − x.
The jacobian J = |∂f |2 − |∂f |2 compares the areas:∫∫
(x ,y ,x ′,y ′)
df ∧ df = J
∫∫
(x ,y ,x ′,y ′)
dZ ∧ dZ .
![Page 43: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/43.jpg)
Discrete Riemann Surfaces
Quasi conformal maps
Quasi-Conformal Maps
For a discrete function, one defines the dilatation coefficient
Df :=|fz |+ |fz ||fz | − |fz |
Df ≥ 1 for |fz | ≤ |fz | (quasi-conformal). Written in terms of thecomplex dilatation:
µf =fzfz
õf
7→
i√
µf
![Page 44: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/44.jpg)
Discrete Riemann Surfaces
Quasi conformal maps
Quasi-Conformal Maps
For a discrete function, one defines the dilatation coefficient
Df :=|fz |+ |fz ||fz | − |fz |
Df ≥ 1 for |fz | ≤ |fz | (quasi-conformal). Written in terms of thecomplex dilatation:
µf =fzfz
7→
i√
µf
õf
![Page 45: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/45.jpg)
Discrete Riemann Surfaces
Quasi conformal maps
Quasi-Conformal Maps
(Arnaud Cheritat and Xavier Buff, L. Emile Picard, Toulouse)
![Page 46: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/46.jpg)
Discrete Riemann Surfaces
Criticality
Lozenges (Duffin) and Exponential
u1
u2
un = zu0 = O
exp(:λ: z) =∏
k
1 + λ2 (uk − uk−1)
1− λ2 (uk − uk−1)
.
Generalization of the well known formula
exp(λ z) =
(1 +
λ z
n
)n
+ O(z2
n) =
(1 + λ z
2 n
1− λ z2 n
)n
+ O(z3
n2).
![Page 47: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/47.jpg)
Discrete Riemann Surfaces
Criticality
Lozenges (Duffin) and Exponential
The Green function on a lozenges graph is (Richard Kenyon)
G (O, x) = − 1
8π2 i
∮
Cexp(:λ: x)
log δ2λ
λdλ
∆G (O, x) = δO,x , G (O, x)∼x→∞
log |x | on black vertices,
i arg(x) on white vertices.
![Page 48: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/48.jpg)
Discrete Riemann Surfaces
Criticality
Lozenges (Duffin) and Exponential
Differentiation of the exponential with respect to λ yields
∂k
∂λkexp(:λ: z) =: Z :k: exp(:λ: z)
and λ = 0 defines the discrete polynomials Z :k: fulfillingexp(:λ: z) =
∑ Z :k:
k! , absolutely convergent for λ · δ < 1.The primitive of a conformal map is itself conformal:
∫
(x ,y)f dZ :=
f (x) + f (y)
2(y − x).
One can solve “differential equations”, and polynomials fulfill
Z :k+1: = (k + 1)
∫Z :k: dZ ,
while the exponential fulfills
exp(:λ: z) =1
λ
∫exp(:λ: z) dZ .
![Page 49: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/49.jpg)
Discrete Riemann Surfaces
Criticality
Lozenges (Duffin) and Exponential
There exists a discrete duality, with ε = ±1 on black and whitevertices, f † = ε f is conformal.The derivative f ′ of a conformal map f is
f ′(z) :=4
δ2
(∫ z
Of †dZ
)†+ λ ε,
and verifies f =∫
f ′dZ .
![Page 50: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/50.jpg)
Discrete Riemann Surfaces
Backlund transformation
x ′
x ′λ
y ′λ
x
xλ
y
y ′
yλ
λ
y
x ′xy ′
We impose “vertically” the same equation as “horizontally”.The 3D consistency (see Y. Suris) or Yang-Baxter equation yieldsintegrability for rhombic quad-graphs:
y
x ′
y ′
y ′λ
xλ
yλ
x ′λ≡
y
x ′
y ′
y ′λ
xλ
yλ
x
![Page 51: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/51.jpg)
Discrete Riemann Surfaces
Backlund transformation
x ′
x ′λ
y ′λ
x
xλ
y
y ′
yλ
y
x ′x
λ
We impose “vertically” the same equation as “horizontally”.The 3D consistency (see Y. Suris) or Yang-Baxter equation yieldsintegrability for rhombic quad-graphs:
y
x ′
y ′
y ′λ
xλ
yλ
x ′λ≡
y
x ′
y ′
y ′λ
xλ
yλ
x
![Page 52: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/52.jpg)
Discrete Riemann Surfaces
Backlund transformation
x ′
x ′λ
y ′λ
x
xλ
y
y ′
yλ
λ
We impose “vertically” the same equation as “horizontally”.The 3D consistency (see Y. Suris) or Yang-Baxter equation yieldsintegrability for rhombic quad-graphs:
y
x ′
y ′
y ′λ
xλ
yλ
x ′λ≡
y
x ′
y ′
y ′λ
xλ
yλ
x
![Page 53: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/53.jpg)
Discrete Riemann Surfaces
Backlund transformation
x ′
x ′λ
y ′λ
x
xλ
y
y ′
yλ
λ
We impose “vertically” the same equation as “horizontally”.The 3D consistency (see Y. Suris) or Yang-Baxter equation yieldsintegrability for rhombic quad-graphs:
y
x ′
y ′
y ′λ
xλ
yλ
x ′λ≡
y
x ′
y ′
y ′λ
xλ
yλ
x
![Page 54: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/54.jpg)
Discrete Riemann Surfaces
Backlund transformation
x ′
x ′λ
y ′λ
x
xλ
y
y ′
yλ
λ
We impose “vertically” the same equation as “horizontally”.The 3D consistency (see Y. Suris) or Yang-Baxter equation yieldsintegrability for rhombic quad-graphs:
y
x ′
y ′
y ′λ
xλ
yλ
x ′λ≡
y
x ′
y ′
y ′λ
xλ
yλ
x
![Page 55: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/55.jpg)
Discrete Riemann Surfaces
Backlund transformation
x ′
x ′λ
y ′λ
x
xλ
y
y ′
yλ
λ
We impose “vertically” the same equation as “horizontally”.The 3D consistency (see Y. Suris) or Yang-Baxter equation yieldsintegrability for rhombic quad-graphs:
y
x ′
y ′
y ′λ
xλ
yλ
x ′λ≡
y
x ′
y ′
y ′λ
xλ
yλ
x
![Page 56: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/56.jpg)
Discrete Riemann Surfaces
Backlund transformation
x ′
x ′λ
y ′λ
x
xλ
y
y ′
yλ
λ
We impose “vertically” the same equation as “horizontally”.The 3D consistency (see Y. Suris) or Yang-Baxter equation yieldsintegrability for rhombic quad-graphs:
y
x ′
y ′
y ′λ
xλ
yλ
x ′λ≡
y
x ′
y ′
y ′λ
xλ
yλ
x
![Page 57: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/57.jpg)
Discrete Riemann Surfaces
Backlund transformation
The exponential
Buµ(F )
F G = Buλ(F )
Bv−λ(G )
expu(:λ:F ) := ∂∂v
Bv−λ(G )|v=u
A family of CR-preserving maps, initial condition u, “vertical”parameter λ. Induces a linear map between the tangent spaces. Itskernel: discrete exponential exp(:λ:F ). Form a basis
![Page 58: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/58.jpg)
Discrete Riemann Surfaces
Backlund transformation
The exponential
Buµ(F )
Bu−µ(G )
F = Bu−λ(G ) G = Bu
λ(F )
Bv−λ(G )
expu(:λ:F ) := ∂∂v
Bv−λ(G )|v=u
A family of CR-preserving maps, initial condition u, “vertical”parameter λ. Induces a linear map between the tangent spaces. Itskernel: discrete exponential exp(:λ:F ). Form a basis
![Page 59: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/59.jpg)
Discrete Riemann Surfaces
Backlund transformation
The exponential
Buµ(F )
Bu−µ(G )
F = Bu−λ(G ) G = Bu
λ(F )
Bv−λ(G )
expu(:λ:F ) := ∂∂v
Bv−λ(G )|v=u
A family of CR-preserving maps, initial condition u, “vertical”parameter λ. Induces a linear map between the tangent spaces. Itskernel: discrete exponential exp(:λ:F ). Form a basis
![Page 60: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/60.jpg)
Discrete Riemann Surfaces
Backlund transformation
The exponential
Buµ(F )
Bu−µ(G )
expu(:λ:F ) := ∂∂v
Bv−λ(G )|v=u
Bv−λ(G )
F = Bu−λ(G ) G = Bu
λ(F )
A family of CR-preserving maps, initial condition u, “vertical”parameter λ. Induces a linear map between the tangent spaces. Itskernel: discrete exponential exp(:λ:F ). Form a basis
![Page 61: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/61.jpg)
Discrete Riemann Surfaces
Backlund transformation
Solitons
The vertical equation is
(fλ(y)− fλ(x)) (f (y)− f (x))
(fλ(y)− f (y)) (fλ(x)− f (x))=
(y − x)2
λ2
x ′
x ′λ
y ′λ
x
xλ
y
y ′
yλ
λ
With the change of variables g = ln f , the continuous limit(y = x + ε) is:
√g ′λ × g ′ =
2
λsinh
gλ − g
2.
![Page 62: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/62.jpg)
Discrete Riemann Surfaces
Backlund transformation
Isomonodromic solutions, moving frame
The Backlund transformation allows to define a notion of discreteholomorphy in Zd , for d > 1 finite, equipped with rapidities(αi )1≤i≤d .
q =α2
i
α2j
ρ =αi+αj
αi−αj
f (x + ei + ej) = Li(x + ej)f (x + ej), Li(x + ej) ∈ PGL2(C)
(a bc d
)z = az+b
cz+d
xx x + ei
x + ei + ejx + ej αi
αj αj
αi
Li (x ;λ) =
λ+ αi −2αi (f (x + ei ) + f (x))
0 λ− αi
The moving frame Ψ(·, λ) : Zd → GL2(C)[λ] for a prescribedΨ(0;λ):
Ψ(x + ei ;λ) = Li (x ;λ)Ψ(x ;λ).
![Page 63: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/63.jpg)
Discrete Riemann Surfaces
Backlund transformation
Isomonodromic solutions, moving frame
Define A(·;λ) : Zd → GL2(C)[λ] by A(x ;λ) =dΨ(x ;λ)
dλΨ−1(x ;λ).
They satisfy the recurrent relation
A(x + ek ;λ) =dLk(x ;λ)
dλL−1
k (x ;λ) + Lk(x ;λ)A(x ;λ)L−1k (x ;λ).
A discrete holomorphic function f : Zd → C is calledisomonodromic, if, for some choice of A(0;λ), the matricesA(x ;λ) are meromorphic in λ, with poles whose positions andorders do not depend on x ∈ Zd . Isomonodromic solutions can beconstructed with prescribed boundary conditions. Example: theGreen function.
![Page 64: Discrete Conformal Maps - TU Berlin](https://reader030.vdocuments.mx/reader030/viewer/2022012705/61a6864bb0db8e735c01e270/html5/thumbnails/64.jpg)
Discrete Riemann Surfaces
Inter2Geo eContent+ European project
Inter2GeoInteroperable Interactive GeometryA common file format and a common API for all interactivegeometry software
I Cabri
I Cinderella
I Geoplan/Geospace
I Geogebra
I Geonext
I TracEnPoche (Sesamath/MathEnPoche)
I Z.u.L C.a.R
I Kig, DrGeo, GeoProof (Coq geometric prover)
I · · ·