smish.dev
schwarz_christoffel

 

If we have a polygon in the plane, the Riemann mapping theorem tells us that a conformal map from the unit disk to that polygon exists, but it doesn't say how to find it. It turns out that we can actually construct one, in the following way:

f(z):=a+c0zj(1ξeiθj)αi1dξ,|z|1

This is called the Schwarz-Christoffel mapping.

Without loss of generality, let us assume that the polygon is given in terms of its vertices, w1,w2,,wn, in counterclockwise winding.

polygon_with_vertex_labels

 

The values αk that appear in the expression are the interior angles of the polygon, in multiples of π.

polygon_interior_angle_alpha

 

In order to find a conformal mapping of the unit disk to this polygon, we need to find values of the parameters a,cC and θ1,θ2,...,θnR that satisfy:

wk=a+c0eiθkj(1ξeiθj)αi1dξ

The parameters θ1,θ2,...,θn control the (relative) sidelengths of the polygon, a controls the translation degrees of freedom and c controls the overall scale and rotation.

 

Although this can be done numerically, click the image below to try specifying a polygon and seeing if you determine values for θj (blue dots on the left) that map to the target polygon (dashed red) on the right!

 

schwarz_christoffel_interactive